diff options
Diffstat (limited to 'src/exchange/taler-exchange-httpd_wire.c')
-rw-r--r-- | src/exchange/taler-exchange-httpd_wire.c | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/src/exchange/taler-exchange-httpd_wire.c b/src/exchange/taler-exchange-httpd_wire.c index 9c8b2ff13..26cbb1870 100644 --- a/src/exchange/taler-exchange-httpd_wire.c +++ b/src/exchange/taler-exchange-httpd_wire.c @@ -120,9 +120,7 @@ TEH_WIRE_handler_wire (struct TEH_RequestHandler *rh, const char *upload_data, size_t *upload_data_size) { - if (NULL == wire_methods) - wire_methods = TEH_VALIDATION_get_wire_methods ("exchange-wire-incoming"); - + GNUNET_assert (NULL != wire_methods); return TEH_RESPONSE_reply_json (connection, wire_methods, MHD_HTTP_OK); @@ -130,6 +128,27 @@ TEH_WIRE_handler_wire (struct TEH_RequestHandler *rh, /** + * Initialize wire subsystem. + * + * @return #GNUNET_OK on success, #GNUNET_SYSERR if we found no valid + * wire methods + */ +int +TEH_WIRE_init () +{ + wire_methods = TEH_VALIDATION_get_wire_methods ("exchange-wire-incoming"); + if ( (NULL == wire_methods) || + (0 == json_object_size (wire_methods)) ) + { + GNUNET_log (GNUNET_ERROR_TYPE_ERROR, + "Failed to find properly configured wire transfer method\n"); + return GNUNET_SYSERR; + } + return GNUNET_OK; +} + + +/** * Initialize libgcrypt. */ void __attribute__ ((destructor)) |