rust/logging: allow log macros to be used by plugins

Fix plugin macros so they can be used by external Rust crates
such as plugins.
pull/5356/head
Jason Ish 5 years ago committed by Victor Julien
parent 3672cea876
commit ac93ab281d

@ -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;

@ -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};

@ -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,

@ -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;

@ -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

@ -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;

@ -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;

@ -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;

@ -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;

@ -18,7 +18,6 @@
use std::ptr;
use std::os::raw::{c_void};
use crate::log::*;
use crate::core::*;
// Defined in util-file.h

@ -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};

@ -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,

@ -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};

@ -25,8 +25,6 @@ use crate::applayer::{self, *};
use std;
use std::ffi::{CStr,CString};
use crate::log::*;
use nom;
#[repr(u32)]

@ -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,

@ -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,

@ -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)*); };
}

@ -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;

@ -25,7 +25,6 @@ use std::ffi::CStr;
use nom;
use crate::log::*;
use crate::applayer;
use crate::applayer::{AppLayerResult, AppLayerTxData};
use crate::core::*;

@ -17,8 +17,6 @@
// written by Victor Julien
use crate::log::*;
use crate::nfs::nfs::*;
use crate::nfs::types::*;
use crate::nfs::rpc_records::*;

@ -17,7 +17,6 @@
// written by Victor Julien
use crate::log::*;
use crate::core::*;
use crate::nfs::nfs::*;

@ -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::*;

@ -25,8 +25,6 @@ use crate::applayer::{self, *};
use std;
use std::ffi::{CStr,CString};
use crate::log::*;
use nom;
#[repr(u32)]

@ -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;

@ -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};

@ -17,7 +17,6 @@
use crate::kerberos::*;
use crate::log::*;
use crate::smb::ntlmssp_records::*;
use crate::smb::smb::*;

@ -17,7 +17,6 @@
// written by Victor Julien
use crate::log::*;
use uuid;
use crate::smb::smb::*;
use crate::smb::smb2::*;

@ -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) { }

@ -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};

@ -16,7 +16,6 @@
*/
use crate::core::*;
use crate::log::*;
use crate::smb::smb::*;
#[repr(u32)]

@ -16,7 +16,6 @@
*/
use crate::core::*;
use crate::log::*;
use crate::filetracker::*;
use crate::filecontainer::*;

@ -15,7 +15,6 @@
* 02110-1301, USA.
*/
use crate::log::*;
use crate::kerberos::*;
use crate::smb::smb::*;
use crate::smb::smb1_session::*;

@ -35,7 +35,6 @@ use std::collections::HashMap;
use nom;
use crate::core::*;
use crate::log::*;
use crate::applayer;
use crate::applayer::{AppLayerResult, AppLayerTxData};

@ -22,7 +22,6 @@
use nom;
use crate::core::*;
use crate::log::*;
use crate::smb::smb::*;
use crate::smb::dcerpc::*;

@ -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};

@ -15,8 +15,6 @@
* 02110-1301, USA.
*/
use crate::log::*;
use crate::smb::smb_records::*;
use crate::smb::smb1_records::*;
use crate::smb::smb::*;

@ -18,7 +18,6 @@
use nom;
use crate::core::*;
use crate::log::*;
use crate::smb::smb::*;
use crate::smb::smb2_records::*;

@ -15,7 +15,6 @@
* 02110-1301, USA.
*/
use crate::log::*;
use crate::smb::smb::*;
use crate::smb::smb2::*;
use crate::smb::smb2_records::*;

@ -15,8 +15,6 @@
* 02110-1301, USA.
*/
use crate::log::*;
use crate::smb::smb2_records::*;
use crate::smb::smb::*;
//use smb::events::*;

@ -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.

@ -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;

@ -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};

Loading…
Cancel
Save