smtp: Changed the default command to HELP when no options are specified
authorSteve Holme <steve_holme@hotmail.com>
Sun, 17 Nov 2013 09:45:08 +0000 (09:45 +0000)
committerSteve Holme <steve_holme@hotmail.com>
Sun, 17 Nov 2013 10:09:07 +0000 (10:09 +0000)
Otherwise a NOOP operation would be performed which a) only returns a
single line response and not a multiline response where -I needs to be
used, and b) provides an inconsistent user experience compared to that
of the POP3 and IMAP protocols.

docs/curl.1
docs/libcurl/curl_easy_setopt.3
lib/smtp.c

index ce0fe5c..7a0a1e0 100644 (file)
@@ -1801,7 +1801,7 @@ Specifies a custom POP3 command to use instead of LIST or RETR. (Added in
 Specifies a custom IMAP command to use insead of LIST. (Added in 7.30.0)
 
 (SMTP)
-Specifies a custom SMTP command to use instead of VRFY or NOOP. (Added in 7.34.0)
+Specifies a custom SMTP command to use instead of HELP or VRFY. (Added in 7.34.0)
 
 If this option is used several times, the last one will be used.
 .IP "--xattr"
index c63920b..51edaea 100644 (file)
@@ -2084,11 +2084,11 @@ Instead of LIST and NLST when performing FTP directory listings.
 
 .B IMAP
 
-Instead of LIST when issuing IMAP based commands. (Added in 7.30.0)
+Instead of LIST when issuing IMAP based requests. (Added in 7.30.0)
 
 .B POP3
 
-Instead of LIST and RETR when issuing POP3 based commands. (Added in 7.26.0)
+Instead of LIST and RETR when issuing POP3 based requests. (Added in 7.26.0)
 
 For example:
 
@@ -2099,15 +2099,14 @@ DELE and NOOP for example.
 
 .B SMTP
 
-When you tell libcurl to use a custom request it will behave as a NOOP or VRFY
-request depending on what other options are set. (Added in 7.34.0)
+Instead of a HELP or VRFY when issuing SMTP based requests. (Added in 7.34.0)
 
 For example:
 
-If the \fICURLOPT_NOBODY\fP option is specified then the request can be used to
-specify the RSET command. Otherwise a multiline listing is returned which can
-be used to specify a HELP request or, if used in conjuection with the
-\fICURLOPT_MAIL_RCPT\fP option, a EXPN request.
+Normally a multiline response is returned which can be used, in conjuection with
+\fICURLOPT_MAIL_RCPT\fP, to specify an EXPN request. If the \fICURLOPT_NOBODY\fP
+option is specified then the request can be used to issue NOOP and RSET
+commands.
 .IP CURLOPT_FILETIME
 Pass a long. If it is 1, libcurl will attempt to get the modification date of
 the remote document in this operation. This requires that the remote server
index 120afaf..5675ff4 100644 (file)
@@ -571,8 +571,8 @@ static CURLcode smtp_perform_command(struct connectdata *conn)
     /* Send the VRFY command */
     result = Curl_pp_sendf(&conn->proto.smtpc.pp, "VRFY %s", smtp->rcpt->data);
   else
-    /* Send the NOOP command */
-    result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", "NOOP");
+    /* Send the HELP command */
+    result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", "HELP");
 
   if(!result)
     state(conn, SMTP_COMMAND);