suricata
rust.h
Go to the documentation of this file.
1 /* Copyright (C) 2017 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 #ifndef __RUST_H__
19 #define __RUST_H__
20 
21 typedef struct SuricataContext_ {
22  SCError (*SCLogMessage)(const SCLogLevel, const char *, const unsigned int,
23  const char *, const SCError, const char *message);
26  uint8_t);
28 
30  uint32_t track_id, const uint8_t *name, uint16_t name_len,
31  const uint8_t *data, uint32_t data_len, uint16_t flags);
32  int (*FileCloseFileById)(FileContainer *, uint32_t track_id,
33  const uint8_t *data, uint32_t data_len, uint16_t flags);
34  int (*FileAppendDataById)(FileContainer *, uint32_t track_id,
35  const uint8_t *data, uint32_t data_len);
36  int (*FileAppendGAPById)(FileContainer *, uint32_t track_id,
37  const uint8_t *data, uint32_t data_len);
39  void (*FilePrune)(FileContainer *ffc);
40  void (*FileSetTx)(FileContainer *, uint64_t);
41 
43 
44 typedef struct SuricataFileContext_ {
45 
47 
49 
50 struct _Store;
51 typedef struct _Store Store;
52 
53 /** Opaque Rust types. */
54 typedef struct NFState_ NFSState;
55 typedef struct NFSTransaction_ NFSTransaction;
56 typedef struct SMBState_ SMBState;
57 typedef struct SMBTransaction_ SMBTransaction;
58 
59 #endif /* !__RUST_H__ */
void(* AppLayerDecoderEventsFreeEvents)(AppLayerDecoderEvents **)
Definition: rust.h:27
uint16_t flags
struct SMBTransaction_ SMBTransaction
Definition: rust.h:57
int(* FileAppendGAPById)(FileContainer *, uint32_t track_id, const uint8_t *data, uint32_t data_len)
Definition: rust.h:36
struct SuricataContext_ SuricataContext
struct NFState_ NFSState
Definition: rust.h:54
struct SuricataFileContext_ SuricataFileContext
struct NFSTransaction_ NFSTransaction
Definition: rust.h:55
SCLogLevel
The various log levels NOTE: when adding new level, don't forget to update SCLogMapLogLevelToSyslogLe...
Definition: util-debug.h:51
struct _Store Store
Definition: rust.h:51
void(* FilePrune)(FileContainer *ffc)
Definition: rust.h:39
int(* FileAppendDataById)(FileContainer *, uint32_t track_id, const uint8_t *data, uint32_t data_len)
Definition: rust.h:34
Data structure to store app layer decoder events.
int(* FileOpenFileWithId)(FileContainer *, const StreamingBufferConfig *, uint32_t track_id, const uint8_t *name, uint16_t name_len, const uint8_t *data, uint32_t data_len, uint16_t flags)
Definition: rust.h:29
int(* FileCloseFileById)(FileContainer *, uint32_t track_id, const uint8_t *data, uint32_t data_len, uint16_t flags)
Definition: rust.h:32
SCError
Definition: util-error.h:29
void(* FileContainerRecycle)(FileContainer *ffc)
Definition: rust.h:38
void(* FileSetTx)(FileContainer *, uint64_t)
Definition: rust.h:40
const StreamingBufferConfig * sbcfg
Definition: rust.h:46
void(* AppLayerDecoderEventsSetEventRaw)(AppLayerDecoderEvents **, uint8_t)
Definition: rust.h:25
void(* DetectEngineStateFree)(DetectEngineState *)
Definition: rust.h:24
SCError(* SCLogMessage)(const SCLogLevel, const char *, const unsigned int, const char *, const SCError, const char *message)
Definition: rust.h:22