diff options
author | Radek Vykydal <rvykydal@redhat.com> | 2010-09-14 13:04:29 +0200 |
---|---|---|
committer | Radek Vykydal <rvykydal@redhat.com> | 2010-09-23 16:47:27 +0200 |
commit | c78ead1bf6247c07f367c5586299ca54c1232f41 (patch) | |
tree | 95b56ded758f6c7dbc3bc342080bad5f0880abba /pyanaconda/network.py | |
parent | ea0984f4b6f4d72759d3721d94aba8dea6a542a2 (diff) | |
download | anaconda-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.py | 12 |
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 |