summaryrefslogtreecommitdiffstats
path: root/src/vnet/fib/fib_entry_src_interface.c
diff options
context:
space:
mode:
authorNeale Ranns <nranns@cisco.com>2017-03-26 10:56:33 -0700
committerDamjan Marion <dmarion.lists@gmail.com>2017-03-29 12:06:13 +0000
commit9a69a6095f67b8979a02f128f44e449889454273 (patch)
tree8fca4f2c4b91326dff94e56766d0c20e7598e0ef /src/vnet/fib/fib_entry_src_interface.c
parent8424af7bd5daf0d754daeb8f49c57c760b9c5baa (diff)
Sub-net broadcast addresses for IPv4
Change-Id: Ib2189d01e8bc61de57404159690fb70f89c47277 Signed-off-by: Neale Ranns <nranns@cisco.com>
Diffstat (limited to 'src/vnet/fib/fib_entry_src_interface.c')
-rw-r--r--src/vnet/fib/fib_entry_src_interface.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/vnet/fib/fib_entry_src_interface.c b/src/vnet/fib/fib_entry_src_interface.c
index ca04716ed8f..bb87818fe4b 100644
--- a/src/vnet/fib/fib_entry_src_interface.c
+++ b/src/vnet/fib/fib_entry_src_interface.c
@@ -32,6 +32,25 @@ fib_entry_src_interface_init (fib_entry_src_t *src)
}
static void
+fib_entry_src_interface_add (fib_entry_src_t *src,
+ const fib_entry_t *entry,
+ fib_entry_flag_t flags,
+ fib_protocol_t proto,
+ const dpo_id_t *dpo)
+{
+ src->fes_pl = fib_path_list_create_special(
+ proto,
+ fib_entry_src_flags_2_path_list_flags(flags),
+ dpo);
+}
+
+static void
+fib_entry_src_interface_remove (fib_entry_src_t *src)
+{
+ src->fes_pl = FIB_NODE_INDEX_INVALID;
+}
+
+static void
fib_entry_src_interface_path_swap (fib_entry_src_t *src,
const fib_entry_t *entry,
fib_path_list_flags_t pl_flags,
@@ -176,6 +195,8 @@ fib_entry_src_interface_format (fib_entry_src_t *src,
const static fib_entry_src_vft_t interface_src_vft = {
.fesv_init = fib_entry_src_interface_init,
+ .fesv_add = fib_entry_src_interface_add,
+ .fesv_remove = fib_entry_src_interface_remove,
.fesv_path_swap = fib_entry_src_interface_path_swap,
.fesv_activate = fib_entry_src_interface_activate,
.fesv_deactivate = fib_entry_src_interface_deactivate,