xref: /freebsd/contrib/ntp/scripts/ntp-wait/ntp-wait-opts (revision c1839039b193b48c8eb7520c75487f0bd4340c3b)
1# EDIT THIS FILE WITH CAUTION  (ntp-wait-opts)
2#
3# It has been AutoGen-ed  May 31, 2023 at 07:14:58 PM by AutoGen 5.18.16
4# From the definitions    ntp-wait-opts.def
5# and the template file   perlopt
6
7use Getopt::Long qw(GetOptionsFromArray);
8Getopt::Long::Configure(qw(no_auto_abbrev no_ignore_case_always));
9
10my $usage;
11
12sub usage {
13    my ($ret) = @_;
14    print STDERR $usage;
15    exit $ret;
16}
17
18sub paged_usage {
19    my ($ret) = @_;
20    my $pager = $ENV{PAGER} || '(less || more)';
21
22    open STDOUT, "| $pager" or die "Can't fork a pager: $!";
23    print $usage;
24
25    exit $ret;
26}
27
28sub processOptions {
29    my $args = shift;
30
31    my $opts = {
32        'tries' => '100',
33        'sleep' => '6',
34        'verbose' => '',
35        'help' => '', 'more-help' => ''
36    };
37    my $argument = '';
38    my $ret = GetOptionsFromArray($args, $opts, (
39        'tries|n=i', 'sleep|s=i', 'verbose|v',
40        'help|?', 'more-help'));
41
42    $usage = <<'USAGE';
43ntp-wait - Wait for ntpd to stabilize the system clock - Ver. 4.2.8p16
44USAGE: ntp-wait [ -<flag> [<val>] | --<name>[{=| }<val>] ]...
45
46    -n, --tries=num              Number of times to check ntpd
47    -s, --sleep=num              How long to sleep between tries
48    -v, --verbose                Be verbose
49    -?, --help                   Display usage information and exit
50        --more-help              Pass the extended usage text through a pager
51
52Options are specified by doubled hyphens and their name or by a single
53hyphen and the flag character.
54USAGE
55
56    usage(0)       if $opts->{'help'};
57    paged_usage(0) if $opts->{'more-help'};
58    $_[0] = $opts;
59    return $ret;
60}
61
62END { close STDOUT };
63