XSLoader revisted
[p5sagit/p5-mst-13.2.git] / ext / Socket / Socket.xs
index d4d9393..139e9cb 100644 (file)
@@ -9,7 +9,7 @@
 # ifdef I_SYS_TYPES
 #  include <sys/types.h>
 # endif
-# if !defined(ultrix)
+# if !defined(ultrix) /* Avoid double definition. */
 #   include <sys/socket.h>
 # endif
 # if defined(USE_SOCKS) && defined(I_SOCKS)
@@ -34,7 +34,9 @@
 #  include <netinet/in.h>
 # endif
 # ifdef I_NETDB
-#  include <netdb.h>
+#  if !defined(ultrix)  /* Avoid double definition. */
+#   include <netdb.h>
+#  endif
 # endif
 # ifdef I_ARPA_INET
 #  include <arpa/inet.h>
@@ -369,10 +371,10 @@ unpack_sockaddr_un(sun_sv)
                        addr.sun_family,
                        AF_UNIX);
        }
-       e = addr.sun_path;
-       while (*e && e < addr.sun_path + sizeof addr.sun_path)
+       e = (char*)addr.sun_path;
+       while (*e && e < (char*)addr.sun_path + sizeof addr.sun_path)
            ++e;
-       ST(0) = sv_2mortal(newSVpvn(addr.sun_path, e - addr.sun_path));
+       ST(0) = sv_2mortal(newSVpvn(addr.sun_path, e - (char*)addr.sun_path));
 #else
        ST(0) = (SV *) not_here("unpack_sockaddr_un");
 #endif