OpenSourceRouting
  1. OpenSourceRouting

quagga-snap

Public
AuthorCommitMessageCommit dateIssues
Alexis FasquelDonald SharpAlexis Fasquel
dbe99e0c407bgpd: Update dump to allow Extended Time FormatAllow the bgp dump functionality to handle the Extended Time format as specified in RFC 6396. Fixes a segmentation fault with multiple dump rules as well. Signed-off-by: Alexis Fasquel <alexis@pch.net> Acked-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Christian FrankeDonald SharpChristian Franke
76fbc64c5d8lib: add function to get precise remaining time of timer threadSigned-off-by: Christian Franke <chris@opensourcerouting.org> Acked-by: Donald Sharp <sharpd@cumulusnetworks.com>
Christian FrankeDonald SharpChristian Franke
1ca8d40f996ripd, isisd: fix warnings that make the build failThese issues have been found by running buildtest.sh using GCC 5.2.0 and Clang 3.7.0 Fixes pointer checks that can never be null Signed-off-by: Christian Franke <chris@opensourcerouting.org> Tested-by: NetDEF CI System <cisystem@netdef.org> Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpDonald Sharp
c1900e09a7fzebra: Fix change of distance on ipv6 route creating duplicate routesIf you enter: ipv6 route 2002:44:44:44::44/128 swp1 4 ipv6 route 2002:44:44:44::44/128 swp1 99 You get: host-111# show ipv6 route Codes: K - kernel route, C - connected, S - static, R - RIPng, O - OSPFv6, I - IS-IS, B - BGP, A - Babel, T - Table, > - selected route, * - FIB route S 2002:44:44:44::44/128 [99/0] is directly connected, swp1 S>* 2002:44:44:44::44/128 [4/0] is directly connected,...
Donald SharpDonald Sharp
949b719eac0zebra: Combine static_uninstall_ipv[4|6] into one functionSigned-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpDonald Sharp
a979ab70e0ezebra: combine static_ipv[4|6]_nexthop_same into one functionCombine the static_ipv[4|6]_nexthop_same into static_nexthop_same. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpDonald Sharp
9bcdd1a252bzebra: Combine static_install_ipv[4|6]Combine the static_install_ipv[4|6] function calls into static_install_route. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpDonald Sharp
0d955affd51zebra: Remove HAVE_IPV6 from rib.h and zebra_rib.cSigned-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpDonald Sharp
d4c27d656d0zebra: Collapse struct static_ipv[4|6] into struct static_routeThe 'struct static_ipv4' and 'struct static_ipv6' structures are essentially the same. Collapse them into one data structure 'struct static_route'. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Timo TeräsDonald SharpTimo Teräs
b11f3b54c84zebra: implement per-route mtu handlingThis commits allow overriding MTU using netlink attributes on per-route basis. This is useful for routing protocols that can advertice prefix specific MTUs between routers (e.g. NHRP). Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Timo TeräsDonald SharpTimo Teräs
7eb6136b273zebra: make ZEBRA_FLAG_CHANGED internal statusThis flag is used internally in zebra only. And it makes no sense to expose it over the zclient API, as having it set from client could corrupt the internal state. Signed-off-by: Timo Teräs <timo.teras@iki.fi> Acked-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpDonald Sharp
929a26a7cf8lib: Memory reporting fails over 2GBThe old style mallinfo() function uses an 'int' to report memory usage data to the program. Unfortunately modern architectures can chew through 2gb of memory like a buzz saw hitting some warm butter, especially in the case of a memory leak or memory fragmentation. When a daemon uses more than 2gb of memory, just indicate it's gotten large and we don't know anymore. Pre-change behavior: Robot...
Daniel WaltonDonald SharpDaniel Walton
0d7435f2138bgpd: Add support for timer commands with peer-group syntaxThe peer-groups parser is missing advertisement-interval and 'timers connect' Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Timo Teräs <timo.teras@iki.fi>
Timo TeräsDonald SharpTimo Teräs
5a2a1ec18c8bgpd: update rtt on soft clearrtt is calculated dynamically by the kernel. Refresh it on soft clear. Fixes: ef757700d0 "bgpd: allow using rtt in route-map's set metric" Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Timo TeräsDonald SharpTimo Teräs
0edba8b6ad9bgpd: check rtt later after the real peer is knownOPEN message handler moves the connection from the temporary "struct peer" (used to accept it) to the real "struct peer" based on the configuration. RTT needs to be updated only to the real struct peer, and this patch moves the RTT query to point where realpeer is known. Fixes: ef757700d0 "bgpd: allow using rtt in route-map's set metric" Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Timo TeräsDonald SharpTimo Teräs
983525e8b56zebra: fix rtadv detectionThe GLIBC macro tests were just plain wrong. Glibc 2.1 is ancient and the support should be detected via configure.ac test, not macro test. Build with HAVE_RTADV but !RTADV is broke after vrf, so for now, just define RTADV always if HAVE_RTADV is there. Signed-off-by: Timo Teräs <timo.teras@iki.fi>
Donald SharpDonald Sharp
6d853c43d9dpimd: Limit pim hello log messagespimd was outputting allot of data surrounding pim hello packets. In addition the debugging was inconsistent and not all turned on via 'debug pim packet hello'. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpDonald Sharp
bf99b420a57bgpd: Fix bgp_btoa to compilebgp_btoa was abandoned at some point in time in the past. This commit gets it to compile and to be added to /usr/bin. At this point in time no work has done for 'correctness' of execution Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Daniel WaltonDonald SharpDaniel Walton
c8af680df5blib: Add zlog_hexdump() for debuggingSigned-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Daniel WaltonDonald SharpDaniel Walton
363c903435bbgpd: crash from not NULLing freed pointersSigned-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> There was a crash from not NULLing out peer->hostname but I cleaned up a bunch of other suspect ones as well.
Daniel WaltonDonald SharpDaniel Walton
92e62e06ba9ospfd: Lower the default OSPF spf timers to '0 50 5000'Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Daniel WaltonDonald SharpDaniel Walton
f89b09be92bbgpd: Lower BGP's default keepalive/holdtime to 3s/9sSigned-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Daniel WaltonDonald SharpDaniel Walton
8e644534b4dbgpd: Remove BGP_ERROR_START_TIMER, it was no longer usedSigned-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Daniel WaltonDonald SharpDaniel Walton
c37b9bccdccbgpd: Enable "bgp log-neighbor-changes" by defaultSigned-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Daniel WaltonDonald SharpDaniel Walton
57fcfda56adbgpd: Do not allow a timers connect of 0, this can hammer the CPUSigned-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Daniel WaltonDonald SharpDaniel Walton
3ff77fe62ecbgpd: Remove BGP's asorig timer, it is no longer usedSigned-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Daniel WaltonDonald SharpDaniel Walton
f822ad4326ebgpd: Lower the default 'timers connect' in BGP to 10 secondsSigned-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
Paul JakmaDonald SharpPaul Jakma
e56aab94a61doc: Add 'OSPF Fundamentals' section to OSPF docs* ospf_fundamentals.texi: New section explaining the fundamentals of OSPF for system admins, to help them debug their networks. * {Makefile.am,ospfd.texi}: include and build previous Conflicts: doc/Makefile.am
Paul JakmaPaul Jakma
ffe794426afpimd: Fix size_t zlog_err format string warning* fc1c114aa / "pimd: Fix warning", the size_t arg should have a %zu format.
Paul JakmaPaul Jakma
283596fd6d4MMerge 'patch-tracking/4/proposed/netdef-solaris' into accepted
Michael ZinggPaul JakmaMichael Zingg
be62b17c736isisd: Fix LSPs not being regenerated after adjacency changeIn isisd LSP's are not regenerated after a change in adjacency if lsp-gen-interval has expired. I have tested this on Debian 6.0 with zebra and level1 isisd with point to point links. This problem is also listed in Test ISIS-18.3 on the opensourcerouting.org wiki: http://confluence.isc.org/display/osr/ANVL+ISIS+Compliance+Test+Plan http://confluence.isc.org/display/osr/ANVL+ISIS+ResultsISIS-18
Lou BergerPaul JakmaLou Berger
056f3760cd3bgpd, lib: memory cleanups for valgrind, plus debug changesDescription: We use valgrind memcheck quite a bit to spot leaks in our work with bgpd. In order to eliminate false positives, we added code in the exit path to release the remaining allocated memory. Bgpd startup log message now includes pid. Some little tweaks by Paul Jakma <paul.jakma@hpe.com>: * bgp_mplsvpn.c: (str2prefix_rd) do the cleanup in common code at the end ...
Joakim TjernlundPaul JakmaJoakim Tjernlund
5c1791f28e2ospfd: PointToPoint neighbors are identified by router IDAccording to RFC 2328, section 10.5 PointToPoint neighbors should be identified by router ID instead of source IP address. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Paul JakmaPaul Jakma
13862bfc779Revert "Fix to take care of ordering between interface and router ospf command."This reverts commit 4bab6806914dbb4b43f376ebf966a034a0ea72cd, as Joakim's version of 'ip ospf area' and the 2 follow-up patches should avoid the issue Vipin reported. Acked-by: Donald Sharp <sharpd@cumulusnetworks.com>
Paul JakmaPaul Jakma
8a667cf7c58ospfd: Extend 'ip ospf area' to take address argument + rationalise ospf enable* ospfd.c: (general) Clean up the whole running of OSPF on interfaces. (add_ospf_interface) taking (struct interface *) arg is pointless here. (ospf_is_ready) new helper. (ospf_network_run_subnet) Put all the code for choosing whether to enable OSPF on a subnet, and if so which area configuration to use, here. If a subnet should not be enabled, ensure an existing oi is freed. (ospf_...
Joakim TjernlundPaul JakmaJoakim Tjernlund
738bce789a3ospfd: Impl. per interface 'ip ospf area' commandUse with interface command: interface ppp0 ip ospf area 0.0.0.0 This will enable OSPF on ppp0 with area 0.0.0.0 Remove with "no ip ospf area" * ospf_vty.c: add "ip ospf area (A.B.C.D|<0-4294967295>)" interface command * ospfd.c: (ospf_interface_{un,}set) new helper function to enable/disable OSPF on a specific interface. (ospf_if_update) 2 possible paths now to deal with interface upda...
Joakim TjernlundPaul JakmaJoakim Tjernlund
7bd7f55d2cbospfd: split up network interface enable a bit, for per-interface area cmd* ospfd.c: (ospf_network_run_interface) Move out core to .. (add_ospf_interface) .. here (ospf_network_{un,}set) move redistribute update out to.. (update_redistributed) .. here, so it can be re-used in upcoming commit. Acked-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpPaul JakmaDonald Sharp
774914f4223bgpd: fix using of two pointers for struct thread_master *bgp is using both bm->master and master pointers interchangebly for thread manipulation. Since they are the same thing consolidate to one pointer. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpPaul JakmaDonald Sharp
eeef0db2e92lib: Fix duplicate variable name in smux.c and vty.cBoth smux.c and vty.c have the same: static struct thread_master *master; as global variables for the file. This can and will lead to confusion name the variables something appropriate for the file it is in. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Amritha NambiarPaul JakmaAmritha Nambiar
ee162617eadisisd: Drop packet received on multiple interfaces due to the time gap in binding socket to an interfaceDue to the time window between opening socket and binding it to an interface, the same hello packet is delivered on multiple interfaces, unique socket per circuit is not yet established. When such hellos get processed, they form incorrect adjacencies. So, drop the packet that is received on multiple interfaces because the socket for the circuit is yet to bind to an interface. V2: Fix warning o...
Donald SharpPaul JakmaDonald Sharp
a6a11765d42pimd: Cleanup interface startupThis patch cleans up some interface startup, removes duplicate debug messages and protects against some always being displayed. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpPaul JakmaDonald Sharp
4edf1c6aea8pimd: Notice when we receive a packet type we can't handle yetThere are PIM packet types that have not been implemented yet. Notice when we get one of those and safely do nothing. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpPaul JakmaDonald Sharp
dea43dee04epimd: Add knowledge of different packet typesThere are several additional packet types that pimd is unaware of Add code to allow pim to understand them in the future. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpPaul JakmaDonald Sharp
f3734dd5fc0pimd: Cleanup zebra debugs to be protected by debug commandspimd is very chatty without any pim debugs turned on. This commit fixes a bunch of the debugs to be protected by appropriate pim debug statement. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpPaul JakmaDonald Sharp
0cee0384f6cpimd: Do not display some default values as part of a show runThere is no need to display igmp default values for the query-interval and the query-max-response-time-dsec Before change: ! interface swp4 description swp4 -> host-212's swp1 ip igmp ip igmp query-interval 125 ip igmp query-max-response-time-dsec 100 ip pim ssm link-detect ! After change: ! interface br1 ip igmp ip pim ssm link-detect ! Signed-off-by: Donald Sharp <sharpd@cumulusn...
Donald SharpPaul JakmaDonald Sharp
6169559976btests: Fix warnings from test-stream.ctest-stream is generating some compiler warnings Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpPaul JakmaDonald Sharp
26a18eb223dquagga: Additional centos 6 -enable-werror fixesThis commit fixes these warnings: 1) bgpd/bgp_nexthop.c - dereferencing pointer 'X' does break strict-aliasing rules 2) pimd/pim_igmp_join.c - dereferencing pointer 'X' does break strict-aliasing rules 3) ripd/ripd.c - 'ifaddr.prefixlen' may be used uninitialized in this function Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Donald SharpPaul JakmaDonald Sharp
d8aa4beab72vtysh: Fix Quagga.conf file read in.There exists a sequence of cli commands that are successfully read in by bgpd.conf, but not by a consolidated Quagga.conf. This issue stems from the fact that the consolidated config file attempts to match the current node + 1 node up the tree, while the individual config file searches for matches all the way up the tree. Quagga.conf read-in relies on vtysh_cmd.c command parsing which puts al...
Donald SharpPaul JakmaDonald Sharp
7125293d65dlib: zclient.c remove extern struct thread_master *zclient.c depended upon link time inclusion of a extern struct thread_master *master. This is a violation of the namespace of the calling daemon. If a library needs the pointer pass it in and save it for future use. This code change also makes the zclient code consistent with the other lib functions that need to schedule work on your behalf Signed-off-by: Donald Sharp <sharpd@cumulusnetwork...
Donald SharpPaul JakmaDonald Sharp
fd1c1a133afgit: add (generated) cscope files to .gitignore