Merge branch 'topic/detach-fixes' of git://valera-ext.nynaeve.net/silc into silc...
[silc.git] / apps / silcd / server.c
index 777d724336699556b6d6d020eeb115566eb2e13d..2f97d79d837aaeee25893ad676f2f5cd1dab382d 100644 (file)
@@ -2911,6 +2911,18 @@ static void silc_server_rekey_completion(SilcSKE ske,
                                 sock, idata->sconn->rekey_timeout, 0);
 }
 
+/* Helper to stop future rekeys on a link. */
+void silc_server_stop_rekey(SilcServer server, SilcClientEntry client)
+{
+  if (!client->connection)
+    return;
+
+  SILC_LOG_DEBUG(("Stopping rekey for client %p", client));
+
+  silc_schedule_task_del_by_all(server->schedule, 0, silc_server_do_rekey,
+                               client->connection);
+}
+
 /* Rekey callback.  Start rekey as initiator */
 
 SILC_TASK_CALLBACK(silc_server_do_rekey)