I got bitten by this bug as well when I tried to run ntp-server 4.2.0a+stable-2 on a sarge box running 2.4.18-bf2.4 with
server ts1.univie.ac.at server ts2.univie.ac.at in ntp.conf. I recompiled the source package to get debugging symbols and spent the next 3 hours cursing at gdb. Finding the place of the null-pointer dereference was easy: Program received signal SIGSEGV, Segmentation fault. 0x08051ab0 in sendpkt (dest=0x80b6480, inter=0x0, ttl=0, pkt=0xbffff450, len=48) at ../../ntpd/ntp_io.c:1413 1413 switch (inter->sin.ss_family) { (gdb) bt #0 0x08051ab0 in sendpkt (dest=0x80b6480, inter=0x0, ttl=0, pkt=0xbffff450, len=48) at ../../ntpd/ntp_io.c:1413 #1 0x08068c7c in peer_xmit (peer=0x80b6478) at ../../ntpd/ntp_proto.c:2418 #2 0x08064789 in transmit (peer=0x80b6478) at ../../ntpd/ntp_proto.c:301 #3 0x0807324c in timer () at ../../ntpd/ntp_timer.c:289 #4 0x08053ab2 in ntpdmain (argc=4, argv=0xbffffb44) at ../../ntpd/ntpd.c:1079 #5 0x080534ce in main (argc=4, argv=0xbffffb44) at ../../ntpd/ntpd.c:239 (gdb) basically: peer->inter was NULL. Reason: ntpd didn't properly initialize the sending interface for this peer. Now things got messy, but I nailed it down to getnetnum() where the hints for the getaddrinfo() call are initialized as: if (addr->ss_family == AF_INET || addr->ss_family == AF_INET6) hints.ai_family = addr->ss_family; else hints.ai_family = AF_UNSPEC; which in our case meant AF_UNSPEC (as we only had the name). If there is a AAAA record for this name, my system defaults to IPv6, but as I don't have a v6 interface in my box, ntpd can't find the interface and seems to leave it NULL, leading to the memfault later on. -------- Some later kernel (or libc versions?) default to IPv4, bypassing the problem. Also: if all the people trying to reproduce the bug didn't use a nameserver with AAAA records, it's clear that they could not see it. Bugger. The *really* simple solution: Use the following lines in your ntp.conf: server -4 ts1.univie.ac.at server -4 ts2.univie.ac.at (making ntpd fail gracefully is left to the reader as an exercise.) Share and Enjoy! (this might close #263570 as well) /ol -- -=- Otmar Lendl -- [EMAIL PROTECTED] -=- -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]