| 123 | } |
| 124 | |
| 125 | int acl_socket_end(void) |
| 126 | { |
| 127 | const char *myname = "acl_socket_end"; |
| 128 | |
| 129 | if (__socket_ended) { |
| 130 | acl_msg_warn("%s(%d): has been ended", myname, __LINE__); |
| 131 | return 0; |
| 132 | } |
| 133 | __socket_ended = 1; |
| 134 | |
| 135 | if (WSACleanup() == SOCKET_ERROR) { |
| 136 | acl_msg_error("%s(%d): WSACleanup error(%s)", |
| 137 | myname, __LINE__, acl_last_serror()); |
| 138 | return -1; |
| 139 | } |
| 140 | |
| 141 | __socket_inited = 0; |
| 142 | return 0; |
| 143 | } |
| 144 | |
| 145 | int acl_socket_close(ACL_SOCKET fd) |
| 146 | { |
no test coverage detected
searching dependent graphs…