aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2008-01-02 22:23:27 +0000
committerDaniel Stenberg <daniel@haxx.se>2008-01-02 22:23:27 +0000
commit193d33fd4a4267c327e95cddc7d92103f187e2a3 (patch)
tree7c09c1f6bbe0da8c1708413482fae392f50b0f4b /include
parenta46b40b7fdf567250451b984b977f5e03c716d5e (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.h21
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;
};