diff options
| author | luwenpeng <[email protected]> | 2023-11-23 16:52:06 +0800 |
|---|---|---|
| committer | luwenpeng <[email protected]> | 2023-11-24 11:37:24 +0800 |
| commit | bda50d79af1f7c59f5ab71fdefff06e3e3397be2 (patch) | |
| tree | 8eec56e3276271a192c2f73c1e2831aa5c02e22f /platform/include/sce.h | |
| parent | cbac7fea291ded728a630227e196e17543f4646d (diff) | |
perf: 删除无效代码;修改变量命名;减少内存分配
Diffstat (limited to 'platform/include/sce.h')
| -rw-r--r-- | platform/include/sce.h | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/platform/include/sce.h b/platform/include/sce.h index 0eba8c1..7d5bf9b 100644 --- a/platform/include/sce.h +++ b/platform/include/sce.h @@ -49,11 +49,11 @@ struct metadata uint64_t session_id; uint32_t rehash_index; - char *raw_data; + char *raw_data; // refer to current packet data int raw_len; uint16_t l7offset; - int is_e2i_dir; + int direction; // 1: E2I; 0: I2E int is_ctrl_pkt; int is_decrypted; @@ -61,11 +61,10 @@ struct metadata struct route_ctx route_ctx; }; -struct metadata *metadata_new(); -int metadata_is_empty(struct metadata *meta); -void metadata_shallow_copy(struct metadata *dst, struct metadata *src); -void metadata_deep_copy(struct metadata *dst, struct metadata *src); -void metadata_free(struct metadata *meta); +int metadata_isempty(struct metadata *meta); +void metadata_copy(struct metadata *dst, struct metadata *src); + +char *memdup(const char *src, int len); /****************************************************************************** * Struct Session Ctx @@ -75,18 +74,24 @@ struct session_ctx { uint64_t session_id; char *session_addr; + + // dup from received control packet, for sending control packet + char *ctrl_packet_header_data; + uint16_t ctrl_packet_header_len; + uint16_t vxlan_src_port; struct four_tuple inner_tuple4; struct mutable_array rule_ids; - struct metadata *decrypted_meta_i2e; - struct metadata *decrypted_meta_e2i; - struct metadata *raw_meta_i2e; - struct metadata *raw_meta_e2i; - struct metadata *ctrl_meta; + struct metadata decrypted_meta_i2e; + struct metadata decrypted_meta_e2i; + struct metadata raw_meta_i2e; + struct metadata raw_meta_e2i; + struct metadata ctrl_meta; - struct selected_chainings chainings; + struct selected_chaining *chaining_raw; + struct selected_chaining *chaining_decrypted; struct thread_ctx *ref_thread_ctx; }; |
