diff options
author | Christian Grothoff <christian@grothoff.org> | 2022-04-27 13:09:41 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2022-04-27 13:09:41 +0200 |
commit | d623cab1a351040cca8729540327f948eb3027aa (patch) | |
tree | 2c73e0b394926aa1ab328b05c49269227b941fe1 /src/lib | |
parent | 1396afc13664e11fe869c1cfa2ad690df7856c21 (diff) | |
download | exchange-d623cab1a351040cca8729540327f948eb3027aa.tar.xz |
-work on p2p payments
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/exchange_api_contracts_get.c | 20 | ||||
-rw-r--r-- | src/lib/exchange_api_purse_deposit.c | 5 |
2 files changed, 8 insertions, 17 deletions
diff --git a/src/lib/exchange_api_contracts_get.c b/src/lib/exchange_api_contracts_get.c index 76ae0052c..263a0cbe9 100644 --- a/src/lib/exchange_api_contracts_get.c +++ b/src/lib/exchange_api_contracts_get.c @@ -106,7 +106,6 @@ handle_contract_get_finished (void *cls, { void *econtract; size_t econtract_size; - json_t *contract; struct TALER_PurseContractSignatureP econtract_sig; struct GNUNET_JSON_Specification spec[] = { GNUNET_JSON_spec_fixed_auto ("purse_pub", @@ -143,24 +142,11 @@ handle_contract_get_finished (void *cls, GNUNET_JSON_parse_free (spec); break; } - contract = TALER_CRYPTO_contract_decrypt_for_merge ( - &cgh->contract_priv, - &dr.details.success.purse_pub, - econtract, - econtract_size, - &dr.details.success.merge_priv); - GNUNET_JSON_parse_free (spec); - if (NULL == contract) - { - GNUNET_break (0); - dr.hr.http_status = 0; - dr.hr.ec = TALER_EC_EXCHANGE_CONTRACTS_DECRYPTION_FAILED; - break; - } - dr.details.success.contract_terms = contract; + dr.details.success.econtract = econtract; + dr.details.success.econtract_size = econtract_size; cgh->cb (cgh->cb_cls, &dr); - json_decref (contract); + GNUNET_JSON_parse_free (spec); TALER_EXCHANGE_contract_get_cancel (cgh); return; } diff --git a/src/lib/exchange_api_purse_deposit.c b/src/lib/exchange_api_purse_deposit.c index f604b8ccd..540be0e2c 100644 --- a/src/lib/exchange_api_purse_deposit.c +++ b/src/lib/exchange_api_purse_deposit.c @@ -281,6 +281,7 @@ TALER_EXCHANGE_purse_deposit ( const struct TALER_EXCHANGE_PurseDeposit *deposit = &deposits[i]; json_t *jdeposit; struct TALER_CoinSpendSignatureP coin_sig; + struct TALER_CoinSpendPublicKeyP coin_pub; #if FIXME_OEC struct TALER_AgeCommitmentHash agh; struct TALER_AgeCommitmentHash *aghp = NULL; @@ -300,6 +301,8 @@ TALER_EXCHANGE_purse_deposit ( GNUNET_free (pch); return NULL; } + GNUNET_CRYPTO_eddsa_key_get_public (&deposit->coin_priv.eddsa_priv, + &coin_pub.eddsa_pub); #endif TALER_wallet_purse_deposit_sign ( url, @@ -322,6 +325,8 @@ TALER_EXCHANGE_purse_deposit ( &deposit->h_denom_pub), TALER_JSON_pack_denom_sig ("ub_sig", &deposit->denom_sig), + GNUNET_JSON_pack_data_auto ("coin_pub", + &coin_pub), GNUNET_JSON_pack_data_auto ("coin_sig", &coin_sig)); GNUNET_assert (0 == |