|
@@ -502,11 +502,11 @@ void tcp_v4_send_check(struct sock *sk, int len, struct sk_buff *skb)
|
|
|
struct tcphdr *th = skb->h.th;
|
|
|
|
|
|
if (skb->ip_summed == CHECKSUM_PARTIAL) {
|
|
|
- th->check = ~tcp_v4_check(th, len,
|
|
|
- inet->saddr, inet->daddr, 0);
|
|
|
+ th->check = ~tcp_v4_check(len, inet->saddr,
|
|
|
+ inet->daddr, 0);
|
|
|
skb->csum_offset = offsetof(struct tcphdr, check);
|
|
|
} else {
|
|
|
- th->check = tcp_v4_check(th, len, inet->saddr, inet->daddr,
|
|
|
+ th->check = tcp_v4_check(len, inet->saddr, inet->daddr,
|
|
|
csum_partial((char *)th,
|
|
|
th->doff << 2,
|
|
|
skb->csum));
|
|
@@ -525,7 +525,7 @@ int tcp_v4_gso_send_check(struct sk_buff *skb)
|
|
|
th = skb->h.th;
|
|
|
|
|
|
th->check = 0;
|
|
|
- th->check = ~tcp_v4_check(th, skb->len, iph->saddr, iph->daddr, 0);
|
|
|
+ th->check = ~tcp_v4_check(skb->len, iph->saddr, iph->daddr, 0);
|
|
|
skb->csum_offset = offsetof(struct tcphdr, check);
|
|
|
skb->ip_summed = CHECKSUM_PARTIAL;
|
|
|
return 0;
|
|
@@ -747,7 +747,7 @@ static int tcp_v4_send_synack(struct sock *sk, struct request_sock *req,
|
|
|
if (skb) {
|
|
|
struct tcphdr *th = skb->h.th;
|
|
|
|
|
|
- th->check = tcp_v4_check(th, skb->len,
|
|
|
+ th->check = tcp_v4_check(skb->len,
|
|
|
ireq->loc_addr,
|
|
|
ireq->rmt_addr,
|
|
|
csum_partial((char *)th, skb->len,
|
|
@@ -1514,7 +1514,7 @@ static struct sock *tcp_v4_hnd_req(struct sock *sk, struct sk_buff *skb)
|
|
|
static __sum16 tcp_v4_checksum_init(struct sk_buff *skb)
|
|
|
{
|
|
|
if (skb->ip_summed == CHECKSUM_COMPLETE) {
|
|
|
- if (!tcp_v4_check(skb->h.th, skb->len, skb->nh.iph->saddr,
|
|
|
+ if (!tcp_v4_check(skb->len, skb->nh.iph->saddr,
|
|
|
skb->nh.iph->daddr, skb->csum)) {
|
|
|
skb->ip_summed = CHECKSUM_UNNECESSARY;
|
|
|
return 0;
|