| Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
When bfd node is removed, we must clear all NB entries set by its
children - sessions and profiles. Let's store some fake data as an entry
for the bfd node to be able to unset it later.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
Fixes #8379.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
set_vpn_nexthop/no_set_vpn_nexthop were failing due to missing
declarations and unused variables.
This adds the missing declaration and removes unused variables.
Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
|
|
Add docs for commands to display BGP table per-RD.
Also update commands to mention flowspec, routes,
advertised-routes, and received-routes.
Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
|
|
New and improved submission for this commit -- updated to accommodate
changes from 4027d19b0.
Adds support for 'rd all' matching for EVPN and L3VPN show commands.
Introduces evpn_show_route_rd_all_macip().
Cleans up some show commands to use SHOW_DISPLAY string constants.
Signed-off-by: Trey Aspelund <taspelund@nvidia.com>
|
|
Problems reported that in certain cases, frr-reload.py would
delete vrf static routes inadvertantly due to two different
reasons. First, vrf statics with null0 or Null0 nexthops would
fail the match since rendered as blackholes. This was already
fixed for non-vrf statics so added for vrf-based. Second,
frr-reload would fail to match due to different formats for
adding the command. If entered in the old way
"ip route x.x.x.x/x y.y.y.y vrf NAME" and rendered
in the new sway "vrf NAME\nip route x.x.x.x/x y.y.y.y" it would
fail to match do an inadvertant delete.
Ticket: 2570270
Signed-off-by: Don Slice <dslice@nvidia.com>
|
|
Since black is finding issues before applying my change, committing
those changes separately
Signed-off-by: Don Slice <dslice@nvidia.com>
|
|
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
Remove inet6_ntoa() - used static buffer, not needed.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
|
|
Stop using unsafe inet6_ntoa(), just use %pI6.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
|
|
Add some pcep unit-test output files to gitignore.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
|
|
The table is getting rather clunky, let's just break this out and make
it pretty there.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
... so `%m` works correctly, without us trampling over `errno` before we
get to formatting it.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
Just quick helpers to print `AF_*` and `SOCK_*` constants.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
This wasn't quite formatting IPv6+port in a useful way (no brackets),
and printing the scope ID (interface index) and unix addrs is useful
too.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
These are for string quoting (`%pSQ`) and string escaping (`%pSE`); the
sets / escape methods are currently rather "basic" and might be extended
in the future.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
(I'll get to `zlog_hexdump()` in a separate pass.)
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
Useful to insert output from another bprintfrr() call.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
Analogous to Linux kernel `%pV` (but our mechanism expects 2 specifier
chars and `%pVA` is clearer anyway.)
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
... to suppress the warnings when using something that isn't quite ISO C
compatible and would otherwise cause compiler warnings from `-Wformat`.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
With 0 currently the default value for the width specifier, it's not
possible to discern that from a %*p where 0 was passed as the length
parameter. Use -1 to allow for that.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
... for easier extensibility. Add width, # and - flags while at it.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
This commit introduces the implementation for the north-bound
callbacks for the bgp-specific route-map match and set clauses.
Signed-off-by: NaveenThanikachalam <nthanikachal@vmware.com>
Signed-off-by: Sarita Patra <saritap@vmware.com>
|
|
This commit introduces the implementation for the north-bound
callbacks for the ospfd-specific route-map match and set clauses.
Signed-off-by: NaveenThanikachalam <nthanikachal@vmware.com>
Signed-off-by: Sarita Patra <saritap@vmware.com>
|
|
This commit introduces the implementation for the north-bound
callbacks for the ospf6d-specific route-map match and set clauses.
Signed-off-by: NaveenThanikachalam <nthanikachal@vmware.com>
Signed-off-by: Sarita Patra <saritap@vmware.com>
|
|
This commit introduces the implementation for the north-bound
callbacks for the zebra-specific route-map match and set clauses.
Signed-off-by: NaveenThanikachalam <nthanikachal@vmware.com>
Signed-off-by: Sarita Patra <saritap@vmware.com>
|
|
This commit introduces the changes to the library route-map
north-bound callback implementation in order to align it to
the modified yang definitions.
Signed-off-by: NaveenThanikachalam <nthanikachal@vmware.com>
Signed-off-by: Sarita Patra <saritap@vmware.com>
|
|
This commit includes the following:
1) Modifications to the frr-route-map.yang to enable addition of
bgpd, ospfd, ospf6d and zebra specific route map match/set clauses.
2) Yang definitions for bgpd match/set clauses.
3) Yang definitions for ospfd and ospf6d match/set clauses.
4) Yang definitions for zebra match/set clauses.
Signed-off-by: NaveenThanikachalam <nthanikachal@vmware.com>
Signed-off-by: Sarita Patra <saritap@vmware.com>
|
|
|
|
Instead of trying to maintain if_ospf_cli_count, let's directly count
the number of configured interfaces when it is needed. Current approach
sometimes leads to an incorrect counter.
Fixes #8321.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
Description:
OSPF does not have an option to control the maximum multiple
equal cost paths to reach a destination/route(ECMP).
Currently, it is using the system specific max multiple paths.
But Somtimes, It requires to control the multiple paths from ospf.
This cli helps to configure the max number multiple paths in ospf.
Signed-off-by: Rajesh Girada <rgirada@vmware.com>
|
|
Restore the behavior that was before the NB conversion.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
The checks were incorrectly removed in commit 4d2f546f under the
assumption that it is needed only in CLI. Actually the checks are needed
for the case when the sequence number is explicitly set by a user.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
There was an attempt to consolidate the code in commit fae60215, but the
work was not actually finished and some necessary checks were missed.
Let's finish it.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
Restore the behavior that was before the NB conversion.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
Signed-off-by: Lynne Morrison <lynne@voltanet.io>
|
|
Currently pathd is missing from the deamon list in frrcommon
with this missing frrinit can't start pathd if it is added to
the deamon file. This commit adds it to the frrcommon deamon list
and updates the example deamon file.
Signed-off-by: Erik Kooistra <me@erikkooistra.nl>
|
|
Three new tests:
- OSPFv3 convergence using 'ipv6 ospf6 neighbor json'
- Default route functionality:
* Check that the LSA is present
* Check that the route was installed
Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
|
|
Signed-off-by: Yash Ranjan <ranjany@vmware.com>
|
|
Signed-off-by: Yash Ranjan <ranjany@vmware.com>
|
|
Signed-off-by: Yash Ranjan <ranjany@vmware.com>
|
|
Signed-off-by: Yash Ranjan <ranjany@vmware.com>
|
|
Signed-off-by: Yash Ranjan <ranjany@vmware.com>
|
|
This is to fix the crash reproduced by the following steps:
* ip link add red type vrf table 1
Creates VRF.
* vtysh -c "conf" -c "vrf red"
Creates VRF NB node and marks VRF as configured.
* ip route 1.1.1.0/24 2.2.2.2 vrf red
* no ip route 1.1.1.0/24 2.2.2.2 vrf red
(or similar l3vni set/unset in zebra)
Marks VRF as NOT configured.
* ip link del red
VRF is deleted, because it is marked as not configured, but NB node
stays.
Subsequent attempt to configure something in the VRF leads to a crash
because of the stale pointer in NB layer.
Fixes #8357.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
|
|
This replaces `%n` with a safe, out-of-band option that simply records
the start and end offset of the output produced for each `%...`
specifier.
The old `%n` code is removed.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
... for consistency with `%s`, which also prints `(null)`.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
Allowing printfrr extensions to directly write to the output buffer has
a few advantages:
- there is no arbitrary length limit imposed (previously 64)
- the output doesn't need to be copied another time
- the extension can directly use bprintfrr() to put together pieces
The downside is that the theoretical length (regardless of available
buffer space) must be computed correctly.
Extended unit tests to test these paths a bit more thoroughly.
Signed-off-by: David Lamparter <equinox@diac24.net>
|
|
Put a debug under a conditional.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
|