xref: /freebsd/contrib/ntp/scripts/ntptrace/ntptrace-opts (revision ba3c1f5972d7b90feb6e6da47905ff2757e0fe57)
1# EDIT THIS FILE WITH CAUTION  (ntptrace-opts)
2#
3# It has been AutoGen-ed  June  6, 2023 at 04:39:25 AM by AutoGen 5.18.16
4# From the definitions    ntptrace-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        'numeric' => '',
33        'max-hosts' => '99',
34        'host' => '127.0.0.1',
35        'help' => '', 'more-help' => ''
36    };
37    my $argument = '[host]';
38    my $ret = GetOptionsFromArray($args, $opts, (
39        'numeric|n', 'max-hosts|m=i', 'host|r=s',
40        'help|?', 'more-help'));
41
42    $usage = <<'USAGE';
43ntptrace - Trace peers of an NTP server - Ver. 4.2.8p17
44USAGE: ntptrace [ -<flag> [<val>] | --<name>[{=| }<val>] ]... [host]
45
46    -n, --numeric                Print IP addresses instead of hostnames
47    -m, --max-hosts=num          Maximum number of peers to trace
48    -r, --host=str               Single remote host
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