Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/usr.sbin/ldpd we need to add mapping even if there is no rou...



details:   https://anonhg.NetBSD.org/src/rev/8cb94b883c26
branches:  trunk
changeset: 766107:8cb94b883c26
user:      kefren <kefren%NetBSD.org@localhost>
date:      Wed Jun 15 18:16:48 2011 +0000

description:
we need to add mapping even if there is no route for the prefix

diffstat:

 usr.sbin/ldpd/tlv_stack.c |  13 ++++++-------
 1 files changed, 6 insertions(+), 7 deletions(-)

diffs (29 lines):

diff -r a1d287bbef35 -r 8cb94b883c26 usr.sbin/ldpd/tlv_stack.c
--- a/usr.sbin/ldpd/tlv_stack.c Wed Jun 15 17:47:45 2011 +0000
+++ b/usr.sbin/ldpd/tlv_stack.c Wed Jun 15 18:16:48 2011 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: tlv_stack.c,v 1.3 2011/02/10 12:44:41 kefren Exp $ */
+/* $NetBSD: tlv_stack.c,v 1.4 2011/06/15 18:16:48 kefren Exp $ */
 
 /*-
  * Copyright (c) 2010 The NetBSD Foundation, Inc.
@@ -110,14 +110,13 @@
                        debugp("Prefix/Host add: %s/%d\n", inet_ntoa(inatmp),
                            pref->prelen);
 
-                       /* don't bother if we don't have a label/route */
-                       if (label_get_by_prefix(&inatmp, pref->prelen) == NULL)
-                               break;
-
                        ldp_peer_add_mapping(p, &inatmp, pref->prelen,
                            ntohl(l->label));
-                       mpls_add_label(p, NULL, &inatmp, pref->prelen,
-                           ntohl(l->label), 1);
+
+                       /* Try to change RIB only if label is installed */
+                       if (label_get_by_prefix(&inatmp, pref->prelen) != NULL)
+                               mpls_add_label(p, NULL, &inatmp, pref->prelen,
+                                   ntohl(l->label), 1);
                        break;
                    case FEC_WILDCARD:
                        fatalp("LDP: Wildcard add from peer %s\n",



Home | Main Index | Thread Index | Old Index