Index: include/libxml/hash.h --- include/libxml/hash.h.orig 2003-09-09 22:18:00.000000000 +0200 +++ include/libxml/hash.h 2003-11-28 20:19:02.000000000 +0100 @@ -18,9 +18,6 @@ #ifndef __XML_HASH_H__ #define __XML_HASH_H__ -#include -#include - #ifdef __cplusplus extern "C" { #endif @@ -31,6 +28,17 @@ typedef struct _xmlHashTable xmlHashTable; typedef xmlHashTable *xmlHashTablePtr; +#ifdef __cplusplus +} +#endif + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + /* * function types: */ Index: nanoftp.c --- nanoftp.c.orig 2003-10-29 14:27:37.000000000 +0100 +++ nanoftp.c 2003-11-28 20:18:23.000000000 +0100 @@ -1553,7 +1553,7 @@ memset (&dataAddr, 0, sizeof(dataAddr)); #ifdef SUPPORT_IP6 - if ((ctxt->ftpAddr).ss_family == AF_INET6) { + if (((struct sockaddr *)&ctxt->ftpAddr)->sa_family == AF_INET6) { ctxt->dataFd = socket (AF_INET6, SOCK_STREAM, IPPROTO_TCP); ((struct sockaddr_in6 *)&dataAddr)->sin6_family = AF_INET6; dataAddrLen = sizeof(struct sockaddr_in6); @@ -1572,7 +1572,7 @@ if (ctxt->passive) { #ifdef SUPPORT_IP6 - if ((ctxt->ftpAddr).ss_family == AF_INET6) + if (((struct sockaddr *)&ctxt->ftpAddr)->sa_family == AF_INET6) snprintf (buf, sizeof(buf), "EPSV\r\n"); else #endif @@ -1603,7 +1603,7 @@ cur = &ctxt->controlBuf[ctxt->controlBufAnswer]; while (((*cur < '0') || (*cur > '9')) && *cur != '\0') cur++; #ifdef SUPPORT_IP6 - if ((ctxt->ftpAddr).ss_family == AF_INET6) { + if (((struct sockaddr *)&ctxt->ftpAddr)->sa_family == AF_INET6) { if (sscanf (cur, "%u", &temp[0]) != 1) { __xmlIOErr(XML_FROM_FTP, XML_FTP_EPSV_ANSWER, "Invalid answer to EPSV\n"); @@ -1640,7 +1640,7 @@ } else { getsockname(ctxt->dataFd, (struct sockaddr *) &dataAddr, &dataAddrLen); #ifdef SUPPORT_IP6 - if ((ctxt->ftpAddr).ss_family == AF_INET6) + if (((struct sockaddr *)&ctxt->ftpAddr)->sa_family == AF_INET6) ((struct sockaddr_in6 *)&dataAddr)->sin6_port = 0; else #endif @@ -1659,7 +1659,7 @@ return (-1); } #ifdef SUPPORT_IP6 - if ((ctxt->ftpAddr).ss_family == AF_INET6) { + if (((struct sockaddr *)&ctxt->ftpAddr)->sa_family == AF_INET6) { char buf6[INET6_ADDRSTRLEN]; inet_ntop (AF_INET6, &((struct sockaddr_in6 *)&dataAddr)->sin6_addr, buf6, INET6_ADDRSTRLEN);