summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilipp Korber <philippkorber@gmail.com>2018-03-13 19:11:04 +0100
committerPhilipp Korber <philippkorber@gmail.com>2018-03-13 19:11:04 +0100
commitda7d81b74a566621a038b5ba7d2a3bd4070dd9f5 (patch)
treec2e389d3c0fb2474e233edc729f96aa93c72756f
parent3c6d62e94ee3d6e16e679209530bf15b646f8769 (diff)
chore(smtp): From<Mail> for MailRequest
-rw-r--r--src/smtp/common.rs11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/smtp/common.rs b/src/smtp/common.rs
index a6c0937..9f19166 100644
--- a/src/smtp/common.rs
+++ b/src/smtp/common.rs
@@ -4,7 +4,7 @@ use vec1::Vec1;
use tokio_smtp::request::{Mailbox as SmtpMailbox};
-use mail::headers::{Sender, From, To};
+use mail::headers::{Sender, From as _From, To};
use mail::headers::components::Mailbox;
use mail::Mail;
use super::error::EnvelopFromMailError;
@@ -34,7 +34,7 @@ impl EnvelopData {
//TODO double check with from field
mailbox2smtp_mailbox(sender)
} else {
- let from = headers.get_single(From)
+ let from = headers.get_single(_From)
.ok_or(EnvelopFromMailError::NeitherSenderNorFrom)?
.map_err(|tpr| EnvelopFromMailError::TypeError(tpr))?;
@@ -62,7 +62,6 @@ impl EnvelopData {
}
}
-
#[derive(Debug, Clone)]
pub struct MailResponse;
@@ -74,6 +73,12 @@ pub struct MailRequest {
envelop_data: Option<EnvelopData>
}
+impl From<Mail> for MailRequest {
+ fn from(mail: Mail) -> Self {
+ MailRequest::new(mail)
+ }
+}
+
impl MailRequest {