From: Harlan Stenn Date: Sun, 21 Jan 2018 11:34:08 +0000 (-0800) Subject: ntp_parser.y, ntp_parser.c, ChangeLog: X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b3a7542fb2bd321defd97f1808b37e53592a00eb;p=thirdparty%2Fntp.git ntp_parser.y, ntp_parser.c, ChangeLog: Warn the user if deprecated "driftfile name WanderThreshold" is used Many files: Update the documentation in ntp.conf.def bk: 5a647ab0VYTnLRPx-pe0K40pxCIq3Q --- diff --git a/ChangeLog b/ChangeLog index 8ac476190..62c5f99e5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -83,6 +83,8 @@ * Improve saveconfig output. HStenn. * Decode restrict flags on receive() debug output. HStenn. * Decode interface flags on receive() debug output. HStenn. +* Warn the user if deprecated "driftfile name WanderThreshold" is used. HStenn. +* Update the documentation in ntp.conf.def . HStenn. --- (4.2.8p10) 2017/03/21 Released by Harlan Stenn diff --git a/ntpd/invoke-ntp.conf.texi b/ntpd/invoke-ntp.conf.texi index 51d3eb3b0..57a2c1bc1 100644 --- a/ntpd/invoke-ntp.conf.texi +++ b/ntpd/invoke-ntp.conf.texi @@ -6,7 +6,7 @@ # # EDIT THIS FILE WITH CAUTION (invoke-ntp.conf.texi) # -# It has been AutoGen-ed January 8, 2018 at 12:00:34 AM by AutoGen 5.18.5 +# It has been AutoGen-ed January 21, 2018 at 03:03:16 AM by AutoGen 5.18.5 # From the definitions ntp.conf.def # and the template file agtexi-file.tpl @end ignore @@ -2520,6 +2520,71 @@ This option is useful for sites that run @code{ntpd(1ntpdmdoc)} on multiple hosts, with (mostly) common options (e.g., a restriction list). +@item @code{interface} +@code{[@code{listen} | @code{ignore} | @code{drop}]} +@code{[@code{all} | @code{ipv4} | @code{ipv6} | @code{wildcard} @kbd{name} | @kbd{address} @code{[@code{/} @kbd{prefixlen}]} +The +@code{interface} +directive controls which network addresses +@code{ntpd(1ntpdmdoc)} +opens, and whether input is dropped without processing. +The first parameter determines the aciton for addresses +which match the second parameter. +The second parameter specifies a class of addresses, +or a specific interface name, +or an address. +In the address case, +@kbd{prefixlen} +determines how many bits must match for this rule to apply. +@code{ignore} +prevents opening matching addresses, +@code{drop} +causes +@code{ntpd(1ntpdmdoc)} +to open the address and drop all received packets without examination. +Multiple +@code{interface} +directives can be used. +The last rule which matches a particular address determines the action for it. +@code{interface} +directives are disabled if any +@code{-I}, +@code{--interface}, +@code{-L}, +or +@code{--novirtualips} +command-line options are specified in the configuration file, +all available network addresses are opened. +The +@code{nic} +directive is an alias for +@code{interface}. +@item @code{leapfile} @kbd{leapfile} +This command loads the IERS leapseconds file and initializes the +leapsecond values for the next leapsecond event, leapfile expiration +time, and TAI offset. +The file can be obtained directly from the IERS at +@code{https://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.list} +or +@code{ftp://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.list}. +The +@code{leapfile} +is scanned when +@code{ntpd(1ntpdmdoc)} +processes the +@code{leapfile} @code{directive} @code{or} @code{when} +@code{ntpd} @code{detects} @code{that} @code{the} +@kbd{leapfile} +has changed. +@code{ntpd} +checks once a day to see if the +@kbd{leapfile} +has changed. +The +@code{update-leap(1update_leapmdoc)} +script can be run to see if the +@kbd{leapfile} +should be updated. @item @code{leapsmearinterval} @kbd{seconds} This EXPERIMENTAL option is only available if @code{ntpd(1ntpdmdoc)} @@ -2610,6 +2675,154 @@ facility. This is the same operation as the @code{-l} command line option. +@item @code{mru} +@code{[@code{maxdepth} @kbd{count} | @code{maxmem} @kbd{kilobytes} | @code{mindepth} @kbd{count} | @code{maxage} @kbd{seconds} | @code{initialloc} @kbd{count} | @code{initmem} @kbd{kilobytes} | @code{incalloc} @kbd{count} | @code{incmem} @kbd{kilobytes}]} +Controls size limite of the monitoring facility's Most Recently Used +(MRU) list +of client addresses, which is also used by the +rate control facility. +@table @asis +@item @code{maxdepth} @kbd{count} +@item @code{maxmem} @kbd{kilobytes} +Equivalent upper limits on the size of the MRU list, in terms of entries or kilobytes. +The acutal limit will be up to +@code{incalloc} +entries or +@code{incmem} +kilobytes larger. +As with all of the +@code{mru} +options offered in units of entries or kilobytes, if both +@code{maxdepth} +and +@code{maxmem} @code{are} @code{used,} @code{the} @code{last} @code{one} @code{used} @code{controls.} +The default is 1024 kilobytes. +@item @code{mindepth} @kbd{count} +Lower limit on the MRU list size. +When the MRU list has fewer than +@code{mindepth} +entries, existing entries are never removed to make room for newer ones, +regardless of their age. +The default is 600 entries. +@item @code{maxage} @kbd{seconds} +Once the MRU list has +@code{mindepth} +entries and an additional client is to ba added to the list, +if the oldest entry was updated more than +@code{maxage} +seconds ago, that entry is removed and its storage is reused. +If the oldest entry was updated more recently the MRU list is grown, +subject to +@code{maxdepth} @code{/} @code{moxmem}. +The default is 64 seconds. +@item @code{initalloc} @kbd{count} +@item @code{initmem} @kbd{kilobytes} +Initial memory allocation at the time the monitoringfacility is first enabled, +in terms of the number of entries or kilobytes. +The default is 4 kilobytes. +@item @code{incalloc} @kbd{count} +@item @code{incmem} @kbd{kilobytes} +Size of additional memory allocations when growing the MRU list, in entries or kilobytes. +The default is 4 kilobytes. +@end table +@item @code{nonvolatile} @kbd{threshold} +Specify the +@kbd{threshold} +delta in seconds before an hourly change to the +@code{driftfile} +(frequency file) will be written, with a default value of 1e-7 (0.1 PPM). +The frequency file is inspected each hour. +If the difference between the current frequency and the last value written +exceeds the threshold, the file is written and the +@code{threshold} +becomes the new threshold value. +If the threshold is not exceeeded, it is reduced by half. +This is intended to reduce the number of file writes +for embedded systems with nonvolatile memory. +@item @code{phone} @kbd{dial} @kbd{...} +This command is used in conjunction with +the ACTS modem driver (type 18) +or the JJY driver (type 40, mode 100 - 180). +For the ACTS modem driver (type 18), the arguments consist of +a maximum of 10 telephone numbers used to dial USNO, NIST, or European +time service. +For the JJY driver (type 40 mode 100 - 180), the argument is +one telephone number used to dial the telephone JJY service. +The Hayes command ATDT is normally prepended to the number. +The number can contain other modem control codes as well. +@item @code{reset} +@code{[@code{allpeers}]} +@code{[@code{auth}]} +@code{[@code{ctl}]} +@code{[@code{io}]} +@code{[@code{mem}]} +@code{[@code{sys}]} +@code{[@code{timer}]} +Reset one or more groups of counters maintained by +@code{ntpd} +and exposed by +@code{ntpq} +and +@code{ntpdc}. +@item @code{rlimit} @code{[@code{memlock} @kbd{Nmegabytes} | @code{stacksize} @kbd{N4kPages} @code{filenum} @kbd{Nfiledescriptors}]} +@table @asis +@item @code{memlock} @kbd{Nmegabytes} +Specify the number of megabytes of memory that should be +allocated and locked. +Probably only available under Linux, this option may be useful +when dropping root (the +@code{-i} +option). +The default is 32 megabytes on non-Linux machines, and -1 under Linux. +-1 means "do not lock the process into memory". +0 means "lock whatever memory the process wants into memory". +@item @code{stacksize} @kbd{N4kPages} +Specifies the maximum size of the process stack on systems with the +@code{mlockall()} +function. +Defaults to 50 4k pages (200 4k pages in OpenBSD). +@item @code{filenum} @kbd{Nfiledescriptors} +Specifies the maximum number of file descriptors ntpd may have open at once. +Defaults to the system default. +@end table +@item @code{saveconfigdir} @kbd{directory_path} +Specify the directory in which to write configuration snapshots +requested with +.Cm ntpq 's +@code{saveconfig} +command. +If +@code{saveconfigdir} +does not appear in the configuration file, +@code{saveconfig} +requests are rejected by +@code{ntpd}. +@item @code{saveconfig} @kbd{filename} +Write the current configuration, including any runtime +modifications given with +@code{:config} +or +@code{config-from-file} +to the +@code{ntpd} +host's +@kbd{filename} +in the +@code{saveconfigdir}. +This command will be rejected unless the +@code{saveconfigdir} +directive appears in +.Cm ntpd 's +configuration file. +@kbd{filename} +can use +@code{strftime(3)} +format directives to substitute the current date and time, +for example, +@code{saveconfig\ ntp-%Y%m%d-%H%M%S.conf}. +The filename used is stored in the system variable +@code{savedconfig}. +Authentication is required. @item @code{setvar} @kbd{variable} @code{[@code{default}]} This command adds an additional system variable. These @@ -2642,6 +2855,10 @@ holds the names of all peer variables and the @code{clock_var_list} holds the names of the reference clock variables. +@item @code{sysinfo} +Display operational summary. +@item @code{sysstats} +Show statistucs counters maintained in the protocol module. @item @code{tinker} @code{[@code{allan} @kbd{allan} | @code{dispersion} @kbd{dispersion} | @code{freq} @kbd{freq} | @code{huffpuff} @kbd{huffpuff} | @code{panic} @kbd{panic} | @code{step} @kbd{step} | @code{stepback} @kbd{stepback} | @code{stepfwd} @kbd{stepfwd} | @code{stepout} @kbd{stepout}]} This command can be used to alter several system variables in very exceptional circumstances. @@ -2719,27 +2936,19 @@ be set to any positive number in seconds. If set to zero, the stepout pulses will not be suppressed. @end table -@item @code{rlimit} @code{[@code{memlock} @kbd{Nmegabytes} | @code{stacksize} @kbd{N4kPages} @code{filenum} @kbd{Nfiledescriptors}]} -@table @asis -@item @code{memlock} @kbd{Nmegabytes} -Specify the number of megabytes of memory that should be -allocated and locked. -Probably only available under Linux, this option may be useful -when dropping root (the -@code{-i} -option). -The default is 32 megabytes on non-Linux machines, and -1 under Linux. --1 means "do not lock the process into memory". -0 means "lock whatever memory the process wants into memory". -@item @code{stacksize} @kbd{N4kPages} -Specifies the maximum size of the process stack on systems with the -@code{mlockall()} -function. -Defaults to 50 4k pages (200 4k pages in OpenBSD). -@item @code{filenum} @kbd{Nfiledescriptors} -Specifies the maximum number of file descriptors ntpd may have open at once. -Defaults to the system default. -@end table +@item @code{writevar} @kbd{assocID\ name} @kbd{=} @kbd{value} @kbd{[,...]} +Write (create or update) the specified variables. +If the +@code{assocID} +is zero, the variablea re from the +system variables +name space, otherwise they are from the +peer variables +name space. +The +@code{assocID} +is required, as the same name can occur in both name spaces. + @item @code{trap} @kbd{host_address} @code{[@code{port} @kbd{port_number}]} @code{[@code{interface} @kbd{interface_address}]} This command configures a trap receiver at the given host address and port number for sending messages with the specified @@ -2751,6 +2960,13 @@ message is sent with a source address of the local interface the message is sent through. Note that on a multihomed host the interface used may vary from time to time with routing changes. +@item @code{ttl} @kbd{hop} @kbd{...} +This command specifies a list of TTL values in increasing order. +Up to 8 values can be specified. +In +manycast +mode these values are used in-turn in an expanding-ring search. +The default is eight multiples of 32 starting at 31. The trap receiver will generally log event messages and other information from the server in a log file. diff --git a/ntpd/ntp.conf.5man b/ntpd/ntp.conf.5man index 0fe2fbe41..988d800f6 100644 --- a/ntpd/ntp.conf.5man +++ b/ntpd/ntp.conf.5man @@ -10,11 +10,11 @@ .ds B-Font B .ds I-Font I .ds R-Font R -.TH ntp.conf 5man "08 Jan 2018" "4.2.8p10" "File Formats" +.TH ntp.conf 5man "21 Jan 2018" "4.2.8p10" "File Formats" .\" .\" EDIT THIS FILE WITH CAUTION (in-mem file) .\" -.\" It has been AutoGen-ed January 8, 2018 at 12:00:37 AM by AutoGen 5.18.5 +.\" It has been AutoGen-ed January 21, 2018 at 03:03:19 AM by AutoGen 5.18.5 .\" From the definitions ntp.conf.def .\" and the template file agman-cmd.tpl .SH NAME diff --git a/ntpd/ntp.conf.5mdoc b/ntpd/ntp.conf.5mdoc index 1042545b3..19399b821 100644 --- a/ntpd/ntp.conf.5mdoc +++ b/ntpd/ntp.conf.5mdoc @@ -1,9 +1,9 @@ -.Dd January 8 2018 +.Dd January 21 2018 .Dt NTP_CONF 5mdoc File Formats .Os .\" EDIT THIS FILE WITH CAUTION (ntp.mdoc) .\" -.\" It has been AutoGen-ed January 8, 2018 at 12:00:31 AM by AutoGen 5.18.5 +.\" It has been AutoGen-ed January 21, 2018 at 03:03:14 AM by AutoGen 5.18.5 .\" From the definitions ntp.conf.def .\" and the template file agmdoc-cmd.tpl .Sh NAME diff --git a/ntpd/ntp.conf.def b/ntpd/ntp.conf.def index 7cd6ab1a7..351f22295 100644 --- a/ntpd/ntp.conf.def +++ b/ntpd/ntp.conf.def @@ -2643,6 +2643,78 @@ This option is useful for sites that run .Xr ntpd 1ntpdmdoc on multiple hosts, with (mostly) common options (e.g., a restriction list). +.It Ic interface +.Oo +.Cm listen | Cm ignore | Cm drop +.Oc +.Oo +.Cm all | Cm ipv4 | Cm ipv6 | Cm wildcard +.Ar name | Ar address +.Oo Cm / Ar prefixlen +.Oc +.Oc +The +.Cm interface +directive controls which network addresses +.Xr ntpd 1ntpdmdoc +opens, and whether input is dropped without processing. +The first parameter determines the aciton for addresses +which match the second parameter. +The second parameter specifies a class of addresses, +or a specific interface name, +or an address. +In the address case, +.Ar prefixlen +determines how many bits must match for this rule to apply. +.Cm ignore +prevents opening matching addresses, +.Cm drop +causes +.Xr ntpd 1ntpdmdoc +to open the address and drop all received packets without examination. +Multiple +.Cm interface +directives can be used. +The last rule which matches a particular address determines the action for it. +.Cm interface +directives are disabled if any +.Fl I , +.Fl -interface , +.Fl L , +or +.Fl -novirtualips +command-line options are specified in the configuration file, +all available network addresses are opened. +The +.Cm nic +directive is an alias for +.Cm interface . +.It Ic leapfile Ar leapfile +This command loads the IERS leapseconds file and initializes the +leapsecond values for the next leapsecond event, leapfile expiration +time, and TAI offset. +The file can be obtained directly from the IERS at +.Li https://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.list +or +.Li ftp://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.list . +The +.Cm leapfile +is scanned when +.Xr ntpd 1ntpdmdoc +processes the +.Cm leapfile directive or when +.Cm ntpd detects that the +.Ar leapfile +has changed. +.Cm ntpd +checks once a day to see if the +.Ar leapfile +has changed. +The +.Xr update-leap 1update_leapmdoc +script can be run to see if the +.Ar leapfile +should be updated. .It Ic leapsmearinterval Ar seconds This EXPERIMENTAL option is only available if .Xr ntpd 1ntpdmdoc @@ -2747,6 +2819,179 @@ facility. This is the same operation as the .Fl l command line option. +.It Ic mru +.Oo +.Cm maxdepth Ar count | Cm maxmem Ar kilobytes | +.Cm mindepth Ar count | Cm maxage Ar seconds | +.Cm initialloc Ar count | Cm initmem Ar kilobytes | +.Cm incalloc Ar count | Cm incmem Ar kilobytes +.Oc +Controls size limite of the monitoring facility's Most Recently Used +(MRU) list +of client addresses, which is also used by the +rate control facility. +.Bl -tag -width indent +.It Ic maxdepth Ar count +.It Ic maxmem Ar kilobytes +Equivalent upper limits on the size of the MRU list, in terms of entries or kilobytes. +The acutal limit will be up to +.Cm incalloc +entries or +.Cm incmem +kilobytes larger. +As with all of the +.Cm mru +options offered in units of entries or kilobytes, if both +.Cm maxdepth +and +.Cm maxmem are used, the last one used controls. +The default is 1024 kilobytes. +.It Cm mindepth Ar count +Lower limit on the MRU list size. +When the MRU list has fewer than +.Cm mindepth +entries, existing entries are never removed to make room for newer ones, +regardless of their age. +The default is 600 entries. +.It Cm maxage Ar seconds +Once the MRU list has +.Cm mindepth +entries and an additional client is to ba added to the list, +if the oldest entry was updated more than +.Cm maxage +seconds ago, that entry is removed and its storage is reused. +If the oldest entry was updated more recently the MRU list is grown, +subject to +.Cm maxdepth / moxmem . +The default is 64 seconds. +.It Cm initalloc Ar count +.It Cm initmem Ar kilobytes +Initial memory allocation at the time the monitoringfacility is first enabled, +in terms of the number of entries or kilobytes. +The default is 4 kilobytes. +.It Cm incalloc Ar count +.It Cm incmem Ar kilobytes +Size of additional memory allocations when growing the MRU list, in entries or kilobytes. +The default is 4 kilobytes. +.El +.It Ic nonvolatile Ar threshold +Specify the +.Ar threshold +delta in seconds before an hourly change to the +.Cm driftfile +(frequency file) will be written, with a default value of 1e-7 (0.1 PPM). +The frequency file is inspected each hour. +If the difference between the current frequency and the last value written +exceeds the threshold, the file is written and the +.Cm threshold +becomes the new threshold value. +If the threshold is not exceeeded, it is reduced by half. +This is intended to reduce the number of file writes +for embedded systems with nonvolatile memory. +.It Ic phone Ar dial ... +This command is used in conjunction with +the ACTS modem driver (type 18) +or the JJY driver (type 40, mode 100 - 180). +For the ACTS modem driver (type 18), the arguments consist of +a maximum of 10 telephone numbers used to dial USNO, NIST, or European +time service. +For the JJY driver (type 40 mode 100 - 180), the argument is +one telephone number used to dial the telephone JJY service. +The Hayes command ATDT is normally prepended to the number. +The number can contain other modem control codes as well. +.It Ic reset +.Oo +.Ic allpeers +.Oc +.Oo +.Ic auth +.Oc +.Oo +.Ic ctl +.Oc +.Oo +.Ic io +.Oc +.Oo +.Ic mem +.Oc +.Oo +.Ic sys +.Oc +.Oo +.Ic timer +.Oc +Reset one or more groups of counters maintained by +.Cm ntpd +and exposed by +.Cm ntpq +and +.Cm ntpdc . +.It Xo Ic rlimit +.Oo +.Cm memlock Ar Nmegabytes | +.Cm stacksize Ar N4kPages +.Cm filenum Ar Nfiledescriptors +.Oc +.Xc +.Bl -tag -width indent +.It Cm memlock Ar Nmegabytes +Specify the number of megabytes of memory that should be +allocated and locked. +Probably only available under Linux, this option may be useful +when dropping root (the +.Fl i +option). +The default is 32 megabytes on non-Linux machines, and -1 under Linux. +-1 means "do not lock the process into memory". +0 means "lock whatever memory the process wants into memory". +.It Cm stacksize Ar N4kPages +Specifies the maximum size of the process stack on systems with the +.Fn mlockall +function. +Defaults to 50 4k pages (200 4k pages in OpenBSD). +.It Cm filenum Ar Nfiledescriptors +Specifies the maximum number of file descriptors ntpd may have open at once. +Defaults to the system default. +.El +.It Ic saveconfigdir Ar directory_path +Specify the directory in which to write configuration snapshots +requested with +.Cm ntpq 's +.Cm saveconfig +command. +If +.Cm saveconfigdir +does not appear in the configuration file, +.Cm saveconfig +requests are rejected by +.Cm ntpd . +.It Ic saveconfig Ar filename +Write the current configuration, including any runtime +modifications given with +.Cm :config +or +.Cm config-from-file +to the +.Cm ntpd +host's +.Ar filename +in the +.Cm saveconfigdir . +This command will be rejected unless the +.Cm saveconfigdir +directive appears in +.Cm ntpd 's +configuration file. +.Ar filename +can use +.Xr strftime 3 +format directives to substitute the current date and time, +for example, +.Cm saveconfig\ ntp-%Y%m%d-%H%M%S.conf . +The filename used is stored in the system variable +.Cm savedconfig . +Authentication is required. .It Ic setvar Ar variable Op Cm default This command adds an additional system variable. These @@ -2785,6 +3030,10 @@ holds the names of all peer variables and the .Va clock_var_list holds the names of the reference clock variables. +.It Cm sysinfo +Display operational summary. +.It Cm sysstats +Show statistucs counters maintained in the protocol module. .It Xo Ic tinker .Oo .Cm allan Ar allan | @@ -2874,33 +3123,18 @@ be set to any positive number in seconds. If set to zero, the stepout pulses will not be suppressed. .El -.It Xo Ic rlimit -.Oo -.Cm memlock Ar Nmegabytes | -.Cm stacksize Ar N4kPages -.Cm filenum Ar Nfiledescriptors -.Oc -.Xc -.Bl -tag -width indent -.It Cm memlock Ar Nmegabytes -Specify the number of megabytes of memory that should be -allocated and locked. -Probably only available under Linux, this option may be useful -when dropping root (the -.Fl i -option). -The default is 32 megabytes on non-Linux machines, and -1 under Linux. --1 means "do not lock the process into memory". -0 means "lock whatever memory the process wants into memory". -.It Cm stacksize Ar N4kPages -Specifies the maximum size of the process stack on systems with the -.Fn mlockall -function. -Defaults to 50 4k pages (200 4k pages in OpenBSD). -.It Cm filenum Ar Nfiledescriptors -Specifies the maximum number of file descriptors ntpd may have open at once. -Defaults to the system default. -.El +.It Cm writevar Ar assocID\ name = value [,...] +Write (create or update) the specified variables. +If the +.Cm assocID +is zero, the variablea re from the +system variables +name space, otherwise they are from the +peer variables +name space. +The +.Cm assocID +is required, as the same name can occur in both name spaces. .It Xo Ic trap Ar host_address .Op Cm port Ar port_number .Op Cm interface Ar interface_address @@ -2915,6 +3149,14 @@ message is sent with a source address of the local interface the message is sent through. Note that on a multihomed host the interface used may vary from time to time with routing changes. +.It Cm ttl Ar hop ... +This command specifies a list of TTL values in increasing order. +Up to 8 values can be specified. +In +.Cm +manycast +mode these values are used in-turn in an expanding-ring search. +The default is eight multiples of 32 starting at 31. .Pp The trap receiver will generally log event messages and other information from the server in a log file. diff --git a/ntpd/ntp.conf.man.in b/ntpd/ntp.conf.man.in index be6ad755c..9b65a857d 100644 --- a/ntpd/ntp.conf.man.in +++ b/ntpd/ntp.conf.man.in @@ -10,11 +10,11 @@ .ds B-Font B .ds I-Font I .ds R-Font R -.TH ntp.conf 5 "08 Jan 2018" "4.2.8p10" "File Formats" +.TH ntp.conf 5 "21 Jan 2018" "4.2.8p10" "File Formats" .\" .\" EDIT THIS FILE WITH CAUTION (in-mem file) .\" -.\" It has been AutoGen-ed January 8, 2018 at 12:00:37 AM by AutoGen 5.18.5 +.\" It has been AutoGen-ed January 21, 2018 at 03:03:19 AM by AutoGen 5.18.5 .\" From the definitions ntp.conf.def .\" and the template file agman-cmd.tpl .SH NAME diff --git a/ntpd/ntp.conf.mdoc.in b/ntpd/ntp.conf.mdoc.in index 1224ea514..cb203d2fc 100644 --- a/ntpd/ntp.conf.mdoc.in +++ b/ntpd/ntp.conf.mdoc.in @@ -1,9 +1,9 @@ -.Dd January 8 2018 +.Dd January 21 2018 .Dt NTP_CONF 5 File Formats .Os .\" EDIT THIS FILE WITH CAUTION (ntp.mdoc) .\" -.\" It has been AutoGen-ed January 8, 2018 at 12:00:31 AM by AutoGen 5.18.5 +.\" It has been AutoGen-ed January 21, 2018 at 03:03:14 AM by AutoGen 5.18.5 .\" From the definitions ntp.conf.def .\" and the template file agmdoc-cmd.tpl .Sh NAME diff --git a/ntpd/ntp_parser.c b/ntpd/ntp_parser.c index f2d54f32e..782019cdf 100644 --- a/ntpd/ntp_parser.c +++ b/ntpd/ntp_parser.c @@ -918,14 +918,14 @@ static const yytype_uint16 yyrline[] = 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1176, 1177, 1178, 1185, 1192, 1199, 1215, 1234, 1236, 1238, 1240, 1242, 1244, 1251, 1256, 1257, 1258, 1262, 1266, 1275, 1276, 1280, 1281, - 1282, 1286, 1297, 1311, 1323, 1328, 1330, 1335, 1336, 1344, - 1346, 1354, 1359, 1367, 1392, 1399, 1409, 1410, 1414, 1415, - 1416, 1417, 1421, 1422, 1423, 1427, 1432, 1437, 1445, 1446, - 1447, 1448, 1449, 1450, 1451, 1461, 1466, 1474, 1479, 1487, - 1489, 1493, 1498, 1503, 1511, 1516, 1524, 1533, 1534, 1538, - 1539, 1543, 1551, 1569, 1573, 1578, 1586, 1591, 1592, 1596, - 1601, 1609, 1614, 1619, 1624, 1629, 1637, 1642, 1647, 1655, - 1660, 1661, 1662, 1663, 1664 + 1282, 1286, 1297, 1315, 1327, 1332, 1334, 1339, 1340, 1348, + 1350, 1358, 1363, 1371, 1396, 1403, 1413, 1414, 1418, 1419, + 1420, 1421, 1425, 1426, 1427, 1431, 1436, 1441, 1449, 1450, + 1451, 1452, 1453, 1454, 1455, 1465, 1470, 1478, 1483, 1491, + 1493, 1497, 1502, 1507, 1515, 1520, 1528, 1537, 1538, 1542, + 1543, 1547, 1555, 1573, 1577, 1582, 1590, 1595, 1596, 1600, + 1605, 1613, 1618, 1623, 1628, 1633, 1641, 1646, 1651, 1659, + 1664, 1665, 1666, 1667, 1668 }; #endif @@ -3048,16 +3048,20 @@ yyreduce: APPEND_G_FIFO(cfgt.vars, av); av = create_attr_dval(T_WanderThreshold, (yyvsp[0].Double)); APPEND_G_FIFO(cfgt.vars, av); + msyslog(LOG_WARNING, + "'driftfile FILENAME WanderValue' is deprecated, " + "please use separate 'driftfile FILENAME' and " + "'nonvolatile WanderValue' lines instead."); } else { YYFREE((yyvsp[-1].String)); yyerror("driftfile remote configuration ignored"); } } -#line 3057 "ntp_parser.c" /* yacc.c:1646 */ +#line 3061 "ntp_parser.c" /* yacc.c:1646 */ break; case 253: -#line 1311 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1315 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { if (lex_from_file()) { attr_val *av; @@ -3067,71 +3071,71 @@ yyreduce: yyerror("driftfile remote configuration ignored"); } } -#line 3071 "ntp_parser.c" /* yacc.c:1646 */ +#line 3075 "ntp_parser.c" /* yacc.c:1646 */ break; case 254: -#line 1324 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1328 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Set_var) = create_setvar_node((yyvsp[-3].String), (yyvsp[-1].String), (yyvsp[0].Integer)); } -#line 3077 "ntp_parser.c" /* yacc.c:1646 */ +#line 3081 "ntp_parser.c" /* yacc.c:1646 */ break; case 256: -#line 1330 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1334 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Integer) = 0; } -#line 3083 "ntp_parser.c" /* yacc.c:1646 */ +#line 3087 "ntp_parser.c" /* yacc.c:1646 */ break; case 257: -#line 1335 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1339 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; } -#line 3089 "ntp_parser.c" /* yacc.c:1646 */ +#line 3093 "ntp_parser.c" /* yacc.c:1646 */ break; case 258: -#line 1337 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1341 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3098 "ntp_parser.c" /* yacc.c:1646 */ +#line 3102 "ntp_parser.c" /* yacc.c:1646 */ break; case 259: -#line 1345 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1349 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival((yyvsp[-1].Integer), (yyvsp[0].Integer)); } -#line 3104 "ntp_parser.c" /* yacc.c:1646 */ +#line 3108 "ntp_parser.c" /* yacc.c:1646 */ break; case 260: -#line 1347 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1351 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_sval((yyvsp[-1].Integer), estrdup((yyvsp[0].Address_node)->address)); destroy_address_node((yyvsp[0].Address_node)); } -#line 3113 "ntp_parser.c" /* yacc.c:1646 */ +#line 3117 "ntp_parser.c" /* yacc.c:1646 */ break; case 261: -#line 1355 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1359 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3122 "ntp_parser.c" /* yacc.c:1646 */ +#line 3126 "ntp_parser.c" /* yacc.c:1646 */ break; case 262: -#line 1360 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1364 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3131 "ntp_parser.c" /* yacc.c:1646 */ +#line 3135 "ntp_parser.c" /* yacc.c:1646 */ break; case 263: -#line 1368 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1372 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { char prefix; char * type; @@ -3153,141 +3157,141 @@ yyreduce: (yyval.Attr_val) = create_attr_sval(prefix, estrdup(type)); YYFREE((yyvsp[0].String)); } -#line 3157 "ntp_parser.c" /* yacc.c:1646 */ +#line 3161 "ntp_parser.c" /* yacc.c:1646 */ break; case 264: -#line 1393 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1397 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { nic_rule_node *nrn; nrn = create_nic_rule_node((yyvsp[0].Integer), NULL, (yyvsp[-1].Integer)); APPEND_G_FIFO(cfgt.nic_rules, nrn); } -#line 3168 "ntp_parser.c" /* yacc.c:1646 */ +#line 3172 "ntp_parser.c" /* yacc.c:1646 */ break; case 265: -#line 1400 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1404 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { nic_rule_node *nrn; nrn = create_nic_rule_node(0, (yyvsp[0].String), (yyvsp[-1].Integer)); APPEND_G_FIFO(cfgt.nic_rules, nrn); } -#line 3179 "ntp_parser.c" /* yacc.c:1646 */ +#line 3183 "ntp_parser.c" /* yacc.c:1646 */ break; case 275: -#line 1428 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1432 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { CONCAT_G_FIFOS(cfgt.reset_counters, (yyvsp[0].Int_fifo)); } -#line 3185 "ntp_parser.c" /* yacc.c:1646 */ +#line 3189 "ntp_parser.c" /* yacc.c:1646 */ break; case 276: -#line 1433 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1437 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Int_fifo) = (yyvsp[-1].Int_fifo); APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); } -#line 3194 "ntp_parser.c" /* yacc.c:1646 */ +#line 3198 "ntp_parser.c" /* yacc.c:1646 */ break; case 277: -#line 1438 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1442 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Int_fifo) = NULL; APPEND_G_FIFO((yyval.Int_fifo), create_int_node((yyvsp[0].Integer))); } -#line 3203 "ntp_parser.c" /* yacc.c:1646 */ +#line 3207 "ntp_parser.c" /* yacc.c:1646 */ break; case 285: -#line 1462 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1466 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer))); } -#line 3212 "ntp_parser.c" /* yacc.c:1646 */ +#line 3216 "ntp_parser.c" /* yacc.c:1646 */ break; case 286: -#line 1467 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1471 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), create_int_node((yyvsp[0].Integer))); } -#line 3221 "ntp_parser.c" /* yacc.c:1646 */ +#line 3225 "ntp_parser.c" /* yacc.c:1646 */ break; case 287: -#line 1475 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1479 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-1].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3230 "ntp_parser.c" /* yacc.c:1646 */ +#line 3234 "ntp_parser.c" /* yacc.c:1646 */ break; case 288: -#line 1480 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1484 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[0].Attr_val)); } -#line 3239 "ntp_parser.c" /* yacc.c:1646 */ +#line 3243 "ntp_parser.c" /* yacc.c:1646 */ break; case 289: -#line 1488 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1492 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_ival('i', (yyvsp[0].Integer)); } -#line 3245 "ntp_parser.c" /* yacc.c:1646 */ +#line 3249 "ntp_parser.c" /* yacc.c:1646 */ break; case 291: -#line 1494 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1498 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_rangeval('-', (yyvsp[-3].Integer), (yyvsp[-1].Integer)); } -#line 3251 "ntp_parser.c" /* yacc.c:1646 */ +#line 3255 "ntp_parser.c" /* yacc.c:1646 */ break; case 292: -#line 1499 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1503 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.String_fifo) = (yyvsp[-1].String_fifo); APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String))); } -#line 3260 "ntp_parser.c" /* yacc.c:1646 */ +#line 3264 "ntp_parser.c" /* yacc.c:1646 */ break; case 293: -#line 1504 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1508 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.String_fifo) = NULL; APPEND_G_FIFO((yyval.String_fifo), create_string_node((yyvsp[0].String))); } -#line 3269 "ntp_parser.c" /* yacc.c:1646 */ +#line 3273 "ntp_parser.c" /* yacc.c:1646 */ break; case 294: -#line 1512 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1516 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Address_fifo) = (yyvsp[-1].Address_fifo); APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node)); } -#line 3278 "ntp_parser.c" /* yacc.c:1646 */ +#line 3282 "ntp_parser.c" /* yacc.c:1646 */ break; case 295: -#line 1517 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1521 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Address_fifo) = NULL; APPEND_G_FIFO((yyval.Address_fifo), (yyvsp[0].Address_node)); } -#line 3287 "ntp_parser.c" /* yacc.c:1646 */ +#line 3291 "ntp_parser.c" /* yacc.c:1646 */ break; case 296: -#line 1525 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1529 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { if ((yyvsp[0].Integer) != 0 && (yyvsp[0].Integer) != 1) { yyerror("Integer value is not boolean (0 or 1). Assuming 1"); @@ -3296,35 +3300,35 @@ yyreduce: (yyval.Integer) = (yyvsp[0].Integer); } } -#line 3300 "ntp_parser.c" /* yacc.c:1646 */ +#line 3304 "ntp_parser.c" /* yacc.c:1646 */ break; case 297: -#line 1533 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1537 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Integer) = 1; } -#line 3306 "ntp_parser.c" /* yacc.c:1646 */ +#line 3310 "ntp_parser.c" /* yacc.c:1646 */ break; case 298: -#line 1534 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1538 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Integer) = 0; } -#line 3312 "ntp_parser.c" /* yacc.c:1646 */ +#line 3316 "ntp_parser.c" /* yacc.c:1646 */ break; case 299: -#line 1538 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1542 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Double) = (double)(yyvsp[0].Integer); } -#line 3318 "ntp_parser.c" /* yacc.c:1646 */ +#line 3322 "ntp_parser.c" /* yacc.c:1646 */ break; case 301: -#line 1544 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1548 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Integer) = basedate_eval_string((yyvsp[0].String)); YYFREE((yyvsp[0].String)); } -#line 3324 "ntp_parser.c" /* yacc.c:1646 */ +#line 3328 "ntp_parser.c" /* yacc.c:1646 */ break; case 302: -#line 1552 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1556 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { sim_node *sn; @@ -3334,125 +3338,125 @@ yyreduce: /* Revert from ; to \n for end-of-command */ old_config_style = 1; } -#line 3338 "ntp_parser.c" /* yacc.c:1646 */ +#line 3342 "ntp_parser.c" /* yacc.c:1646 */ break; case 303: -#line 1569 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1573 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { old_config_style = 0; } -#line 3344 "ntp_parser.c" /* yacc.c:1646 */ +#line 3348 "ntp_parser.c" /* yacc.c:1646 */ break; case 304: -#line 1574 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1578 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); } -#line 3353 "ntp_parser.c" /* yacc.c:1646 */ +#line 3357 "ntp_parser.c" /* yacc.c:1646 */ break; case 305: -#line 1579 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1583 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); } -#line 3362 "ntp_parser.c" /* yacc.c:1646 */ +#line 3366 "ntp_parser.c" /* yacc.c:1646 */ break; case 306: -#line 1587 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1591 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); } -#line 3368 "ntp_parser.c" /* yacc.c:1646 */ +#line 3372 "ntp_parser.c" /* yacc.c:1646 */ break; case 309: -#line 1597 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1601 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_server_fifo) = (yyvsp[-1].Sim_server_fifo); APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server)); } -#line 3377 "ntp_parser.c" /* yacc.c:1646 */ +#line 3381 "ntp_parser.c" /* yacc.c:1646 */ break; case 310: -#line 1602 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1606 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_server_fifo) = NULL; APPEND_G_FIFO((yyval.Sim_server_fifo), (yyvsp[0].Sim_server)); } -#line 3386 "ntp_parser.c" /* yacc.c:1646 */ +#line 3390 "ntp_parser.c" /* yacc.c:1646 */ break; case 311: -#line 1610 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1614 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_server) = ONLY_SIM(create_sim_server((yyvsp[-4].Address_node), (yyvsp[-2].Double), (yyvsp[-1].Sim_script_fifo))); } -#line 3392 "ntp_parser.c" /* yacc.c:1646 */ +#line 3396 "ntp_parser.c" /* yacc.c:1646 */ break; case 312: -#line 1615 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1619 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Double) = (yyvsp[-1].Double); } -#line 3398 "ntp_parser.c" /* yacc.c:1646 */ +#line 3402 "ntp_parser.c" /* yacc.c:1646 */ break; case 313: -#line 1620 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1624 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Address_node) = (yyvsp[0].Address_node); } -#line 3404 "ntp_parser.c" /* yacc.c:1646 */ +#line 3408 "ntp_parser.c" /* yacc.c:1646 */ break; case 314: -#line 1625 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1629 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_script_fifo) = (yyvsp[-1].Sim_script_fifo); APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script)); } -#line 3413 "ntp_parser.c" /* yacc.c:1646 */ +#line 3417 "ntp_parser.c" /* yacc.c:1646 */ break; case 315: -#line 1630 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1634 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_script_fifo) = NULL; APPEND_G_FIFO((yyval.Sim_script_fifo), (yyvsp[0].Sim_script)); } -#line 3422 "ntp_parser.c" /* yacc.c:1646 */ +#line 3426 "ntp_parser.c" /* yacc.c:1646 */ break; case 316: -#line 1638 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1642 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Sim_script) = ONLY_SIM(create_sim_script_info((yyvsp[-3].Double), (yyvsp[-1].Attr_val_fifo))); } -#line 3428 "ntp_parser.c" /* yacc.c:1646 */ +#line 3432 "ntp_parser.c" /* yacc.c:1646 */ break; case 317: -#line 1643 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1647 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = (yyvsp[-2].Attr_val_fifo); APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); } -#line 3437 "ntp_parser.c" /* yacc.c:1646 */ +#line 3441 "ntp_parser.c" /* yacc.c:1646 */ break; case 318: -#line 1648 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1652 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val_fifo) = NULL; APPEND_G_FIFO((yyval.Attr_val_fifo), (yyvsp[-1].Attr_val)); } -#line 3446 "ntp_parser.c" /* yacc.c:1646 */ +#line 3450 "ntp_parser.c" /* yacc.c:1646 */ break; case 319: -#line 1656 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ +#line 1660 "../../ntpd/ntp_parser.y" /* yacc.c:1646 */ { (yyval.Attr_val) = create_attr_dval((yyvsp[-2].Integer), (yyvsp[0].Double)); } -#line 3452 "ntp_parser.c" /* yacc.c:1646 */ +#line 3456 "ntp_parser.c" /* yacc.c:1646 */ break; -#line 3456 "ntp_parser.c" /* yacc.c:1646 */ +#line 3460 "ntp_parser.c" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -3680,7 +3684,7 @@ yyreturn: #endif return yyresult; } -#line 1667 "../../ntpd/ntp_parser.y" /* yacc.c:1906 */ +#line 1671 "../../ntpd/ntp_parser.y" /* yacc.c:1906 */ void diff --git a/ntpd/ntp_parser.y b/ntpd/ntp_parser.y index 5049cf340..02c734219 100644 --- a/ntpd/ntp_parser.y +++ b/ntpd/ntp_parser.y @@ -1302,6 +1302,10 @@ drift_parm APPEND_G_FIFO(cfgt.vars, av); av = create_attr_dval(T_WanderThreshold, $2); APPEND_G_FIFO(cfgt.vars, av); + msyslog(LOG_WARNING, + "'driftfile FILENAME WanderValue' is deprecated, " + "please use separate 'driftfile FILENAME' and " + "'nonvolatile WanderValue' lines instead."); } else { YYFREE($1); yyerror("driftfile remote configuration ignored");