Typos. A bunch of typos I've been collecting.
[vpp.git] / src / vnet / fib / fib_attached_export.c
index 715e63e..da83a3d 100644 (file)
@@ -20,6 +20,7 @@
 #include <vnet/fib/fib_entry_cover.h>
 #include <vnet/fib/fib_entry_src.h>
 #include <vnet/fib/fib_entry_delegate.h>
+#include <vnet/dpo/drop_dpo.h>
 
 /**
  * A description of the need to import routes from the export table
@@ -27,7 +28,7 @@
 typedef struct fib_ae_import_t_
 {
     /**
-     * The entry in the epxort table that this importer
+     * The entry in the export table that this importer
      * is importing covereds from
      */
     fib_node_index_t faei_export_entry;
@@ -85,7 +86,7 @@ typedef struct fib_ae_export_t_ {
 } fib_ae_export_t;
 
 /*
- * memory pools for the importers and exportes
+ * memory pools for the importers and exporters
  */
 static fib_ae_import_t *fib_ae_import_pool;
 static fib_ae_export_t *fib_ae_export_pool;
@@ -106,7 +107,7 @@ fib_entry_ae_add_or_lock (fib_node_index_t connected)
         fed = fib_entry_delegate_find_or_add(entry,
                                              FIB_ENTRY_DELEGATE_ATTACHED_EXPORT);
        pool_get(fib_ae_export_pool, export);
-       memset(export, 0, sizeof(*export));
+       clib_memset(export, 0, sizeof(*export));
 
        fed->fd_index = (export - fib_ae_export_pool);
        export->faee_ei = connected;
@@ -125,7 +126,6 @@ static void
 fib_entry_import_remove (fib_ae_import_t *import,
                         fib_node_index_t entry_index)
 {
-    fib_prefix_t prefix;
     u32 index;
 
     /*
@@ -136,12 +136,10 @@ fib_entry_import_remove (fib_ae_import_t *import,
     if (index < vec_len(import->faei_importeds))
     {
        /*
-        * this is an entry that was previsouly imported
+        * this is an entry that was previously imported
         */
-       fib_entry_get_prefix(entry_index, &prefix);
-
        fib_table_entry_special_remove(import->faei_import_fib,
-                                      &prefix,
+                                      fib_entry_get_prefix(entry_index),
                                       FIB_SOURCE_AE);
 
        fib_entry_unlock(entry_index);
@@ -154,7 +152,7 @@ fib_entry_import_add (fib_ae_import_t *import,
                      fib_node_index_t entry_index)
 {
     fib_node_index_t *existing;
-    fib_prefix_t prefix;
+    const fib_prefix_t *prefix;
 
     /*
      * ensure we only add the exported entry once, since
@@ -172,22 +170,22 @@ fib_entry_import_add (fib_ae_import_t *import,
      * this is the first time this export entry has been imported
      * Add it to the import FIB and to the list of importeds
      */
-    fib_entry_get_prefix(entry_index, &prefix);
+    prefix = fib_entry_get_prefix(entry_index);
 
     /*
      * don't import entries that have the same prefix the import entry
      */
-    if (0 != fib_prefix_cmp(&prefix,
+    if (0 != fib_prefix_cmp(prefix,
                            &import->faei_prefix))
     {
         const dpo_id_t *dpo;
 
         dpo = fib_entry_contribute_ip_forwarding(entry_index);
 
-        if (dpo_id_is_valid(dpo))
+        if (dpo_id_is_valid(dpo) && !dpo_is_drop(dpo))
         {
             fib_table_entry_special_dpo_add(import->faei_import_fib,
-                                            &prefix,
+                                            prefix,
                                             FIB_SOURCE_AE,
                                             (fib_entry_get_flags(entry_index) |
                                              FIB_ENTRY_FLAG_EXCLUSIVE),
@@ -247,7 +245,7 @@ fib_attached_export_import (fib_entry_t *fib_entry,
     fib_node_index_t fei;
 
     /*
-     * save index for later post-realloc retreival
+     * save index for later post-realloc retrieval
      */
     fei = fib_entry_get_index(fib_entry);
 
@@ -312,7 +310,7 @@ fib_attached_export_import (fib_entry_t *fib_entry,
 }
 
 /**
- * \brief All the imported entries need to be pruged
+ * \brief All the imported entries need to be purged
  */
 void
 fib_attached_export_purge (fib_entry_t *fib_entry)
@@ -336,12 +334,8 @@ fib_attached_export_purge (fib_entry_t *fib_entry)
         */
        vec_foreach(import_index, import->faei_importeds)
        {
-           fib_prefix_t prefix;
-
-           fib_entry_get_prefix(*import_index, &prefix);
-
            fib_table_entry_delete(import->faei_import_fib,
-                                  &prefix,
+                                  fib_entry_get_prefix(*import_index),
                                   FIB_SOURCE_AE);
            fib_entry_unlock(*import_index);
        }
@@ -514,67 +508,52 @@ fib_attached_export_cover_update (fib_entry_t *fib_entry)
 }
 
 u8*
-fib_ae_import_format (fib_entry_t *fib_entry,
+fib_ae_import_format (fib_node_index_t impi,
                      u8* s)
 {
-    fib_entry_delegate_t *fed;
-
-    fed = fib_entry_delegate_get(fib_entry,
-                                 FIB_ENTRY_DELEGATE_ATTACHED_IMPORT);
-
-    if (NULL != fed)
-    {
-       fib_node_index_t *index;
-       fib_ae_import_t *import;
-
-       import = pool_elt_at_index(fib_ae_import_pool, fed->fd_index);
+    fib_node_index_t *index;
+    fib_ae_import_t *import;
 
-       s = format(s, "\n  Attached-Import:%d:[", (import - fib_ae_import_pool));
-       s = format(s, "export-prefix:%U ", format_fib_prefix, &import->faei_prefix);
-       s = format(s, "export-entry:%d ", import->faei_export_entry);
-       s = format(s, "export-sibling:%d ", import->faei_export_sibling);
-       s = format(s, "exporter:%d ", import->faei_exporter);
-       s = format(s, "export-fib:%d ", import->faei_export_fib);
+    import = pool_elt_at_index(fib_ae_import_pool, impi);
 
-       s = format(s, "import-entry:%d ", import->faei_import_entry);
-       s = format(s, "import-fib:%d ", import->faei_import_fib);
+    s = format(s, "\n  Attached-Import:%d:[", (import - fib_ae_import_pool));
+    s = format(s, "export-prefix:%U ", format_fib_prefix, &import->faei_prefix);
+    s = format(s, "export-entry:%d ", import->faei_export_entry);
+    s = format(s, "export-sibling:%d ", import->faei_export_sibling);
+    s = format(s, "exporter:%d ", import->faei_exporter);
+    s = format(s, "export-fib:%d ", import->faei_export_fib);
+    s = format(s, "import-entry:%d ", import->faei_import_entry);
+    s = format(s, "import-fib:%d ", import->faei_import_fib);
 
-       s = format(s, "importeds:[");
-       vec_foreach(index, import->faei_importeds)
-       {
-           s = format(s, "%d, ", *index);
-       }
-        s = format(s, "]]");
+    s = format(s, "importeds:[");
+    vec_foreach(index, import->faei_importeds)
+    {
+        s = format(s, "%d, ", *index);
     }
+    s = format(s, "]]");
 
     return (s);
 }
 
 u8*
-fib_ae_export_format (fib_entry_t *fib_entry,
+fib_ae_export_format (fib_node_index_t expi,
                      u8* s)
 {
-    fib_entry_delegate_t *fed;
-
-    fed = fib_entry_delegate_get(fib_entry,
-                                 FIB_ENTRY_DELEGATE_ATTACHED_EXPORT);
-
-    if (NULL != fed)
-    {
-        fib_node_index_t *index;
-       fib_ae_export_t *export;
+    fib_node_index_t *index;
+    fib_ae_export_t *export;
 
-       export = pool_elt_at_index(fib_ae_export_pool, fed->fd_list);
+    export = pool_elt_at_index(fib_ae_export_pool, expi);
     
-       s = format(s, "\n  Attached-Export:%d:[", (export - fib_ae_export_pool));
-       s = format(s, "export-entry:%d ", export->faee_ei);
+    s = format(s, "\n  Attached-Export:%d:[", (export - fib_ae_export_pool));
+    s = format(s, "export-entry:%d ", export->faee_ei);
 
-       s = format(s, "importers:[");
-       vec_foreach(index, export->faee_importers)
-       {
-           s = format(s, "%d, ", *index);
-       }
-       s = format(s, "]]");
+    s = format(s, "importers:[");
+    vec_foreach(index, export->faee_importers)
+    {
+        s = format(s, "%d, ", *index);
     }
+    s = format(s, "]]");
+
     return (s);
 }