diff options
Diffstat (limited to 'src/exchange/taler-exchange-httpd_keys.c')
-rw-r--r-- | src/exchange/taler-exchange-httpd_keys.c | 48 |
1 files changed, 17 insertions, 31 deletions
diff --git a/src/exchange/taler-exchange-httpd_keys.c b/src/exchange/taler-exchange-httpd_keys.c index e5a54447..4b1a6213 100644 --- a/src/exchange/taler-exchange-httpd_keys.c +++ b/src/exchange/taler-exchange-httpd_keys.c @@ -2411,54 +2411,40 @@ TEH_keys_denomination_by_hash2 ( } -struct TALER_BlindedDenominationSignature +enum TALER_ErrorCode TEH_keys_denomination_sign (const struct TALER_DenominationHash *h_denom_pub, const struct TALER_BlindedPlanchet *bp, - enum TALER_ErrorCode *ec) + struct TALER_BlindedDenominationSignature *bs) { struct TEH_KeyStateHandle *ksh; - struct TALER_BlindedDenominationSignature none; struct HelperDenomination *hd; - memset (&none, - 0, - sizeof (none)); ksh = TEH_keys_get_state (); if (NULL == ksh) - { - *ec = TALER_EC_EXCHANGE_GENERIC_KEYS_MISSING; - return none; - } + return TALER_EC_EXCHANGE_GENERIC_KEYS_MISSING; hd = GNUNET_CONTAINER_multihashmap_get (ksh->helpers->denom_keys, &h_denom_pub->hash); if (NULL == hd) - { - *ec = TALER_EC_EXCHANGE_GENERIC_DENOMINATION_KEY_UNKNOWN; - return none; - } + return TALER_EC_EXCHANGE_GENERIC_DENOMINATION_KEY_UNKNOWN; if (bp->cipher != hd->denom_pub.cipher) - { - *ec = TALER_EC_GENERIC_INTERNAL_INVARIANT_FAILURE; - return none; - } + return TALER_EC_GENERIC_INTERNAL_INVARIANT_FAILURE; switch (hd->denom_pub.cipher) { case TALER_DENOMINATION_RSA: - return TALER_CRYPTO_helper_rsa_sign (ksh->helpers->rsadh, - &hd->h_details.h_rsa, - bp->details.rsa_blinded_planchet. - blinded_msg, - bp->details.rsa_blinded_planchet. - blinded_msg_size, - ec); + return TALER_CRYPTO_helper_rsa_sign ( + ksh->helpers->rsadh, + &hd->h_details.h_rsa, + bp->details.rsa_blinded_planchet.blinded_msg, + bp->details.rsa_blinded_planchet.blinded_msg_size, + bs); case TALER_DENOMINATION_CS: - return TALER_CRYPTO_helper_cs_sign (ksh->helpers->csdh, - &hd->h_details.h_cs, - &bp->details.cs_blinded_planchet, - ec); + return TALER_CRYPTO_helper_cs_sign ( + ksh->helpers->csdh, + &hd->h_details.h_cs, + &bp->details.cs_blinded_planchet, + bs); default: - *ec = TALER_EC_GENERIC_INTERNAL_INVARIANT_FAILURE; - return none; + return TALER_EC_GENERIC_INTERNAL_INVARIANT_FAILURE; } } |