]> git.proxmox.com Git - mirror_frr.git/commit - pimd/pim_upstream.c
pimd: Fix upstream state machine.
authorDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 3 Aug 2016 15:34:38 +0000 (11:34 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Thu, 22 Dec 2016 01:26:05 +0000 (20:26 -0500)
commit81900c5a083428f81ac5a92d2846790aa6f4da4f
tree3d3c77d6b2badcf0c77705961fb5de0756435093
parentd41b415c8bef5faa342ec6cb13f487ea01c2c5ac
pimd: Fix upstream state machine.

RFC 4601 4.5.7:
Joined
      The downstream state machines and local membership information
      indicate that the router should join the shortest-path tree for
      this (S,G).

The code has a upstream state that is in 'J' state already
due to a S,G multicast packet received on an incoming
interface.  This packet has been forwarded to the RP.
The RP sees this and immediately sends a join towards
the S,G.

The code as originally written assumed that you could
not transition from a J state to a J state.  This is not
true.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
pimd/pim_upstream.c