summaryrefslogtreecommitdiffstats
path: root/proto/bgp/packets.c
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2009-04-23 14:16:05 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2009-04-23 14:16:05 +0200
commit8f0c887a52fb19cee14725f66d435cebf2010390 (patch)
treec834791f26d78948b32c8531048ebbafd0fbceee /proto/bgp/packets.c
parentb9539e78d8ebfa9e13d7b61ec9278b76abefdac3 (diff)
downloadbird-8f0c887a52fb19cee14725f66d435cebf2010390.tar
bird-8f0c887a52fb19cee14725f66d435cebf2010390.zip
Fixe bug in BGPv6 that causes to send invalid network withdraws.
Diffstat (limited to 'proto/bgp/packets.c')
-rw-r--r--proto/bgp/packets.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/proto/bgp/packets.c b/proto/bgp/packets.c
index 1841205..ce3d71e 100644
--- a/proto/bgp/packets.c
+++ b/proto/bgp/packets.c
@@ -252,7 +252,7 @@ bgp_create_update(struct bgp_conn *conn, byte *buf)
*tmp++ = 0;
*tmp++ = BGP_AF_IPV6;
*tmp++ = 1;
- ea->attrs[0].u.ptr->length = bgp_encode_prefixes(p, tmp, buck, remains-11);
+ ea->attrs[0].u.ptr->length = 3 + bgp_encode_prefixes(p, tmp, buck, remains-11);
size = bgp_encode_attrs(p, w, ea, remains);
ASSERT(size >= 0);
w += size;