* 修复收到重复syn/ack时,kni_get_tcpopt的内存泄漏
* uuid需要加锁,修改traceid的生成方式为pid+clocktime * 重新整理fs2的各项统计 * 修改stream_error发通联日志的信息
This commit is contained in:
@@ -73,59 +73,59 @@ struct kni_tcpopt_info{
|
||||
enum kni_field{
|
||||
KNI_FIELD_BYP_STM,
|
||||
KNI_FIELD_BYP_STM_POLICY,
|
||||
KNI_FIELD_BYP_STM_PME_NEW_FAIL,
|
||||
KNI_FIELD_BYP_STM_NO_TFE,
|
||||
KNI_FIELD_BYP_STM_DUP_TFC,
|
||||
KNI_FIELD_BYP_STM_ERR,
|
||||
//stream error
|
||||
KNI_FIELD_STMERR_ASYM_ROUTING,
|
||||
KNI_FIELD_STMERR_NO_SYN,
|
||||
KNI_FIELD_STMERR_SINGLE_DIR,
|
||||
KNI_FIELD_STMERR_PROTO_UNKNOWN,
|
||||
KNI_FIELD_STMERR_NO_SA,
|
||||
KNI_FIELD_STMERR_ACTION_INVALID,
|
||||
KNI_FIELD_STMERR_NO_SYN_ACK,
|
||||
KNI_FIELD_STMERR_NO_DATA,
|
||||
KNI_FIELD_STMERR_IPHDR_PARSE_FAIL,
|
||||
KNI_FIELD_STMERR_UNSUPPORTED_PROTOCOL,
|
||||
KNI_FIELD_STMERR_INVALID_IP_HDR,
|
||||
KNI_FIELD_STMERR_EXCEED_MTU,
|
||||
KNI_FIELD_STMERR_TUPLE2STM_ADD_FAIL,
|
||||
//stream error: internal error
|
||||
KNI_FIELD_STMERR_INVALID_ACTION,
|
||||
KNI_FIELD_STMERR_SENDTO_TFE_FAIL,
|
||||
//others
|
||||
KNI_FIELD_NULL_PKT,
|
||||
KNI_FIELD_STATE_UNKNOWN,
|
||||
KNI_FIELD_DUP_TFC_STM,
|
||||
KNI_FIELD_DUP_TFC_BYTE,
|
||||
KNI_FIELD_IPV4_STM,
|
||||
KNI_FIELD_IPV6_STM,
|
||||
KNI_FIELD_STMERR_TUPLE2STM_ADD_FAIL,
|
||||
KNI_FIELD_STMERR_NO_TFE,
|
||||
KNI_FIELD_STMERR_PME_INIT_FAIL,
|
||||
KNI_FIELD_STMERR_DUP_TRAFFIC,
|
||||
KNI_FIELD_STMERR_CMSG_ADD_FAIL,
|
||||
//intercept stream
|
||||
KNI_FIELD_INTCP_STM,
|
||||
KNI_FIELD_INTCP_BYTE,
|
||||
KNI_FIELD_SSL_STM,
|
||||
KNI_FIELD_HTTP_STM,
|
||||
KNI_FIELD_SENDLOG_SUCC,
|
||||
KNI_FIELD_SENDLOG_FAIL,
|
||||
KNI_FIELD_PME_NEW_SUCC,
|
||||
KNI_FIELD_PME_FREE,
|
||||
KNI_FIELD_IPV4HDR_PARSE_FAIL,
|
||||
KNI_FIELD_IPV6HDR_PARSE_FAIL,
|
||||
KNI_FIELD_ID2PME_ADD_SUCC,
|
||||
KNI_FIELD_ID2PME_ADD_FAIL,
|
||||
KNI_FIELD_ID2PME_DEL_SUCC,
|
||||
KNI_FIELD_ID2PME_DEL_FAIL,
|
||||
KNI_FIELD_TUPLE2STM_ADD_SUCC,
|
||||
KNI_FIELD_TUPLE2STM_ADD_FAIL,
|
||||
KNI_FIELD_TUPLE2STM_DEL_SUCC,
|
||||
KNI_FIELD_TUPLE2STM_DEL_FAIL,
|
||||
KNI_FIELD_TUPLE2STM_SEARCH_SUCC,
|
||||
KNI_FIELD_TUPLE2STM_SEARCH_FAIL,
|
||||
KNI_FIELD_SAPP_INJECT_SUCC,
|
||||
KNI_FIELD_SAPP_INJECT_FAIL,
|
||||
KNI_FIELD_BLOOM_SEARCH_SUCC,
|
||||
KNI_FIELD_BLOOM_SEARCH_FAIL,
|
||||
KNI_FIELD_BLOOM_ADD_SUCC,
|
||||
KNI_FIELD_BLOOM_ADD_FAIL,
|
||||
KNI_FIELD_BLOOM_HIT,
|
||||
KNI_FIELD_BLOOM_MISS,
|
||||
//intercetp traffic stat
|
||||
KNI_FIELD_IPV4_STM,
|
||||
KNI_FIELD_IPV6_STM,
|
||||
KNI_FIELD_DUP_TFC_STM,
|
||||
KNI_FIELD_DUP_TFC_BYTE,
|
||||
//intercept ready stream
|
||||
KNI_FIELD_INTCP_READY_STM,
|
||||
KNI_FIELD_INTCP_READY_BYTE,
|
||||
KNI_FIELD_TX_TFE_STM,
|
||||
KNI_FIELD_TX_TFE_BYTE,
|
||||
//pme
|
||||
KNI_FIELD_PME_NEW_SUCC,
|
||||
KNI_FIELD_PME_FREE,
|
||||
//errors
|
||||
KNI_FIELD_SENDLOG_FAIL,
|
||||
KNI_FIELD_ID2PME_ADD_FAIL,
|
||||
KNI_FIELD_ID2PME_DEL_FAIL,
|
||||
KNI_FIELD_TUPLE2STM_ADD_FAIL,
|
||||
KNI_FIELD_TUPLE2STM_DEL_FAIL,
|
||||
KNI_FIELD_SAPP_INJECT_FAIL,
|
||||
KNI_FIELD_BLOOM_SEARCH_FAIL,
|
||||
KNI_FIELD_BLOOM_ADD_FAIL,
|
||||
//htable
|
||||
KNI_FIELD_ID2PME_ADD_SUCC,
|
||||
KNI_FIELD_ID2PME_DEL_SUCC,
|
||||
KNI_FIELD_TUPLE2STM_ADD_SUCC,
|
||||
KNI_FIELD_TUPLE2STM_DEL_SUCC,
|
||||
//send_log
|
||||
KNI_FIELD_SENDLOG_SUCC,
|
||||
//sapp_inject
|
||||
KNI_FIELD_SAPP_INJECT_SUCC,
|
||||
//dabloom
|
||||
KNI_FIELD_BLOOM_HIT,
|
||||
KNI_FIELD_BLOOM_MISS,
|
||||
//KNI_FIELD_TFE_STATUS_BASE must be last
|
||||
KNI_FIELD_TFE_STATUS_BASE,
|
||||
};
|
||||
@@ -175,7 +175,7 @@ uint16_t kni_ip_checksum(const void *buf, size_t hdr_len);
|
||||
uint16_t kni_tcp_checksum(const void *_buf, size_t len, in_addr_t src_addr, in_addr_t dest_addr);
|
||||
uint16_t kni_tcp_checksum_v6(const void *_buf, size_t len, struct in6_addr src_addr, struct in6_addr dest_addr);
|
||||
uint16_t kni_udp_checksum(const void *_buf, size_t len, in_addr_t src_addr, in_addr_t dest_addr);
|
||||
struct kni_tcpopt_info* kni_get_tcpopt(struct tcphdr* tcphdr, int tcphdr_len);
|
||||
void kni_get_tcpopt(struct kni_tcpopt_info *tcpopt, struct tcphdr* tcphdr,int tcphdr_len);
|
||||
int kni_ipv4_addr_get_by_eth(const char *ifname, uint32_t *ip);
|
||||
int kni_ipv4_header_parse(const void *a_packet, struct pkt_info *pktinfo);
|
||||
int kni_ipv6_header_parse(const void *a_packet, struct pkt_info *pktinfo);
|
||||
|
||||
Reference in New Issue
Block a user