diff options
author | Daniel Stenberg <daniel@haxx.se> | 2008-01-02 22:23:27 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2008-01-02 22:23:27 +0000 |
commit | 193d33fd4a4267c327e95cddc7d92103f187e2a3 (patch) | |
tree | 7c09c1f6bbe0da8c1708413482fae392f50b0f4b /include | |
parent | a46b40b7fdf567250451b984b977f5e03c716d5e (diff) |
I removed the socklen_t use from the public curl/curl.h header and instead
made it an unsigned int. The type was only used in the curl_sockaddr struct
definition (only used by the curl_opensocket_callback). On all platforms I
could find information about, socklen_t is 32 unsigned bits large so I don't
think this will break the API or ABI. The main reason for this change is of
course for all the platforms that don't have a socklen_t definition in their
headers to build fine again. Providing our own configure magic and custom
definition of socklen_t on those systems proved to work but was a lot of
cruft, code and extra magic needed - when this very small change of type seems
harmless and still solves the missing socklen_t problem.
Diffstat (limited to 'include')
-rw-r--r-- | include/curl/curl.h | 21 |
1 files changed, 3 insertions, 18 deletions
diff --git a/include/curl/curl.h b/include/curl/curl.h index a4140af76..396a0e0f2 100644 --- a/include/curl/curl.h +++ b/include/curl/curl.h @@ -86,23 +86,6 @@ extern "C" { typedef void CURL; /* - * Windows build targets have socklen_t definition in - * ws2tcpip.h but some versions of ws2tcpip.h do not - * have the definition. It seems that when the socklen_t - * definition is missing from ws2tcpip.h the definition - * for INET_ADDRSTRLEN is also missing, and that when one - * definition is present the other one also is available. - */ - -#if defined(WIN32) && !defined(HAVE_SOCKLEN_T) -# if ( defined(_MSC_VER) && !defined(INET_ADDRSTRLEN) ) || \ - (!defined(_MSC_VER) && !defined(_WS2TCPIP_H_) && !defined(_WS2TCPIP_H) ) -# define socklen_t int -# define HAVE_SOCKLEN_T -# endif -#endif - -/* * Decorate exportable functions for Win32 DLL linking. * This avoids using a .def file for building libcurl.dll. */ @@ -274,7 +257,9 @@ struct curl_sockaddr { int family; int socktype; int protocol; - socklen_t addrlen; + unsigned int addrlen; /* addrlen was a socklen_t type before 7.17.2 but it + turned really ugly and painful on the systems that + lack this type */ struct sockaddr addr; }; |