From 69b2dcb92b8402b9c6df4d6a041a890fe6468e18 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Wed, 7 Sep 2011 14:37:18 +0200 Subject: add code for versioned lists and use it to manage addresses and routes --- proto-static.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'proto-static.c') diff --git a/proto-static.c b/proto-static.c index 04e2118..3868ab7 100644 --- a/proto-static.c +++ b/proto-static.c @@ -89,14 +89,13 @@ parse_addr(struct interface_proto_state *state, const char *str, bool v6, int ma addr = calloc(1, sizeof(*addr)); addr->flags = v6 ? DEVADDR_INET6 : DEVADDR_INET4; - addr->ctx = state; addr->mask = mask; if (!parse_ip_and_netmask(af, str, &addr->addr, &addr->mask)) { interface_add_error(state->iface, "proto-static", "INVALID_ADDRESS", &str, 1); free(addr); return false; } - interface_add_address(state->iface, addr); + vlist_add(&state->iface->proto_addr, &addr->node); return true; } @@ -132,7 +131,7 @@ parse_gateway_option(struct interface_proto_state *state, struct blob_attr *attr } route->mask = 0; route->flags = DEVADDR_DEVICE | (v6 ? DEVADDR_INET6 : DEVADDR_INET4); - interface_add_route(state->iface, route); + vlist_add(&state->iface->proto_route, &route->node); return true; } @@ -211,7 +210,6 @@ static_handler(struct interface_proto_state *proto, /* fall through */ case PROTO_CMD_TEARDOWN: - interface_del_ctx_addr(state->proto.iface, proto); break; } return ret; -- cgit v1.2.1