summaryrefslogtreecommitdiff
path: root/src/exchange/taler-exchange-httpd.c
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2022-10-12 14:48:49 +0200
committerChristian Grothoff <christian@grothoff.org>2022-10-12 14:48:56 +0200
commit3b34acdb72cd450974a3bbde6169f1bf9644a302 (patch)
tree258cf3fd47067df77aee2e9ebcc12a1db75cc1da /src/exchange/taler-exchange-httpd.c
parent3036c21283921015339a4b33b0315b98762ace7c (diff)
downloadexchange-3b34acdb72cd450974a3bbde6169f1bf9644a302.tar.gz
exchange-3b34acdb72cd450974a3bbde6169f1bf9644a302.tar.bz2
exchange-3b34acdb72cd450974a3bbde6169f1bf9644a302.zip
-update to latest GNUNET_PQ_make_prepare() API
Diffstat (limited to 'src/exchange/taler-exchange-httpd.c')
-rw-r--r--src/exchange/taler-exchange-httpd.c51
1 files changed, 47 insertions, 4 deletions
diff --git a/src/exchange/taler-exchange-httpd.c b/src/exchange/taler-exchange-httpd.c
index 9349a5a21..a45c9d2b4 100644
--- a/src/exchange/taler-exchange-httpd.c
+++ b/src/exchange/taler-exchange-httpd.c
@@ -55,8 +55,12 @@
#include "taler-exchange-httpd_recoup-refresh.h"
#include "taler-exchange-httpd_refreshes_reveal.h"
#include "taler-exchange-httpd_refund.h"
+#include "taler-exchange-httpd_reserves_attest.h"
+#include "taler-exchange-httpd_reserves_close.h"
#include "taler-exchange-httpd_reserves_get.h"
+#include "taler-exchange-httpd_reserves_get_attest.h"
#include "taler-exchange-httpd_reserves_history.h"
+#include "taler-exchange-httpd_reserves_open.h"
#include "taler-exchange-httpd_reserves_purse.h"
#include "taler-exchange-httpd_reserves_status.h"
#include "taler-exchange-httpd_terms.h"
@@ -361,14 +365,14 @@ handle_post_reserves (struct TEH_RequestContext *rc,
} h[] = {
{
- .op = "withdraw",
- .handler = &TEH_handler_withdraw
- },
- {
.op = "batch-withdraw",
.handler = &TEH_handler_batch_withdraw
},
{
+ .op = "withdraw",
+ .handler = &TEH_handler_withdraw
+ },
+ {
.op = "status",
.handler = &TEH_handler_reserves_status
},
@@ -381,6 +385,18 @@ handle_post_reserves (struct TEH_RequestContext *rc,
.handler = &TEH_handler_reserves_purse
},
{
+ .op = "open",
+ .handler = &TEH_handler_reserves_open
+ },
+ {
+ .op = "attest",
+ .handler = &TEH_handler_reserves_attest
+ },
+ {
+ .op = "close",
+ .handler = &TEH_handler_reserves_close
+ },
+ {
.op = NULL,
.handler = NULL
},
@@ -1039,6 +1055,27 @@ handle_post_auditors (struct TEH_RequestContext *rc,
/**
+ * Handle a GET "/reserves/$RID/$XXX" request.
+ *
+ * @param rc request context
+ * @param args array of additional options (length: 1, just the reserve_pub)
+ * @return MHD result code
+ */
+static MHD_RESULT
+handler_reserves_get3 (struct TEH_RequestContext *rc,
+ const char *const args[3])
+{
+ if (0 == strcmp (args[2],
+ "attest"))
+ return TEH_handler_reserves_get_attest (rc,
+ args);
+ GNUNET_break_op (0);
+ return r404 (rc->connection,
+ "/reserves/$RID/*");
+}
+
+
+/**
* Handle incoming HTTP request.
*
* @param cls closure for MHD daemon (unused)
@@ -1153,6 +1190,12 @@ handle_mhd_request (void *cls,
},
{
.url = "reserves",
+ .method = MHD_HTTP_METHOD_GET,
+ .handler.get = &handler_reserves_get3,
+ .nargs = 3
+ },
+ {
+ .url = "reserves",
.method = MHD_HTTP_METHOD_POST,
.handler.post = &handle_post_reserves,
.nargs = 2