Module Name: src
Committed By: roy
Date: Sun Jan 3 15:33:05 UTC 2021
Modified Files:
src/external/bsd/ntp/dist/ntpd: cmd_args.c ntp_io.c ntp_timer.c
Log Message:
ntp: respect user's wishes to disable interface scanning
While here, disable periodic scanning by default on NetBSD as it's
no longer needed.
The user can still enable it though with a positive number to the -U
option.
kardel@ So far I see no other issues from the pitfalls I know of
To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/external/bsd/ntp/dist/ntpd/cmd_args.c
cvs rdiff -u -r1.28 -r1.29 src/external/bsd/ntp/dist/ntpd/ntp_io.c
cvs rdiff -u -r1.8 -r1.9 src/external/bsd/ntp/dist/ntpd/ntp_timer.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/bsd/ntp/dist/ntpd/cmd_args.c
diff -u src/external/bsd/ntp/dist/ntpd/cmd_args.c:1.6 src/external/bsd/ntp/dist/ntpd/cmd_args.c:1.7
--- src/external/bsd/ntp/dist/ntpd/cmd_args.c:1.6 Mon May 25 20:47:25 2020
+++ src/external/bsd/ntp/dist/ntpd/cmd_args.c Sun Jan 3 15:33:05 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: cmd_args.c,v 1.6 2020/05/25 20:47:25 christos Exp $ */
+/* $NetBSD: cmd_args.c,v 1.7 2021/01/03 15:33:05 roy Exp $ */
/*
* cmd_args.c = command-line argument processing
@@ -181,9 +181,11 @@ getCmdOpts(
if (HAVE_OPT( UPDATEINTERVAL )) {
long val = OPT_VALUE_UPDATEINTERVAL;
- if (val >= 0)
+ if (val >= 0) {
interface_interval = val;
- else {
+ if (interface_interval == 0)
+ disable_dynamic_updates = 1;
+ } else {
fprintf(stderr,
"command line interface update interval %ld must not be negative\n",
val);
Index: src/external/bsd/ntp/dist/ntpd/ntp_io.c
diff -u src/external/bsd/ntp/dist/ntpd/ntp_io.c:1.28 src/external/bsd/ntp/dist/ntpd/ntp_io.c:1.29
--- src/external/bsd/ntp/dist/ntpd/ntp_io.c:1.28 Fri Jan 1 17:21:47 2021
+++ src/external/bsd/ntp/dist/ntpd/ntp_io.c Sun Jan 3 15:33:05 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: ntp_io.c,v 1.28 2021/01/01 17:21:47 roy Exp $ */
+/* $NetBSD: ntp_io.c,v 1.29 2021/01/03 15:33:05 roy Exp $ */
/*
* ntp_io.c - input/output routines for ntpd. The socket-opening code
@@ -455,8 +455,13 @@ init_io(void)
{
/* Init buffer free list and stat counters */
init_recvbuff(RECV_INIT);
+#ifdef SO_RERROR
+ /* route(4) overflow can be observed */
+ interface_interval = 0;
+#else
/* update interface every 5 minutes as default */
interface_interval = 300;
+#endif
#ifdef WORK_PIPE
addremove_io_fd = &ntpd_addremove_io_fd;
Index: src/external/bsd/ntp/dist/ntpd/ntp_timer.c
diff -u src/external/bsd/ntp/dist/ntpd/ntp_timer.c:1.8 src/external/bsd/ntp/dist/ntpd/ntp_timer.c:1.9
--- src/external/bsd/ntp/dist/ntpd/ntp_timer.c:1.8 Mon May 25 20:47:25 2020
+++ src/external/bsd/ntp/dist/ntpd/ntp_timer.c Sun Jan 3 15:33:05 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: ntp_timer.c,v 1.8 2020/05/25 20:47:25 christos Exp $ */
+/* $NetBSD: ntp_timer.c,v 1.9 2021/01/03 15:33:05 roy Exp $ */
/*
* ntp_timer.c - event timer support routines
@@ -423,9 +423,11 @@ timer(void)
/*
* Interface update timer
*/
- if (interface_interval && interface_timer <= current_time) {
- timer_interfacetimeout(current_time +
- interface_interval);
+ if (!disable_dynamic_updates &&
+ interface_timer && interface_timer <= current_time) {
+ if (interface_interval)
+ timer_interfacetimeout(current_time +
+ interface_interval);
DPRINTF(2, ("timer: interface update\n"));
interface_update(NULL, NULL);
}