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 2006-03-14 15:59:06.000000000 -0500 +++ mezzanine_patched_e-smith-dnscache-1.0.0/root/var/service/dnscache/run 2006-04-30 20:24:13.000000000 -0400 @@ -85,8 +85,13 @@ my $mask = $net->prop('Mask'); my $key = $net->key; my $systemlocalnetwork = $net->prop('SystemLocalNetwork') || 'no'; - my $nameserver = $net->prop('NameServer') || - (($systemlocalnetwork eq 'yes') ? $tinydns_ip : 'none'); + my $nameserver = $net->prop('NameServer'); + if (defined $nameserver and $nameserver eq $ENV{IP}) + { + warn("NameServer property for net $key ($nameserver) would create loop - ignoring\n"); + $nameserver = undef; + } + $nameserver ||= ($systemlocalnetwork eq 'yes') ? $tinydns_ip : 'none'; push @localnetworks, esmith::util::computeAllLocalNetworkPrefixes ($key, $mask);