diff options
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/sendmail/sendmailTransport.cpp | 4 | ||||
-rw-r--r-- | src/net/smtp/SMTPCommand.cpp | 15 |
2 files changed, 15 insertions, 4 deletions
diff --git a/src/net/sendmail/sendmailTransport.cpp b/src/net/sendmail/sendmailTransport.cpp index 181d0d7f..dbbb55a8 100644 --- a/src/net/sendmail/sendmailTransport.cpp +++ b/src/net/sendmail/sendmailTransport.cpp @@ -152,11 +152,11 @@ void sendmailTransport::send args.push_back("-i"); args.push_back("-f"); - args.push_back(expeditor.getEmail()); + args.push_back(expeditor.getEmail().generate()); args.push_back("--"); for (int i = 0 ; i < recipients.getMailboxCount() ; ++i) - args.push_back(recipients.getMailboxAt(i)->getEmail()); + args.push_back(recipients.getMailboxAt(i)->getEmail().generate()); // Call sendmail try diff --git a/src/net/smtp/SMTPCommand.cpp b/src/net/smtp/SMTPCommand.cpp index f338e248..99a3ac17 100644 --- a/src/net/smtp/SMTPCommand.cpp +++ b/src/net/smtp/SMTPCommand.cpp @@ -32,6 +32,7 @@ #include "vmime/net/socket.hpp" #include "vmime/mailbox.hpp" +#include "vmime/utility/outputStreamAdapter.hpp" namespace vmime { @@ -90,7 +91,12 @@ ref <SMTPCommand> SMTPCommand::MAIL(const mailbox& mbox) { std::ostringstream cmd; cmd.imbue(std::locale::classic()); - cmd << "MAIL FROM:<" << mbox.getEmail() << ">"; + cmd << "MAIL FROM:<"; + + vmime::utility::outputStreamAdapter cmd2(cmd); + mbox.getEmail().generate(cmd2); + + cmd << ">"; return createCommand(cmd.str()); } @@ -101,7 +107,12 @@ ref <SMTPCommand> SMTPCommand::RCPT(const mailbox& mbox) { std::ostringstream cmd; cmd.imbue(std::locale::classic()); - cmd << "RCPT TO:<" << mbox.getEmail() << ">"; + cmd << "RCPT TO:<"; + + vmime::utility::outputStreamAdapter cmd2(cmd); + mbox.getEmail().generate(cmd2); + + cmd << ">"; return createCommand(cmd.str()); } |