Return to curl_easy_unescape.3 CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / curl / docs / libcurl |
1.1 ! misho 1: .\" ************************************************************************** ! 2: .\" * _ _ ____ _ ! 3: .\" * Project ___| | | | _ \| | ! 4: .\" * / __| | | | |_) | | ! 5: .\" * | (__| |_| | _ <| |___ ! 6: .\" * \___|\___/|_| \_\_____| ! 7: .\" * ! 8: .\" * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al. ! 9: .\" * ! 10: .\" * This software is licensed as described in the file COPYING, which ! 11: .\" * you should have received as part of this distribution. The terms ! 12: .\" * are also available at https://curl.haxx.se/docs/copyright.html. ! 13: .\" * ! 14: .\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell ! 15: .\" * copies of the Software, and permit persons to whom the Software is ! 16: .\" * furnished to do so, under the terms of the COPYING file. ! 17: .\" * ! 18: .\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY ! 19: .\" * KIND, either express or implied. ! 20: .\" * ! 21: .\" ************************************************************************** ! 22: .\" ! 23: .TH curl_easy_unescape 3 "October 04, 2016" "libcurl 7.70.0" "libcurl Manual" ! 24: ! 25: .SH NAME ! 26: curl_easy_unescape - URL decodes the given string ! 27: .SH SYNOPSIS ! 28: .B #include <curl/curl.h> ! 29: .sp ! 30: .BI "char *curl_easy_unescape( CURL *" curl ", const char *" url ! 31: .BI ", int "inlength ", int *" outlength " );" ! 32: .ad ! 33: .SH DESCRIPTION ! 34: This function converts the given URL encoded input string to a "plain string" ! 35: and returns that in an allocated memory area. All input characters that are ! 36: URL encoded (%XX where XX is a two-digit hexadecimal number) are converted to ! 37: their binary versions. ! 38: ! 39: If the \fBlength\fP argument is set to 0 (zero), \fIcurl_easy_unescape(3)\fP ! 40: will use strlen() on the input \fIurl\fP string to find out the size. ! 41: ! 42: If \fBoutlength\fP is non-NULL, the function will write the length of the ! 43: returned string in the integer it points to. This allows an escaped string ! 44: containing %00 to still get used properly after unescaping. Since this is a ! 45: pointer to an \fIint\fP type, it can only return a value up to INT_MAX so no ! 46: longer string can be unescaped if the string length is returned in this ! 47: parameter. ! 48: ! 49: You must \fIcurl_free(3)\fP the returned string when you're done with it. ! 50: .SH AVAILABILITY ! 51: Added in 7.15.4 and replaces the old \fIcurl_unescape(3)\fP function. ! 52: .SH RETURN VALUE ! 53: A pointer to a zero terminated string or NULL if it failed. ! 54: .SH "SEE ALSO" ! 55: .BR curl_easy_escape "(3), " curl_free "(3)," RFC 3986