add argument to TALER_EXCHANGE_check_keys_current() to allow forcing the download
This commit is contained in:
parent
e33d72683c
commit
b46735fbaf
1
.gitignore
vendored
1
.gitignore
vendored
@ -86,3 +86,4 @@ doc/manual/manual.tp
|
|||||||
doc/manual/manual.vr
|
doc/manual/manual.vr
|
||||||
contrib/taler-exchange.tag
|
contrib/taler-exchange.tag
|
||||||
doxygen-doc/
|
doxygen-doc/
|
||||||
|
src/exchange-lib/test_exchange_api_keys_cherry_picking
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
Wed Sep 13 14:06:44 CEST 2017
|
||||||
|
Add argument to TALER_EXCHANGE_check_keys_current()
|
||||||
|
to force download even if /keys are still considered
|
||||||
|
current. -CG
|
||||||
|
|
||||||
Fri Jul 14 17:38:54 CEST 2017
|
Fri Jul 14 17:38:54 CEST 2017
|
||||||
Fix #4751 by not allowing denomination deletion (GC)
|
Fix #4751 by not allowing denomination deletion (GC)
|
||||||
to cascade into reserve_out table (and tolerating such
|
to cascade into reserve_out table (and tolerating such
|
||||||
|
@ -770,14 +770,17 @@ request_keys (struct TALER_EXCHANGE_Handle *exchange);
|
|||||||
* not trigger download.
|
* not trigger download.
|
||||||
*
|
*
|
||||||
* @param exchange exchange to check keys for
|
* @param exchange exchange to check keys for
|
||||||
|
* @param force_download #GNUNET_YES to force download even if /keys is still valid
|
||||||
* @return until when the response is current, 0 if we are re-downloading
|
* @return until when the response is current, 0 if we are re-downloading
|
||||||
*/
|
*/
|
||||||
struct GNUNET_TIME_Absolute
|
struct GNUNET_TIME_Absolute
|
||||||
TALER_EXCHANGE_check_keys_current (struct TALER_EXCHANGE_Handle *exchange)
|
TALER_EXCHANGE_check_keys_current (struct TALER_EXCHANGE_Handle *exchange,
|
||||||
|
int force_download)
|
||||||
{
|
{
|
||||||
if (NULL != exchange->kr)
|
if (NULL != exchange->kr)
|
||||||
return GNUNET_TIME_UNIT_ZERO_ABS;
|
return GNUNET_TIME_UNIT_ZERO_ABS;
|
||||||
if (0 < GNUNET_TIME_absolute_get_remaining (exchange->key_data_expiration).rel_value_us)
|
if ( (GNUNET_NO == force_download) &&
|
||||||
|
(0 < GNUNET_TIME_absolute_get_remaining (exchange->key_data_expiration).rel_value_us) )
|
||||||
return exchange->key_data_expiration;
|
return exchange->key_data_expiration;
|
||||||
request_keys (exchange);
|
request_keys (exchange);
|
||||||
return GNUNET_TIME_UNIT_ZERO_ABS;
|
return GNUNET_TIME_UNIT_ZERO_ABS;
|
||||||
@ -1280,7 +1283,8 @@ TALER_EXCHANGE_get_denomination_key_by_hash (const struct TALER_EXCHANGE_Keys *k
|
|||||||
const struct TALER_EXCHANGE_Keys *
|
const struct TALER_EXCHANGE_Keys *
|
||||||
TALER_EXCHANGE_get_keys (struct TALER_EXCHANGE_Handle *exchange)
|
TALER_EXCHANGE_get_keys (struct TALER_EXCHANGE_Handle *exchange)
|
||||||
{
|
{
|
||||||
(void) TALER_EXCHANGE_check_keys_current (exchange);
|
(void) TALER_EXCHANGE_check_keys_current (exchange,
|
||||||
|
GNUNET_NO);
|
||||||
return &exchange->key_data;
|
return &exchange->key_data;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1295,7 +1299,8 @@ TALER_EXCHANGE_get_keys (struct TALER_EXCHANGE_Handle *exchange)
|
|||||||
json_t *
|
json_t *
|
||||||
TALER_EXCHANGE_get_keys_raw (struct TALER_EXCHANGE_Handle *exchange)
|
TALER_EXCHANGE_get_keys_raw (struct TALER_EXCHANGE_Handle *exchange)
|
||||||
{
|
{
|
||||||
(void) TALER_EXCHANGE_check_keys_current (exchange);
|
(void) TALER_EXCHANGE_check_keys_current (exchange,
|
||||||
|
GNUNET_NO);
|
||||||
return json_deep_copy (exchange->key_data_raw);
|
return json_deep_copy (exchange->key_data_raw);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -367,10 +367,12 @@ TALER_EXCHANGE_get_keys (struct TALER_EXCHANGE_Handle *exchange);
|
|||||||
* not, trigger /keys download.
|
* not, trigger /keys download.
|
||||||
*
|
*
|
||||||
* @param exchange exchange to check keys for
|
* @param exchange exchange to check keys for
|
||||||
|
* @param force_download #GNUNET_YES to force download even if /keys is still valid
|
||||||
* @return until when the response is current, 0 if we are re-downloading
|
* @return until when the response is current, 0 if we are re-downloading
|
||||||
*/
|
*/
|
||||||
struct GNUNET_TIME_Absolute
|
struct GNUNET_TIME_Absolute
|
||||||
TALER_EXCHANGE_check_keys_current (struct TALER_EXCHANGE_Handle *exchange);
|
TALER_EXCHANGE_check_keys_current (struct TALER_EXCHANGE_Handle *exchange,
|
||||||
|
int force_download);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user