summaryrefslogtreecommitdiffstats
path: root/pyanaconda/network.py
diff options
context:
space:
mode:
authorRadek Vykydal <rvykydal@redhat.com>2010-09-14 13:04:29 +0200
committerRadek Vykydal <rvykydal@redhat.com>2010-09-23 16:47:27 +0200
commitc78ead1bf6247c07f367c5586299ca54c1232f41 (patch)
tree95b56ded758f6c7dbc3bc342080bad5f0880abba /pyanaconda/network.py
parentea0984f4b6f4d72759d3721d94aba8dea6a542a2 (diff)
downloadanaconda-c78ead1bf6247c07f367c5586299ca54c1232f41.tar.gz
anaconda-c78ead1bf6247c07f367c5586299ca54c1232f41.tar.xz
anaconda-c78ead1bf6247c07f367c5586299ca54c1232f41.zip
Reset resolver after network device activation (#632489)
We need to reset resolver using our isys.resetResolver. Resetting with urlgrabber.reset_curl_obj() only doesn't work. Corresponding rhel6 BZ: #614001
Diffstat (limited to 'pyanaconda/network.py')
-rw-r--r--pyanaconda/network.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/pyanaconda/network.py b/pyanaconda/network.py
index 9e2d82833..ae06f1e65 100644
--- a/pyanaconda/network.py
+++ b/pyanaconda/network.py
@@ -766,18 +766,22 @@ class Network:
waited_devs_props[iface] = device_props_iface
i = 0
+ reset_resolver = False
while True:
for dev, device_props_iface in waited_devs_props.items():
state = device_props_iface.Get(isys.NM_DEVICE_IFACE, "State")
if state == isys.NM_DEVICE_STATE_ACTIVATED:
waited_devs_props.pop(dev)
- if len(waited_devs_props) == 0:
- return []
- if i >= CONNECTION_TIMEOUT:
- return waited_devs_props.keys()
+ reset_resolver = True
+ if len(waited_devs_props) == 0 or i >= CONNECTION_TIMEOUT:
+ break
i += 1
time.sleep(1)
+ if reset_resolver:
+ isys.resetResolv()
+ return waited_devs_props.keys()
+
# write out current configuration state and wait for NetworkManager
# to bring the device up, watch NM state and return to the caller
# once we have a state