12b15cb3dSCy Schubert@node sntp Invocation 22b15cb3dSCy Schubert@section Invoking sntp 32b15cb3dSCy Schubert@pindex sntp 42b15cb3dSCy Schubert@cindex standard Simple Network Time Protocol client program 52b15cb3dSCy Schubert@ignore 62b15cb3dSCy Schubert# 72b15cb3dSCy Schubert# EDIT THIS FILE WITH CAUTION (invoke-sntp.texi) 82b15cb3dSCy Schubert# 9*f5f40dd6SCy Schubert# It has been AutoGen-ed May 25, 2024 at 12:02:28 AM by AutoGen 5.18.16 102b15cb3dSCy Schubert# From the definitions sntp-opts.def 112b15cb3dSCy Schubert# and the template file agtexi-cmd.tpl 122b15cb3dSCy Schubert@end ignore 132b15cb3dSCy Schubert 142b15cb3dSCy Schubert 152b15cb3dSCy Schubert 162b15cb3dSCy Schubert@code{sntp} 172b15cb3dSCy Schubertcan be used as an SNTP client to query a NTP or SNTP server and either display 182b15cb3dSCy Schubertthe time or set the local system's time (given suitable privilege). It can be 192b15cb3dSCy Schubertrun as an interactive command or from a 202b15cb3dSCy Schubert@code{cron} 212b15cb3dSCy Schubertjob. 222b15cb3dSCy Schubert 232b15cb3dSCy SchubertNTP (the Network Time Protocol) and SNTP (the Simple Network Time Protocol) 242b15cb3dSCy Schubertare defined and described by RFC 5905. 252b15cb3dSCy Schubert 262b15cb3dSCy Schubert 272b15cb3dSCy SchubertThe default is to write the estimated correct local date and time (i.e. not 282b15cb3dSCy SchubertUTC) to the standard output in a format like: 292b15cb3dSCy Schubert 302b15cb3dSCy Schubert@code{'1996-10-15 20:17:25.123 (+0800) +4.567 +/- 0.089 [host] IP sN'} 312b15cb3dSCy Schubert 322b15cb3dSCy Schubertwhere the 332b15cb3dSCy Schubert@code{'(+0800)'} 342b15cb3dSCy Schubertmeans that to get to UTC from the reported local time one must 352b15cb3dSCy Schubertadd 8 hours and 0 minutes, 362b15cb3dSCy Schubertthe 372b15cb3dSCy Schubert@code{'+4.567'} 382b15cb3dSCy Schubertindicates the local clock is 4.567 seconds behind the correct time 392b15cb3dSCy Schubert(so 4.567 seconds must be added to the local clock to get it to be correct). 402b15cb3dSCy SchubertNote that the number of decimals printed for this value will change 412b15cb3dSCy Schubertbased on the reported precision of the server. 422b15cb3dSCy Schubert@code{'+/- 0.089'} 432b15cb3dSCy Schubertis the reported 442b15cb3dSCy Schubert@emph{synchronization} @emph{distance} 452b15cb3dSCy Schubert(in seconds), which represents the maximum error due to all causes. 462b15cb3dSCy SchubertIf the server does not report valid data needed to calculate the 472b15cb3dSCy Schubertsynchronization distance, this will be reported as 482b15cb3dSCy Schubert@code{'+/- ?'}. 492b15cb3dSCy SchubertIf the 502b15cb3dSCy Schubert@emph{host} 512b15cb3dSCy Schubertis different from the 522b15cb3dSCy Schubert@emph{IP}, 532b15cb3dSCy Schubertboth will be displayed. 542b15cb3dSCy SchubertOtherwise, only the 552b15cb3dSCy Schubert@emph{IP} 562b15cb3dSCy Schubertis displayed. 572b15cb3dSCy SchubertFinally, the 582b15cb3dSCy Schubert@emph{stratum} 59a25439b6SCy Schubertof the host is reported 60a25439b6SCy Schubertand the leap indicator is decoded and displayed. 612b15cb3dSCy Schubert 622b15cb3dSCy SchubertThis section was generated by @strong{AutoGen}, 632b15cb3dSCy Schubertusing the @code{agtexi-cmd} template and the option descriptions for the @code{sntp} program. 642b15cb3dSCy SchubertThis software is released under the NTP license, <http://ntp.org/license>. 652b15cb3dSCy Schubert 662b15cb3dSCy Schubert@menu 672b15cb3dSCy Schubert* sntp usage:: sntp help/usage (@option{--help}) 682b15cb3dSCy Schubert* sntp ipv4:: ipv4 option (-4) 692b15cb3dSCy Schubert* sntp ipv6:: ipv6 option (-6) 702b15cb3dSCy Schubert* sntp authentication:: authentication option (-a) 712b15cb3dSCy Schubert* sntp broadcast:: broadcast option (-b) 722b15cb3dSCy Schubert* sntp concurrent:: concurrent option (-c) 732b15cb3dSCy Schubert* sntp gap:: gap option (-g) 742b15cb3dSCy Schubert* sntp kod:: kod option (-K) 752b15cb3dSCy Schubert* sntp keyfile:: keyfile option (-k) 762b15cb3dSCy Schubert* sntp logfile:: logfile option (-l) 772b15cb3dSCy Schubert* sntp steplimit:: steplimit option (-M) 782b15cb3dSCy Schubert* sntp ntpversion:: ntpversion option (-o) 792b15cb3dSCy Schubert* sntp usereservedport:: usereservedport option (-r) 802b15cb3dSCy Schubert* sntp timeout:: timeout option (-t) 812b15cb3dSCy Schubert* sntp wait:: wait option 822b15cb3dSCy Schubert* sntp config:: presetting/configuring sntp 832b15cb3dSCy Schubert* sntp exit status:: exit status 842b15cb3dSCy Schubert* sntp Usage:: Usage 852b15cb3dSCy Schubert* sntp Authors:: Authors 862b15cb3dSCy Schubert@end menu 872b15cb3dSCy Schubert 882b15cb3dSCy Schubert@node sntp usage 892b15cb3dSCy Schubert@subsection sntp help/usage (@option{--help}) 902b15cb3dSCy Schubert@cindex sntp help 912b15cb3dSCy Schubert 922b15cb3dSCy SchubertThis is the automatically generated usage text for sntp. 932b15cb3dSCy Schubert 942b15cb3dSCy SchubertThe text printed is the same whether selected with the @code{help} option 952b15cb3dSCy Schubert(@option{--help}) or the @code{more-help} option (@option{--more-help}). @code{more-help} will print 962b15cb3dSCy Schubertthe usage text by passing it through a pager program. 972b15cb3dSCy Schubert@code{more-help} is disabled on platforms without a working 982b15cb3dSCy Schubert@code{fork(2)} function. The @code{PAGER} environment variable is 992b15cb3dSCy Schubertused to select the program, defaulting to @file{more}. Both will exit 1002b15cb3dSCy Schubertwith a status code of 0. 1012b15cb3dSCy Schubert 1022b15cb3dSCy Schubert@exampleindent 0 1032b15cb3dSCy Schubert@example 104*f5f40dd6SCy Schubertsntp - standard Simple Network Time Protocol client program - Ver. 4.2.8p18 1054e1ef62aSXin LIUsage: sntp [ -<flag> [<val>] | --<name>[@{=| @}<val>] ]... \ 1062b15cb3dSCy Schubert [ hostname-or-IP ...] 1072b15cb3dSCy Schubert Flg Arg Option-Name Description 1082b15cb3dSCy Schubert -4 no ipv4 Force IPv4 DNS name resolution 1094e1ef62aSXin LI - prohibits the option 'ipv6' 1102b15cb3dSCy Schubert -6 no ipv6 Force IPv6 DNS name resolution 1114e1ef62aSXin LI - prohibits the option 'ipv4' 1124e1ef62aSXin LI -a Num authentication Enable authentication with the key auth-keynumber 1132b15cb3dSCy Schubert -b Str broadcast Listen to the address specified for broadcast time sync 1142b15cb3dSCy Schubert - may appear multiple times 1152b15cb3dSCy Schubert -c Str concurrent Concurrently query all IPs returned for host-name 1162b15cb3dSCy Schubert - may appear multiple times 1172b15cb3dSCy Schubert -d no debug-level Increase debug verbosity level 1182b15cb3dSCy Schubert - may appear multiple times 1194e1ef62aSXin LI -D Num set-debug-level Set the debug verbosity level 1202b15cb3dSCy Schubert - may appear multiple times 1212b15cb3dSCy Schubert -g Num gap The gap (in milliseconds) between time requests 1222b15cb3dSCy Schubert -K Fil kod KoD history filename 1234e1ef62aSXin LI -k Fil keyfile Look in this file for the key specified with -a 1242b15cb3dSCy Schubert -l Fil logfile Log to specified logfile 1254e1ef62aSXin LI -M Num steplimit Adjustments less than steplimit msec will be slewed 1264e1ef62aSXin LI - it must be in the range: 1272b15cb3dSCy Schubert greater than or equal to 0 1284e1ef62aSXin LI -o Num ntpversion Send int as our NTP protocol version 1294e1ef62aSXin LI - it must be in the range: 1302b15cb3dSCy Schubert 0 to 7 1312b15cb3dSCy Schubert -r no usereservedport Use the NTP Reserved Port (port 123) 1324e1ef62aSXin LI -S no step OK to 'step' the time with settimeofday(2) 1334e1ef62aSXin LI -s no slew OK to 'slew' the time with adjtime(2) 1344e1ef62aSXin LI -t Num timeout The number of seconds to wait for responses 1352b15cb3dSCy Schubert no wait Wait for pending replies (if not setting the time) 1364e1ef62aSXin LI - disabled as '--no-wait' 1372b15cb3dSCy Schubert - enabled by default 1384e1ef62aSXin LI opt version output version information and exit 1394e1ef62aSXin LI -? no help display extended usage information and exit 1404e1ef62aSXin LI -! no more-help extended usage information passed thru pager 1414e1ef62aSXin LI -> opt save-opts save the option state to a config file 1424e1ef62aSXin LI -< Str load-opts load options from a config file 1434e1ef62aSXin LI - disabled as '--no-load-opts' 1442b15cb3dSCy Schubert - may appear multiple times 1452b15cb3dSCy Schubert 1462b15cb3dSCy SchubertOptions are specified by doubled hyphens and their name or by a single 1472b15cb3dSCy Schuberthyphen and the flag character. 1482b15cb3dSCy Schubert 1492b15cb3dSCy Schubert 1502b15cb3dSCy SchubertThe following option preset mechanisms are supported: 1512b15cb3dSCy Schubert - reading file $HOME/.ntprc 1522b15cb3dSCy Schubert - reading file ./.ntprc 1532b15cb3dSCy Schubert - examining environment variables named SNTP_* 1542b15cb3dSCy Schubert 155a466cc55SCy SchubertPlease send bug reports to: <https://bugs.ntp.org, bugs@@ntp.org> 1562b15cb3dSCy Schubert@end example 1572b15cb3dSCy Schubert@exampleindent 4 1582b15cb3dSCy Schubert 1592b15cb3dSCy Schubert@node sntp ipv4 1602b15cb3dSCy Schubert@subsection ipv4 option (-4) 1612b15cb3dSCy Schubert@cindex sntp-ipv4 1622b15cb3dSCy Schubert 1632b15cb3dSCy SchubertThis is the ``force ipv4 dns name resolution'' option. 1642b15cb3dSCy Schubert 1652b15cb3dSCy Schubert@noindent 1662b15cb3dSCy SchubertThis option has some usage constraints. It: 1672b15cb3dSCy Schubert@itemize @bullet 1682b15cb3dSCy Schubert@item 1692b15cb3dSCy Schubertmust not appear in combination with any of the following options: 1702b15cb3dSCy Schubertipv6. 1712b15cb3dSCy Schubert@end itemize 1722b15cb3dSCy Schubert 1732b15cb3dSCy SchubertForce DNS resolution of the following host names on the command line 1742b15cb3dSCy Schubertto the IPv4 namespace. 1752b15cb3dSCy Schubert@node sntp ipv6 1762b15cb3dSCy Schubert@subsection ipv6 option (-6) 1772b15cb3dSCy Schubert@cindex sntp-ipv6 1782b15cb3dSCy Schubert 1792b15cb3dSCy SchubertThis is the ``force ipv6 dns name resolution'' option. 1802b15cb3dSCy Schubert 1812b15cb3dSCy Schubert@noindent 1822b15cb3dSCy SchubertThis option has some usage constraints. It: 1832b15cb3dSCy Schubert@itemize @bullet 1842b15cb3dSCy Schubert@item 1852b15cb3dSCy Schubertmust not appear in combination with any of the following options: 1862b15cb3dSCy Schubertipv4. 1872b15cb3dSCy Schubert@end itemize 1882b15cb3dSCy Schubert 1892b15cb3dSCy SchubertForce DNS resolution of the following host names on the command line 1902b15cb3dSCy Schubertto the IPv6 namespace. 1912b15cb3dSCy Schubert@node sntp authentication 1922b15cb3dSCy Schubert@subsection authentication option (-a) 1932b15cb3dSCy Schubert@cindex sntp-authentication 1942b15cb3dSCy Schubert 1952b15cb3dSCy SchubertThis is the ``enable authentication with the key @var{auth-keynumber}'' option. 1962b15cb3dSCy SchubertThis option takes a number argument @file{auth-keynumber}. 1972b15cb3dSCy SchubertEnable authentication using the key specified in this option's 1982b15cb3dSCy Schubertargument. The argument of this option is the @option{keyid}, a 1992b15cb3dSCy Schubertnumber specified in the @option{keyfile} as this key's identifier. 2002b15cb3dSCy SchubertSee the @option{keyfile} option (@option{-k}) for more details. 2012b15cb3dSCy Schubert@node sntp broadcast 2022b15cb3dSCy Schubert@subsection broadcast option (-b) 2032b15cb3dSCy Schubert@cindex sntp-broadcast 2042b15cb3dSCy Schubert 2052b15cb3dSCy SchubertThis is the ``listen to the address specified for broadcast time sync'' option. 2062b15cb3dSCy SchubertThis option takes a string argument @file{broadcast-address}. 2072b15cb3dSCy Schubert 2082b15cb3dSCy Schubert@noindent 2092b15cb3dSCy SchubertThis option has some usage constraints. It: 2102b15cb3dSCy Schubert@itemize @bullet 2112b15cb3dSCy Schubert@item 2122b15cb3dSCy Schubertmay appear an unlimited number of times. 2132b15cb3dSCy Schubert@end itemize 2142b15cb3dSCy Schubert 2152b15cb3dSCy SchubertIf specified @code{sntp} will listen to the specified address 2162b15cb3dSCy Schubertfor NTP broadcasts. The default maximum wait time 2172b15cb3dSCy Schubertcan (and probably should) be modified with @option{-t}. 2182b15cb3dSCy Schubert@node sntp concurrent 2192b15cb3dSCy Schubert@subsection concurrent option (-c) 2202b15cb3dSCy Schubert@cindex sntp-concurrent 2212b15cb3dSCy Schubert 2222b15cb3dSCy SchubertThis is the ``concurrently query all ips returned for host-name'' option. 2232b15cb3dSCy SchubertThis option takes a string argument @file{host-name}. 2242b15cb3dSCy Schubert 2252b15cb3dSCy Schubert@noindent 2262b15cb3dSCy SchubertThis option has some usage constraints. It: 2272b15cb3dSCy Schubert@itemize @bullet 2282b15cb3dSCy Schubert@item 2292b15cb3dSCy Schubertmay appear an unlimited number of times. 2302b15cb3dSCy Schubert@end itemize 2312b15cb3dSCy Schubert 2322b15cb3dSCy SchubertRequests from an NTP "client" to a "server" should never be sent 2332b15cb3dSCy Schubertmore rapidly than one every 2 seconds. By default, any IPs returned 2342b15cb3dSCy Schubertas part of a DNS lookup are assumed to be for a single instance of 2352b15cb3dSCy Schubert@code{ntpd}, and therefore @code{sntp} will send queries to these IPs 2362b15cb3dSCy Schubertone after another, with a 2-second gap in between each query. 2372b15cb3dSCy Schubert 2382b15cb3dSCy SchubertThe @option{-c} or @option{--concurrent} flag says that any IPs 2392b15cb3dSCy Schubertreturned for the DNS lookup of the supplied host-name are on 2402b15cb3dSCy Schubertdifferent machines, so we can send concurrent queries. 2412b15cb3dSCy Schubert@node sntp gap 2422b15cb3dSCy Schubert@subsection gap option (-g) 2432b15cb3dSCy Schubert@cindex sntp-gap 2442b15cb3dSCy Schubert 2452b15cb3dSCy SchubertThis is the ``the gap (in milliseconds) between time requests'' option. 2462b15cb3dSCy SchubertThis option takes a number argument @file{milliseconds}. 2472b15cb3dSCy SchubertSince we're only going to use the first valid response we get and 2482b15cb3dSCy Schubertthere is benefit to specifying a good number of servers to query, 2492b15cb3dSCy Schubertseparate the queries we send out by the specified number of 2502b15cb3dSCy Schubertmilliseconds. 2512b15cb3dSCy Schubert@node sntp kod 2522b15cb3dSCy Schubert@subsection kod option (-K) 2532b15cb3dSCy Schubert@cindex sntp-kod 2542b15cb3dSCy Schubert 2552b15cb3dSCy SchubertThis is the ``kod history filename'' option. 2562b15cb3dSCy SchubertThis option takes a file argument @file{file-name}. 2572b15cb3dSCy SchubertSpecifies the filename to be used for the persistent history of KoD 2582b15cb3dSCy Schubertresponses received from servers. If the file does not exist, a 2592b15cb3dSCy Schubertwarning message will be displayed. The file will not be created. 2602b15cb3dSCy Schubert@node sntp keyfile 2612b15cb3dSCy Schubert@subsection keyfile option (-k) 2622b15cb3dSCy Schubert@cindex sntp-keyfile 2632b15cb3dSCy Schubert 2642b15cb3dSCy SchubertThis is the ``look in this file for the key specified with @option{-a}'' option. 2652b15cb3dSCy SchubertThis option takes a file argument @file{file-name}. 2662b15cb3dSCy SchubertThis option specifies the keyfile. 2672b15cb3dSCy Schubert@code{sntp} will search for the key specified with @option{-a} 2682b15cb3dSCy Schubert@file{keyno} in this file. See @command{ntp.keys(5)} for more 2692b15cb3dSCy Schubertinformation. 2702b15cb3dSCy Schubert@node sntp logfile 2712b15cb3dSCy Schubert@subsection logfile option (-l) 2722b15cb3dSCy Schubert@cindex sntp-logfile 2732b15cb3dSCy Schubert 2742b15cb3dSCy SchubertThis is the ``log to specified logfile'' option. 2752b15cb3dSCy SchubertThis option takes a file argument @file{file-name}. 2762b15cb3dSCy SchubertThis option causes the client to write log messages to the specified 2772b15cb3dSCy Schubert@file{logfile}. 2782b15cb3dSCy Schubert@node sntp steplimit 2792b15cb3dSCy Schubert@subsection steplimit option (-M) 2802b15cb3dSCy Schubert@cindex sntp-steplimit 2812b15cb3dSCy Schubert 2822b15cb3dSCy SchubertThis is the ``adjustments less than @var{steplimit} msec will be slewed'' option. 2832b15cb3dSCy SchubertThis option takes a number argument. 2842b15cb3dSCy SchubertIf the time adjustment is less than @file{steplimit} milliseconds, 2852b15cb3dSCy Schubertslew the amount using @command{adjtime(2)}. Otherwise, step the 2862b15cb3dSCy Schubertcorrection using @command{settimeofday(2)}. The default value is 0, 2872b15cb3dSCy Schubertwhich means all adjustments will be stepped. This is a feature, as 2882b15cb3dSCy Schubertdifferent situations demand different values. 2892b15cb3dSCy Schubert@node sntp ntpversion 2902b15cb3dSCy Schubert@subsection ntpversion option (-o) 2912b15cb3dSCy Schubert@cindex sntp-ntpversion 2922b15cb3dSCy Schubert 2932b15cb3dSCy SchubertThis is the ``send @var{int} as our ntp protocol version'' option. 2942b15cb3dSCy SchubertThis option takes a number argument. 2952b15cb3dSCy SchubertWhen sending requests to a remote server, tell them we are running 2962b15cb3dSCy SchubertNTP protocol version @file{ntpversion} . 2972b15cb3dSCy Schubert@node sntp usereservedport 2982b15cb3dSCy Schubert@subsection usereservedport option (-r) 2992b15cb3dSCy Schubert@cindex sntp-usereservedport 3002b15cb3dSCy Schubert 3012b15cb3dSCy SchubertThis is the ``use the ntp reserved port (port 123)'' option. 3022b15cb3dSCy SchubertUse port 123, which is reserved for NTP, for our network 3032b15cb3dSCy Schubertcommunications. 3042b15cb3dSCy Schubert@node sntp timeout 3052b15cb3dSCy Schubert@subsection timeout option (-t) 3062b15cb3dSCy Schubert@cindex sntp-timeout 3072b15cb3dSCy Schubert 3082b15cb3dSCy SchubertThis is the ``the number of seconds to wait for responses'' option. 3092b15cb3dSCy SchubertThis option takes a number argument @file{seconds}. 3102b15cb3dSCy SchubertWhen waiting for a reply, @code{sntp} will wait the number 3112b15cb3dSCy Schubertof seconds specified before giving up. The default should be 3122b15cb3dSCy Schubertmore than enough for a unicast response. If @code{sntp} is 3132b15cb3dSCy Schubertonly waiting for a broadcast response a longer timeout is 3142b15cb3dSCy Schubertlikely needed. 3152b15cb3dSCy Schubert@node sntp wait 3162b15cb3dSCy Schubert@subsection wait option 3172b15cb3dSCy Schubert@cindex sntp-wait 3182b15cb3dSCy Schubert 3192b15cb3dSCy SchubertThis is the ``wait for pending replies (if not setting the time)'' option. 3202b15cb3dSCy Schubert 3212b15cb3dSCy Schubert@noindent 3222b15cb3dSCy SchubertThis option has some usage constraints. It: 3232b15cb3dSCy Schubert@itemize @bullet 3242b15cb3dSCy Schubert@item 3252b15cb3dSCy Schubertcan be disabled with --no-wait. 3262b15cb3dSCy Schubert@item 3272b15cb3dSCy SchubertIt is enabled by default. 3282b15cb3dSCy Schubert@end itemize 3292b15cb3dSCy Schubert 3302b15cb3dSCy SchubertIf we are not setting the time, wait for all pending responses. 3312b15cb3dSCy Schubert 3322b15cb3dSCy Schubert 3332b15cb3dSCy Schubert@node sntp config 3342b15cb3dSCy Schubert@subsection presetting/configuring sntp 3352b15cb3dSCy Schubert 3362b15cb3dSCy SchubertAny option that is not marked as @i{not presettable} may be preset by 3372b15cb3dSCy Schubertloading values from configuration ("rc" or "ini") files, and values from environment variables named @code{SNTP} and @code{SNTP_<OPTION_NAME>}. @code{<OPTION_NAME>} must be one of 3382b15cb3dSCy Schubertthe options listed above in upper case and segmented with underscores. 3392b15cb3dSCy SchubertThe @code{SNTP} variable will be tokenized and parsed like 3402b15cb3dSCy Schubertthe command line. The remaining variables are tested for existence and their 3412b15cb3dSCy Schubertvalues are treated like option arguments. 3422b15cb3dSCy Schubert 3432b15cb3dSCy Schubert 3442b15cb3dSCy Schubert@noindent 3452b15cb3dSCy Schubert@code{libopts} will search in 2 places for configuration files: 3462b15cb3dSCy Schubert@itemize @bullet 3472b15cb3dSCy Schubert@item 3482b15cb3dSCy Schubert$HOME 3492b15cb3dSCy Schubert@item 3502b15cb3dSCy Schubert$PWD 3512b15cb3dSCy Schubert@end itemize 3522b15cb3dSCy SchubertThe environment variables @code{HOME}, and @code{PWD} 3532b15cb3dSCy Schubertare expanded and replaced when @file{sntp} runs. 3542b15cb3dSCy SchubertFor any of these that are plain files, they are simply processed. 3552b15cb3dSCy SchubertFor any that are directories, then a file named @file{.ntprc} is searched for 3562b15cb3dSCy Schubertwithin that directory and processed. 3572b15cb3dSCy Schubert 3582b15cb3dSCy SchubertConfiguration files may be in a wide variety of formats. 3592b15cb3dSCy SchubertThe basic format is an option name followed by a value (argument) on the 3602b15cb3dSCy Schubertsame line. Values may be separated from the option name with a colon, 3612b15cb3dSCy Schubertequal sign or simply white space. Values may be continued across multiple 3622b15cb3dSCy Schubertlines by escaping the newline with a backslash. 3632b15cb3dSCy Schubert 3642b15cb3dSCy SchubertMultiple programs may also share the same initialization file. 3652b15cb3dSCy SchubertCommon options are collected at the top, followed by program specific 3662b15cb3dSCy Schubertsegments. The segments are separated by lines like: 3672b15cb3dSCy Schubert@example 3682b15cb3dSCy Schubert[SNTP] 3692b15cb3dSCy Schubert@end example 3702b15cb3dSCy Schubert@noindent 3712b15cb3dSCy Schubertor by 3722b15cb3dSCy Schubert@example 3732b15cb3dSCy Schubert<?program sntp> 3742b15cb3dSCy Schubert@end example 3752b15cb3dSCy Schubert@noindent 3762b15cb3dSCy SchubertDo not mix these styles within one configuration file. 3772b15cb3dSCy Schubert 3782b15cb3dSCy SchubertCompound values and carefully constructed string values may also be 3792b15cb3dSCy Schubertspecified using XML syntax: 3802b15cb3dSCy Schubert@example 3812b15cb3dSCy Schubert<option-name> 3822b15cb3dSCy Schubert <sub-opt>...<...>...</sub-opt> 3832b15cb3dSCy Schubert</option-name> 3842b15cb3dSCy Schubert@end example 3852b15cb3dSCy Schubert@noindent 3862b15cb3dSCy Schubertyielding an @code{option-name.sub-opt} string value of 3872b15cb3dSCy Schubert@example 3882b15cb3dSCy Schubert"...<...>..." 3892b15cb3dSCy Schubert@end example 3902b15cb3dSCy Schubert@code{AutoOpts} does not track suboptions. You simply note that it is a 3912b15cb3dSCy Schuberthierarchicly valued option. @code{AutoOpts} does provide a means for searching 3922b15cb3dSCy Schubertthe associated name/value pair list (see: optionFindValue). 3932b15cb3dSCy Schubert 3942b15cb3dSCy SchubertThe command line options relating to configuration and/or usage help are: 3952b15cb3dSCy Schubert 3962b15cb3dSCy Schubert@subsubheading version (-) 3972b15cb3dSCy Schubert 3982b15cb3dSCy SchubertPrint the program version to standard out, optionally with licensing 3992b15cb3dSCy Schubertinformation, then exit 0. The optional argument specifies how much licensing 400a466cc55SCy Schubertdetail to provide. The default is to print just the version. The licensing information may be selected with an option argument. 4012b15cb3dSCy SchubertOnly the first letter of the argument is examined: 4022b15cb3dSCy Schubert 4032b15cb3dSCy Schubert@table @samp 4042b15cb3dSCy Schubert@item version 4052b15cb3dSCy SchubertOnly print the version. This is the default. 4062b15cb3dSCy Schubert@item copyright 4072b15cb3dSCy SchubertName the copyright usage licensing terms. 4082b15cb3dSCy Schubert@item verbose 4092b15cb3dSCy SchubertPrint the full copyright usage licensing terms. 4102b15cb3dSCy Schubert@end table 4112b15cb3dSCy Schubert 4122b15cb3dSCy Schubert@node sntp exit status 4132b15cb3dSCy Schubert@subsection sntp exit status 4142b15cb3dSCy Schubert 4152b15cb3dSCy SchubertOne of the following exit values will be returned: 4162b15cb3dSCy Schubert@table @samp 4172b15cb3dSCy Schubert@item 0 (EXIT_SUCCESS) 4182b15cb3dSCy SchubertSuccessful program execution. 4192b15cb3dSCy Schubert@item 1 (EXIT_FAILURE) 4202b15cb3dSCy SchubertThe operation failed or the command syntax was not valid. 4212b15cb3dSCy Schubert@item 66 (EX_NOINPUT) 4222b15cb3dSCy SchubertA specified configuration file could not be loaded. 4232b15cb3dSCy Schubert@item 70 (EX_SOFTWARE) 4242b15cb3dSCy Schubertlibopts had an internal operational error. Please report 4252b15cb3dSCy Schubertit to autogen-users@@lists.sourceforge.net. Thank you. 4262b15cb3dSCy Schubert@end table 4272b15cb3dSCy Schubert@node sntp Usage 4282b15cb3dSCy Schubert@subsection sntp Usage 4292b15cb3dSCy Schubert@node sntp Authors 4302b15cb3dSCy Schubert@subsection sntp Authors 431