Allow routing protocols to call one function to add/delete
routes into zebra. Future commits will start adding
this code to individual routing protocols.
Why are we doing this? Well the zapi_ipv[4|6]_route functions
are fundamentally broken in their ability to pass down anything
but NEXTHOP_TYPE_IFINDEX or NEXTHOP_TYPE_IPV[4|6] and we need
the ability to pass down a bit more information.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Fedora uninstall showed some non-fatal postun script error because of an empty if which only applied to other distro's
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
clear ip ospf interface <IFNAME> parsing issue,
instead of arguement of interface "IFNAME" parsed.
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
This patch attempts to make the code easier to read by removing a
global variable and changing a few other things. Also, ldpd now calls
merge_config() only after reading the whole initial configuration at
startup, instead of doing that for every command in the configuration
file.
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Bingen discovered a bug in the pseudowire control-word negotiation that
might happen when the "control-word exclude" command is used. Under some
very specific conditions, ldpd might ignore a PWID label mapping when
it shouldn't.
This patch removes a wrong optimization that was preventing ldpd to call
l2vpn_pw_reset() every time we change the configuration of a pseudowire.
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
ospf timers related commands under router ospf were not accepted
due to incorrect argument count check.
timers throttle lsa all (0-5000)
timers throttle spf (0-600000) (0-600000) (0-600000)
timers lsa arrival (0-1000)
timers lsa min-arrival (0-600000)
Signed-off-by: Chirag Shah <chirag@cumulusnetworks.com>
In prep for switching over to having PIM understand VRF
remove the qpim_inaddr_any global variable and just
use INADDR_ANY directly.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
If you are not using OSPF-TE than there is no need to
be warned that we cannot find anything about it.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
1) vtysh_config_dump was not properly indented. Fix
2) Add VRF_NODE to be line_uniq when parsing return from sub-daemons
3) Fix 'no log monitor' to be line_uniq as well
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
pim controls the vrf table creation for due to the way that
pim must interact with the kernel. In order to match the
table_id for unicast <-> multicast( not necessary but a
real nice to have ) we need to pass up from zebra the
table_id associated with the vrf.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This file is generated by most tooling for Clang and generally wants to
be in the root directory. Best to ignore it.
https://clang.llvm.org/docs/JSONCompilationDatabase.html
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
This debug when nhrpd was just running but not configured
was constantly being sent to the log file. Filling it
with useless information
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
The 'struct rib' data structure is missnamed. It really
is a 'struct route_entry' as part of the 'struct route_node'.
We have 1 'struct route_entry' per route src. As such
1 route node can have multiple route entries if multiple
protocols attempt to install the same route.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
a bunch of pollfds can cause a stack overflow when using a stack
allocated buffer...silly me...
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
pcreposix_regexec doesn't exist (anymore?), it's just regexec. Also, if
the user specifies --enable-pcreposix, not finding it is a fatal error.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>