fix error code use

This commit is contained in:
Christian Grothoff 2020-01-17 03:42:31 +01:00
parent dcc80fd35d
commit 7995678e77
No known key found for this signature in database
GPG Key ID: 939E6BE1E29FC3CC
3 changed files with 18 additions and 9 deletions

View File

@ -2285,11 +2285,6 @@ TEH_KS_free ()
/**
* Sign the message in @a purpose with the exchange's signing key.
*
* FIXME:
* - Change API to return status code and do not assert on TEH_KS_acquire()
* failures, instead allow caller to handle it (i.e. by returning
* #TALER_EC_EXCHANGE_BAD_CONFIGURATION to application).
*
* @param purpose the message to sign
* @param[out] pub set to the current public signing key of the exchange
* @param[out] sig signature over purpose using current signing key
@ -2451,9 +2446,11 @@ TEH_KS_handler_keys (struct TEH_RequestHandler *rh,
}
if (NULL == krd)
{
/* FIXME: should return 500 response instead... */
GNUNET_break (0);
return MHD_NO;
return TALER_MHD_reply_with_error (connection,
MHD_HTTP_INTERNAL_SERVER_ERROR,
TALER_EC_KEYS_MISSING,
"no key response found");
}
ret = MHD_queue_response (connection,
rh->response_code,

View File

@ -608,10 +608,9 @@ handle_refresh_reveal_json (struct MHD_Connection *connection,
if (NULL == key_state)
{
TALER_LOG_ERROR ("Lacking keys to operate\n");
/* FIXME: use correct EC code! */
return TALER_MHD_reply_with_error (connection,
MHD_HTTP_INTERNAL_SERVER_ERROR,
TALER_EC_REFRESH_REVEAL_SIGNING_ERROR,
TALER_EC_REFRESH_REVEAL_KEYS_MISSING,
"exchange lacks keys");
}

View File

@ -652,6 +652,13 @@ enum TALER_ErrorCode
*/
TALER_EC_REFRESH_REVEAL_LINK_SIGNATURE_INVALID = 1382,
/**
* The exchange failed to generate the signature as it could not find
* the signing key for the denomination. This response is provided
* with HTTP status code MHD_HTTP_INTERNAL_SERVER_ERROR.
*/
TALER_EC_REFRESH_REVEAL_KEYS_MISSING = 1383,
/**
* The coin specified in the link request is unknown to the exchange.
* This response is provided with HTTP status code MHD_HTTP_NOT_FOUND.
@ -939,6 +946,12 @@ enum TALER_ErrorCode
*/
TALER_EC_KEYS_HAVE_NOT_NUMERIC = 1900,
/**
* We currently cannot find any keys. This reponse is provied with an
* HTTP status code of MHD_HTTP_INTERNAL_SERVER_ERROR.
*/
TALER_EC_KEYS_MISSING = 1901,
/**
* The backend could not find the merchant instance specified in the
* request. This response is provided with HTTP status code