summaryrefslogtreecommitdiffstats
path: root/server/providers/data_provider.c
diff options
context:
space:
mode:
Diffstat (limited to 'server/providers/data_provider.c')
-rw-r--r--server/providers/data_provider.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/server/providers/data_provider.c b/server/providers/data_provider.c
index e0de4dbbe..393e03e7a 100644
--- a/server/providers/data_provider.c
+++ b/server/providers/data_provider.c
@@ -77,10 +77,12 @@ static int dp_frontend_destructor(void *ctx);
static int service_identity(DBusMessage *message, void *data, DBusMessage **r);
static int service_pong(DBusMessage *message, void *data, DBusMessage **r);
+static int service_reload(DBusMessage *message, void *data, DBusMessage **r);
struct sbus_method mon_sbus_methods[] = {
{ SERVICE_METHOD_IDENTITY, service_identity },
{ SERVICE_METHOD_PING, service_pong },
+ { SERVICE_METHOD_RELOAD, service_reload },
{ NULL, NULL }
};
@@ -142,6 +144,16 @@ static int service_pong(DBusMessage *message, void *data, DBusMessage **r)
return EOK;
}
+static int service_reload(DBusMessage *message, void *data, DBusMessage **r) {
+ /* Monitor calls this function when we need to reload
+ * our configuration information. Perform whatever steps
+ * are needed to update the configuration objects.
+ */
+
+ /* Send an empty reply to acknowledge receipt */
+ return service_pong(message, data, r);
+}
+
static int dp_monitor_init(struct dp_ctx *dpctx)
{
struct service_sbus_ctx *ss_ctx;