]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
rust/logging: allow log macros to be used by plugins
authorJason Ish <jason.ish@oisf.net>
Mon, 17 Aug 2020 16:36:19 +0000 (10:36 -0600)
committerVictor Julien <victor@inliniac.net>
Thu, 3 Sep 2020 11:02:18 +0000 (13:02 +0200)
Fix plugin macros so they can be used by external Rust crates
such as plugins.

42 files changed:
rust/src/applayertemplate/template.rs
rust/src/asn1/parse_rules.rs
rust/src/conf.rs
rust/src/dcerpc/dcerpc.rs
rust/src/dcerpc/dcerpc_udp.rs
rust/src/dcerpc/detect.rs
rust/src/dcerpc/parser.rs
rust/src/dhcp/dhcp.rs
rust/src/dns/dns.rs
rust/src/filecontainer.rs
rust/src/filetracker.rs
rust/src/ftp/mod.rs
rust/src/http2/http2.rs
rust/src/ikev2/ikev2.rs
rust/src/kerberos.rs
rust/src/krb/krb5.rs
rust/src/log.rs
rust/src/mqtt/mqtt.rs
rust/src/nfs/nfs.rs
rust/src/nfs/nfs2.rs
rust/src/nfs/nfs3.rs
rust/src/nfs/nfs4.rs
rust/src/ntp/ntp.rs
rust/src/rfb/rfb.rs
rust/src/sip/sip.rs
rust/src/smb/auth.rs
rust/src/smb/dcerpc.rs
rust/src/smb/debug.rs
rust/src/smb/detect.rs
rust/src/smb/events.rs
rust/src/smb/files.rs
rust/src/smb/session.rs
rust/src/smb/smb.rs
rust/src/smb/smb1.rs
rust/src/smb/smb1_records.rs
rust/src/smb/smb1_session.rs
rust/src/smb/smb2.rs
rust/src/smb/smb2_ioctl.rs
rust/src/smb/smb2_session.rs
rust/src/smb/smb_records.rs
rust/src/snmp/snmp.rs
rust/src/ssh/ssh.rs

index a9b9f0ecb5647f143e918b9967a7c5b50dba9592..c1c1d656b7e07487c55fa917b71b6f81bb7c2d0e 100644 (file)
@@ -17,7 +17,6 @@
 
 use std;
 use crate::core::{self, ALPROTO_UNKNOWN, AppProto, Flow, IPPROTO_TCP};
-use crate::log::*;
 use std::mem::transmute;
 use crate::applayer::{self, *};
 use std::ffi::CString;
index 1d7c739dc8c77e324918137ab593cabc82080801..49547b9f45ff2e0b3561bcdff324afe1eedaba42 100644 (file)
@@ -15,7 +15,6 @@
  * 02110-1301, USA.
  */
 
-use crate::log::*;
 use nom::branch::alt;
 use nom::bytes::complete::tag;
 use nom::character::complete::{digit1, multispace0, multispace1};
index e5b40f8447589152a6f851d94cc2da13f85a6966..b85eb54a43e51c0bf89ffaa495e5eb7f5a4ae404 100644 (file)
@@ -22,8 +22,6 @@ use std::ffi::{CString, CStr};
 use std::ptr;
 use std::str;
 
-use crate::log::*;
-
 extern {
     fn ConfGet(key: *const c_char, res: *mut *const c_char) -> i8;
     fn ConfGetChildValue(conf: *const c_void, key: *const c_char,
index edb2d7e6ae4061aae5226bc60f5d664730ca7612..54f230247777036d3d449c1d0f40dbb231792368 100644 (file)
@@ -19,7 +19,6 @@ use std::mem::transmute;
 use crate::applayer::{AppLayerResult, AppLayerTxData};
 use crate::core;
 use crate::dcerpc::parser;
-use crate::log::*;
 use nom::error::ErrorKind;
 use nom::number::Endianness;
 use nom;
index cd168408c86ba5f742ce073348e095bfa1b6f415..798eb80991bef3072d68993c9226ed502303f3fb 100644 (file)
@@ -23,7 +23,6 @@ use crate::dcerpc::dcerpc::{
     DCERPCTransaction, DCERPCUuidEntry, DCERPC_TYPE_REQUEST, DCERPC_TYPE_RESPONSE, PFC_FIRST_FRAG,
 };
 use crate::dcerpc::parser;
-use crate::log::*;
 use std::cmp;
 
 // Constant DCERPC UDP Header length
index a7edeaccbb0bed726b1efcaa6eeb1187e85fce75..7e1296c3ae8bd2c04b3d70f5e537c01a32294895 100644 (file)
@@ -19,7 +19,6 @@ use super::dcerpc::{
     DCERPCState, DCERPCTransaction, DCERPC_TYPE_REQUEST, DCERPC_TYPE_RESPONSE,
     DCERPC_UUID_ENTRY_FLAG_FF,
 };
-use crate::log::*;
 use std::ffi::CStr;
 use std::os::raw::{c_char, c_void};
 use uuid::Uuid;
index a7552a40cfd630a6677b7d2e70057cf2f3115715..e3f40ff3d9a4fb8b951eb71fb3cf864e000b0299 100644 (file)
@@ -18,7 +18,6 @@ use crate::dcerpc::dcerpc::{
     BindCtxItem, DCERPCBind, DCERPCBindAck, DCERPCBindAckResult, DCERPCHdr, DCERPCRequest, Uuid,
 };
 use crate::dcerpc::dcerpc_udp::DCERPCHdrUdp;
-use crate::log::*;
 use nom::number::complete::{le_u16, le_u32, le_u8};
 use nom::number::Endianness;
 
index 32e72e8de754bf00998b1b3dbf49bcb9af8c04d9..75ee8a9ed58b69d0db6a2112897fb3bd70241401 100644 (file)
@@ -20,7 +20,6 @@ use crate::core;
 use crate::core::{ALPROTO_UNKNOWN, AppProto, Flow, IPPROTO_UDP};
 use crate::core::{sc_detect_engine_state_free, sc_app_layer_decoder_events_free_events};
 use crate::dhcp::parser::*;
-use crate::log::*;
 use std;
 use std::ffi::{CStr,CString};
 use std::mem::transmute;
index ff2284c760429ea933d8925bd4ca57159c441b75..0dd8baa77246dd65384619e74b9608aadc12bd5e 100644 (file)
@@ -23,7 +23,6 @@ use std::mem::transmute;
 use std::collections::HashMap;
 use std::collections::VecDeque;
 
-use crate::log::*;
 use crate::applayer::*;
 use crate::core::{self, AppProto, ALPROTO_UNKNOWN, IPPROTO_UDP, IPPROTO_TCP};
 use crate::dns::parser;
index 6f67d88b94953e3136f54e275e5f5f4a6f8b80ba..7b870e5162e7b8badaebb955e01c6d978dd4a288 100644 (file)
@@ -18,7 +18,6 @@
 use std::ptr;
 use std::os::raw::{c_void};
 
-use crate::log::*;
 use crate::core::*;
 
 // Defined in util-file.h
index 1f6534196f100e75a04b6097cfa6d4794155e4db..667f8c49318c2f46e02c79638d6620aee5bf15fa 100644 (file)
@@ -28,7 +28,6 @@
  * The tracker does continue to follow the file.
  */
 
-use crate::log::*;
 use crate::core::*;
 use std::collections::HashMap;
 use std::collections::hash_map::Entry::{Occupied, Vacant};
index 76b4910e1c55658dba1b98696bc9a94281963bd3..2a40d7f594968e956c7445bcf4531e4759253e13 100644 (file)
@@ -22,8 +22,6 @@ use std::str;
 use std;
 use std::str::FromStr;
 
-use crate::log::*;
-
 // We transform an integer string into a i64, ignoring surrounding whitespaces
 // We look for a digit suite, and try to convert it.
 // If either str::from_utf8 or FromStr::from_str fail,
index f85a9fda3d1dacf0cbc8694e84fe39d934bc3115..2c9d28e5c9993b2db387f1b192f2997aa653d1a4 100644 (file)
@@ -24,7 +24,6 @@ use crate::core::{
 };
 use crate::filecontainer::*;
 use crate::filetracker::*;
-use crate::log::*;
 use nom;
 use std;
 use std::ffi::{CStr, CString};
index e1fbac57eb300c465fd465da250f4b2a5e5fe602..82717b0a19b0e4d61c8ccd4af96cec6ca05f97a9 100644 (file)
@@ -25,8 +25,6 @@ use crate::applayer::{self, *};
 use std;
 use std::ffi::{CStr,CString};
 
-use crate::log::*;
-
 use nom;
 
 #[repr(u32)]
index c5730bd3bbe3179a120c0bc81c6cf5def016aafe..6fb7e0d173eb937d4bed0ed8ac441c33177b31ef 100644 (file)
@@ -25,8 +25,6 @@ use der_parser;
 use der_parser::error::BerError;
 use der_parser::der::parse_der_oid;
 
-use crate::log::*;
-
 #[derive(Debug)]
 pub enum SecBlobError {
     NotSpNego,
index 5e4550577513ee4ffa639bcb3697f558b007ab3b..ef2a928e839f484017ce134d11508638ed6a021b 100644 (file)
@@ -30,8 +30,6 @@ use crate::applayer::{self, *};
 use crate::core;
 use crate::core::{AppProto,Flow,ALPROTO_FAILED,ALPROTO_UNKNOWN,STREAM_TOCLIENT,STREAM_TOSERVER,sc_detect_engine_state_free};
 
-use crate::log::*;
-
 #[repr(u32)]
 pub enum KRB5Event {
     MalformedData = 0,
index 16f9aeab221af97df4bec1dbb4911a5812e712f8..a7dcc73683aae514ff2f27cbc7fad45260226827 100644 (file)
@@ -70,6 +70,7 @@ pub fn sclog(level: Level, file: &str, line: u32, function: &str,
 /// Return the function name, but for now just return <rust> as Rust
 /// has no macro to return the function name, but may in the future,
 /// see: https://github.com/rust-lang/rfcs/pull/1719
+#[macro_export(local_inner_macros)]
 macro_rules!function {
     () => {{ "<rust>" }}
 }
@@ -78,8 +79,8 @@ macro_rules!function {
 macro_rules!do_log {
     ($level:expr, $file:expr, $line:expr, $function:expr, $code:expr,
      $($arg:tt)*) => {
-        if get_log_level() >= $level as i32 {
-            sclog($level, $file, $line, $function, $code,
+        if $crate::log::get_log_level() >= $level as i32 {
+            $crate::log::sclog($level, $file, $line, $function, $code,
                   &(format!($($arg)*)));
         }
     }
@@ -88,35 +89,35 @@ macro_rules!do_log {
 #[macro_export]
 macro_rules!SCLogNotice {
     ($($arg:tt)*) => {
-        do_log!(Level::Notice, file!(), line!(), function!(), 0, $($arg)*);
+        $crate::do_log!($crate::log::Level::Notice, file!(), line!(), $crate::function!(), 0, $($arg)*);
     }
 }
 
 #[macro_export]
 macro_rules!SCLogInfo {
     ($($arg:tt)*) => {
-        do_log!(Level::Info, file!(), line!(), function!(), 0, $($arg)*);
+        $crate::do_log!($crate::log::Level::Info, file!(), line!(), $crate::function!(), 0, $($arg)*);
     }
 }
 
 #[macro_export]
 macro_rules!SCLogPerf {
     ($($arg:tt)*) => {
-        do_log!(Level::Perf, file!(), line!(), function!(), 0, $($arg)*);
+        $crate::do_log!($crate::log::Level::Perf, file!(), line!(), $crate::function!(), 0, $($arg)*);
     }
 }
 
 #[macro_export]
 macro_rules!SCLogConfig {
     ($($arg:tt)*) => {
-        do_log!(Level::Config, file!(), line!(), function!(), 0, $($arg)*);
+        $crate::do_log!($crate::log::Level::Config, file!(), line!(), $crate::function!(), 0, $($arg)*);
     }
 }
 
 #[macro_export]
 macro_rules!SCLogError {
     ($($arg:tt)*) => {
-        do_log!(Level::Error, file!(), line!(), function!(), 0, $($arg)*);
+        $crate::do_log!($crate::log::Level::Error, file!(), line!(), $crate::function!(), 0, $($arg)*);
     }
 }
 
@@ -125,7 +126,7 @@ macro_rules!SCLogError {
 #[macro_export]
 macro_rules!SCLogDebug {
     ($($arg:tt)*) => {
-        do_log!(Level::Debug, file!(), line!(), function!(), 0, $($arg)*);
+        do_log!($crate::log::Level::Debug, file!(), line!(), $crate::function!(), 0, $($arg)*);
     }
 }
 
@@ -134,7 +135,7 @@ macro_rules!SCLogDebug {
 #[cfg(not(feature = "debug"))]
 #[macro_export]
 macro_rules!SCLogDebug {
-    ($last:expr) => { let _ = &$last; let _ = Level::Debug; };
+    ($last:expr) => { let _ = &$last; let _ = $crate::log::Level::Debug; };
     ($one:expr, $($arg:tt)*) => { let _ = &$one; SCLogDebug!($($arg)*); };
 }
 
index bb60970c808a01a1443f17180fd94a6e46c54b64..7c5643fc353bcdffb54f5589456d8f9db4bbb8dd 100644 (file)
@@ -22,7 +22,6 @@ use super::parser::*;
 use crate::applayer::{self, LoggerFlags};
 use crate::applayer::*;
 use crate::core::{self, AppProto, Flow, ALPROTO_FAILED, ALPROTO_UNKNOWN, IPPROTO_TCP};
-use crate::log::*;
 use num_traits::FromPrimitive;
 use nom;
 use std;
index ccbf45e287c01d7eea8d1e312bc90daa31310df7..8b65c792c282be218600e5275065ee22e05c7f94 100644 (file)
@@ -25,7 +25,6 @@ use std::ffi::CStr;
 
 use nom;
 
-use crate::log::*;
 use crate::applayer;
 use crate::applayer::{AppLayerResult, AppLayerTxData};
 use crate::core::*;
index ba7defd524be019cf8c636ddf624ae3d56367b38..44a49ead4b3af5bece92325ca685c867a615098f 100644 (file)
@@ -17,8 +17,6 @@
 
 // written by Victor Julien
 
-use crate::log::*;
-
 use crate::nfs::nfs::*;
 use crate::nfs::types::*;
 use crate::nfs::rpc_records::*;
index bd3461b1d2dbf7268a5ab384bfddf717cdaa7b14..f910b8a9195bbede5d322b6f8280a2d5c6724750 100644 (file)
@@ -17,7 +17,6 @@
 
 // written by Victor Julien
 
-use crate::log::*;
 use crate::core::*;
 
 use crate::nfs::nfs::*;
index be12b2ca6ac8c513bc963cbaa4d1a246e36ad84f..eb6620b3d562054243ed3de8980de0ca2e0f47bd 100644 (file)
@@ -21,8 +21,6 @@ use nom;
 use nom::number::streaming::be_u32;
 
 use crate::core::*;
-use crate::log::*;
-
 use crate::nfs::nfs::*;
 use crate::nfs::types::*;
 use crate::nfs::rpc_records::*;
index 27bf3a6296b55a81f57a4c0f5850c6244c7c7360..8d7d7d609c02c63cf6fdb3e128e93c36d2fd0d80 100644 (file)
@@ -25,8 +25,6 @@ use crate::applayer::{self, *};
 use std;
 use std::ffi::{CStr,CString};
 
-use crate::log::*;
-
 use nom;
 
 #[repr(u32)]
index 8cb251c72402857c6b484dd2de7b333ca29e8374..9cb596790cae2a44f2382f21c66d9fbdd9b69229 100644 (file)
@@ -21,7 +21,6 @@ use std;
 use std::ffi::CString;
 use std::mem::transmute;
 use crate::core::{self, ALPROTO_UNKNOWN, AppProto, Flow, IPPROTO_TCP};
-use crate::log::*;
 use crate::applayer;
 use crate::applayer::*;
 use nom;
index eb642d700eeafcd8c3438994faf93c8ef837db75..b20735ce85f663223ad47fae477f80d339351099 100755 (executable)
@@ -22,7 +22,6 @@ extern crate nom;
 use crate::applayer::{self, *};
 use crate::core;
 use crate::core::{sc_detect_engine_state_free, AppProto, Flow, ALPROTO_UNKNOWN};
-use crate::log::*;
 use crate::sip::parser::*;
 use std;
 use std::ffi::{CStr, CString};
index 5b245d9332205e043c26a3aad0c5328a9d5c6e7d..fd7bc2742173668310ceacd581336ac172c389da 100644 (file)
@@ -17,7 +17,6 @@
 
 use crate::kerberos::*;
 
-use crate::log::*;
 use crate::smb::ntlmssp_records::*;
 use crate::smb::smb::*;
 
index c90a10b64c250eb91f904b9fe1d94bbafff88b84..d4265834d80d5aed1053d8328855b6bd43f1b88b 100644 (file)
@@ -17,7 +17,6 @@
 
 // written by Victor Julien
 
-use crate::log::*;
 use uuid;
 use crate::smb::smb::*;
 use crate::smb::smb2::*;
index 8c2178c255f192ffb67826da2011764c0dd7f22e..15d8748c0a5702e77c70bc653e111e90fa5cf256 100644 (file)
@@ -17,9 +17,6 @@
 
 use crate::smb::smb::*;
 
-#[cfg(feature = "debug")]
-use crate::log::*;
-
 impl SMBState {
     #[cfg(not(feature = "debug"))]
     pub fn _debug_tx_stats(&self) { }
index 96a6a7386c0f3e37e6e8b9359046173a92a17647..102b852a108a5d2ce00fcd37233595f78985fe81 100644 (file)
@@ -17,7 +17,6 @@
 
 use std::ptr;
 use crate::core::*;
-use crate::log::*;
 use crate::smb::smb::*;
 use crate::dcerpc::detect::{DCEIfaceData, DCEOpnumData, DETECT_DCE_OPNUM_RANGE_UNINITIALIZED};
 
index 3d3ec6adca81f37a5bf7e6f05ba4d717986b9223..31256d3912c082c73060bb62d1c0e27fd2da350d 100644 (file)
@@ -16,7 +16,6 @@
  */
 
 use crate::core::*;
-use crate::log::*;
 use crate::smb::smb::*;
 
 #[repr(u32)]
index b8667e3fb87f5e51d15f22230638c843b2ebea9f..f1c455fbdb3bbd17d89a5b571e4d3c9aa27839d8 100644 (file)
@@ -16,7 +16,6 @@
  */
 
 use crate::core::*;
-use crate::log::*;
 use crate::filetracker::*;
 use crate::filecontainer::*;
 
index 941b9eb3007366923700569221d5c449cc5bbfb9..43883a77d57e612dd526d2bb89ffff46ae2a0378 100644 (file)
@@ -15,7 +15,6 @@
  * 02110-1301, USA.
  */
 
-use crate::log::*;
 use crate::kerberos::*;
 use crate::smb::smb::*;
 use crate::smb::smb1_session::*;
index 881c356a00a61ed3e57953bfb5957632df61e14c..c8874e0d0178a62af4a9a3ed7bfd157a509fea20 100644 (file)
@@ -35,7 +35,6 @@ use std::collections::HashMap;
 use nom;
 
 use crate::core::*;
-use crate::log::*;
 use crate::applayer;
 use crate::applayer::{AppLayerResult, AppLayerTxData};
 
index b4262cf0ccd26cbe8c41b2a8524b0bd0274869b1..1c80912a0da456ae8d47b5b7b063f0a960a119ec 100644 (file)
@@ -22,7 +22,6 @@
 use nom;
 
 use crate::core::*;
-use crate::log::*;
 
 use crate::smb::smb::*;
 use crate::smb::dcerpc::*;
index 7a0cc1e22bf3f8bb3461d1716bdc089c4b2cc5ec..20a4a22e69aa77cb2a0e5ca4a9339acd2de6d64f 100644 (file)
@@ -16,7 +16,6 @@
  */
 
 use crate::smb::error::SmbError;
-use crate::log::*;
 use nom::IResult;
 use nom::combinator::rest;
 use nom::number::streaming::{le_u8, le_u16, le_u32, le_u64};
index 35d6495839efdf46aedad5e3a6a11dbe3d7ff99e..8c9b123974dedc581f241937c5c1e53a46a01756 100644 (file)
@@ -15,8 +15,6 @@
  * 02110-1301, USA.
  */
 
-use crate::log::*;
-
 use crate::smb::smb_records::*;
 use crate::smb::smb1_records::*;
 use crate::smb::smb::*;
index 2fd611482eb5318c7c47fe4315515a6bc85ebbc4..b75f2e11310454472ecd36c568fa7c37a49fbe62 100644 (file)
@@ -18,7 +18,6 @@
 use nom;
 
 use crate::core::*;
-use crate::log::*;
 
 use crate::smb::smb::*;
 use crate::smb::smb2_records::*;
index 480e8696bd8c79208f962c3e0ab877d23a62f02c..93e5f381d26760022cc6b98b8a627fdc29681063 100644 (file)
@@ -15,7 +15,6 @@
  * 02110-1301, USA.
  */
 
-use crate::log::*;
 use crate::smb::smb::*;
 use crate::smb::smb2::*;
 use crate::smb::smb2_records::*;
index 91399a5dbc963bbbd20e39db46e19edc49cdc1c8..356c89e4b5fd1065a88d1c4bef7319deb4dea7b0 100644 (file)
@@ -15,8 +15,6 @@
  * 02110-1301, USA.
  */
 
-use crate::log::*;
-
 use crate::smb::smb2_records::*;
 use crate::smb::smb::*;
 //use smb::events::*;
index 04c971bd690d0ef60ee4e55ef0f787f7cd93ee69..6080075d3669cf7af61421f09f975fc9dcba6b8d 100644 (file)
@@ -18,7 +18,6 @@
 use crate::smb::error::SmbError;
 use nom;
 use nom::IResult;
-use crate::log::*;
 
 /// parse a UTF16 string that is null terminated. Normally by 2 null
 /// bytes, but at the end of the data it can also be a single null.
index f71da30ab165332ea5d082f818a5824da4c930dc..cbdf6d2c211a3a2f03852ae9e378c9d38891bed3 100644 (file)
@@ -25,8 +25,6 @@ use std;
 use std::ffi::{CStr,CString};
 use std::mem::transmute;
 
-use crate::log::*;
-
 use der_parser::ber::BerObjectContent;
 use der_parser::der::parse_der_sequence;
 use der_parser::oid::Oid;
index cf0229360ed9658971898f7fc932dff859f8df44..b4e93e8009bc9fe395df7d12bcbc78bf71db320c 100644 (file)
@@ -19,7 +19,6 @@ use super::parser;
 use crate::applayer::*;
 use crate::core::STREAM_TOSERVER;
 use crate::core::{self, AppProto, Flow, ALPROTO_UNKNOWN, IPPROTO_TCP};
-use crate::log::*;
 use std::ffi::{CStr, CString};
 use std::mem::transmute;
 use std::sync::atomic::{AtomicBool, Ordering};