summaryrefslogtreecommitdiffstats
path: root/server/providers
diff options
context:
space:
mode:
authorMartin Nagy <mnagy@redhat.com>2010-01-08 22:32:25 +0100
committerStephen Gallagher <sgallagh@redhat.com>2010-01-14 09:09:44 -0500
commit9825054362a6ca3ad6ea851236ba9c1b3a703aba (patch)
tree54d9e9eea532b6d1aea3b51715b740fb748eaee5 /server/providers
parent200f2f325b81af13e0e3b21ac72bfc905a63258b (diff)
downloadsssd-9825054362a6ca3ad6ea851236ba9c1b3a703aba.tar.gz
sssd-9825054362a6ca3ad6ea851236ba9c1b3a703aba.tar.xz
sssd-9825054362a6ca3ad6ea851236ba9c1b3a703aba.zip
Re-create c-ares channels if /etc/resolv.conf is modified
Fixes: #378
Diffstat (limited to 'server/providers')
-rw-r--r--server/providers/data_provider_be.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/server/providers/data_provider_be.c b/server/providers/data_provider_be.c
index 05f3eaffa..73a7f508c 100644
--- a/server/providers/data_provider_be.c
+++ b/server/providers/data_provider_be.c
@@ -51,9 +51,12 @@
#define ACCESS_DENY "deny"
#define NO_PROVIDER "none"
+static int data_provider_res_init(DBusMessage *message,
+ struct sbus_connection *conn);
+
struct sbus_method monitor_be_methods[] = {
{ MON_CLI_METHOD_PING, monitor_common_pong },
- { MON_CLI_METHOD_RES_INIT, monitor_common_res_init },
+ { MON_CLI_METHOD_RES_INIT, data_provider_res_init },
{ NULL, NULL }
};
@@ -1190,3 +1193,10 @@ int main(int argc, const char *argv[])
return 0;
}
+static int data_provider_res_init(DBusMessage *message,
+ struct sbus_connection *conn)
+{
+ resolv_reread_configuration();
+
+ return monitor_common_res_init(message, conn);
+}