summaryrefslogtreecommitdiff
path: root/pimd/pim_cmd.c
AgeCommit message (Collapse)Author
2016-12-21PIM: prefix-list support for selecting RPDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com> Reviewed-by: CCR-5173 Ticket: CM-12819
2016-12-21pimd: switch pim_rpf.h to use 'struct prefix' for addressDonald Sharp
mrib_nexthop_addr and rpf_addr should be 'struct prefix' so that we can safely handle unnumbered data from a nexthop lookup in zebra Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Allow larger range for KAT(S,G)Donald Sharp
Allow the KAT(S,G) time be set to up to 60000 seconds. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Track the # of times we ask for nexthp informationDonald Sharp
Keep an idea of how many times we are asking zebra for nexthop information. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Add "show ip pim rp-info" commandDonald Sharp
List the RP information we have configured. Fix bug where we were not properly initializing some code Ticket: CM-12617 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd - Fix rpf lookup to what it was originallyDonald Sharp
I tried to be smart and skirt around rpf lookup if I knew the incoming interface. This turns out to be not necessarily a good thing because we can easily have asymetrical routing. This fix removes the attempt to cache the ifp we received the incoming packet on and just lets the lookup work like it should. Additionally it removes the weird hardcoding of the rpf interface from the register stuff. Ticket: CM-12530 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> reb
2016-12-21pimd: Modify pim_upstream_state2str for more usageDonald Sharp
Just pass in the actual state to allow us to translate the state to a string even if we don't have a upstream. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Allow rp to configure it's keep alive timerDonald Sharp
Allow the end user to supply a RP based keep alive timer. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Allow keep alive timer configurationDonald Sharp
Allow the user to specify the time to wait for a keep alive to happen. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Add 'debug mroute detail'Donald Sharp
When there is allot of IGMP activity for the kernel upcall that we are ignoring, just ignore it for the moment as well. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Properly isolate zlookupDonald Sharp
The qpim_zclient_lookup was a global variable. This is not needed. Isolate appropriately Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Add the display of the Keep Alive Timer for upstreamDonald Sharp
Add the ability to see the Keep Alive timer for upstream information. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: multiple rp commandsDonald Sharp
Allow the user to specify multiple rp commands. 'ip pim rp A.B.C.D' -> translates to 'ip pim rp A.G.C.D 224.0.0.0/24' ip pim rp A.B.C.D A.B.C.D/M First is the rp, second is the group with mask. Groups and masks cannot be over each other except 224.0.0.0/24 which is the fallback if used. Ticket: CM-7860 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Refactor RP code and start the ability to handle rangesDonald Sharp
Refactor the qpim_rp into pim_rp.c so that the global data is protected. This will allow us to easily add the group ranges. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21lib, pimd: Fix borked up prefix codeDonald Sharp
Fix the struct prefix to be an actual struct prefix_sg. This cleans up a bunch of code to make it look nicer. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Add rs_timer displayDonald Sharp
For the 'show ip pim upstream' command addd the RSTimer to the display Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Add ability to debug pim Register packetsDonald Sharp
Allow the user to specify the ability to debug pim register packets. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Add Local Genid to 'show ip pim hello'Donald Sharp
Display the local idea of what the Genid is Ticket: CM-11980 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Create raw socket for register packets to be forwarded.Donald Sharp
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Revamp send of join/prune to actually set bits right.Donald Sharp
When a *,G report is sent, the RPT and WC bits are set as well as the source is the RP address for the group. If this routers idea of the RP for this group is different than the idea of the RP from the sender than that particular *,G can be dropped. Ticket: CM-12031 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Start abstraction for WC and RPT bitsDonald Sharp
Start the abstraction of the WC and RPT bits so we can send the data as appropriate. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Remove unnecessary QuaggaIdDonald Sharp
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: convert pim_ifchannel_local_membership_add to use struct prefix sgDonald Sharp
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Refactor s,g information to struct prefix in pim_upstream.hDonald Sharp
This change allows us to pass the (s,g) state around as a prefix. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: Convert ifchannel to using a prefix to store (s,g)Donald Sharp
Convert ifchannel to use a prefix to store (s,g) information. Additionally create pim_str_sg_dump function to output data when using debugs. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-21pimd: create pim_upstream_state2strDonald Sharp
Allow update of show command to understant all pim upstream states. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-12-20build: remove $Format tagsDavid Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-09*: coccinelle-replace vty->indexDavid Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-12-01*: make DEFUN installations file-localDavid Lamparter
This moves all install_element calls into the file where the DEFUNs are located. This fixes several small related bugs: - ospf6d wasn't installing a "no interface FOO" command - zebra had a useless copy of "interface FOO" - pimd's copy of "interface FOO" was not setting qobj_index, which means "description LINE" commands would fail with an error The next commit will do the actual act of making "foo_cmd" static. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2016-11-08all: Fix underfull doc strings, part 2Quentin Young
Add missing docstrings and separating \n. Also eat some low-hanging refactoring fruit. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2016-10-17Merge branch 'cmaster-next' into vtysh-grammarQuentin Young
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
2016-10-07*: Consolidate all double VIEW_NODE and ENABLE_NODE'sDonald Sharp
If a command is put into the VIEW_NODE, it is going into the ENABLE_NODE as well. This is especially true for show commands. As such if a command is in both consolidate it down to VIEW_NODE. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-09-30all: scrubbed some argc CHECK MEsDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-29all: scrubbed some argc CHECK MEsDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-29all: added CHECK ME for DEFUNs that look at argcDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-27pimd: removed undebug CHECK MEsDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-27bgpd, etc: changed .LINE to LINE...Daniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-25Expand #defines in command stringsDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-23pimd: add 'int idx_foo' argv index variablesDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-23ALIAS removal for bgp, ospf, pim, isis, rip, ripng, lib and zebraDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-23pimd: argv updateDaniel Walton
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
2016-09-22Revert "pimd: Convert to the new way of working"Daniel Walton
This reverts commit 0564b02e432cba04f1245a5df77c2cf2893b51a3.
2016-09-20pimd: Convert to the new way of workingDonald Sharp
2016-08-26build/solaris: fix one error and a few warningsRenato Westphal
Signed-off-by: Renato Westphal <renato@openbsd.org>
2016-08-03lib: Add newline terminators to pim docstringQuentin Young
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2016-07-13pimd: Add generic function to retrieve mroute statsDonald Sharp
Add a generic function to retrieve mroute statistics from the kernel. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-07-12pimd: Track if the mroute is installed or notDonald Sharp
Track whether or not if a mroute has been installed or not. If not don't display information about it. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-07-12pimd: Refactor pim_mroute_add and _delDonald Sharp
The struct mfcctl should not be passed around. Pass around the channel oil instead. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-07-12pimd: Refactor 'struct static_route' to use channel_oilDonald Sharp
The 'struct static_route' data structure duplicated a decent bit of what is the in the struct channel_oil. Refactor. This will set us up for further cleanup. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2016-06-29pim: Show Iif for 'show ip pim upstream' commandDonald Sharp
Modify the 'show ip pim upstream' command to show the expected incoming interface for the source. Ticket: CM-11220 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>