Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Schampijer <simon@schampijer.de>2010-09-22 10:06:50 (GMT)
committer Simon Schampijer <simon@schampijer.de>2010-09-22 10:06:50 (GMT)
commit8effea106ee59edc32f1079faf8ab8dafedeb270 (patch)
tree8fc08566824c471be3083eeccb16422e736a0ce4
parent910609ecf77fbb264d807bfe654396401da17030 (diff)
Unable to register a laptop after trying on the wrong network #6857 (Martin Langhoff)
-rw-r--r--src/jarabe/model/network.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/jarabe/model/network.py b/src/jarabe/model/network.py
index 0ff0c62..8af2591 100644
--- a/src/jarabe/model/network.py
+++ b/src/jarabe/model/network.py
@@ -26,6 +26,7 @@ import dbus.service
import gobject
import ConfigParser
import gconf
+import ctypes
from sugar import dispatch
from sugar import env
@@ -381,6 +382,16 @@ class NMSettingsConnection(dbus.service.Object):
self.Updated(self._settings.get_dict())
self.save()
+ try:
+ # try to flush resolver cache - SL#1940
+ # ctypes' syntactic sugar does not work
+ # so we must get the func ptr explicitly
+ libc = ctypes.CDLL('libc.so.6')
+ res_init = getattr(libc, '__res_init')
+ res_init(None)
+ except:
+ logging.exception('Error calling libc.__res_init')
+
def set_disconnected(self):
if self._settings.connection.autoconnect:
self._settings.connection.autoconnect = False