aboutsummaryrefslogtreecommitdiff
path: root/net/sctp/sm_statefuns.c
diff options
context:
space:
mode:
authorGary S. Robertson <gary.robertson@linaro.org>2014-03-31 11:45:11 -0500
committerGary S. Robertson <gary.robertson@linaro.org>2014-03-31 11:45:11 -0500
commite365c882ed38dbbe1a6ff4ed72414835390368a6 (patch)
tree82eb481631cd22d3767f638cd4d0a3b2598ab61e /net/sctp/sm_statefuns.c
parent9ce234e1ee801968b204c3b9caa75ce0a76ed1c2 (diff)
parent10f8245e0d3650144b034142c8f91e5d15c392ab (diff)
Merge tag 'v3.10.34' of git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable into linux-lnglinux-lng-v3.10.34-finallinux-lng-3.10.34-2014.04
This is the 3.10.34 stable release
Diffstat (limited to 'net/sctp/sm_statefuns.c')
-rw-r--r--net/sctp/sm_statefuns.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/sctp/sm_statefuns.c b/net/sctp/sm_statefuns.c
index de1a0138317f..7ceb25ba85b8 100644
--- a/net/sctp/sm_statefuns.c
+++ b/net/sctp/sm_statefuns.c
@@ -765,6 +765,13 @@ sctp_disposition_t sctp_sf_do_5_1D_ce(struct net *net,
struct sctp_chunk auth;
sctp_ierror_t ret;
+ /* Make sure that we and the peer are AUTH capable */
+ if (!net->sctp.auth_enable || !new_asoc->peer.auth_capable) {
+ kfree_skb(chunk->auth_chunk);
+ sctp_association_free(new_asoc);
+ return sctp_sf_pdiscard(net, ep, asoc, type, arg, commands);
+ }
+
/* set-up our fake chunk so that we can process it */
auth.skb = chunk->auth_chunk;
auth.asoc = chunk->asoc;