paivana-httpd_pay.h (1522B)
1 /* 2 This file is part of GNUnet. 3 Copyright (C) 2026 Taler Systems SA 4 5 Paivana is free software; you can redistribute it and/or 6 modify it under the terms of the GNU General Public License 7 as published by the Free Software Foundation; either version 8 3, or (at your option) any later version. 9 10 Paivana is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty 12 of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See 13 the GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public 16 License along with Paivana; see the file COPYING. If not, 17 write to the Free Software Foundation, Inc., 51 Franklin 18 Street, Fifth Floor, Boston, MA 02110-1301, USA. 19 */ 20 21 /** 22 * @author Christian Grothoff 23 * @file paivana-httpd_pay.h 24 * 25 * @brief payment processing logic 26 */ 27 #ifndef PAIVANA_HTTPD_PAY_H 28 #define PAIVANA_HTTPD_PAY_H 29 30 #include <gnunet/gnunet_util_lib.h> 31 #include <microhttpd.h> 32 #include "paivana-httpd.h" 33 34 /** 35 * Handle for processing actual payment. 36 */ 37 struct PayRequest; 38 39 void 40 PAIVANA_HTTPD_payment_shutdown (void); 41 42 43 struct PayRequest * 44 PAIVANA_HTTPD_payment_create (struct MHD_Connection *connection); 45 46 47 enum MHD_Result 48 PAIVANA_HTTPD_payment_handle (struct PayRequest *pr, 49 const char *upload_data, 50 size_t *upload_data_size); 51 52 53 void 54 PAIVANA_HTTPD_payment_destroy (struct PayRequest *ph); 55 56 57 #endif