bgpd: Fix issue #218

Wrong offset was used when using global V6 address in place of
      v6 LL.  (Introduced in earlier fix of broken RD advertisement.)

      Tested by @dslice in master.

Signed-off-by: Lou Berger <lberger@labn.net>
This commit is contained in:
Lou Berger 2017-02-23 17:48:47 -05:00
parent 9965fdbfbf
commit 5f3b76145e

View File

@ -546,7 +546,7 @@ bpacket_reformat_for_peer (struct bpacket *pkt, struct peer_af *paf)
}
if (gnh_modified)
stream_put_in6_addr_at (s, vec->offset + 1 + (nhlen-IPV6_MAX_BYTELEN), mod_v6nhg);
stream_put_in6_addr_at (s, vec->offset + 1, mod_v6nhg);
if (lnh_modified)
stream_put_in6_addr_at (s, vec->offset + 1 + (nhlen-IPV6_MAX_BYTELEN), mod_v6nhl);