Commit Graph

545 Commits

Author SHA1 Message Date
Russ White
ba755d35e5
Merge pull request #12248 from pguibert6WIND/bgpasdot
lib, bgp: add initial support for asdot format
2023-02-21 08:01:03 -05:00
Philippe Guibert
8079a4138d lib, bgp: add initial support for asdot format
AS number can be defined as an unsigned long number, or
two uint16 values separated by a period (.). The possible
valus are:
- usual 32 bit values : [1;2^32 -1]
- <1.65535>.<0.65535> for dot notation
- <0.65535>.<0.65535> for dot+ notation.

The 0.0 value is forbidden when configuring BGP instances
or peer configurations.

A new ASN type is added for parsing in the vty.
The following commands use that new identifier:
- router bgp ..
- bgp confederation ..
- neighbor <> remote-as <>
- neighbor <> local-as <>
- clear ip bgp <>
- route-map / set as-path <>

An asn library is available in lib/ and provides some
services:
- convert an as string into an as number.
- parse an as path list string and extract a number.
- convert an as number into a string.

Also, the bgp tests forge an as_zero_path, and to do that,
an API to relax the possibility to have a 0 as value is
specifically called from the tests.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2023-02-10 10:27:17 +01:00
David Lamparter
0d60d63f94 doc: update workflow docs for SPDX header
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-02-09 14:09:11 +01:00
Donatas Abraitis
2be1c4002b doc: Define why my pull request was closed
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-01-31 13:29:24 +02:00
Donatas Abraitis
19b8d68cf8 doc: Add a documentation about commit conventions
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-01-31 13:25:27 +02:00
Donatas Abraitis
843427dd69 doc: Write a short introduction about squashing commits
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-01-31 10:59:01 +02:00
Jafar Al-Gharaibeh
61615e4dfd
Merge pull request #12606 from opensourcerouting/fixes-20230106
*: various build fixes
2023-01-09 12:26:29 -06:00
David Lamparter
26eaf6e386 build: add doc files missing from dist tarball
The override.css/js files for sphinx docs were not being included into
the tarball created by `make dist`.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-01-06 17:07:47 +01:00
Christian Hopps
b44b66c7bf doc: add guidance for CLI cmds that output JSON
Signed-off-by: Christian Hopps <chopps@labn.net>
2023-01-05 04:33:01 -05:00
Donatas Abraitis
59a5f54681 docs: Do not forget updating default version for readthedocs.org
docs.frrouting.org

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-12-16 09:58:41 +02:00
Donald Sharp
a0e1173678 zebra: Read from the dplane_fpm_nl a route update
Read from the fpm dplane a route update that will
include status about whether or not the asic was
successfull in offloading the route.

Have this data passed up to zebra for processing and disseminate
this data as appropriate.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-12-13 15:34:05 -05:00
Donald Sharp
c5a018dea5
Merge pull request #12466 from opensourcerouting/bsd-fixes-20221208
build: FreeBSD fixes
2022-12-09 13:00:39 -05:00
David Lamparter
d3135b0189 doc: add FreeBSD 13 build docs
Some minor changes since FreeBSD 11, mostly fewer extra sauce.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-12-08 14:19:34 +01:00
David Lamparter
ad5fef3ded doc: introduce FRR community "accords"
The idea here is to pass "non-code agreements" through the PR review
mechanism, and have them visible in the git tree.

Two "example" (but real) accords are included, mostly to illustrate the
idea.  Both of these should be non-controversial and have had some
previous discussion in random places.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-12-08 12:06:37 +01:00
Donatas Abraitis
f4ebc6f04e doc: Do not forget to update the reference table for release dates
As a part of release, an additional checkpoint when creating a stabilization
branch.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-11-28 17:37:24 +02:00
Donatas Abraitis
9de44c0a1b doc: Update release dates and add a hint on how to get dates correctly
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-11-28 17:37:23 +02:00
Martin Winter
43364c5a99
doc: Update doc to reflect default pim6d in packaging
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2022-11-21 20:09:41 +01:00
Donald Sharp
d7cde18c63
Merge pull request #12196 from opensourcerouting/xref-vtysh
*: rewrite `extract.pl` using `xref` infra
2022-11-03 08:54:09 -04:00
Donald Sharp
99001ec2a6 doc: Remove language = none as that sphinx no longer needs this line
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-10-27 15:59:57 -04:00
David Lamparter
89cb86aeb0 build, vtysh: extract vtysh commands from .xref
Rather than running selected source files through the preprocessor and a
bunch of perl regex'ing to get the list of all DEFUNs, use the data
collected in frr.xref.

This not only eliminates issues we've been having with preprocessor
failures due to nonexistent header files, but is also much faster.
Where extract.pl would take 5s, this now finishes in 0.2s.  And since
this is a non-parallelizable build step towards the end of the build
(dependent on a lot of other things being done already), the speedup is
actually noticeable.

Also files containing CLI no longer need to be listed in `vtysh_scan`
since the .xref data covers everything.  `#ifndef VTYSH_EXTRACT_PL`
checks are equally obsolete.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-10-26 17:12:34 +01:00
Kuldeep Kashyap
c73d2974b2 doc: Update /doc/topotests.rst documentation
Updated /doc/topotests.rst with socat details,
which is needed to run PIMv6 tests. Socat tool
is used to send PIMv6 join and traffic.

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2022-07-28 21:57:51 -07:00
Donald Sharp
cb1991af8c *: frr_with_mutex change to follow our standard
convert:
	frr_with_mutex(..)

to:
	frr_with_mutex (..)

To make all our code agree with what clang-format is going to produce

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-07-20 15:50:32 -04:00
alireza
cd899c6a6f doc: Remove extra "in" from document
On line 16 of this file following sentence has a typo.
> * once done, the updated copy is swapped in in a single

Remove unused "in" from document.

Signed-off-by: alireza <alirezaarzehgar82@gmail.com>
2022-07-19 22:12:14 +04:30
Martin Winter
0e98be9eea debian: Add pkg.frr.pim6d build profile
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2022-07-07 07:14:27 -07:00
Donatas Abraitis
d2e02cbf64 ospfd: Remove local-block deprecated command
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-07 16:11:46 +03:00
Donatas Abraitis
bfb8639395 doc, tools: Update release dates in workflow.rst
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-05-27 08:25:12 +03:00
Donald Sharp
8bb5f1db16
Merge pull request #11107 from opensourcerouting/prefix-more-unionizing
lib: `struct prefix` spring cleaning
2022-04-28 08:25:30 -04:00
David Lamparter
ebc61d81b3 lib: remove unused struct prefix_ptr
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-04-27 13:21:18 +02:00
David Lamparter
34ee41c6c9 zebra, pimd: add AF param on NEXTHOP_LOOKUP_MRIB
By changing this API call to use a `struct ipaddr`, which encodes the
type of IP address with it.  (And rename/remove the `IPV4` from the
command name.)

Also add a comment explaining that this function call is going to be
obsolete in the long run since pimd needs to move to proper MRIB NHT.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-04-26 16:15:00 +02:00
Donald Sharp
a71e190d44
Merge pull request #10961 from opensourcerouting/build-ms-ext
build: enable `-fms-extensions`
2022-04-20 07:51:45 -04:00
Donald Sharp
f526739897 *: Fix spelling of accomodate
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-04-19 08:29:58 -04:00
Donald Sharp
ed18e04d91 doc: Fix spelling of choosen
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-04-19 08:28:47 -04:00
Donald Sharp
eaf59d27c1 *: Fix spelling of modifed
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-04-19 08:20:37 -04:00
Donald Sharp
485ac9a79b *: Fix spelling of neccessary
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-04-19 08:11:29 -04:00
David Lamparter
3f115705d3 build: enable -fms-extensions
This eases incorporating fields from/"subclassing" another struct.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-04-04 18:33:10 +02:00
David Lamparter
5b4f4e626f build: first header *must* be zebra.h or config.h
This has already been a requirement for Solaris, it is still a
requirement for some of the autoconf feature checks to work correctly,
and it will be a requirement for `-fms-extensions`.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-04-04 18:33:10 +02:00
Donald Sharp
61879cab13 *: Fix spelling of Inteface
Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-04-02 07:46:19 -04:00
Donald Sharp
ef0b66450d
Merge pull request #10942 from opensourcerouting/feature/printfrr_extension_for_peer_hostname
bgpd: Add `%pBP` printfrr() extension to print `IP(hostname)` for BGP peer
2022-04-01 11:28:47 -04:00
Donatas Abraitis
f70c91dcef bgpd: Add %pBP printfrr() extension to print IP(hostname) for BGP peer
Replace existing bgp_peer_hostname() function.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-03-31 21:20:11 +03:00
Donatas Abraitis
e27376e492
Merge pull request #10916 from rampxxxx/feat_frr_ubi8_docker
docker: Adding support for ubi-8 images.
2022-03-31 21:18:30 +03:00
Javier Garcia
d4e5ceae70 docker: Adding support for ubi-8 images.
- Create frr docker container based in new Red Hat Universal Base
  Images.

- This build a docker container based in ubi-8.
- Need to get the devel packages from centos-8 stream repos.
- Centos-8 stream repos added : base, appstream, powertools and epel

Signed-off-by: Javier Garcia <javier.martin.garcia@ibm.com>
2022-03-31 12:12:38 +02:00
David Lamparter
c5c7de20fa doc/developer: daemon-specific printfrr formats
Group together and extend docs on daemon-specific printfrr formats.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-03-30 16:14:28 +02:00
Donald Sharp
341e1d6e0a
Merge pull request #10738 from LabNConsulting/chopps/fixgrpc
fixes for grpc module
2022-03-14 14:57:59 -04:00
Christian Hopps
e00241ad9f tests: new grpc topotest
Signed-off-by: Christian Hopps <chopps@labn.net>
2022-03-14 11:14:12 -04:00
Donald Sharp
3e553c80ba
Merge pull request #10779 from opensourcerouting/typesafe-backflip
lib: typesafe container reverse iterators
2022-03-13 09:26:26 -04:00
David Lamparter
99eba3098c doc/developer: remove outdated paragraph
We have `_anywhere` and `_member` now, so this has become outdated.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-03-12 13:23:36 +01:00
David Lamparter
627198d18c doc/developer: reword list -> container
For some reason I couldn't think of the word "container" back when I
wrote most of this.  It is the proper term most developers wil
understand correctly, so let's use it.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-03-12 13:23:36 +01:00
David Lamparter
643ea83be2 lib: add _last and _prev on typesafe RB/DLIST
RB-tree and double-linked-list easily support backwards iteration, and
an use case seems to have popped up.  Let's make it accessible.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-03-12 13:23:36 +01:00
Donald Sharp
dbaa656ace
Merge pull request #10727 from ton31337/feature/adjust_release_doc
doc: Add a couple of handy commands to get some info for release notes
2022-03-11 14:29:46 -05:00
David Lamparter
543a26848d lib: add %pFXh to print prefix w/o prefixlen
Mostly for pimd, for the time being.  May be removed again if unused.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2022-03-11 13:43:19 +01:00