diff options
author | Christian Grothoff <christian@grothoff.org> | 2011-02-03 16:28:52 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2011-02-03 16:28:52 +0000 |
commit | 0ce65c790cb56b140da5966547535758aae182bf (patch) | |
tree | 3296c767121c6fa04e38c76daa4920969a6a2eaf /src/transport/plugin_transport_http.c | |
parent | 7a441138e549ac5bbc1974a23653bb77c51a8bb1 (diff) | |
download | gnunet-0ce65c790cb56b140da5966547535758aae182bf.tar.gz gnunet-0ce65c790cb56b140da5966547535758aae182bf.zip |
fix compiler error for newer MHD API
Diffstat (limited to 'src/transport/plugin_transport_http.c')
-rw-r--r-- | src/transport/plugin_transport_http.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/transport/plugin_transport_http.c b/src/transport/plugin_transport_http.c index f879012c9..a90cc9f0d 100644 --- a/src/transport/plugin_transport_http.c +++ b/src/transport/plugin_transport_http.c | |||
@@ -996,9 +996,9 @@ mhd_access_cb (void *cls, | |||
996 | struct Plugin *plugin = cls; | 996 | struct Plugin *plugin = cls; |
997 | struct MHD_Response *response; | 997 | struct MHD_Response *response; |
998 | const union MHD_ConnectionInfo * conn_info; | 998 | const union MHD_ConnectionInfo * conn_info; |
999 | 999 | const struct sockaddr *client_addr; | |
1000 | struct sockaddr_in *addrin; | 1000 | const struct sockaddr_in *addrin; |
1001 | struct sockaddr_in6 *addrin6; | 1001 | const struct sockaddr_in6 *addrin6; |
1002 | 1002 | ||
1003 | char address[INET6_ADDRSTRLEN+14]; | 1003 | char address[INET6_ADDRSTRLEN+14]; |
1004 | struct GNUNET_PeerIdentity pi_in; | 1004 | struct GNUNET_PeerIdentity pi_in; |
@@ -1077,9 +1077,11 @@ mhd_access_cb (void *cls, | |||
1077 | 1077 | ||
1078 | conn_info = MHD_get_connection_info(mhd_connection, MHD_CONNECTION_INFO_CLIENT_ADDRESS ); | 1078 | conn_info = MHD_get_connection_info(mhd_connection, MHD_CONNECTION_INFO_CLIENT_ADDRESS ); |
1079 | /* Incoming IPv4 connection */ | 1079 | /* Incoming IPv4 connection */ |
1080 | if ( AF_INET == conn_info->client_addr->sin_family) | 1080 | /* cast required for legacy MHD API < 0.9.6 */ |
1081 | client_addr = (const struct sockaddr *) conn_info->client_addr; | ||
1082 | if ( AF_INET == client_addr->sa_family) | ||
1081 | { | 1083 | { |
1082 | addrin = conn_info->client_addr; | 1084 | addrin = (const struct sockaddr_in*) client_addr; |
1083 | inet_ntop(addrin->sin_family, &(addrin->sin_addr),address,INET_ADDRSTRLEN); | 1085 | inet_ntop(addrin->sin_family, &(addrin->sin_addr),address,INET_ADDRSTRLEN); |
1084 | memcpy(&ipv4addr.ipv4_addr,&(addrin->sin_addr),sizeof(struct in_addr)); | 1086 | memcpy(&ipv4addr.ipv4_addr,&(addrin->sin_addr),sizeof(struct in_addr)); |
1085 | ipv4addr.u_port = addrin->sin_port; | 1087 | ipv4addr.u_port = addrin->sin_port; |
@@ -1087,9 +1089,9 @@ mhd_access_cb (void *cls, | |||
1087 | addr_len = sizeof(struct IPv4HttpAddress); | 1089 | addr_len = sizeof(struct IPv4HttpAddress); |
1088 | } | 1090 | } |
1089 | /* Incoming IPv6 connection */ | 1091 | /* Incoming IPv6 connection */ |
1090 | if ( AF_INET6 == conn_info->client_addr->sin_family) | 1092 | if ( AF_INET6 == client_addr->sa_family) |
1091 | { | 1093 | { |
1092 | addrin6 = (struct sockaddr_in6 *) conn_info->client_addr; | 1094 | addrin6 = (const struct sockaddr_in6 *) client_addr; |
1093 | inet_ntop(addrin6->sin6_family, &(addrin6->sin6_addr),address,INET6_ADDRSTRLEN); | 1095 | inet_ntop(addrin6->sin6_family, &(addrin6->sin6_addr),address,INET6_ADDRSTRLEN); |
1094 | memcpy(&ipv6addr.ipv6_addr,&(addrin6->sin6_addr),sizeof(struct in6_addr)); | 1096 | memcpy(&ipv6addr.ipv6_addr,&(addrin6->sin6_addr),sizeof(struct in6_addr)); |
1095 | ipv6addr.u6_port = addrin6->sin6_port; | 1097 | ipv6addr.u6_port = addrin6->sin6_port; |