mirror of https://github.com/OISF/suricata
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
385 lines
12 KiB
Rust
385 lines
12 KiB
Rust
// This file is automatically generated. Do not edit.
|
|
|
|
pub const SC_PACKAGE_VERSION: &[u8; 10] = b"8.0.0-dev\0";
|
|
pub type __intmax_t = ::std::os::raw::c_long;
|
|
pub type intmax_t = __intmax_t;
|
|
#[repr(u32)]
|
|
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
|
|
pub enum AppProtoEnum {
|
|
ALPROTO_UNKNOWN = 0,
|
|
ALPROTO_FAILED = 1,
|
|
ALPROTO_HTTP1 = 2,
|
|
ALPROTO_FTP = 3,
|
|
ALPROTO_SMTP = 4,
|
|
ALPROTO_TLS = 5,
|
|
ALPROTO_SSH = 6,
|
|
ALPROTO_IMAP = 7,
|
|
ALPROTO_JABBER = 8,
|
|
ALPROTO_SMB = 9,
|
|
ALPROTO_DCERPC = 10,
|
|
ALPROTO_IRC = 11,
|
|
ALPROTO_DNS = 12,
|
|
ALPROTO_MODBUS = 13,
|
|
ALPROTO_ENIP = 14,
|
|
ALPROTO_DNP3 = 15,
|
|
ALPROTO_NFS = 16,
|
|
ALPROTO_NTP = 17,
|
|
ALPROTO_FTPDATA = 18,
|
|
ALPROTO_TFTP = 19,
|
|
ALPROTO_IKE = 20,
|
|
ALPROTO_KRB5 = 21,
|
|
ALPROTO_QUIC = 22,
|
|
ALPROTO_DHCP = 23,
|
|
ALPROTO_SIP = 24,
|
|
ALPROTO_RFB = 25,
|
|
ALPROTO_MQTT = 26,
|
|
ALPROTO_PGSQL = 27,
|
|
ALPROTO_TELNET = 28,
|
|
ALPROTO_WEBSOCKET = 29,
|
|
ALPROTO_LDAP = 30,
|
|
ALPROTO_DOH2 = 31,
|
|
ALPROTO_TEMPLATE = 32,
|
|
ALPROTO_RDP = 33,
|
|
ALPROTO_HTTP2 = 34,
|
|
ALPROTO_BITTORRENT_DHT = 35,
|
|
ALPROTO_POP3 = 36,
|
|
ALPROTO_HTTP = 37,
|
|
ALPROTO_MAX_STATIC = 38,
|
|
}
|
|
pub type AppProto = u16;
|
|
extern "C" {
|
|
#[doc = " \\brief Maps the ALPROTO_*, to its string equivalent.\n\n \\param alproto App layer protocol id.\n\n \\retval String equivalent for the alproto."]
|
|
pub fn AppProtoToString(alproto: AppProto) -> *const ::std::os::raw::c_char;
|
|
}
|
|
extern "C" {
|
|
pub fn AppProtoNewProtoFromString(proto_name: *const ::std::os::raw::c_char) -> AppProto;
|
|
}
|
|
extern "C" {
|
|
pub fn AppProtoRegisterProtoString(
|
|
alproto: AppProto, proto_name: *const ::std::os::raw::c_char,
|
|
);
|
|
}
|
|
pub const SC_API_VERSION: u64 = 2048;
|
|
#[doc = " Structure to define a Suricata plugin."]
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct SCPlugin_ {
|
|
pub version: u64,
|
|
pub suricata_version: *const ::std::os::raw::c_char,
|
|
pub name: *const ::std::os::raw::c_char,
|
|
pub plugin_version: *const ::std::os::raw::c_char,
|
|
pub license: *const ::std::os::raw::c_char,
|
|
pub author: *const ::std::os::raw::c_char,
|
|
pub Init: ::std::option::Option<unsafe extern "C" fn()>,
|
|
}
|
|
#[doc = " Structure to define a Suricata plugin."]
|
|
pub type SCPlugin = SCPlugin_;
|
|
pub type SCPluginRegisterFunc = ::std::option::Option<unsafe extern "C" fn() -> *mut SCPlugin>;
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct SCCapturePlugin_ {
|
|
pub name: *mut ::std::os::raw::c_char,
|
|
pub Init: ::std::option::Option<
|
|
unsafe extern "C" fn(
|
|
args: *const ::std::os::raw::c_char,
|
|
plugin_slot: ::std::os::raw::c_int,
|
|
receive_slot: ::std::os::raw::c_int,
|
|
decode_slot: ::std::os::raw::c_int,
|
|
),
|
|
>,
|
|
pub ThreadInit: ::std::option::Option<
|
|
unsafe extern "C" fn(
|
|
ctx: *mut ::std::os::raw::c_void,
|
|
thread_id: ::std::os::raw::c_int,
|
|
thread_ctx: *mut *mut ::std::os::raw::c_void,
|
|
) -> ::std::os::raw::c_int,
|
|
>,
|
|
pub ThreadDeinit: ::std::option::Option<
|
|
unsafe extern "C" fn(
|
|
ctx: *mut ::std::os::raw::c_void,
|
|
thread_ctx: *mut ::std::os::raw::c_void,
|
|
) -> ::std::os::raw::c_int,
|
|
>,
|
|
pub GetDefaultMode:
|
|
::std::option::Option<unsafe extern "C" fn() -> *const ::std::os::raw::c_char>,
|
|
pub entries: SCCapturePlugin___bindgen_ty_1,
|
|
}
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct SCCapturePlugin___bindgen_ty_1 {
|
|
pub tqe_next: *mut SCCapturePlugin_,
|
|
pub tqe_prev: *mut *mut SCCapturePlugin_,
|
|
}
|
|
pub type SCCapturePlugin = SCCapturePlugin_;
|
|
extern "C" {
|
|
pub fn SCPluginRegisterCapture(arg1: *mut SCCapturePlugin) -> ::std::os::raw::c_int;
|
|
}
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct SCAppLayerPlugin_ {
|
|
pub name: *const ::std::os::raw::c_char,
|
|
pub Register: ::std::option::Option<unsafe extern "C" fn()>,
|
|
pub KeywordsRegister: ::std::option::Option<unsafe extern "C" fn()>,
|
|
pub logname: *const ::std::os::raw::c_char,
|
|
pub confname: *const ::std::os::raw::c_char,
|
|
pub dir: u8,
|
|
pub Logger: ::std::option::Option<
|
|
unsafe extern "C" fn(
|
|
tx: *const ::std::os::raw::c_void,
|
|
jb: *mut ::std::os::raw::c_void,
|
|
) -> bool,
|
|
>,
|
|
}
|
|
pub type SCAppLayerPlugin = SCAppLayerPlugin_;
|
|
extern "C" {
|
|
pub fn SCPluginRegisterAppLayer(arg1: *mut SCAppLayerPlugin) -> ::std::os::raw::c_int;
|
|
}
|
|
#[repr(u32)]
|
|
#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
|
|
pub enum SCOutputJsonLogDirection {
|
|
LOG_DIR_PACKET = 0,
|
|
LOG_DIR_FLOW = 1,
|
|
LOG_DIR_FLOW_TOCLIENT = 2,
|
|
LOG_DIR_FLOW_TOSERVER = 3,
|
|
}
|
|
pub type EveJsonSimpleTxLogFunc = ::std::option::Option<
|
|
unsafe extern "C" fn(
|
|
arg1: *const ::std::os::raw::c_void,
|
|
arg2: *mut ::std::os::raw::c_void,
|
|
) -> bool,
|
|
>;
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct EveJsonSimpleAppLayerLogger {
|
|
pub LogTx: EveJsonSimpleTxLogFunc,
|
|
pub name: *const ::std::os::raw::c_char,
|
|
}
|
|
extern "C" {
|
|
pub fn SCEveJsonSimpleGetLogger(alproto: AppProto) -> *mut EveJsonSimpleAppLayerLogger;
|
|
}
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct EveJsonTxLoggerRegistrationData {
|
|
pub confname: *const ::std::os::raw::c_char,
|
|
pub logname: *const ::std::os::raw::c_char,
|
|
pub alproto: AppProto,
|
|
pub dir: u8,
|
|
pub LogTx: EveJsonSimpleTxLogFunc,
|
|
}
|
|
extern "C" {
|
|
pub fn SCOutputEvePreRegisterLogger(
|
|
reg_data: EveJsonTxLoggerRegistrationData,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCSigTablePreRegister(
|
|
KeywordsRegister: ::std::option::Option<unsafe extern "C" fn()>,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
#[doc = " Structure of a configuration parameter."]
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct SCConfNode_ {
|
|
pub name: *mut ::std::os::raw::c_char,
|
|
pub val: *mut ::std::os::raw::c_char,
|
|
pub is_seq: ::std::os::raw::c_int,
|
|
pub final_: ::std::os::raw::c_int,
|
|
pub parent: *mut SCConfNode_,
|
|
pub head: SCConfNode___bindgen_ty_1,
|
|
pub next: SCConfNode___bindgen_ty_2,
|
|
}
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct SCConfNode___bindgen_ty_1 {
|
|
pub tqh_first: *mut SCConfNode_,
|
|
pub tqh_last: *mut *mut SCConfNode_,
|
|
}
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct SCConfNode___bindgen_ty_2 {
|
|
pub tqe_next: *mut SCConfNode_,
|
|
pub tqe_prev: *mut *mut SCConfNode_,
|
|
}
|
|
#[doc = " Structure of a configuration parameter."]
|
|
pub type SCConfNode = [u64; 8usize];
|
|
extern "C" {
|
|
pub fn SCConfInit();
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfDeInit();
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetRootNode() -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGet(
|
|
name: *const ::std::os::raw::c_char, vptr: *mut *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetInt(
|
|
name: *const ::std::os::raw::c_char, val: *mut intmax_t,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetBool(
|
|
name: *const ::std::os::raw::c_char, val: *mut ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetDouble(
|
|
name: *const ::std::os::raw::c_char, val: *mut f64,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetFloat(
|
|
name: *const ::std::os::raw::c_char, val: *mut f32,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfSet(
|
|
name: *const ::std::os::raw::c_char, val: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfSetFromString(
|
|
input: *const ::std::os::raw::c_char, final_: ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfSetFinal(
|
|
name: *const ::std::os::raw::c_char, val: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfDump();
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeDump(node: *const SCConfNode, prefix: *const ::std::os::raw::c_char);
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeNew() -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeFree(arg1: *mut SCConfNode);
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetNode(key: *const ::std::os::raw::c_char) -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfCreateContextBackup();
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfRestoreContextBackup();
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeLookupChild(
|
|
node: *const SCConfNode, key: *const ::std::os::raw::c_char,
|
|
) -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeLookupChildValue(
|
|
node: *const SCConfNode, key: *const ::std::os::raw::c_char,
|
|
) -> *const ::std::os::raw::c_char;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeRemove(arg1: *mut SCConfNode);
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfRegisterTests();
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeChildValueIsTrue(
|
|
node: *const SCConfNode, key: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfValIsTrue(val: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfValIsFalse(val: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodePrune(node: *mut SCConfNode);
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfRemove(name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeHasChildren(node: *const SCConfNode) -> bool;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetChildWithDefault(
|
|
base: *const SCConfNode, dflt: *const SCConfNode, name: *const ::std::os::raw::c_char,
|
|
) -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeLookupKeyValue(
|
|
base: *const SCConfNode, key: *const ::std::os::raw::c_char,
|
|
value: *const ::std::os::raw::c_char,
|
|
) -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetChildValue(
|
|
base: *const SCConfNode, name: *const ::std::os::raw::c_char,
|
|
vptr: *mut *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetChildValueInt(
|
|
base: *const SCConfNode, name: *const ::std::os::raw::c_char, val: *mut intmax_t,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetChildValueBool(
|
|
base: *const SCConfNode, name: *const ::std::os::raw::c_char,
|
|
val: *mut ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetChildValueWithDefault(
|
|
base: *const SCConfNode, dflt: *const SCConfNode, name: *const ::std::os::raw::c_char,
|
|
vptr: *mut *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetChildValueIntWithDefault(
|
|
base: *const SCConfNode, dflt: *const SCConfNode, name: *const ::std::os::raw::c_char,
|
|
val: *mut intmax_t,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetChildValueBoolWithDefault(
|
|
base: *const SCConfNode, dflt: *const SCConfNode, name: *const ::std::os::raw::c_char,
|
|
val: *mut ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeIsSequence(node: *const SCConfNode) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfSetIfaceNode(
|
|
ifaces_node_name: *const ::std::os::raw::c_char, iface: *const ::std::os::raw::c_char,
|
|
) -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfSetRootAndDefaultNodes(
|
|
ifaces_node_name: *const ::std::os::raw::c_char, iface: *const ::std::os::raw::c_char,
|
|
if_root: *mut *mut SCConfNode, if_default: *mut *mut SCConfNode,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfNodeGetNodeOrCreate(
|
|
parent: *mut SCConfNode, name: *const ::std::os::raw::c_char, final_: ::std::os::raw::c_int,
|
|
) -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetFirstNode(parent: *const SCConfNode) -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetNextNode(node: *const SCConfNode) -> *mut SCConfNode;
|
|
}
|
|
extern "C" {
|
|
pub fn SCConfGetValueNode(node: *const SCConfNode) -> *const ::std::os::raw::c_char;
|
|
}
|