From b3b137b86abefe39e7ae5846cc57d46abfea3401 Mon Sep 17 00:00:00 2001 From: Michael Zhang Date: Mon, 1 Mar 2021 02:03:21 -0600 Subject: [PATCH] checklist for protocol implementation --- imap/README.md | 38 ++++++++++++++++++++++++++++++++++++++ imap/src/command/mod.rs | 2 +- smtp/README.md | 22 ++++++++++++++++++++++ 3 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 imap/README.md create mode 100644 smtp/README.md diff --git a/imap/README.md b/imap/README.md new file mode 100644 index 0000000..80ce911 --- /dev/null +++ b/imap/README.md @@ -0,0 +1,38 @@ +IMAP +=== + +here's the list of RFCs planning to be supported and the status of the +implementation of their commands: + +- RFC3501 (IMAP4rev1) + - any state: + - CAPABILITY: works + - NOOP: not yet implemented + - LOGOUT: not yet implemented + - not authenticated state: + - STARTTLS: works + - AUTHENTICATE: not yet implemented + - LOGIN: plain only + - authenticated state: + - SELECT: not yet implemented + - EXAMINE: not yet implemented + - CREATE: not yet implemented + - DELETE: not yet implemented + - RENAME: not yet implemented + - SUBSCRIBE: not yet implemented + - UNSUBSCRIBE: not yet implemented + - LIST: not yet implemented + - LSUB: not yet implemented + - STATUS: not yet implemented + - APPEND: not yet implemented + - selected state: + - CHECK: not yet implemented + - CLOSE: not yet implemented + - EXPUNGE: not yet implemented + - SEARCH: not yet implemented + - FETCH: not yet implemented + - STORE: not yet implemented + - COPY: not yet implemented + - UID: not yet implemented +- RFC2177 (IMAP4 IDLE) + - IDLE: works? diff --git a/imap/src/command/mod.rs b/imap/src/command/mod.rs index cc99bcc..8874c6d 100644 --- a/imap/src/command/mod.rs +++ b/imap/src/command/mod.rs @@ -27,7 +27,7 @@ impl fmt::Display for Command { match self { Capability => write!(f, "CAPABILITY"), Starttls => write!(f, "STARTTLS"), - Login { username, password } => write!(f, "LOGIN {} {}", username, password), + Login { username, password } => write!(f, "LOGIN {:?} {:?}", username, password), Select { mailbox } => write!(f, "SELECT {}", mailbox), List { reference, mailbox } => write!(f, "LIST {:?} {:?}", reference, mailbox), diff --git a/smtp/README.md b/smtp/README.md new file mode 100644 index 0000000..fe11382 --- /dev/null +++ b/smtp/README.md @@ -0,0 +1,22 @@ +SMTP +=== + +here's the list of RFCs planning to be supported and the status of the +implementation of their commands: + +- RFC5321 (SMTP) + - HELO: not yet implemented + - EHLO: not yet implemented + - MAIL: not yet implemented + - RCPT: not yet implemented + - DATA: not yet implemented + - RSET: not yet implemented + - VRFY: not yet implemented + - EXPN: not yet implemented + - HELP: not yet implemented + - NOOP: not yet implemented + - QUIT: not yet implemented +- RFC3207 (SMTP STARTTLS) + - STARTTLS: not yet implemented +- RFC2554 (SMTP AUTH) + - AUTH: not yet implemented