Skip to content

v4.10.0

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Oct 02:03
v4.10.0

Changelog

  • da824d9 GoBGP 4.10.0
  • 723f98c feat: add multi-topology IDs to link descriptor API
  • a15f873 server: apply AS path option updates without resetting sessions
  • 03eaa74 server: drop the queued outgoing messages on a state change
  • 9470f3d server: drain an InfiniteChannel until its output closes
  • 056eb2e table: don't panic on an rpki condition for an unvalidated path
  • 55fa98f table: skip rejected paths in DropStale and MarkLLGRStaleOrDrop
  • e37cdd8 table: skip rejected paths when building Drop withdrawals
  • c4d9e77 server: move the ingress loop checks out of the handleUpdate loop
  • 9b49e3f bfd: use transport local address for BFD
  • 0cc5883 packet/bgp: reject an OPEN message that carries AS 0
  • e59efa7 docs: say that a neighbor setting wins over the peer group
  • 05ba735 server: make a peer group update reach the peers in the group
  • b2a5ee1 server: keep the neighbor configuration as the caller passed it
  • 9041a8c config/oc: stop forcing peer-as and min-adv-interval from the group
  • 3e9288d fix(metrics): stop reporting peer gauges as counters
  • 7ad257a table: do not emit an empty AS_PATH segment when merging AS4_PATH
  • 16965d1 docs: document TCP-AO CLI
  • 3aaee4d cmd/gobgp: add TCP-AO CLI commands
  • 8a89c99 docs: document neighbor update command
  • ec6495e server: do not retry Rx forever when a BFD test injects a packet
  • 33309bb server: wait for the BFD peer to accept an injected packet in tests
  • aff4a72 metrics: split bgp_peer_state into a session and an admin metric
  • 31c8da1 table, server: withdraw the installed path when a loop check rejects
  • 71101d4 docs: add rules for AI-assisted contributions
  • f790813 server: drop the dead sent-message watch plumbing
  • d39b0b3 server/bmp: advertise ADD-PATH for every family in the Loc-RIB Peer Up
  • e957514 server/bmp: stop reporting locally originated routes under a pseudo peer
  • 9130d21 server/bmp: drop the route monitoring cache
  • 19837b0 server: notify the post-policy watchers only on a change
  • 3628442 table: report whether an update changed the path it replaced
  • 6427db0 table: shard the destinations only where they are written concurrently
  • 9376e01 server: hold a Loc-RIB table for every address family
  • 6b6ac4a table: allocate the destination shards on the first insert
  • 5a51530 table: add a regression test for the EVPN type-2 route key
  • 3f856cd server/bmp: key the route monitoring cache by path identifier
  • b05a989 server/bmp: encode the path identifier in route monitoring
  • 4ba5724 packet/bmp: parse the mirrored message with the session options
  • 7aca34a server/bmp: mirror the message as it was received
  • 18d807d server/bmp: build route monitoring messages in a separate function
  • f912784 cmd/gobgp: show the peer group in the neighbor detail output
  • c7b8634 table: move route selection options into the table manager
  • 8d4165d table: make the stale flag atomic
  • 9fd6457 table: use the link-local next hop when the global one is unspecified
  • acd4aba table: keep the link-local next hop on the receive path
  • da33165 table: do not advertise a link-local next hop to a peer on another link
  • a901be7 test(server): check remove-private-as across admin down
  • c0f7f51 metrics: add the peer group and description labels
  • 59fef02 server: keep the config mirrors when a neighbor is admin down
  • 72a0256 bfd: pace transmission by RFC 5880's transmit interval
  • 3fb2fc0 table: make an AS_SET origin invalid when a ROA covers the prefix
  • fade913 test: add a BGP-LS scenario test for SR Policy candidate paths
  • 7893111 cmd/gobgp: add "global rib add -a ls srpolicy"
  • 0fe655e api: add the SR Policy Candidate Path NLRI and attribute
  • 024b1f8 config/oc: report the peer group in the peer state
  • 8277599 test(scenario): add scalable local command timeouts and failure logs
  • 00bac63 test(scenario): centralize polling waits
  • 527139b api: add multiple adjacency-SID support to the BGP-LS link attribute
  • 13db048 docs: describe the peer group inheritance rules
  • 084da87 server: always make a dynamic neighbor passive
  • 9f18809 config/oc: keep the neighbor config set through the API
  • 2805b1c server/mrt: fix the peer index entry for locally generated routes
  • 8a011eb server/mrt: record the peer AS in the TABLE_DUMPv2 peer index table
  • db0f1e1 docs: add the missing BGP-LS link delay keywords
  • 74c1be5 cmd/gobgp: fix the BGP-LS route format comments
  • b69e76b cmd/gobgp: do not store a typed nil Multi-Topology Identifier TLV
  • 28f422f cmd/gobgp: require sids for the srv6sid route
  • b624eaa cmd/gobgp: assert which keyword the BGP-LS parser rejects
  • 1db8c5a cmd/gobgp: require protocol and identifier for BGP-LS routes
  • b7b3178 packet/bgp: add the SR Candidate Path Constraints TLV
  • de5a3d4 packet/bgp: add the SR Segment List TLV and its sub-TLVs
  • a23f65f packet/bgp: add the SR Policy Binding SID, state and name TLVs
  • 8e049ca tools: check that Go and protobuf sources are ASCII only
  • 9bd8f3f use ASCII characters in comments
  • 2943c5e fix(table): ignore unmatched withdrawals to prevent RTC update loops
  • 4a22f90 config/oc: look up the configured fields of an unnumbered neighbor
  • c7c0fff packet/bgp: move lsTLVUnknown to bgp.go
  • 0bf4e41 packet/bgp: preserve unknown BGP-LS Attribute TLVs
  • 3dcfcca packet/bgp: add the SR Policy Candidate Path NLRI (RFC 9857)
  • 18e483d packet/bgp: add the BGP-LS Protocol-IDs for RSVP-TE and Segment Routing
  • 7258f20 table, server: keep one toStatementApi, not two
  • 41cfcd7 server: map the set-community option to the API enum, do not cast it
  • c9814a4 config, server: do not put "invalid IP" in the API
  • fb7e2fd table, server: report the origin-eq condition from OriginEq
  • ee380df docs: fix the peer type values in the metrics table
  • 87e90f0 metrics: fix the peer type values in the bgp_peer_type help text
  • 452e7f4 netutils: do not panic on a non-IPv4 MD5 address on OpenBSD
  • c13352e packet/bgp: set the SR range value lengths in the LS TLV constructors
  • ef38c9d apiutil: return an error for an unhandled BGP-LS NLRI type
  • 475d678 packet/bgp: set the value lengths in the LS TLV constructors
  • 2a3d321 packet/mrt: write AFI/SAFI only for the RIB_GENERIC families
  • cf5ad1d packet/bmp: bound the mirrored BGP message by its Route Mirroring TLV length
  • 50809e2 zebra: only encode nexthop label_num with MessageLabel before frr7.3
  • 544c4be server: reject local cluster loops on import
  • de582e0 tcp-ao: delete keys from listening sockets asynchronously
  • 15e9be9 server: apply TCP-AO to peer sockets
  • 842b728 server: jitter BFD control packet transmission
  • 746dff5 server: bound the RTR message length before allocating the body
  • 5ac8c93 build(deps): bump google.golang.org/grpc from 1.82.1 to 1.83.2
  • 64906f0 config/oc: report the peer description in the peer state
  • a1136ee config/oc: add tests for TCP-AO peer group inheritance
  • 855e337 server: add tests for the TCP-AO peer config from the API
  • 600249e config/oc: add tests for the TCP-AO peer config conversion
  • 0af005a config/oc: require the TCP-AO keychain leaf
  • b9604ef server: wire TCP-AO peer configuration
  • eea7ce0 config/oc: add TCP-AO peer model
  • ff8c5fd api: add TCP-AO peer configuration & state API