suricata
detect-engine-proto.h
Go to the documentation of this file.
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
*/
23
24
#ifndef SURICATA_DETECT_PROTO_H
25
#define SURICATA_DETECT_PROTO_H
26
27
// clang-format off
28
#define DETECT_PROTO_ANY BIT_U8(0)
/**< Indicate that given protocol is considered as IP */
29
#define DETECT_PROTO_ONLY_PKT BIT_U8(1)
/**< Indicate that we only care about packet payloads. */
30
#define DETECT_PROTO_ONLY_STREAM BIT_U8(2)
/**< Indicate that we only care about stream payloads. */
31
#define DETECT_PROTO_IPV4 BIT_U8(3)
/**< IPv4 only */
32
#define DETECT_PROTO_IPV6 BIT_U8(4)
/**< IPv6 only */
33
// clang-format on
34
35
typedef
struct
DetectProto_
{
36
uint8_t
proto
[256/8];
/**< bit array for 256 protocol bits */
37
uint8_t
flags
;
38
}
DetectProto
;
39
40
/* prototypes */
41
int
DetectProtoParse
(
DetectProto
*dp,
const
char
*
str
);
42
int
DetectProtoContainsProto
(
const
DetectProto
*,
int
);
43
44
void
DetectProtoTests
(
void
);
45
46
#endif
/* SURICATA_DETECT_PROTO_H */
DetectProtoContainsProto
int DetectProtoContainsProto(const DetectProto *, int)
see if a DetectProto contains a certain proto
Definition:
detect-engine-proto.c:135
DetectProtoParse
int DetectProtoParse(DetectProto *dp, const char *str)
Parses a protocol sent as a string.
Definition:
detect-engine-proto.c:56
DetectProto
struct DetectProto_ DetectProto
DetectProtoTests
void DetectProtoTests(void)
this function registers unit tests for DetectProto
Definition:
detect-engine-proto.c:394
DetectProto_::proto
uint8_t proto[256/8]
Definition:
detect-engine-proto.h:36
DetectProto_::flags
uint8_t flags
Definition:
detect-engine-proto.h:37
DetectProto_
Definition:
detect-engine-proto.h:35
str
#define str(s)
Definition:
suricata-common.h:291
src
detect-engine-proto.h
Generated on Sun Dec 1 2024 23:30:28 for suricata by
1.8.18