examples: Updated SMTP examples to set CURLOPT_UPLOAD

This commit is contained in:
Steve Holme 2013-12-31 00:19:10 +00:00
parent 0aafd77fa4
commit 73a894170b
3 changed files with 5 additions and 1 deletions

View File

@ -62,6 +62,7 @@ int main(void)
* as a FILE pointer) as shown here. * as a FILE pointer) as shown here.
*/ */
curl_easy_setopt(curl, CURLOPT_READDATA, stdin); curl_easy_setopt(curl, CURLOPT_READDATA, stdin);
curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
/* send the message (including headers) */ /* send the message (including headers) */
res = curl_easy_perform(curl); res = curl_easy_perform(curl);

View File

@ -120,6 +120,7 @@ int main(void)
curl_easy_setopt(curl, CURLOPT_USERNAME, USERNAME); curl_easy_setopt(curl, CURLOPT_USERNAME, USERNAME);
curl_easy_setopt(curl, CURLOPT_PASSWORD, PASSWORD); curl_easy_setopt(curl, CURLOPT_PASSWORD, PASSWORD);
curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback); curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
curl_easy_setopt(curl, CURLOPT_MAIL_FROM, MAILFROM); curl_easy_setopt(curl, CURLOPT_MAIL_FROM, MAILFROM);
curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, rcpt_list); curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, rcpt_list);
curl_easy_setopt(curl, CURLOPT_USE_SSL, (long)CURLUSESSL_ALL); curl_easy_setopt(curl, CURLOPT_USE_SSL, (long)CURLUSESSL_ALL);

View File

@ -82,7 +82,7 @@ int main(void)
upload_ctx.lines_read = 0; upload_ctx.lines_read = 0;
curl = curl_easy_init(); curl = curl_easy_init();
if (curl) { if(curl) {
/* This is the URL for your mailserver. Note the use of port 587 here, /* This is the URL for your mailserver. Note the use of port 587 here,
* instead of the normal SMTP port (25). Port 587 is commonly used for * instead of the normal SMTP port (25). Port 587 is commonly used for
* secure mail submission (see RFC4403), but you should use whatever * secure mail submission (see RFC4403), but you should use whatever
@ -118,6 +118,7 @@ int main(void)
/* value for envelope reverse-path */ /* value for envelope reverse-path */
curl_easy_setopt(curl, CURLOPT_MAIL_FROM, FROM); curl_easy_setopt(curl, CURLOPT_MAIL_FROM, FROM);
/* Add two recipients, in this particular case they correspond to the /* Add two recipients, in this particular case they correspond to the
* To: and Cc: addressees in the header, but they could be any kind of * To: and Cc: addressees in the header, but they could be any kind of
* recipient. */ * recipient. */
@ -131,6 +132,7 @@ int main(void)
*/ */
curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source); curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source);
curl_easy_setopt(curl, CURLOPT_READDATA, &upload_ctx); curl_easy_setopt(curl, CURLOPT_READDATA, &upload_ctx);
curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
/* Since the traffic will be encrypted, it is very useful to turn on debug /* Since the traffic will be encrypted, it is very useful to turn on debug
* information within libcurl to see what is happening during the transfer. * information within libcurl to see what is happening during the transfer.