suricata
flow-bit.h
Go to the documentation of this file.
1
/* Copyright (C) 2007-2010 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_FLOW_BIT_H
25
#define SURICATA_FLOW_BIT_H
26
27
#include "
flow.h
"
28
#include "
util-var.h
"
29
30
typedef
struct
FlowBit_
{
31
uint16_t
type
;
/* type, DETECT_FLOWBITS in this case */
32
uint8_t
pad
[2];
33
uint32_t
idx
;
/* name idx */
34
GenericVar
*
next
;
/* right now just implement this as a list,
35
* in the long run we have think of something
36
* faster. */
37
}
FlowBit
;
38
39
void
FlowBitFree
(
FlowBit
*);
40
void
FlowBitRegisterTests
(
void
);
41
42
int
FlowBitSet
(
Flow
*, uint32_t);
43
void
FlowBitUnset
(
Flow
*, uint32_t);
44
bool
FlowBitToggle
(
Flow
*, uint32_t);
45
int
FlowBitIsset
(
Flow
*, uint32_t);
46
int
FlowBitIsnotset
(
Flow
*, uint32_t);
47
#endif
/* SURICATA_FLOW_BIT_H */
FlowBitIsset
int FlowBitIsset(Flow *, uint32_t)
Definition:
flow-bit.c:119
FlowBitRegisterTests
void FlowBitRegisterTests(void)
Definition:
flow-bit.c:357
FlowBitUnset
void FlowBitUnset(Flow *, uint32_t)
Definition:
flow-bit.c:99
Flow_
Flow data structure.
Definition:
flow.h:356
FlowBitFree
void FlowBitFree(FlowBit *)
Definition:
flow-bit.c:143
FlowBit_::next
GenericVar * next
Definition:
flow-bit.h:34
util-var.h
FlowBitIsnotset
int FlowBitIsnotset(Flow *, uint32_t)
Definition:
flow-bit.c:131
FlowBit
struct FlowBit_ FlowBit
FlowBit_::type
uint16_t type
Definition:
flow-bit.h:31
FlowBitSet
int FlowBitSet(Flow *, uint32_t)
add a flowbit to the flow
Definition:
flow-bit.c:94
GenericVar_
Definition:
util-var.h:51
FlowBit_::idx
uint32_t idx
Definition:
flow-bit.h:33
FlowBit_
Definition:
flow-bit.h:30
FlowBitToggle
bool FlowBitToggle(Flow *, uint32_t)
Definition:
flow-bit.c:107
flow.h
FlowBit_::pad
uint8_t pad[2]
Definition:
flow-bit.h:32
src
flow-bit.h
Generated on Fri Apr 18 2025 23:30:34 for suricata by
1.8.18