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
30typedef 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. */
38
39void FlowBitFree(FlowBit *);
40void FlowBitRegisterTests(void);
41
42int FlowBitSet(Flow *, uint32_t);
43void FlowBitUnset(Flow *, uint32_t);
44bool FlowBitToggle(Flow *, uint32_t);
45int FlowBitIsset(Flow *, uint32_t);
46int FlowBitIsnotset(Flow *, uint32_t);
47#endif /* SURICATA_FLOW_BIT_H */
void FlowBitRegisterTests(void)
Definition flow-bit.c:357
int FlowBitIsset(Flow *, uint32_t)
Definition flow-bit.c:119
void FlowBitFree(FlowBit *)
Definition flow-bit.c:143
void FlowBitUnset(Flow *, uint32_t)
Definition flow-bit.c:99
struct FlowBit_ FlowBit
int FlowBitSet(Flow *, uint32_t)
add a flowbit to the flow
Definition flow-bit.c:94
int FlowBitIsnotset(Flow *, uint32_t)
Definition flow-bit.c:131
bool FlowBitToggle(Flow *, uint32_t)
Definition flow-bit.c:107
uint8_t pad[2]
Definition flow-bit.h:32
uint16_t type
Definition flow-bit.h:31
GenericVar * next
Definition flow-bit.h:34
uint32_t idx
Definition flow-bit.h:33
Flow data structure.
Definition flow.h:356