aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXin Long <lucien.xin@gmail.com>2019-03-18 08:06:05 -0400
committerDavid S. Miller <davem@davemloft.net>2019-03-18 21:31:09 -0400
commit06b39e8506f6dd4e11e1d8fc4d314d72d237ad10 (patch)
treec9072cdf0293ca2e823ff543644e1de751e7b357
parent0685d6b72207a6de7ea6853e48b009e71d64fe1b (diff)
sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_ACTIVE_KEY sockopt
A similar fix as Patch "sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SEND_PARAM sockopt" on SCTP_AUTH_ACTIVE_KEY sockopt. Fixes: bf9fb6ad4f29 ("sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_ACTIVE_KEY sockopt") Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/sctp/socket.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/sctp/socket.c b/net/sctp/socket.c
index 2ac221c795c2..1d098f0ccbb5 100644
--- a/net/sctp/socket.c
+++ b/net/sctp/socket.c
@@ -3871,6 +3871,9 @@ static int sctp_setsockopt_active_key(struct sock *sk,
3871 if (asoc) 3871 if (asoc)
3872 return sctp_auth_set_active_key(ep, asoc, val.scact_keynumber); 3872 return sctp_auth_set_active_key(ep, asoc, val.scact_keynumber);
3873 3873
3874 if (sctp_style(sk, TCP))
3875 val.scact_assoc_id = SCTP_FUTURE_ASSOC;
3876
3874 if (val.scact_assoc_id == SCTP_FUTURE_ASSOC || 3877 if (val.scact_assoc_id == SCTP_FUTURE_ASSOC ||
3875 val.scact_assoc_id == SCTP_ALL_ASSOC) { 3878 val.scact_assoc_id == SCTP_ALL_ASSOC) {
3876 ret = sctp_auth_set_active_key(ep, asoc, val.scact_keynumber); 3879 ret = sctp_auth_set_active_key(ep, asoc, val.scact_keynumber);