diff --git a/[refs] b/[refs] index 7a71eef5ab7f..8081da0ce9ea 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 00bd1cc24a7dd295ee095dc50791aab6ede46c7a +refs/heads/master: eee1d5a14780b9391ec51f3feaf4cffb521ddbb1 diff --git a/trunk/include/net/sctp/checksum.h b/trunk/include/net/sctp/checksum.h index befc8d2a1b9f..5a2110d3176d 100644 --- a/trunk/include/net/sctp/checksum.h +++ b/trunk/include/net/sctp/checksum.h @@ -77,7 +77,7 @@ static inline __u32 sctp_update_cksum(__u8 *buffer, __u16 length, __u32 crc32) return sctp_crc32c(crc32, buffer, length); } -static inline __le32 sctp_end_cksum(__be32 crc32) +static inline __le32 sctp_end_cksum(__u32 crc32) { return cpu_to_le32(~crc32); } diff --git a/trunk/net/netfilter/nf_nat_proto_sctp.c b/trunk/net/netfilter/nf_nat_proto_sctp.c index e64faa5ca893..396e55d46f90 100644 --- a/trunk/net/netfilter/nf_nat_proto_sctp.c +++ b/trunk/net/netfilter/nf_nat_proto_sctp.c @@ -36,7 +36,7 @@ sctp_manip_pkt(struct sk_buff *skb, { struct sk_buff *frag; sctp_sctphdr_t *hdr; - __be32 crc32; + __u32 crc32; if (!skb_make_writable(skb, hdroff + sizeof(*hdr))) return false; @@ -55,8 +55,7 @@ sctp_manip_pkt(struct sk_buff *skb, skb_walk_frags(skb, frag) crc32 = sctp_update_cksum((u8 *)frag->data, skb_headlen(frag), crc32); - crc32 = sctp_end_cksum(crc32); - hdr->checksum = crc32; + hdr->checksum = sctp_end_cksum(crc32); return true; }