detect/snmp: let generic keyword share the same list

(cherry picked from commit 2cef1404bc)
pull/15260/head
Victor Julien 7 months ago
parent 7f7ab9299c
commit e55197d103

@ -36,13 +36,11 @@ use suricata_sys::sys::{
};
static mut G_SNMP_VERSION_KW_ID: u16 = 0;
static mut G_SNMP_VERSION_BUFFER_ID: c_int = 0;
static mut G_SNMP_PDUTYPE_KW_ID: u16 = 0;
static mut G_SNMP_PDUTYPE_BUFFER_ID: c_int = 0;
static mut G_SNMP_USM_BUFFER_ID: c_int = 0;
static mut G_SNMP_COMMUNITY_BUFFER_ID: c_int = 0;
static mut G_SNMP_TRAPTYPE_KW_ID: u16 = 0;
static mut G_SNMP_TRAPTYPE_BUFFER_ID: c_int = 0;
static mut G_SNMP_GENERIC_BUFFER_ID: c_int = 0;
unsafe extern "C" fn snmp_detect_version_setup(
de: *mut DetectEngineCtx, s: *mut Signature, raw: *const libc::c_char,
@ -59,7 +57,7 @@ unsafe extern "C" fn snmp_detect_version_setup(
s,
G_SNMP_VERSION_KW_ID,
ctx as *mut SigMatchCtx,
G_SNMP_VERSION_BUFFER_ID,
G_SNMP_GENERIC_BUFFER_ID,
)
.is_null()
{
@ -125,7 +123,7 @@ unsafe extern "C" fn snmp_detect_traptype_setup(
s,
G_SNMP_TRAPTYPE_KW_ID,
ctx as *mut SigMatchCtx,
G_SNMP_TRAPTYPE_BUFFER_ID,
G_SNMP_GENERIC_BUFFER_ID,
)
.is_null()
{
@ -170,7 +168,7 @@ unsafe extern "C" fn snmp_detect_pdutype_setup(
s,
G_SNMP_PDUTYPE_KW_ID,
ctx as *mut SigMatchCtx,
G_SNMP_PDUTYPE_BUFFER_ID,
G_SNMP_GENERIC_BUFFER_ID,
)
.is_null()
{
@ -248,6 +246,12 @@ unsafe extern "C" fn snmp_detect_community_get_data(
}
pub(super) unsafe extern "C" fn detect_snmp_register() {
G_SNMP_GENERIC_BUFFER_ID = SCDetectHelperBufferProgressRegister(
b"snmp.generic\0".as_ptr() as *const libc::c_char,
ALPROTO_SNMP,
STREAM_TOSERVER | STREAM_TOCLIENT,
1,
);
let kw = SCSigTableAppLiteElmt {
name: b"snmp.version\0".as_ptr() as *const libc::c_char,
desc: b"match SNMP version\0".as_ptr() as *const libc::c_char,
@ -258,12 +262,6 @@ pub(super) unsafe extern "C" fn detect_snmp_register() {
flags: SIGMATCH_SUPPORT_FIREWALL,
};
G_SNMP_VERSION_KW_ID = SCDetectHelperKeywordRegister(&kw);
G_SNMP_VERSION_BUFFER_ID = SCDetectHelperBufferProgressRegister(
b"snmp.version\0".as_ptr() as *const libc::c_char,
ALPROTO_SNMP,
STREAM_TOSERVER | STREAM_TOCLIENT,
1,
);
let kw = SCSigTableAppLiteElmt {
name: b"snmp.pdu_type\0".as_ptr() as *const libc::c_char,
@ -275,12 +273,6 @@ pub(super) unsafe extern "C" fn detect_snmp_register() {
flags: SIGMATCH_SUPPORT_FIREWALL,
};
G_SNMP_PDUTYPE_KW_ID = SCDetectHelperKeywordRegister(&kw);
G_SNMP_PDUTYPE_BUFFER_ID = SCDetectHelperBufferProgressRegister(
b"snmp.pdu_type\0".as_ptr() as *const libc::c_char,
ALPROTO_SNMP,
STREAM_TOSERVER | STREAM_TOCLIENT,
1,
);
let kw = SigTableElmtStickyBuffer {
name: String::from("snmp.usm"),
@ -324,10 +316,4 @@ pub(super) unsafe extern "C" fn detect_snmp_register() {
flags: SIGMATCH_SUPPORT_FIREWALL,
};
G_SNMP_TRAPTYPE_KW_ID = SCDetectHelperKeywordRegister(&kw);
G_SNMP_TRAPTYPE_BUFFER_ID = SCDetectHelperBufferProgressRegister(
b"snmp.trap_type\0".as_ptr() as *const libc::c_char,
ALPROTO_SNMP,
STREAM_TOSERVER | STREAM_TOCLIENT,
1,
);
}

Loading…
Cancel
Save