• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
**************************************************************************
* _ _ ____ _
* Project ___| | | | _ \| |
* / __| | | | |_) | |
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
* Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
* are also available at https://curl.se/docs/copyright.html.
*
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
* copies of the Software, and permit persons to whom the Software is
* furnished to do so, under the terms of the COPYING file.
*
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
* KIND, either express or implied.
*
* SPDX-License-Identifier: curl
*
**************************************************************************
curl_mime_subparts 3 "22 August 2017" "libcurl 7.56.0" "libcurl Manual"
NAME
curl_mime_subparts - set sub-parts of a multipart mime part
SYNOPSIS
#include <curl/curl.h>

CURLcode curl_mime_subparts(curl_mimepart *part, curl_mime *subparts);
DESCRIPTION
curl_mime_subparts(3) sets a multipart mime part's 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 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 part's contents multiple times is valid: only the value set by the last call is retained. It is possible to unassign previous part's contents by setting subparts to NULL.
EXAMPLE
 /* The inline part is an alternative proposing the html and the text
 versions of the email. */
 alt = curl_mime_init(curl);

 /* 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(mime);
 curl_mime_subparts(part, alt);
 curl_mime_type(part, "multipart/alternative");
 slist = curl_slist_append(NULL, "Content-Disposition: inline");
 curl_mime_headers(part, slist, 1);
AVAILABILITY
As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
RETURN VALUE
CURLE_OK or a CURL error code upon failure.
"SEE ALSO"
curl_mime_addpart "(3)," curl_mime_init "(3)"