diff options
| author | yangwei <[email protected]> | 2024-02-28 15:56:02 +0800 |
|---|---|---|
| committer | yangwei <[email protected]> | 2024-02-28 15:56:02 +0800 |
| commit | f30d1bb7a0645d6bc3ef5f2d7cde326106024bc8 (patch) | |
| tree | 8b177d33269931707b4a5981cb8a9b92ec3ee520 | |
| parent | f5cd63b9b0b9312ed9ee871e89fc14093249061d (diff) | |
🐞 fix(tcp & udp new stream): 显式增加控制报文不触发新建流的逻辑
| -rw-r--r-- | src/dealpkt/deal_tcp.c | 3 | ||||
| -rw-r--r-- | src/dealpkt/deal_udp.c | 18 |
2 files changed, 18 insertions, 3 deletions
diff --git a/src/dealpkt/deal_tcp.c b/src/dealpkt/deal_tcp.c index 6bf15f6..3467309 100644 --- a/src/dealpkt/deal_tcp.c +++ b/src/dealpkt/deal_tcp.c @@ -2824,7 +2824,8 @@ static int deal_tcp_stream(struct streamindex *pindex, const void *this_iphdr, s { if(0==(TCP_CTEAT_LINK_BYSYN & tcp_creatlink_model )) return PASS; - + if(raw_pkt->is_ctrl_pkt==1) + return PASS; pindex_tcp=tcp_add_new_stream_bysyn(pindex,this_iphdr, this_tcphdr,tcplen,CTREAT_LINK,raw_pkt); if(likely(pindex_tcp != NULL)) { diff --git a/src/dealpkt/deal_udp.c b/src/dealpkt/deal_udp.c index 7bd47dd..d078315 100644 --- a/src/dealpkt/deal_udp.c +++ b/src/dealpkt/deal_udp.c @@ -666,7 +666,14 @@ int dealipv4udppkt(struct streamindex *pindex, const struct mesa_ip4_hdr * this_ return PASS; } } - a_index = udp_add_new_stream(pindex, udph, raw_pkt); + if(raw_pkt->is_ctrl_pkt==0) + { + a_index = udp_add_new_stream(pindex, udph, raw_pkt); + } + else + { + return PASS; + } } //add by lqy ֻ�е�����δ����ʱ����lru else @@ -928,7 +935,14 @@ int dealipv6udppkt(struct streamindex *pindex,const struct mesa_ip6_hdr *a_packe return PASS; } } - a_index = udp_add_new_stream(pindex, udph, raw_pkt); + if(raw_pkt->is_ctrl_pkt==0) + { + a_index = udp_add_new_stream(pindex, udph, raw_pkt); + } + else + { + return PASS; + } } else { |
