diff --git a/proto/radv/config.Y b/proto/radv/config.Y index 78a09551..495d9a05 100644 --- a/proto/radv/config.Y +++ b/proto/radv/config.Y @@ -31,7 +31,7 @@ CF_ADDTO(proto, radv_proto '}') radv_proto_start: proto_start RADV { - this_proto = proto_config_new(&proto_radv, sizeof(struct radv_config)); + this_proto = proto_config_new(&proto_radv, sizeof(struct radv_config), $1); init_list(&RADV_CFG->patt_list); init_list(&RADV_CFG->pref_list); }; diff --git a/proto/radv/radv.c b/proto/radv/radv.c index 42d4bff9..d6fc8da5 100644 --- a/proto/radv/radv.c +++ b/proto/radv/radv.c @@ -328,7 +328,7 @@ radv_copy_config(struct proto_config *dest, struct proto_config *src) init_list(&d->patt_list); /* We copy pref_list, shallow copy suffices */ - cfg_copy_list(&d->iface_list, &s->iface_list, sizeof(struct iface_patt)); + cfg_copy_list(&d->pref_list, &s->pref_list, sizeof(struct radv_prefix_config)); }