mirror of
https://github.com/webmin/webmin.git
synced 2025-07-23 00:30:33 +00:00
50 lines
1.3 KiB
Perl
Executable File
50 lines
1.3 KiB
Perl
Executable File
#!/usr/local/bin/perl
|
|
# save_misc.cgi
|
|
# Save global miscellaneous options
|
|
use strict;
|
|
use warnings;
|
|
no warnings 'redefine';
|
|
no warnings 'uninitialized';
|
|
our (%access, %text, %in, %config);
|
|
|
|
require './bind8-lib.pl';
|
|
$access{'defaults'} || &error($text{'misc_ecannot'});
|
|
&error_setup($text{'misc_err'});
|
|
&ReadParse();
|
|
|
|
&lock_file(&make_chroot($config{'named_conf'}));
|
|
my $conf = &get_config();
|
|
my $options = &find("options", $conf);
|
|
&save_opt("coresize", \&size_check, $options, 1);
|
|
&save_opt("datasize", \&size_check, $options, 1);
|
|
&save_opt("files", \&files_check, $options, 1);
|
|
&save_opt("stacksize", \&size_check, $options, 1);
|
|
&save_opt("cleaning-interval", \&mins_check, $options, 1);
|
|
&save_opt("interface-interval", \&mins_check, $options, 1);
|
|
&save_opt("statistics-interval", \&mins_check, $options, 1);
|
|
&save_choice("recursion", $options, 1);
|
|
&save_choice("multiple-cnames", $options, 1);
|
|
&save_choice("fetch-glue", $options, 1);
|
|
&save_choice("auth-nxdomain", $options, 1);
|
|
|
|
&flush_file_lines();
|
|
&unlock_file(&make_chroot($config{'named_conf'}));
|
|
&webmin_log("misc", undef, undef, \%in);
|
|
&redirect("");
|
|
|
|
sub size_check
|
|
{
|
|
return $_[0] =~ /^\d+[kmg]*$/i ? "" : $text{'misc_esize'};
|
|
}
|
|
|
|
sub files_check
|
|
{
|
|
return $_[0] =~ /^\d+$/i ? "" : $text{'misc_efiles'};
|
|
}
|
|
|
|
sub mins_check
|
|
{
|
|
return $_[0] =~ /^\d+$/i ? "" : $text{'misc_emins'};
|
|
}
|
|
|