curl_mime_free(3)

curl_mime_free3

Free a previously built mime structure

Usage

#include <curl/curl.h>
void curl_mime_free(curl_mime *mime);

Overview

curl_mime_free(3) is used to clean up data previously built/appended with curl_mime_addpart(3) and other mime-handling functions. This must be called when the data has been used, which typically means after curl_easy_perform(3) has been called.

The handle to free is the one you passed to the CURLOPT_MIMEPOST(3) option: attached sub part mime structures must not be explicitly freed as they are by the top structure freeing.

mime is the handle as returned from a previous call to curl_mime_init(3) and may be NULL.

Passing in a NULL pointer in mime makes this function return immediately with no action.

Protocols

This functionality affects http, imap and smtp

Examples

int main(void)
{
  CURL *curl = curl_easy_init();
  if(curl) {
    /* Build the mime message. */
    curl_mime *mime = curl_mime_init(curl);
    /* send off the transfer */
    /* Free multipart message. */
    curl_mime_free(mime);
  }
}

Return value

None

Releases

5 releases since Debian 10 (Buster); the text changed 4 times.

  1. 10
  2. 11
  3. 12
  4. 13
  5. Arch

Availability

Added in curl 7.56.0

From curl 8.23.0-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.