From 91a38864cd5c278217f8e0928e7fcbd0a44dea52 Mon Sep 17 00:00:00 2001 From: "James R. Leu" Date: Wed, 7 Jun 2006 22:29:57 -0600 Subject: [PATCH] Don't propogate mappings to the session we recv'd the mapping from [git-p4: depot-paths = "//depot/ldp-portable/": change = 1494] --- ldp/ldp_label_mapping.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ldp/ldp_label_mapping.c b/ldp/ldp_label_mapping.c index 7aab1e0..6b227a5 100644 --- a/ldp/ldp_label_mapping.c +++ b/ldp/ldp_label_mapping.c @@ -961,11 +961,20 @@ LMp_11: peer = MPLS_LIST_HEAD(&g->session); while (peer) { /* LMp.17 */ + /* can't send messages to non-operational sessions */ if (peer->state != LDP_STATE_OPERATIONAL) { goto next_peer; } /* + * don't send the mapping to the session + * from which we recv'd the mapping + */ + if (peer->index == s->index) { + goto next_peer; + } + + /* * it is just as easy to walk the list of all upstream attr for this * peer as it is to the individual check to see if we have sent a * label mapping for this FEC LSP -- 2.11.4.GIT