]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
BGP: Minor fixes in long-lived graceful restart
authorOndrej Zajicek (work) <santiago@crfreenet.org>
Wed, 1 Aug 2018 15:35:39 +0000 (17:35 +0200)
committerOndrej Zajicek (work) <santiago@crfreenet.org>
Wed, 1 Aug 2018 15:35:39 +0000 (17:35 +0200)
proto/bgp/bgp.h
proto/bgp/packets.c

index 7703fb6e96622c6d2e45f13117b2dd40c4e3fe90..2ff61834f999d390dda3e40340297b55ec8f4ba6 100644 (file)
@@ -129,7 +129,7 @@ struct bgp_conn {
   u8 peer_gr_aflags;
   u8 peer_llgr_aware;
   u8 peer_llgr_able;
-  u16 peer_llgr_time;
+  uint peer_llgr_time;
   u8 peer_llgr_aflags;
   u8 peer_ext_messages_support;                /* Peer supports extended message length [draft] */
   unsigned hold_time, keepalive_time;  /* Times calculated from my and neighbor's requirements */
index 0d1a3414b9dca005ed78b20cd9b7644bf043d090..a39670ef93fcb16783179bff4fda3c1a4ac3ce62 100644 (file)
@@ -910,7 +910,7 @@ bgp_parse_capabilities(struct bgp_conn *conn, byte *opt, int len)
          conn->peer_llgr_able = 0;
          conn->peer_llgr_time = 0;
          conn->peer_llgr_aflags = 0;
-         for (i = 0; i < cl; i += 4)
+         for (i = 0; i < cl; i += 7)
            if (opt[2+i+0] == 0 && opt[2+i+1] == BGP_AF && opt[2+i+2] == 1) /* Match AFI/SAFI */
              {
                conn->peer_llgr_able = 1;