diff options
Diffstat (limited to 'src/imap/session.rs')
-rw-r--r-- | src/imap/session.rs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/imap/session.rs b/src/imap/session.rs index b7e2059..17753ea 100644 --- a/src/imap/session.rs +++ b/src/imap/session.rs @@ -7,7 +7,7 @@ use futures::future::FutureExt; use tokio::sync::mpsc::error::TrySendError; use tokio::sync::{mpsc, oneshot}; -use crate::imap::command::{anonymous, authenticated, selected}; +use crate::imap::command::{anonymous, authenticated, selected, examined}; use crate::imap::flow; use crate::login::ArcLoginProvider; @@ -127,6 +127,14 @@ impl Instance { }; selected::dispatch(ctx).await } + flow::State::Examined(ref user, ref mut mailbox) => { + let ctx = examined::ExaminedContext { + req: &msg.req, + user, + mailbox, + }; + examined::dispatch(ctx).await + } flow::State::Logout => { Response::bad("No commands are allowed in the LOGOUT state.") .map(|r| (r, flow::Transition::None)) |