curl/docs/libcurl/opts/CURLSHOPT_USERDATA.md
Daniel Stenberg b935fd4a07
docs: make each libcurl man specify protocol(s)
The mandatory header now has a mandatory list of protocols for which the
manpage is relevant.

Most man pages already has a "PROTOCOLS" section, but this introduces a
stricter way to specify the relevant protocols.

cd2nroff verifies that at least one protocol is mentioned (which can be
`*`).

This information is not used just yet, but A) the PROTOCOLS section can
now instead get generated and get a unified wording across all manpages
and B) this allows us to more reliably filter/search for protocol
specific manpages/options.

Closes #13166
2024-03-21 15:27:06 +01:00

1.2 KiB

c: Copyright (C) Daniel Stenberg, daniel@haxx.se, et al. SPDX-License-Identifier: curl Title: CURLSHOPT_USERDATA Section: 3 Source: libcurl See-also: - CURLSHOPT_LOCKFUNC (3) - curl_share_cleanup (3) - curl_share_init (3) - curl_share_setopt (3) Protocol: - *

NAME

CURLSHOPT_USERDATA - pointer passed to the lock and unlock mutex callbacks

SYNOPSIS

#include <curl/curl.h>

CURLSHcode curl_share_setopt(CURLSH *share, CURLSHOPT_USERDATA, void *clientp);

DESCRIPTION

The clientp parameter is held verbatim by libcurl and is passed on as the clientp argument to the callbacks set with CURLSHOPT_LOCKFUNC(3) and CURLSHOPT_UNLOCKFUNC(3).

PROTOCOLS

All

EXAMPLE

struct secrets {
  void *custom;
};

int main(void)
{
  CURLSHcode sh;
  struct secrets private_stuff;
  CURLSH *share = curl_share_init();
  sh = curl_share_setopt(share, CURLSHOPT_USERDATA, &private_stuff);
  if(sh)
    printf("Error: %s\n", curl_share_strerror(sh));
}

AVAILABILITY

Added in 7.10

RETURN VALUE

CURLSHE_OK (zero) means that the option was set properly, non-zero means an error occurred. See libcurl-errors(3) for the full list with descriptions.