mirror of
https://github.com/curl/curl.git
synced 2026-07-23 14:57:19 +03:00
examples/externalsocket: add missing close socket calls
.. and for Windows also call WSACleanup since we call WSAStartup. The example is to demonstrate handling the socket independently of libcurl. In this case libcurl is not responsible for creating, opening or closing the socket, it is handled by the application (our example). Fixes https://github.com/curl/curl/pull/3663
This commit is contained in:
parent
0bb56392d4
commit
57c7076793
1 changed files with 9 additions and 1 deletions
|
|
@ -124,8 +124,10 @@ int main(void)
|
|||
servaddr.sin_port = htons(PORTNUM);
|
||||
|
||||
servaddr.sin_addr.s_addr = inet_addr(IPADDR);
|
||||
if(INADDR_NONE == servaddr.sin_addr.s_addr)
|
||||
if(INADDR_NONE == servaddr.sin_addr.s_addr) {
|
||||
close(sockfd);
|
||||
return 2;
|
||||
}
|
||||
|
||||
if(connect(sockfd, (struct sockaddr *) &servaddr, sizeof(servaddr)) ==
|
||||
-1) {
|
||||
|
|
@ -157,10 +159,16 @@ int main(void)
|
|||
|
||||
curl_easy_cleanup(curl);
|
||||
|
||||
close(sockfd);
|
||||
|
||||
if(res) {
|
||||
printf("libcurl error: %d\n", res);
|
||||
return 4;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef WIN32
|
||||
WSACleanup();
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue