[ipoib cm] necessary changes for ipoib cm
authoraestrin <aestrin@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Thu, 29 Jan 2009 23:27:25 +0000 (23:27 +0000)
committeraestrin <aestrin@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Thu, 29 Jan 2009 23:27:25 +0000 (23:27 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@1920 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

inc/kernel/ip_packet.h

index d8f08c8..a712938 100644 (file)
@@ -197,6 +197,7 @@ typedef struct _arp_pkt
 #define IP_PROT_TCP                    6\r
 #define IP_PROT_UDP                    17\r
 #define IP_PROT_IGMP           2\r
+#define IP_PROT_ICMP           1\r
 \r
 \r
 #include <complib/cl_packon.h>\r
@@ -362,8 +363,22 @@ typedef struct _udp_hdr
 #define TCP_HEADER_LENGTH(pTcpHdr) \\r
                ((pTcpHdr->offset & 0xF0) >> 2)\r
 \r
-#define PROTOCOL_TCP         6\r
+#define IP_FRAGMENT_OFFSET(p_ip_hdr) \\r
+               ( cl_ntoh16( p_ip_hdr->offset & CL_HTON16(0x1fff) ) )\r
 \r
+#define IP_DONT_FRAGMENT(p_ip_hdr) \\r
+               ( (BOOLEAN)( p_ip_hdr->offset & CL_HTON16(0x4000 ) ) )\r
+               \r
+#define IP_MORE_FRAGMENTS( p_ip_hdr ) \\r
+               ( (BOOLEAN)( p_ip_hdr->offset & CL_HTON16(0x2000) ) )\r
+\r
+#define IP_SET_MORE_FRAGMENTS( p_ip_hdr ) \\r
+               ( p_ip_hdr->offset |= CL_HTON16(0x2000) )\r
+\r
+#define IP_SET_LAST_FRAGMENT( p_ip_hdr ) \\r
+               ( p_ip_hdr->offset &= (CL_HTON16(~0x2000) ) )\r
+\r
+#define PROTOCOL_TCP         IP_PROT_TCP\r
 \r
 #define IGMP_V2_MEMBERSHIP_QUERY       0x11\r
 #define IGMP_V2_MEMBERSHIP_REPORT      0x16\r