⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 save_logging.cgi

📁 Unix下基于Web的管理工具
💻 CGI
字号:
#!/usr/local/bin/perl# save_logging.cgi# Save global logging optionsrequire './bind8-lib.pl';%access = &get_module_acl();$access{'defaults'} || &error($text{'logging_ecannot'});&error_setup($text{'files_err'});&ReadParse();$conf = &get_config();$logging = &find("logging", $conf);# save categoriesfor($i=0; defined($cat = $in{"cat_$i"}); $i++) {	next if (!$cat);	@cchan = split(/\0/, $in{"cchan_$i"});	push(@category, { 'name' => 'category',			  'values' => [ $cat ],			  'type' => 1,			  'members' =>				[ map { { 'name' => $_ } } @cchan ] });	}# save channelsfor($i=0; defined($cname = $in{"cname_$i"}); $i++) {	next if (!$cname);	$cname =~ /^\S+$/ || &error(&text('logging_ename', $cname));	local @mems;	if ($in{"to_$i"} == 0) {		$in{"file_$i"} || &error($text{'logging_efile'});		local @fvals = ( $in{"file_$i"} );		if ($in{"vmode_$i"} == 1) {			push(@fvals, 'versions', 'unlimited');			}		elsif ($in{"vmode_$i"} == 2) {			$in{"ver_$i"} =~ /^\d+$/ ||				&error(&text('logging_ever', $in{"ver_$i"}));			push(@fvals, 'versions', $in{"ver_$i"});			}		if ($in{"smode_$i"}) {			$in{"size_$i"} =~ /^\d+[kmg]*$/i ||				&error(&text('logging_esize', $in{"size_$i"}));			push(@fvals, 'size', $in{"size_$i"});			}		push(@mems, { 'name' => 'file',			      'values' => \@fvals });		}	elsif ($in{"to_$i"} == 1) {		push(@mems, { 'name' => 'syslog',			      'values' => [ $in{"syslog_$i"} ] });		}	else {		push(@mems, { 'name' => 'null' });		}	if ($in{"sev_$i"} eq 'debug') {		push(@mems, { 'name' => 'severity',			      'values' => [ 'debug', $in{"debug_$i"} ] });		}	elsif ($in{"sev_$i"}) {		push(@mems, { 'name' => 'severity',			      'values' => [ $in{"sev_$i"} ] });		}	foreach $p ('print-category', 'print-severity', 'print-time') {		push(@mems, { 'name' => $p,			      'values' => [ $in{"$p-$i"} ] }) if ($in{"$p-$i"});		}	push(@channel, { 'name' => 'channel',			 'values' => [ $cname ],			 'type' => 1,			 'members' => \@mems } );	}if ($logging) {	&save_directive($logging, 'category', \@category, 1);	&save_directive($logging, 'channel', \@channel, 1);	}else {	$logging = { 'name' => 'logging',		     'type' => 1,		     'members' => [ @channel, @category ] };	&save_directive(&get_config_parent(), 'logging', [ $logging ], 0);	}&flush_file_lines();&redirect("");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -