X-Git-Url: http://git.archive.openwrt.org/?a=blobdiff_plain;f=src%2Fubus.c;h=55f52dc8ef570d65168a57153f02ff501e1ce588;hb=7fd9d455c7f0d19a87f97ce11942d532c71de05f;hp=5b901d2f1d4eef3bebce73d8282904b0f314fe40;hpb=9dc77ae1b6c2379a2cd7ba631fcefdd243fcda85;p=project%2Fodhcpd.git diff --git a/src/ubus.c b/src/ubus.c index 5b901d2..55f52dc 100644 --- a/src/ubus.c +++ b/src/ubus.c @@ -166,7 +166,7 @@ enum { static const struct blobmsg_policy iface_attrs[IFACE_ATTR_MAX] = { [IFACE_ATTR_INTERFACE] = { .name = "interface", .type = BLOBMSG_TYPE_STRING }, - [IFACE_ATTR_IFNAME] = { .name = "ifname", .type = BLOBMSG_TYPE_STRING }, + [IFACE_ATTR_IFNAME] = { .name = "l3_device", .type = BLOBMSG_TYPE_STRING }, [IFACE_ATTR_UP] = { .name = "up", .type = BLOBMSG_TYPE_BOOL }, [IFACE_ATTR_DATA] = { .name = "data", .type = BLOBMSG_TYPE_TABLE }, [IFACE_ATTR_PREFIX] = { .name = "ipv6-prefix", .type = BLOBMSG_TYPE_ARRAY }, @@ -229,7 +229,7 @@ void ubus_apply_network(void) blobmsg_for_each_attr(c, dump, rem) { struct blob_attr *tb[IFACE_ATTR_MAX]; - blobmsg_parse(iface_attrs, IFACE_ATTR_MAX, tb, blob_data(c), blob_len(c)); + blobmsg_parse(iface_attrs, IFACE_ATTR_MAX, tb, blobmsg_data(c), blobmsg_data_len(c)); if (!tb[IFACE_ATTR_INTERFACE] || !tb[IFACE_ATTR_DATA]) continue; @@ -248,7 +248,8 @@ void ubus_apply_network(void) continue; if (!c || !c->ignore) - config_parse_interface(tb[IFACE_ATTR_DATA], interface, false); + config_parse_interface(blobmsg_data(tb[IFACE_ATTR_DATA]), + blobmsg_data_len(tb[IFACE_ATTR_DATA]), interface, false); } } } @@ -296,7 +297,7 @@ const char* ubus_get_ifname(const char *name) blobmsg_for_each_attr(c, dump, rem) { struct blob_attr *tb[IFACE_ATTR_MAX]; - blobmsg_parse(iface_attrs, IFACE_ATTR_MAX, tb, blob_data(c), blob_len(c)); + blobmsg_parse(iface_attrs, IFACE_ATTR_MAX, tb, blobmsg_data(c), blobmsg_data_len(c)); if (!tb[IFACE_ATTR_INTERFACE] || strcmp(name, blobmsg_get_string(tb[IFACE_ATTR_INTERFACE]))) @@ -320,7 +321,7 @@ bool ubus_has_prefix(const char *name, const char *ifname) blobmsg_for_each_attr(c, dump, rem) { struct blob_attr *tb[IFACE_ATTR_MAX]; - blobmsg_parse(iface_attrs, IFACE_ATTR_MAX, tb, blob_data(c), blob_len(c)); + blobmsg_parse(iface_attrs, IFACE_ATTR_MAX, tb, blobmsg_data(c), blobmsg_data_len(c)); if (!tb[IFACE_ATTR_INTERFACE] || !tb[IFACE_ATTR_IFNAME]) continue; @@ -334,7 +335,7 @@ bool ubus_has_prefix(const char *name, const char *ifname) continue; struct blob_attr *d; - int drem; + unsigned drem; blobmsg_for_each_attr(d, cur, drem) { return true; }