Skip to content

RSS Feeds cause SIGSEGV #563

@gshearer

Description

@gshearer

Is there already an issue for your problem?

  • I have checked older issues, open and closed

NZBGet Version

v24.9-testing

Platform

Linux/Docker

Environment

Archlinux latest kernel latest updates x86_64.

I've been using nzbget for... heck, a decade at least. I've been using the new nzbget.com version since you folks took over. No problems. But as of a few days ago, my RSS feeds started causing SIGSEGV immediately upon starting nzbget.

I've confirmed via strace that the SIGSEGV happens shortly after it opens the just downloaded feed. Looks like the code for Feed processing hasn't changed in a couple of years, so maybe this is a bug in a library you're using and maybe it got recently updated. 

I used xmllint to validate the XML file, I get this:
$ xmllint --noout --valid feed-1.tmp 
feed-1.tmp:3: validity error : Validation failed: no DTD found !
org/2005/Atom" xmlns:newznab="http://www.newznab.com/DTD/2010/feeds/attributes/"

Even if thats the cause (no DTD?) .. I don't think nzbget should SIGSEGV, so its probably a really old bug somewhere in the feed processing code.

This is this is the strace:

[pid 207674] futex(0x79e5cbcf696c, FUTEX_WAKE_PRIVATE, 2147483647) = 0
[pid 207674] newfstatat(AT_FDCWD, "/mnt/scratch/nzbget/temp/feed-1.tmp", {st_mode=S_IFREG|0644, st_size=193922, ...}, 0) = 0
[pid 207674] openat(AT_FDCWD, "/mnt/scratch/nzbget/temp/feed-1.tmp", O_RDONLY) = 5
[pid 207674] lseek(5, 0, SEEK_CUR)      = 0
[pid 207674] dup(5)                     = 7
[pid 207674] lseek(7, 0, SEEK_CUR)      = 0
[pid 207674] read(7, "\r\n\r\n<rss version=\"2.0\" xmlns:ato"..., 8192) = 8192
[pid 207674] lseek(5, 0, SEEK_SET)      = 0
[pid 207674] close(7)                   = 0
[pid 207674] lseek(5, 0, SEEK_CUR)      = 0
[pid 207674] dup(5)                     = 7
[pid 207674] lseek(7, 0, SEEK_CUR)      = 0
[pid 207674] read(7, "\r\n\r\n<rss version=\"2.0\" xmlns:ato"..., 8192) = 8192
[pid 207674] lseek(5, 0, SEEK_SET)      = 0
[pid 207674] close(7)                   = 0
[pid 207674] dup(5)                     = 7
[pid 207674] close(5)                   = 0
[pid 207674] read(7, "\r\n\r\n<rss version=\"2.0\" xmlns:ato"..., 4000) = 4000
[pid 207674] --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=NULL} ---
[pid 207664] <... futex resumed>)       = ?
[pid 207673] <... futex resumed>)       = ?
[pid 207672] <... futex resumed>)       = ?
[pid 207671] <... futex resumed>)       = ?
[pid 207670] <... futex resumed>)       = ?
[pid 207669] <... futex resumed>)       = ?
[pid 207668] <... futex resumed>)       = ?
[pid 207667] <... clock_nanosleep resumed> <unfinished ...>) = ?
[pid 207666] <... accept resumed>)      = ?
[pid 207674] +++ killed by SIGSEGV (core dumped) +++
[pid 207673] +++ killed by SIGSEGV (core dumped) +++
[pid 207672] +++ killed by SIGSEGV (core dumped) +++
[pid 207671] +++ killed by SIGSEGV (core dumped) +++
[pid 207670] +++ killed by SIGSEGV (core dumped) +++
[pid 207669] +++ killed by SIGSEGV (core dumped) +++
[pid 207668] +++ killed by SIGSEGV (core dumped) +++
[pid 207667] +++ killed by SIGSEGV (core dumped) +++
[pid 207666] +++ killed by SIGSEGV (core dumped) +++
+++ killed by SIGSEGV (core dumped) +++

Current Behavior

Segmentation fault when attempting to use any RSS feed

Expected Behavior

No SIGSEGV :)

Steps To Reproduce

No response

Logs

No response

Extra information

No response

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions