Go to file
Donald Sharp 138c5a7450 *: Add infrastructure to support zapi interface callbacks
Start the conversion to allow zapi interface callbacks to be
controlled like vrf creation/destruction/change callbacks.

This will allow us to consolidate control into the interface.c
instead of having each daemon read the stream and react accordingly.
This will hopefully reduce a bunch of cut-n-paste stuff

Create 4 new callback functions that will be controlled by
lib/if.c

create -> A upper level protocol receives an interface creation event
The ifp is brand spanking newly created in the system.
up -> A upper level protocol receives a interface up event
This means the interface is up and ready to go.
down -> A upper level protocol receives a interface down
destroy -> A upper level protocol receives a destroy event
This means to delete the pointers associated with it.

At this point this is just boilerplate setup for future commits.
There is no new functionality.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-09-19 13:34:06 -04:00
.github .github: move pr template to subdir 2019-03-29 16:51:58 +00:00
alpine docker: build alpine docker w/ rpki enabled 2019-07-15 17:39:43 +00:00
babeld *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
bfdd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
bgpd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
debian tools: Modifications to copy support bundle files 2019-09-13 10:05:13 -07:00
doc Merge pull request #4984 from Alexis-ROYER/pim-doc#4965 2019-09-18 06:40:09 -04:00
docker docker: cleanup Debian docker build 2019-06-20 16:59:26 +00:00
eigrpd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
fpm build: fix "make tags" 2019-09-17 16:35:12 +02:00
gdb bgpd: Convert binfo to path 2018-10-09 14:26:30 -04:00
grpc build: fix "make tags" 2019-09-17 16:35:12 +02:00
include Revert "include: Add linux header mroute.h to our build" 2019-01-31 01:37:14 +01:00
isisd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
ldpd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
lib *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
m4 build: add check for python-3.8 2019-08-14 15:06:52 +02:00
nhrpd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
ospf6d *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
ospfclient build: fix a whole bunch of *FLAGS 2019-01-30 19:13:51 +01:00
ospfd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
pbrd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
pimd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
pkgsrc *: cleanup .gitignore files 2018-09-08 21:30:42 +02:00
python bgpd/bmp: BMP implementation 2019-08-30 19:22:23 +02:00
qpb build: fix "make tags" 2019-09-17 16:35:12 +02:00
redhat tools: Modifications to copy support bundle files 2019-09-13 10:05:13 -07:00
ripd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
ripngd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
sharpd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
snapcraft snapcraft: Add libdb5.3 dependency 2019-05-29 01:41:02 +02:00
solaris *: cleanup .gitignore files 2018-09-08 21:30:42 +02:00
staticd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
tests isisd: Update TLVs processing for TE, RI & SR 2019-09-17 17:35:50 +02:00
tools tools: Adding new commands to the list of support bundle commands 2019-09-13 10:05:57 -07:00
vrrpd *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
vtysh vtysh: fix multiple "no ip/ipv6 prefix-list sequence-number" lines in running-config 2019-09-18 14:21:27 +03:00
watchfrr watchfrr: Convert wtf to a more meaningful message 2019-09-16 14:25:55 -04:00
yang lib: add yang wrappers for IP prefixes 2019-09-18 13:38:28 -03:00
zebra *: Add infrastructure to support zapi interface callbacks 2019-09-19 13:34:06 -04:00
.clang-format *: frr_elevate_privs -> frr_with_privs 2019-09-03 17:18:35 +02:00
.dir-locals.el .dir-locals.el: show trailing whitespace 2017-11-07 12:05:09 -05:00
.dockerignore docker/alpine: Update buildscript to keep the docker image around 2019-03-27 15:39:54 +01:00
.gitignore git: Ignore Visual Studio Code settings 2019-05-11 10:12:43 +03:00
bootstrap.sh autoreconf -i 2007-02-06 19:28:28 +00:00
buildtest.sh config: switch a few references to say FRR 2017-07-12 11:25:33 -05:00
changelog-auto.in debian: cleanly split off from dist tarball 2019-02-19 21:31:18 +01:00
config.version.in build: carry --with-pkg-extra-version into tarballs 2018-10-24 15:11:50 +02:00
configure.ac Merge pull request #4919 from opensourcerouting/config-warnings 2019-09-03 14:55:38 -04:00
COPYING *: make consistent & update GPLv2 file headers 2017-05-15 16:37:41 +02:00
COPYING-LGPLv2.1 build: remove LGPL v2.0, add LGPL v2.1 2016-11-15 17:19:38 +09:00
defaults.h *: reindent 2017-07-17 14:04:07 +02:00
Makefile.am build: improve clippy options 2019-06-12 19:22:59 +02:00
README.md README.md: add reference to apt repo 2019-09-17 03:53:17 +00:00
stamp-h.in Initial revision 2002-12-13 20:15:29 +00:00

FRRouting

FRR is free software that implements and manages various IPv4 and IPv6 routing protocols. It runs on nearly all distributions of Linux and BSD as well as Solaris and supports all modern CPU architectures.

FRR currently supports the following protocols:

  • BGP
  • OSPFv2
  • OSPFv3
  • RIPv1
  • RIPv2
  • RIPng
  • IS-IS
  • PIM-SM/MSDP
  • LDP
  • BFD
  • Babel
  • PBR
  • OpenFabric
  • VRRP
  • EIGRP (alpha)
  • NHRP (alpha)

Installation & Use

For source tarballs, see the releases page.

For Debian and its derivatives, use the APT repository at https://deb.frrouting.org/.

Instructions on building and installing from source for supported platforms may be found in the developer docs.

Once installed, please refer to the user guide for instructions on use.

Community

The FRRouting email list server is located here and offers the following public lists:

Topic List
Development dev@lists.frrouting.org
Users & Operators frog@lists.frrouting.org
Announcements announce@lists.frrouting.org

For chat, we currently use Slack. You can join by clicking the "Slack" link under the Participate section of our website.

Contributing

FRR maintains developer's documentation which contains the project workflow and expectations for contributors. Some technical documentation on project internals is also available.

We welcome and appreciate all contributions, no matter how small!

Security

To report security issues, please use our security mailing list:

security [at] lists.frrouting.org