pub enum ImapSessionOpenYield {
WantsTcpConnect {
host: String,
port: u16,
},
WantsTlsConnect {
host: String,
port: u16,
},
WantsUnixConnect(String),
WantsTlsUpgrade,
WantsRead,
WantsWrite(Vec<u8>),
}Expand description
Requests emitted while opening a session.
The three connect variants and the upgrade are what set this coroutine apart from a command coroutine: the caller answers them with its own sockets, whatever the runtime.
Variants§
WantsTcpConnect
The caller opens a plain TCP connection and resumes.
WantsTlsConnect
The caller opens a TLS connection and resumes.
Fields
WantsUnixConnect(String)
The caller connects to the unix socket at this path and resumes.
WantsTlsUpgrade
The caller upgrades the open connection to TLS and resumes.
Emitted only once the STARTTLS exchange completed cleanly; the coroutine refuses the upgrade itself when the server appended bytes to its tagged response.
WantsRead
The caller reads from its stream and resumes with the bytes.
WantsWrite(Vec<u8>)
The caller writes the given bytes to its stream and resumes.
Trait Implementations§
Source§impl Debug for ImapSessionOpenYield
impl Debug for ImapSessionOpenYield
Auto Trait Implementations§
impl Freeze for ImapSessionOpenYield
impl RefUnwindSafe for ImapSessionOpenYield
impl Send for ImapSessionOpenYield
impl Sync for ImapSessionOpenYield
impl Unpin for ImapSessionOpenYield
impl UnsafeUnpin for ImapSessionOpenYield
impl UnwindSafe for ImapSessionOpenYield
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more