Commit Graph

24227 Commits

Author SHA1 Message Date
Christian Hopps
d267d77668 bgpd: fix default for extended-nexthop-capability
The default for extended-nexthop-capability is true for
unnumbered (interface) neighbors, false for other types. Break the inner
grouping out of the outer neighbor-parameters grouping so that we can
refine the default in that uses case.

Signed-off-by: Christian Hopps <chopps@gmail.com>
2021-05-23 20:30:04 +00:00
Igor Ryzhov
80b82d5289
Merge pull request #8687 from opensourcerouting/bgp-fix-mcast
yang: fix BGP multicast prefix specification
2021-05-21 18:56:26 +03:00
Jafar Al-Gharaibeh
10d52ac7f7
Merge pull request #8671 from donaldsharp/pim_possible_crash
Pim possible crash
2021-05-21 10:16:03 -05:00
Donatas Abraitis
99447cf226
Merge pull request #8705 from donaldsharp/ospf_sr_topo1_speedup
tests: Speedup ospf_sr_topo1 by over 100 seconds
2021-05-21 14:30:34 +03:00
Donald Sharp
2db528e384
Merge pull request #8701 from ton31337/feature/show_ip_bgp_alias
bgpd: Show BGP prefixes by community alias
2021-05-21 07:23:10 -04:00
Rafael Zalamena
684a5c8a6b yang: fix BGP multicast prefix type
Fix many of the commands in the `address-family ipv4 multicast` to use
the proper type to avoid wrong YANG model validation failures.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2021-05-21 07:56:01 -03:00
Rafael Zalamena
e51da3f817 yang: move multicast prefix type definition
Move the multicast prefix type to a common YANG model so other models
can use it.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2021-05-21 07:55:51 -03:00
Igor Ryzhov
53e00a69d2
Merge pull request #8709 from dslicenc/ospf-intf-area
ospfd: "ip ospf area" command can select wrong process
2021-05-21 11:10:29 +03:00
Donatas Abraitis
a418752d47
Merge pull request #8662 from idryzhov/fix-check-linux-vrf
tests: fix bgp_l3vpn_to_bgp_vrf
2021-05-21 10:03:21 +03:00
Donatas Abraitis
e1285ac414
Merge pull request #8704 from idryzhov/revert-no-peer-group-pgname
Revert "bgpd: When deleting a neighbor from a peer-group the PGNAME i…
2021-05-21 10:01:55 +03:00
Mark Stapp
3511890fa1
Merge pull request #8712 from LabNConsulting/chopps/grpc-doc-update
doc: expand documentation on gRPC
2021-05-20 15:38:27 -04:00
Donatas Abraitis
d95a84e0a5 bgpd: Show BGP community alias in JSON community list output
Before:
```
      "community":{
        "string":"first 65001:2 65001:3",
        "list":[
          "65001:1",
          "65001:2",
          "65001:3"
        ]
      },
```

After:
```
      "community":{
        "string":"first 65001:2 65001:3",
        "list":[
          "first",
          "65001:2",
          "65001:3"
        ]
      },
```

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-05-20 21:12:20 +03:00
Martin Winter
202af4abaa
Merge pull request #8616 from donaldsharp/pim_ordering
pimd: There exists a path where on vrf bringup we do not create the p…
2021-05-20 18:49:56 +02:00
Don Slice
b56114aa9e ospfd: "ip ospf area" command can select wrong process
Found that in some circumstances, when the "ip ospf area"
command was entered for the default vrf, the wrong ospf
process would be used to check for the presence of a
"network" statement, causing the "ip ospf area" command to
be rejected. This was due to the command using the ospf
instance lookup to find the right ospf process, which can
be in error depending on when the processes were created.

Signed-off-by: Don Slice <dslice@nvidia.com>
2021-05-20 12:09:27 -04:00
Christian Hopps
640b04d9e9 doc: expand documentation on gRPC
Add C++ and Python examples, and add compiling info, and known gRPC
version that works.

Signed-off-by: Christian Hopps <chopps@gmail.com>
2021-05-20 15:42:48 +00:00
Donald Sharp
6970d7d141
Merge pull request #8666 from idryzhov/bgp-replace-as
bgpd, yang: fix replace-as yang leaf
2021-05-20 10:52:35 -04:00
Igor Ryzhov
46ea9d49c6
Merge pull request #8708 from LabNConsulting/chopps/fix-lyd-merge-use
lib: fix northbound merge code (libyang)
2021-05-20 17:04:54 +03:00
Donald Sharp
21967e4e82
Merge pull request #8628 from idryzhov/isis-vrf-redist
isisd: fix redistribution in vrf
2021-05-20 09:00:46 -04:00
Christian Hopps
44cd2b2c2a lib: fix northbound merge code (libyang)
lyd_merge_tree replaces dest siblings with source siblings, not what we
want. Instead lyd_merge_siblings to keep both. Instead lyd_merge_siblings
to keep both.

Signed-off-by: Christian Hopps <chopps@labn.net>
2021-05-20 07:38:09 +00:00
Igor Ryzhov
91895b15a9
Merge pull request #8703 from donaldsharp/ospf_tab
ospfd: New code adds newline to log files
2021-05-20 10:36:58 +03:00
Donatas Abraitis
3532ab1ffb
Merge pull request #8697 from idryzhov/fix-zebra-con
zebra: fix possible uninitialized value
2021-05-20 09:31:02 +03:00
Donald Sharp
bd7fb46e5b tests: Speedup ospf_sr_topo1 by over 100 seconds
Add some basic timer operations to speed up convergence.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-05-19 16:01:01 -04:00
Mark Stapp
e804e2597c
Merge pull request #8700 from idryzhov/coverity
fix a couple of coverity warnings
2021-05-19 15:56:17 -04:00
Igor Ryzhov
71cc0c88de Revert "bgpd: When deleting a neighbor from a peer-group the PGNAME is optional"
This reverts commit 2cbd181ac9.

We also have "no neighbor WORD peer-group" command and it's impossible
to distinguish between those two commands if PGNAME is optional.
2021-05-19 22:41:08 +03:00
Donald Sharp
55370b9564 ospfd: New code adds newline to log files
FRR is not using newlines in log messages.  Remove them.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-05-19 15:10:48 -04:00
Donald Sharp
8c70a46b65 pimd: Fix rare crash situation
When running pim on an interface and that interface has
state and we move that interface into a different vrf
there exists a call path where we have not created the pimreg
device yet.  Prevent a crash in this rare situation.

Ticket: #2552763
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-05-19 14:48:11 -04:00
Donald Sharp
262649bd05 pimd: When bind fails give some extra data
When bind to a socket fails, let's give some color so we can
understand and fix the issue.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-05-19 14:48:11 -04:00
Donald Sharp
d516382e12
Merge pull request #8645 from idryzhov/ospf6-redistribute-fixes
ospf6 redistribution fixes
2021-05-19 14:42:54 -04:00
Donald Sharp
b5ca4a47d8
Merge pull request #8678 from achernavin22/bgp_confed_peer_sort
bgpd: recalc peer's sort after changing confed peers
2021-05-19 14:33:22 -04:00
Donald Sharp
8863a71845
Merge pull request #8684 from kuldeepkash/multicast-sm-topo1
tests: Fix for multicast_pim_sm test failure
2021-05-19 14:28:48 -04:00
Donatas Abraitis
9f977b2def doc: Show BGP prefixes by community alias
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-05-19 18:20:08 +03:00
Donatas Abraitis
b15be1605a tests: Show BGP prefixes by community alias
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-05-19 18:11:39 +03:00
Donatas Abraitis
a70a28a577 bgpd: Show BGP prefixes by community alias
This includes both community/large-community.

Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-05-19 18:11:38 +03:00
Olivier Dugeon
e55ee4b9ed
Merge pull request #8690 from idryzhov/ospf-fix-tlv-size
ospfd: fix SID/Label Sub TLV size
2021-05-19 16:16:35 +02:00
Igor Ryzhov
1f25f6c768
Merge pull request #8408 from Orange-OpenSource/TE
ospfd: Correct Coverity defects
2021-05-19 17:04:48 +03:00
Patrick Ruddy
f334254982
Merge pull request #8677 from idryzhov/isis-snmp-build-warning
isisd: fix build warning and simplify code
2021-05-19 14:39:47 +01:00
Igor Ryzhov
3558b8b8b4 pbrd: fix coverity warning
CID 1500586

There was an attempt to fix it in 920bb6f7 but the commit didn't
actually fix the warning.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-05-19 16:24:21 +03:00
Igor Ryzhov
f96c2b6dc2 lib: fix coverity warnings
CID 1504894

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-05-19 16:22:24 +03:00
Rafael Zalamena
c4aa00a776
Merge pull request #8693 from idryzhov/fix-bgp-bfd-reg
bgpd: fix zebra bfd registration
2021-05-19 09:23:28 -03:00
Olivier Dugeon
587a1dfa39
Merge pull request #8665 from volta-networks/fix_pathd_coverity
pathd: Clean coverity issues after merge pathd link state feature.
2021-05-19 14:16:00 +02:00
Igor Ryzhov
389faf93b7 zebra: fix possible uninitialized value
Found by Coverity.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-05-19 14:59:00 +03:00
Donald Sharp
942f6d35d3
Merge pull request #8682 from idryzhov/fix-default-originate
ospfd, ospf6d: fix "default-information originate" in non-existing vrf
2021-05-19 07:03:47 -04:00
Olivier Dugeon
ea217b376f
Merge pull request #8667 from volta-networks/fix_pathd_cli_affinity
pathd: Fix affinity command to exclude options to match implementation.
2021-05-19 12:28:28 +02:00
Olivier Dugeon
8db278b5e3 ospfd: Correct Coverity defects
When browsing or parsing OSPF LSA TLVs, we need to use the LSA length which is
part of the LSA header. This length, encoded in 16 bits, must be first
converted to host byte order with ntohs() function. However, Coverity Scan
considers that ntohs() function return TAINTED data. Thus, when the length is
used to control for() loop, Coverity Scan marks this part of the code as defect
with "Untrusted Loop Bound" due to the usage of Tainted variable. Similar
problems occur when browsing sub-TLV where length is extracted with ntohs().

To overcome this limitation, a size attribute has been added to the ospf_lsa
structure. The size is set when lsa->data buffer is allocated. In addition,
when an OSPF packet is received, the size of the payload is controlled before
contains is processed. For OSPF LSA, this allow a secure buffer allocation.
Thus, new size attribute contains the exact buffer allocation allowing a
strict control during TLV browsing.

This patch adds extra control to bound for() loop during TLV browsing to
avoid potential problem as suggested by Coverity Scan. Controls are based
on new size attribute of the ospf_lsa structure to avoid any ambiguity.

Signed-off-by: Olivier Dugeon <olivier.dugeon@orange.com>
2021-05-19 09:48:54 +02:00
Donatas Abraitis
2794d40202
Merge pull request #8688 from idryzhov/bgp-vrf-bind-priv
bgpd: raise privs for SO_BINDTODEVICE
2021-05-19 10:02:20 +03:00
Igor Ryzhov
6bfcd0f14a bgpd: fix zebra bfd registration
If there's no default router configured at the moment when bgpd is
connected to zebra, bgpd is not registered as a BFD client.

We should do the registration regardless of the config existence.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-05-18 23:31:52 +03:00
Mark Stapp
b1ffa01dcd
Merge pull request #8686 from idryzhov/fix-doc-index
doc: remove redundant index directives
2021-05-18 15:33:48 -04:00
Donald Sharp
11d557869c build: Update configure.ac to reflect new master version
That we are building towards.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-05-18 14:41:39 -04:00
Igor Ryzhov
bc298f5d49 ospfd: fix SID/Label Sub TLV size
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-05-18 21:00:41 +03:00
Javier Garcia
ac57e2c9b9 pathd: Clean coverity issues after merge pathd link state feature.
Signed-off-by: Javier Garcia <javier.garcia@voltanet.io>
2021-05-18 19:50:41 +02:00