rename /deposit/wtid and /wire/deposits to /track/{transaction,transfer} for improved consistency
This commit is contained in:
parent
35f3c30717
commit
75c04b8af2
@ -1,3 +1,7 @@
|
|||||||
|
Thu Jun 9 19:17:02 CEST 2016
|
||||||
|
Rename /deposit/wtid to /track/transaction and
|
||||||
|
/wire/deposits to /track/transfer. -CG
|
||||||
|
|
||||||
Wed Jun 8 11:32:41 CEST 2016
|
Wed Jun 8 11:32:41 CEST 2016
|
||||||
Export libtalerfakebank API so we can use it in testcases for the
|
Export libtalerfakebank API so we can use it in testcases for the
|
||||||
merchant as well. -CG
|
merchant as well. -CG
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
/**
|
/**
|
||||||
* @file exchange-lib/exchange_api_deposit_wtid.c
|
* @file exchange-lib/exchange_api_deposit_wtid.c
|
||||||
* @brief Implementation of the /deposit/wtid request of the exchange's HTTP API
|
* @brief Implementation of the /track/transaction request of the exchange's HTTP API
|
||||||
* @author Christian Grothoff
|
* @author Christian Grothoff
|
||||||
*/
|
*/
|
||||||
#include "platform.h"
|
#include "platform.h"
|
||||||
@ -36,7 +36,7 @@
|
|||||||
/**
|
/**
|
||||||
* @brief A Deposit Wtid Handle
|
* @brief A Deposit Wtid Handle
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_DepositWtidHandle
|
struct TALER_EXCHANGE_TrackTransactionHandle
|
||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -62,7 +62,7 @@ struct TALER_EXCHANGE_DepositWtidHandle
|
|||||||
/**
|
/**
|
||||||
* Function to call with the result.
|
* Function to call with the result.
|
||||||
*/
|
*/
|
||||||
TALER_EXCHANGE_DepositWtidCallback cb;
|
TALER_EXCHANGE_TrackTransactionCallback cb;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Closure for @a cb.
|
* Closure for @a cb.
|
||||||
@ -88,7 +88,7 @@ struct TALER_EXCHANGE_DepositWtidHandle
|
|||||||
* @return #GNUNET_OK if the signature is valid, #GNUNET_SYSERR if not
|
* @return #GNUNET_OK if the signature is valid, #GNUNET_SYSERR if not
|
||||||
*/
|
*/
|
||||||
static int
|
static int
|
||||||
verify_deposit_wtid_signature_ok (const struct TALER_EXCHANGE_DepositWtidHandle *dwh,
|
verify_deposit_wtid_signature_ok (const struct TALER_EXCHANGE_TrackTransactionHandle *dwh,
|
||||||
const json_t *json,
|
const json_t *json,
|
||||||
struct TALER_ExchangePublicKeyP *exchange_pub)
|
struct TALER_ExchangePublicKeyP *exchange_pub)
|
||||||
{
|
{
|
||||||
@ -131,9 +131,9 @@ verify_deposit_wtid_signature_ok (const struct TALER_EXCHANGE_DepositWtidHandle
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Function called when we're done processing the
|
* Function called when we're done processing the
|
||||||
* HTTP /deposit/wtid request.
|
* HTTP /track/transaction request.
|
||||||
*
|
*
|
||||||
* @param cls the `struct TALER_EXCHANGE_DepositWtidHandle`
|
* @param cls the `struct TALER_EXCHANGE_TrackTransactionHandle`
|
||||||
* @param response_code HTTP response code, 0 on error
|
* @param response_code HTTP response code, 0 on error
|
||||||
* @param json parsed JSON result, NULL on error
|
* @param json parsed JSON result, NULL on error
|
||||||
*/
|
*/
|
||||||
@ -142,7 +142,7 @@ handle_deposit_wtid_finished (void *cls,
|
|||||||
long response_code,
|
long response_code,
|
||||||
const json_t *json)
|
const json_t *json)
|
||||||
{
|
{
|
||||||
struct TALER_EXCHANGE_DepositWtidHandle *dwh = cls;
|
struct TALER_EXCHANGE_TrackTransactionHandle *dwh = cls;
|
||||||
const struct TALER_WireTransferIdentifierRawP *wtid = NULL;
|
const struct TALER_WireTransferIdentifierRawP *wtid = NULL;
|
||||||
struct GNUNET_TIME_Absolute execution_time = GNUNET_TIME_UNIT_FOREVER_ABS;
|
struct GNUNET_TIME_Absolute execution_time = GNUNET_TIME_UNIT_FOREVER_ABS;
|
||||||
const struct TALER_Amount *coin_contribution = NULL;
|
const struct TALER_Amount *coin_contribution = NULL;
|
||||||
@ -244,7 +244,7 @@ handle_deposit_wtid_finished (void *cls,
|
|||||||
wtid,
|
wtid,
|
||||||
execution_time,
|
execution_time,
|
||||||
coin_contribution);
|
coin_contribution);
|
||||||
TALER_EXCHANGE_deposit_wtid_cancel (dwh);
|
TALER_EXCHANGE_track_transaction_cancel (dwh);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -261,19 +261,19 @@ handle_deposit_wtid_finished (void *cls,
|
|||||||
* @param cb_cls closure for @a cb
|
* @param cb_cls closure for @a cb
|
||||||
* @return handle to abort request
|
* @return handle to abort request
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_DepositWtidHandle *
|
struct TALER_EXCHANGE_TrackTransactionHandle *
|
||||||
TALER_EXCHANGE_deposit_wtid (struct TALER_EXCHANGE_Handle *exchange,
|
TALER_EXCHANGE_track_transaction (struct TALER_EXCHANGE_Handle *exchange,
|
||||||
const struct TALER_MerchantPrivateKeyP *merchant_priv,
|
const struct TALER_MerchantPrivateKeyP *merchant_priv,
|
||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct GNUNET_HashCode *h_contract,
|
const struct GNUNET_HashCode *h_contract,
|
||||||
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
||||||
uint64_t transaction_id,
|
uint64_t transaction_id,
|
||||||
TALER_EXCHANGE_DepositWtidCallback cb,
|
TALER_EXCHANGE_TrackTransactionCallback cb,
|
||||||
void *cb_cls)
|
void *cb_cls)
|
||||||
{
|
{
|
||||||
struct TALER_DepositTrackPS dtp;
|
struct TALER_DepositTrackPS dtp;
|
||||||
struct TALER_MerchantSignatureP merchant_sig;
|
struct TALER_MerchantSignatureP merchant_sig;
|
||||||
struct TALER_EXCHANGE_DepositWtidHandle *dwh;
|
struct TALER_EXCHANGE_TrackTransactionHandle *dwh;
|
||||||
struct GNUNET_CURL_Context *ctx;
|
struct GNUNET_CURL_Context *ctx;
|
||||||
json_t *deposit_wtid_obj;
|
json_t *deposit_wtid_obj;
|
||||||
CURL *eh;
|
CURL *eh;
|
||||||
@ -284,7 +284,7 @@ TALER_EXCHANGE_deposit_wtid (struct TALER_EXCHANGE_Handle *exchange,
|
|||||||
GNUNET_break (0);
|
GNUNET_break (0);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
dtp.purpose.purpose = htonl (TALER_SIGNATURE_MERCHANT_DEPOSIT_WTID);
|
dtp.purpose.purpose = htonl (TALER_SIGNATURE_MERCHANT_TRACK_TRANSACTION);
|
||||||
dtp.purpose.size = htonl (sizeof (dtp));
|
dtp.purpose.size = htonl (sizeof (dtp));
|
||||||
dtp.h_contract = *h_contract;
|
dtp.h_contract = *h_contract;
|
||||||
dtp.h_wire = *h_wire;
|
dtp.h_wire = *h_wire;
|
||||||
@ -307,11 +307,11 @@ TALER_EXCHANGE_deposit_wtid (struct TALER_EXCHANGE_Handle *exchange,
|
|||||||
"merchant_pub", GNUNET_JSON_from_data_auto (&dtp.merchant),
|
"merchant_pub", GNUNET_JSON_from_data_auto (&dtp.merchant),
|
||||||
"merchant_sig", GNUNET_JSON_from_data_auto (&merchant_sig));
|
"merchant_sig", GNUNET_JSON_from_data_auto (&merchant_sig));
|
||||||
|
|
||||||
dwh = GNUNET_new (struct TALER_EXCHANGE_DepositWtidHandle);
|
dwh = GNUNET_new (struct TALER_EXCHANGE_TrackTransactionHandle);
|
||||||
dwh->exchange = exchange;
|
dwh->exchange = exchange;
|
||||||
dwh->cb = cb;
|
dwh->cb = cb;
|
||||||
dwh->cb_cls = cb_cls;
|
dwh->cb_cls = cb_cls;
|
||||||
dwh->url = MAH_path_to_url (exchange, "/deposit/wtid");
|
dwh->url = MAH_path_to_url (exchange, "/track/transaction");
|
||||||
dwh->depconf.purpose.size = htonl (sizeof (struct TALER_ConfirmWirePS));
|
dwh->depconf.purpose.size = htonl (sizeof (struct TALER_ConfirmWirePS));
|
||||||
dwh->depconf.purpose.purpose = htonl (TALER_SIGNATURE_EXCHANGE_CONFIRM_WIRE);
|
dwh->depconf.purpose.purpose = htonl (TALER_SIGNATURE_EXCHANGE_CONFIRM_WIRE);
|
||||||
dwh->depconf.h_wire = *h_wire;
|
dwh->depconf.h_wire = *h_wire;
|
||||||
@ -353,7 +353,7 @@ TALER_EXCHANGE_deposit_wtid (struct TALER_EXCHANGE_Handle *exchange,
|
|||||||
* @param dwh the wire deposits request handle
|
* @param dwh the wire deposits request handle
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
TALER_EXCHANGE_deposit_wtid_cancel (struct TALER_EXCHANGE_DepositWtidHandle *dwh)
|
TALER_EXCHANGE_track_transaction_cancel (struct TALER_EXCHANGE_TrackTransactionHandle *dwh)
|
||||||
{
|
{
|
||||||
if (NULL != dwh->job)
|
if (NULL != dwh->job)
|
||||||
{
|
{
|
||||||
|
@ -16,7 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
/**
|
/**
|
||||||
* @file exchange-lib/exchange_api_wire_deposits.c
|
* @file exchange-lib/exchange_api_wire_deposits.c
|
||||||
* @brief Implementation of the /wire/deposits request of the exchange's HTTP API
|
* @brief Implementation of the /track/transfer request of the exchange's HTTP API
|
||||||
* @author Christian Grothoff
|
* @author Christian Grothoff
|
||||||
*/
|
*/
|
||||||
#include "platform.h"
|
#include "platform.h"
|
||||||
@ -33,9 +33,9 @@
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief A /wire/deposits Handle
|
* @brief A /track/transfer Handle
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_WireDepositsHandle
|
struct TALER_EXCHANGE_TrackTransferHandle
|
||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -68,9 +68,9 @@ struct TALER_EXCHANGE_WireDepositsHandle
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Function called when we're done processing the
|
* Function called when we're done processing the
|
||||||
* HTTP /wire/deposits request.
|
* HTTP /track/transfer request.
|
||||||
*
|
*
|
||||||
* @param cls the `struct TALER_EXCHANGE_WireDepositsHandle`
|
* @param cls the `struct TALER_EXCHANGE_TrackTransferHandle`
|
||||||
* @param response_code HTTP response code, 0 on error
|
* @param response_code HTTP response code, 0 on error
|
||||||
* @param json parsed JSON result, NULL on error
|
* @param json parsed JSON result, NULL on error
|
||||||
*/
|
*/
|
||||||
@ -79,7 +79,7 @@ handle_wire_deposits_finished (void *cls,
|
|||||||
long response_code,
|
long response_code,
|
||||||
const json_t *json)
|
const json_t *json)
|
||||||
{
|
{
|
||||||
struct TALER_EXCHANGE_WireDepositsHandle *wdh = cls;
|
struct TALER_EXCHANGE_TrackTransferHandle *wdh = cls;
|
||||||
|
|
||||||
wdh->job = NULL;
|
wdh->job = NULL;
|
||||||
switch (response_code)
|
switch (response_code)
|
||||||
@ -116,7 +116,7 @@ handle_wire_deposits_finished (void *cls,
|
|||||||
}
|
}
|
||||||
num_details = json_array_size (details_j);
|
num_details = json_array_size (details_j);
|
||||||
{
|
{
|
||||||
struct TALER_WireDepositDetails details[num_details];
|
struct TALER_TrackTransferDetails details[num_details];
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
struct GNUNET_HashContext *hash_context;
|
struct GNUNET_HashContext *hash_context;
|
||||||
struct TALER_WireDepositDetailP dd;
|
struct TALER_WireDepositDetailP dd;
|
||||||
@ -125,7 +125,7 @@ handle_wire_deposits_finished (void *cls,
|
|||||||
hash_context = GNUNET_CRYPTO_hash_context_start ();
|
hash_context = GNUNET_CRYPTO_hash_context_start ();
|
||||||
for (i=0;i<num_details;i++)
|
for (i=0;i<num_details;i++)
|
||||||
{
|
{
|
||||||
struct TALER_WireDepositDetails *detail = &details[i];
|
struct TALER_TrackTransferDetails *detail = &details[i];
|
||||||
struct json_t *detail_j = json_array_get (details_j, i);
|
struct json_t *detail_j = json_array_get (details_j, i);
|
||||||
struct GNUNET_JSON_Specification spec_detail[] = {
|
struct GNUNET_JSON_Specification spec_detail[] = {
|
||||||
GNUNET_JSON_spec_fixed_auto ("H_contract", &detail->h_contract),
|
GNUNET_JSON_spec_fixed_auto ("H_contract", &detail->h_contract),
|
||||||
@ -192,7 +192,7 @@ handle_wire_deposits_finished (void *cls,
|
|||||||
&total_amount,
|
&total_amount,
|
||||||
num_details,
|
num_details,
|
||||||
details);
|
details);
|
||||||
TALER_EXCHANGE_wire_deposits_cancel (wdh);
|
TALER_EXCHANGE_track_transfer_cancel (wdh);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -228,7 +228,7 @@ handle_wire_deposits_finished (void *cls,
|
|||||||
NULL,
|
NULL,
|
||||||
json,
|
json,
|
||||||
NULL, NULL, 0, NULL);
|
NULL, NULL, 0, NULL);
|
||||||
TALER_EXCHANGE_wire_deposits_cancel (wdh);
|
TALER_EXCHANGE_track_transfer_cancel (wdh);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -242,13 +242,13 @@ handle_wire_deposits_finished (void *cls,
|
|||||||
* @param cb_cls closure for @a cb
|
* @param cb_cls closure for @a cb
|
||||||
* @return handle to cancel operation
|
* @return handle to cancel operation
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_WireDepositsHandle *
|
struct TALER_EXCHANGE_TrackTransferHandle *
|
||||||
TALER_EXCHANGE_wire_deposits (struct TALER_EXCHANGE_Handle *exchange,
|
TALER_EXCHANGE_track_transfer (struct TALER_EXCHANGE_Handle *exchange,
|
||||||
const struct TALER_WireTransferIdentifierRawP *wtid,
|
const struct TALER_WireTransferIdentifierRawP *wtid,
|
||||||
TALER_EXCHANGE_WireDepositsCallback cb,
|
TALER_EXCHANGE_WireDepositsCallback cb,
|
||||||
void *cb_cls)
|
void *cb_cls)
|
||||||
{
|
{
|
||||||
struct TALER_EXCHANGE_WireDepositsHandle *wdh;
|
struct TALER_EXCHANGE_TrackTransferHandle *wdh;
|
||||||
struct GNUNET_CURL_Context *ctx;
|
struct GNUNET_CURL_Context *ctx;
|
||||||
char *buf;
|
char *buf;
|
||||||
char *path;
|
char *path;
|
||||||
@ -261,7 +261,7 @@ TALER_EXCHANGE_wire_deposits (struct TALER_EXCHANGE_Handle *exchange,
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
wdh = GNUNET_new (struct TALER_EXCHANGE_WireDepositsHandle);
|
wdh = GNUNET_new (struct TALER_EXCHANGE_TrackTransferHandle);
|
||||||
wdh->exchange = exchange;
|
wdh->exchange = exchange;
|
||||||
wdh->cb = cb;
|
wdh->cb = cb;
|
||||||
wdh->cb_cls = cb_cls;
|
wdh->cb_cls = cb_cls;
|
||||||
@ -269,7 +269,7 @@ TALER_EXCHANGE_wire_deposits (struct TALER_EXCHANGE_Handle *exchange,
|
|||||||
buf = GNUNET_STRINGS_data_to_string_alloc (wtid,
|
buf = GNUNET_STRINGS_data_to_string_alloc (wtid,
|
||||||
sizeof (struct TALER_WireTransferIdentifierRawP));
|
sizeof (struct TALER_WireTransferIdentifierRawP));
|
||||||
GNUNET_asprintf (&path,
|
GNUNET_asprintf (&path,
|
||||||
"/wire/deposits?wtid=%s",
|
"/track/transfer?wtid=%s",
|
||||||
buf);
|
buf);
|
||||||
wdh->url = MAH_path_to_url (wdh->exchange,
|
wdh->url = MAH_path_to_url (wdh->exchange,
|
||||||
path);
|
path);
|
||||||
@ -298,7 +298,7 @@ TALER_EXCHANGE_wire_deposits (struct TALER_EXCHANGE_Handle *exchange,
|
|||||||
* @param wdh the wire deposits request handle
|
* @param wdh the wire deposits request handle
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
TALER_EXCHANGE_wire_deposits_cancel (struct TALER_EXCHANGE_WireDepositsHandle *wdh)
|
TALER_EXCHANGE_track_transfer_cancel (struct TALER_EXCHANGE_TrackTransferHandle *wdh)
|
||||||
{
|
{
|
||||||
if (NULL != wdh->job)
|
if (NULL != wdh->job)
|
||||||
{
|
{
|
||||||
|
@ -122,12 +122,12 @@ enum OpCode
|
|||||||
OC_WIRE,
|
OC_WIRE,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Verify exchange's /wire/deposits method.
|
* Verify exchange's /track/transfer method.
|
||||||
*/
|
*/
|
||||||
OC_WIRE_DEPOSITS,
|
OC_WIRE_DEPOSITS,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Verify exchange's /deposit/wtid method.
|
* Verify exchange's /track/transaction method.
|
||||||
*/
|
*/
|
||||||
OC_DEPOSIT_WTID,
|
OC_DEPOSIT_WTID,
|
||||||
|
|
||||||
@ -514,14 +514,14 @@ struct Command
|
|||||||
} wire;
|
} wire;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Information for the /wire/deposits's command.
|
* Information for the /track/transfer's command.
|
||||||
*/
|
*/
|
||||||
struct {
|
struct {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle to the wire deposits request.
|
* Handle to the wire deposits request.
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_WireDepositsHandle *wdh;
|
struct TALER_EXCHANGE_TrackTransferHandle *wdh;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reference to a command providing a WTID. If set, we use the
|
* Reference to a command providing a WTID. If set, we use the
|
||||||
@ -529,7 +529,7 @@ struct Command
|
|||||||
* #OC_DEPOSIT_WTID or an #OC_CHECK_BANK_TRANSFER. In the
|
* #OC_DEPOSIT_WTID or an #OC_CHECK_BANK_TRANSFER. In the
|
||||||
* case of the bank transfer, we check that the total amount
|
* case of the bank transfer, we check that the total amount
|
||||||
* claimed by the exchange matches the total amount transferred
|
* claimed by the exchange matches the total amount transferred
|
||||||
* by the bank. In the case of a /deposit/wtid, we check
|
* by the bank. In the case of a /track/transaction, we check
|
||||||
* that the wire details match.
|
* that the wire details match.
|
||||||
*/
|
*/
|
||||||
const char *wtid_ref;
|
const char *wtid_ref;
|
||||||
@ -552,14 +552,14 @@ struct Command
|
|||||||
} wire_deposits;
|
} wire_deposits;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Information for the /deposit/wtid command.
|
* Information for the /track/transaction command.
|
||||||
*/
|
*/
|
||||||
struct {
|
struct {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle to the deposit wtid request.
|
* Handle to the deposit wtid request.
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_DepositWtidHandle *dwh;
|
struct TALER_EXCHANGE_TrackTransactionHandle *dwh;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Which /deposit operation should we obtain WTID data for?
|
* Which /deposit operation should we obtain WTID data for?
|
||||||
@ -1409,7 +1409,7 @@ wire_deposits_cb (void *cls,
|
|||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct TALER_Amount *total_amount,
|
const struct TALER_Amount *total_amount,
|
||||||
unsigned int details_length,
|
unsigned int details_length,
|
||||||
const struct TALER_WireDepositDetails *details)
|
const struct TALER_TrackTransferDetails *details)
|
||||||
{
|
{
|
||||||
struct InterpreterState *is = cls;
|
struct InterpreterState *is = cls;
|
||||||
struct Command *cmd = &is->commands[is->ip];
|
struct Command *cmd = &is->commands[is->ip];
|
||||||
@ -2164,7 +2164,7 @@ interpreter_run (void *cls)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
cmd->details.wire_deposits.wdh
|
cmd->details.wire_deposits.wdh
|
||||||
= TALER_EXCHANGE_wire_deposits (exchange,
|
= TALER_EXCHANGE_track_transfer (exchange,
|
||||||
&cmd->details.wire_deposits.wtid,
|
&cmd->details.wire_deposits.wtid,
|
||||||
&wire_deposits_cb,
|
&wire_deposits_cb,
|
||||||
is);
|
is);
|
||||||
@ -2202,7 +2202,7 @@ interpreter_run (void *cls)
|
|||||||
&h_contract);
|
&h_contract);
|
||||||
json_decref (contract);
|
json_decref (contract);
|
||||||
cmd->details.deposit_wtid.dwh
|
cmd->details.deposit_wtid.dwh
|
||||||
= TALER_EXCHANGE_deposit_wtid (exchange,
|
= TALER_EXCHANGE_track_transaction (exchange,
|
||||||
&ref->details.deposit.merchant_priv,
|
&ref->details.deposit.merchant_priv,
|
||||||
&h_wire,
|
&h_wire,
|
||||||
&h_contract,
|
&h_contract,
|
||||||
@ -2522,7 +2522,7 @@ do_shutdown (void *cls)
|
|||||||
"Command %u (%s) did not complete\n",
|
"Command %u (%s) did not complete\n",
|
||||||
i,
|
i,
|
||||||
cmd->label);
|
cmd->label);
|
||||||
TALER_EXCHANGE_wire_deposits_cancel (cmd->details.wire_deposits.wdh);
|
TALER_EXCHANGE_track_transfer_cancel (cmd->details.wire_deposits.wdh);
|
||||||
cmd->details.wire_deposits.wdh = NULL;
|
cmd->details.wire_deposits.wdh = NULL;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2533,7 +2533,7 @@ do_shutdown (void *cls)
|
|||||||
"Command %u (%s) did not complete\n",
|
"Command %u (%s) did not complete\n",
|
||||||
i,
|
i,
|
||||||
cmd->label);
|
cmd->label);
|
||||||
TALER_EXCHANGE_deposit_wtid_cancel (cmd->details.deposit_wtid.dwh);
|
TALER_EXCHANGE_track_transaction_cancel (cmd->details.deposit_wtid.dwh);
|
||||||
cmd->details.deposit_wtid.dwh = NULL;
|
cmd->details.deposit_wtid.dwh = NULL;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -259,16 +259,16 @@ handle_mhd_request (void *cls,
|
|||||||
"Only POST is allowed", 0,
|
"Only POST is allowed", 0,
|
||||||
&TMH_MHD_handler_send_json_pack_error, MHD_HTTP_METHOD_NOT_ALLOWED },
|
&TMH_MHD_handler_send_json_pack_error, MHD_HTTP_METHOD_NOT_ALLOWED },
|
||||||
|
|
||||||
{ "/wire/deposits", MHD_HTTP_METHOD_GET, "application/json",
|
{ "/track/transfer", MHD_HTTP_METHOD_GET, "application/json",
|
||||||
NULL, 0,
|
NULL, 0,
|
||||||
&TMH_TRACKING_handler_wire_deposits, MHD_HTTP_OK },
|
&TMH_TRACKING_handler_track_transfer, MHD_HTTP_OK },
|
||||||
{ "/wire/deposits", NULL, "text/plain",
|
{ "/track/transfer", NULL, "text/plain",
|
||||||
"Only GET is allowed", 0,
|
"Only GET is allowed", 0,
|
||||||
&TMH_MHD_handler_send_json_pack_error, MHD_HTTP_METHOD_NOT_ALLOWED },
|
&TMH_MHD_handler_send_json_pack_error, MHD_HTTP_METHOD_NOT_ALLOWED },
|
||||||
{ "/deposit/wtid", MHD_HTTP_METHOD_POST, "application/json",
|
{ "/track/transaction", MHD_HTTP_METHOD_POST, "application/json",
|
||||||
NULL, 0,
|
NULL, 0,
|
||||||
&TMH_TRACKING_handler_deposit_wtid, MHD_HTTP_OK },
|
&TMH_TRACKING_handler_track_transaction, MHD_HTTP_OK },
|
||||||
{ "/deposit/wtid", NULL, "text/plain",
|
{ "/track/transaction", NULL, "text/plain",
|
||||||
"Only POST is allowed", 0,
|
"Only POST is allowed", 0,
|
||||||
&TMH_MHD_handler_send_json_pack_error, MHD_HTTP_METHOD_NOT_ALLOWED },
|
&TMH_MHD_handler_send_json_pack_error, MHD_HTTP_METHOD_NOT_ALLOWED },
|
||||||
|
|
||||||
|
@ -411,7 +411,7 @@ TMH_DB_execute_refund (struct MHD_Connection *connection,
|
|||||||
session);
|
session);
|
||||||
TMH_plugin->free_coin_transaction_list (TMH_plugin->cls,
|
TMH_plugin->free_coin_transaction_list (TMH_plugin->cls,
|
||||||
tl);
|
tl);
|
||||||
return TMH_RESPONSE_reply_deposit_unknown (connection);
|
return TMH_RESPONSE_reply_transaction_unknown (connection);
|
||||||
}
|
}
|
||||||
/* handle if conflicting refund found */
|
/* handle if conflicting refund found */
|
||||||
if (GNUNET_SYSERR == refund_found)
|
if (GNUNET_SYSERR == refund_found)
|
||||||
@ -1762,12 +1762,12 @@ struct WtidTransactionContext
|
|||||||
/**
|
/**
|
||||||
* Head of DLL with details for /wire/deposit response.
|
* Head of DLL with details for /wire/deposit response.
|
||||||
*/
|
*/
|
||||||
struct TMH_WireDepositDetail *wdd_head;
|
struct TMH_TrackTransferDetail *wdd_head;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Head of DLL with details for /wire/deposit response.
|
* Head of DLL with details for /wire/deposit response.
|
||||||
*/
|
*/
|
||||||
struct TMH_WireDepositDetail *wdd_tail;
|
struct TMH_TrackTransferDetail *wdd_tail;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* JSON array with details about the individual deposits.
|
* JSON array with details about the individual deposits.
|
||||||
@ -1811,7 +1811,7 @@ handle_transaction_data (void *cls,
|
|||||||
{
|
{
|
||||||
struct WtidTransactionContext *ctx = cls;
|
struct WtidTransactionContext *ctx = cls;
|
||||||
struct TALER_Amount delta;
|
struct TALER_Amount delta;
|
||||||
struct TMH_WireDepositDetail *wdd;
|
struct TMH_TrackTransferDetail *wdd;
|
||||||
|
|
||||||
if (GNUNET_SYSERR == ctx->is_valid)
|
if (GNUNET_SYSERR == ctx->is_valid)
|
||||||
return;
|
return;
|
||||||
@ -1862,7 +1862,7 @@ handle_transaction_data (void *cls,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
wdd = GNUNET_new (struct TMH_WireDepositDetail);
|
wdd = GNUNET_new (struct TMH_TrackTransferDetail);
|
||||||
wdd->deposit_value = *deposit_value;
|
wdd->deposit_value = *deposit_value;
|
||||||
wdd->deposit_fee = *deposit_fee;
|
wdd->deposit_fee = *deposit_fee;
|
||||||
wdd->h_contract = *h_contract;
|
wdd->h_contract = *h_contract;
|
||||||
@ -1875,7 +1875,7 @@ handle_transaction_data (void *cls,
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute a "/wire/deposits". Returns the transaction information
|
* Execute a "/track/transfer". Returns the transaction information
|
||||||
* associated with the given wire transfer identifier.
|
* associated with the given wire transfer identifier.
|
||||||
*
|
*
|
||||||
* @param connection the MHD connection to handle
|
* @param connection the MHD connection to handle
|
||||||
@ -1883,13 +1883,13 @@ handle_transaction_data (void *cls,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_DB_execute_wire_deposits (struct MHD_Connection *connection,
|
TMH_DB_execute_track_transfer (struct MHD_Connection *connection,
|
||||||
const struct TALER_WireTransferIdentifierRawP *wtid)
|
const struct TALER_WireTransferIdentifierRawP *wtid)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
struct WtidTransactionContext ctx;
|
struct WtidTransactionContext ctx;
|
||||||
struct TALER_EXCHANGEDB_Session *session;
|
struct TALER_EXCHANGEDB_Session *session;
|
||||||
struct TMH_WireDepositDetail *wdd;
|
struct TMH_TrackTransferDetail *wdd;
|
||||||
|
|
||||||
if (NULL == (session = TMH_plugin->get_session (TMH_plugin->cls)))
|
if (NULL == (session = TMH_plugin->get_session (TMH_plugin->cls)))
|
||||||
{
|
{
|
||||||
@ -1922,7 +1922,7 @@ TMH_DB_execute_wire_deposits (struct MHD_Connection *connection,
|
|||||||
"wtid");
|
"wtid");
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
ret = TMH_RESPONSE_reply_wire_deposit_details (connection,
|
ret = TMH_RESPONSE_reply_track_transfer_details (connection,
|
||||||
&ctx.total,
|
&ctx.total,
|
||||||
&ctx.merchant_pub,
|
&ctx.merchant_pub,
|
||||||
&ctx.h_wire,
|
&ctx.h_wire,
|
||||||
@ -2004,7 +2004,7 @@ handle_wtid_data (void *cls,
|
|||||||
|
|
||||||
if (NULL == wtid)
|
if (NULL == wtid)
|
||||||
{
|
{
|
||||||
ctx->res = TMH_RESPONSE_reply_deposit_pending (ctx->connection,
|
ctx->res = TMH_RESPONSE_reply_transfer_pending (ctx->connection,
|
||||||
execution_time);
|
execution_time);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -2019,7 +2019,7 @@ handle_wtid_data (void *cls,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ctx->res = TMH_RESPONSE_reply_deposit_wtid (ctx->connection,
|
ctx->res = TMH_RESPONSE_reply_track_transaction (ctx->connection,
|
||||||
&ctx->h_contract,
|
&ctx->h_contract,
|
||||||
&ctx->h_wire,
|
&ctx->h_wire,
|
||||||
&ctx->coin_pub,
|
&ctx->coin_pub,
|
||||||
@ -2033,7 +2033,7 @@ handle_wtid_data (void *cls,
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute a "/deposit/wtid". Returns the transfer information
|
* Execute a "/track/transaction". Returns the transfer information
|
||||||
* associated with the given deposit.
|
* associated with the given deposit.
|
||||||
*
|
*
|
||||||
* @param connection the MHD connection to handle
|
* @param connection the MHD connection to handle
|
||||||
@ -2045,7 +2045,7 @@ handle_wtid_data (void *cls,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_DB_execute_deposit_wtid (struct MHD_Connection *connection,
|
TMH_DB_execute_track_transaction (struct MHD_Connection *connection,
|
||||||
const struct GNUNET_HashCode *h_contract,
|
const struct GNUNET_HashCode *h_contract,
|
||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
||||||
@ -2085,7 +2085,7 @@ TMH_DB_execute_deposit_wtid (struct MHD_Connection *connection,
|
|||||||
if (GNUNET_NO == ret)
|
if (GNUNET_NO == ret)
|
||||||
{
|
{
|
||||||
GNUNET_break (GNUNET_SYSERR == ctx.res);
|
GNUNET_break (GNUNET_SYSERR == ctx.res);
|
||||||
return TMH_RESPONSE_reply_deposit_unknown (connection);
|
return TMH_RESPONSE_reply_transaction_unknown (connection);
|
||||||
}
|
}
|
||||||
if (GNUNET_SYSERR == ctx.res)
|
if (GNUNET_SYSERR == ctx.res)
|
||||||
{
|
{
|
||||||
|
@ -205,7 +205,7 @@ TMH_DB_execute_admin_add_incoming (struct MHD_Connection *connection,
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute a "/wire/deposits". Returns the transaction information
|
* Execute a "/track/transfer". Returns the transaction information
|
||||||
* associated with the given wire transfer identifier.
|
* associated with the given wire transfer identifier.
|
||||||
*
|
*
|
||||||
* @param connection the MHD connection to handle
|
* @param connection the MHD connection to handle
|
||||||
@ -213,12 +213,12 @@ TMH_DB_execute_admin_add_incoming (struct MHD_Connection *connection,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_DB_execute_wire_deposits (struct MHD_Connection *connection,
|
TMH_DB_execute_track_transfer (struct MHD_Connection *connection,
|
||||||
const struct TALER_WireTransferIdentifierRawP *wtid);
|
const struct TALER_WireTransferIdentifierRawP *wtid);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Execute a "/deposit/wtid". Returns the transfer information
|
* Execute a "/track/transaction". Returns the transfer information
|
||||||
* associated with the given deposit.
|
* associated with the given deposit.
|
||||||
*
|
*
|
||||||
* @param connection the MHD connection to handle
|
* @param connection the MHD connection to handle
|
||||||
@ -230,7 +230,7 @@ TMH_DB_execute_wire_deposits (struct MHD_Connection *connection,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_DB_execute_deposit_wtid (struct MHD_Connection *connection,
|
TMH_DB_execute_track_transaction (struct MHD_Connection *connection,
|
||||||
const struct GNUNET_HashCode *h_contract,
|
const struct GNUNET_HashCode *h_contract,
|
||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
||||||
|
@ -1146,7 +1146,7 @@ TMH_RESPONSE_reply_refresh_link_success (struct MHD_Connection *connection,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_RESPONSE_reply_deposit_unknown (struct MHD_Connection *connection)
|
TMH_RESPONSE_reply_transaction_unknown (struct MHD_Connection *connection)
|
||||||
{
|
{
|
||||||
return TMH_RESPONSE_reply_json_pack (connection,
|
return TMH_RESPONSE_reply_json_pack (connection,
|
||||||
MHD_HTTP_NOT_FOUND,
|
MHD_HTTP_NOT_FOUND,
|
||||||
@ -1164,7 +1164,7 @@ TMH_RESPONSE_reply_deposit_unknown (struct MHD_Connection *connection)
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_RESPONSE_reply_deposit_pending (struct MHD_Connection *connection,
|
TMH_RESPONSE_reply_transfer_pending (struct MHD_Connection *connection,
|
||||||
struct GNUNET_TIME_Absolute planned_exec_time)
|
struct GNUNET_TIME_Absolute planned_exec_time)
|
||||||
{
|
{
|
||||||
return TMH_RESPONSE_reply_json_pack (connection,
|
return TMH_RESPONSE_reply_json_pack (connection,
|
||||||
@ -1190,7 +1190,7 @@ TMH_RESPONSE_reply_deposit_pending (struct MHD_Connection *connection,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_RESPONSE_reply_deposit_wtid (struct MHD_Connection *connection,
|
TMH_RESPONSE_reply_track_transaction (struct MHD_Connection *connection,
|
||||||
const struct GNUNET_HashCode *h_contract,
|
const struct GNUNET_HashCode *h_contract,
|
||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
||||||
@ -1239,13 +1239,13 @@ TMH_RESPONSE_reply_deposit_wtid (struct MHD_Connection *connection,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_RESPONSE_reply_wire_deposit_details (struct MHD_Connection *connection,
|
TMH_RESPONSE_reply_track_transfer_details (struct MHD_Connection *connection,
|
||||||
const struct TALER_Amount *total,
|
const struct TALER_Amount *total,
|
||||||
const struct TALER_MerchantPublicKeyP *merchant_pub,
|
const struct TALER_MerchantPublicKeyP *merchant_pub,
|
||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct TMH_WireDepositDetail *wdd_head)
|
const struct TMH_TrackTransferDetail *wdd_head)
|
||||||
{
|
{
|
||||||
const struct TMH_WireDepositDetail *wdd_pos;
|
const struct TMH_TrackTransferDetail *wdd_pos;
|
||||||
json_t *deposits;
|
json_t *deposits;
|
||||||
struct TALER_WireDepositDetailP dd;
|
struct TALER_WireDepositDetailP dd;
|
||||||
struct GNUNET_HashContext *hash_context;
|
struct GNUNET_HashContext *hash_context;
|
||||||
|
@ -294,7 +294,7 @@ TMH_RESPONSE_reply_refund_success (struct MHD_Connection *connection,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_RESPONSE_reply_deposit_unknown (struct MHD_Connection *connection);
|
TMH_RESPONSE_reply_transaction_unknown (struct MHD_Connection *connection);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -306,7 +306,7 @@ TMH_RESPONSE_reply_deposit_unknown (struct MHD_Connection *connection);
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_RESPONSE_reply_deposit_pending (struct MHD_Connection *connection,
|
TMH_RESPONSE_reply_transfer_pending (struct MHD_Connection *connection,
|
||||||
struct GNUNET_TIME_Absolute planned_exec_time);
|
struct GNUNET_TIME_Absolute planned_exec_time);
|
||||||
|
|
||||||
|
|
||||||
@ -325,7 +325,7 @@ TMH_RESPONSE_reply_deposit_pending (struct MHD_Connection *connection,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_RESPONSE_reply_deposit_wtid (struct MHD_Connection *connection,
|
TMH_RESPONSE_reply_track_transaction (struct MHD_Connection *connection,
|
||||||
const struct GNUNET_HashCode *h_contract,
|
const struct GNUNET_HashCode *h_contract,
|
||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
||||||
@ -338,18 +338,18 @@ TMH_RESPONSE_reply_deposit_wtid (struct MHD_Connection *connection,
|
|||||||
/**
|
/**
|
||||||
* Detail for /wire/deposit response.
|
* Detail for /wire/deposit response.
|
||||||
*/
|
*/
|
||||||
struct TMH_WireDepositDetail
|
struct TMH_TrackTransferDetail
|
||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* We keep deposit details in a DLL.
|
* We keep deposit details in a DLL.
|
||||||
*/
|
*/
|
||||||
struct TMH_WireDepositDetail *next;
|
struct TMH_TrackTransferDetail *next;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* We keep deposit details in a DLL.
|
* We keep deposit details in a DLL.
|
||||||
*/
|
*/
|
||||||
struct TMH_WireDepositDetail *prev;
|
struct TMH_TrackTransferDetail *prev;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Hash of the contract
|
* Hash of the contract
|
||||||
@ -390,11 +390,11 @@ struct TMH_WireDepositDetail
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_RESPONSE_reply_wire_deposit_details (struct MHD_Connection *connection,
|
TMH_RESPONSE_reply_track_transfer_details (struct MHD_Connection *connection,
|
||||||
const struct TALER_Amount *total,
|
const struct TALER_Amount *total,
|
||||||
const struct TALER_MerchantPublicKeyP *merchant_pub,
|
const struct TALER_MerchantPublicKeyP *merchant_pub,
|
||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct TMH_WireDepositDetail *wdd_head);
|
const struct TMH_TrackTransferDetail *wdd_head);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -30,7 +30,7 @@
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle a "/wire/deposits" request.
|
* Handle a "/track/transfer" request.
|
||||||
*
|
*
|
||||||
* @param rh context of the handler
|
* @param rh context of the handler
|
||||||
* @param connection the MHD connection to handle
|
* @param connection the MHD connection to handle
|
||||||
@ -40,11 +40,11 @@
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_TRACKING_handler_wire_deposits (struct TMH_RequestHandler *rh,
|
TMH_TRACKING_handler_track_transfer (struct TMH_RequestHandler *rh,
|
||||||
struct MHD_Connection *connection,
|
struct MHD_Connection *connection,
|
||||||
void **connection_cls,
|
void **connection_cls,
|
||||||
const char *upload_data,
|
const char *upload_data,
|
||||||
size_t *upload_data_size)
|
size_t *upload_data_size)
|
||||||
{
|
{
|
||||||
struct TALER_WireTransferIdentifierRawP wtid;
|
struct TALER_WireTransferIdentifierRawP wtid;
|
||||||
int res;
|
int res;
|
||||||
@ -57,7 +57,7 @@ TMH_TRACKING_handler_wire_deposits (struct TMH_RequestHandler *rh,
|
|||||||
return MHD_NO; /* internal error */
|
return MHD_NO; /* internal error */
|
||||||
if (GNUNET_NO == res)
|
if (GNUNET_NO == res)
|
||||||
return MHD_YES; /* parse error */
|
return MHD_YES; /* parse error */
|
||||||
return TMH_DB_execute_wire_deposits (connection,
|
return TMH_DB_execute_track_transfer (connection,
|
||||||
&wtid);
|
&wtid);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -74,14 +74,14 @@ TMH_TRACKING_handler_wire_deposits (struct TMH_RequestHandler *rh,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
static int
|
static int
|
||||||
check_and_handle_deposit_wtid_request (struct MHD_Connection *connection,
|
check_and_handle_track_transaction_request (struct MHD_Connection *connection,
|
||||||
const struct TALER_DepositTrackPS *tps,
|
const struct TALER_DepositTrackPS *tps,
|
||||||
struct TALER_MerchantPublicKeyP *merchant_pub,
|
struct TALER_MerchantPublicKeyP *merchant_pub,
|
||||||
struct TALER_MerchantSignatureP *merchant_sig,
|
struct TALER_MerchantSignatureP *merchant_sig,
|
||||||
uint64_t transaction_id)
|
uint64_t transaction_id)
|
||||||
{
|
{
|
||||||
if (GNUNET_OK !=
|
if (GNUNET_OK !=
|
||||||
GNUNET_CRYPTO_eddsa_verify (TALER_SIGNATURE_MERCHANT_DEPOSIT_WTID,
|
GNUNET_CRYPTO_eddsa_verify (TALER_SIGNATURE_MERCHANT_TRACK_TRANSACTION,
|
||||||
&tps->purpose,
|
&tps->purpose,
|
||||||
&merchant_sig->eddsa_sig,
|
&merchant_sig->eddsa_sig,
|
||||||
&merchant_pub->eddsa_pub))
|
&merchant_pub->eddsa_pub))
|
||||||
@ -90,7 +90,7 @@ check_and_handle_deposit_wtid_request (struct MHD_Connection *connection,
|
|||||||
return TMH_RESPONSE_reply_signature_invalid (connection,
|
return TMH_RESPONSE_reply_signature_invalid (connection,
|
||||||
"merchant_sig");
|
"merchant_sig");
|
||||||
}
|
}
|
||||||
return TMH_DB_execute_deposit_wtid (connection,
|
return TMH_DB_execute_track_transaction (connection,
|
||||||
&tps->h_contract,
|
&tps->h_contract,
|
||||||
&tps->h_wire,
|
&tps->h_wire,
|
||||||
&tps->coin_pub,
|
&tps->coin_pub,
|
||||||
@ -100,7 +100,7 @@ check_and_handle_deposit_wtid_request (struct MHD_Connection *connection,
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle a "/deposit/wtid" request.
|
* Handle a "/track/transaction" request.
|
||||||
*
|
*
|
||||||
* @param rh context of the handler
|
* @param rh context of the handler
|
||||||
* @param connection the MHD connection to handle
|
* @param connection the MHD connection to handle
|
||||||
@ -110,11 +110,11 @@ check_and_handle_deposit_wtid_request (struct MHD_Connection *connection,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_TRACKING_handler_deposit_wtid (struct TMH_RequestHandler *rh,
|
TMH_TRACKING_handler_track_transaction (struct TMH_RequestHandler *rh,
|
||||||
struct MHD_Connection *connection,
|
struct MHD_Connection *connection,
|
||||||
void **connection_cls,
|
void **connection_cls,
|
||||||
const char *upload_data,
|
const char *upload_data,
|
||||||
size_t *upload_data_size)
|
size_t *upload_data_size)
|
||||||
{
|
{
|
||||||
int res;
|
int res;
|
||||||
json_t *json;
|
json_t *json;
|
||||||
@ -149,13 +149,13 @@ TMH_TRACKING_handler_deposit_wtid (struct TMH_RequestHandler *rh,
|
|||||||
return (GNUNET_NO == res) ? MHD_YES : MHD_NO;
|
return (GNUNET_NO == res) ? MHD_YES : MHD_NO;
|
||||||
}
|
}
|
||||||
tps.purpose.size = htonl (sizeof (struct TALER_DepositTrackPS));
|
tps.purpose.size = htonl (sizeof (struct TALER_DepositTrackPS));
|
||||||
tps.purpose.purpose = htonl (TALER_SIGNATURE_MERCHANT_DEPOSIT_WTID);
|
tps.purpose.purpose = htonl (TALER_SIGNATURE_MERCHANT_TRACK_TRANSACTION);
|
||||||
tps.transaction_id = GNUNET_htonll (transaction_id);
|
tps.transaction_id = GNUNET_htonll (transaction_id);
|
||||||
res = check_and_handle_deposit_wtid_request (connection,
|
res = check_and_handle_track_transaction_request (connection,
|
||||||
&tps,
|
&tps,
|
||||||
&tps.merchant,
|
&tps.merchant,
|
||||||
&merchant_sig,
|
&merchant_sig,
|
||||||
transaction_id);
|
transaction_id);
|
||||||
GNUNET_JSON_parse_free (spec);
|
GNUNET_JSON_parse_free (spec);
|
||||||
json_decref (json);
|
json_decref (json);
|
||||||
return res;
|
return res;
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle a "/wire/deposits" request.
|
* Handle a "/track/transfer" request.
|
||||||
*
|
*
|
||||||
* @param rh context of the handler
|
* @param rh context of the handler
|
||||||
* @param connection the MHD connection to handle
|
* @param connection the MHD connection to handle
|
||||||
@ -37,15 +37,15 @@
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_TRACKING_handler_wire_deposits (struct TMH_RequestHandler *rh,
|
TMH_TRACKING_handler_track_transfer (struct TMH_RequestHandler *rh,
|
||||||
struct MHD_Connection *connection,
|
struct MHD_Connection *connection,
|
||||||
void **connection_cls,
|
void **connection_cls,
|
||||||
const char *upload_data,
|
const char *upload_data,
|
||||||
size_t *upload_data_size);
|
size_t *upload_data_size);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle a "/deposit/wtid" request.
|
* Handle a "/track/transaction" request.
|
||||||
*
|
*
|
||||||
* @param rh context of the handler
|
* @param rh context of the handler
|
||||||
* @param connection the MHD connection to handle
|
* @param connection the MHD connection to handle
|
||||||
@ -55,11 +55,11 @@ TMH_TRACKING_handler_wire_deposits (struct TMH_RequestHandler *rh,
|
|||||||
* @return MHD result code
|
* @return MHD result code
|
||||||
*/
|
*/
|
||||||
int
|
int
|
||||||
TMH_TRACKING_handler_deposit_wtid (struct TMH_RequestHandler *rh,
|
TMH_TRACKING_handler_track_transaction (struct TMH_RequestHandler *rh,
|
||||||
struct MHD_Connection *connection,
|
struct MHD_Connection *connection,
|
||||||
void **connection_cls,
|
void **connection_cls,
|
||||||
const char *upload_data,
|
const char *upload_data,
|
||||||
size_t *upload_data_size);
|
size_t *upload_data_size);
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -3945,7 +3945,7 @@ postgres_wire_lookup_deposit_wtid (void *cls,
|
|||||||
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
||||||
const struct TALER_MerchantPublicKeyP *merchant_pub,
|
const struct TALER_MerchantPublicKeyP *merchant_pub,
|
||||||
uint64_t transaction_id,
|
uint64_t transaction_id,
|
||||||
TALER_EXCHANGEDB_DepositWtidCallback cb,
|
TALER_EXCHANGEDB_TrackTransactionCallback cb,
|
||||||
void *cb_cls)
|
void *cb_cls)
|
||||||
{
|
{
|
||||||
PGresult *result;
|
PGresult *result;
|
||||||
|
@ -1093,19 +1093,19 @@ void
|
|||||||
TALER_EXCHANGE_admin_add_incoming_cancel (struct TALER_EXCHANGE_AdminAddIncomingHandle *aai);
|
TALER_EXCHANGE_admin_add_incoming_cancel (struct TALER_EXCHANGE_AdminAddIncomingHandle *aai);
|
||||||
|
|
||||||
|
|
||||||
/* ********************* /wire/deposits *********************** */
|
/* ********************* /track/transfer *********************** */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief A /wire/deposits Handle
|
* @brief A /track/transfer Handle
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_WireDepositsHandle;
|
struct TALER_EXCHANGE_TrackTransferHandle;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Details for one of the /deposit operations that the
|
* Details for one of the /deposit operations that the
|
||||||
* exchange combined into a single wire transfer.
|
* exchange combined into a single wire transfer.
|
||||||
*/
|
*/
|
||||||
struct TALER_WireDepositDetails
|
struct TALER_TrackTransferDetails
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Hash of the contract.
|
* Hash of the contract.
|
||||||
@ -1159,7 +1159,7 @@ typedef void
|
|||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct TALER_Amount *total_amount,
|
const struct TALER_Amount *total_amount,
|
||||||
unsigned int details_length,
|
unsigned int details_length,
|
||||||
const struct TALER_WireDepositDetails *details);
|
const struct TALER_TrackTransferDetails *details);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1172,11 +1172,11 @@ typedef void
|
|||||||
* @param cb_cls closure for @a cb
|
* @param cb_cls closure for @a cb
|
||||||
* @return handle to cancel operation
|
* @return handle to cancel operation
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_WireDepositsHandle *
|
struct TALER_EXCHANGE_TrackTransferHandle *
|
||||||
TALER_EXCHANGE_wire_deposits (struct TALER_EXCHANGE_Handle *exchange,
|
TALER_EXCHANGE_track_transfer (struct TALER_EXCHANGE_Handle *exchange,
|
||||||
const struct TALER_WireTransferIdentifierRawP *wtid,
|
const struct TALER_WireTransferIdentifierRawP *wtid,
|
||||||
TALER_EXCHANGE_WireDepositsCallback cb,
|
TALER_EXCHANGE_WireDepositsCallback cb,
|
||||||
void *cb_cls);
|
void *cb_cls);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1186,16 +1186,16 @@ TALER_EXCHANGE_wire_deposits (struct TALER_EXCHANGE_Handle *exchange,
|
|||||||
* @param wdh the wire deposits request handle
|
* @param wdh the wire deposits request handle
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
TALER_EXCHANGE_wire_deposits_cancel (struct TALER_EXCHANGE_WireDepositsHandle *wdh);
|
TALER_EXCHANGE_track_transfer_cancel (struct TALER_EXCHANGE_TrackTransferHandle *wdh);
|
||||||
|
|
||||||
|
|
||||||
/* ********************* /deposit/wtid *********************** */
|
/* ********************* /track/transaction *********************** */
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief A /deposit/wtid Handle
|
* @brief A /track/transaction Handle
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_DepositWtidHandle;
|
struct TALER_EXCHANGE_TrackTransactionHandle;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1212,17 +1212,17 @@ struct TALER_EXCHANGE_DepositWtidHandle;
|
|||||||
* @param coin_contribution contribution to the @a total_amount of the deposited coin (may be NULL)
|
* @param coin_contribution contribution to the @a total_amount of the deposited coin (may be NULL)
|
||||||
*/
|
*/
|
||||||
typedef void
|
typedef void
|
||||||
(*TALER_EXCHANGE_DepositWtidCallback)(void *cls,
|
(*TALER_EXCHANGE_TrackTransactionCallback)(void *cls,
|
||||||
unsigned int http_status,
|
unsigned int http_status,
|
||||||
const struct TALER_ExchangePublicKeyP *sign_key,
|
const struct TALER_ExchangePublicKeyP *sign_key,
|
||||||
const json_t *json,
|
const json_t *json,
|
||||||
const struct TALER_WireTransferIdentifierRawP *wtid,
|
const struct TALER_WireTransferIdentifierRawP *wtid,
|
||||||
struct GNUNET_TIME_Absolute execution_time,
|
struct GNUNET_TIME_Absolute execution_time,
|
||||||
const struct TALER_Amount *coin_contribution);
|
const struct TALER_Amount *coin_contribution);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Obtain the wire transfer details for a given deposit.
|
* Obtain the wire transfer details for a given transaction.
|
||||||
*
|
*
|
||||||
* @param exchange the exchange to query
|
* @param exchange the exchange to query
|
||||||
* @param merchant_priv the merchant's private key
|
* @param merchant_priv the merchant's private key
|
||||||
@ -1234,15 +1234,15 @@ typedef void
|
|||||||
* @param cb_cls closure for @a cb
|
* @param cb_cls closure for @a cb
|
||||||
* @return handle to abort request
|
* @return handle to abort request
|
||||||
*/
|
*/
|
||||||
struct TALER_EXCHANGE_DepositWtidHandle *
|
struct TALER_EXCHANGE_TrackTransactionHandle *
|
||||||
TALER_EXCHANGE_deposit_wtid (struct TALER_EXCHANGE_Handle *exchange,
|
TALER_EXCHANGE_track_transaction (struct TALER_EXCHANGE_Handle *exchange,
|
||||||
const struct TALER_MerchantPrivateKeyP *merchant_priv,
|
const struct TALER_MerchantPrivateKeyP *merchant_priv,
|
||||||
const struct GNUNET_HashCode *h_wire,
|
const struct GNUNET_HashCode *h_wire,
|
||||||
const struct GNUNET_HashCode *h_contract,
|
const struct GNUNET_HashCode *h_contract,
|
||||||
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
||||||
uint64_t transaction_id,
|
uint64_t transaction_id,
|
||||||
TALER_EXCHANGE_DepositWtidCallback cb,
|
TALER_EXCHANGE_TrackTransactionCallback cb,
|
||||||
void *cb_cls);
|
void *cb_cls);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1252,7 +1252,7 @@ TALER_EXCHANGE_deposit_wtid (struct TALER_EXCHANGE_Handle *exchange,
|
|||||||
* @param dwh the wire deposits request handle
|
* @param dwh the wire deposits request handle
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
TALER_EXCHANGE_deposit_wtid_cancel (struct TALER_EXCHANGE_DepositWtidHandle *dwh);
|
TALER_EXCHANGE_track_transaction_cancel (struct TALER_EXCHANGE_TrackTransactionHandle *dwh);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -654,7 +654,7 @@ typedef void
|
|||||||
* when we expect it to be done (if @a wtid was NULL)
|
* when we expect it to be done (if @a wtid was NULL)
|
||||||
*/
|
*/
|
||||||
typedef void
|
typedef void
|
||||||
(*TALER_EXCHANGEDB_DepositWtidCallback)(void *cls,
|
(*TALER_EXCHANGEDB_TrackTransactionCallback)(void *cls,
|
||||||
const struct TALER_WireTransferIdentifierRawP *wtid,
|
const struct TALER_WireTransferIdentifierRawP *wtid,
|
||||||
const struct TALER_Amount *coin_contribution,
|
const struct TALER_Amount *coin_contribution,
|
||||||
const struct TALER_Amount *coin_fee,
|
const struct TALER_Amount *coin_fee,
|
||||||
@ -1415,7 +1415,7 @@ struct TALER_EXCHANGEDB_Plugin
|
|||||||
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
const struct TALER_CoinSpendPublicKeyP *coin_pub,
|
||||||
const struct TALER_MerchantPublicKeyP *merchant_pub,
|
const struct TALER_MerchantPublicKeyP *merchant_pub,
|
||||||
uint64_t transaction_id,
|
uint64_t transaction_id,
|
||||||
TALER_EXCHANGEDB_DepositWtidCallback cb,
|
TALER_EXCHANGEDB_TrackTransactionCallback cb,
|
||||||
void *cb_cls);
|
void *cb_cls);
|
||||||
|
|
||||||
|
|
||||||
|
@ -108,7 +108,7 @@
|
|||||||
#define TALER_SIGNATURE_EXCHANGE_KEY_SET 1035
|
#define TALER_SIGNATURE_EXCHANGE_KEY_SET 1035
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Signature where the Exchange confirms the /deposit/wtid response.
|
* Signature where the Exchange confirms the /track/transaction response.
|
||||||
*/
|
*/
|
||||||
#define TALER_SIGNATURE_EXCHANGE_CONFIRM_WIRE 1036
|
#define TALER_SIGNATURE_EXCHANGE_CONFIRM_WIRE 1036
|
||||||
|
|
||||||
@ -152,7 +152,7 @@
|
|||||||
* Signature where the merchant confirms that he needs the wire
|
* Signature where the merchant confirms that he needs the wire
|
||||||
* transfer identifier for a deposit operation.
|
* transfer identifier for a deposit operation.
|
||||||
*/
|
*/
|
||||||
#define TALER_SIGNATURE_MERCHANT_DEPOSIT_WTID 1103
|
#define TALER_SIGNATURE_MERCHANT_TRACK_TRANSACTION 1103
|
||||||
|
|
||||||
|
|
||||||
/*********************/
|
/*********************/
|
||||||
@ -932,7 +932,7 @@ struct TALER_MasterWireDetailsPS
|
|||||||
struct TALER_DepositTrackPS
|
struct TALER_DepositTrackPS
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Purpose must be #TALER_SIGNATURE_MERCHANT_DEPOSIT_WTID.
|
* Purpose must be #TALER_SIGNATURE_MERCHANT_TRACK_TRANSACTION.
|
||||||
*/
|
*/
|
||||||
struct GNUNET_CRYPTO_EccSignaturePurpose purpose;
|
struct GNUNET_CRYPTO_EccSignaturePurpose purpose;
|
||||||
|
|
||||||
@ -975,7 +975,7 @@ struct TALER_DepositTrackPS
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Format internally used for packing the detailed information
|
* @brief Format internally used for packing the detailed information
|
||||||
* to generate the signature for /wire/deposits signatures.
|
* to generate the signature for /track/transfer signatures.
|
||||||
*/
|
*/
|
||||||
struct TALER_WireDepositDetailP
|
struct TALER_WireDepositDetailP
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user