From ad5845cd90a6106892f51eb9b3de79b74afdf3db Mon Sep 17 00:00:00 2001 From: Marcello Stanisci Date: Wed, 21 Dec 2016 11:05:54 +0100 Subject: Exchange URI returned within /track/transaction response --- src/backend/taler-merchant-httpd_responses.c | 7 +++++-- src/backend/taler-merchant-httpd_responses.h | 4 +++- src/backend/taler-merchant-httpd_track-transaction.c | 3 ++- 3 files changed, 10 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/backend/taler-merchant-httpd_responses.c b/src/backend/taler-merchant-httpd_responses.c index fa34a06a..9c7ef8a5 100644 --- a/src/backend/taler-merchant-httpd_responses.c +++ b/src/backend/taler-merchant-httpd_responses.c @@ -400,11 +400,13 @@ TMH_RESPONSE_reply_arg_invalid (struct MHD_Connection *connection, * * @param num_transfers how many wire transfers make up the transaction * @param transfers data on each wire transfer + * @param exchange_uri URI of the exchange that made the transfer * @return MHD response object */ struct MHD_Response * TMH_RESPONSE_make_track_transaction_ok (unsigned int num_transfers, - const struct TALER_MERCHANT_TransactionWireTransfer *transfers) + const struct TALER_MERCHANT_TransactionWireTransfer *transfers, + const char *exchange_uri) { struct MHD_Response *ret; unsigned int i; @@ -431,7 +433,8 @@ TMH_RESPONSE_make_track_transaction_ok (unsigned int num_transfers, } GNUNET_assert (0 == json_array_append_new (j_transfers, - json_pack ("{s:o, s:o, s:o}", + json_pack ("{s:s, s:o, s:o, s:o}", + "exchange", exchange_uri, "wtid", GNUNET_JSON_from_data_auto (&transfer->wtid), "execution_time", GNUNET_JSON_from_time_abs (transfer->execution_time), "coins", j_coins))); diff --git a/src/backend/taler-merchant-httpd_responses.h b/src/backend/taler-merchant-httpd_responses.h index 2a7357b3..0b552fdd 100644 --- a/src/backend/taler-merchant-httpd_responses.h +++ b/src/backend/taler-merchant-httpd_responses.h @@ -74,11 +74,13 @@ TMH_RESPONSE_make_json_pack (const char *fmt, * * @param num_transfers how many wire transfers make up the transaction * @param transfers data on each wire transfer + * @param exchange_uri URI of the exchange that made the transfer * @return MHD response object */ struct MHD_Response * TMH_RESPONSE_make_track_transaction_ok (unsigned int num_transfers, - const struct TALER_MERCHANT_TransactionWireTransfer *transfers); + const struct TALER_MERCHANT_TransactionWireTransfer *transfers, + const char *exchange_uri); /** diff --git a/src/backend/taler-merchant-httpd_track-transaction.c b/src/backend/taler-merchant-httpd_track-transaction.c index 8e963ba0..edf323f3 100644 --- a/src/backend/taler-merchant-httpd_track-transaction.c +++ b/src/backend/taler-merchant-httpd_track-transaction.c @@ -662,7 +662,8 @@ trace_coins (struct TrackTransactionContext *tctx) GNUNET_assert (wtid_off == num_wtid); resp = TMH_RESPONSE_make_track_transaction_ok (num_wtid, - wts); + wts, + tctx->exchange_uri); for (wtid_off=0;wtid_off < num_wtid; wtid_off++) GNUNET_free (wts[wtid_off].coins); resume_track_transaction_with_response (tctx, -- cgit v1.2.3