+/*
+ * netifd - network interface daemon
+ * Copyright (C) 2012 Felix Fietkau <nbd@openwrt.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2
+ * as published by the Free Software Foundation
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
static bool
static_proto_setup(struct static_proto_state *state)
{
- return proto_apply_ip_settings(state->proto.iface, state->config) == 0;
+ struct interface *iface = state->proto.iface;
+ struct device *dev = iface->main_dev.dev;
+
+ interface_set_l3_dev(iface, dev);
+ return proto_apply_static_ip_settings(state->proto.iface, state->config) == 0;
}
static int
break;
case PROTO_CMD_TEARDOWN:
+ case PROTO_CMD_RENEW:
break;
}
+
return ret;
}
static struct proto_handler static_proto = {
.name = "static",
- .flags = PROTO_FLAG_IMMEDIATE,
+ .flags = PROTO_FLAG_IMMEDIATE |
+ PROTO_FLAG_FORCE_LINK_DEFAULT,
.config_params = &proto_ip_attr,
.attach = static_attach,
};