diff --git a/bind8/bind8-lib.pl b/bind8/bind8-lib.pl index 44f2d1bd7..babce1141 100644 --- a/bind8/bind8-lib.pl +++ b/bind8/bind8-lib.pl @@ -1312,7 +1312,8 @@ return 1; # Returns the --help output if non BIND 8/9, or undef if is sub check_bind_8 { -local $out = `$config{'named_path'} -help 2>&1`; +local $fflag = $gconfig{'os_type'} eq 'windows' ? '-f' : ''; +local $out = `$config{'named_path'} -help $fflag 2>&1`; return $out !~ /\[-f\]/ && $out !~ /\[-f\|/ ? $out : undef; } @@ -1709,7 +1710,12 @@ return undef; sub is_bind_running { local $pidfile = &get_pid_file(); -return &check_pid_file(&make_chroot($pidfile, 1)); +local $rv = &check_pid_file(&make_chroot($pidfile, 1)); +if (!$rv && $gconfig{'os_type'} eq 'windows') { + # Fall back to checking for process + $rv = &find_byname("named"); + } +return $rv; } # version_atleast(v1, v2, v3) diff --git a/bind8/config-windows b/bind8/config-windows new file mode 100755 index 000000000..cfc31114c --- /dev/null +++ b/bind8/config-windows @@ -0,0 +1,53 @@ +soa_style=0 +named_path=c:/windows/system32/dns/bin/named.exe +named_conf=c:/windows/system32/dns/etc/named.conf +show_list=0 +records_order=0 +max_zones=50 +rev_def=0 +support_aaaa=0 +allow_comments=0 +allow_wild=0 +allow_long=0 +master_ttl=1 +whois_cmd=whois +short_names=0 +updserial_def=0 +updserial_on=1 +updserial_man=1 +ndc_cmd=ndc +forwardzonefilename_format=ZONE.hosts +reversezonefilename_format=ZONE.rev +rev_must=0 +ipv6_mode=1 +allow_underscore=1 +by_view=0 +confirm_zone=1 +confirm_rec=0 +no_chroot=0 +relative_paths=0 +rndc_cmd=rndc +no_pid_chroot=0 +soa_start=0 +rndc_conf=/etc/rndc.conf +rndcconf_cmd=rndc-confgen +largezones=0 +auto_chroot= +pid_file=c:/windows/system32/dns/etc/named.pid +default_prins= +restart_cmd=sc stop named +file_perms= +extra_reverse= +default_master= +master_dir= +chroot= +file_owner= +named_group= +this_ip= +stop_cmd=sc start named +named_user= +free_nets= +start_cmd= +zones_file= +extra_forward= +slave_dir= diff --git a/bind8/dns_boot.cgi b/bind8/dns_boot.cgi index 1c37bc2c8..cb6be31e9 100755 --- a/bind8/dns_boot.cgi +++ b/bind8/dns_boot.cgi @@ -66,7 +66,7 @@ elsif ($in{real} == 2) { print BOOT "\n"; } close(BOOT); -&execute_command("cp $conf_temp ".&make_chroot($config{'named_conf'})); +©_source_dest($conf_temp, &make_chroot($config{'named_conf'})); unlink($conf_temp); &unlock_file(&make_chroot("$conf_directory/db.cache")); &unlock_file(&make_chroot($config{'named_conf'})); diff --git a/bind8/module.info b/bind8/module.info index ab32e74b3..4c7af84a3 100644 --- a/bind8/module.info +++ b/bind8/module.info @@ -10,7 +10,7 @@ desc_pt=Servidor de DNS BIND desc_pt_BR=Servidor de DNS BIND category=servers desc_tr=BIND DNS Sunucusu -os_support=slackware-linux redhat-linux mandrake-linux solaris debian-linux suse-linux united-linux hpux freebsd osf1 irix unixware openserver macos open-linux turbo-linux openbsd corel-linux cobalt-linux/5.0-* aix netbsd msc-linux generic-linux gentoo-linux trustix-linux sol-linux coherent-linux openmamba-linux +os_support=slackware-linux redhat-linux mandrake-linux solaris debian-linux suse-linux united-linux hpux freebsd osf1 irix unixware openserver macos open-linux turbo-linux openbsd corel-linux cobalt-linux/5.0-* aix netbsd msc-linux generic-linux gentoo-linux trustix-linux sol-linux coherent-linux openmamba-linux windows desc=BIND DNS Server desc_es=Servidor de DNS BIND desc_sv=BIND DNS-server