freebsd-dev/contrib/ntp/scripts/summary-opts
Cy Schubert 767173cec2 MFV r362565:
Update 4.2.8p14 --> 4.2.8p15

Summary: Systems that use a CMAC algorithm in ntp.keys will not release
a bit of memory on each packet that uses a CMAC keyid, eventually causing
ntpd to run out of memory and fail. The CMAC cleanup from
https://bugs.ntp.org/3447, part of ntp-4.2.8p11, introduced a bug whereby
the CMAC data structure was no longer completely removed.

MFC after:	3 days
Security:	NTP Bug 3661
2020-06-24 01:51:05 +00:00

70 lines
2.0 KiB
Plaintext

# EDIT THIS FILE WITH CAUTION (summary-opts)
#
# It has been AutoGen-ed June 23, 2020 at 02:21:46 AM by AutoGen 5.18.5
# From the definitions summary-opts.def
# and the template file perlopt
use Getopt::Long qw(GetOptionsFromArray);
Getopt::Long::Configure(qw(no_auto_abbrev no_ignore_case_always));
my $usage;
sub usage {
my ($ret) = @_;
print STDERR $usage;
exit $ret;
}
sub paged_usage {
my ($ret) = @_;
my $pager = $ENV{PAGER} || '(less || more)';
open STDOUT, "| $pager" or die "Can't fork a pager: $!";
print $usage;
exit $ret;
}
sub processOptions {
my $args = shift;
my $opts = {
'directory' => '/var/log/ntp',
'end-date' => '',
'output-directory' => '/tmp',
'peer-dist-limit' => '400',
'skip-time-steps' => '3600',
'start-date' => '19700101',
'help' => '', 'more-help' => ''
};
my $argument = '';
my $ret = GetOptionsFromArray($args, $opts, (
'directory=s', 'end-date=i', 'output-directory=s',
'peer-dist-limit=f', 'skip-time-steps=f', 'start-date=i',
'help|?', 'more-help'));
$usage = <<'USAGE';
summary - compute various stastics from NTP stat files - Ver. 4.2.8p15
USAGE: summary [ -<flag> [<val>] | --<name>[{=| }<val>] ]...
--directory=str Directory containing stat files
--end-date=num End date
--output-directory=str Output directory
--peer-dist-limit=float Peer dist limit
--skip-time-steps=float Ignore time offsets larger that this
--start-date=num Start date
-?, --help Display usage information and exit
--more-help Pass the extended usage text through a pager
Options are specified by doubled hyphens and their name or by a single
hyphen and the flag character.
USAGE
usage(0) if $opts->{'help'};
paged_usage(0) if $opts->{'more-help'};
$_[0] = $opts;
return $ret;
}
END { close STDOUT };