summaryrefslogtreecommitdiff
path: root/ip6.h
diff options
context:
space:
mode:
authorHannes Gredler <hannes@juniper.net>2009-10-12 10:16:58 +0200
committerHannes Gredler <hannes@juniper.net>2009-10-12 10:16:58 +0200
commita0275861d3eaf533218fe0e3fccd5ef3d6a7e2ae (patch)
tree20e18c11062a0717eb014d4feba0d11d49fa4a86 /ip6.h
parent359c312cc6d83209175b8b38e33d2146a26c6e1e (diff)
downloadtcpdump-a0275861d3eaf533218fe0e3fccd5ef3d6a7e2ae.tar.gz
modularize ip6 nextlayer checksum generation and
change tcp6 and pim6 to use it.
Diffstat (limited to 'ip6.h')
-rw-r--r--ip6.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/ip6.h b/ip6.h
index e4f9fe1c..a6df97aa 100644
--- a/ip6.h
+++ b/ip6.h
@@ -88,6 +88,20 @@ struct ip6_hdr {
struct in6_addr ip6_dst; /* destination address */
};
+/*
+ * Pseudo header, used for higher layer checksumming.
+ */
+union ip6_pseudo_hdr {
+ struct {
+ struct in6_addr ph_src;
+ struct in6_addr ph_dst;
+ u_int32_t ph_len;
+ u_int8_t ph_zero[3];
+ u_int8_t ph_nxt;
+ } ph;
+ u_int16_t pa[20];
+};
+
#define ip6_vfc ip6_ctlun.ip6_un2_vfc
#define ip6_flow ip6_ctlun.ip6_un1.ip6_un1_flow
#define ip6_plen ip6_ctlun.ip6_un1.ip6_un1_plen