diff options
author | Sridhar Samudrala <sri@us.ibm.com> | 2006-06-17 22:57:28 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-06-17 22:57:28 -0700 |
commit | 503b55fd77d11381b1950d1651d3bc782c0cc2cd (patch) | |
tree | a960542bcc10b97218a601a94e56e579595c0a2c /net/sctp/input.c | |
parent | 4c9f5d5305a23851e67471b147e0d459a7166717 (diff) | |
download | linux-3.10-503b55fd77d11381b1950d1651d3bc782c0cc2cd.tar.gz linux-3.10-503b55fd77d11381b1950d1651d3bc782c0cc2cd.tar.bz2 linux-3.10-503b55fd77d11381b1950d1651d3bc782c0cc2cd.zip |
[SCTP]: Don't do CRC32C checksum over loopback.
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp/input.c')
-rw-r--r-- | net/sctp/input.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sctp/input.c b/net/sctp/input.c index 70d6606e281..42b66e74bbb 100644 --- a/net/sctp/input.c +++ b/net/sctp/input.c @@ -141,7 +141,8 @@ int sctp_rcv(struct sk_buff *skb) __skb_pull(skb, skb->h.raw - skb->data); if (skb->len < sizeof(struct sctphdr)) goto discard_it; - if (sctp_rcv_checksum(skb) < 0) + if ((skb->ip_summed != CHECKSUM_UNNECESSARY) && + (sctp_rcv_checksum(skb) < 0)) goto discard_it; skb_pull(skb, sizeof(struct sctphdr)); |