diff options
| author | Christian Franke <chris@opensourcerouting.org> | 2017-07-12 18:28:03 +0200 |
|---|---|---|
| committer | Christian Franke <chris@opensourcerouting.org> | 2017-07-12 18:28:03 +0200 |
| commit | 8fad3ca3a0ff6bfeeb0fa64ff5890f3b4db0d41a (patch) | |
| tree | 912f93c70483a9f4e9ade63531a21c0eaed4fc8b /lib/nexthop.c | |
| parent | 9fb47c0584ced64080c977ade8597de377d47b7f (diff) | |
lib: copy rmap_src too in copy_nexthops
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
Diffstat (limited to 'lib/nexthop.c')
| -rw-r--r-- | lib/nexthop.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/nexthop.c b/lib/nexthop.c index ef9ae800f6..9b5a3ee102 100644 --- a/lib/nexthop.c +++ b/lib/nexthop.c @@ -143,15 +143,16 @@ copy_nexthops (struct nexthop **tnh, struct nexthop *nh, struct nexthop *rparent for (nh1 = nh; nh1; nh1 = nh1->next) { nexthop = nexthop_new(); - nexthop->flags = nh->flags; - nexthop->type = nh->type; nexthop->ifindex = nh->ifindex; - memcpy(&(nexthop->gate), &(nh->gate), sizeof(union g_addr)); - memcpy(&(nexthop->src), &(nh->src), sizeof(union g_addr)); + nexthop->type = nh->type; + nexthop->flags = nh->flags; + memcpy(&nexthop->gate, &nh->gate, sizeof(nh->gate)); + memcpy(&nexthop->src, &nh->src, sizeof(nh->src)); + memcpy(&nexthop->rmap_src, &nh->rmap_src, sizeof(nh->rmap_src)); + nexthop->rparent = rparent; if (nh->nh_label) nexthop_add_labels (nexthop, nh->nh_label_type, nh->nh_label->num_labels, &nh->nh_label->label[0]); - nexthop->rparent = rparent; nexthop_add(tnh, nexthop); if (CHECK_FLAG(nh1->flags, NEXTHOP_FLAG_RECURSIVE)) |
