TSG-13878 tsg-service-chaining-engine支持fieldstat2

This commit is contained in:
luwenpeng
2023-02-21 09:58:31 +08:00
parent b1abe96b06
commit 823490bcd1
20 changed files with 555 additions and 204 deletions

View File

@@ -1,4 +1,5 @@
#include <string.h>
#include <stdlib.h>
#include <cjson/cJSON.h>
#include "log.h"
@@ -54,12 +55,12 @@ int ctrl_packet_parser_parse(struct ctrl_pkt_parser *handler, const char *data,
// session_id
item = cJSON_GetObjectItem(json, "session_id");
if (!item || !cJSON_IsNumber(item))
if (!item || !cJSON_IsString(item))
{
LOG_ERROR("%s: unexpected control packet: (invalid session_id format) %s", LOG_TAG_CTRLPKT, data);
goto error_out;
}
handler->session_id = item->valueint;
handler->session_id = atoll(item->valuestring);
// state
item = cJSON_GetObjectItem(json, "state");

View File

@@ -9,9 +9,9 @@ void g_vxlan_set_packet_dir(struct g_vxlan *hdr, int dir_is_e2i)
hdr->dir_is_e2i = (!!dir_is_e2i);
}
void g_vxlan_set_next_sf_index(struct g_vxlan *hdr, int next_sf_index)
void g_vxlan_set_sf_index(struct g_vxlan *hdr, int sf_index)
{
hdr->next_sf_index = (0x1f & next_sf_index);
hdr->sf_index = (0x1f & sf_index);
}
void g_vxlan_set_traffic_type(struct g_vxlan *hdr, int traffic_is_decrypted)
@@ -24,9 +24,9 @@ int g_vxlan_get_packet_dir(struct g_vxlan *hdr)
return (!!hdr->dir_is_e2i);
}
int g_vxlan_get_next_sf_index(struct g_vxlan *hdr)
int g_vxlan_get_sf_index(struct g_vxlan *hdr)
{
return hdr->next_sf_index;
return hdr->sf_index;
}
int g_vxlan_get_traffic_type(struct g_vxlan *hdr)

View File

@@ -392,7 +392,7 @@ uint64_t raw_packet_parser_get_hash_value(struct raw_pkt_parser *handler, enum l
char *inner_addr_str = addr_tuple4_to_str(&inner_addr);
char *outer_addr_str = addr_tuple4_to_str(&outer_addr);
LOG_ERROR("%s: pkt_trace_id: %lu, outer_addr: %s, inner_addr: %s, is_internal: %d, hash_method: %s, hash_value: %lu",
LOG_DEBUG("%s: pkt_trace_id: %lu, outer_addr: %s, inner_addr: %s, is_internal: %d, hash_method: %s, hash_value: %lu",
LOG_TAG_RAWPKT, handler->pkt_trace_id, outer_addr_str, inner_addr_str, dir_is_internal, ldbc_method_to_string(method), hash_value);
free(inner_addr_str);
free(outer_addr_str);