-make econtract optional as per design
This commit is contained in:
parent
31f74059e0
commit
ce515a1f75
@ -135,6 +135,12 @@ struct PurseCreateContext
|
||||
* Minimum age for deposits into this purse.
|
||||
*/
|
||||
uint32_t min_age;
|
||||
|
||||
/**
|
||||
* Do we have an @e econtract?
|
||||
*/
|
||||
bool no_econtract;
|
||||
|
||||
};
|
||||
|
||||
|
||||
@ -370,6 +376,8 @@ create_transaction (void *cls,
|
||||
}
|
||||
}
|
||||
/* 3) if present, persist contract */
|
||||
if (! pcc->no_econtract)
|
||||
{
|
||||
in_conflict = true;
|
||||
qs = TEH_plugin->insert_contract (TEH_plugin->cls,
|
||||
pcc->purse_pub,
|
||||
@ -426,6 +434,7 @@ create_transaction (void *cls,
|
||||
GNUNET_free (econtract.econtract);
|
||||
return GNUNET_DB_STATUS_HARD_ERROR;
|
||||
}
|
||||
}
|
||||
return qs;
|
||||
}
|
||||
|
||||
@ -664,7 +673,6 @@ TEH_handler_purses_create (
|
||||
json_t *deposits;
|
||||
json_t *deposit;
|
||||
unsigned int idx;
|
||||
bool no_econtract = true;
|
||||
struct GNUNET_JSON_Specification spec[] = {
|
||||
TALER_JSON_spec_amount ("amount",
|
||||
TEH_currency,
|
||||
@ -674,7 +682,7 @@ TEH_handler_purses_create (
|
||||
GNUNET_JSON_spec_mark_optional (
|
||||
TALER_JSON_spec_econtract ("econtract",
|
||||
&pcc.econtract),
|
||||
&no_econtract),
|
||||
&pcc.no_econtract),
|
||||
GNUNET_JSON_spec_fixed_auto ("merge_pub",
|
||||
&pcc.merge_pub),
|
||||
GNUNET_JSON_spec_fixed_auto ("purse_sig",
|
||||
@ -815,7 +823,7 @@ TEH_handler_purses_create (
|
||||
TALER_EC_EXCHANGE_PURSE_CREATE_SIGNATURE_INVALID,
|
||||
NULL);
|
||||
}
|
||||
if ( (! no_econtract) &&
|
||||
if ( (! pcc.no_econtract) &&
|
||||
(GNUNET_OK !=
|
||||
TALER_wallet_econtract_upload_verify (pcc.econtract.econtract,
|
||||
pcc.econtract.econtract_size,
|
||||
|
Loading…
Reference in New Issue
Block a user