diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-01 14:35:16 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-01 14:35:16 -0400 |
| commit | 9a5467fd600669cda488771dac3e951034fe2b08 (patch) | |
| tree | 20c3c73ff3571e525193aca20d3602161b4e90be /net/ipv6 | |
| parent | 676056132425ac425d7215cdaa8bd25582e07966 (diff) | |
| parent | 00b1304c4ca81dd893973cc620b87a5c3ff3f660 (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (46 commits)
tcp: MD5: Fix IPv6 signatures
skbuff: add missing kernel-doc for do_not_encrypt
net/ipv4/route.c: fix build error
tcp: MD5: Fix MD5 signatures on certain ACK packets
ipv6: Fix ip6_xmit to send fragments if ipfragok is true
ipvs: Move userspace definitions to include/linux/ip_vs.h
netdev: Fix lockdep warnings in multiqueue configurations.
netfilter: xt_hashlimit: fix race between htable_destroy and htable_gc
netfilter: ipt_recent: fix race between recent_mt_destroy and proc manipulations
netfilter: nf_conntrack_tcp: decrease timeouts while data in unacknowledged
irda: replace __FUNCTION__ with __func__
nsc-ircc: default to dongle type 9 on IBM hardware
bluetooth: add quirks for a few hci_usb devices
hysdn: remove the packed attribute from PofTimStamp_tag
isdn: use the common ascii hex helpers
tg3: adapt tg3 to use reworked PCI PM code
atm: fix direct casts of pointers to u32 in the InterPhase driver
atm: fix const assignment/discard warnings in the ATM networking driver
net: use the common ascii hex helpers
random32: seeding improvement
...
Diffstat (limited to 'net/ipv6')
| -rw-r--r-- | net/ipv6/ip6_output.c | 4 | ||||
| -rw-r--r-- | net/ipv6/tcp_ipv6.c | 6 |
2 files changed, 7 insertions, 3 deletions
diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c index 6811901e6b1..a027003d69a 100644 --- a/net/ipv6/ip6_output.c +++ b/net/ipv6/ip6_output.c | |||
| @@ -236,6 +236,10 @@ int ip6_xmit(struct sock *sk, struct sk_buff *skb, struct flowi *fl, | |||
| 236 | skb_reset_network_header(skb); | 236 | skb_reset_network_header(skb); |
| 237 | hdr = ipv6_hdr(skb); | 237 | hdr = ipv6_hdr(skb); |
| 238 | 238 | ||
| 239 | /* Allow local fragmentation. */ | ||
| 240 | if (ipfragok) | ||
| 241 | skb->local_df = 1; | ||
| 242 | |||
| 239 | /* | 243 | /* |
| 240 | * Fill in the IPv6 header | 244 | * Fill in the IPv6 header |
| 241 | */ | 245 | */ |
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index 1db45216b23..78185a40921 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c | |||
| @@ -748,7 +748,7 @@ static int tcp_v6_md5_hash_pseudoheader(struct tcp_md5sig_pool *hp, | |||
| 748 | ipv6_addr_copy(&bp->saddr, saddr); | 748 | ipv6_addr_copy(&bp->saddr, saddr); |
| 749 | ipv6_addr_copy(&bp->daddr, daddr); | 749 | ipv6_addr_copy(&bp->daddr, daddr); |
| 750 | bp->protocol = cpu_to_be32(IPPROTO_TCP); | 750 | bp->protocol = cpu_to_be32(IPPROTO_TCP); |
| 751 | bp->len = cpu_to_be16(nbytes); | 751 | bp->len = cpu_to_be32(nbytes); |
| 752 | 752 | ||
| 753 | sg_init_one(&sg, bp, sizeof(*bp)); | 753 | sg_init_one(&sg, bp, sizeof(*bp)); |
| 754 | return crypto_hash_update(&hp->md5_desc, &sg, sizeof(*bp)); | 754 | return crypto_hash_update(&hp->md5_desc, &sg, sizeof(*bp)); |
| @@ -1094,8 +1094,8 @@ static void tcp_v6_send_ack(struct sk_buff *skb, u32 seq, u32 ack, u32 win, u32 | |||
| 1094 | *topt++ = htonl((TCPOPT_NOP << 24) | (TCPOPT_NOP << 16) | | 1094 | *topt++ = htonl((TCPOPT_NOP << 24) | (TCPOPT_NOP << 16) | |
| 1095 | (TCPOPT_MD5SIG << 8) | TCPOLEN_MD5SIG); | 1095 | (TCPOPT_MD5SIG << 8) | TCPOLEN_MD5SIG); |
| 1096 | tcp_v6_md5_hash_hdr((__u8 *)topt, key, | 1096 | tcp_v6_md5_hash_hdr((__u8 *)topt, key, |
| 1097 | &ipv6_hdr(skb)->daddr, | 1097 | &ipv6_hdr(skb)->saddr, |
| 1098 | &ipv6_hdr(skb)->saddr, t1); | 1098 | &ipv6_hdr(skb)->daddr, t1); |
| 1099 | } | 1099 | } |
| 1100 | #endif | 1100 | #endif |
| 1101 | 1101 | ||
