- if (remote_client->data.public_key)
- silc_hash_table_del_by_context(server->pk_hash,
- remote_client->data.public_key,
- remote_client);
+ /* Remove client's public key from repository, this will free it too. */
+ if (remote_client->data.public_key) {
+ silc_skr_del_public_key(server->repository,
+ remote_client->data.public_key, remote_client);
+ remote_client->data.public_key = NULL;
+ }