From 9bec63f4b9cb97c1ff1cf2ff448446ab1e59734d Mon Sep 17 00:00:00 2001 From: Stephen Gallagher Date: Wed, 24 Jun 2009 08:18:15 -0400 Subject: Implement resInit for monitor, NSS, PAM, DP and the backends --- server/providers/data_provider.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'server/providers/data_provider.c') diff --git a/server/providers/data_provider.c b/server/providers/data_provider.c index 677f677fd..4dc9dfaa8 100644 --- a/server/providers/data_provider.c +++ b/server/providers/data_provider.c @@ -31,6 +31,11 @@ #include #include +/* Needed for res_init() */ +#include +#include +#include + #include "popt.h" #include "util/util.h" #include "confdb/confdb.h" @@ -83,11 +88,13 @@ static int dp_frontend_destructor(void *ctx); static int service_identity(DBusMessage *message, struct sbus_conn_ctx *sconn); static int service_pong(DBusMessage *message, struct sbus_conn_ctx *sconn); static int service_reload(DBusMessage *message, struct sbus_conn_ctx *sconn); +static int service_res_init(DBusMessage *message, struct sbus_conn_ctx *sconn); struct sbus_method mon_sbus_methods[] = { { SERVICE_METHOD_IDENTITY, service_identity }, { SERVICE_METHOD_PING, service_pong }, { SERVICE_METHOD_RELOAD, service_reload }, + { SERVICE_METHOD_RES_INIT, service_res_init }, { NULL, NULL } }; @@ -174,6 +181,18 @@ static int service_reload(DBusMessage *message, struct sbus_conn_ctx *sconn) return service_pong(message, sconn); } +static int service_res_init(DBusMessage *message, struct sbus_conn_ctx *sconn) +{ + int ret; + + ret = res_init(); + if(ret != 0) { + return EIO; + } + + return service_pong(message, sconn); +} + static int dp_monitor_init(struct dp_ctx *dpctx) { int ret; -- cgit