summaryrefslogtreecommitdiffstats
path: root/hicn-plugin/src/data_push_node.c
diff options
context:
space:
mode:
authorAlberto Compagno <acompagn+fdio@cisco.com>2019-05-24 16:33:56 +0200
committerAlberto Compagno <acompagn+fdio@cisco.com>2019-05-24 16:37:37 +0200
commit2e1756de877df622680b05be421cb27a884db167 (patch)
tree352a1091836dcc28713846b2be269b639cb9bdf5 /hicn-plugin/src/data_push_node.c
parentddde35131f8a4dbd13068b8233d417518ae75f8f (diff)
[HICN-197] Supporting multiple local faces for the same prefix. Fixed buffer deallocation when data are pushed from the application.
Change-Id: Ibc9625e420d0c8579be3d7f1310a08a5e37f765a Signed-off-by: Alberto Compagno <acompagn+fdio@cisco.com>
Diffstat (limited to 'hicn-plugin/src/data_push_node.c')
-rw-r--r--hicn-plugin/src/data_push_node.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/hicn-plugin/src/data_push_node.c b/hicn-plugin/src/data_push_node.c
index 8f9ecbb8e..ff28b4dea 100644
--- a/hicn-plugin/src/data_push_node.c
+++ b/hicn-plugin/src/data_push_node.c
@@ -141,21 +141,16 @@ hicn_new_data (vlib_main_t * vm, hicn_data_push_runtime_t * rt,
/* Store the original packet buffer in the CS node */
pitp->u.cs.cs_pkt_buf = vlib_get_buffer_index (vm, b0);
- pitp->u.cs.cs_rxface = hicnb0->face_dpo_id;
-
/* Set up the hash node and insert it */
hicn_hashtb_init_node (rt->pitcs->pcs_table, nodep, nameptr, namelen);
- nodep->hn_flags |= HICN_HASH_NODE_CS_FLAGS;
- pitp->shared.entry_flags |= HICN_PCS_ENTRY_CS_FLAG;
-
hicn_hash_entry_t *hash_entry;
ret =
hicn_pcs_cs_insert_update (vm, rt->pitcs, pitp, nodep, &hash_entry,
hicnb0->name_hash, &node_id0, &dpo_ctx_id0,
&vft_id0, &is_cs0, &hash_entry_id, &bucket_id,
- &bucket_is_overflow);
+ &bucket_is_overflow, &(hicnb0->face_dpo_id));
if (ret != HICN_ERROR_NONE)
{
@@ -177,7 +172,6 @@ hicn_new_data (vlib_main_t * vm, hicn_data_push_runtime_t * rt,
}
else
{
- hash_entry->he_flags |= HICN_HASH_ENTRY_FLAG_CS_ENTRY;
prep_buffer_for_cs (vm, b0, isv6);
}
}