aboutsummaryrefslogtreecommitdiff
path: root/docs/libcurl/curl_slist_append.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/libcurl/curl_slist_append.md')
-rw-r--r--docs/libcurl/curl_slist_append.md75
1 files changed, 75 insertions, 0 deletions
diff --git a/docs/libcurl/curl_slist_append.md b/docs/libcurl/curl_slist_append.md
new file mode 100644
index 000000000..9773fd494
--- /dev/null
+++ b/docs/libcurl/curl_slist_append.md
@@ -0,0 +1,75 @@
+---
+c: Copyright (C) Daniel Stenberg, <daniel.se>, et al.
+SPDX-License-Identifier: curl
+Title: curl_slist_append
+Section: 3
+Source: libcurl
+See-also:
+ - curl_slist_free_all (3)
+---
+
+# NAME
+
+curl_slist_append - add a string to an slist
+
+# SYNOPSIS
+
+~~~c
+#include <curl/curl.h>
+
+struct curl_slist *curl_slist_append(struct curl_slist *list,
+ const char *string);
+~~~
+
+# DESCRIPTION
+
+curl_slist_append(3) appends a string to a linked list of strings. The
+existing **list** should be passed as the first argument and the new list is
+returned from this function. Pass in NULL in the **list** argument to create
+a new list. The specified **string** has been appended when this function
+returns. curl_slist_append(3) copies the string.
+
+The list should be freed again (after usage) with
+curl_slist_free_all(3).
+
+# EXAMPLE
+
+~~~c
+int main(void)
+{
+ CURL *handle;
+ struct curl_slist *slist = NULL;
+ struct curl_slist *temp = NULL;
+
+ slist = curl_slist_append(slist, "pragma:");
+
+ if(!slist)
+ return -1;
+
+ temp = curl_slist_append(slist, "Accept:");
+
+ if(!temp) {
+ curl_slist_free_all(slist);
+ return -1;
+ }
+
+ slist = temp;
+
+ curl_easy_setopt(handle, CURLOPT_HTTPHEADER, slist);
+
+ curl_easy_perform(handle);
+
+ curl_slist_free_all(slist); /* free the list again */
+}
+~~~
+
+# AVAILABILITY
+
+Always
+
+# RETURN VALUE
+
+A null pointer is returned if anything went wrong, otherwise the new list
+pointer is returned. To avoid overwriting an existing non-empty list on
+failure, the new list should be returned to a temporary variable which can
+be tested for NULL before updating the original list pointer.