exchange

Base system with REST service to issue digital coins, run by the payment service provider
Log | Files | Refs | Submodules | README | LICENSE

taler-exchange-httpd_melt.h (1568B)


      1 /*
      2   This file is part of TALER
      3   Copyright (C) 2025 Taler Systems SA
      4 
      5   TALER is free software; you can redistribute it and/or modify it under the
      6   terms of the GNU Affero General Public License as published by the Free Software
      7   Foundation; either version 3, or (at your option) any later version.
      8 
      9   TALER is distributed in the hope that it will be useful, but WITHOUT ANY
     10   WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
     11   A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more details.
     12 
     13   You should have received a copy of the GNU Affero General Public License along with
     14   TALER; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
     15 */
     16 /**
     17  * @file taler-exchange-httpd_melt.h
     18  * @brief Handle /melt requests, starting with vDOLDPLUS of the protocol
     19  * @author Özgür Kesim
     20  */
     21 #ifndef TALER_EXCHANGE_HTTPD_MELT_H
     22 #define TALER_EXCHANGE_HTTPD_MELT_H
     23 
     24 #include <gnunet/gnunet_util_lib.h>
     25 #include <microhttpd.h>
     26 #include "taler-exchange-httpd.h"
     27 
     28 /**
     29  * Resume suspended connections, we are shutting down.
     30  */
     31 void
     32 TEH_melt_cleanup (void);
     33 
     34 
     35 /**
     36  * Handle a "/melt" request.  Parses the request into the JSON
     37  * components and validates the melted coins, the signature and
     38  * execute the melt as database transaction.
     39  *
     40  * @param rc the request context
     41  * @param root uploaded JSON data
     42  * @param args array of additional options, not used
     43  * @return MHD result code
     44  */
     45 MHD_RESULT
     46 TEH_handler_melt (
     47   struct TEH_RequestContext *rc,
     48   const json_t *root,
     49   const char *const args[0]);
     50 
     51 
     52 #endif