diff -Nur -x '*.orig' -x '*.rej' e-smith-dnscache-1.0.0/root/var/service/dnscache/run mezzanine_patched_e-smith-dnscache-1.0.0/root/var/service/dnscache/run --- e-smith-dnscache-1.0.0/root/var/service/dnscache/run 2008-06-18 14:53:01.000000000 -0400 +++ mezzanine_patched_e-smith-dnscache-1.0.0/root/var/service/dnscache/run 2008-06-18 14:48:50.000000000 -0400 @@ -92,13 +92,18 @@ $nameserver = undef; } $nameserver ||= ($systemlocalnetwork eq 'yes') ? $tinydns_ip : 'none'; - push @localnetworks, - esmith::util::computeAllLocalNetworkPrefixes ($key, $mask); + my @all_network_prefixes = esmith::util::computeAllLocalNetworkPrefixes ($key, $mask); + push @localnetworks, @all_network_prefixes; - my $reverse = esmith::util::computeLocalNetworkReversed ($key, $mask); - # Remove the trailing period provided by computeLocalNetworkReversed - $reverse =~ s/\.$//; - $reversenets{$reverse} = $nameserver unless ($nameserver eq 'none'); + unless ($nameserver eq 'none') + { + foreach (@all_network_prefixes) + { + my @quads = split(/\./, $_); + my $reverse_zone = join('.', reverse @quads) . ".in-addr.arpa"; + $reversenets{$reverse_zone} = $nameserver; + } + } } allow_networks_2access_cache(@localnetworks);