This repository has been archived on 2023-09-20. You can view files and clone it, but cannot push or open issues or pull requests.
rust-opensmtpd/opensmtpd/examples/dummy.rs
Rodolphe Breard 4b1f99db7e Allow the use of custom context
The main goal of events/reports is to update a context object, which
will be used in filters to generate a response. It is now possible to
use any object implementing both Clone and Default as a context object.
It is also possible to define no context at all.
2019-01-12 23:43:02 +01:00

20 lines
489 B
Rust

use env_logger::{Builder, Env};
use log::{debug, info};
use opensmtpd::{event, handlers, Entry, SmtpIn};
#[event(Any)]
fn on_event(entry: &Entry) {
debug!("Event received: {:?}", entry);
}
#[event(LinkConnect)]
fn on_connect(entry: &Entry) {
info!("New client on session {:x}.", entry.session_id);
}
fn main() {
Builder::from_env(Env::default().default_filter_or("debug")).init();
SmtpIn::new()
.event_handlers(handlers!(on_event, on_connect))
.run();
}