From: Gunter Knauf Date: Mon, 19 Oct 2009 18:10:47 +0000 (+0000) Subject: added cast macros to silent compiler warnings with 64-bit systems. X-Git-Tag: curl-7_19_7~66 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3da1ade4e505837fefb0cb8003ce7c63c34d1f87;p=curl added cast macros to silent compiler warnings with 64-bit systems. --- diff --git a/lib/gtls.c b/lib/gtls.c index bfa4347bf..797d18b16 100644 --- a/lib/gtls.c +++ b/lib/gtls.c @@ -58,6 +58,17 @@ /* The last #include file should be: */ #include "memdebug.h" +/* + Some hackish cast macros based on: + http://library.gnome.org/devel/glib/unstable/glib-Type-Conversion-Macros.html +*/ +#ifndef GNUTLS_POINTER_TO_INT_CAST +#define GNUTLS_POINTER_TO_INT_CAST(p) ((int) (long) (p)) +#endif +#ifndef GNUTLS_INT_TO_POINTER_CAST +#define GNUTLS_INT_TO_POINTER_CAST(i) ((void*) (long) (i)) +#endif + /* Enable GnuTLS debugging by defining GTLSDEBUG */ /*#define GTLSDEBUG */ @@ -78,12 +89,12 @@ static bool gtls_inited = FALSE; */ static ssize_t Curl_gtls_push(void *s, const void *buf, size_t len) { - return swrite(s, buf, len); + return swrite(GNUTLS_POINTER_TO_INT_CAST(s), buf, len); } static ssize_t Curl_gtls_pull(void *s, void *buf, size_t len) { - return sread(s, buf, len); + return sread(GNUTLS_POINTER_TO_INT_CAST(s), buf, len); } /* Curl_gtls_init() @@ -381,7 +392,7 @@ Curl_gtls_connect(struct connectdata *conn, /* set the connection handle (file descriptor for the socket) */ gnutls_transport_set_ptr(session, - (gnutls_transport_ptr)conn->sock[sockindex]); + GNUTLS_INT_TO_POINTER_CAST(conn->sock[sockindex])); /* register callback functions to send and receive data. */ gnutls_transport_set_push_function(session, Curl_gtls_push);