📄 create_slave.cgi
字号:
#!/usr/local/bin/perl# create_slave.cgi# Create a new slave zonerequire './dns-lib.pl';&ReadParse();$whatfailed = "Failed to create slave zone";%access = &get_module_acl();$access{'slave'} || &error("You are not allowed to create slave zones");# validate inputsif ($in{'rev'}) { $in{'zone'} =~ /^[\d\.]+$/ || &error("'$in{'zone'}' is not a valid network"); $in{'zone'} = &ip_to_arpa($in{'zone'}); }else { $in{'zone'} =~ /^[A-z][A-z0-9\-\.]+$/ || &error("'$in{'zone'}' is not a valid domain name"); }$in{'zone'} =~ s/\.$//g;@masters = split(/\s+/, $in{'masters'});foreach $m (@masters) { &check_ipaddress($m) || &error("'$m' is not a valid master server address"); }if (!@masters) { &error("You must enter at least one master server"); }if (!$in{'file_def'}) { $in{'file'} =~ /^\S+$/ || &error("'$in{'file'}' is not a valid filename"); $base = $access{'dir'} eq '/' ? &base_directory($conf) : $access{'dir'}; if ($in{'file'} !~ /^\//) { $file = $base."/".$in{'file'}; } else { $file = $in{'file'}; } &allowed_zone_file(\%access, $file) || &error("'$file' is not an allowable zone file"); if (!-r $file) { open(ZONE, "> $file") || &error("Failed to create '$file' : $?"); close(ZONE); } }@vals = ($in{'zone'}, @masters);if ($file) { push(@vals, $file); }&create_zone({ 'name' => 'secondary', 'values' => \@vals });# Add the new zone to the access listif ($access{'zones'} ne '*') { $access{'zones'} .= " ".$in{'zone'}; &save_module_acl(\%access); }&redirect("");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -