diff options
author | Christian Grothoff <christian@grothoff.org> | 2016-05-26 15:05:33 +0200 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2016-05-26 15:05:33 +0200 |
commit | c3db97acbd8ac8aaec6f334814e7685a8ced6b8b (patch) | |
tree | 0a3e87e073eefe15346d567b208e3b4e14df5424 | |
parent | 5c2403c8aed2cb34efdb7fe25b62e80f27d986d8 (diff) |
remove dead /hash-contract API logic
-rw-r--r-- | src/backend/Makefile.am | 4 | ||||
-rw-r--r-- | src/backend/taler-merchant-httpd.c | 7 | ||||
-rw-r--r-- | src/backend/taler-merchant-httpd_contract.c | 2 | ||||
-rw-r--r-- | src/backend/taler-merchant-httpd_util.c | 105 | ||||
-rw-r--r-- | src/backend/taler-merchant-httpd_util.h | 43 |
5 files changed, 3 insertions, 158 deletions
diff --git a/src/backend/Makefile.am b/src/backend/Makefile.am index 877fb269..1e2f1d1b 100644 --- a/src/backend/Makefile.am +++ b/src/backend/Makefile.am @@ -21,8 +21,8 @@ taler_merchant_httpd_SOURCES = \ taler-merchant-httpd_exchanges.c taler-merchant-httpd_exchanges.h \ taler-merchant-httpd_contract.c taler-merchant-httpd_contract.h \ taler-merchant-httpd_pay.c taler-merchant-httpd_pay.h \ - taler-merchant-httpd_track.c taler-merchant-httpd_track.h \ - taler-merchant-httpd_util.c taler-merchant-httpd_util.h + taler-merchant-httpd_track.c taler-merchant-httpd_track.h + taler_merchant_httpd_LDADD = \ $(top_srcdir)/src/backenddb/libtalermerchantdb.la \ diff --git a/src/backend/taler-merchant-httpd.c b/src/backend/taler-merchant-httpd.c index c286ed81..038f7e6d 100644 --- a/src/backend/taler-merchant-httpd.c +++ b/src/backend/taler-merchant-httpd.c @@ -38,7 +38,6 @@ #include "taler-merchant-httpd_contract.h" #include "taler-merchant-httpd_pay.h" #include "taler-merchant-httpd_track.h" -#include "taler-merchant-httpd_util.h" /** @@ -175,12 +174,6 @@ url_handler (void *cls, { "/", MHD_HTTP_METHOD_GET, "text/plain", "Hello, I'm a merchant's Taler backend. This HTTP server is not for humans.\n", 0, &TMH_MHD_handler_static_response, MHD_HTTP_OK }, - { "/hash-contract", MHD_HTTP_METHOD_POST, "application/json", - NULL, 0, - &MH_handler_hash_contract, MHD_HTTP_OK }, - { "/hash-contract", NULL, "text/plain", - "Only POST is allowed", 0, - &TMH_MHD_handler_send_json_pack_error, MHD_HTTP_METHOD_NOT_ALLOWED }, { "/contract", MHD_HTTP_METHOD_POST, "application/json", NULL, 0, &MH_handler_contract, MHD_HTTP_OK }, diff --git a/src/backend/taler-merchant-httpd_contract.c b/src/backend/taler-merchant-httpd_contract.c index 1f55ada9..0278a7f7 100644 --- a/src/backend/taler-merchant-httpd_contract.c +++ b/src/backend/taler-merchant-httpd_contract.c @@ -57,7 +57,7 @@ check_products (json_t *products) struct GNUNET_JSON_Specification spec[] = { GNUNET_JSON_spec_string ("description", &description), /* FIXME: there are other fields in the product specification - that rre currently not labeled as optional. Maybe check + that are currently not labeled as optional. Maybe check those as well, or make them truly optional. */ GNUNET_JSON_spec_end() }; diff --git a/src/backend/taler-merchant-httpd_util.c b/src/backend/taler-merchant-httpd_util.c deleted file mode 100644 index 9d62722c..00000000 --- a/src/backend/taler-merchant-httpd_util.c +++ /dev/null @@ -1,105 +0,0 @@ -/* - This file is part of TALER - (C) 2014, 2015, 2016 GNUnet e.V. and INRIA - - TALER is free software; you can redistribute it and/or modify it under the - terms of the GNU Affero General Public License as published by the Free Software - Foundation; either version 3, or (at your option) any later version. - - TALER is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - TALER; see the file COPYING. If not, If not, see <http://www.gnu.org/licenses/> -*/ -/** - * @file backend/taler-merchant-httpd_contract.c - * @brief HTTP serving layer mainly intended to communicate with the frontend - * @author Marcello Stanisci - */ -#include "platform.h" -#include <jansson.h> -#include <taler/taler_signatures.h> -#include <taler/taler_json_lib.h> -#include "taler-merchant-httpd.h" -#include "taler-merchant-httpd_parsing.h" -#include "taler-merchant-httpd_auditors.h" -#include "taler-merchant-httpd_exchanges.h" -#include "taler-merchant-httpd_responses.h" - - -/** - * Hashes a plain JSON contract sending the result to the other end of - * HTTP communication - * - * @param rh context of the handler - * @param connection the MHD connection to handle - * @param[in,out] connection_cls the connection's closure (can be updated) - * @param upload_data upload data - * @param[in,out] upload_data_size number of bytes (left) in @a upload_data - * @return MHD result code - */ -int -MH_handler_hash_contract (struct TMH_RequestHandler *rh, - struct MHD_Connection *connection, - void **connection_cls, - const char *upload_data, - size_t *upload_data_size) -{ - json_t *root; - json_t *jcontract; - int res; - struct GNUNET_HashCode hc; - struct TMH_JsonParseContext *ctx; - - if (NULL == *connection_cls) - { - ctx = GNUNET_new (struct TMH_JsonParseContext); - ctx->hc.cc = &TMH_json_parse_cleanup; - *connection_cls = ctx; - } - else - { - ctx = *connection_cls; - } - - res = TMH_PARSE_post_json (connection, - &ctx->json_parse_context, - upload_data, - upload_data_size, - &root); - - if (GNUNET_SYSERR == res) - return MHD_NO; - /* the POST's body has to be further fetched */ - if ((GNUNET_NO == res) || (NULL == root)) - return MHD_YES; - - jcontract = json_object_get (root, "contract"); - - if (NULL == jcontract) - { - return TMH_RESPONSE_reply_external_error (connection, - "missing 'contract' field"); - } - - if (GNUNET_OK != TALER_JSON_hash (jcontract, - &hc)) - { - return TMH_RESPONSE_reply_external_error (connection, - "expected object as contract"); - } - - GNUNET_assert (GNUNET_OK == - TALER_JSON_hash (jcontract, - &hc)); - - /* return final response */ - res = TMH_RESPONSE_reply_json_pack (connection, - MHD_HTTP_OK, - "{s:O}", - "hash", GNUNET_JSON_from_data_auto (&hc)); - json_decref (root); - return res; -} diff --git a/src/backend/taler-merchant-httpd_util.h b/src/backend/taler-merchant-httpd_util.h deleted file mode 100644 index cbf4693a..00000000 --- a/src/backend/taler-merchant-httpd_util.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - This file is part of TALER - (C) 2014, 2015 GNUnet e.V. - - TALER is free software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the Free Software - Foundation; either version 3, or (at your option) any later version. - - TALER is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - TALER; see the file COPYING. If not, If not, see <http://www.gnu.org/licenses/> -*/ -/** - * @file backend/taler-merchant-httpd_contract.h - * @brief headers for /contract handler - * @author Marcello Stanisci - */ -#ifndef TALER_EXCHANGE_HTTPD_UTIL_H -#define TALER_EXCHANGE_HTTPD_UTIL_H -#include <microhttpd.h> -#include "taler-merchant-httpd.h" - -/** - * Manage a contract request - * - * @param rh context of the handler - * @param connection the MHD connection to handle - * @param[in,out] connection_cls the connection's closure (can be updated) - * @param upload_data upload data - * @param[in,out] upload_data_size number of bytes (left) in @a upload_data - * @return MHD result code - */ -int -MH_handler_hash_contract (struct TMH_RequestHandler *rh, - struct MHD_Connection *connection, - void **connection_cls, - const char *upload_data, - size_t *upload_data_size); - -#endif |