diff options
author | Eric S. Raymond <esr@thyrsus.com> | 1998-05-25 15:03:38 +0000 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 1998-05-25 15:03:38 +0000 |
commit | c8c8573eb8e36f98deb5672244af5b609abe5cc3 (patch) | |
tree | 73433e8220e94641d4cff9cb57faf7d4896d50b7 | |
parent | 0ac2d52e1c3b7f54846683d2b918e228af7b4073 (diff) | |
download | fetchmail-c8c8573eb8e36f98deb5672244af5b609abe5cc3.tar.gz fetchmail-c8c8573eb8e36f98deb5672244af5b609abe5cc3.tar.bz2 fetchmail-c8c8573eb8e36f98deb5672244af5b609abe5cc3.zip |
Don't <-enclose MAIL FROM name if it already contains one.
svn path=/trunk/; revision=1824
-rw-r--r-- | smtp.c | 25 |
1 files changed, 14 insertions, 11 deletions
@@ -81,17 +81,20 @@ int SMTP_ehlo(int sock, char *host, int *opt) int SMTP_from(int sock, char *from, char *opts) /* send a "MAIL FROM:" message to the SMTP listener */ { - int ok; - char buf[MSGBUFSIZE]; - - sprintf(buf, "MAIL FROM:<%s>", from); - if (opts) - strcat(buf, opts); - SockPrintf(sock,"%s\r\n", buf); - if (outlevel == O_VERBOSE) - error(0, 0, "SMTP> %s", buf); - ok = SMTP_ok(sock); - return ok; + int ok; + char buf[MSGBUFSIZE]; + + if (strchr(from, '<')) + sprintf(buf, "MAIL FROM: %s", from); + else + sprintf(buf, "MAIL FROM:<%s>", from); + if (opts) + strcat(buf, opts); + SockPrintf(sock,"%s\r\n", buf); + if (outlevel == O_VERBOSE) + error(0, 0, "SMTP> %s", buf); + ok = SMTP_ok(sock); + return ok; } int SMTP_rcpt(int sock, char *to) |