www.LinuxHowtos.org
curl_mime_subparts
Section: C Library Functions (3)Updated: 202-0-19
Index Return to Main Contents
NAME
curl_mime_subparts - set sub-parts of a multipart mime partSYNOPSIS
#include <curl/curl.h> CURLcode curl_mime_subparts(curl_mimepart *part, curl_mime *subparts);
DESCRIPTION
curl_mime_subparts(3) sets a multipart mime partaqs content from a mime structure.part is a handle to the multipart part.
subparts is a mime structure handle holding the sub-parts. After curl_mime_subparts(3) succeeds, the mime structure handle belongs to the multipart part and must not be freed explicitly. It may however be updated by subsequent calls to mime API functions.
Setting a partaqs contents multiple times is valid: only the value set by the last call is retained. It is possible to unassign previous partaqs contents by setting subparts to NULL.
PROTOCOLS
This functionality affects http, imap and smtpEXAMPLE
static char *inline_html = "<title>example</title>";
static char *inline_text = "once upon the time";
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
struct curl_slist *slist;
/* The inline part is an alternative proposing the html and the text
versions of the email. */
curl_mime *alt = curl_mime_init(curl);
curl_mimepart *part;
/* HTML message. */
part = curl_mime_addpart(alt);
curl_mime_data(part, inline_html, CURL_ZERO_TERMINATED);
curl_mime_type(part, "text/html");
/* Text message. */
part = curl_mime_addpart(alt);
curl_mime_data(part, inline_text, CURL_ZERO_TERMINATED);
/* Create the inline part. */
part = curl_mime_addpart(alt);
curl_mime_subparts(part, alt);
curl_mime_type(part, "multipart/alternative");
slist = curl_slist_append(NULL, "Conten-Disposition: inline");
curl_mime_headers(part, slist, 1);
}
}
AVAILABILITY
Added in curl 7.56.0RETURN VALUE
This function returns a CURLcode indicating success or error.CURLE_OK (0) means everything was OK, non-zero means an error occurred, see libcurl-errors(3). If CURLOPT_ERRORBUFFER(3) was set with curl_easy_setopt(3) there can be an error message stored in the error buffer when non-zero is returned.
SEE ALSO
curl_mime_addpart(3), curl_mime_init(3)