diff options
| author | Xin Long <lucien.xin@gmail.com> | 2019-03-18 08:06:05 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2019-03-18 21:31:09 -0400 |
| commit | 06b39e8506f6dd4e11e1d8fc4d314d72d237ad10 (patch) | |
| tree | c9072cdf0293ca2e823ff543644e1de751e7b357 | |
| parent | 0685d6b72207a6de7ea6853e48b009e71d64fe1b (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.c | 3 |
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); |
