]> The Tcpdump Group git mirrors - tcpdump/blobdiff - ip.h
CI: Add warning exemptions for Sun C (suncc-5.14) on Solaris 10
[tcpdump] / ip.h
diff --git a/ip.h b/ip.h
index 64ec5dc6f50c391c6591c4ec4d9309d1cd013901..c1be0e66f177ae20efe02a6eb018becf585cf30b 100644 (file)
--- a/ip.h
+++ b/ip.h
@@ -33,8 +33,8 @@
  *     @(#)ip.h        8.2 (Berkeley) 6/1/94
  */
 
-#ifndef TCPDUMP_IP_H
-#define TCPDUMP_IP_H
+#ifndef netdissect_ip_h
+#define netdissect_ip_h
 
 /*
  * Definitions for internet protocol version 4.
  * against negative integers quite easily, and fail in subtle ways.
  */
 struct ip {
-       u_int8_t        ip_vhl;         /* header length, version */
-#define IP_V(ip)       (((ip)->ip_vhl & 0xf0) >> 4)
-#define IP_HL(ip)      ((ip)->ip_vhl & 0x0f)
-       u_int8_t        ip_tos;         /* type of service */
-       u_int16_t       ip_len;         /* total length */
-       u_int16_t       ip_id;          /* identification */
-       u_int16_t       ip_off;         /* fragment offset field */
-#define        IP_DF 0x4000                    /* dont fragment flag */
+       nd_uint8_t      ip_vhl;         /* header length, version */
+#define IP_V(ip)       ((GET_U_1((ip)->ip_vhl) & 0xf0) >> 4)
+#define IP_HL(ip)      (GET_U_1((ip)->ip_vhl) & 0x0f)
+       nd_uint8_t      ip_tos;         /* type of service */
+       nd_uint16_t     ip_len;         /* total length */
+       nd_uint16_t     ip_id;          /* identification */
+       nd_uint16_t     ip_off;         /* fragment offset field */
+#define        IP_DF 0x4000                    /* don't fragment flag */
 #define        IP_MF 0x2000                    /* more fragments flag */
 #define        IP_OFFMASK 0x1fff               /* mask for fragmenting bits */
-       u_int8_t        ip_ttl;         /* time to live */
-       u_int8_t        ip_p;           /* protocol */
-       u_int16_t       ip_sum;         /* checksum */
-       struct  in_addr ip_src,ip_dst;  /* source and dest address */
-} UNALIGNED;
+       nd_uint8_t      ip_ttl;         /* time to live */
+       nd_uint8_t      ip_p;           /* protocol */
+       nd_uint16_t     ip_sum;         /* checksum */
+       nd_ipv4         ip_src,ip_dst;  /* source and dest address */
+};
 
 #define        IP_MAXPACKET    65535           /* maximum packet size */
 
@@ -107,7 +107,6 @@ struct ip {
 #define        IPOPT_RFC1393           82              /* traceroute RFC 1393 */
 #define        IPOPT_SECURITY          130             /* provide s,c,h,tcc */
 #define        IPOPT_LSRR              131             /* loose source route */
-#define        IPOPT_SATID             136             /* satnet id */
 #define        IPOPT_SSRR              137             /* strict source route */
 #define IPOPT_RA                148             /* router-alert, rfc2113 */
 
@@ -123,20 +122,20 @@ struct ip {
  * Time stamp option structure.
  */
 struct ip_timestamp {
-       u_int8_t        ipt_code;       /* IPOPT_TS */
-       u_int8_t        ipt_len;        /* size of structure (variable) */
-       u_int8_t        ipt_ptr;        /* index of current entry */
-       u_int8_t        ipt_oflwflg;    /* flags, overflow counter */
+       nd_uint8_t      ipt_code;       /* IPOPT_TS */
+       nd_uint8_t      ipt_len;        /* size of structure (variable) */
+       nd_uint8_t      ipt_ptr;        /* index of current entry */
+       nd_uint8_t      ipt_oflwflg;    /* flags, overflow counter */
 #define IPTS_OFLW(ip)  (((ipt)->ipt_oflwflg & 0xf0) >> 4)
 #define IPTS_FLG(ip)   ((ipt)->ipt_oflwflg & 0x0f)
        union ipt_timestamp {
-               u_int32_t ipt_time[1];
+               nd_uint32_t ipt_time[1];
                struct  ipt_ta {
-                       struct in_addr ipt_addr;
-                       u_int32_t ipt_time;
+                       nd_ipv4 ipt_addr;
+                       nd_uint32_t ipt_time;
                } ipt_ta[1];
        } ipt_timestamp;
-} UNALIGNED;
+};
 
 /* flag bits for ipt_flg */
 #define        IPOPT_TS_TSONLY         0               /* timestamps only */
@@ -161,4 +160,4 @@ struct      ip_timestamp {
 #define        IPTTLDEC        1               /* subtracted when forwarding */
 
 #define        IP_MSS          576             /* default maximum segment size */
-#endif /* TCPDUMP_IP_H */
+#endif /* netdissect_ip_h */