From a72337a5f39b4e826055974fbc5a3261759ebbec Mon Sep 17 00:00:00 2001 From: Thien-Thi Nguyen Date: Thu, 21 Apr 2022 06:16:33 -0400 Subject: Add abstractions: TALER_exchange_deposit_{sign,verify} MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This change also removes ‘struct TALER_DepositTrackPS’ from the public API. * src/include/taler_signatures.h (struct TALER_DepositTrackPS): Delete. * src/util/exchange_signatures.c (struct TALER_DepositTrackPS): New. (TALER_exchange_deposit_sign): New func. (TALER_exchange_deposit_verify): New func. * src/include/taler_crypto_lib.h (TALER_exchange_deposit_sign): New func decl. (TALER_exchange_deposit_verify): New func decl. * src/exchange/taler-exchange-httpd_deposits_get.c (TEH_handler_deposits_get): Rework to use ‘TALER_exchange_deposit_verify’. * src/lib/exchange_api_deposits_get.c (TALER_EXCHANGE_deposits_get): Rework to use ‘taler_exchange_deposit_sign’. --- src/exchange/taler-exchange-httpd_deposits_get.c | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) (limited to 'src/exchange/taler-exchange-httpd_deposits_get.c') diff --git a/src/exchange/taler-exchange-httpd_deposits_get.c b/src/exchange/taler-exchange-httpd_deposits_get.c index fdb1a606c..509b8a214 100644 --- a/src/exchange/taler-exchange-httpd_deposits_get.c +++ b/src/exchange/taler-exchange-httpd_deposits_get.c @@ -328,20 +328,12 @@ TEH_handler_deposits_get (struct TEH_RequestContext *rc, return MHD_YES; /* parse error */ TEH_METRICS_num_verifications[TEH_MT_SIGNATURE_EDDSA]++; { - struct TALER_DepositTrackPS tps = { - .purpose.size = htonl (sizeof (tps)), - .purpose.purpose = htonl (TALER_SIGNATURE_MERCHANT_TRACK_TRANSACTION), - .merchant = ctx.merchant, - .coin_pub = ctx.coin_pub, - .h_contract_terms = ctx.h_contract_terms, - .h_wire = ctx.h_wire - }; - if (GNUNET_OK != - GNUNET_CRYPTO_eddsa_verify (TALER_SIGNATURE_MERCHANT_TRACK_TRANSACTION, - &tps, - &merchant_sig.eddsa_sig, - &tps.merchant.eddsa_pub)) + TALER_exchange_deposit_verify (&ctx.merchant, + &ctx.coin_pub, + &ctx.h_contract_terms, + &ctx.h_wire, + &merchant_sig)) { GNUNET_break_op (0); return TALER_MHD_reply_with_error (rc->connection, -- cgit v1.2.3