implement 'lost' field for #7883
This commit is contained in:
parent
e984dbd8f4
commit
a5451527cb
@ -1 +1 @@
|
|||||||
Subproject commit fa4729db5637c82d5fc6f5bb7021f6c350c8c5a6
|
Subproject commit 66e99d09d4351bb6e6c5fd442f14ec7cf1363a81
|
@ -2960,8 +2960,18 @@ finish_keys_response (struct TEH_KeyStateHandle *ksh)
|
|||||||
/* Now that we have found/created the right group, add the
|
/* Now that we have found/created the right group, add the
|
||||||
denomination to the list */
|
denomination to the list */
|
||||||
{
|
{
|
||||||
|
struct HelperDenomination *hd;
|
||||||
struct GNUNET_JSON_PackSpec key_spec;
|
struct GNUNET_JSON_PackSpec key_spec;
|
||||||
|
bool private_key_lost;
|
||||||
|
|
||||||
|
hd = GNUNET_CONTAINER_multihashmap_get (ksh->helpers->denom_keys,
|
||||||
|
&dk->h_denom_pub.hash);
|
||||||
|
private_key_lost
|
||||||
|
= (NULL == hd) ||
|
||||||
|
GNUNET_TIME_absolute_is_past (
|
||||||
|
GNUNET_TIME_absolute_add (
|
||||||
|
hd->start_time.abs_time,
|
||||||
|
hd->validity_duration));
|
||||||
switch (meta.cipher)
|
switch (meta.cipher)
|
||||||
{
|
{
|
||||||
case TALER_DENOMINATION_RSA:
|
case TALER_DENOMINATION_RSA:
|
||||||
@ -2984,6 +2994,12 @@ finish_keys_response (struct TEH_KeyStateHandle *ksh)
|
|||||||
entry = GNUNET_JSON_PACK (
|
entry = GNUNET_JSON_PACK (
|
||||||
GNUNET_JSON_pack_data_auto ("master_sig",
|
GNUNET_JSON_pack_data_auto ("master_sig",
|
||||||
&dk->master_sig),
|
&dk->master_sig),
|
||||||
|
GNUNET_JSON_pack_allow_null (
|
||||||
|
private_key_lost
|
||||||
|
? GNUNET_JSON_pack_bool ("lost",
|
||||||
|
true)
|
||||||
|
: GNUNET_JSON_pack_string ("dummy",
|
||||||
|
NULL)),
|
||||||
GNUNET_JSON_pack_timestamp ("stamp_start",
|
GNUNET_JSON_pack_timestamp ("stamp_start",
|
||||||
dk->meta.start),
|
dk->meta.start),
|
||||||
GNUNET_JSON_pack_timestamp ("stamp_expire_withdraw",
|
GNUNET_JSON_pack_timestamp ("stamp_expire_withdraw",
|
||||||
|
@ -120,6 +120,13 @@ struct TALER_EXCHANGE_DenomPublicKey
|
|||||||
*/
|
*/
|
||||||
struct TALER_DenomFeeSet fees;
|
struct TALER_DenomFeeSet fees;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set to true if the private denomination key has been
|
||||||
|
* lost by the exchange and thus the key cannot be
|
||||||
|
* used for withdrawing at this time.
|
||||||
|
*/
|
||||||
|
bool lost;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set to true if this denomination key has been
|
* Set to true if this denomination key has been
|
||||||
* revoked by the exchange.
|
* revoked by the exchange.
|
||||||
|
@ -246,6 +246,10 @@ parse_json_denomkey_partially (
|
|||||||
&denom_key->valid_from),
|
&denom_key->valid_from),
|
||||||
GNUNET_JSON_spec_timestamp ("stamp_expire_legal",
|
GNUNET_JSON_spec_timestamp ("stamp_expire_legal",
|
||||||
&denom_key->expire_legal),
|
&denom_key->expire_legal),
|
||||||
|
GNUNET_JSON_spec_mark_optional (
|
||||||
|
GNUNET_JSON_spec_bool ("lost",
|
||||||
|
&denom_key->lost),
|
||||||
|
NULL),
|
||||||
TALER_JSON_spec_denom_pub_cipher (NULL,
|
TALER_JSON_spec_denom_pub_cipher (NULL,
|
||||||
cipher,
|
cipher,
|
||||||
&denom_key->key),
|
&denom_key->key),
|
||||||
|
Loading…
Reference in New Issue
Block a user