Commit Graph

35 Commits

Author SHA1 Message Date
Bjoern A. Zeeb
2bddeb8538 In case ntp cannot resolve a hostname on startup it will queue the entry
for resolving by a child process that, upon success, will add the entry
to the config of the running running parent process.

Unfortunately there are a couple of bugs with this, fixed in various
later versions of upstream in potentially different ways due to other
code changes:

1) Upon server [-46] <FQDN> the [-46] are used as FQDN for later resolving
   which does not work.  Make sure we always pass the name (or IP there).

2) The intermediate file to carry the information to the child process
   does not know about -4/-6 restrictions, so that a dual-stacked host
   could resolve to an IPv6 address but that might be unreachable (see
   r223626) leading to no working synchronization ignoring a IPv4 record.
   Thus alter the intermediate format to also pass the address family
   (AF_UNSPEC (default), AF_INET or AF_INET6) to the child process
   depending on -4 or -6.

3) Make the child process to parse the new intermediate file format and
   save the address family for getaddrinfo() hints flags.

4) Change child to always reload resolv.conf calling res_init() before
   trying to resolve names.  This will pick up resolv.conf changes or
   new resolv.confs should they have not existed or been empty or
   unusable on ntp startup.  This fix is more conditional in upstream
   versions but given FreeBSD has res_init there is no need for the
   configure logic as well.

Approved by:	roberto
Sponsored by:	Sandvine Incorporated
MFC after:	9 days
2011-06-29 13:01:10 +00:00
Bjoern A. Zeeb
a9b3947837 Compare port numbers correctly. They are stored by SRCPORT()
in host byte order, so we need to compare them as such.
Properly compare IPv6 addresses as well.

This allows the, by default, 8 badaddrs slots per address
family to work correctly and only print sendto() errors once.

The change is no longer applicable to any latest upstream versions.

Approved by:	roberto
Sponsored by:	Sandvine Incorporated
MFC after:	1 week
2011-06-28 09:46:25 +00:00
Bjoern A. Zeeb
541ab6a6c5 The argument to setsockopt for IP_MULTICAST_LOOP depends on operating
system and is decided upon by configure and could be an u_int or a
u_char.  For FreeBSD it is a u_char.

For IPv6 however RFC 3493, 5.2 defines the argument to
IPV6_MULTICAST_LOOP to be an unsigned integer so make sure we always
use that using a second variable for the IPV6 case.
This is to get rid of these error messages every 5 minutes on some
systems:
ntpd[1530]: setsockopt IPV6_MULTICAST_LOOP failure: Invalid argument
  on socket 22, addr fe80::... for multicast address ff02::101

While here also fix the copy&paste error in the log message for
IPV6_MULTICAST_LOOP.

Reviewed by:	roberto
Sponsored by:	The FreeBSD Foundation
Sponsored by:	iXsystems
MFC after:	10 days
Filed as:	Bug 1936 on ntp.org
2011-05-29 07:40:48 +00:00
Ollivier Robert
eb6d21b4ca Merge 4.2.4p8 into contrib (r200452 & r200454).
Subversion is being difficult here so take a hammer and get it in.

MFC after:		2 weeks
Security:		CVE-2009-3563
2009-12-15 14:58:10 +00:00
Hajimu UMEMOTO
0fa2c497a6 Don't try to bind to an anycast addeess. The KAME IPv6 stack doesn't
allow bind to an anycast addeess.  It does away with an annoying
message.

Reviewed by:	bz, roberto
MFC after:	2 weeks
2009-12-01 16:07:50 +00:00
Colin Percival
9a1bde1808 Prevent integer overflow in direct pipe write code from circumventing
virtual-to-physical page lookups. [09:09]

Add missing permissions check for SIOCSIFINFO_IN6 ioctl. [09:10]

Fix buffer overflow in "autokey" negotiation in ntpd(8). [09:11]

Approved by:	so (cperciva)
Approved by:	re (not really, but SVN wants this...)
Security:	FreeBSD-SA-09:09.pipe
Security:	FreeBSD-SA-09:10.ipv6
Security:	FreeBSD-SA-09:11.ntpd
2009-06-10 10:31:11 +00:00
Simon L. B. Nielsen
2568138fcd Correct ntpd(8) cryptographic signature bypass [SA-09:04].
Correct BIND DNSSEC incorrect checks for malformed signatures
[SA-09:04].

Security:	FreeBSD-SA-09:03.ntpd
Security:	FreeBSD-SA-09:04.bind
Obtained from:	ISC [SA-09:04]
Approved by:	so (simon)
2009-01-13 21:19:27 +00:00
Ollivier Robert
ea906c4152 Merge ntpd & friends 4.2.4p5 from vendor/ntp/dist into head. Next commit
will update usr.sbin/ntp to match this.

MFC after:	2 weeks
2008-08-22 15:58:00 +00:00
Ollivier Robert
cce65f4396 Flatten the dist and various 4.n.n trees in preparation of future ntp imports. 2008-08-17 17:37:33 +00:00
Ollivier Robert
a6feea2410 Remove an extra '}'. 2004-07-20 15:51:00 +00:00
Ollivier Robert
4a0fa52fa0 Merge conflicts (see also previous commit).
Reinsert our local changes to ntp_control.c:

1.4:    Do not log every potential exploit attempt since a denial-of-service
        may result
1.5:    int -> unsigned char fixes
2004-07-20 15:18:31 +00:00
Ollivier Robert
9ab5ee2e96 Revert this file to the vendor version, we don't need to have our own
version of it.  Will help further upgrades.
2004-07-20 15:15:00 +00:00
Ollivier Robert
9c2daa00c2 Virgin import of ntpd 4.2.0 2004-07-20 15:01:56 +00:00
Ollivier Robert
3e986f5ba8 This commit was generated by cvs2svn to compensate for changes in r132451,
which included commits to RCS files with non-trunk default branches.
2004-07-20 15:01:56 +00:00
Ollivier Robert
c9be7fa5ce Merge conflicts.
MFC after:	1 month
2002-11-04 19:38:46 +00:00
Ollivier Robert
ba371819a7 Virgin import of ntpd 4.1.1b 2002-11-04 19:36:11 +00:00
Ollivier Robert
f8bf23591a This commit was generated by cvs2svn to compensate for changes in r106424,
which included commits to RCS files with non-trunk default branches.
2002-11-04 19:36:11 +00:00
Ollivier Robert
eaabcee53b Remove files not present in 4.1.1a import. 2002-10-29 20:11:45 +00:00
Ollivier Robert
8fe9403f63 Merge conflicts.
MFC after:	1 month
2002-10-29 20:04:27 +00:00
Ollivier Robert
ce265a549d Virgin import of ntpd 4.1.1a 2002-10-29 19:58:12 +00:00
Ollivier Robert
17de533074 This commit was generated by cvs2svn to compensate for changes in r106163,
which included commits to RCS files with non-trunk default branches.
2002-10-29 19:58:12 +00:00
Ollivier Robert
5364982f9f Merge after 4.1.0 import. 2001-08-29 15:15:59 +00:00
Ollivier Robert
ced70873ca Redo the int -> unsigned changes jedgar did. It should have been submitted
back but it was off the vendor branch anyway so...
2001-08-29 15:01:06 +00:00
Ollivier Robert
224ba2bd37 Virgin import of ntpd 4.1.0 2001-08-29 14:35:15 +00:00
Ollivier Robert
9df3f33935 This commit was generated by cvs2svn to compensate for changes in r82498,
which included commits to RCS files with non-trunk default branches.
2001-08-29 14:35:15 +00:00
Chris D. Faulhaber
0873af5d5f Do not log every potential exploit attempt since a denial-of-service
may result.
2001-04-06 14:34:15 +00:00
Chris D. Faulhaber
12695b686a - Correct off-by-one error and buffer underflow from previous fix
- int -> unsigned char fixes

Submitted by:	ache, dillon, Mark Andrews, et.al. (on -security)
2001-04-06 14:15:38 +00:00
Poul-Henning Kamp
0cad4cb4e6 Fix a potential ROOT-exploit in NTPD.
PR:		26358
Reviewed by:	dima
2001-04-04 23:07:22 +00:00
Ollivier Robert
1c80946020 Fix potential alignement problems on Alpha + IPv6.
This is done on the vendor branch to avoid spamming the tree. It has been
sent to the NTP maintainers already.

Submitted by:	shin
2000-03-03 17:06:31 +00:00
Ollivier Robert
8938a0f430 This commit was generated by cvs2svn to compensate for changes in r57738,
which included commits to RCS files with non-trunk default branches.
2000-03-03 17:06:31 +00:00
Ollivier Robert
b073df1269 Merge conflicts with the import of 4.0.99b. 2000-01-28 15:02:35 +00:00
Ollivier Robert
a151a66c2a Virgin import of ntpd 4.0.99b 2000-01-28 14:55:50 +00:00
Ollivier Robert
4edd720b8a This commit was generated by cvs2svn to compensate for changes in r56746,
which included commits to RCS files with non-trunk default branches.
2000-01-28 14:55:50 +00:00
Ollivier Robert
4a3e65fbac Commit a fix several warnings on alpha for sysctlbyname arguments. It could
have resulted in stack corruption. A patch has been sent to the ntp author
for inclusion in next version.

Obtained from:	peter
1999-12-09 13:17:01 +00:00
Ollivier Robert
c0b746e5e8 Virgin import of ntpd 4.0.98f 1999-12-09 13:01:21 +00:00