Browse Source

update patches

OPENBSD_5_7
Brent Cook 10 years ago
parent
commit
91244782ba
13 changed files with 120 additions and 89 deletions
  1. +3
    -3
      patches/0001-be-more-verbose-when-logging-privsep-errors.patch
  2. +3
    -3
      patches/0002-do-not-allow-privsep-user-to-be-a-privileged-user.patch
  3. +3
    -3
      patches/0003-Handle-IPv6-DNS-records-on-IPv4-networks-more-libera.patch
  4. +4
    -4
      patches/0004-EAI_NODATA-does-not-exist-everywhere.patch
  5. +0
    -45
      patches/0004-Fix-DNS-timeout-lookup.patch
  6. +3
    -3
      patches/0005-Use-LOG_NTP-syslog-facility-if-it-is-available.patch
  7. +6
    -6
      patches/0006-conditionally-fill-in-sin_len-sin6_len-if-they-exist.patch
  8. +7
    -7
      patches/0007-check-if-rdomain-support-is-available.patch
  9. +2
    -2
      patches/0008-update-ntpd.conf-to-indicate-OS-dependent-options.patch
  10. +3
    -3
      patches/0009-allow-overriding-default-user-and-file-locations.patch
  11. +10
    -10
      patches/0010-add-p-option-to-create-a-pid-file.patch
  12. +46
    -0
      patches/0011-initialize-setproctitle-where-needed.patch
  13. +30
    -0
      patches/0012-document-SIGUSR1-fallback-if-SIGINFO-is-not-implemen.patch

+ 3
- 3
patches/0001-be-more-verbose-when-logging-privsep-errors.patch View File

@ -1,7 +1,7 @@
From 76505eff3c813ccdc4bece27e96f26cf04a1ffca Mon Sep 17 00:00:00 2001
From 04a35c5a5dd28b844727616281ce1f758dca61b2 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Thu, 1 Jan 2015 13:06:38 -0600 Date: Thu, 1 Jan 2015 13:06:38 -0600
Subject: [PATCH 01/11] be more verbose when logging privsep errors
Subject: [PATCH 01/12] be more verbose when logging privsep errors
Make it easy for a sysadmin to diagnose a privilege separation path Make it easy for a sysadmin to diagnose a privilege separation path
problem without looking at the source code. problem without looking at the source code.
@ -10,7 +10,7 @@ problem without looking at the source code.
1 file changed, 7 insertions(+), 4 deletions(-) 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/src/usr.sbin/ntpd/ntp.c b/src/usr.sbin/ntpd/ntp.c diff --git a/src/usr.sbin/ntpd/ntp.c b/src/usr.sbin/ntpd/ntp.c
index 8c46bfc..1553cc0 100644
index 87b769b..625364a 100644
--- a/src/usr.sbin/ntpd/ntp.c --- a/src/usr.sbin/ntpd/ntp.c
+++ b/src/usr.sbin/ntpd/ntp.c +++ b/src/usr.sbin/ntpd/ntp.c
@@ -121,10 +121,13 @@ ntp_main(int pipe_prnt[2], int fd_ctl, struct ntpd_conf *nconf, @@ -121,10 +121,13 @@ ntp_main(int pipe_prnt[2], int fd_ctl, struct ntpd_conf *nconf,


+ 3
- 3
patches/0002-do-not-allow-privsep-user-to-be-a-privileged-user.patch View File

@ -1,7 +1,7 @@
From 360d2de5b706fda9555348d4df4eb78a5eed7b3d Mon Sep 17 00:00:00 2001
From 0d10418b24f6cc808c3d57ce787aeddc694f32ec Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Thu, 1 Jan 2015 13:26:29 -0600 Date: Thu, 1 Jan 2015 13:26:29 -0600
Subject: [PATCH 02/11] do not allow privsep user to be a privileged user
Subject: [PATCH 02/12] do not allow privsep user to be a privileged user
This may need to be a function call for different platforms with This may need to be a function call for different platforms with
different capability / privilege mechanisms. different capability / privilege mechanisms.
@ -10,7 +10,7 @@ different capability / privilege mechanisms.
1 file changed, 6 insertions(+) 1 file changed, 6 insertions(+)
diff --git a/src/usr.sbin/ntpd/ntp.c b/src/usr.sbin/ntpd/ntp.c diff --git a/src/usr.sbin/ntpd/ntp.c b/src/usr.sbin/ntpd/ntp.c
index 1553cc0..9c96c47 100644
index 625364a..c8f095e 100644
--- a/src/usr.sbin/ntpd/ntp.c --- a/src/usr.sbin/ntpd/ntp.c
+++ b/src/usr.sbin/ntpd/ntp.c +++ b/src/usr.sbin/ntpd/ntp.c
@@ -145,6 +145,12 @@ ntp_main(int pipe_prnt[2], int fd_ctl, struct ntpd_conf *nconf, @@ -145,6 +145,12 @@ ntp_main(int pipe_prnt[2], int fd_ctl, struct ntpd_conf *nconf,


+ 3
- 3
patches/0003-Handle-IPv6-DNS-records-on-IPv4-networks-more-libera.patch View File

@ -1,7 +1,7 @@
From fa13ece45c6f03bcbd2c19255c9b8b71f740ef7f Mon Sep 17 00:00:00 2001
From c669e9d6b7470136440bccc4fa49e4cc53360e45 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Tue, 30 Dec 2014 09:10:22 -0600 Date: Tue, 30 Dec 2014 09:10:22 -0600
Subject: [PATCH 03/11] Handle IPv6 DNS records on IPv4 networks more liberally
Subject: [PATCH 03/12] Handle IPv6 DNS records on IPv4 networks more liberally
Rather than fail on IPv4 only networks when seeing an IPv6 DNS record, Rather than fail on IPv4 only networks when seeing an IPv6 DNS record,
just give a warning. just give a warning.
@ -13,7 +13,7 @@ Original Author: Stefan Praszalowicz <stefan.praszalowicz@avedya.com>
1 file changed, 10 insertions(+), 3 deletions(-) 1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/src/usr.sbin/ntpd/client.c b/src/usr.sbin/ntpd/client.c diff --git a/src/usr.sbin/ntpd/client.c b/src/usr.sbin/ntpd/client.c
index 115f543..c18d8c5 100644
index ced1a8b..3d4714e 100644
--- a/src/usr.sbin/ntpd/client.c --- a/src/usr.sbin/ntpd/client.c
+++ b/src/usr.sbin/ntpd/client.c +++ b/src/usr.sbin/ntpd/client.c
@@ -138,9 +138,16 @@ client_query(struct ntp_peer *p) @@ -138,9 +138,16 @@ client_query(struct ntp_peer *p)


patches/0005-EAI_NODATA-does-not-exist-everywhere.patch → patches/0004-EAI_NODATA-does-not-exist-everywhere.patch View File

@ -1,7 +1,7 @@
From d15a3b100ee3b497582df84d91c9ff989654cd37 Mon Sep 17 00:00:00 2001
From c77077c654c3d8ca31c0090cc02f4b96e33bf921 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Tue, 30 Dec 2014 09:04:08 -0600 Date: Tue, 30 Dec 2014 09:04:08 -0600
Subject: [PATCH 05/11] EAI_NODATA does not exist everywhere
Subject: [PATCH 04/12] EAI_NODATA does not exist everywhere
FreeBSD says it is deprecated #ifdef's it out. FreeBSD says it is deprecated #ifdef's it out.
@ -15,10 +15,10 @@ portable software now has to have a special check instead.
1 file changed, 8 insertions(+), 2 deletions(-) 1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/src/usr.sbin/ntpd/config.c b/src/usr.sbin/ntpd/config.c diff --git a/src/usr.sbin/ntpd/config.c b/src/usr.sbin/ntpd/config.c
index d660750..22b692b 100644
index c814183..ce5d860 100644
--- a/src/usr.sbin/ntpd/config.c --- a/src/usr.sbin/ntpd/config.c
+++ b/src/usr.sbin/ntpd/config.c +++ b/src/usr.sbin/ntpd/config.c
@@ -124,8 +124,14 @@ host_dns(const char *s, struct ntp_addr **hn)
@@ -133,8 +133,14 @@ host_dns(const char *s, struct ntp_addr **hn)
hints.ai_family = PF_UNSPEC; hints.ai_family = PF_UNSPEC;
hints.ai_socktype = SOCK_DGRAM; /* DUMMY */ hints.ai_socktype = SOCK_DGRAM; /* DUMMY */
error = getaddrinfo(s, NULL, &hints, &res0); error = getaddrinfo(s, NULL, &hints, &res0);

+ 0
- 45
patches/0004-Fix-DNS-timeout-lookup.patch View File

@ -1,45 +0,0 @@
From e600fb2d0a4423ecad5d3961b51fb55b70889918 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com>
Date: Wed, 31 Dec 2014 08:31:20 -0600
Subject: [PATCH 04/11] Fix DNS timeout lookup
Author: Paul B. Henson <henson@acm.org>
Origin: https://bugs.gentoo.org/show_bug.cgi?id=493358
---
src/usr.sbin/ntpd/ntpd.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/usr.sbin/ntpd/ntpd.c b/src/usr.sbin/ntpd/ntpd.c
index cfc7e56..9ce169c 100644
--- a/src/usr.sbin/ntpd/ntpd.c
+++ b/src/usr.sbin/ntpd/ntpd.c
@@ -110,6 +110,7 @@ main(int argc, char *argv[])
int pipe_chld[2];
struct passwd *pw;
extern char *__progname;
+ time_t start_time;
if (strcmp(__progname, "ntpctl") == 0) {
ctl_main (argc, argv);
@@ -205,6 +206,8 @@ main(int argc, char *argv[])
fatal(NULL);
imsg_init(ibuf, pipe_chld[0]);
+ start_time = getmonotime();
+
while (quit == 0) {
pfd[PFD_PIPE].fd = ibuf->fd;
pfd[PFD_PIPE].events = POLLIN;
@@ -217,7 +220,8 @@ main(int argc, char *argv[])
quit = 1;
}
- if (nfds == 0 && lconf.settime) {
+ if (lconf.settime &&
+ (nfds == 0 || getmonotime() > start_time + SETTIME_TIMEOUT)) {
lconf.settime = 0;
timeout = INFTIM;
log_init(lconf.debug);
--
1.9.1

patches/0006-Use-LOG_NTP-syslog-facility-if-it-is-available.patch → patches/0005-Use-LOG_NTP-syslog-facility-if-it-is-available.patch View File

@ -1,7 +1,7 @@
From 245c60ac577e8969e1c235c5e1388d2f5b92278e Mon Sep 17 00:00:00 2001
From dade0523067059717aa6288ece18d23c5d5b7292 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Tue, 30 Dec 2014 09:00:12 -0600
Subject: [PATCH 06/11] Use LOG_NTP syslog facility if it is available
Date: Mon, 12 Jan 2015 21:16:54 -0600
Subject: [PATCH 05/12] Use LOG_NTP syslog facility if it is available
FreeBSD PR: 114191 FreeBSD PR: 114191
Submitted by: Robert Archer <freebsd@deathbeforedecaf.net> Submitted by: Robert Archer <freebsd@deathbeforedecaf.net>

patches/0007-conditionally-fill-in-sin_len-sin6_len-if-they-exist.patch → patches/0006-conditionally-fill-in-sin_len-sin6_len-if-they-exist.patch View File

@ -1,17 +1,17 @@
From 7fe3c1f6e0448cd4341f1a51eb42b23a836cbae9 Mon Sep 17 00:00:00 2001
From 79b2bc332cfdaf28db9c91ff3efa59b58399d210 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Tue, 30 Dec 2014 09:02:50 -0600 Date: Tue, 30 Dec 2014 09:02:50 -0600
Subject: [PATCH 07/11] conditionally fill in sin_len/sin6_len if they exist
Subject: [PATCH 06/12] conditionally fill in sin_len/sin6_len if they exist
--- ---
src/usr.sbin/ntpd/config.c | 8 ++++++++ src/usr.sbin/ntpd/config.c | 8 ++++++++
1 file changed, 8 insertions(+) 1 file changed, 8 insertions(+)
diff --git a/src/usr.sbin/ntpd/config.c b/src/usr.sbin/ntpd/config.c diff --git a/src/usr.sbin/ntpd/config.c b/src/usr.sbin/ntpd/config.c
index 22b692b..c01df83 100644
index ce5d860..58e387f 100644
--- a/src/usr.sbin/ntpd/config.c --- a/src/usr.sbin/ntpd/config.c
+++ b/src/usr.sbin/ntpd/config.c +++ b/src/usr.sbin/ntpd/config.c
@@ -75,7 +75,9 @@ host_v4(const char *s)
@@ -73,7 +73,9 @@ host_v4(const char *s)
if ((h = calloc(1, sizeof(struct ntp_addr))) == NULL) if ((h = calloc(1, sizeof(struct ntp_addr))) == NULL)
fatal(NULL); fatal(NULL);
sa_in = (struct sockaddr_in *)&h->ss; sa_in = (struct sockaddr_in *)&h->ss;
@ -21,7 +21,7 @@ index 22b692b..c01df83 100644
sa_in->sin_family = AF_INET; sa_in->sin_family = AF_INET;
sa_in->sin_addr.s_addr = ina.s_addr; sa_in->sin_addr.s_addr = ina.s_addr;
@@ -97,7 +99,9 @@ host_v6(const char *s)
@@ -95,7 +97,9 @@ host_v6(const char *s)
if ((h = calloc(1, sizeof(struct ntp_addr))) == NULL) if ((h = calloc(1, sizeof(struct ntp_addr))) == NULL)
fatal(NULL); fatal(NULL);
sa_in6 = (struct sockaddr_in6 *)&h->ss; sa_in6 = (struct sockaddr_in6 *)&h->ss;
@ -31,7 +31,7 @@ index 22b692b..c01df83 100644
sa_in6->sin6_family = AF_INET6; sa_in6->sin6_family = AF_INET6;
memcpy(&sa_in6->sin6_addr, memcpy(&sa_in6->sin6_addr,
&((struct sockaddr_in6 *)res->ai_addr)->sin6_addr, &((struct sockaddr_in6 *)res->ai_addr)->sin6_addr,
@@ -147,12 +151,16 @@ host_dns(const char *s, struct ntp_addr **hn)
@@ -156,12 +160,16 @@ host_dns(const char *s, struct ntp_addr **hn)
h->ss.ss_family = res->ai_family; h->ss.ss_family = res->ai_family;
if (res->ai_family == AF_INET) { if (res->ai_family == AF_INET) {
sa_in = (struct sockaddr_in *)&h->ss; sa_in = (struct sockaddr_in *)&h->ss;

patches/0008-check-if-rdomain-support-is-available.patch → patches/0007-check-if-rdomain-support-is-available.patch View File

@ -1,7 +1,7 @@
From 61ae467395cfbd7675ad2731e7db7f84b2ab39fd Mon Sep 17 00:00:00 2001
From aff7968cefbc6d9d04f961456324bd352d7af401 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Tue, 30 Dec 2014 09:05:46 -0600 Date: Tue, 30 Dec 2014 09:05:46 -0600
Subject: [PATCH 08/11] check if rdomain support is available.
Subject: [PATCH 07/12] check if rdomain support is available.
Handle FreeBSD's calling rdomain 'FIB'. Handle FreeBSD's calling rdomain 'FIB'.
- from naddy@openbsd.org - from naddy@openbsd.org
@ -13,7 +13,7 @@ Handle FreeBSD's calling rdomain 'FIB'.
4 files changed, 22 insertions(+), 1 deletion(-) 4 files changed, 22 insertions(+), 1 deletion(-)
diff --git a/src/usr.sbin/ntpd/client.c b/src/usr.sbin/ntpd/client.c diff --git a/src/usr.sbin/ntpd/client.c b/src/usr.sbin/ntpd/client.c
index c18d8c5..a06d5fe 100644
index 3d4714e..339120b 100644
--- a/src/usr.sbin/ntpd/client.c --- a/src/usr.sbin/ntpd/client.c
+++ b/src/usr.sbin/ntpd/client.c +++ b/src/usr.sbin/ntpd/client.c
@@ -149,10 +149,12 @@ client_query(struct ntp_peer *p) @@ -149,10 +149,12 @@ client_query(struct ntp_peer *p)
@ -43,7 +43,7 @@ index c18d8c5..a06d5fe 100644
for (cmsg = CMSG_FIRSTHDR(&somsg); cmsg != NULL; for (cmsg = CMSG_FIRSTHDR(&somsg); cmsg != NULL;
cmsg = CMSG_NXTHDR(&somsg, cmsg)) { cmsg = CMSG_NXTHDR(&somsg, cmsg)) {
diff --git a/src/usr.sbin/ntpd/ntpd.h b/src/usr.sbin/ntpd/ntpd.h diff --git a/src/usr.sbin/ntpd/ntpd.h b/src/usr.sbin/ntpd/ntpd.h
index 464353c..e5e7f4e 100644
index 45e14bb..03d6b0c 100644
--- a/src/usr.sbin/ntpd/ntpd.h --- a/src/usr.sbin/ntpd/ntpd.h
+++ b/src/usr.sbin/ntpd/ntpd.h +++ b/src/usr.sbin/ntpd/ntpd.h
@@ -41,6 +41,12 @@ @@ -41,6 +41,12 @@
@ -60,10 +60,10 @@ index 464353c..e5e7f4e 100644
#define INTERVAL_QUERY_PATHETIC 60 #define INTERVAL_QUERY_PATHETIC 60
#define INTERVAL_QUERY_AGGRESSIVE 5 #define INTERVAL_QUERY_AGGRESSIVE 5
diff --git a/src/usr.sbin/ntpd/parse.y b/src/usr.sbin/ntpd/parse.y diff --git a/src/usr.sbin/ntpd/parse.y b/src/usr.sbin/ntpd/parse.y
index 74e3fcd..09a6d9d 100644
index f3db4ae..42a49f7 100644
--- a/src/usr.sbin/ntpd/parse.y --- a/src/usr.sbin/ntpd/parse.y
+++ b/src/usr.sbin/ntpd/parse.y +++ b/src/usr.sbin/ntpd/parse.y
@@ -313,10 +313,12 @@ weight : WEIGHT NUMBER {
@@ -307,10 +307,12 @@ weight : WEIGHT NUMBER {
opts.weight = $2; opts.weight = $2;
} }
rtable : RTABLE NUMBER { rtable : RTABLE NUMBER {
@ -77,7 +77,7 @@ index 74e3fcd..09a6d9d 100644
} }
; ;
diff --git a/src/usr.sbin/ntpd/server.c b/src/usr.sbin/ntpd/server.c diff --git a/src/usr.sbin/ntpd/server.c b/src/usr.sbin/ntpd/server.c
index 2dbb01f..3c74c24 100644
index 66d8bbe..f17891f 100644
--- a/src/usr.sbin/ntpd/server.c --- a/src/usr.sbin/ntpd/server.c
+++ b/src/usr.sbin/ntpd/server.c +++ b/src/usr.sbin/ntpd/server.c
@@ -39,7 +39,10 @@ setup_listeners(struct servent *se, struct ntpd_conf *lconf, u_int *cnt) @@ -39,7 +39,10 @@ setup_listeners(struct servent *se, struct ntpd_conf *lconf, u_int *cnt)

patches/0009-update-ntpd.conf-to-indicate-OS-dependent-options.patch → patches/0008-update-ntpd.conf-to-indicate-OS-dependent-options.patch View File

@ -1,7 +1,7 @@
From a57ccaaaeb7b17c7fc8429c7daa1fa501084d895 Mon Sep 17 00:00:00 2001
From 3255340d7b3f3049e52c3887c94541236550fc0e Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Tue, 30 Dec 2014 09:20:03 -0600 Date: Tue, 30 Dec 2014 09:20:03 -0600
Subject: [PATCH 09/11] update ntpd.conf to indicate OS-dependent options
Subject: [PATCH 08/12] update ntpd.conf to indicate OS-dependent options
Also, clarify listening behavior based on a patch from Also, clarify listening behavior based on a patch from
Dererk <dererk@debian.org> Dererk <dererk@debian.org>

patches/0010-allow-overriding-default-user-and-file-locations.patch → patches/0009-allow-overriding-default-user-and-file-locations.patch View File

@ -1,7 +1,7 @@
From b35888969063fb5b34db8847dfaa54f2bd4512f4 Mon Sep 17 00:00:00 2001
From c89cf6a3be32c9aaf57c97a5a866936355a59448 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Thu, 1 Jan 2015 07:18:11 -0600 Date: Thu, 1 Jan 2015 07:18:11 -0600
Subject: [PATCH 10/11] allow overriding default user and file locations
Subject: [PATCH 09/12] allow overriding default user and file locations
Allow the build process to override the default ntpd file paths and Allow the build process to override the default ntpd file paths and
default user. default user.
@ -10,7 +10,7 @@ default user.
1 file changed, 13 insertions(+), 3 deletions(-) 1 file changed, 13 insertions(+), 3 deletions(-)
diff --git a/src/usr.sbin/ntpd/ntpd.h b/src/usr.sbin/ntpd/ntpd.h diff --git a/src/usr.sbin/ntpd/ntpd.h b/src/usr.sbin/ntpd/ntpd.h
index e5e7f4e..2be060a 100644
index 03d6b0c..962e1cc 100644
--- a/src/usr.sbin/ntpd/ntpd.h --- a/src/usr.sbin/ntpd/ntpd.h
+++ b/src/usr.sbin/ntpd/ntpd.h +++ b/src/usr.sbin/ntpd/ntpd.h
@@ -36,10 +36,20 @@ @@ -36,10 +36,20 @@

patches/0011-add-p-option-to-create-a-pid-file.patch → patches/0010-add-p-option-to-create-a-pid-file.patch View File

@ -1,7 +1,7 @@
From 225c3b07fb4a6eed98a26a7068e84721c810ee5d Mon Sep 17 00:00:00 2001
From 486586cc9977c7d1fc10c47810b1ea6a9479d659 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com> From: Brent Cook <busterb@gmail.com>
Date: Wed, 31 Dec 2014 08:26:41 -0600 Date: Wed, 31 Dec 2014 08:26:41 -0600
Subject: [PATCH 11/11] add -p option to create a pid file
Subject: [PATCH 10/12] add -p option to create a pid file
This is used in both the Gentoo and Debian ports. This is used in both the Gentoo and Debian ports.
@ -35,7 +35,7 @@ index 18b12e8..9eb1fee 100644
Do not set the time immediately at startup. Do not set the time immediately at startup.
This is the default. This is the default.
diff --git a/src/usr.sbin/ntpd/ntpd.c b/src/usr.sbin/ntpd/ntpd.c diff --git a/src/usr.sbin/ntpd/ntpd.c b/src/usr.sbin/ntpd/ntpd.c
index 9ce169c..c36bbbb 100644
index 8ac1d14..af6d74d 100644
--- a/src/usr.sbin/ntpd/ntpd.c --- a/src/usr.sbin/ntpd/ntpd.c
+++ b/src/usr.sbin/ntpd/ntpd.c +++ b/src/usr.sbin/ntpd/ntpd.c
@@ -83,6 +83,18 @@ sighdlr(int sig) @@ -83,6 +83,18 @@ sighdlr(int sig)
@ -66,7 +66,7 @@ index 9ce169c..c36bbbb 100644
__progname); __progname);
exit(1); exit(1);
} }
@@ -123,7 +135,7 @@ main(int argc, char *argv[])
@@ -122,7 +134,7 @@ main(int argc, char *argv[])
log_init(1); /* log to stderr until daemonized */ log_init(1); /* log to stderr until daemonized */
@ -75,7 +75,7 @@ index 9ce169c..c36bbbb 100644
switch (ch) { switch (ch) {
case 'd': case 'd':
lconf.debug = 1; lconf.debug = 1;
@@ -135,6 +147,9 @@ main(int argc, char *argv[])
@@ -134,6 +146,9 @@ main(int argc, char *argv[])
case 'n': case 'n':
lconf.noaction = 1; lconf.noaction = 1;
break; break;
@ -85,7 +85,7 @@ index 9ce169c..c36bbbb 100644
case 's': case 's':
lconf.settime = 1; lconf.settime = 1;
break; break;
@@ -175,9 +190,11 @@ main(int argc, char *argv[])
@@ -174,9 +189,11 @@ main(int argc, char *argv[])
reset_adjtime(); reset_adjtime();
if (!lconf.settime) { if (!lconf.settime) {
log_init(lconf.debug); log_init(lconf.debug);
@ -98,7 +98,7 @@ index 9ce169c..c36bbbb 100644
} else } else
timeout = SETTIME_TIMEOUT * 1000; timeout = SETTIME_TIMEOUT * 1000;
@@ -227,9 +244,11 @@ main(int argc, char *argv[])
@@ -223,9 +240,11 @@ main(int argc, char *argv[])
log_init(lconf.debug); log_init(lconf.debug);
log_debug("no reply received in time, skipping initial " log_debug("no reply received in time, skipping initial "
"time setting"); "time setting");
@ -111,7 +111,7 @@ index 9ce169c..c36bbbb 100644
} }
if (nfds > 0 && (pfd[PFD_PIPE].revents & POLLOUT)) if (nfds > 0 && (pfd[PFD_PIPE].revents & POLLOUT))
@@ -268,6 +287,8 @@ main(int argc, char *argv[])
@@ -264,6 +283,8 @@ main(int argc, char *argv[])
msgbuf_clear(&ibuf->w); msgbuf_clear(&ibuf->w);
free(ibuf); free(ibuf);
log_info("Terminating"); log_info("Terminating");
@ -120,7 +120,7 @@ index 9ce169c..c36bbbb 100644
return (0); return (0);
} }
@@ -343,9 +364,11 @@ dispatch_imsg(struct ntpd_conf *lconf)
@@ -339,9 +360,11 @@ dispatch_imsg(struct ntpd_conf *lconf)
memcpy(&d, imsg.data, sizeof(d)); memcpy(&d, imsg.data, sizeof(d));
ntpd_settime(d); ntpd_settime(d);
/* daemonize now */ /* daemonize now */
@ -134,7 +134,7 @@ index 9ce169c..c36bbbb 100644
timeout = INFTIM; timeout = INFTIM;
break; break;
diff --git a/src/usr.sbin/ntpd/ntpd.h b/src/usr.sbin/ntpd/ntpd.h diff --git a/src/usr.sbin/ntpd/ntpd.h b/src/usr.sbin/ntpd/ntpd.h
index 2be060a..01d8e24 100644
index 962e1cc..73d7fe1 100644
--- a/src/usr.sbin/ntpd/ntpd.h --- a/src/usr.sbin/ntpd/ntpd.h
+++ b/src/usr.sbin/ntpd/ntpd.h +++ b/src/usr.sbin/ntpd/ntpd.h
@@ -206,6 +206,7 @@ struct ntpd_conf { @@ -206,6 +206,7 @@ struct ntpd_conf {

+ 46
- 0
patches/0011-initialize-setproctitle-where-needed.patch View File

@ -0,0 +1,46 @@
From b0e327e94bee063758356239ecd4d6adb83bb638 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com>
Date: Mon, 12 Jan 2015 06:18:31 -0600
Subject: [PATCH 11/12] initialize setproctitle where needed
---
src/usr.sbin/ntpd/ntpd.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/src/usr.sbin/ntpd/ntpd.c b/src/usr.sbin/ntpd/ntpd.c
index af6d74d..d8ede39 100644
--- a/src/usr.sbin/ntpd/ntpd.c
+++ b/src/usr.sbin/ntpd/ntpd.c
@@ -111,6 +111,11 @@ usage(void)
#define POLL_MAX 8
#define PFD_PIPE 0
+/* Saves a copy of argv for setproctitle emulation */
+#ifndef HAVE_SETPROCTITLE
+static char **saved_argv;
+#endif
+
int
main(int argc, char *argv[])
{
@@ -134,6 +139,17 @@ main(int argc, char *argv[])
log_init(1); /* log to stderr until daemonized */
+#ifndef HAVE_SETPROCTITLE
+ int i;
+ /* Prepare for later setproctitle emulation */
+ saved_argv = calloc(argc + 1, sizeof(*saved_argv));
+ for (i = 0; i < argc; i++)
+ saved_argv[i] = strdup(argv[i]);
+ saved_argv[i] = NULL;
+ compat_init_setproctitle(argc, argv);
+ argv = saved_argv;
+#endif
+
while ((ch = getopt(argc, argv, "df:np:sSv")) != -1) {
switch (ch) {
case 'd':
--
1.9.1

+ 30
- 0
patches/0012-document-SIGUSR1-fallback-if-SIGINFO-is-not-implemen.patch View File

@ -0,0 +1,30 @@
From b7279a3996e26ad55f44af044f131339e24b8b40 Mon Sep 17 00:00:00 2001
From: Brent Cook <busterb@gmail.com>
Date: Mon, 12 Jan 2015 21:17:35 -0600
Subject: [PATCH 12/12] document SIGUSR1 fallback if SIGINFO is not
implemented.
---
src/usr.sbin/ntpd/ntpd.8 | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/usr.sbin/ntpd/ntpd.8 b/src/usr.sbin/ntpd/ntpd.8
index 9eb1fee..b15912f 100644
--- a/src/usr.sbin/ntpd/ntpd.8
+++ b/src/usr.sbin/ntpd/ntpd.8
@@ -126,7 +126,11 @@ When
.Pq engine
receives a
.Dv SIGINFO
-signal, it writes its peer and sensor status to
+signal (or a
+.Dv SIGUSR1
+signal on systems without
+.Dv SIGINFO),
+it writes its peer and sensor status to
.Xr syslog 3 .
.Sh FILES
.Bl -tag -width "/var/db/ntpd.driftXXX" -compact
--
1.9.1

Loading…
Cancel
Save