aboutsummaryrefslogtreecommitdiff
path: root/lib/smtp.h
AgeCommit message (Collapse)Author
2012-05-25smtp: Moved auth-mechanism constants into a separate header fileSteve Holme
Move the SMTP_AUTH constants into a separate header file in preparation for adding SASL based authentication to POP3 as the two protocols will need to share them.
2012-05-17smtp: Fixed non-escaping of dot character at beginning of lineSteve Holme
A dot character at the beginning of a line would not be escaped to a double dot as required by RFC-2821, instead it would be deleted by the mail server. Please see section 4.5.2 of the RFC for more information. Note: This fix also simplifies the detection of repeated CRLF.CRLF combinations, such as CRLF.CRLF.CRLF, a little rather than having to advance the eob counter to 2.
2012-03-31smtp: Add support for DIGEST-MD5 authenticationGökhan Şengün
2012-02-16SMTP: Code policing and tidy upSteve Holme
2011-10-03smtp: Added support for NTLM authenticationSteve Holme
Modified smtp_endofresp() to detect NTLM from the server specified list of supported authentication mechanisms. Modified smtp_authenticate() to start the sending of the NTLM data. Added smtp_auth_ntlm_type1_message() which creates a NTLM type-1 message. This function is used by authenticate() to start the sending of data and by smtp_state_auth_ntlm_resp() when the AUTH command doesn't contain the type-1 message as part of the initial response. This lack of initial response can happen if an OOM error occurs or the type-1 message is longer than 504 characters. As the main AUTH command is limited to 512 character the data has to be transmitted in two parts; one containing the AUTH NTLM and the second containing the type-1 message. Added smtp_state_auth_ntlm_type2msg_resp() which handles the incoming type-2 message and sends an outgoing type-3 message. This type-2 message is sent by the server in response to our type-1 message. Modified smtp_state_auth_resp() to handle the response to: the AUTH NTLM without the initial response and the type-2 response. Modified smtp_disconnect() to cleanup the NTLM SSPI stack.
2011-04-27source cleanup: unify look, style and indent levelsDaniel Stenberg
By the use of a the new lib/checksrc.pl script that checks that our basic source style rules are followed.
2011-03-15SMTP-multi: non-blocking connectBen Noordhuis
Use Curl_ssl_connect_nonblocking() when upgrading the connection to TLS/SSL while using the multi interface.
2011-03-15SMTP in multi mode: use Curl_ssl_connect_nonblocking() when connecting.Ben Noordhuis
2010-04-19Implement SMTP authenticationmonnerat
2010-04-02fixed compiler warningsBen Greear
2010-03-29fix smtp compile warningBen Greear
Use ssize_t instead of int for the Curl_smtp_escape_eob nread argument. Signed-off-by: Ben Greear <greearb@candelatech.com>
2010-03-24remove the CVSish $Id$ linesDaniel Stenberg
2010-02-22- Proper handling of STARTTLS on SMTP, taking CURLUSESSL_TRY into account.Patrick Monnerat
- SMTP falls back to RFC821 HELO when EHLO fails (and SSL is not required). - Use of true local host name (i.e.: via gethostname()) when available, as default argument to SMTP HELO/EHLO. - Test case 804 for HELO fallback.
2010-02-20- I made the SMTP code expect a 250 response back from the server after theDaniel Stenberg
full DATA has been sent, and I modified the test SMTP server to also send that response. As usual, the DONE operation that is made after a completed transfer is still not doable in a non-blocking way so this waiting for 250 is unfortunately made blockingly.
2010-02-12- Jack Zhang reported a problem with SMTP: we wrongly used multiple addressesDaniel Stenberg
in the same RCPT TO line, when they should be sent in separate single commands. I updated test case 802 to verify this. - I also fixed a bad use of my_setopt_str() of CURLOPT_MAIL_RCPT in the curl tool which made it try to output it as string for the --libcurl feature which could lead to crashes.
2009-12-30modified to get the EHLO domain from the path part of the URL instead of theDaniel Stenberg
user name
2009-12-30moved the SMTP payload escape function into Curl_smtp_escape_eob and putDaniel Stenberg
it in smtp.c
2009-12-30(SMTP) support DATA better in the server and make sure to "escape" CRLF.CRLFDaniel Stenberg
sequences in uploaded data. The test server doesn't "decode" escaped dot-lines but instead test cases must be written to take them into account. Added test case 803 to verify dot-escaping.
2009-12-12introducing IMAP, POP3 and SMTP support (still lots of polish left to do)Daniel Stenberg