1
0
mirror of https://github.com/gryf/wicd.git synced 2026-01-08 06:44:20 +01:00

Fix how we set nameserver entries after code review.

This commit is contained in:
Dan O'Reilly
2009-03-14 17:41:51 -04:00
parent e70ad1e9c0
commit 4d33a308bc

View File

@@ -511,29 +511,30 @@ class BaseInterface(object):
search_dom -- DNS search domain search_dom -- DNS search domain
""" """
if not self.iface: return False
resolv_params = "" resolv_params = ""
if dns_dom: if dns_dom:
resolv_params = ''.join([resolv_params, 'domain ', dns_dom, '\n']) resolv_params += 'domain %s\n' % dns_dom
if search_dom: if search_dom:
resolv_params = ''.join([resolv_params, 'search ', search_dom, resolv_params += 'search %s\n' % search_dom
'\n'])
valid_dns_list = ['nameserver'] valid_dns_list = []
for dns in [dns1, dns2, dns3]: for dns in (dns1, dns2, dns3):
if dns: if dns:
if misc.IsValidIP(dns): if misc.IsValidIP(dns):
print 'Setting DNS : ' + dns print 'Setting DNS : ' + dns
valid_dns_list.append(dns) valid_dns_list.append("nameserver %s\n" % dns)
else: else:
print 'DNS IP is not a valid IP address, skipping' print 'DNS IP %s is not a valid IP address, skipping' % dns
# Make sure we have more than just 'nameserver' in the list.
if len(valid_dns_list) > 1: if valid_dns_list:
resolv_params += ' '.join(valid_dns_list) + '\n' resolv_params += ''.join(valid_dns_list)
if self.resolvconf_cmd: if self.resolvconf_cmd:
print "running resolvconf" cmd = [self.resolvconf_cmd, '-a', self.iface]
p = misc.Run(' '.join([self.resolvconf_cmd, '-a', self.iface]), if self.verbose: print cmd
include_stderr=True, return_obj=True) p = misc.Run(cmd, include_stderr=True, return_obj=True)
p.communicate(input=resolv_params)[0] p.communicate(input=resolv_params)
else: else:
resolv = open("/etc/resolv.conf", "w") resolv = open("/etc/resolv.conf", "w")
resolv.write(resolv_params + "\n") resolv.write(resolv_params + "\n")