diff options
author | Christian Grothoff <christian@grothoff.org> | 2020-02-26 17:00:41 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2020-02-26 17:00:41 +0100 |
commit | fb9324338d9580b520b3713bf973bfcd9c49b569 (patch) | |
tree | aa90b29dbad21957c864834895fe6b00272a058f /src/exchange/taler-exchange-httpd_recoup.c | |
parent | 30b24448c8250b01eba8368f38c9ccdc2075f903 (diff) | |
download | exchange-fb9324338d9580b520b3713bf973bfcd9c49b569.tar.gz exchange-fb9324338d9580b520b3713bf973bfcd9c49b569.tar.bz2 exchange-fb9324338d9580b520b3713bf973bfcd9c49b569.zip |
phase 1 of #6067: update exchange HTTPD to new API style
Diffstat (limited to 'src/exchange/taler-exchange-httpd_recoup.c')
-rw-r--r-- | src/exchange/taler-exchange-httpd_recoup.c | 40 |
1 files changed, 11 insertions, 29 deletions
diff --git a/src/exchange/taler-exchange-httpd_recoup.c b/src/exchange/taler-exchange-httpd_recoup.c index 26bd65b46..f4cd99155 100644 --- a/src/exchange/taler-exchange-httpd_recoup.c +++ b/src/exchange/taler-exchange-httpd_recoup.c @@ -562,27 +562,21 @@ verify_and_execute_recoup (struct MHD_Connection *connection, /** - * Handle a "/recoup" request. Parses the JSON, and, if successful, - * passes the JSON data to #verify_and_execute_recoup() to - * further check the details of the operation specified. If - * everything checks out, this will ultimately lead to the "/refund" - * being executed, or rejected. + * Handle a "/coins/$COIN_PUB/recoup" request. Parses the JSON, and, if + * successful, passes the JSON data to #verify_and_execute_recoup() to further + * check the details of the operation specified. If everything checks out, + * this will ultimately lead to the refund being executed, or rejected. * - * @param rh context of the handler * @param connection the MHD connection to handle - * @param[in,out] connection_cls the connection's closure (can be updated) - * @param upload_data upload data - * @param[in,out] upload_data_size number of bytes (left) in @a upload_data + * @param coin_pub public key of the coin + * @param root uploaded JSON data * @return MHD result code */ int -TEH_RECOUP_handler_recoup (struct TEH_RequestHandler *rh, - struct MHD_Connection *connection, - void **connection_cls, - const char *upload_data, - size_t *upload_data_size) +TEH_RECOUP_handler_recoup (struct MHD_Connection *connection, + const struct TALER_CoinSpendPublicKeyP *coin_pub, + const json_t *root) { - json_t *json; int res; struct TALER_CoinPublicInfo coin; struct TALER_DenominationBlindingKeyP coin_bks; @@ -593,8 +587,6 @@ TEH_RECOUP_handler_recoup (struct TEH_RequestHandler *rh, &coin.denom_pub_hash), TALER_JSON_spec_denomination_signature ("denom_sig", &coin.denom_sig), - GNUNET_JSON_spec_fixed_auto ("coin_pub", - &coin.coin_pub), GNUNET_JSON_spec_fixed_auto ("coin_blind_key_secret", &coin_bks), GNUNET_JSON_spec_fixed_auto ("coin_sig", @@ -605,20 +597,10 @@ TEH_RECOUP_handler_recoup (struct TEH_RequestHandler *rh, GNUNET_JSON_spec_end () }; - (void) rh; - res = TALER_MHD_parse_post_json (connection, - connection_cls, - upload_data, - upload_data_size, - &json); - if (GNUNET_SYSERR == res) - return MHD_NO; - if ( (GNUNET_NO == res) || (NULL == json) ) - return MHD_YES; + coin.coin_pub = *coin_pub; res = TALER_MHD_parse_json_data (connection, - json, + root, spec); - json_decref (json); if (GNUNET_SYSERR == res) return MHD_NO; /* hard failure */ if (GNUNET_NO == res) |