do not log error on MHD_HTTP_GONE status code, revocation is a legitimate reply
This commit is contained in:
parent
d986555355
commit
4b9fb610d8
@ -131,7 +131,7 @@ handle_deposit_confirmation_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for auditor deposit confirmation\n",
|
||||
(unsigned int) response_code,
|
||||
hr.ec);
|
||||
GNUNET_break_op (0);
|
||||
|
@ -74,7 +74,7 @@ struct TALER_AUDITOR_ListExchangesHandle
|
||||
|
||||
/**
|
||||
* Function called when we're done processing the
|
||||
* HTTP /deposit-confirmation request.
|
||||
* HTTP /exchanges request.
|
||||
*
|
||||
* @param cls the `struct TALER_AUDITOR_ListExchangesHandle`
|
||||
* @param response_code HTTP response code, 0 on error
|
||||
@ -178,7 +178,7 @@ handle_exchanges_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for auditor list-exchanges request\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
GNUNET_break_op (0);
|
||||
|
@ -110,7 +110,7 @@ handle_auditor_add_denomination_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange auditor-add-denomination\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -361,6 +361,19 @@ handle_deposit_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
break;
|
||||
case MHD_HTTP_FORBIDDEN:
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
/* Nothing really to verify, exchange says one of the signatures is
|
||||
invalid; as we checked them, this should never happen, we
|
||||
should pass the JSON reply to the application */
|
||||
break;
|
||||
case MHD_HTTP_NOT_FOUND:
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
/* Nothing really to verify, this should never
|
||||
happen, we should pass the JSON reply to the application */
|
||||
break;
|
||||
case MHD_HTTP_CONFLICT:
|
||||
/* Double spending; check signatures on transaction history */
|
||||
if (GNUNET_OK !=
|
||||
@ -377,18 +390,13 @@ handle_deposit_finished (void *cls,
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
}
|
||||
break;
|
||||
case MHD_HTTP_FORBIDDEN:
|
||||
case MHD_HTTP_GONE:
|
||||
/* could happen if denomination was revoked */
|
||||
/* Note: one might want to check /keys for revocation
|
||||
signature here, alas tricky in case our /keys
|
||||
is outdated => left to clients */
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
/* Nothing really to verify, exchange says one of the signatures is
|
||||
invalid; as we checked them, this should never happen, we
|
||||
should pass the JSON reply to the application */
|
||||
break;
|
||||
case MHD_HTTP_NOT_FOUND:
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
/* Nothing really to verify, this should never
|
||||
happen, we should pass the JSON reply to the application */
|
||||
break;
|
||||
case MHD_HTTP_INTERNAL_SERVER_ERROR:
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
@ -401,7 +409,7 @@ handle_deposit_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange deposit\n",
|
||||
(unsigned int) response_code,
|
||||
hr.ec);
|
||||
GNUNET_break_op (0);
|
||||
|
@ -254,7 +254,7 @@ handle_deposit_wtid_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange GET deposits\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
GNUNET_break_op (0);
|
||||
|
@ -790,6 +790,9 @@ decode_keys_json (const json_t *resp_obj,
|
||||
GNUNET_break_op (0);
|
||||
return GNUNET_SYSERR;
|
||||
}
|
||||
json_dumpf (resp_obj,
|
||||
stderr,
|
||||
JSON_INDENT (2));
|
||||
/* check the version */
|
||||
{
|
||||
const char *ver;
|
||||
@ -2023,6 +2026,9 @@ TALER_EXCHANGE_test_signing_key (const struct TALER_EXCHANGE_Keys *keys,
|
||||
(0 == GNUNET_memcmp (pub,
|
||||
&keys->sign_keys[i].key)) )
|
||||
return GNUNET_OK;
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
|
||||
"Signing key not valid at time %llu\n",
|
||||
(unsigned long long) now.abs_value_us);
|
||||
return GNUNET_SYSERR;
|
||||
}
|
||||
|
||||
|
@ -403,7 +403,7 @@ handle_link_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange link\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -108,7 +108,7 @@ handle_auditor_disable_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange management auditor disable\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -105,7 +105,7 @@ handle_auditor_enable_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange management auditor enable\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -294,7 +294,7 @@ handle_get_keys_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange management get keys\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -105,7 +105,7 @@ handle_post_keys_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange management post keys\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -106,7 +106,7 @@ handle_revoke_denomination_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange management revoke denomination\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -103,7 +103,7 @@ handle_revoke_signing_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange management revoke signkey\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -106,7 +106,7 @@ handle_set_wire_fee_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange management set wire fee\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -111,7 +111,7 @@ handle_auditor_disable_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d exchange management disable wire\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -107,7 +107,7 @@ handle_auditor_enable_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (json);
|
||||
hr.hint = TALER_JSON_get_error_hint (json);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange management enable wire\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -434,7 +434,7 @@ handle_melt_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange melt\n",
|
||||
(unsigned int) response_code,
|
||||
hr.ec);
|
||||
GNUNET_break_op (0);
|
||||
|
@ -286,7 +286,7 @@ handle_recoup_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange recoup\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
GNUNET_break (0);
|
||||
|
@ -255,6 +255,11 @@ handle_refresh_reveal_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
break;
|
||||
case MHD_HTTP_GONE:
|
||||
/* Server claims key expired or has been revoked */
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
break;
|
||||
case MHD_HTTP_INTERNAL_SERVER_ERROR:
|
||||
/* Server had an internal issue; we should retry, but this API
|
||||
leaves this to the application */
|
||||
@ -267,7 +272,7 @@ handle_refresh_reveal_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange refreshes reveal\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -365,7 +365,7 @@ verify_conflict_history_ok (struct TALER_EXCHANGE_RefundHandle *rh,
|
||||
{
|
||||
/* unexpected type, new version on server? */
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected type `%s' in response\n",
|
||||
"Unexpected type `%s' in response for exchange refund\n",
|
||||
type);
|
||||
GNUNET_break_op (0);
|
||||
return GNUNET_SYSERR;
|
||||
@ -622,7 +622,7 @@ handle_refund_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange refund\n",
|
||||
(unsigned int) response_code,
|
||||
hr.ec);
|
||||
break;
|
||||
|
@ -217,7 +217,7 @@ handle_reserves_get_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for reserves get\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -318,7 +318,7 @@ handle_transfers_get_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for transfers get\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -360,7 +360,7 @@ handle_wire_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange wire\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -275,6 +275,22 @@ handle_reserve_withdraw_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
break;
|
||||
case MHD_HTTP_FORBIDDEN:
|
||||
GNUNET_break_op (0);
|
||||
/* Nothing really to verify, exchange says one of the signatures is
|
||||
invalid; as we checked them, this should never happen, we
|
||||
should pass the JSON reply to the application */
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
break;
|
||||
case MHD_HTTP_NOT_FOUND:
|
||||
/* Nothing really to verify, the exchange basically just says
|
||||
that it doesn't know this reserve. Can happen if we
|
||||
query before the wire transfer went through.
|
||||
We should simply pass the JSON reply to the application. */
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
break;
|
||||
case MHD_HTTP_CONFLICT:
|
||||
/* The exchange says that the reserve has insufficient funds;
|
||||
check the signatures in the history... */
|
||||
@ -292,19 +308,11 @@ handle_reserve_withdraw_finished (void *cls,
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
}
|
||||
break;
|
||||
case MHD_HTTP_FORBIDDEN:
|
||||
GNUNET_break_op (0);
|
||||
/* Nothing really to verify, exchange says one of the signatures is
|
||||
invalid; as we checked them, this should never happen, we
|
||||
should pass the JSON reply to the application */
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
break;
|
||||
case MHD_HTTP_NOT_FOUND:
|
||||
/* Nothing really to verify, the exchange basically just says
|
||||
that it doesn't know this reserve. Can happen if we
|
||||
query before the wire transfer went through.
|
||||
We should simply pass the JSON reply to the application. */
|
||||
case MHD_HTTP_GONE:
|
||||
/* could happen if denomination was revoked */
|
||||
/* Note: one might want to check /keys for revocation
|
||||
signature here, alas tricky in case our /keys
|
||||
is outdated => left to clients */
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
break;
|
||||
@ -320,7 +328,7 @@ handle_reserve_withdraw_finished (void *cls,
|
||||
hr.ec = TALER_JSON_get_error_code (j);
|
||||
hr.hint = TALER_JSON_get_error_hint (j);
|
||||
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
|
||||
"Unexpected response code %u/%d\n",
|
||||
"Unexpected response code %u/%d for exchange withdraw\n",
|
||||
(unsigned int) response_code,
|
||||
(int) hr.ec);
|
||||
break;
|
||||
|
@ -220,17 +220,13 @@ main (int argc,
|
||||
return 77;
|
||||
}
|
||||
libeufin_services = TALER_TESTING_run_libeufin (&bc);
|
||||
if ( (NULL == libeufin_services.nexus) || (NULL ==
|
||||
libeufin_services.sandbox) )
|
||||
{
|
||||
GNUNET_break (0);
|
||||
if ( (NULL == libeufin_services.nexus) ||
|
||||
(NULL == libeufin_services.sandbox) )
|
||||
return 77;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/* no bank service was ever invoked. */
|
||||
GNUNET_break (0);
|
||||
return 77;
|
||||
}
|
||||
|
||||
|
@ -42,18 +42,6 @@
|
||||
*/
|
||||
#define CONFIG_FILE "test_exchange_api_keys_cherry_picking.conf"
|
||||
|
||||
/**
|
||||
* Used to increase the number of denomination keys.
|
||||
*/
|
||||
#define CONFIG_FILE_EXTENDED \
|
||||
"test_exchange_api_keys_cherry_picking_extended.conf"
|
||||
|
||||
/**
|
||||
* Used to increase the number of denomination keys.
|
||||
*/
|
||||
#define CONFIG_FILE_EXTENDED_2 \
|
||||
"test_exchange_api_keys_cherry_picking_extended_2.conf"
|
||||
|
||||
/**
|
||||
* Exchange configuration data.
|
||||
*/
|
||||
|
@ -265,6 +265,9 @@ reserve_withdraw_cb (void *cls,
|
||||
case MHD_HTTP_CONFLICT:
|
||||
/* nothing to check */
|
||||
break;
|
||||
case MHD_HTTP_GONE:
|
||||
/* theoretically could check that the key was actually */
|
||||
break;
|
||||
case MHD_HTTP_NOT_FOUND:
|
||||
/* nothing to check */
|
||||
break;
|
||||
|
@ -129,7 +129,9 @@ TALER_TESTING_run_libeufin (const struct TALER_TESTING_BankConfiguration *bc)
|
||||
NULL);
|
||||
if (NULL == nexus_proc)
|
||||
{
|
||||
GNUNET_break (0);
|
||||
GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_WARNING,
|
||||
"exec",
|
||||
"libeufin-nexus");
|
||||
return ret;
|
||||
}
|
||||
GNUNET_asprintf (&curl_check_cmd,
|
||||
|
Loading…
Reference in New Issue
Block a user