]> git.baikalelectronics.ru Git - kernel.git/commit
sctp: get sctphdr by offset in sctp_compute_cksum
authorXin Long <lucien.xin@gmail.com>
Mon, 18 Mar 2019 11:47:00 +0000 (19:47 +0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 19 Mar 2019 01:16:12 +0000 (18:16 -0700)
commit7cf6df88e42ebd39140860c92c18325ce5c40dc7
tree8429227bffe3b709ddce84b0e841a8ccb851f6b9
parent4f24ef6a162d93ba82f7de62cfe488ee6cffd044
sctp: get sctphdr by offset in sctp_compute_cksum

sctp_hdr(skb) only works when skb->transport_header is set properly.

But in Netfilter, skb->transport_header for ipv6 is not guaranteed
to be right value for sctphdr. It would cause to fail to check the
checksum for sctp packets.

So fix it by using offset, which is always right in all places.

v1->v2:
  - Fix the changelog.

Fixes: 17a2953f0995 ("net: sctp: fix and consolidate SCTP checksumming code")
Reported-by: Li Shuang <shuali@redhat.com>
Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sctp/checksum.h