aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/smtp.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/smtp.c b/lib/smtp.c
index 82621a42b..b01ad7d5c 100644
--- a/lib/smtp.c
+++ b/lib/smtp.c
@@ -754,9 +754,13 @@ static CURLcode smtp_mail(struct connectdata *conn)
CURLcode result = CURLE_OK;
struct SessionHandle *data = conn->data;
- /* send MAIL */
- result = Curl_pp_sendf(&conn->proto.smtpc.pp, "MAIL FROM:%s",
- data->set.str[STRING_MAIL_FROM]);
+ /* send MAIL FROM */
+ if (data->set.str[STRING_MAIL_FROM][0] == '<')
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "MAIL FROM:%s",
+ data->set.str[STRING_MAIL_FROM]);
+ else
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "MAIL FROM:<%s>",
+ data->set.str[STRING_MAIL_FROM]);
if(result)
return result;