summaryrefslogtreecommitdiffstats
path: root/zebra/debug.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* zebra: add a debug category for nexthopsMark Stapp2019-12-231-0/+30
| | | | | | | Add a category for nexthops and nh-groups, since we've got quite a bit of code in there now. Signed-off-by: Mark Stapp <mjs@voltanet.io>
* zebra: Add detailed debugging command for NHT trackingDonald Sharp2019-03-271-6/+22
| | | | | | | | | Add a detailed debugging command for NHT tracking and add the detailed output to the log about why we make some decisions that we are. I tried to model this like the rib processing detailed debugs that we added a few months back. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* zebra: Add code to allow us to add debug for mlagDonald Sharp2019-01-311-0/+24
| | | | Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* zebra: resolve style issues in dplane commitMark Stapp2018-10-251-0/+1
| | | | | | | Resolve (most) style issues in the initial zebra dataplane commit branch. Signed-off-by: Mark Stapp <mjs@voltanet.io>
* zebra: fix debug dplane cliMark Stapp2018-09-201-2/+3
| | | | | | Fix debug dplane cli doc text; mismatch caused a vtysh error. Signed-off-by: Mark Stapp <mjs@voltanet.io>
* zebra: add 'debug dplane' support and cliMark Stapp2018-09-201-0/+47
| | | | Signed-off-by: Mark Stapp <mjs@voltanet.io>
* zebra: PBR show debugging IPSET/IPTABLE hooks declaredPhilippe Guibert2018-05-251-0/+3
| | | | | | | | This hook can be used if the plugin module wrap_script is used. This hook is called to dump the debugging status of this module, on the vty. Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
* *: conform with COMMUNITY.md formatting rules, via 'make indent'Lou Berger2018-03-061-3/+6
| | | | Signed-off-by: Lou Berger <lberger@labn.net>
* *: add missing \n in some help stringsRenato Westphal2017-10-241-1/+1
| | | | Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* Merge branch 'master' into bgpd-debug-updates-prefixDaniel Walton2017-09-271-0/+2
|\
| * zebra: Display if we are debugging zebra vxlan or notDonald Sharp2017-09-261-0/+2
| | | | | | | | Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* | zebra: return CMD_SUCCESS when enabling debugsDaniel Walton2017-09-191-5/+5
|/
* *: Add 'show debugging' command from vtyshDonald Sharp2017-08-211-6/+6
| | | | | | | Allow vtysh to query every daemon about its debugging status in one go. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* zebra: fix pseudowire code re. upstream changesDavid Lamparter2017-08-091-1/+1
| | | | | | | | | | - VTY_NEWLINE is out - thread API changed with the extra arg - struct rib got renamed to struct route_entry - MPLS_NO_LABEL was removed - RB-tree implementation has some extra args Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* zebra: add pseudowire managerßingen2017-08-091-0/+25
| | | | | | | | | | | | | | | | | | | | Base framework for supporting MPLS pseudowires in FRR. A consistent zserv interface is provided so that any client daemon (e.g. ldpd, bgpd) can install/uninstall pseudowires in a standard way. Static pseudowires can also be implemented by using the same interface. When zebra receives a request to install a pseudowire and the installation in the kernel or hardware fails, a notification is sent back to the client daemon and a new install attempt is made every 60 seconds (until it succeeds). Support for external dataplanes is provided by the use of hooks to install/uninstall pseudowires. Signed-off-by: ßingen <bingen@voltanet.io> Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* zebra: debug cleanupDaniel Walton2017-07-251-71/+64
| | | | Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
* *: reindentreindent-master-afterwhitespace / reindent2017-07-171-245/+224
| | | | | | indent.py `git ls-files | pcregrep '\.[ch]$' | pcregrep -v '^(ldpd|babeld|nhrpd)/'` Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* bgpd, zebra: Cleanup warnings from new codeDonald Sharp2017-07-141-1/+1
| | | | | | | 1) Clean up VTY_NEWLINE -> \n 2) Remove usages of VTY_GET_INTEGER Signed-off-by: Donald Sharp
* Merge remote-tracking branch 'origin/master' into evpn_plus_struct_attrDonald Sharp2017-07-141-37/+31
|\
| * Merge remote-tracking branch 'frr/master' into newline-reduxDavid Lamparter2017-07-141-3/+3
| |\ | | | | | | | | | | | | | | | Lots of conflicts from CMD_WARNING_CONFIG_FAILED... Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
| * | *: remove VTYNL, part 4 of 6David Lamparter2017-07-141-18/+12
| | | | | | | | | | | | Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
| * | *: remove VTYNL, part 2 of 6David Lamparter2017-07-141-19/+19
| | | | | | | | | | | | Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* | | Merge remote-tracking branch 'origin/master' into evpn_plus_struct_attrDonald Sharp2017-07-141-3/+3
|\ \ \ | | |/ | |/|
| * | vtysh: return non-zero for configuration failuresDaniel Walton2017-07-131-3/+3
| |/ | | | | | | | | | | | | Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> This allows frr-reload.py (or anything else that scripts via vtysh) to know if the vtysh command worked or hit an error.
* / zebra: VNI and VTEP handlingvivek2017-07-121-0/+34
|/ | | | | | | | | | | | | Implement fundamental handling for VNIs and VTEPs: - Handle EVPN enable/disable by client (advertise-all-vni) - Create/update/delete VNIs based on VxLAN interface events and inform client - Handle VTEP add/delete from client and install into kernel - New debug command for VxLAN/EVPN - kernel interface (Linux/netlink only) Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
* *: s/VTY_NEWLINE/VTYNL/gQuentin Young2017-06-291-25/+25
| | | | | | Should be able to fit more vty_out onto one line now Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
* *: make consistent & update GPLv2 file headersDavid Lamparter2017-05-151-4/+3
| | | | | | | | | | | The FSF's address changed, and we had a mixture of comment styles for the GPL file header. (The style with * at the beginning won out with 580 to 141 in existing files.) Note: I've intentionally left intact other "variations" of the copyright header, e.g. whether it says "Zebra", "Quagga", "FRR", or nothing. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* zebra: Fix kernel netlink hex dump of informationDonald Sharp2017-05-111-0/+10
| | | | | | | | | | 1) Fix the kernel send and recv hex dump of what we are sending to the kernel 2) When configuring the debugs under 'conf t' display it too. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* *: fix a bunch of segfaults detected by a CLI fuzzerRenato Westphal2017-05-041-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the following segfaults: zebra aborted: vtysh -c "show ipv6 mroute" zebra aborted: vtysh -c "configure terminal" -c "debug zebra kernel msgdump" zebra aborted: vtysh -c "configure terminal" -c "interface eth99" -c "link-params" -c "no packet-loss" zebra aborted: vtysh -c "configure terminal" -c "interface eth99" -c "link-params" -c "no metric" zebra aborted: vtysh -c "configure terminal" -c "interface eth99" -c "link-params" -c "no ava-bw" zebra aborted: vtysh -c "configure terminal" -c "interface eth99" -c "link-params" -c "no res-bw" zebra aborted: vtysh -c "configure terminal" -c "interface eth99" -c "link-params" -c "no use-bw" ospfd aborted: vtysh -c "configure terminal" -c "router ospf" -c "area 1.1.1.1 nssa" ospfd aborted: vtysh -c "configure terminal" -c "router ospf" -c "area 4294967295 nssa" pimd aborted: vtysh -c "show ip msdp sa 1.1.1.1" pimd aborted: vtysh -c "configure terminal" -c "ip ssmpingd" pimd aborted: vtysh -c "configure terminal" -c "no ip ssmpingd" pimd aborted: vtysh -c "configure terminal" -c "no ip msdp mesh-group WORD source" pimd aborted: vtysh -c "configure terminal" -c "interface eth99" -c "ip pim hello 180" bgpd aborted: vtysh -c "show bgp l2vpn evpn rd 1:1" bgpd aborted: vtysh -c "clear vnc nve un *" bgpd aborted: vtysh -c "clear vnc nve un 1.1.1.1" bgpd aborted: vtysh -c "clear vnc nve un 2001:db8::1" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 1.1.1.1 un 1.1.1.1 lifetime 4294967295" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 1.1.1.1 un 1.1.1.1 cost 255 lifetime 4294967295" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 1.1.1.1 un 1.1.1.1 cost 255" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 1.1.1.1 un 1.1.1.1" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 1.1.1.1 un 2001:db8::1 lifetime 4294967295" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 1.1.1.1 un 2001:db8::1 cost 255 lifetime 4294967295" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 1.1.1.1 un 2001:db8::1 cost 255" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 1.1.1.1 un 2001:db8::1" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 2001:db8::1 un 1.1.1.1 lifetime 4294967295" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 2001:db8::1 un 1.1.1.1 cost 255 lifetime 4294967295" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 2001:db8::1 un 1.1.1.1 cost 255" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 2001:db8::1 un 1.1.1.1" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 2001:db8::1 un 2001:db8::1 lifetime 4294967295" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 2001:db8::1 un 2001:db8::1 cost 255 lifetime 4294967295" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 2001:db8::1 un 2001:db8::1 cost 255" bgpd aborted: vtysh -c "add vnc mac 11:11:11:11:11:11 virtual-network-identifier 4294967295 vn 2001:db8::1 un 2001:db8::1" bgpd aborted: vtysh -c "configure terminal" -c "router bgp 1" -c "no vnc export bgp ipv4 prefix-list NAME" bgpd aborted: vtysh -c "configure terminal" -c "router bgp 1" -c "no vnc export bgp ipv6 prefix-list NAME" bgpd aborted: vtysh -c "configure terminal" -c "router bgp 1" -c "no vnc export bgp route-map NAME" bgpd aborted: vtysh -c "configure terminal" -c "router bgp 1" -c "no vnc export zebra ipv4 prefix-list NAME" bgpd aborted: vtysh -c "configure terminal" -c "router bgp 1" -c "no vnc export zebra ipv6 prefix-list NAME" bgpd aborted: vtysh -c "configure terminal" -c "router bgp 1" -c "no vnc export zebra route-map NAME" bgpd aborted: vtysh -c "configure terminal" -c "route-map RMAP permit 1" -c "no set ipv6 vpn next-hop" bgpd aborted: vtysh -c "configure terminal" -c "route-map RMAP permit 1" -c "set vpnv4 next-hop" bgpd aborted: vtysh -c "configure terminal" -c "route-map RMAP permit 1" -c "set vpnv6 next-hop" bgpd aborted: vtysh -c "configure terminal" -c "router bgp" -c "address-family ipv6 vpn" -c "network 2001:db8::1/128 rd 1:1 tag WORD" bgpd aborted: vtysh -c "configure terminal" -c "router bgp" -c "address-family vpnv6 unicast" -c "network 2001:db8::1/128 rd 1:1 tag WORD" bgpd aborted: vtysh -c "configure terminal" -c "router bgp" -c "no neighbor WORD shutdown message MSG..." bgpd aborted: vtysh -c "configure terminal" -c "router bgp" -c "neighbor WORD shutdown message MSG..." More to come later. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* zebra: "debug zebra nht" is not in the configDaniel Walton2017-04-041-0/+5
| | | | | Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
* all: Fix underfull doc strings, part 1Quentin Young2016-11-051-59/+22
| | | | | | | Add missing docstrings and separating \n. Also eat some low-hanging refactoring fruit. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
* Merge branch 'cmaster-next' into vtysh-grammarQuentin Young2016-10-181-1/+36
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> Conflicts: bgpd/bgp_route.c bgpd/bgp_routemap.c bgpd/bgp_vty.c isisd/isis_redist.c isisd/isis_routemap.c isisd/isis_vty.c isisd/isisd.c lib/command.c lib/distribute.c lib/if.c lib/keychain.c lib/routemap.c lib/routemap.h ospf6d/ospf6_asbr.c ospf6d/ospf6_interface.c ospf6d/ospf6_neighbor.c ospf6d/ospf6_top.c ospf6d/ospf6_zebra.c ospf6d/ospf6d.c ospfd/ospf_routemap.c ospfd/ospf_vty.c ripd/rip_routemap.c ripngd/ripng_routemap.c vtysh/extract.pl.in vtysh/vtysh.c zebra/interface.c zebra/irdp_interface.c zebra/rt_netlink.c zebra/rtadv.c zebra/test_main.c zebra/zebra_routemap.c zebra/zebra_vty.c
| * Quagga: Static LSP configurationvivek2016-09-231-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for statically configuring MPLS transit LSPs. This allows the configuration of ILM to one or more NHLFE, as defined in RFC 3031. The currently supported nexthop types are IPv4 or IPv6. The two label operations supported are swap and PHP; the latter is configured by specifying the out-label as "implicit-null". Note that the operation is against the label, so it should be the same for all NHLFEs. Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> Ticket: CM-4804, ... Reviewed By: CCR-3085 Testing Done: In combination with other patches
* | all: added some missing <>s within []sDaniel Walton2016-09-301-2/+2
| | | | | | | | Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
* | zebra: add 'int idx_foo' argv index variablesDaniel Walton2016-09-231-11/+16
| | | | | | | | Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
* | convert <1-255> to (1-255), ()s to <>s, etcDaniel Walton2016-09-231-5/+5
| | | | | | | | Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
* | zebra: argv update for all but zebra_vty.cDaniel Walton2016-09-221-11/+11
| | | | | | | | Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
* | Revert "zebra: Fixup to use the new parser"Daniel Walton2016-09-221-11/+11
| | | | | | | | This reverts commit 5c94274ff77b7ba53a27ed68eb4b0bcdafba47b2.
* | zebra: Fixup to use the new parserDonald Sharp2016-09-211-11/+11
|/
* zebra: Add `debug zebra kernel msgdump` functionalityQuentin Young2016-06-211-2/+44
| | | | | | | | | | | Add command and associated functionality to enable dumping raw netlink messages. Ticket: CM-6568 Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com> Reviewed-by: Don Slice <dslice@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>
* zebra: Change bitwise operations to purpose-built macrosQuentin Young2016-06-201-10/+10
| | | | | | | | Some bitfields for zebra_debug_* flags were being modified with bitwise operators instead of the purpose-built macros in lib/zebra.h. Changed such instances to use the macros. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
* zebra: wire up "debug zebra packet detail"Lou Berger2016-05-261-2/+3
| | | | | | | | | There was no way to actually set ZEBRA_DEBUG_DETAIL, even though some debug output was conditional to it. Add CLI command. Signed-off-by: Lou Berger <lberger@labn.net> Signed-off-by: David Lamparter <equinox@opensourcerouting.org> (cherry picked from commit d7be042378eac103634ab62abf4b2a5ca225092d)
* Zebra: Cleanup RIB debugsvivek2015-11-201-20/+22
| | | | | | | | | | | | | | | Some of the changes include: - ensuring IPv6 addresses are printed correctly - say 'updating' or 'deleting' etc. only when that is actually done - say 'queuing' or 'dequeuing' only when that is actually done - print useful info for 'detailed' debug - that now subsumes 'rib queue' - delete various useless logs - VRF-specific - print VRF id in RIB debugs prior to prefix (e.g., 4:37.1.1.0/28) Ticket: CM-8110 Reviewed By: CCR-3765 Testing Done: Manual testing (2.5-br)
* nexthop-tracking.patchDonald Sharp2015-05-201-0/+30
| | | | | | | | | | quagga: nexthop-tracking.patch Add next hop tracking support to Quagga. Complete documentation in doc/next-hop-tracking.txt. Signed-off-by: Pradosh Mohapatra <pmohapat@cumulusnetworks.com> Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Signed-off-by: Dinesh Dutt <ddutt@cumulusnetworks.com>
* bgpd, ospfd, zebra: fix some DEFUN definitionsChristian Franke2014-04-011-3/+3
| | | | | | | Fixup some DEFUNS with incorrect command strings or mixed up helpstrings. Signed-off-by: Christian Franke <chris@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* zebra: add module to communicate routes to FPMAvneesh Sachdev2012-11-301-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enhance zebra to send routes to the (optional) Forwarding Path Manager component using the interface defined by fpm/fpm.h. * configure.ac - Add --enable-fpm flag. The FPM-related code in zebra is activated only if the build is configured with '--enable-fpm'. - Add HAVE_NETLINK automake conditional. This allows us to conditionally build netlink-dependent C code. * zebra/{rib.h,zebra_rib.c} - Add the 'fpm_q_entries' field to the rib_dest_t structure. This allows dests to be placed on the fpm queue. - Define a couple new rib_dest_t flags that hold FPM-related state. - Invoke the zfpm_trigger_update() function for a route_node whenever the information to be sent to the FPM changes. - rib_can_delete_dest(): Return FALSE if we have to update the FPM about the given dest. This ensures that the dest is not deleted even if there are no ribs hanging off of it. * zebra/zebra_fpm.c This file holds most of the code for interacting with the FPM. - If quagga was configured with '--enable-fpm', periodically try to connect to the FPM. - When the connection comes up, enqueue all relevent dests to the FPM queue. - When the FPM socket is readable, dequeue the next rib_dest_t from the FPM queue, encode it in to a message and send the message to the FPM. - When the connection to the FPM goes down, remove all dests from the FPM queue, and then start trying to connect to the FPM again. - Expose the following new operational commands: show zebra fpm stats clear zebra fpm stats * zebra/zebra_fpm_netlink.c - zfpm_netlink_encode_route(): Function to encode information about a rib_dest_t in netlink format. * zebra/zebra_fpm_private.h Private header file for the zebra FPM module. * zebra/zebra_fpm.h Header file exported by zebra FPM module to the rest of zebra. * zebra/debug.c Add the 'debug zebra fpm' command. * zebra/main.c Initialize the zebra-FPM code on startup. * zebra/misc_null.c Add stub for zfpm_trigger_update(). * zebra/Makefile.am - Include new file zebra_fpm.c in build. - Include zebra_fpm_netlink.c in build if HAVE_NETLINK is defined. * vtysh/Makefile.am Include zebra_fpm.c in list of files that define cli commands. Signed-off-by: Avneesh Sachdev <avneesh@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* [zebra] trivial: fix spelling mistakeStephen Hemminger2008-08-221-1/+1
|
* [zebra] Add 'debug zebra rib' commandsPaul Jakma2006-07-271-0/+74
| | | | | | 2006-07-27 Paul Jakma <paul.jakma@sun.com> * debug.{c,h}: Add 'debug zebra rib' and 'debug zebra rib queue'.
* 2005-06-28 Paul Jakma <paul.jakma@sun.com>paul2005-06-281-2/+2
| | | | | | | * (global) Extern and static'ification, with related fixups of declarations, ensuring files include their own headers, etc. if_ioctl.c: (interface_info_ioctl) fix obvious arg mis-order in list loop
* Initial revisionpaul2002-12-131-0/+272