projects
/
project
/
netifd.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
bridge: retry adding members after config reload / device start
[project/netifd.git]
/
handler.h
diff --git
a/handler.h
b/handler.h
index
de403e1
..
baf9c3c
100644
(file)
--- a/
handler.h
+++ b/
handler.h
@@
-15,8
+15,10
@@
#define __NETIFD_HANDLER_H
#include <libubox/blobmsg_json.h>
#define __NETIFD_HANDLER_H
#include <libubox/blobmsg_json.h>
+#include <json/json.h>
+#include "config.h"
-typedef void (*script_dump_cb)(const char *name, json_object *obj);
+typedef void (*script_dump_cb)(const char *
script, const char *
name, json_object *obj);
static inline json_object *
json_check_type(json_object *obj, json_type type)
static inline json_object *
json_check_type(json_object *obj, json_type type)
@@
-30,6
+32,12
@@
json_check_type(json_object *obj, json_type type)
return obj;
}
return obj;
}
+static inline json_object *
+json_get_field(json_object *obj, const char *name, json_type type)
+{
+ return json_check_type(json_object_object_get(obj, name), type);
+}
+
int netifd_open_subdir(const char *name);
void netifd_init_script_handlers(int dir_fd, script_dump_cb cb);
char *netifd_handler_parse_config(struct uci_blob_param_list *config, json_object *obj);
int netifd_open_subdir(const char *name);
void netifd_init_script_handlers(int dir_fd, script_dump_cb cb);
char *netifd_handler_parse_config(struct uci_blob_param_list *config, json_object *obj);