X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=blobdiff_plain;f=bridge.c;h=fe4b477365168dbd4400f7abaa814d29e9191715;hp=5ac5cfeaa88d3dc94a11f1767666615c1d34f214;hb=6dfd44e127c153e721a398f22b510be1a5e9d0b0;hpb=d64c608820ddb4817ef7dff1f993a5801ff99ca2 diff --git a/bridge.c b/bridge.c index 5ac5cfe..fe4b477 100644 --- a/bridge.c +++ b/bridge.c @@ -41,7 +41,7 @@ static const struct config_param_list bridge_attr_list = { .next = { &device_attr_list }, }; -static struct device *bridge_create(struct blob_attr *attr); +static struct device *bridge_create(const char *name, struct blob_attr *attr); static void bridge_config_init(struct device *dev); static void bridge_free(struct device *dev); static void bridge_dump_info(struct device *dev, struct blob_buf *b); @@ -364,27 +364,21 @@ bridge_apply_settings(struct bridge_state *bst, struct blob_attr **tb) } static struct device * -bridge_create(struct blob_attr *attr) +bridge_create(const char *name, struct blob_attr *attr) { struct blob_attr *tb_dev[__DEV_ATTR_MAX]; struct blob_attr *tb_br[__BRIDGE_ATTR_MAX]; struct bridge_state *bst; struct device *dev = NULL; - const char *name; blobmsg_parse(device_attr_list.params, __DEV_ATTR_MAX, tb_dev, blob_data(attr), blob_len(attr)); blobmsg_parse(bridge_attrs, __BRIDGE_ATTR_MAX, tb_br, blob_data(attr), blob_len(attr)); - if (!tb_dev[DEV_ATTR_NAME]) - return NULL; - if (!tb_br[BRIDGE_ATTR_IFNAME]) return NULL; - name = blobmsg_data(tb_dev[DEV_ATTR_NAME]); - bst = calloc(1, sizeof(*bst)); if (!bst) return NULL;