From: Alberto Compagno Date: Mon, 2 Jul 2018 23:41:53 +0000 (+0200) Subject: Fixed bug in multiloop pgen server X-Git-Url: https://gerrit.fd.io/r/gitweb?a=commitdiff_plain;h=7ec7392541f789bb4115dc9a3406656db904cd3f;p=cicn.git Fixed bug in multiloop pgen server Change-Id: Ib3cc4b0e8dbf0a28f407ff0b8ca170196bfe5652 Signed-off-by: Alberto Compagno --- diff --git a/cicn-plugin/cicn/cicn_pg.c b/cicn-plugin/cicn/cicn_pg.c index 1e25476e..7d62cfe5 100644 --- a/cicn-plugin/cicn/cicn_pg.c +++ b/cicn-plugin/cicn/cicn_pg.c @@ -608,7 +608,6 @@ icnpg_node_server_fn (vlib_main_t * vm, /* Change message and packet from Interest to Content */ *(body0 + 1) = CICN_PKT_TYPE_CONTENT; - C_PUTINT16 (body0 + 14, CICN_MSG_TYPE_CONTENT); vlib_buffer_t *rb = NULL; rb = vlib_get_buffer (vm, sm->pgen_svr_buffer_idx); @@ -642,6 +641,7 @@ icnpg_node_server_fn (vlib_main_t * vm, // Update interest lifetime to cache time C_PUTINT16 (body0 + 8, CICN_HDR_TLV_CACHE_TIME); + C_PUTINT16 (body0 + 14, CICN_MSG_TYPE_CONTENT); // Update the length of the message uint16_t msg_len; C_GETINT16 (msg_len, body0 + 16); @@ -689,7 +689,6 @@ icnpg_node_server_fn (vlib_main_t * vm, /* Change message and packet types from Interest to Content */ *(body1 + 1) = CICN_PKT_TYPE_CONTENT; - C_PUTINT16 (body1 + 14, CICN_MSG_TYPE_CONTENT); vlib_buffer_t *rb = NULL; rb = vlib_get_buffer (vm, sm->pgen_svr_buffer_idx); @@ -723,6 +722,7 @@ icnpg_node_server_fn (vlib_main_t * vm, // Update interest lifetime to cache time C_PUTINT16 (body1 + 8, CICN_HDR_TLV_CACHE_TIME); + C_PUTINT16 (body1 + 14, CICN_MSG_TYPE_CONTENT); // Update the length of the message uint16_t msg_len; C_GETINT16 (msg_len, body1 + 16); @@ -841,7 +841,6 @@ icnpg_node_server_fn (vlib_main_t * vm, /* Change message and packet types from Interest to Content */ *(body0 + 1) = CICN_PKT_TYPE_CONTENT; - C_PUTINT16 (body0 + 8, CICN_MSG_TYPE_CONTENT); vlib_buffer_t *rb = NULL; rb = vlib_get_buffer (vm, sm->pgen_svr_buffer_idx); @@ -872,10 +871,14 @@ icnpg_node_server_fn (vlib_main_t * vm, b0 = vlib_get_buffer (vm, index); body0 = vlib_buffer_get_current (b0); + // Update interest lifetime to cache time + C_PUTINT16 (body0 + 8, CICN_HDR_TLV_CACHE_TIME); + + C_PUTINT16 (body0 + 14, CICN_MSG_TYPE_CONTENT); // Update the length of the message uint16_t msg_len; - C_GETINT16 (msg_len, body0 + 10); - C_PUTINT16 (body0 + 10, msg_len + bytes_to_copy); + C_GETINT16 (msg_len, body0 + 16); + C_PUTINT16 (body0 + 16, msg_len + bytes_to_copy); // Update the length of the packet C_PUTINT16 (body0 + 2, pkt_len + bytes_to_copy);