From 6082ac8151fd845e65b2222de03b8b10de555f74 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 22 Nov 2020 22:57:58 +0100 Subject: add missing delayed purge logic --- src/util/taler-helper-crypto-rsa.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/util') diff --git a/src/util/taler-helper-crypto-rsa.c b/src/util/taler-helper-crypto-rsa.c index b8f959ee3..e72a7824b 100644 --- a/src/util/taler-helper-crypto-rsa.c +++ b/src/util/taler-helper-crypto-rsa.c @@ -78,9 +78,7 @@ struct DenominationKey char *filename; /** - * The private key of the denomination. Will be NULL if the private - * key is not available (this is the case after the key has expired - * for signing coins, but is still valid for depositing coins). + * The private key of the denomination. */ struct TALER_DenominationPrivateKey denom_priv; @@ -590,6 +588,14 @@ handle_done (void *cls) &sr->header); GNUNET_free (sr); } + { + struct DenominationKey *dk = wi->dk; + + dk->rc--; + if ( (0 == dk->rc) && + (dk->purge) ) + free_dk (dk); + } GNUNET_free (wi); GNUNET_assert (0 == pthread_mutex_lock (&done_lock)); } -- cgit v1.2.3