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: [NETFILTER] x_table.c: sem2mutex [IPV4]: Aggregate route entries with different TOS values [TCP]: Mark tcp_*mem[] __read_mostly. [TCP]: Set default max buffers from memory pool size [SCTP]: Fix up sctp_rcv return value [NET]: Take RTNL when unregistering notifier [WIRELESS]: Fix config dependencies. [NET]: Fill in a 32-bit hole in struct sock on 64-bit platforms. [NET]: Ensure device name passed to SO_BINDTODEVICE is NULL terminated. [MODULES]: Don't allow statically declared exports [BRIDGE]: Unaligned accesses in the ethernet bridge
This commit is contained in:
+4
-8
@@ -127,7 +127,6 @@ int sctp_rcv(struct sk_buff *skb)
|
||||
union sctp_addr dest;
|
||||
int family;
|
||||
struct sctp_af *af;
|
||||
int ret = 0;
|
||||
|
||||
if (skb->pkt_type!=PACKET_HOST)
|
||||
goto discard_it;
|
||||
@@ -227,16 +226,13 @@ int sctp_rcv(struct sk_buff *skb)
|
||||
goto discard_release;
|
||||
nf_reset(skb);
|
||||
|
||||
ret = sk_filter(sk, skb, 1);
|
||||
if (ret)
|
||||
if (sk_filter(sk, skb, 1))
|
||||
goto discard_release;
|
||||
|
||||
/* Create an SCTP packet structure. */
|
||||
chunk = sctp_chunkify(skb, asoc, sk);
|
||||
if (!chunk) {
|
||||
ret = -ENOMEM;
|
||||
if (!chunk)
|
||||
goto discard_release;
|
||||
}
|
||||
SCTP_INPUT_CB(skb)->chunk = chunk;
|
||||
|
||||
/* Remember what endpoint is to handle this packet. */
|
||||
@@ -277,11 +273,11 @@ int sctp_rcv(struct sk_buff *skb)
|
||||
sctp_bh_unlock_sock(sk);
|
||||
sock_put(sk);
|
||||
|
||||
return ret;
|
||||
return 0;
|
||||
|
||||
discard_it:
|
||||
kfree_skb(skb);
|
||||
return ret;
|
||||
return 0;
|
||||
|
||||
discard_release:
|
||||
/* Release any structures we may be holding. */
|
||||
|
||||
Reference in New Issue
Block a user