cURL cURL > Mailing List > Monthly Index > Single Mail

curl-tracker Archives

[curl:bugs] #1456 Curl SMTP client CRLF and dot stuffing doesn't work

From: Steve Holme <captain-caveman_at_users.sf.net>
Date: Wed, 26 Nov 2014 23:48:05 +0000

I have a pushed my implementation of this as commit [4bd860a001](https://github.com/bagder/curl/commit/4bd860a001921e1e007ae448cfdd2c983018c057)

It is a little different from last nights quick fix as I found a memory leak in my code and fixed a few other minor issues in the next commit.

I have already also updated the documentation accordingly.

I have a new test case for this as well but will push that in the morning after some shut eye ;-)

If you build libcurl yourself you can apply the git format patch by following the link above (and appending .patch to the url to download the associated .patch file). Alternatively the next nightly archive will contain this.

---
** [bugs:#1456] Curl SMTP client CRLF and dot stuffing doesn't work**
**Status:** open
**Labels:** smtp 
**Created:** Tue Nov 25, 2014 03:35 PM UTC by bra
**Last Updated:** Wed Nov 26, 2014 12:09 AM UTC
**Owner:** Steve Holme
Hi,
I'm trying to send a simple e-mail with curl. SMTP has two caveats here: dot stuffing and CRLF, I've tried to test these in my sample e-mail.
This is the code, which is mostly the smtp example from curl source:
http://pastebin.com/0JtwGTqx
For the options, I've just added curl_easy_setopt(curl, CURLOPT_CRLF, 1L); to do CRLF conversions, and replaced \r\n in payload_text to see whether it works or not.
Bug #1: this example sends LF line endings on the wire, so my SMTP server refuses the e-mail. Shouldn't CURLOPT_CRLF convert them to CRLF?
Bug #2: dot stuffing doesn't happen. The lines with a dot in the first character aren't get prepended with an extra dot, so the transaction here fails (because of the lone LF.LF). If think an SMTP client should do this and not let the client take care of it.
Could you please investigate these?
Thanks,
$ curl -V
curl 7.39.0 (amd64-portbld-freebsd10.0) libcurl/7.39.0 OpenSSL/1.0.1i zlib/1.2.8
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smtp smtps telnet tftp 
Features: AsynchDNS Largefile GSS-API SPNEGO NTLM NTLM_WB SSL libz TLS-SRP
---
Sent from sourceforge.net because curl-tracker@cool.haxx.se is subscribed to https://sourceforge.net/p/curl/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/curl/admin/bugs/options.  Or, if this is a mailing list, you can unsubscribe from the mailing list.
Received on 2014-11-27

These mail archives are generated by hypermail.