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

📄 delete_zone.cgi

📁 Unix下基于Web的管理工具
💻 CGI
字号:
#!/usr/local/bin/perl# delete_zone.cgi# Delete a master or slave zonerequire './dns-lib.pl';&ReadParse();$conf = &get_config();$zconf = $conf->[$in{'index'}];%access = &get_module_acl();&can_edit_zone(\%access, $zconf->{'values'}->[0]) ||        &error("You are not allowed to delete this zone");if ($zconf->{'values'}->[0] !~ /in-addr.arpa/i) {	# find and delete reverse records	@recs = &foreign_call("bind8", "read_zone_file",			      $zconf->{'values'}->[1], $zconf->{'values'}->[0]);	foreach $r (@recs) {		next if ($r->{'type'} ne "A");		($orevconf, $orevfile, $orevrec) =			&find_reverse($r->{'values'}->[0]);		if ($orevrec && &can_edit_reverse($orevconf) &&		    $r->{'name'} eq $orevrec->{'values'}->[0] &&		    $r->{'values'}->[0] eq &arpa_to_ip($orevrec->{'name'})) {			&foreign_call("bind8", "delete_record",				      $orevrec->{'file'} , $orevrec);			@orrecs = &foreign_call("bind8", "read_zone_file",						$orevfile,						$orevconf->{'values'}->[0]);			&foreign_call("bind8", "bump_soa_record",				      $orevfile, \@orrecs);			}		}	}&delete_zone($zconf);if ($zconf->{'name'} eq "primary") {	unlink(&absolute_path($zconf->{'values'}->[1]));	}# remove from acl files&read_acl(undef, \%wusers);foreach $u (keys %wusers) {        %uaccess = &get_module_acl($u);        if ($uaccess{'zones'} ne '*') {                $uaccess{'zones'} =			join(' ', grep { $_ ne $zconf->{'values'}->[0] }                                  split(/\s+/, $uaccess{'zones'}));                &save_module_acl(\%uaccess, $u);                }        }&redirect("");# can_edit_reverse(&zone)sub can_edit_reverse{return $access{'reverse'} || &can_edit_zone(\%access, $_[0]->{'values'}->[0]);}

⌨️ 快捷键说明

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