Chirag Shah
4b63e358bc
bgpd: no router bgp check candidate config
...
For `no router bgp` without ASN check candidate
config for default bgp instance presence to avoid
failure from checking backend db where bgp instance
may not be created.
This situation can be seen in transactional cli mode
with following config.
bharat(config)# router bgp 101
bharat(config-router)# exit
bharat(config)# no router bgp
% No BGP process is configured
bharat(config)# no router bgp
% No BGP process is configured
bharat(config)#
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:38 -07:00
Chirag Shah
5e42cb2fb0
bgpd: move router bgp nb callback
...
move `router bgp` nb callback at `bgp` node level
to have access to bgp context at neighbor and peer-group
level and align create/destroy callbacks call during
no router bgp.
Earlier `no router bgp` is performed first global destroy
callback is called which essentially removes `bgp context`
then it calls to remove (parallel nodes) neighbor and peer-group
which does not have access to bgp context.
Moving router bgp at bgp solves this destroy callback ordering issue.
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:38 -07:00
Chirag Shah
87ce25646b
bgpd: correct bgp global context
...
Move bgp (router bgp) context at "bgp" node
level from (instead of) "global" level.
This change allows access of bgp context at neighbor
and peer-group node levels.
+--rw bgp <--- (store `struct bgp` at bgp node xpath)
+--rw global!
| ...
| +--rw afi-safis
| ...
+--rw neighbors
| +--rw neighbor* [remote-address]
| ...
| | +--rw afi-safis
| ...
| +--rw unnumbered-neighbor* [interface]
| ...
+--rw peer-groups
+--rw peer-group* [peer-group-name]
...
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:38 -07:00
Chirag Shah
906ebeec98
bgpd: shorten northbound callback names
...
Omit routing protocol augment name from callbacks name.
(Omitted: routing_control_plane_protocols_control_plane_protocol_)
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:38 -07:00
Chirag Shah
15cbc38206
tests: add bgp yang module registery to attr test
...
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:37 -07:00
Chirag Shah
64fb3f8666
tests/bgpd: initialized candidate_config to vtysh
...
In test_peer_attr.c test is initializd with vty handler
but candiate_config is not set.
northbound converted bgp cli expects to derefence the
candidate_config field which leads to crash.
(gdb) p *test->vty->candidate_config
$9 = {dnode = 0x0, version = 0}
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:37 -07:00
Chirag Shah
374069da83
bgpd: register nb routing hook
...
On bgpd bootstrap register routing hook which ensures
only single bgp named instance created per vrf routing
hierarchy.
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:37 -07:00
Chirag Shah
ff8a8a7ac1
bgpd: convert global config to transactional cli
...
Convert global congigurations clis to transactional
clis using northbound plugin callbacks.
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:37 -07:00
Chirag Shah
e4a464160d
bgpd: register northbound callbacks to bootstrap
...
Register bgpd northbound callbacks to bgp daemon
bootstrap.
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:37 -07:00
Chirag Shah
a363b4b49b
lib: increase the size of northbound max module
...
Increase the size of frr_yang_module_info
macro to accomodate bgp module list.
root@bharat:~/stash/frr# egrep "xpath" bgpd/bgp_nb.c | wc -l
1150
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:37 -07:00
Chirag Shah
a1950c80a5
bgpd: bgp northbound callbacks prototypes
...
This commit contains splitting of auto-generated bgp northbound callbacks
into separate files.
Include the files into bgp makefile.
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:37 -07:00
Chirag Shah
bc8c00cca1
*: add bgp yang files into makefiles
...
Signed-off-by: Chirag Shah <chirag@nvidia.com>
2020-10-03 11:25:37 -07:00
Donald Sharp
4b40d5ffb0
Merge pull request #6882 from vishaldhingra/static
...
staticd : Added the warning log for route when VRF is not ready.
2020-10-02 23:52:53 -04:00
Donald Sharp
25a7a8e5e5
Merge pull request #7225 from idryzhov/vtysh-fix-domainname
...
vtysh: fix multiple "domainname" commands in running config
2020-10-02 18:15:26 -04:00
Donald Sharp
7302f333e5
Merge pull request #7228 from idryzhov/vtysh-dynamic-daemons
...
vtysh: dynamically generate the list of daemons for commands
2020-10-02 18:07:31 -04:00
Donald Sharp
c0c1606d77
Merge pull request #7236 from idryzhov/fix-docstrings
...
isisd, ospfd: fix missing/excessive docstrings
2020-10-02 17:59:52 -04:00
Igor Ryzhov
31011d9cbe
isisd, ospfd: fix missing/excessive docstrings
...
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-02 18:51:12 +03:00
Igor Ryzhov
d7b86ae4fe
vtysh: dynamically generate the list of daemons for commands
...
Some daemons were actually missing from the static definitions: nhrpd,
babeld, eigrpd and bfdd.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-02 15:06:27 +03:00
Martin Winter
3a1d1d6076
Merge pull request #7232 from idryzhov/more-topotests-vrf-id
...
tests: don't compare internal vrfId in topotests
2020-10-02 14:01:15 +02:00
Igor Ryzhov
a09775ec9b
tests: don't compare internal vrfId in topotests
...
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-02 14:45:51 +03:00
Igor Ryzhov
cf8c39655a
vtysh: fix multiple "domainname" commands in running config
...
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-02 13:00:06 +03:00
Donald Sharp
38b7c566eb
Merge pull request #7229 from idryzhov/topotests-vrf-id
...
tests: don't compare internal vrfId in topotests
2020-10-02 05:54:38 -04:00
Igor Ryzhov
0224261ee4
tests: don't compare internal vrfId in topotests
...
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-02 11:24:16 +03:00
Quentin Young
46d80d4532
Merge pull request #7226 from opensourcerouting/topotestfixes
...
tests: Topotest fixes to skip comparing InterfaceIndex and Internal status
2020-10-01 19:17:34 -04:00
Martin Winter
71edf4dd17
Merge pull request #7224 from mjstapp/fix_topo_ptyest
...
tests: fix typos in zebra_rib and _netlink
2020-10-01 23:01:02 +02:00
Donald Sharp
38e2ec77cd
Merge pull request #7220 from idryzhov/fix-clear-isis
...
isisd: fix node for clear commands
2020-10-01 16:28:51 -04:00
Martin Winter
f34653de8a
Merge pull request #7221 from mjstapp/fix_topo_all_circuit
...
tests: fix regex in all_proto test
2020-10-01 21:49:03 +02:00
Martin Winter
737a7c578f
tests: Topotest fixes to skip comparing InterfaceIndex and Internal status in json_cmp
...
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2020-10-01 21:33:55 +02:00
Mark Stapp
5094b56dc5
tests: fix typos in zebra_rib and _netlink
...
Fix a couple of typos in the zebra_rib and _netlink topotest
suites.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-01 14:17:06 -04:00
Mark Stapp
207c9fb4a1
tests: fix regex in all_proto test
...
Make sure the all-protocols test_isis_interfaces testcase uses
a regex substitution that includes all the hex characters.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-01 10:21:03 -04:00
Igor Ryzhov
2b55d9532b
isisd: fix node for clear commands
...
These are only clear commands in FRR available from view node.
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-01 17:11:35 +03:00
Mark Stapp
0b1dc328a9
Merge pull request #7216 from qlyoung/fix-nht-update-decode-wrong-return-code
...
Fix nht update decode wrong return code
2020-10-01 07:59:49 -04:00
Quentin Young
6c83ddedcf
*: make failure to decode nht update an error
...
This should never happen; no need to debug guard it and it's not a
warning, if this isn't working then NHT is not working at all.
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-09-30 18:37:15 -04:00
Quentin Young
2fec17cd04
lib: fix zapi_nexthop_update_decode error rc
...
This function returns true on success and false otherwise. Returning -1
on error is equivalent to returning true.
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-09-30 18:22:33 -04:00
Quentin Young
fb3bc7a74b
Merge pull request #7215 from mjstapp/fix_z_mlag_read
...
zebra: don't touch mlag read event pointer
2020-09-30 16:27:01 -04:00
Mark Stapp
f5d8487244
zebra: don't touch mlag read event pointer
...
Don't touch the mlag read event pointer, it's not safe.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-09-30 13:24:54 -04:00
Mark Stapp
4fdfda2e34
Merge pull request #7167 from donaldsharp/mlag_rd_killer
...
zebra: the mlag_rd_buf_offset variable was write only
2020-09-30 11:40:40 -04:00
Rafael Zalamena
9805b533eb
Merge pull request #7195 from tashanamatl/lookup_fix
...
bfdd: Make new multihop peer if local-address is unique
2020-09-30 10:25:45 -03:00
Donald Sharp
6535b1d805
Merge pull request #7203 from idryzhov/fix-vtysh-isisd-fabricd
...
vtysh: fix commands when building only isisd or fabricd
2020-09-30 06:28:51 -04:00
Donald Sharp
b0b19fd0ec
Merge pull request #7201 from mjstapp/fix_topo_ubu20
...
tests: pim-basic mcast scripts fixes for python3
2020-09-29 18:14:30 -04:00
Igor Ryzhov
97fc5adacb
vtysh: fix commands when building only isisd or fabricd
...
* add files to vtysh_scan when building only fabricd
* don't add isisd/fabricd commands when daemon build is disabled
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-09-30 01:08:17 +03:00
Mark Stapp
f635350e8e
tests: pim-basic mcast scripts fixes for python3
...
The pim-basic suite uses some private python scripts to
send and receive mcast traffic: revise them to support
both py2 and py3.
Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-09-29 15:03:43 -04:00
Donald Sharp
dbbae374d4
Merge pull request #7192 from deastoe/zebra-fpm-blackhole-abort
...
zebra: fix FPM abort for unreach/prohibit routes
2020-09-29 13:47:38 -04:00
Donald Sharp
e587774b74
Merge pull request #7039 from opensourcerouting/bgp-norib-runtime
...
bgpd: set/unset no-rib option at runtime
2020-09-29 13:42:02 -04:00
Mark Stapp
8619aadd40
Merge pull request #7156 from sworleys/PBR-Cleanup-IFp-No-Send
...
pbrd: cleanup pbr ifp info if not sent to zebra
2020-09-29 13:40:42 -04:00
Donald Sharp
e84c83139c
Merge pull request #7198 from idryzhov/vtysh-disable-daemon
...
vtysh: respect --disable-daemon configure flags
2020-09-29 13:25:34 -04:00
Patrick Ruddy
aa1f6a8795
Merge pull request #7188 from chiragshah6/evpn_dev
...
zebra: EVPN avoid duplicate list-node in l3vni's l2vni-list
2020-09-29 16:33:19 +01:00
Mark Stapp
aac200f6cb
Merge pull request #7199 from donaldsharp/nhg_reasons
...
Nhg reasons
2020-09-29 11:02:53 -04:00
Donald Sharp
97e551e300
Merge pull request #7177 from mjstapp/fix_topo_tab_open
...
tests: python3 compat fixes for topotests: tabs and misc api
2020-09-29 10:06:48 -04:00
Donald Sharp
f4efc793b5
Merge pull request #7197 from idryzhov/fix-tests
...
tests: skip tests when building without daemon
2020-09-29 09:59:20 -04:00