From 84daf366a13fd6e5b45d17f7efe49773269c74e6 Mon Sep 17 00:00:00 2001 From: Simon Schampijer Date: Tue, 14 Sep 2010 15:33:53 +0000 Subject: Reset resolver cache when connection has been established #1940 --- diff --git a/src/jarabe/model/network.py b/src/jarabe/model/network.py index 66d86d8..79e4360 100644 --- a/src/jarabe/model/network.py +++ b/src/jarabe/model/network.py @@ -28,6 +28,7 @@ import dbus.service import gobject import ConfigParser import gconf +import ctypes from sugar import dispatch from sugar import env @@ -546,6 +547,16 @@ class NMSettingsConnection(dbus.service.Object): if self._settings.connection.type == NM_CONNECTION_TYPE_802_11_WIRELESS: 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_secrets(self, secrets): self._secrets = secrets if self._settings.connection.type == NM_CONNECTION_TYPE_802_11_WIRELESS: -- cgit v0.9.1