enum {
- ODHCPD_ATTR_LEGACY,
+ ODHCPD_ATTR_MAINDHCP,
ODHCPD_ATTR_LEASEFILE,
ODHCPD_ATTR_LEASETRIGGER,
ODHCPD_ATTR_MAX
static const struct blobmsg_policy odhcpd_attrs[LEASE_ATTR_MAX] = {
- [ODHCPD_ATTR_LEGACY] = { .name = "legacy", .type = BLOBMSG_TYPE_BOOL },
+ [ODHCPD_ATTR_MAINDHCP] = { .name = "maindhcp", .type = BLOBMSG_TYPE_BOOL },
[ODHCPD_ATTR_LEASEFILE] = { .name = "leasefile", .type = BLOBMSG_TYPE_STRING },
[ODHCPD_ATTR_LEASETRIGGER] = { .name = "leasetrigger", .type = BLOBMSG_TYPE_STRING },
};
uci_to_blob(&b, s, &odhcpd_attr_list);
blobmsg_parse(odhcpd_attrs, ODHCPD_ATTR_MAX, tb, blob_data(b.head), blob_len(b.head));
- if ((c = tb[ODHCPD_ATTR_LEGACY]))
+ if ((c = tb[ODHCPD_ATTR_MAINDHCP]))
config.legacy = blobmsg_get_bool(c);
if ((c = tb[ODHCPD_ATTR_LEASEFILE])) {
if (ifname)
strncpy(iface->ifname, ifname, sizeof(iface->ifname) - 1);
+ if ((iface->ifindex = if_nametoindex(iface->ifname)) <= 0)
+ return -1;
+
iface->inuse = true;
if ((c = tb[IFACE_ATTR_DYNAMICDHCP]))
}
}
- iface->ignore = (iface->ifindex = if_nametoindex(iface->ifname)) <= 0;
return 0;
err:
enum odhcpd_mode hybrid_mode = RELAYD_DISABLED;
#ifdef WITH_UBUS
- if (ubus_has_prefix(i->name, i->ifname))
+ if (!ubus_has_prefix(i->name, i->ifname))
hybrid_mode = RELAYD_RELAY;
#endif