Package: xymon
Version: 4.3.28-2
Severity: normal
Tags: upstream ipv6
Control: found -1 4.3.28-5+deb10u1
Control: found -1 4.3.28-2+deb9u1
Hi,
it's well-known that as of now no released Xymon version supports IPv6.
What's nevertheless an issue of its own, is that, if even only a single
URL in hosts.cfg only resolves to IPv6 addresses(*), the xymonnet
process crashes as soon as it receives the DNS response.
And since it seems to get this response
inbetween parsing hosts.cfg and conducting any tests, a single URL in
hosts.cfg may cause _all_ network tests to stop and go purple.
(*) In this case it additionally was a ULA, i.e. inside fd::/8 (see
https://en.wikipedia.org/wiki/Unique_local_address) which
potentially might be relevant.
Backtrace:
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `xymonnet --report --ping --checkresponse'.
Program terminated with signal SIGABRT, Aborted.
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
(gdb) #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1 0x00007f9569f8242a in __GI_abort () at abort.c:89
#2 0x0000559230ff6645 in sigsegv_handler (signum=<optimized out>) at sig.c:57
#3 <signal handler called>
#4 0x0000559230fe9b03 in dns_simple_callback (arg=0x559231f252e0, status=0,
timeout=<optimized out>, hent=0x559231f0bd00) at dns.c:121
#5 0x00007f956b0c90a9 in end_hquery (hquery=0x559231f25320, status=<optimized
out>, host=0x559231f0bd00) at ares_gethostbyname.c:227
#6 0x00007f956b0c9443 in host_callback (arg=0x559231f25320, status=<optimized
out>, timeouts=<optimized out>, abuf=<optimized out>, alen=<optimized out>)
at ares_gethostbyname.c:207
#7 0x00007f956b0d1ef9 in end_squery (squery=0x559231f25480, status=<optimized
out>, abuf=<optimized out>, alen=<optimized out>) at ares_search.c:203
#8 0x00007f956b0d1fed in search_callback (arg=0x559231f25480,
status=<optimized out>, timeouts=<optimized out>, abuf=<optimized out>,
alen=<optimized out>)
at ares_search.c:150
#9 0x00007f956b0d1c1b in qcallback (arg=0x559231f25440, status=<optimized
out>, timeouts=<optimized out>, abuf=<optimized out>, alen=<optimized out>)
at ares_query.c:183
#10 0x00007f956b0d0371 in end_query (channel=channel@entry=0x559231e548b0,
query=query@entry=0x559231f27560, status=status@entry=0,
abuf=abuf@entry=0x7ffce6f53520 "\177J\201\200", alen=110) at
ares_process.c:1331
#11 0x00007f956b0d1236 in process_answer (channel=channel@entry=0x559231e548b0,
abuf=abuf@entry=0x7ffce6f53520 "\177J\201\200", alen=<optimized out>,
whichserver=whichserver@entry=0, tcp=tcp@entry=0,
now=now@entry=0x7ffce6f54590) at ares_process.c:616
#12 0x00007f956b0d1570 in process_answer (now=0x7ffce6f54590, tcp=0,
whichserver=0, alen=<optimized out>, abuf=0x7ffce6f53520 "\177J\201\200",
channel=0x559231e548b0) at ares_process.c:529
#13 read_udp_packets (channel=channel@entry=0x559231e548b0,
read_fds=read_fds@entry=0x7ffce6f54600, read_fd=read_fd@entry=-1,
now=now@entry=0x7ffce6f54590)
at ares_process.c:480
#14 0x00007f956b0d1640 in processfds (channel=channel@entry=0x559231e548b0,
read_fds=read_fds@entry=0x7ffce6f54600, read_fd=read_fd@entry=-1,
write_fds=write_fds@entry=0x7ffce6f54680, write_fd=write_fd@entry=-1) at
ares_process.c:127
#15 0x00007f956b0d1bc1 in ares_process (channel=channel@entry=0x559231e548b0,
read_fds=read_fds@entry=0x7ffce6f54600,
write_fds=write_fds@entry=0x7ffce6f54680) at ares_process.c:137
#16 0x0000559230fe9863 in dns_ares_queue_run (channel=0x559231e548b0) at
dns.c:172
#17 0x0000559230fdb2bf in main (argc=4, argv=0x7ffce6f558d8) at xymonnet.c:2342
(gdb) quit
Even without IPv6 support, I would expect that xymonnet is more robust
and only issues an error or warning, but does not crash and completely
stop working.
P.S.: This is unrelated to the Xymon stable update published about 1.5
days ago and has been observed on both, Debian 9 Stretch as well as
Debian 10 Buster.
-- System Information:
Debian Release: 9.11
APT prefers oldstable-updates
APT policy: (500, 'oldstable-updates'), (500,
'oldstable-proposed-updates-debug'), (500, 'oldstable-debug'), (500,
'oldoldstable'), (500, 'stable'), (500, 'oldstable')
Architecture: amd64 (x86_64)
Kernel: Linux 4.9.0-9-amd64 (SMP w/6 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8),
LANGUAGE=en_DE:en_US:en_GB:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Versions of packages xymon depends on:
ii debconf [debconf-2.0] 1.5.61
ii libc-ares2 1.12.0-1+deb9u1
ii libc6 2.24-11+deb9u4
ii libldap-2.4-2 2.4.44+dfsg-5+deb9u3
ii libpcre3 2:8.39-3
ii librrd8 1.6.0-1+b2
ii libssl1.1 1.1.0k-1~deb9u1
ii lsb-base 9.20161125
ii perl 5.24.1-3+deb9u5
ii xymon-client 4.3.28-2+deb9u1
Versions of packages xymon recommends:
ii apache2 [httpd-cgi] 2.4.25-3+deb9u8
Versions of packages xymon suggests:
ii rrdtool 1.6.0-1+b2
-- debconf information:
* hobbit-client/automatic-xymon-migration: true