From 35591ff0608096b32d7bab22d719a6ceb8574c2c Mon Sep 17 00:00:00 2001 From: Quentin Dufour Date: Fri, 5 Jan 2024 12:40:49 +0100 Subject: search first ultra minimal implementation --- src/imap/command/selected.rs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'src/imap/command') diff --git a/src/imap/command/selected.rs b/src/imap/command/selected.rs index c8cc680..933f397 100644 --- a/src/imap/command/selected.rs +++ b/src/imap/command/selected.rs @@ -136,15 +136,17 @@ impl<'a> SelectedContext<'a> { pub async fn search( self, - _charset: &Option>, - _criteria: &SearchKey<'a>, - _uid: &bool, + charset: &Option>, + criteria: &SearchKey<'a>, + uid: &bool, ) -> Result<(Response<'static>, flow::Transition)> { + let found = self.mailbox.search(charset, criteria, *uid).await?; Ok(( Response::build() .to_req(self.req) - .message("Not implemented") - .bad()?, + .set_body(found) + .message("SEARCH completed") + .ok()?, flow::Transition::None, )) } -- cgit v1.2.3