aboutsummaryrefslogtreecommitdiff
path: root/src/util/taler-exchange-secmod-eddsa.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2021-11-25 09:54:23 +0100
committerChristian Grothoff <christian@grothoff.org>2021-11-25 09:54:23 +0100
commit414237c335dd0f960ee07de92ff20c92b5c7afd5 (patch)
tree7f085f13c340f0a0e3c606eaf9493d4c0d807ebe /src/util/taler-exchange-secmod-eddsa.c
parentbab213e7945b03bf595bf7c36ef61421cf202ff3 (diff)
downloadexchange-414237c335dd0f960ee07de92ff20c92b5c7afd5.tar.xz
handle double-revoke gracefully
Diffstat (limited to 'src/util/taler-exchange-secmod-eddsa.c')
-rw-r--r--src/util/taler-exchange-secmod-eddsa.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/util/taler-exchange-secmod-eddsa.c b/src/util/taler-exchange-secmod-eddsa.c
index f49b9865e..3fe9b284e 100644
--- a/src/util/taler-exchange-secmod-eddsa.c
+++ b/src/util/taler-exchange-secmod-eddsa.c
@@ -454,7 +454,14 @@ handle_revoke_request (struct TES_Client *client,
"Revocation request ignored, key unknown\n");
return GNUNET_OK;
}
-
+ if (key->purge)
+ {
+ GNUNET_assert (0 == pthread_mutex_unlock (&keys_lock));
+ GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+ "Revocation request ignored, key %s already revoked\n",
+ TALER_B2S (&key->exchange_pub));
+ return GNUNET_OK;
+ }
key_gen++;
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
"Revoking key %s, bumping generation to %llu\n",