diff options
Diffstat (limited to 'usr.sbin/bgpd/kroute.c')
-rw-r--r-- | usr.sbin/bgpd/kroute.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/usr.sbin/bgpd/kroute.c b/usr.sbin/bgpd/kroute.c index ec99b8bc6dc..4d21ac9af0e 100644 --- a/usr.sbin/bgpd/kroute.c +++ b/usr.sbin/bgpd/kroute.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kroute.c,v 1.63 2004/01/11 19:14:43 henning Exp $ */ +/* $OpenBSD: kroute.c,v 1.64 2004/01/11 19:42:27 henning Exp $ */ /* * Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org> @@ -270,6 +270,7 @@ kr_nexthop_add(in_addr_t key) nh.valid = 1; nh.connected = h->kroute->r.flags & F_CONNECTED; nh.gateway.v4.s_addr = h->kroute->r.nexthop; + memcpy(&nh.kr, &h->kroute->r, sizeof(nh.kr)); } send_nexthop_update(&nh); } else { @@ -604,6 +605,7 @@ knexthop_validate(struct knexthop_node *kn) n.valid = 1; n.connected = kr->r.flags & F_CONNECTED; n.gateway.v4.s_addr = kr->r.nexthop; + memcpy(&n.kr, &kr->r, sizeof(n.kr)); send_nexthop_update(&n); } } @@ -763,6 +765,7 @@ if_change(u_short ifindex, int flags) nh.gateway.v4.s_addr = kkr->kr->r.nexthop; } + memcpy(&nh.kr, &kkr->kr->r, sizeof(nh.kr)); send_nexthop_update(&nh); } } |