FRRouting Release 7.3.1 [Download]
We are pleased to announce FRR 7.3 and 7.3.1. The FRR 7.3 release contains mostly under the hood improvements and modernizations. Big thanks to all contributors.
General overview:
- More Python 3 support (except for CentOS6)
- Logrotate support for
bfdd
,pbrd
andvrrpd
- Renamed all man pages to start with
frr-<daemon>
- New profiles support:
traditional
anddatacenter
pimd
/zebra
MLAG supportzebra
next hop group supportvrrpd
VRF, YANG model and northbound supportbgpd
andospfd
performance improvements
Debian packages: https://deb.frrouting.org/
Gentoo repository and ebuilds: https://github.com/FRRouting/gentoo-overlay
And source code for the releases here:
- 7.3: https://github.com/FRRouting/frr/releases/tag/frr-7.3
- 7.3.1: https://github.com/FRRouting/frr/releases/tag/frr-7.3.1
Changes in 7.3
All daemons
- VRF name change bug fixes
- More VRF commands with auto completion
- Northbound performance improvement on non-transactional usage
- Northbound reduce memory usage
- Fixed some ARM crashes
- Profiles support (traditional, datacenter): don’t use
--enable-datacenter
configure option anymore (see/etc/daemons
).
bgpd
- Bug fix: EVPN ecommunity auto rts
- Bug fix: clear VNI prefix-routes-only flag on removal command
- Bug fix: IPv6 next hop when there are no link-local addresses
- Bug fix:
set ipv6 next-hop prefer-global
now works with IPv4 peers - Aggregate-address route map support
- Route map support for altering distance (
set distance
) - Fix invalid next hop error notification (martian next hops)
- Message sending performance improvement (see vector io)
- New BGP commad-line option for large operations:
--socket-size
- Sender side loop AS path loop detection support
- New
bgp reject-as-sets
command to deprecateAS_SET
andAS_CONFED_SET
ospfd
- Packet reading performance improvements
- Debug tuning to remove verbosity
pimd
- Experimental MLAG support
- Set ToS value for multicast control packets
- Refactory and a lot of fixes
staticd
- Bug fix: update static route on next-hop VRF change
- Static route configuration fail and warn if gateway is local address
watchfrr
- New command to ignore daemon state (useful for debugging)
- Better systemd integration
vrrpd
- VRF support
- New FRR specific YANG model
- Northbound support
zebra
- VxLAN: deactivate some debugs by default
- MPLS: improved handling and better
show mpls table
output - SR: use different SR identifications for OSPF/IS-IS implementations
- VRF: allow route summary for different tables
- Next hop groups support
- Improved interface handling
- Experimental MLAG support
- RFC 4861 compliance: reduce frequency of Router Advertisements
Changes in 7.3.1
All daemons
- Reverted YANG leaf ref feature: it doesn’t work with the supported libyang 0.16.104 (known as 0.16-r3).
- Fix compilation with GCC 10
bgpd
- Next hop tracking fixes
- Fix some diagnostic messages
- Fix UPDATEs discard with global next hops set to
::
ldpd
- Fix broken LSP handling (FRRouting issue #6127)
ospf6d
- Fix processing loop on multiple ABRs when acting as ASBRs.
zebra
- Added command to force disable next hop group support (
no zebra nexthop kernel enable
) - More next hop group fixes
- Disable next hop groups when using NetNS
Detailed Change Log for 7.3
- bgpd: hook for bgp peer status change events
- lib: call vrf update hook when default vrf name changes
- bgpd: register to vrf_update_name() hook
- ospfd: do not create default ospf instance
- ospfd: update ospf default vrf name with vrf hook
- bfdd: add vrf information as key element for bfd session search
- bfdd: if no vrfname is passed, use default vrf name
- bfdd: add the vrf update hook in case vrf name changes
- bfdd: update vrf name of bfd session if necessary
- ripd: update the default vrf name by registering to callback
- ripngd: update the default vrf name by registering to callback
- bfdd: change vrf name with bypassing nb api
- ripd: change vrf name with bypassing nb api
- ripngd: change vrf name with bypassing nb api
- bgpd: fix evpn ecommunity auto rts
- bgpd: evpn convey svi_ip to zebra post vni add
- bgpd: Apply route-map for aggregate-address command
- topotests: Add test for checking if route-map is applied for aggregate-address
- doc: Add documentation for aggregate-address with route-map support
- staticd: correct update static route when specify nexthop-vrf
- zebra: protect some vxlan debugs
- ospfd: Remove flog_warn for a situation user can never do anything with
- doc: Add documentation for
bgp ebgp-requires-policy
command - zebra: avoid using zebra datastructs in evpn dataplane path
- lib: optimize non-transactional cli
- tests: Ensure we wait 1 bgp timeout period before declaring failure
- bgpd: clear l3vni prefix-only flag upon deletion
- topotests: Add libcap-dev to the Dockerfile
- zebra: improve the output of “show mpls table”
- tests: remove topotest compatibility with older ldpd versions
- zebra: add missing case statement in nhlfe2str()
- lib: introduce encode/decode functions for the MPLS zapi messages
- zebra: identify MPLS FTNs by route type and instance
- lib, zebra: rename LSP type used for OSPF SR
- lib, zebra: enhance the MPLS zapi messages
- zebra: improve cleanup of MPLS labels when zclient disconnects
- staticd: static route config should fail if gw configured as its local ip.
- doc: Edgar -> Edsger
- bgpd: fix build breakage after hook re-definition
- zebra: Don’t resolve to diff interface if given
- lib, zebra: add new MPLS zapi message with route replace semantics
- ospfd: avoid installing SR FTNs twice
- BGP: Rectifying the log messages.
- ospf6: Add vrf_id to the ospf6 data structure
- isisd: Add vrf_id to the main isis structure
- pimd: Slightly loosen pim assert message length tests
- bgpd: Do not send next-hop as :: in MP_REACH_NLRI if no link-local exists
- yang: create interface reference type
- tests: Fix topotests due to json error
- doc: Update documentation to talk about Administrative Distance
- tests: Add admin distance 255 static routes
- zebra: Modify
show ip route summary
to allow you to specify a table - doc: Add
show ip route summary
documentation - doc: Djikstra -> Dijkstra
- bgpd: prefer-global command not working on IPv4 peers
- zebra: revise redistribution delete to improve update case
- yang: add user type for ip-address
- tests: Disable bgp-ecmp-topo2 topotest until proper fix is developed
- clippy: CARES fail only if !enable_clippy_only test for CARES otherwise config will fail with conditional “CARES” not defined
- clippy: fail libcap test only when !enable_clippy_only when building native clippy we don’t need libcap
- tests: Improve bgp_aggregate-address_route-map test
- bgpd: Use defined constants for NHLEN instead of numeric values
- pbrd: Handle GATEWAY_IFINDEX nht conflicts
- tools: Modifications to copy support bundle files
- tools: Adding new commands to the list of support bundle commands
- bgpd: Create
set distance XXX
command for routemaps - doc: Update documentation for ‘set distance XX` command for bgp
- lib: rmap dep table is not correct in case of exact-match clause
- zebra: remove empty, unused internal api
- lib: delete pthread from tracking list on delete
- lib: handle frr_pthread_init/fini in libfrr init
- tests: update tests for pthread init changes
- bgpd: do not send keepalives when KA timer is 0
- watchfrr: Allow end users to turn off watchfrr for a particular daemon
- doc: Add watchfrr documentation
- watchfrr: Convert
wtf
to a more meaningful message - pimd : Add support for MLAG Register & Un-register
- isisd: remove leftover from old dict code
- isisd: move management of route flags out of isis_zebra.c
- isisd: introduce new route update hook
- README.md: add reference to apt repo
- isisd: fix validation of prefix-sid flags
- bgpd: Remove trailing whitespaces from some header files
- ospf6d: interface state needs update even w/o area
- ospf6d: fix mistaken if_is_* instead of oi->type
- ospf6d: track explicit interface type config
- build: fix “make tags”
- zebra: check all dplane nexthops when processing
- staticd: register to interface events related with non default vrf
- isisd: Update TLVs processing for TE, RI & SR
- lib: clean up frr_pthread structs at exit
- zebra: inform upper layer error when reading correct speed interface
- doc/user: Confusing documentation for
ip pim sm
- bgpd: fix include path for bgp_bmp_clippy.c
- vtysh: fix multiple “no ip/ipv6 prefix-list sequence-number” lines in running-config
- zebra: fix mpls ftn uninstall
- lib: add yang wrappers for IP prefixes
- lib: introduce new ‘pre_validate’ northbound callback
- Revert “lib: introduce a read-write lock for northbound configurations”
- lib: fix corner case when iterating over YANG-modeled operational data
- lib: fix ordering issues in the northbound
- lib: add an exception in the northbound for operational data callbacks
- lib: add oper data cbs for ifaces
- bgpd: Fixed ‘show bgp l2vpn evpn json’ to display all routes
- Zebra: Rectifying the log messages.
- zebra: Saving interface description makes no sense on deletion
- lib, zebra: Allow for interface deletion when kernel event happens
- *: Add infrastructure to support zapi interface callbacks
- *: Switch all zclient->interface_add to interface create callback
- *: Convert from ->interface_up to the interface callback
- *: Convert interface_down to interface down callback
- *: Convert zapi->interface_delete to ifp callback
- lib: delete interface if you can in upper level protocol
- include: update include/linux
- zebra: Send RTPROT_ZEBRA for netlink messages missing this data
- zebra: Added vrfname to route prefix dictionary
- bgpd: Invalid NH’s should send an apropriate reason code
- configure: Update versioning
- user: Update
ip protocol...
command documentation - topotest: bgp_l3vpn_to_bgp_vrf allow for different interface output
- yang: create new interface-config grouping in the frr-isisd module
- vtysh: add the “debug northbound” command
- isisd, yang: implement read-only list of adjacencies
- tests: remove more topotest backward-compatibility cruft
- vtysh: add the “show yang operational-data” command
- isisd, yang: implement interface counters
- issue/5035: Install pytest with pip to get the Alpine packages built
- issue/5035: Remove warning for missing pytest during build phase and add libcap-dev dependency
- vtysh: fix “no log facility” command
- isisd: fix crash during candidate validation
- bgpd: Do not display ‘X’ as part of outgoing route-map name
- bgpd: When displaying update group information include coalesce time
- doc: Update bgp docs to have
show bgp update-group...
commands - bgpd: fix advertise-svi-ip upon vni-svi up-down
- pimd: Mark Default TOS Values for PIM & IGMP Outgoing packets
- pimd, lib: adding support for MLAG Message processing at PIM
- Zebra: adding support for Zebra MLAG Functionality
- lib,mlag : Defining MLAG Proto file
- Zebra: ADD Protobuf Encoding & Decoding for MLAG Messages
- bgpd : route agg. with lcomm attribute is consuming lot of cycles.
- bgpd : route agg. with comm attr is consuming lot of cycles.
- bgpd : route agg. with ecomm attribute is consuming lot of cycles.
- bgpd : route agg. with aspath attribute is consuming lot of cycles.
- pbrd: We should be looking for v4 and v6 nexthop types
- bgpd: rmap_type is 8 bit but we have 9 bits of flags
- *: fix missing VRF autocompletions
- libs: add yang models for zebra and nexthop
- bgpd: add advertise-svi-ip in json output
- bgpd: fix global and per vni knobs display
- zebra: fix memory leak
- isisd: circuit is derefed in every code path
- ospf6d: Prevent use after free
- eigrpd: On creation of socket ensure vrf exists
- pimd: up->channel_oil cannot be NULL
- zebra: handle config write for dataplane values
- zebra: fix evpn prefix-routes-only for default vrf
- bgpd: stop sending nexthop set by “route-map in” to eBGP peers
- tests: Adding API verify_bgp_attributes() to bgp.py
- tests: Add route-map to initial config creation from JSON
- tests: Enhance framework to create and delete route-map
- tests: Enhance support to create bgp community-list or large-community-list
- tests: Adding verification APIs for bgp route-maps and community-lists
- tests: Add API to shut/noshut router interface
- tests: Add bgp route-map test cases
- zebra: if_is_loopback_or_vrf crash if if_lookup_by_index return NULL
- bgpd: Accept no aggregate-address route-map commands
- bgpd: aggregate-address A.B.C.D A.B.C.D summary-only was missreading config
- bgpd: aggregate-address X:X::X:X/M summary-only was missreading config
- docker/debian: Make docker images lighter and with less layers
- zebra: during shutdown processing, drop dplane results
- bgpd: Adding new bgp evpn cli’s for ip-prefix lookup
- bgpd: Fixing “show bgp l2vpn evpn neighbors x.x.x.x advertised-routes json
- doc: add vty command information about brief usage
- *: strip trailing whitespace
- topotests: skip tests when any assert fails
- isisd: Fix handling of neighbor circuit id in three way handshake
- tests: Add a topology that shows broken ibgp behavior
- lib: Revert usage of asm-code in MTYPE definitions
- lib: Revert “lib: Stop arm crash on shutdown”
- lib: Fix static variable initialization
- lib: Decode vrf_id update appropriately from zapi
- sharpd: Start infrastructure to allow for redistribution testing
- zebra: Fix redistribution deletion for ZEBRA_ROUTE_ALL
- tests: Fix topojson link local ipv6 address
- tests: Add topojson route-map for nexthop
- tests: Modify json for bgp-ecmp-topo2
- tests: Enabling bgp-ecmp-topo2 test cases
- bgpd: Keep the session down if maximum-prefix is reached
- tests: Remove sleep from test_bgp_maximum_prefix_invalid_update
- bgpd: Show to compiler that uint64_t -> uint32_t is ok here
- bgpd: bgp pointer may be null
- doc: Add some additional warnings around Turning off bgp capabilities
- lib, watchfrr: Add some additional status messages to systemd
- Zebra: Fixing Review comments in Zebra_MLAG
- bgpd: Use uint32_t for maximum-prefix
- lib: reject leading 0 in ipv4 decimal quad
- bgpd: Bug fix in “show bgp l2vpn evpn neighbors X.X.X.X routes json”
- pbrd: Don’t track ipv6 link locals
- bgpd: Remove depracated
ip
prefix for as-path/extcommunity/large/communities - doc: Replace
ip
prefix for as-path and community lists tobgp
- vtysh: fix searching commands in parent nodes
- *: remove redundant brackets in commands
- lib: fix typo
- pimd: Fix zlog_warn when we mean debug and vice versa
- lib: fix gRPC northbound plugin build
- configure.ac: fix memory sanitizer test
- doc: update topotests doc for address sanitizer
- doc: add style guide for YANG
- bgpd: AS paths are uint32_t instead of integers
- yang: add ietf routing types module
- *: add ietf routing types yang module in makefile
- lib: Use correct if compare function in tree proto
- lib: Don’t add/del from name tree if name isnt set
- *: Cleanup interface creation apis
- bgpd: When creating extra from stack ensure it is zero’ed out
- bgpd: Ensure that struct prefix_rd rd is zero’ed out
- lib: Fix read beyond end of data structure
- bgpd: ability to export prefixes entries to a kernel table identifier
- bgpd: withdraw fib entry on appropriate table identifier
- zebra: entries can be pushed in tables, under vrf netns backend
- yang: align indent zebra modules
- yang: add range to string nodes in zebra modules
- doc: minor updates to vrrp doc
- lib: changes for making snmp socket non-blocking
- bfdd: Fixing coredump in log
- bfdd: upon vrf disable, unlink bfd session with vrf
- bfdd: disable sockets polling before closing it
- doc: minor updates to vrrp doc
- lib: require json-c
- bfdd: set session down after disabling it
- bfdd: simplify session observers code
- bfdd: don’t allow link-local without interface
- lib: optimize VTY_CHECK_XPATH
- lib: remove expensive error handling in the northbound CLI client
- lib: avoid expensive operations when editing a candidate config
- lib: optimize loading of the startup configuration
- lib: fix processing of the ‘apply_finish’ callbacks
- lib: reduce memory allocation when processing large config transactions
- lib: use
prefix
for yang get prefix wrapper - bgpd: move assert out of error case
- Revert “Merge pull request #4885 from satheeshkarra/pim_mlag”
- bgpd: move assert out of error case
- bgpd: vector I/O
- bgpd: raise default & max r/w quanta to 64
- bgpd: Properly lock parent node for type4 routes
- bgpd: Refactor bgp_path_info creation
- bgpd: Be careful about displaying vni’s as labels.
- lib: fix harmless lyd_schema_sort() warning
- bgpd: Implement “sh bgp l2vpn evpn community|large-community X”
- lib: Clean up the index that is being used for storing FD and events.
- bgpd: Soft reconfig-in should find the right bgp_path_info
- bgpd: speak soothing words to scanbuild
- lib, zebra: Fix last write command written
- zebra: Only free if rule was found/release in table
- lib: Use ifindex_t for struct pbr_rule
- zebra: Use the rule ifindex as a hash key, not ifp
- zebra: Don’t bother ref’ing ifp in zebra_pbr_rule
- lib: Let libyang log everything possible
- bgpd: return created bgp_path_info
- lib: Add getsockopt_so_recvbuf
- bgpd: Add ability to set tcp socket buffer size
- doc: Add cli options for bgp to documentation
- doc: add documentation for write- and read-quanta
- nhrpd: be more careful with linked lists
- *: Allow disabling of
getrusage
calls - bgpd: Check setsockopt return codes
- doc: Add MRAI timer documentation to bgp docs
- bgpd:
struct bgp_path_info *
->attr must not be NULL - lib: Coverity SA doesn’t trust the CLI
- zebra: zrt->table cannot crash here
- bgpd: In redistribution aspath cannot be NULL
- vtysh: remove DEFPY variable names
- lib, vtysh: add new libyang option to the “debug northbound” command
- lib: silence compiler warning in the gRPC plugin
- alpine: update mpfr3 -> mpfr4
- alpine: clean up dep block
- tests: Add step api in topojson
- tests: Add verify community list api
- tests: Update bgp api for community and aggregate address
- tests: Update cli error list and retry function
- tests: Add test cases for bgp community and large community
- doc: fix read-quanta .. index copy-paste err
- nhrpd: clean up SA warning
- vrrpd: use CS2MS instead of constant 10 everywhere
- zebra: Dissallow a /32 or /128 through itself
- doc: fix messed up topotests docs
- doc: update release procedure docs
- zebra: Handle rib updates as a thread event
- zebra: Check active on OLD system/kernel routes
- zebra: On if down/addr-del, process kernel routes
- tests: Enhance BGP Path attribute APIs
- tests: Enhance BGP Path attribute test cases
- doc: Update documentation for access-list with sequence numbers
- doc: strip ws, shell -> console
- isisd: Correct missing advertisement of TE param.
- vrrpd: fix startup error message reporting
- doc: vrrp vip must not be on parent interface
- lib: Remove include of deprecated sysctl.h
- doc: Update supported platforms matrix w/ vrrpd
- bgpd: Override peer’s TTL only if peer-group is configured with TTL
- bgpd: clarify evpn datastruct use for SA
- staticd: check tuple (vrf, name) when interface events received
- bgpd: remove error message for unkown afi/safi combination
- lib: vrf lookup may be NULL
- pimd: Check return code of pim_msg_send()
- pimd: Initialize nht_p variable
- pimd: Cast up to 64 bit to prevent overflow
- zebra: Prevent possible uninited value
- nhrp: Make sure
no ip nhrp map <something>
works as expected - lib: va_copy must have a va_end to free memory
- pimd: All paths have already derefed pim->global_scope.bsrp_table
- pimd: result was already tested against PIM_GROUP_BAD_ADDR_MASK_COMBO
- zebra: Add hash of nexthop groups
- zebra: Add show command to dump nexthop-group information for Zebra
- zebra: Add some basic flags to the zebra nexthop group
- zebra: Add ability to find(create) and release a nhg from a re
- zebra: Add code to create/remove nexthop groups
- linux: Update our netlink headers for nexthop group support
- zebra: Add RTNLGRP_NEXTHOP group to the kernel socket
- zebra: Add base functionality for nexthop messages in kernel_netlink
- zebra: Replace nexthop_group with pointer in route entry
- zebra: Remove re->nexthop_num from re
- zebra: Remove nexthop_active_num from route entry
- zebra: Add error code for bad nhg messages from the kernel
- zebra: Separate interface address lookup
- zebra: Add a second table for indexing by ID
- zebra: Add error codes for nhg table insert failures
- zebra: Add a nhe pointer to the route entry
- zebra: Add beginnings of nexthop group work queue
- zebra: Add error code for duplicate nexthops
- zebra: Remove afi field in nexthop hash entry
- zebra: Add functionality to parse RTM_NEWNEXTHOP and RTM_DELNEXTHOP messages
- zebra: Add flags to nexthops received from the kernel
- zebra: Add an error code for NHG update failures
- zebra: Add base functionality for nexthop processing via the dataplane
- zebra: Add kernel debugging function for netlink nexthop messages
- zebra: Add namespace info to the nexthop dataplane ctx
- zebra: Add debug statement for nexthop netlink messages
- zebra: Use the dest prefix for determining nexthop family
- zebra: Add kernel condition check to see if it supports nexthops
- zebra: Return proper status result
- zebra: Add a queued flag to nhg_hash_entry
- zebra: Add function to install a nhe into the kernel
- zebra: Force re-install nexthop if still referenced
- zebra: Add functions for installing/uninstalling nexthops
- zebra: Add dataplane process result function for nexthops
- zebra: Route entries use nexthop entry ID’s instead of pointers
- zebra: Set the INSTALLED flags on nexthop entries we receive
- zebra: Add calls to the nexthop context process result function
- zebra: Uninstall nexthop when ref count hits zero
- zebra: Uninstall nexthops on shutdown
- zebra: Parse in nexthop ID information from new routes
- zebra: Put unicast nexthop parsing into its own function
- zebra: Update rib_add to take a nexthop ID
- zebra: Make route entry nexthop groups point to our hash entry
- zebra: Add nexthop hash entry list to zebra interface info
- zebra: Add new nexthops to the interface nexthop hash entry list
- zebra: Make show nexthop-group command more readable
- zebra: Add ifp to zebra-side rib_add
- zebra: Fix where the flags are set for new nexthop entries
- zebra: Change wording in duplicate error message
- zebra: Give Nexthop Group Hash entries a defined memory type
- zebra: Make bad address family log message more clear
- Revert “zebra: Remove afi field in nexthop hash entry”
- zebra: Add afi value for all nexthops sent/received
- zebra: Check if a nexthop was added to the nhg
- include: Add nexthop.h to the include automake file
- zebra: Add dependency information for nexthop group hash entries
- zebra: Read in nexthop dependencies from the kernel
- zebra: Make show nexthop-group list all nexthop hash entries
- zebra: Add helper functions for freeing the members of nexthop group hash entries
- zebra: Refactor nexthop group creation code to use allocated memory
- zebra: Make nexthop group vrf VRF_DEFAULT
- zebra: Add function to duplicate nhg dependencies
- zebra: Make nexthop ctx use nhg_depend_dup_list
- zebra: Add functionality to send groups to kernel
- zebra: Make wording for depend functions clearer
- zebra: Always copy nhg and depends on nhe alloc
- zebra: Make kernel debug nexthop standardized
- zebra: Move id counter into zebra_nhg_find()
- zebra: Pass is_kernel_nh to zebra_nhg_find()
- zebra: Add function to find/create single nexthop
- zebra: Fix hash key type in zebra_nhg
- zebra: Add function to lookup ID in depends list
- zebra: Add equivalence function for nhg_depends
- zebra: Add function to increment nhg refcnt
- zebra: Recursively decrement refcnt on nhe’s
- zebra: Update rib_add_multipath with increment nhe
- zebra: Protocol side nhg_hash_entry afi fix
- zebra: Releasing/uninstalling re-work with groups
- zebra,lib: Refactor depends to RB tree
- zebra: Abstract the RB nodes/add dependents tree
- zebra: Re-organize/expose nhg_connected
- zebra: Add interface down marking to NHE’s
- zebra: Just uninstall NHE when refcnt hits zero
- zebra: VRF ID should be null if a nexthop group
- zebra: Put nhe ifp setting inside alloc
- zebra: Remove uneeded freeing helper function
- lib: Add equals function for nexthop groups
- zebra: Update nhg_hash_equal to use nexthop_group_equal
- zebra: Remove uneeded zebra_nhg_cmp() function
- zebra: Check for nexthop group before free on fail
- zebra: RB_FIND then RB_REMOVE nhg_connected
- zebra: Add NULL check before nhg_connected insert
- zebra: Add depends/dependents release functions
- zebra: Del from depends/dependents tree on release
- zebra: Free the nhe dataplane ctx always
- zebra: Use a nhe context dataplane and rib metaq
- zebra: Fix nhg ifindex setting and checking
- zebra: Use NHE id on kernel route sends
- zebra: Check for nh group support in dplane ctx
- zebra: Update snmp code to use nexthop pointer
- zebra: Add recursive functionality to NHE’s
- zebra: Error if the ifp lookup fails for an NHE
- zebra: Put NHE ref updating into a function
- zebra: Return true if the NHE created, not found
- zebra: Don’t error on nexthop object support check
- zebra: Create a new NHE if the mpls labels change
- zebra: Remove route only if NHE is installed check
- zebra: Check group before setting NHE invalid
- zebra: Remove uneeded is_valid NHE functons
- zebra: Ignore cleanup for now
- zebra: NHG checkpatch fixes
- zebra: Add cli show NHE by ID and interface groups
- zebra: Resolved nh change, inc refcnt by rt refcnt
- zebra: Accept NULL value for updating route NHE
- zebra: Use nexthop/interface vrf, not the routes
- lib: Hash on resolved nexthops by default
- zebra: Refactor nexthop resolution in active funcs
- zebra: Set resolved nhg in find path
- lib: Hash nexthops on onlink flag
- zebra: Remove nexthop group workqueue
- zebra: Add nhg refcnt connected helper functions
- zebra: Add some depends helper functions
- zebra: Add refcnt for depends when connected
- zebra: zebra_nhg_rib_find() handle recursive case
- zebra: Set recursive flag in rib_find() path
- zebra: Remove some extraneous zebra_nhg logging
- zebra: Switch nhg_connected to use new RB tree
- zebra: Install a route if the nhe is queued as well
- zebra: Install the nhe along with the route
- zebra: Move resolve/add depend install into api
- zebra: A group isn’t recursive if one depend is
- zebra: Mark nhe valid if installed
- zebra: TODO for handling upper level nhe_id passing
- zebra: Prevent duplication and overflow in nhe2grp
- zebra: Give installed nhe’s the zebra proto
- zebra: Sweep our nexthop objects out on restart
- zebra: Add handling for kernel del/update nexthop
- zebra: Move the supports_nh bool to a better place
- zebra: Use nexthop object id on route delete
- zebra: TODO for hanlding blackhole attr exclusive
- zebra: Create depends after initial lookup
- zebra: Check active count first in nhg_hash_equal
- lib: nexthop_group_equal() assume ordered
- lib: Call nexthop g_addr hashes together
- lib,zebra: Move nexthop dup marking into creation
- lib: Separate nexthop_group_equal() into recursive
- zebra: NHE use nexthop_group_equal_no_recurse()
- zebra: Optimize the fib/notified nexthop matching
- zebra: Add some more output to show nexthop-group
- zebra: Add nhe_id to show ip route detailed
- lib: Nexthop hash onlink and ifindex with one call
- zebra: NHE hash reduce calls to jhash
- lib: Add nexthop quick hash api
- zebra: Add common netlink mpls stack building path
- zebra: Handle nhg_hash_entry encaps/more debugging
- zebra: Add some getters for nhg_ctx
- zebra: Free labels on nhg_ctx from kernel
- zebra: Handle out of order kernel nexthop groups
- zebra: Only use passed afi for blackhole/ifindex nexthops
- zebra: Only show route nexthop group ID when asked
- zebra: Only check nexthop status on route install/update
- zebra: Force off kernel nexthop group API for now
- zebra: Fix missed bsd nexthop group pointer
- zebra: Add bsd nexthop install boilerplate
- zebra: Update ip route show with nexthop_num API
- topotests: Expect shared nexthop memory
- lib: Fix nexthop_group_equal*() NULL check
- zebra: Fix NULL check in zebra_nhg_rib_find()
- zebra: Zebra nexthop group re-work checkpatch fixes
- lib: Add NULL check in nexthop_group_equal*() iter
- lib: Add common handler for nexthop_group_equal*()
- zebra: Fallback to default ns if nhg vrf lookup fails
- doc: Add docs for new nexthop group commands
- zebra: Add DPLANE_NEIGH and DPLANE_VTEP to nhg cases
- zebra: Use ng pointer in mpls_ftn_uninstall
- pbrd: nexthop_group delete cb don’t free pbr->nhg
- lib,pbrd,zebra: Use one api to delete nexthops/group
- zebra: Comment to indicate where nhg hashtables live
- zebra: Remove cleanup and nhg workqueue boilerplate
- zebra: Set the nhe type in the appropriate place
- zebra: Adjust nhg handling for dataplane result off on shutdown
- zebra: Guard nexthop group overflow read
- zebra: Check depends for validity, not dependents
- lib: Make nexthop_next* use const for nexthop
- zebra: Change wording of duplicate kernel nhg flag
- zebra: Improve commenting for group requeue case
- zebra: Re-work zebra_nhg_*_valid APIs
- zebra: Cleanup zebra_nhg APIs
- zebra: rt_netlink nexthop handling checkpatch
- bfdd: VRF and Coverity
- bgpd: Remove dead code in rfapi
- bgpd: Logically dead code
- bgpd: bgp_path_info_mpath_next only returns values
- bgpd: write variable is never used in cli function
- doc: redistribute vpn –> redistribute vnc
- doc: Add redistribute vnc-direct command
- zebra: Fix some nhg SA issues found in latest Coverity
- zebra: zvni_map_to_svi may return NULL act accordingly
- bfdd: Handling local and remote admin-down
- tools: non hardcoded paths in frr-reload
- lib: include ldpd to the list of daemons
- tools: frr-reload.py for single daemon
- tools, vtysh: fix ldpd + frr-reload.py
- topotests/Dockerfile: Install libyang from repository
- README.md: Add FRR Icon
- vrrpd: only count ipv4 addresses on check start
- bgpd: expose sender side AS path loop detection
- isisd: split northbound callbacks into multiple files
- ripd: split northbound callbacks into multiple files
- ripngd: split northbound callbacks into multiple files
- pimd: Duplicate config is not a CMD_WARNING_CONFIG_FAILED
- vrrpd: some more error logging fixes
- doc: bgp sender side as path loop detection
- bfdd: split northbound callbacks into multiple files
- tools: update the northbound callbacks generator
- bgpd: Reflect the distance in RIB when it is changed for an arbitrary afi/safi
- ospf: BFD down not tearing down OSPF adjacency for point-to-point network
- vtysh: Add an option to set banner motd from an input
- doc: Add
banner motd <file|line>
sections - zebra: Add a sample dataplane plugin module
- bgpd: Prevent usage after free in bgp_mac.c
- doc: Update documentation to talk about development branches
- pimd: Do not spew a million warnings
- tools: generate .changes file required for deb pkg upload
- zebra: separate zebra_vrf_lookup_table_with_id()
- *: Convert prefix_free to double pointer
- *: Convert connected_free to a double pointer
- lib, ospfd, zebra: Convert interface_delete to take double pointer
- debian: update debian/copyright
- bfdd: bind VRF sockets to devices
- tools: fix emacs configuration file
- pimd: No need to add then remove the oif if not DR
- topotest: enable MPLS processing on all interfaces by default
- topotest: update the LDP VPLS test
- doc: clean up && index topotest json docs
- bgpd: skip unsupported PREFIX_SID sub-type
- BGPD: Prevent IPv6-LL being fwd to IBGP peers not on same link.
- doc: Adding new CLI and updating exsisting show output
- bgpd: Notify “Peer De-configured” after entering ’no neighbor cmd’
- bgpd: use bgp->name_pretty in debugs and add vrf to some output
- zebra: evpn update remote rmac and nexhop
- vtysh: be helpful and kind to unprivileged users
- bgpd: Fix missed prefix_free conversion in rpki code
- bgpd: Remove not used bgp_find_nexthop() function
- staticd: exact match on magic interface names
- bgpd: Use BGP_NOTIFY_SUBCODE_UNSPECIFIC value for bgp_notify_send() where 0
- bgpd: Rework BGP dampening to be per AFI/SAFI
- zebra: Allow zebra to install nexthop groups into linux kernel
- ospfd: Function order caused use after free.
- bgpd: fix rd printing in show commands for evpn rts
- bgpd: fix json output for show cmd for evpn routes
- bgpd: fix memory leak in vni table for evpn routes
- bgpd: fix memory leak in vrf inst for evpn route
- ospfd,eigrpd: don’t take address of packed struct member
- zebra: mpls_ftn_uninstall handle nhg hash label change
- zebra: Don’t clear nexthop fib flag on rib_install
- zebra: zebra_nhg check each nexthop for active, not just number
- pimd: Ignore igmp queries from itself
- tools, vtysh: improved fix for ldpd ifaces
- pimd:
debug igmp trace
turns on non igmp debugs - pimd: Cleanup igmp debugs a tiny bit
- doc: Append documentation for
bgp dampening
command - zebra: handle depends_find() NULL nexthop
- zebra: Put freeing code in nhg_ctx_free()
- zebra: dplane cancel update thread from correct pthread
- bgpd: Bug fix in “show bgp l2vpn evpn … advertised-routes’
- tests: Add a test case for
sender-as-path-loop-detection
- tools: stop repeating lines to delete for multiple bfd timer changes
- ldpd: add missing sanity check in the parsing of label messages
- pimd : Add support for MLAG Register & Un-register
- pimd, lib: adding support for MLAG Message processing at PIM
- Zebra: adding support for Zebra MLAG Functionality
- lib,mlag : Defining MLAG Proto file
- Zebra: ADD Protobuf Encoding & Decoding for MLAG Messages
- tests: Test if
distance bgp (1-255) (1-255) (1-255)
works - ospfd: Adding Debugs to dump OSPF DD Seqnumber
- bfdd: remove unused initialization sa warning
- bgpd: Reject routes having AS_SET or AS_CONFED_SET
- doc: Add documentation for
bgp reject-as-sets
command - tests: Add a test case for
bgp reject-as-sets
- bgpd: route-map support for evpn RD filter
- staticd: Make blackhole keyword errors more straightforward
- bgpd: Add missing whitespace in update_subgroup_remove_peer_internal()
- pimd: update add_oif and del_oif debugs to print caller
- pimd: MUTE flag to suppress traffic forwarding on non-DF
- pimd: build a temp copy of the OIL for kernel mroute add
- zebra: default ns->info should be default zebra_ns
- zebra: XFREE ns->info directly to NULL it out
- pimd: re-eval c_oil mute flags on upstream attach/detach
- bgpd: Add nexthop of received EVPN RT-5 for nexthop tracking
- pimd: decide between SPT based and RPT based forwarding
- pimd: set mfcc_parent at the time of MFCC programming
- pimd: update (S,G,rpt)’s IIF when the parent (*,G)’s IIF changes
- pimd: display changes to indicate if a SG entry is still on the RPT
- pimd: on some triggers use_rpt re-evaluated for all groups
- pimd: fixup join desired handling to match the RFC defined macro
- pimd: we cannot change the Joined state based on RPF resolution
- pimd: replace direct accesses to t_ka_timer with a kat_running macro
- pimd: re-name SwitchToSptDesired to SwitchToSptDesiredonRp
- pimd: fixup kat restart to conform to the RFC
- pimd: fixup (S,G,rpt) prune to conform to the RFC
- pimd: add caller string prefix to pim_rpf_update logs
- pimd: display the per-RPF neighbor join-prune agg list
- pimd: insert upstream entry into nbr’s jp-agg list when a new nbr is added
- pimd: handle RPF resolution while in joined state
- pimd: fixup pim_channel_oil_empty macro
- pimd: re-eval JD on sources when a STAR_OIF is removed
- pimd: re-eval JD unconditionally when an ifchannel is removed
- pimd: enforce PIM_ENFORCE_LOOPFREE_MFC at the time of MFC programming
- pimd: OIF add with PROTO_PIM is not happening if join rxed in PP state
- pimd: RPF change to unreachable was leaving a stale entry in the jp-agg list
- pimd: rename the upstream-join-desired command to “show ip pim channel”
- pimd: bring back “show ip pim upstream-join-desired”
- pimd: send an immediate XG JP message when switching from SPT to RPT
- pimd: jp-agg list update debug logs
- pimd: fixup JD macro to use “peer-msdp-sa” check instead of I_am_RP check
- pimd: prevent unconditional SG join sends
- pimd: prevent LHR from register forwarding packets for non-FHR sources
- doc: clean up overview.rst
- doc: add link to developer docs
- pimd: Tighten up
show ip pim rp-info
- pimd: Dissallow obvious addresses from being the RP
- pimd: Create pimreg interface when we start any interface config
- bgpd: Fix per afi/safi addpath peer counting
- zebra: FPM should have a way of shutting down
- bgpd: Bug fix in “show bgp l2vpn evpn X:X::X:X/M”
- snapcraft: Add vrrpd to the snapcraft package
- lib: no filter operations fix on appropriate access-list name
- ospfd: Remove ORIGINAL_CODING check
- ospfd: Add a function to return the name of the vrf we are in.
- ospfd: Add/fix some debugs to handle vrf
- ospfd: The ip header dump is crazy long and useless
- ospfd: Allow packet reads based upon read/write packet counts
- ospfd: Rework ospf_read_packet into 2 functions
- pimd: Fix possible read beyond end of data received
- tools: resolve issue with bfd timer change fix in frr-reload.py
- bgpd: Special handling for 2-level routing tables
- zebra,pim : Fixing Review comments in PIM_MLAG
- pimd: exclude pimreg from the inherited OIL
- bgpd: Implementing a hash table for connected address - ipv4/ipv6
- zebra: Router Advertisement socket mess up
- pimd: Various buffer overflow reads and crashes
- doc: Fix nhrp doc issue
- pimd: fix bsm buflen check to include pim hdr
- bgpd: IPv4 LU withdraw using 0x000000 label
- pimd: drop redundant checks for RPF interface
- staticd: remove unneeded newline from zlog call
- pimd: fixup whitespace errors reported by CI
- zebra: BSD null routes were not being installed
- zebra: clean up rib and nhg headers
- zebra: Use curr_active to check multipath_num
- zebra: Set resolved inactive when > multipath_num
- pbrd: Add
set vrf NAME
andset vrf unchanged
- bgpd: Blank RD in “sh bgp l2vpn evpn all neighbors advertised-routes json”
- ospfd: nbr->oi is never null
- bgpd: remove extra ecom attr ptr increment
- zebra: “show evpn vni details json” prints incorrect JSON format
- bgpd: Prevent possible SA thinking we’ll divide by zero
- zebra: Fixing Comments in MLAG Read scheduling Events
- bgpd: use safe functions to work with ecom attrs
- bgpd: fix heap buffer overflow in lcom -> str enc
- eigrpd: Cleanup eigrp_if_name_string
- eigrpd: Cleanup address dump functions to be a bit smarter
- bgpd: evpn pip data struct and cli
- zebra: evpn pip extract vrr mac
- bgpd: evpn pip parse vrr mac
- bgpd: evpn pip handle svi ip route
- zebra: evpn pip mac vlan up-down event
- bgpd: evpn pip display pip values
- doc: evpn pip add documentation
- zebra: print rmac and sys mac values
- bgpd: evpn pip convert ntoa to ntop
- bgpd: fix self type-2 routes rmac and nexhtop
- zebra: handle macvlan down event
- zebra: display proper field in debug statement
- bgpd: adv pip update type-5 with correct rmac
- bgpd: adv pip to throw warning under default vrf
- lib: add some nexthop ctors
- pimd: eval use_rpt on new upstream post IIF setup but before MFC programming
- zebra: knob to make ra retransmit interval rfc compliant
- bgpd: Do not perform “connected” check for EVPN nexthop
- zebra: Adjust column display of
show zebra client summ
for openfabric - zebra: Fix
show zebra client
display to handle columns right - zebra: Fix
show ip nexthop route-map
andshow ip protocol
- bgpd: fix bad bounds check for addpath in nlri
- bgpd: Handle possible non-selection of local route
- lib: add gcc 4.x workaround for frr_interface_info
- docker: Make docker image on CentOS 7
- bgpd: ensure transit ptr is nulled on free
- bgpd: clean up attribute parsing state before ret
- bgpd: Replace magic number 1 for TTL to BGP_DEFAULT_TTL
- bgpd: Autocomplete neighbor for clear bgp
- zebra: support LSPs with multiple outgoing labels
- lib: gcc 4.x workaround v2 for frr_interface_info
- lib: make cmd_element & qobj_type const
- *: make all route_map_rule_cmd const
- *: make frr_yang_module_info const
- lib: fix display of candidate configurations
- bgpd: Fix memory leak in json output of show commands
- doc: mention allow-outbound-policy for route reflectors
- *: generously apply const
- bgpd: Prevent crash in bgp_table_range_lookup
- pbrd: only remove interface after all seq uninstalled
- zebra: send RA lifetime of 0 before ceasing to advertise RAs
- lib: fix heap buf overflow when adding prefix orf
- alpine: fix build on current ’edge’ version of Alpine
- pbrd: don’t set rule removed on fail
- pbrd: don’t silently fail on atomic match IP change attempts
- pbrd: don’t silently fail on atomic match MARK change attempts
- pbrd: use dst string in match dst-ip vty description
- pbrd: Add newlines in
set nexthop*
vty output - lib: Add zapi_rule_notify_owner2str() function
- pbrd: consolidate rule_notify debugs into one call
- lib: support labelled nexthops in nexthop_groups
- pbrd: make vty
match *
code more readable - bfdd: Adding new fields to display show bfd peer
- bfdd: Adding new cli, clear bfd counters
- bfdd: Adding new CLI, show bfd peers brief
- bfdd: Json fields for multiplier
- lib,zebra: use nhg_hash_entry pointer in route_entry
- doc: add doc for easy commit sign-off with
-s
- bgpd: Allow failed hostname lookup to continue in bmp
- ospfd: interface name and ip address can be 32 bytes
- eigrpd, ospfd, pimd: Fix assumption that interface may not be up
- zebra: capture dplane plugin flags
- bgpd: remove bgp_attr_dup
- [tools: [ is not valid test syntax
- zebra: use correct state when installing evpn macs
- ospfd: clean up SA warning
- doc: Add moaar dashes to underline line
- topotests: Adapt to linux kernel 5+
- lib: rename memory_vty.c to lib_vty.c
- lib: add frr_version_cmp()
- lib: new defaults logic
- lib/defaults: add bool variable support
- build: apply DFLT_NAME/profiles in init script
- doc: document defaults mechanism
- bgpd: move config-write to bgp_vty.c
- bgpd: use new defaults system (v2)
- ospfd: remove minor WTF in instance creation
- ospfd: use new defaults mechanism (v2)
- tools/frr-reload.py: remove stderr redirects
- topojson: use empty vtysh.conf for frr-reload.py
- lib: use const in several stream lib apis
- *: revise zapi nexthop encoding
- lib,sharpd: support labelled nexthop-groups in sharpd
- pbrd: refactor vty map show output into functions
- pbrd: make show pbr map detail actually work
- pbrd: make vty nexthop/nexthop-group output consistent
- doc: add show pbr map doc
- pbrd: use spaces in show pbr map vty output
- pbrd: use yes/no for pbr map validity vty output
- bgpd: more attribute parsing cleanup & paranoia
- bgpd: BGP assert when it tries to access peer which is closed.
- vrrpd: handle failure to lookup parent iface
- vrrpd: add vrf support
- isisd: clean ipv4/6 circuit config on destroy
- lib, zebra: Allow for installation of a weighted nexthop
- lib, zebra: Allow for encode/decode of nexthop weight in pass down
- lib: Add weight to nexthop for nexthop-group nexthops
- vrrpd: make vrrp_[add|del]_ip not insane
- vrrpd: const vrrp_lookup()
- vrrpd: allow vrrp_shutdown() on shutdown rtr
- yang: add vrrp yang model
- yang: update vrrp yang model
- yang: add v2 support to vrrp yang model
- yang: add opderdata & slight reorg for vrrp
- vrrpd: northbound conversion
- vrrpd: remove unused variable in nb
- vrrpd: remove unused variables
- yang: add org, description data to vrrp model
- lib: add ipaddr_isset()
- vrrpd, yang: cleanup vrrp nb conversion
- zebra: align dplane notify processing with nhg work
- lib,zebra: add api to enforce nexthop sort order when copying
- doc: document ip mroute static route cmd
- lib: fixes invalid running_entry when VRF is changed
- pimd: clear SA warning in pimd
- zebra: create zebra_cumulus_mlag module
- zebra: fix sign-compare warning in cumulus mlag
- lib/skiplist: fix gcc-9 used-uninitialized warning
- lib/resolver: support/bypass IP literals
- bgpd/bmp: actually print uptime
- lib,nhrpd,bgpd/bmp: pass resolver failure details
- bgpd/bmp: print active outbound connections
- zebra: accept async notification for un-install
- ospfd: fix misplaced trust in ip header length
- ospfd: sizeof(pointer) -> sizeof(pointed-at)
- ospfd: tiny style fix
- bgpd: Show
ip
andfqdn
in json output forshow [ip] bgp <route> json
- tests: Test if
ip
andfqdn
are included inshow [ip] bgp json
- pimd: Add command to join any-source multicast.
- zebra: Print json output for show_route_summary_cmd
- zebra: handle route notification with no nexthops
- ripd, ripngd: Free up list after call into nb_cli_rpc
- isisd: Free memory when confused
- bgpd: remove redundant VNC build specs
- lib: make rcu_free() NULL-safe
- lib: completely get rid of the MTYPE alias hack
- lib: make some variables static
- lib/prefix: flip the bitrot compost
- lib: random unused bits cleanup
- lib/linklist: flip the bitrot compost
- tools: symalyzer
- zebra: Allow zebra_mlag to compile with no j factor
- zebra: Do not build mlag protobuf support if version 3 is not avail
- lib: default nexthop weights to one
- zebra: null check re->nhe not re->nhe->nhg on attach
- zebra: pass type when finding individual nexthop
- bgpd: Print json output for show_ip_bgp_regexp_cmd
- bgpd: Adjust warning message for bgp_show_regexp()
- bgpd: Print pretty json output for bgp_show_table()
- vtysh: add an alias for the nexthop-group config targets
- isisd, yang: set default is-type to level-1-2
- doc: add discussion for a handful of nhrp commands
- zebra: set RTNH_F_ONLINK in nexthop creation
- doc: Update workflow to include new automated testing Requirement
- zebra: add ‘show router-id’
- ospfd: Prevent use after free on shutdown
- tests: fix endian bug in test_typelist
- doc: update overview.rst for the new millennium
- doc: fix duplicate -S option in bgpd manpage
- zebra: improve efficiency of depends_find()
- lib: document vrf_socket(), vrf_bind()
- bgpd: Remove misleading ‘NOTIFICATION’ string from End-of-RIB log
- vrrpd: support namespace vrf too
- bgpd: Do not apply eBGP policy for iBGP peers
- tests: Test if eBGP policy is not applied to iBGP peers
- lib: fix build of the northbound plugins
- bgpd: Make sure we can use
no bgp listen range ...
- vtysh: Ensure interface
ip mroute ...
commands are last - pimd: refactor ip mroute cmd
- bgpd: Allow ipv4 multicast to use v4 nexthops
- pimd: fix missing igmp mtrace length check
- pimd: readd iph length checks
- zebra: fix kernel-route’s deletion on vrf
- zebra: add a debug category for nexthops
- packaging: Adopt frr.spec.in to CentOS 8
- doc: Add a section in
Building FRR
for CentOS 8 - doc: Use proper numbering for
packaging-redhat.rst
- packaging: Fix bogus date in frr.spec.in
- docker: Create build for CentOS 8
- bgpd: Change description for
[no] bgp listen limit
commands - doc: Add bgp neighbor password command
- bgpd: skip ra for blackhole nexthop type
- bgpd: Send notification to the peer on FSM error
- bgpd: fix console typo
- ripngd: Fix redistribute/no redistribute rinse repeat commands
- ripd: Fix redistribute/no redistribute rinse repeate commands
- configure.ac: add –enable-undefined-sanitizer
- bgpd: fix too much no listen doc string
- doc: Updating FRR supported RFC list
- zebra: use correct attr size for netlink enc
- doc: Add rfc8212 to supported RFCs list
- pimd: Convert the channel_oil_list|hash to a rb_tree
- pimd: Convert the upstream_list and hash to a rb tree
- pimd: Do not warn for common occurrence in igmp code
- zebra: check pbr rule msg for correct afi
- bgpd: fix missing bounds checks for psid attr
- bgpd: slight correction to sanity checks for SRGB
- configure.ac: make msan & ubsan flags additive
- docker: Use proper container name when creating CentOS 8 container
- bgpd: Time to deprecate bgpTimerUp
- lib: fix ifindex comparison overflow
- zebra: disallow negative rtadv intvl, fix overflow
- zebra: ensure ipset name is null terminated
- zebra: fix iptable memleak, fix free funcs
- zebra: null terminate interface name from wire
- zebra: fix multiple bfd buffer issues
- zebra: reject ingress packets that are too large
- zebra: Ignore RTM_GETNEIGH messages from the linux kernel
- zebra: fix undefined bitshifts in netlink stuff
- packaging: Redirect stderr to /dev/null in %post action (frr.spec.in)
- bgpd: fix large route-distinguisher’s format
- zebra: route changes via notify path trigger nht and mpls
- zebra: free ptm message on error
- lib: dont decode more nexthops than we can handle
- zebra: fix ptm heap double free
- bgpd: fix advertise pip running config
- bgpd: fix unaligned access to addpath id
- zebra: Prevent zebra vxlan remote macip del buffer overflow
- zebra: Refactor _add and _del to use a common function
- zebra: Handle crash when backpointer does not exist
- debian: Fix spelling error
- bgpd: avoid memcmp(NULL, NULL)
- tests: Add a test for ’neighbor default-originate route-map ’
- bgpd: An ability to set attributes for default-originate via route-map
- doc: Clarify what is supported directly in PIM documentation
- bgpd: fix unaligned access to addpath id
- zebra: remove cast from l3vni XMALLOC
- zebra: make current show nexthop-group cli zebra-specific
- lib,zebra: add zapi msg top level error handling
- pimd: allow pimd to handle nexthop_lookup zapi error
- pimd: lookup nh using vrf_id we checked before
- doc: Replace wrong paths for centos/fedora source build instructions
- zebra: fix bfd deregister message memleak
- debian: Fix logrotate in debian for bfdd, pbrd and vrrpd.
- tests: ospf6-topo1 did not work properly with nhg’s and 5.3 kernels
- zebra: Actually add the NLA_F_NESTED flag to our code
- zebra: bfd message handling cleanup foo
- doc: rename man pages to frr-*
- ospfclient: don’t install man page
- zebra: just set nexthop member in handle_recursive_depend()
- zebra: can’t improve efficiency for recursive depends
- bgpd: add addpath ID to adj_out tree sort
- lib: Fix nexthop encoding
- zebra: include zebra nexthop debug in show run
- zebra: Re-add onlink flag due to loss in earlier commit
- tests: Test ospf unnumbered behavior and ensure that it works
- doc: Update ospf unnumbered documentation
- lib: Fix missing __be16 typedef on CentOS6
- tools: Update generate_support_bundle.py to support Python 3
- redhat: Update frr.spec.in to move all systems to Python3 except CentOS 6
- doc: Update RedHat packaging description to use Python 3
- bgpd: fix memory leak in evpn json outputs
- bgpd: fix memory leak in evpn json outpus II
- OSPF: Multi instance broken
- bgpd: Remove prefix pointer creation
- zebra: Modify ‘show nexthop-group rib ip|ipv6’
- zebra: nexthop groups vrf’s are only a function of namespaces
- doc: Update doc to reflect changes in
show nexthop-group rib
command - FRRouting Release 7.3
Detailed Change Log for 7.3.1
- zebra: fix missing route-advert stubs
- bgpd: Update failed reason to distinguish some NHT scenarios
- bgpd: Show the real reason why the peer is failed
- bgpd: Format properly
show bgp summary failed
- zebra: add config to disable use of kernel nexthops
- yang: Partially revert code to restore functionality
- tests: Make topotest working on different locale
- tests: fix check for nhid in ipv6 table output
- zebra: abstract route src determiniation into func
- zebra: determine src when using nexthop objects
- zebra: free unhashable (dup) NHEs via ID table cleanup
- bgpd, ospfd, ospf6d: long is not bool :(
- zebra: handle NHG in NHG dataplane group conversion
- zebra: don’t add ID to kernel nh_grp if not installed/queued
- zebra: add debug for duplicate NH in dataplane array conversion
- zebra: set valid on re->nhe directly in nexthop_active_update()
- zebra: properly set the NEXTHOP_GROUP_VALID flag
- zebra: break if duplicate nexthop found in nhe2grp
- zebra: don’t created connected if duplicate depend
- zebra: reset nexthop pointer in zread of nexthops
- zebra: add null check before connecting recursive depend
- ldpd: don’t drop packets coming through a broken LSP
- ospf6d: stop looping thru same Inter-Area Router LSAs
- ldpd: Fix linking error on Fedora Rawhide with GCC 10
- tests: fix build with GCC 10
- ldpd: fix another linking issue with GCC-10
- ldpd: remove multiple definitions of thread_master
- pimd: Make frr able to be built by gcc 10
- bgpd: remove unused variable
- babeld: fix build on Fedora Rawhide
- babeld: GCC complaining about no return in non-void function
- vrrpd: fix build on Fedora Rawhide
- bgpd: Show hostname in
show [ip] bgp ...
only if nexthop is connected - bgpd: Add a sanitify check for bgp_nexthop_cache against NULL
- bgpd: Do not discard an UPDATE if the global nexthop is set to ::
- tests: Check if the right next-hop is shown (bgp_show_ip_bgp_fqdn)
- Revert “vtysh: fix searching commands in parent nodes”
- lib: Convert access_list_empty to bool
- lib: Delete the entire access-list only if there are no more entries
- zebra: force off kernel NHG install with netns VRFs
- bgpd: bools use
true/false
notTRUE/FALSE
- bgpd: Check to ensure community attributes exist before freeing them
- FRRouting release 7.3.1