OpenSourceRouting
  1. OpenSourceRouting

quagga-snap

Public
AuthorCommitMessageCommit dateIssues
Everton MarquesDavid LamparterEverton Marques
8bc0b34a2be[pim] Sample config for ssmpingd support
Everton MarquesDavid LamparterEverton Marques
e8c11bbf75c[pim] T41 DONE ssmping support
Everton MarquesDavid LamparterEverton Marques
824adbea2d8[pim] Hooks for ssmpingd support
Everton MarquesDavid LamparterEverton Marques
96f91aefc06[pim] Skeleton for ssmpingd support
Everton MarquesDavid LamparterEverton Marques
ccc5d2bb9b7[pim] Ref.on LW-MLDv2
Everton MarquesDavid LamparterEverton Marques
31894370d26[pim] Hint for test_igmpv3_join command-line utility
Everton MarquesDavid LamparterEverton Marques
40765fe45f3[pim] Command line tool to test IGMPv3 join.
Everton MarquesDavid LamparterEverton Marques
465185300b2[pim] clean-up
Everton MarquesDavid LamparterEverton Marques
b471196e812[pim] ip mroute show: can display the MFC
Everton MarquesDavid LamparterEverton Marques
47afa6e19b6[pim] Version up to 0.158
Everton MarquesDavid LamparterEverton Marques
54d6c57db53[pim] Fixed doc on CAVEAT C7
Everton MarquesDavid LamparterEverton Marques
5f35a523643[pim] show ip pim lan-prune-delay: fix cosmetic alignment
Everton MarquesDavid LamparterEverton Marques
bcc4abe09d3[pim] More RPF cache refresh statistics
Leonard HerveDavid LamparterLeonard Herve
942b0fdcc18[pim] Correction for cross-compilation error with this syntax
Leonard HerveDavid LamparterLeonard Herve
df4044b2cbeRouter Alert option for IGMP packets but not for PIM packets
Everton MarquesDavid LamparterEverton Marques
613938d48ab[pim] RPF cache refresh statistics
Everton MarquesDavid LamparterEverton Marques
d12beab1b9c[pim] Move encoded source address length check to pim_parse_addr_source
Leonard HerveDavid LamparterLeonard Herve
236b0155612[pim] igmpv3: specific query interval set to 1 second (RFC 3376 8.8.)[pim] pim messages: encoded source address format with Sparse bit=1 (RFC 4601 4.9.1.) [pim] and Mask Len MUST be equal to 32 [pim] dr election: new traces [pim] fix triggered_hello_delay_msec randomization
Everton MarquesDavid LamparterEverton Marques
e96f0af2679[pim] Log physical interface up/down[pim] Replace strerror with safe_strerror [pim] Fix PIM socket removal from non-PIM interfaces [pim] show ip igmp querier: left-align Querier string [pim] Version up to 0.157 [pim] Recipe to re-sync with Quagga repository [pim] Build vtysh in development script
Leonard HerveDavid LamparterLeonard Herve
596470f2a41[pim] pim commands added to vtysh
Everton MarquesDavid LamparterEverton Marques
871dbcfede6[pim] Initial pim 0.155
David LamparterDavid Lamparter
b162ab753e7doc: explain rpf lookup default modeReported-by: Alexis Rosen <quagga-users@alexis.users.panix.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David LamparterDavid Lamparter
a4e830c7cc0doc: zebra multicast RIB commandsSigned-off-by: David Lamparter <equinox@opensourcerouting.org>
David LamparterDavid Lamparter
e832c34fd19zebra: mark multicast commands experimentaldepending on feedback from actually having these commands in a released version, we may want to adjust them. Thus, mark them as experimental so users are aware of this. Cc: Everton Marques <everton.marques@gmail.com> Cc: Balaji G <balajig81@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David LamparterDavid Lamparter
ca2b105f3bdzebra: add "show ip rpf" to get result of RPF lookupChecking what route exactly a RPF lookup for a given source uses is essential for an administrator to debug multicast routing issues. This command provides exactly that, using the multicst RPF lookup function and printing out its result to the CLI. Cc: Everton Marques <everton.marques@gmail.com> Cc: Balaji G <balajig81@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David LamparterDavid Lamparter
240c56f3a41zebra: make MRIB lookup behaviour switchabledepending on the usage scenario (and availability of multitopology IGP protocols, which is currently zero in Quagga), different approaches of Multicast RPF lookups are useful. Reference behaviours from commercial vendors are urib-only/mrib-only (Juniper, depending on inet.2 availability) and lowest-distance (Cisco). As we are currently without MT IGP support, mrib-first seems the most useful d...
David LamparterDavid Lamparter
29ce93ebf64zebra: return route_node from rib_match_ipv4_safiThe multicast code needs to know the route_node in addition to the rib entry in order to perform distance or prefix-length comparisons. Add it as optional "out" pointer parameter. Cc: Everton Marques <everton.marques@gmail.com> Cc: Balaji G <balajig81@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David LamparterDavid Lamparter
c048dccaf53zebra: dummy kernel "install" multicast routesThis is a followup to 9511633 ("zebra: MBGP routes should not be installed in the kernel"), which was correct in disabling MRIB routes being installed in the kernel, yet broke the MRIB since now routes were never marked as active. Hence, push down the check into the kernel install functions, so that the routes are still marked active. At the same time, the FPM calls get a check each since oth...
David LamparterDavid Lamparter
9e6366d7367zebra: fix optional distance on static mrib routeUnfortunately, the quagga CLI parser doesn't support [<1-255>]. Fix by working around with an alias. Replaces the following commits: - zebra: mrib: [no] ip mroute - require distance. - zebra: mrib: [no] ip mroute - make distance optional. (Rewritten as alias) Cc: Everton Marques <everton.marques@gmail.com> Cc: Balaji G <balajig81@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcer...
Everton MarquesDavid LamparterEverton Marques
96bb266e0fdzebra: mrib: static route supportWith the MRIB being independent from the Unicast RIB, there's currently now way to add static routes to the MRIB. Address that by adding a separate set of commands for MRIB static routes. Combines these original patches: - zebra: mrib: ip mroute command to add unicast route to MRIB for multicast RPF. - zebra: mrib: no ip mroute: Fix removal of static multicast RPF route. - zebra: mrib: remove...
David LamparterDavid Lamparter
c4097910838zebra: kill rib_match_ipv4()Since this function is internal to zebra, there is no reason to keep this one-line indirect wrapper to rib_match_ipv4_safi() around. Cc: Everton Marques <everton.marques@gmail.com> Cc: Balaji G <balajig81@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Everton MarquesDavid LamparterEverton Marques
12150f08b76zebra: mrib: Include BGP routes in RPF lookupsThe rib_match_ipv4() function was previously used only for iBGP recursive nexthop lookups, which ignore eBGP routes. This is not desirable for PIM RPF lookups, which may well use an eBGP route. Cc: Everton Marques <everton.marques@gmail.com> Cc: Balaji G <balajig81@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Everton MarquesDavid LamparterEverton Marques
be4fb431253zebra: add ZEBRA_IPV4_NEXTHOP_LOOKUP_MRIBThis adds a new zapi call "ZEBRA_IPV4_NEXTHOP_LOOKUP_MRIB" performing a Multicast RPF lookup for a given source. Details of the lookup behaviour are left to the zebra side of things. Note: this is non-reactive, as in, only delivers a snapshot of the state at a particular point in time. There's no push notification of changes happening to the RIB. This combines the following 3 original patch...
Everton MarquesDavid LamparterEverton Marques
a59b6152bbczebra: point rib_match_ipv4() to ._safi()Since rib_match_ipv4() is just rib_match_ipv4_safi() for SAFI_UNICAST, the former can be removed and pointed to the latter instead. Cc: Balaji G <balajig81@gmail.com> Cc: Everton Marques <everton.marques@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Everton MarquesDavid LamparterEverton Marques
346a8b50334zebra: add rib_match_ipv4_safi()This is the same as rib_lookup_ipv4(), without the SAFI hardcoded. Cc: Balaji G <balajig81@gmail.com> Cc: Everton Marques <everton.marques@gmail.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David LamparterDavid Lamparter
f7b3d1e067azebra: identify MRIB on debug messagessince the same code handles both URIB and MRIB, the debug messages can get rather confusing if the RIB isn't identified. Mark the MRIB in debug messages so we can distinguish that. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David LamparterDavid Lamparter
e0b0ac8c97dzebra: factor out rib debug logsIntroduces a logging function that takes a struct route_node * argument, and prefixes log output with that node's prefix. While this removes some duplication, it will also later be useful for srcdest route nodes. Behaviour before and after the patch should be exactly identical. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
David LamparterDavid Lamparter
1c6db0d2da3lib: don't create circular lists (fixes 6d83113)LISTNODE_DETACH doesn't clear out the node, and LISTNODE_ATTACH doesn't set ->next (since it assumes a fresh/zeroed listnode). As a result, the new listnode_move_to_tail() created a nice circular list, in turn crashing ospfd in ospf_write() later. Reported-by: Martin Winter <mwinter@netdef.org> Fixes: 6d83113 ("ospfd: Tweak previous iface RR write patch to avoid free/malloc & redundant log") ...
David LamparterDavid Lamparter
daefeb8755ebgpd: set BGP_ATTR_MP_[UN]REACH_NLRI (fixes 1a211cb)Unfortunately, the attribute present bits for MP_REACH and MP_UNREACH which 1a211cb ("bgpd: one more fix"...) tests for are never set in their corresponding attribute parsing functions. Reported-by: Martin Winter <mwinter@netdef.org> Fixes: 1a211cb "bgpd: one more fix for tightening of check for missing well-known attributes" Cc: Paul Jakma <paul@opensourcerouting.org> Signed-off-by: David Lam...
David LamparterDavid Lamparter
cffe7807c03bgpd: stop startup timer on stopping BGP (fixes dd49eb1)bgp_delete() really needs to kill t_startup, otherwise after creating and quickly destroying a BGP instance it may fire on a deallocated struct bgp, overwriting memory. Reported-by: Martin Winter <mwinter@netdef.org> Fixes: dd49eb1 ("Fix BGP's use of restart bit.") Cc: Vipin Kumar <vipin@cumulusnetworks.com> Signed-off-by: David Lamparter <equinox@opensourcerouting.org> Acked-by: Vincent JARDI...
Greg TroxelGreg Troxel
273b1bd341azebra/kernel_socket.c: Use platform alignmentUse the platform-provided RT_ROUNDUP macro to align sockaddrs on the routing socket, rather than using hard-coded assumptions about alignment. Emit a warning if the OS doesn't define alignment macros. Resolves failure of ripngd on NetBSD 6 i386, which changed alignment to uint64_t from long.
Paul JakmaPaul Jakma
5e4ba81dc21doc: Document 'set as-path prepend' and 'set as-path prepend last-as'
Timo TeräsPaul JakmaTimo Teräs
85c854aa720bgpd: implement route-map set as-path prepend last-asIt picks up the AS to add from the aspath, or uses the peers AS number. Useful mostly in iBGP setups. Signed-off-by: Timo Teräs <timo.teras@iki.fi> Reviewed-by: Paul Jakma <paul@opensourcerouting.org>
Paul JakmaPaul Jakma
1a211cb369dbgpd: one more fix for tightening of check for missing well-known attributes* bgp_attr.c: (bgp_attr_check) The check for missing NEXT_HOP has the right spirit, but wrong where it counts, on the logic. It wouldn't catch a missing NEXT_HOP on a v4-only UPDATE. It would though have incorrectly flagged next-hop as missing on multi-protocol-only UPDATEs. Caught by Martin Winter with a test-suite.
Paul JakmaPaul Jakma
ec98d90767bbgpd: trivial, remove unneeded extra variable in bgp_capability_restart
Vipin KumarPaul JakmaVipin Kumar
dd49eb1f023Fix BGP's use of restart bit.bgpd-restart-bit-fix.patch ISSUE: Quagga BGP doesn't send or use the restart-bit via the Graceful-Restart(GR) capability. GR capability implementation isn't complete as per the RFC. PATCH: Patch uses BGP instance creation as the beginning of the startup period, and 'restart_time' is taken as the startup period. As a result, BGP will set the restart bit in the GR capability of the OPEN messa...
Paul JakmaPaul Jakma
443010383e2bgpd: remove unused variables
Vipin KumarPaul JakmaVipin Kumar
4bab6806914Fix to take care of ordering between interface and router ospf command.SYMPTOM: Interface mode OSPF area configuration is not retained after restarting quagga. Example - quagga(config)# interface swp49 quagga(config-if)# ip ospf area 0.0.0.0 quagga# sh run <snip> interface swp49 ip ospf area 0.0.0.0 ipv6 nd suppress-ra link-detect ! quagga# write memory * Restart quagga at this point* quagga# sh run <snip> interface swp49 ipv6 nd suppress-ra link-detec...
Dinesh G DuttPaul JakmaDinesh G Dutt
ad5233a1bcdAdd set ipv6 next-hop peer-address command.IPv4 has the ability to specify the peer address with the keyword peer-address. IPv6 mandates the use of a specific global or local address only in setting the next-hop in routemaps. This makes it cumbersome to configure some large networks with BGP and IPv6. This patch fixes that deficiency. Signed-off-by: Dinesh G Dutt <ddutt@cumulusnetworks.com> Reviewed-by: Paul Jakma <paul@opensourcerouti...
Dinesh G DuttPaul JakmaDinesh G Dutt
8306be211f1OSPFd: Update timestamps when we MaxAge LSAs.When an LSA is flushed we need to update the timestamps for them. This allows for the node to give the neighbor sufficient time to send back an acknowledgement before retransmission kicks in. Signed-off-by: Dinesh G Dutt <ddutt@cumulusnetworks.com> Reviewed-by: Scott Feldman <sfeldma@cumulusnetworks.com> Reviewed-by: James Li <jli@cumulusnetworks.com> Reviewed-by: Paul Jakma <paul@opensourcero...