summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-12-20build: more renaming in configure.acDavid Lamparter
2016-12-20build: rename (1 of ?): configure.ac + preprocDavid Lamparter
This replaces Quagga -> FRR in most configure.ac settings as well as a handful of preprocessor macros in the source code. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-20doc: use config values from configure in manpagesDavid Lamparter
This makes the actual change to the manpages to get ./configure effects applied into them. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-20doc: rename manpages to ".in" for autoconfDavid Lamparter
The manpages contain references to installation paths and thus should be preprocessed by ./configure to get the actual paths. This commit is an exact-rename so the changes for the preprocessing are easier to review (diffs in renames are hard to read...) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-20build: remove $Format tagsDavid Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-14bgp: Modify output to be a bit clearerDonald Sharp
Modify the 'show ip bgp ...' output to be a bit clearer on what work it did. Modify: root@dell-s6000-02 ~/quagga# vtysh -c "show ip bgp" BGP table version is 7, local router ID is 6.0.0.9 Status codes: s suppressed, d damped, h history, * valid, > best, = multipath, i internal, r RIB-failure, S Stale, R Removed Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path *> 6.0.0.5/32 169.254.0.1 0 0 65101 ? *> 6.0.0.6/32 169.254.0.17 0 0 65101 ? *> 6.0.0.7/32 169.254.0.33 0 0 65104 ? *> 6.0.0.8/32 169.254.0.49 0 0 65104 ? *> 6.0.0.9/32 0.0.0.0 0 32768 ? *= 6.0.0.10/32 169.254.0.49 0 65104 65200 ? *= 169.254.0.33 0 65104 65200 ? *= 169.254.0.17 0 65101 65200 ? *> 169.254.0.1 0 65101 65200 ? Displayed 6 out of 9 total prefixes To ..... Displayed 6 routes and 9 total paths Issue #11 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-09vtysh: Fix static compilationDonald Sharp
When compiling vtysh with --enable-static and --disasble-shared we get linker errors with duplicate function names. This commit addresses this issue. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org> (cherry picked from commit dd2ecdedf88eb612759617ba044e4c29353088de)
2016-12-08Merge branch 'fixes/chris-for-stable-2.0' into stable/2.0David Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-08bgpd/rfp: ignore rfptest binaryChristian Franke
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2016-12-08lib: fix prefix2str return value and assertChristian Franke
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2016-12-08Merge branch '-isisd-simpl' into stable/2.0David Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-08bgpd vnc: Add 'debug bgp vnc verbose' targetLou Berger
all vnc debug logging is now covered by a 'debug bgp vnc' target Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-08*: always set SO_SNDBUF and SO_RCVBUF using a best effort approachRenato Westphal
If we fail to set any socket's buffer size, try again with a smaller value and keep going until it succeeds. This is better than just giving up or, even worse, abort the creation of a socket (ospf6d and ripd). Fix broken ospf6d on FreeBSD. Signed-off-by: Renato Westphal <renato@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-08ospfd: set the OSPF socket's send buffer size only onceRenato Westphal
This reverts commit b7fe4141, which introduced a logic where the OSPF send buffer size was dynamically updated to reflect the maximum MTU of the OSPF enabled interfaces (this was done to make ospfd work with interfaces configured for jumbo frames). Since commit a78d75b0, this is not necessary anymore because ospf_sock_init() now sets the OSPF send buffer size to a very high value (8MB). Also, the previous logic was broken because it didn't account for run-time interface MTU changes. Signed-off-by: Renato Westphal <renato@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-08quagga: Remove description of deprecated interfacesDonald Sharp
The deprecated interface section is no longer being used. Let's remove it from the document. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-08quagga: Add Debug Guard section in COMMUNITY.mdDonald Sharp
Add verbiage to loosely describe how developers MUST guard debugs put into their code. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-08isisd: Remove unnecessary debugDonald Sharp
Remove unnecessary debug from isis write mem. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-05build: number sections in COMMUNITY.md HTMLDavid Lamparter
adds some CSS to get section numbers. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-05lib: remove unused NS_BITMAP MTYPEDavid Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-05Merge branch '-rip' into stable/2.0David Lamparter
This fixes up a lot of RIP/RIPng compliance tests that were still flagged up. Tested-by: Martin Winter <mwinter@opensourcerouting.org>
2016-12-05Merge branch '-renato' into stable/2.0David Lamparter
This contains bgp memory leak fixes as well as cleanups to VRF/namespace handling and has been run through extended testing in Cumulus' testbed: Tested-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-05lib, zebra: Minimize display of link-params sub dataDonald Sharp
When link-params is configured it auto starts displaying 6000-02# conf t dell-s6000-02(config)# int swp1 dell-s6000-02(config-if)# link-params dell-s6000-02(config-link-params)# admin-grp 0x12345678 dell-s6000-02(config-link-params)# end dell-s6000-02# show run interface swp1 link-params enable metric 0 <----Remove the bw lines max-bw 1.25e+06 max-rsv-bw 1.25e+06 unrsv-bw 0 1.25e+06 unrsv-bw 1 1.25e+06 unrsv-bw 2 1.25e+06 unrsv-bw 3 1.25e+06 unrsv-bw 4 1.25e+06 unrsv-bw 5 1.25e+06 unrsv-bw 6 1.25e+06 unrsv-bw 7 1.25e+06 admin-grp 305419896 exit-link-params ! I'd like to reduce this to: interface enp0s3 ip igmp ip pim sm link-params enable admin-grp 0x12345678 <----- Fix this to be what we entered exit-link-params ! Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-05bgpd: Remove nexthop for peer only for "real" peervivek
During connection establishment, there is a separate peer structure created for the doppelganger (for incoming connection). When this is deleted after the connection has established, take care to ensure that the nexthop entry for the peer is not deleted. Fixes: f9164b1d74f6a20d69d7ef10d2e39b4ae7996cbf Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com> Ticket: CM-13875 Reviewed By: None Testing Done: Manual (cherry picked from commit 4f2bc892cbddbf36bd5e1b2f36c33260af614b33) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-05doc: update README to mention PIM-SSM and LDP supportRenato Westphal
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-05bgpd: Fix 'show ip bgp' to not change it's outputDonald Sharp
For unicast routes do not change the output of the 'show ip bgp' command. This will allow people with existing scripts to continue to work. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-02bgpd: Fix route node unlock when clearing adj-outvivek
When clearing the adj-out for a subgroup (e.g., upon peer going down), ensure that the adj-out is removed before unlocking the route node that it points to, otherwise, there is a possibility that the route node may be prematurely freed. Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com> Ticket: CM-13690 Reviewed By: None Testing Done: bgp-smoke, resilient-hash tests (cherry picked from commit c3d7d35f3b7152c9e50e52c3cfd60b0dc52df703) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-02ospfd: Fix json Crash with inactive timerDonald Sharp
When nbr->t_inactivity is not active, and you do a show json over the neighbor it will crash ospfd. Fix the code so it prints out -1 when the timer is inactive. Ticket:CM-13835 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Reviewed-by: Don Slice <dslice@cumulusnetworks.com> Reviewed-by: Daniel Walton <dwalton@cumulusnetworks.com> (cherry picked from commit 78d8fcb9623ab4d9cebf6187a451448e056a84bf) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-01lib: replace MIT license with ISCDavid Lamparter
Since other parts (e.g. ldpd) use the ISC license, and the ISC license is just a simplified form of the MIT license, just move things over and reduce the number of different licenses we have in use here. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-01build: COMMUNITY.md: add git branch diagramDavid Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-01zebra: check ZEBRA_IFC_REAL on if_upChristian Franke
Only connected routes which have ZEBRA_IFC_REAL set should be redistributed. Signed-off-by: Christian Franke <nobody@nowhere.ws> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-01bgpd: fix invalid memory access in peer_free()Renato Westphal
We shoult not call bgp_unlock() before calling bgp_delete_connected_nexthop() in the peer_free() function. Otherwise, if bgp->lock reaches zero, bgp_free() is called and peer->bgp becomes an invalid pointer in the bgp_delete_connected_nexthop() function. To fix this, move the call to bgp_unlock() to the end of peer_free(). Bug exposed by commit 37d361e ("bgpd: plug several memleaks"). Signed-off-by: Renato Westphal <renato@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-01bgpd: Fix crashes when no default bgp instance is configured.Donald Sharp
The vnc code assumes that bgp must have a default instance. This code change checks to make sure that we do before proceeding. It makes no assurances that vnc will behave correctly without a default instance. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-01pimd: Fix large integer display of drpriorityDonald Sharp
When displaying drpriority you can enter unsigned integer values from 1-2^32. The display was turning the unsigned value into a signed value and thus we were displaying the wrong value. Ticket: CM-13787 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Reviewed-by: David Ahern <dsa@cumulusnetworks.com> (cherry picked from commit db17265f1025e3ec578998ad537c33b49ed33cde) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-01ospfd: Fix memory leak when not using jsonDonald Sharp
When doing a show command under ospf, if not using json we would have a small memory leak in show_ip_ospf_common. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> (cherry picked from commit 50750712b1ac8364e290c67782eaf371025dc59e) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-11-29build: drop TODO from redhat/quagga.spec.inDavid Lamparter
Fixes: 955026c8... "build: ditch outdated documents, including HACKING" Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-11-29bgpd: fix "show ip bgp" column alignmentDaniel Walton
The "Weight" column is off: BGP table version is 0, local router ID is 10.1.1.1 Status codes: s suppressed, d damped, h history, * valid, > best, = multipath, i internal, r RIB-failure, S Stale, R Removed Origin codes: i - IGP, e - EGP, ? - incomplete Network Next Hop Metric LocPrf Weight Path *> 4.1.1.2/32 9.9.9.2 0 32768 ? *> 4.1.1.4/32 9.9.9.2 0 32768 ? Displayed 2 out of 2 total prefixes Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> (cherry picked from commit 65c7395b07e8c592c847d4a1e22fc89ddf448341) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-11-29ospfd: "ip ospf bfd" removes the "ip ospf bfd 3 250 250" commandDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> Ticket: CM-13712 (cherry picked from commit 367b138748e894bbfaae36d1cf7c90eafebfebc9) Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-11-29build: improve COMMUNITY.md formattingDavid Lamparter
Add a render_md.py helper to convert it to HTML (needs python "markdown" module installed). Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-11-28isisd: create the isis_circuit_prepare() helper functionRenato Westphal
This reduces code duplication and the likelihood of a bug like 186534 ("isisd: fix loss of packets after circuit is brought up") to happen again. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28isisd: use a smaller #ifdef for isis_receive()Renato Westphal
There's no need to provide two definitions of the isis_receive() function (one for GNU_LINUX and the other for !GNU_LINUX). Both differ only slightly so it makes more sense to define isis_receive() just once and use a smaller #ifdef to account for these differences. This improves code readability. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28bgpd: fix invalid memory access in peer_free()Renato Westphal
We shoult not call bgp_unlock() before calling bgp_delete_connected_nexthop() in the peer_free() function. Otherwise, if bgp->lock reaches zero, bgp_free() is called and peer->bgp becomes an invalid pointer in the bgp_delete_connected_nexthop() function. To fix this, move the call to bgp_unlock() to the end of peer_free(). Bug exposed by commit 37d361e ("bgpd: plug several memleaks"). Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28build: add markdown-ised version of new guidelinesDavid Lamparter
This isn't quite done and renders rather badly on markdown_py. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-11-28zebra: plug more memory leaksRenato Westphal
Try to free all memory explicitly on exit. This should help to detect new memory leaks in the future with tools like valgrind. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28zebra: loop through all static routes on vrf enable/disableRenato Westphal
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28zebra/lib: remove redundant fields from zebra_vrfRenato Westphal
There's no need to duplicate the 'vrf_id' and 'name' fields from the 'vrf' structure into the 'zebra_vrf' structure. Instead of that, add a back pointer in 'zebra_vrf' that should point to the associated 'vrf' structure. Additionally, modify the vrf callbacks to pass the whole vrf structure as a parameter. This allow us to make further simplifications in the code. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28lib/zebra: put vrf_get() on a dietRenato Westphal
Also, for some reason we had two functions to search a VRF by its name: zebra_vrf_lookup_by_name() and zebra_vrf_list_lookup_by_name(). The first one would loop through vrf_table and the other one through vrf_list. This is not necessary anymore, so remove zebra_vrf_lookup_by_name() and rename zebra_vrf_list_lookup_by_name() to zebra_vrf_lookup_by_name(). Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28zebra: order VRFs by name on user outputRenato Westphal
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28lib/zebra: convert vrf_list to a red-black treeRenato Westphal
Since we're already using a red-black tree to store VRFs sorted by their vrf_id's, create a new tree to store VRFs sorted by their names. The biggest advantage of doing this is that we reduce the time complexity of vrf_list_lookup_by_name() from O(n) to O(log n). Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28*: rename two vrf functionsRenato Westphal
Since VRFs can be searched by vrf_id or name, make this explicit in the helper functions. s/vrf_lookup/vrf_lookup_by_id/ s/zebra_vrf_lookup/zebra_vrf_lookup_by_id/ Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2016-11-28lib: convert vrf code to use red-black trees as wellRenato Westphal
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>