Big header file cleanup: everything that has to do with standard system
[tinc] / lib / ipv6.h
index 8851d6d..92a0ae0 100644 (file)
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: ipv6.h,v 1.1.2.2 2003/07/07 11:50:52 guus Exp $
+    $Id: ipv6.h,v 1.1.2.4 2003/07/17 15:06:25 guus Exp $
 */
 
 #ifndef __TINC_IPV6_H__
 #define __TINC_IPV6_H__
 
-#include "config.h"
-
-#include <netinet/in.h>
-#ifdef HAVE_INTTYPES_H
-#include <inttypes.h>
-#endif
-
 #ifndef AF_INET6
 #define AF_INET6 10
 #endif
@@ -60,6 +53,13 @@ struct sockaddr_in6 {
 };
 #endif
 
+#ifndef IN6_IS_ADDR_V4MAPPED
+#define IN6_IS_ADDR_V4MAPPED(a) \
+        ((((__const uint32_t *) (a))[0] == 0) \
+        && (((__const uint32_t *) (a))[1] == 0) \
+        && (((__const uint32_t *) (a))[2] == htonl (0xffff)))
+#endif
+
 #ifndef HAVE_NETINET_IP6_H
 struct ip6_hdr {
        union {