1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
use syslog_ng_sys; use LogMessage; use syslog_ng_sys::logpipe::__log_pipe_forward_msg; use syslog_ng_sys::LogPathOptions; pub trait Pipe { fn forward(&mut self, msg: LogMessage); } pub struct LogPipe(pub *mut syslog_ng_sys::LogPipe); impl Pipe for LogPipe { fn forward(&mut self, msg: LogMessage) { let mut path_options = LogPathOptions::default(); path_options.ack_needed = 0; unsafe { __log_pipe_forward_msg(self.0 as *mut syslog_ng_sys::LogPipe, msg.into_raw(), &path_options); } } }