From: Juergen Perlinger Date: Tue, 24 Nov 2015 07:06:41 +0000 (+0100) Subject: [Bug 2967] ntpdate command suffers an assertion failure X-Git-Tag: NTP_4_3_85~4^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f99de98d22884b3ba4f044747cb5b3a1757808af;p=thirdparty%2Fntp.git [Bug 2967] ntpdate command suffers an assertion failure - fixed ntp_rfc2553.c to return proper address length. bk: 56540c81drscYZOFbhk9iE2uioXa1w --- diff --git a/ChangeLog b/ChangeLog index 254284f0d..95bf9c566 100644 --- a/ChangeLog +++ b/ChangeLog @@ -20,6 +20,8 @@ - make sure SOCKET values are not truncated (win32-specific) - format string fixes * [Bug 2965] Local clock didn't work since 4.2.8p4. Martin Burnicki. +* [Bug 2967] ntpdate command suffers an assertion failure + - fixed ntp_rfc2553.c to return proper address length. perlinger@ntp.org * [Bug 2969] Seg fault from ntpq/mrulist when looking at server with lots of clients. perlinger@ntp.org * Unity cleanup for FreeBSD-6.4. Harlan Stenn. diff --git a/libntp/ntp_rfc2553.c b/libntp/ntp_rfc2553.c index a9ebb4b35..f231047e9 100644 --- a/libntp/ntp_rfc2553.c +++ b/libntp/ntp_rfc2553.c @@ -480,15 +480,16 @@ do_nodename( * set elsewhere so that we can set the appropriate wildcard */ if (nodename == NULL) { - ai->ai_addrlen = sizeof(struct sockaddr_storage); if (ai->ai_family == AF_INET) { + ai->ai_addrlen = sizeof(struct sockaddr_in); sockin = (struct sockaddr_in *)ai->ai_addr; sockin->sin_family = (short) ai->ai_family; sockin->sin_addr.s_addr = htonl(INADDR_ANY); } else { + ai->ai_addrlen = sizeof(struct sockaddr_in6); sockin6 = (struct sockaddr_in6 *)ai->ai_addr; sockin6->sin6_family = (short) ai->ai_family; /*