From 9cabaeb8a525ba050fb2dcf1204b6cb56a65a330 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Thu, 31 May 2012 18:18:52 +0200 Subject: add an ubus method for dumping available protocol handlers --- ubus.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'ubus.c') diff --git a/ubus.c b/ubus.c index 438b08c..dcc4098 100644 --- a/ubus.c +++ b/ubus.c @@ -92,10 +92,23 @@ netifd_add_host_route(struct ubus_context *ctx, struct ubus_object *obj, return 0; } +static int +netifd_get_proto_handlers(struct ubus_context *ctx, struct ubus_object *obj, + struct ubus_request_data *req, const char *method, + struct blob_attr *msg) +{ + blob_buf_init(&b, 0); + proto_dump_handlers(&b); + ubus_send_reply(ctx, req, b.head); + + return 0; +} + static struct ubus_method main_object_methods[] = { { .name = "restart", .handler = netifd_handle_restart }, { .name = "reload", .handler = netifd_handle_reload }, UBUS_METHOD("add_host_route", netifd_add_host_route, route_policy), + { .name = "get_proto_handlers", .handler = netifd_get_proto_handlers }, }; static struct ubus_object_type main_object_type = -- cgit v1.2.1