diff --git a/net/sctp/auth.c b/net/sctp/auth.c index 6f8319b828b0d13c4f347acb858e70337d4c4519..fe74c5f956303f6d4840c72a0756e8e2b6875fd6 100644 --- a/net/sctp/auth.c +++ b/net/sctp/auth.c @@ -860,6 +860,8 @@ int sctp_auth_set_key(struct sctp_endpoint *ep, if (replace) { list_del_init(&shkey->key_list); sctp_auth_shkey_release(shkey); + if (asoc && asoc->active_key_id == auth_key->sca_keynumber) + sctp_auth_asoc_init_active_key(asoc, GFP_KERNEL); } list_add(&cur_key->key_list, sh_keys);