Return to curl_easy_cleanup.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 - 2018, 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_cleanup 3 "August 09, 2018" "libcurl 7.70.0" "libcurl Manual" ! 24: ! 25: .SH NAME ! 26: curl_easy_cleanup - End a libcurl easy handle ! 27: .SH SYNOPSIS ! 28: .B #include <curl/curl.h> ! 29: ! 30: .BI "void curl_easy_cleanup(CURL *" handle ");" ! 31: .SH DESCRIPTION ! 32: This function must be the last function to call for an easy session. It is the ! 33: opposite of the \fIcurl_easy_init(3)\fP function and must be called with the ! 34: same \fIhandle\fP as input that a \fIcurl_easy_init(3)\fP call returned. ! 35: ! 36: This might close all connections this handle has used and possibly has kept ! 37: open until now - unless it was attached to a multi handle while doing the ! 38: transfers. Don't call this function if you intend to transfer more files, ! 39: re-using handles is a key to good performance with libcurl. ! 40: ! 41: Occasionally you may get your progress callback or header callback called from ! 42: within \fIcurl_easy_cleanup(3)\fP (if previously set for the handle using ! 43: \fIcurl_easy_setopt(3)\fP). Like if libcurl decides to shut down the ! 44: connection and the protocol is of a kind that requires a command/response ! 45: sequence before disconnect. Examples of such protocols are FTP, POP3 and IMAP. ! 46: ! 47: Any use of the \fBhandle\fP after this function has been called and have ! 48: returned, is illegal. \fIcurl_easy_cleanup(3)\fP kills the handle and all ! 49: memory associated with it! ! 50: ! 51: Passing in a NULL pointer in \fIhandle\fP will make this function return ! 52: immediately with no action. ! 53: .SH "OLD TIMES" ! 54: For libcurl versions before 7.17,: after you've called this function, you can ! 55: safely remove all the strings you've previously told libcurl to use, as it ! 56: won't use them anymore now. ! 57: .SH RETURN VALUE ! 58: None ! 59: .SH EXAMPLE ! 60: .nf ! 61: CURL *curl = curl_easy_init(); ! 62: if(curl) { ! 63: CURLcode res; ! 64: curl_easy_setopt(curl, CURLOPT_URL, "http://example.com"); ! 65: res = curl_easy_perform(curl); ! 66: curl_easy_cleanup(curl); ! 67: } ! 68: .fi ! 69: .SH "SEE ALSO" ! 70: .BR curl_easy_init "(3), " curl_easy_duphandle "(3), " ! 71: .BR curl_easy_reset "(3), " ! 72: .BR curl_multi_cleanup "(3), " curl_multi_remove_handle "(3) "