Coverage Report

Created: 2025-11-16 07:09

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/suricata7/src/stream-tcp-reassemble.h
Line
Count
Source
1
/* Copyright (C) 2007-2024 Open Information Security Foundation
2
 *
3
 * You can copy, redistribute or modify this Program under the terms of
4
 * the GNU General Public License version 2 as published by the Free
5
 * Software Foundation.
6
 *
7
 * This program is distributed in the hope that it will be useful,
8
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10
 * GNU General Public License for more details.
11
 *
12
 * You should have received a copy of the GNU General Public License
13
 * version 2 along with this program; if not, write to the Free Software
14
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
15
 * 02110-1301, USA.
16
 */
17
18
/**
19
 * \file
20
 *
21
 * \author Victor Julien <victor@inliniac.net>
22
 * \author Gurvinder Singh <gurvindersinghdahiya@gmail.com>
23
 */
24
25
#ifndef __STREAM_TCP_REASSEMBLE_H__
26
#define __STREAM_TCP_REASSEMBLE_H__
27
28
#include "suricata.h"
29
#include "flow.h"
30
#include "stream-tcp-private.h"
31
#include "util-exception-policy.h"
32
33
/** Supported OS list and default OS policy is BSD */
34
enum
35
{
36
    OS_POLICY_NONE = 1,
37
    OS_POLICY_BSD,
38
    OS_POLICY_BSD_RIGHT,
39
    OS_POLICY_OLD_LINUX,
40
    OS_POLICY_LINUX,
41
    OS_POLICY_OLD_SOLARIS,
42
    OS_POLICY_SOLARIS,
43
    OS_POLICY_HPUX10,
44
    OS_POLICY_HPUX11,
45
    OS_POLICY_IRIX,
46
    OS_POLICY_MACOS,
47
    OS_POLICY_WINDOWS,
48
    OS_POLICY_VISTA,
49
    OS_POLICY_WINDOWS2K3,
50
    OS_POLICY_FIRST,
51
    OS_POLICY_LAST
52
};
53
54
enum StreamUpdateDir {
55
    UPDATE_DIR_NONE = 0,
56
    UPDATE_DIR_PACKET,
57
    UPDATE_DIR_OPPOSING,
58
    UPDATE_DIR_BOTH,
59
};
60
61
typedef struct TcpReassemblyThreadCtx_ {
62
    void *app_tctx;
63
64
    int segment_thread_pool_id;
65
66
    /** TCP segments which are not being reassembled due to memcap was reached */
67
    uint16_t counter_tcp_segment_memcap;
68
    /** times exception policy for stream reassembly memcap was applied **/
69
    ExceptionPolicyCounters counter_tcp_reas_eps;
70
71
    uint16_t counter_tcp_segment_from_cache;
72
    uint16_t counter_tcp_segment_from_pool;
73
74
    /** number of streams that stop reassembly because their depth is reached */
75
    uint16_t counter_tcp_stream_depth;
76
    /** count number of streams with a unrecoverable stream gap (missing pkts) */
77
    uint16_t counter_tcp_reass_gap;
78
79
    /** count packet data overlaps */
80
    uint16_t counter_tcp_reass_overlap;
81
    /** count overlaps with different data */
82
    uint16_t counter_tcp_reass_overlap_diff_data;
83
84
    uint16_t counter_tcp_reass_data_normal_fail;
85
    uint16_t counter_tcp_reass_data_overlap_fail;
86
87
    /** count OOB bytes */
88
    uint16_t counter_tcp_urgent_oob;
89
} TcpReassemblyThreadCtx;
90
91
199k
#define OS_POLICY_DEFAULT   OS_POLICY_BSD
92
93
void StreamTcpReassembleInitMemuse(void);
94
int StreamTcpReassembleHandleSegment(
95
        ThreadVars *, TcpReassemblyThreadCtx *, TcpSession *, TcpStream *, Packet *);
96
int StreamTcpReassembleInit(bool);
97
void StreamTcpReassembleFree(bool);
98
void *StreamTcpReassembleRealloc(void *optr, size_t orig_size, size_t size);
99
void StreamTcpReassembleRegisterTests(void);
100
TcpReassemblyThreadCtx *StreamTcpReassembleInitThreadCtx(ThreadVars *tv);
101
void StreamTcpReassembleFreeThreadCtx(TcpReassemblyThreadCtx *);
102
int StreamTcpReassembleAppLayer (ThreadVars *tv, TcpReassemblyThreadCtx *ra_ctx,
103
                                 TcpSession *ssn, TcpStream *stream,
104
                                 Packet *p, enum StreamUpdateDir dir);
105
106
void StreamTcpCreateTestPacket(uint8_t *, uint8_t, uint8_t, uint8_t);
107
108
void StreamTcpSetSessionNoReassemblyFlag(TcpSession *, char);
109
void StreamTcpSetSessionBypassFlag(TcpSession *);
110
void StreamTcpSetDisableRawReassemblyFlag(TcpSession *, char);
111
112
void StreamTcpSetOSPolicy(TcpStream *, Packet *);
113
114
int StreamTcpReassembleHandleSegmentHandleData(ThreadVars *tv, TcpReassemblyThreadCtx *ra_ctx,
115
        TcpSession *ssn, TcpStream *stream, Packet *p);
116
int StreamTcpReassembleInsertSegment(ThreadVars *, TcpReassemblyThreadCtx *, TcpStream *,
117
        TcpSegment *, Packet *, uint8_t *pkt_data, uint16_t pkt_datalen);
118
TcpSegment *StreamTcpGetSegment(ThreadVars *, TcpReassemblyThreadCtx *);
119
120
void StreamTcpReturnStreamSegments(TcpStream *);
121
void StreamTcpSegmentReturntoPool(TcpSegment *);
122
123
void StreamTcpReassembleTriggerRawReassembly(TcpSession *, int direction);
124
125
void StreamTcpPruneSession(Flow *, uint8_t);
126
int StreamTcpReassembleDepthReached(Packet *p);
127
128
void StreamTcpReassembleIncrMemuse(uint64_t size);
129
void StreamTcpReassembleDecrMemuse(uint64_t size);
130
int StreamTcpReassembleSetMemcap(uint64_t size);
131
uint64_t StreamTcpReassembleGetMemcap(void);
132
int StreamTcpReassembleCheckMemcap(uint64_t size);
133
uint64_t StreamTcpReassembleMemuseGlobalCounter(void);
134
135
void StreamTcpDisableAppLayer(Flow *f);
136
int StreamTcpAppLayerIsDisabled(Flow *f);
137
138
#ifdef UNITTESTS
139
int StreamTcpCheckStreamContents(uint8_t *, uint16_t , TcpStream *);
140
#endif
141
142
bool StreamReassembleRawHasDataReady(TcpSession *ssn, Packet *p);
143
void StreamTcpReassemblySetMinInspectDepth(TcpSession *ssn, int direction, uint32_t depth);
144
145
bool IsTcpSessionDumpingEnabled(void);
146
void EnableTcpSessionDumping(void);
147
148
static inline bool STREAM_LASTACK_GT_BASESEQ(const TcpStream *stream)
149
34.0M
{
150
    /* last ack not yet initialized */
151
34.0M
    if (STREAM_BASE_OFFSET(stream) == 0 && (stream->tcp_flags & TH_ACK) == 0) {
152
#ifdef UNITTESTS
153
        if (RunmodeIsUnittests() && stream->last_ack == 0)
154
            return false;
155
#else
156
166k
        return false;
157
166k
#endif
158
166k
    }
159
33.9M
    if (SEQ_GT(stream->last_ack, stream->base_seq))
160
30.8M
        return true;
161
3.08M
    return false;
162
33.9M
}
Unexecuted instantiation: app-layer-parser.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-smtp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-ssh.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-ssl.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-tftp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-engine-state.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: flow.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: flow-hash.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: flow-manager.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: flow-timeout.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: flow-util.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: runmode-unix-socket.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: stream-tcp.c:STREAM_LASTACK_GT_BASESEQ
stream-tcp-list.c:STREAM_LASTACK_GT_BASESEQ
Line
Count
Source
149
12.0M
{
150
    /* last ack not yet initialized */
151
12.0M
    if (STREAM_BASE_OFFSET(stream) == 0 && (stream->tcp_flags & TH_ACK) == 0) {
152
#ifdef UNITTESTS
153
        if (RunmodeIsUnittests() && stream->last_ack == 0)
154
            return false;
155
#else
156
145k
        return false;
157
145k
#endif
158
145k
    }
159
11.9M
    if (SEQ_GT(stream->last_ack, stream->base_seq))
160
9.40M
        return true;
161
2.49M
    return false;
162
11.9M
}
stream-tcp-reassemble.c:STREAM_LASTACK_GT_BASESEQ
Line
Count
Source
149
22.0M
{
150
    /* last ack not yet initialized */
151
22.0M
    if (STREAM_BASE_OFFSET(stream) == 0 && (stream->tcp_flags & TH_ACK) == 0) {
152
#ifdef UNITTESTS
153
        if (RunmodeIsUnittests() && stream->last_ack == 0)
154
            return false;
155
#else
156
20.1k
        return false;
157
20.1k
#endif
158
20.1k
    }
159
22.0M
    if (SEQ_GT(stream->last_ack, stream->base_seq))
160
21.4M
        return true;
161
585k
    return false;
162
22.0M
}
Unexecuted instantiation: stream-tcp-sack.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: suricata.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: util-exception-policy.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: util-file.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: util-host-os-info.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: util-running-modes.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-detect-proto.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-dnp3.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-enip.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-ftp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-frames.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: app-layer-htp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: decode.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: decode-udp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: defrag.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-content.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-engine-frame.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-engine-payload.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-engine-register.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-file-data.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-filemagic.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-filename.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-filesize.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-filestore.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-fragbits.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ftpbounce.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-client-body.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-cookie.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-header.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-header-common.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-header-names.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-host.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-method.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-protocol.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-raw-header.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-request-line.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-response-line.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-server-body.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-start.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-stat-code.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-stat-msg.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-ua.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-http-uri.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ike-spi.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ike-nonce-payload.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ike-key-exchange-payload.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-isdataat.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-lua.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-modbus.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-mqtt-subscribe-topic.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-mqtt-unsubscribe-topic.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-parse.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-pcre.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-reference.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-replace.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-rfb-name.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-sip-method.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-sip-protocol.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-sip-request-line.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-sip-response-line.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-sip-stat-code.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-sip-stat-msg.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-sip-uri.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssh-hassh.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssh-hassh-server.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssh-hassh-server-string.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssh-hassh-string.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssh-proto.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssh-proto-version.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssh-software.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssh-software-version.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssl-state.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ssl-version.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-stream_size.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-threshold.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-cert-fingerprint.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-cert-issuer.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-certs.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-cert-serial.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-cert-subject.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-cert-validity.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-ja3-hash.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-ja3s-hash.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-ja3s-string.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-ja3-string.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-sni.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-version.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-tls-random.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-ttl.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-uricontent.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-urilen.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-within.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: flow-worker.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-eve-stream.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-filestore.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-alert.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-anomaly.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-bittorrent-dht.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-dhcp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-dnp3.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-dns.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-email-common.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-file.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-flow.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-frame.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-ftp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-http2.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-http.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-ike.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-krb5.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-modbus.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-quic.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-mqtt.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-nfs.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-pgsql.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-rdp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-rfb.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-sip.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-smtp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-snmp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-ssh.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-template.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-tftp.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-json-tls.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-streaming.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: output-tx.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: alert-debuglog.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-app-layer-event.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-app-layer-protocol.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-bypass.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-bytejump.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-bytetest.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-config.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-dce-iface.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-dce-opnum.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-dce-stub-data.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-depth.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-distance.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-dns-query.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-engine-enip.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-engine-event.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: detect-engine-file.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: log-httplog.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: log-pcap.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: log-tlslog.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: stream.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: fuzz_sigpcap_aware.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: util-unittest-helper.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: fuzz_sigpcap.c:STREAM_LASTACK_GT_BASESEQ
Unexecuted instantiation: fuzz_predefpcap_aware.c:STREAM_LASTACK_GT_BASESEQ
163
164
uint32_t StreamDataAvailableForProtoDetect(TcpStream *stream);
165
166
#endif /* __STREAM_TCP_REASSEMBLE_H__ */
167