diff options
author | Daniel Stenberg <daniel@haxx.se> | 2006-04-07 11:47:21 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2006-04-07 11:47:21 +0000 |
commit | 4d33cf739da2649d3a8c363572cdb386b0f743b9 (patch) | |
tree | bd35fc721470dd988f942192b40d2bb2f2580bd1 | |
parent | 34e7daf989a32acfb686bfc627c7e42eb6769242 (diff) |
added typedefed function pointers and typecast the NULL assignments in an
attempt to silence picky compilers when assigning data pointers to a function
pointer variable
-rw-r--r-- | lib/url.c | 8 | ||||
-rw-r--r-- | lib/urldata.h | 10 |
2 files changed, 12 insertions, 6 deletions
@@ -2970,7 +2970,7 @@ static CURLcode CreateConnection(struct SessionHandle *data, conn->remote_port = PORT_HTTP; conn->protocol |= PROT_HTTP; conn->curl_do = Curl_http; - conn->curl_do_more = NULL; + conn->curl_do_more = (Curl_do_more_func)NULL; conn->curl_done = Curl_http_done; conn->curl_connect = Curl_http_connect; #else @@ -2987,7 +2987,7 @@ static CURLcode CreateConnection(struct SessionHandle *data, conn->protocol |= PROT_HTTP|PROT_HTTPS|PROT_SSL; conn->curl_do = Curl_http; - conn->curl_do_more = NULL; + conn->curl_do_more = (Curl_do_more_func)NULL; conn->curl_done = Curl_http_done; conn->curl_connect = Curl_http_connect; conn->curl_connecting = Curl_https_connecting; @@ -3100,7 +3100,7 @@ static CURLcode CreateConnection(struct SessionHandle *data, conn->port = PORT_DICT; conn->remote_port = PORT_DICT; conn->curl_do = Curl_dict; - conn->curl_done = NULL; /* no DICT-specific done */ + conn->curl_done = (Curl_done_func)NULL; /* no DICT-specific done */ #else failf(data, LIBCURL_NAME " was built with DICT disabled!"); @@ -3112,7 +3112,7 @@ static CURLcode CreateConnection(struct SessionHandle *data, conn->port = PORT_LDAP; conn->remote_port = PORT_LDAP; conn->curl_do = Curl_ldap; - conn->curl_done = NULL; /* no LDAP-specific done */ + conn->curl_done = (Curl_done_func)NULL; /* no LDAP-specific done */ #else failf(data, LIBCURL_NAME " was built with LDAP disabled!"); diff --git a/lib/urldata.h b/lib/urldata.h index 1d6bab2a0..6843925e0 100644 --- a/lib/urldata.h +++ b/lib/urldata.h @@ -541,6 +541,12 @@ struct Curl_async { #define FIRSTSOCKET 0 #define SECONDARYSOCKET 1 +/* These function pointer types are here only to allow easier typecasting + within the source when we need to cast between data pointers (such as NULL) + and function pointers. */ +typedef CURLcode (*Curl_do_more_func)(struct connectdata *); +typedef CURLcode (*Curl_done_func)(struct connectdata *, CURLcode); + /* * The connectdata struct contains all fields and variables that should be * unique for an entire connection. @@ -625,13 +631,13 @@ struct connectdata { /* These two functions MUST be set by the curl_connect() function to be be protocol dependent */ CURLcode (*curl_do)(struct connectdata *, bool *done); - CURLcode (*curl_done)(struct connectdata *, CURLcode); + Curl_done_func curl_done; /* If the curl_do() function is better made in two halves, this * curl_do_more() function will be called afterwards, if set. For example * for doing the FTP stuff after the PASV/PORT command. */ - CURLcode (*curl_do_more)(struct connectdata *); + Curl_do_more_func curl_do_more; /* This function *MAY* be set to a protocol-dependent function that is run * after the connect() and everything is done, as a step in the connection. |