• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1---
2c: Copyright (C) Daniel Stenberg, <daniel.se>, et al.
3SPDX-License-Identifier: curl
4Title: curl_url_dup
5Section: 3
6Source: libcurl
7See-also:
8  - CURLOPT_CURLU (3)
9  - curl_url (3)
10  - curl_url_cleanup (3)
11  - curl_url_get (3)
12  - curl_url_set (3)
13---
14
15# NAME
16
17curl_url_dup - duplicate a URL handle
18
19# SYNOPSIS
20
21~~~c
22#include <curl/curl.h>
23
24CURLU *curl_url_dup(const CURLU *inhandle);
25~~~
26
27# DESCRIPTION
28
29Duplicates the URL object the input *CURLU* *inhandle* identifies and
30returns a pointer to the copy as a new *CURLU* handle. The new handle also
31needs to be freed with curl_url_cleanup(3).
32
33# EXAMPLE
34
35~~~c
36int main(void)
37{
38  CURLUcode rc;
39  CURLU *url = curl_url();
40  CURLU *url2;
41  rc = curl_url_set(url, CURLUPART_URL, "https://example.com", 0);
42  if(!rc) {
43    url2 = curl_url_dup(url); /* clone it! */
44    curl_url_cleanup(url2);
45  }
46  curl_url_cleanup(url);
47}
48~~~
49
50# AVAILABILITY
51
52Added in 7.62.0
53
54# RETURN VALUE
55
56Returns a new handle or NULL if out of memory.
57