summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryangwei <[email protected]>2024-04-03 17:44:34 +0800
committeryangwei <[email protected]>2024-04-03 17:44:34 +0800
commit754af75f68caec3f7d5ece0275e957c09c267568 (patch)
treec44c2c88b2601a9a4222bc5d0521bcb64644f71e
parent97cc3158b48973d96d451fc9cc52011ccba43d16 (diff)
✨ feat(tcp_deal_unorder): 超时或者重置时,tcp乱序缓存不触发插件回调
-rw-r--r--src/dealpkt/deal_tcp.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/dealpkt/deal_tcp.c b/src/dealpkt/deal_tcp.c
index 514c91b..1ef5b48 100644
--- a/src/dealpkt/deal_tcp.c
+++ b/src/dealpkt/deal_tcp.c
@@ -2201,7 +2201,10 @@ static int tcp_deal_unorder(struct streamindex *pindex,struct streaminfo *a_tcp,
{
pdetail_pr->flow_stat->S2C_ooorder_pkt++;
}
- stream_process_tcp(a_tcp,unorder_packet->this_ip_hdr, unorder_packet->this_tcp_hdr, &(unorder_packet->raw_pkt),&(pdetail_pr->apme),&(a_tcp->opstate));
+ if(orderflag==CHECK_ORDER_DATA)
+ {
+ stream_process_tcp(a_tcp,unorder_packet->this_ip_hdr, unorder_packet->this_tcp_hdr, &(unorder_packet->raw_pkt),&(pdetail_pr->apme),&(a_tcp->opstate));
+ }
a_tcp->addr.pkttype=tmpktype;
/* 2016-05-12 lijia add, ��������������unorder_list����BUG, �˴�Ӧ��������nouse״̬ */
if(STREAM_LINK_DATA == last_link_state){
@@ -2246,7 +2249,10 @@ static int tcp_deal_unorder(struct streamindex *pindex,struct streaminfo *a_tcp,
{
pdetail_pr->flow_stat->S2C_ooorder_pkt++;
}
- ret=stream_process_tcp(a_tcp,unorder_packet->this_ip_hdr,unorder_packet->this_tcp_hdr,&(unorder_packet->raw_pkt),&(pdetail_pr->apme),&(a_tcp->opstate));
+ if(orderflag==CHECK_ORDER_DATA)
+ {
+ ret=stream_process_tcp(a_tcp,unorder_packet->this_ip_hdr,unorder_packet->this_tcp_hdr,&(unorder_packet->raw_pkt),&(pdetail_pr->apme),&(a_tcp->opstate));
+ }
a_tcp->addr.pkttype=tmpktype;
tcp_clear_newdata(a_tcp,rcv);
}