From: Russ Combs (rucombs) Date: Tue, 20 Oct 2015 15:46:37 +0000 (-0400) Subject: Merge pull request #89 in SNORT/snort3 from ips_pdu_flush_patch to master X-Git-Tag: 3.0.0-233~780 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3769fa75aaaed3d48db7bca0977f327a3a273cad;p=thirdparty%2Fsnort3.git Merge pull request #89 in SNORT/snort3 from ips_pdu_flush_patch to master Squashed commit of the following: commit 5b7bf9d91d1f6020a24c2a98bcb9f0179f10b610 Author: davis mcpherson Date: Tue Oct 20 11:12:32 2015 -0400 fix init order of local vars, get_q_sequenced must be called before 'seg' is set to value of seglist_next as get_q_sequenced may update seglist_next --- diff --git a/src/stream/tcp/tcp_reassembly.cc b/src/stream/tcp/tcp_reassembly.cc index e8d40b0eb..80ef82729 100644 --- a/src/stream/tcp/tcp_reassembly.cc +++ b/src/stream/tcp/tcp_reassembly.cc @@ -1163,10 +1163,9 @@ static inline uint32_t flush_pdu_ips(TcpSession* ssn, TcpTracker* trk, uint32_t* { PERF_PROFILE(s5TcpPAFPerfStats); - TcpSegment* seg = trk->seglist_next; - uint32_t total = 0; uint32_t avail = get_q_sequenced(trk); + TcpSegment* seg = trk->seglist_next; // must stop if gap (checked in paf_check) while (seg && *flags && (total < avail))