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.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/server/providers/data_provider.c b/server/providers/data_provider.c
index e361dfc87..2eacf47e4 100644
--- a/server/providers/data_provider.c
+++ b/server/providers/data_provider.c
@@ -29,6 +29,7 @@
#include <string.h>
#include <sys/time.h>
#include <errno.h>
+#include <time.h>
#include "popt.h"
#include "util/util.h"
#include "confdb/confdb.h"
@@ -88,12 +89,33 @@ struct sbus_method mon_sbus_methods[] = {
};
static int dp_get_account_info(DBusMessage *message, void *data, DBusMessage **r);
+static int get_policies(DBusMessage *message, void *data, DBusMessage **r);
struct sbus_method dp_sbus_methods[] = {
{ DP_SRV_METHOD_GETACCTINFO, dp_get_account_info },
+ {DP_PP_GET_POLICIES, get_policies},
{ NULL, NULL }
};
+static int get_policies(DBusMessage *message, void *data, DBusMessage **r) {
+ DBusMessage *reply;
+ dbus_bool_t ret;
+ int val;
+
+ val = 1+(int) (4.0*rand()/(RAND_MAX+1.0));
+
+ reply = dbus_message_new_method_return(message);
+ ret = dbus_message_append_args(reply, DBUS_TYPE_UINT32, &val,
+ DBUS_TYPE_INVALID);
+ if (!ret) {
+ return EIO;
+ }
+
+ *r = reply;
+ return EOK;
+}
+
+
struct dp_request {
/* reply message to send when request is done */
DBusMessage *reply;