Kevin C Miller <kevinm@andrew.cmu.edu>
[zebra 16681] OSPF NSSA Patches
diff --git a/ospfd/ospf_flood.c b/ospfd/ospf_flood.c
index bd33c34..00a4c64 100644
--- a/ospfd/ospf_flood.c
+++ b/ospfd/ospf_flood.c
@@ -622,6 +622,7 @@
 {
   listnode node;
   int lsa_ack_flag;
+  struct as_external_lsa *extlsa;
 
   lsa_ack_flag = 0;
 
@@ -646,6 +647,7 @@
     {
       int continue_flag = 0;
       struct ospf_area *area = getdata (node);
+      struct in_addr fwd;
       listnode if_node;
 
       switch (area->external_routing)
@@ -657,11 +659,13 @@
 	case OSPF_AREA_NSSA:	/* Sending Type 5 or 7 into NSSA area */
 #ifdef HAVE_NSSA
 	  /* Type-7, flood NSSA area */
-          if (lsa->data->type == OSPF_AS_NSSA_LSA) 
+          if (lsa->data->type == OSPF_AS_NSSA_LSA &&
+          	area == lsa->area) { 
 	    /* We will send it. */
 	    continue_flag = 0;
-          else
+          } else {
 	    continue_flag = 1;  /* Skip this NSSA area for Type-5's et al */
+	  }
           break;
 #endif /* HAVE_NSSA */