diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-04 00:28:14 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-07-04 00:28:14 -0400 |
commit | 67ab33db8be1cd466c09dfcba334d69d3e2f92e6 (patch) | |
tree | 3ae6448755977f0bbeea0f8da028b58bb1564580 /net/tipc | |
parent | f7d57e42e7ebd085133506ef6325e70e822196dc (diff) | |
parent | 300b93974ff64f1bef1ac8294547c573954f0300 (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (27 commits)
[Bluetooth] Add RFCOMM role switch support
[Bluetooth] Allow disabling of credit based flow control
[Bluetooth] Small cleanup of the L2CAP source code
[Bluetooth] Use real devices for host controllers
[Bluetooth] Add platform device for virtual and serial devices
[Bluetooth] Add automatic sniff mode support
[Bluetooth] Correct SCO buffer size on request
[Bluetooth] Add suspend/resume support to the HCI USB driver
[Bluetooth] Use raw mode for the Frontline sniffer device
[BRIDGE]: br_dump_ifinfo index fix
[ATM]: add+use poison defines
[NET]: add+use poison defines
[IOAT]: fix kernel-doc in source files
[IOAT]: fix header file kernel-doc
[TG3]: Add ipv6 TSO feature
[IPV6]: Fix ipv6 GSO payload length
[TIPC] Fixed sk_buff panic caused by tipc_link_bundle_buf (REVISED)
[NET]: Verify gso_type too in gso_segment
[IPVS]: Add sysctl documentation
[ROSE]: Try all routes when establishing a ROSE connections.
...
Diffstat (limited to 'net/tipc')
-rw-r--r-- | net/tipc/core.h | 5 | ||||
-rw-r--r-- | net/tipc/link.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/net/tipc/core.h b/net/tipc/core.h index 86f54f3512f1..762aac2572be 100644 --- a/net/tipc/core.h +++ b/net/tipc/core.h | |||
@@ -297,7 +297,10 @@ static inline struct tipc_msg *buf_msg(struct sk_buff *skb) | |||
297 | * buf_acquire - creates a TIPC message buffer | 297 | * buf_acquire - creates a TIPC message buffer |
298 | * @size: message size (including TIPC header) | 298 | * @size: message size (including TIPC header) |
299 | * | 299 | * |
300 | * Returns a new buffer. Space is reserved for a data link header. | 300 | * Returns a new buffer with data pointers set to the specified size. |
301 | * | ||
302 | * NOTE: Headroom is reserved to allow prepending of a data link header. | ||
303 | * There may also be unrequested tailroom present at the buffer's end. | ||
301 | */ | 304 | */ |
302 | 305 | ||
303 | static inline struct sk_buff *buf_acquire(u32 size) | 306 | static inline struct sk_buff *buf_acquire(u32 size) |
diff --git a/net/tipc/link.c b/net/tipc/link.c index c6831c75cfa4..c10e18a49b96 100644 --- a/net/tipc/link.c +++ b/net/tipc/link.c | |||
@@ -998,6 +998,8 @@ static int link_bundle_buf(struct link *l_ptr, | |||
998 | return 0; | 998 | return 0; |
999 | if (skb_tailroom(bundler) < (pad + size)) | 999 | if (skb_tailroom(bundler) < (pad + size)) |
1000 | return 0; | 1000 | return 0; |
1001 | if (link_max_pkt(l_ptr) < (to_pos + size)) | ||
1002 | return 0; | ||
1001 | 1003 | ||
1002 | skb_put(bundler, pad + size); | 1004 | skb_put(bundler, pad + size); |
1003 | memcpy(bundler->data + to_pos, buf->data, size); | 1005 | memcpy(bundler->data + to_pos, buf->data, size); |