paivana

HTTP paywall reverse proxy
Log | Files | Refs | Submodules | README | LICENSE

commit 7623e9a4240847615c416aa1dad52e19282008e6
parent 4985c4ec92f766f8ad6cb590c56ea5e8b79d4c17
Author: Sebastian <sebasjm@taler-systems.com>
Date:   Thu, 30 Apr 2026 19:51:02 -0300

support for destination unix path

Diffstat:
Msrc/backend/paivana-httpd.c | 8++++++++
Msrc/backend/paivana-httpd.h | 6++++++
Msrc/backend/paivana-httpd_reverse.c | 11+++++++++++
3 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/src/backend/paivana-httpd.c b/src/backend/paivana-httpd.c @@ -44,6 +44,8 @@ char *PH_target_server_base_url; +char *PH_target_server_unixpath; + char *PH_merchant_base_url; char *PH_base_url; @@ -91,6 +93,7 @@ do_shutdown (void *cls) PAIVANA_HTTPD_unload_templates (); TALER_TEMPLATING_done (); GNUNET_free (PH_target_server_base_url); + GNUNET_free (PH_target_server_unixpath); GNUNET_free (PH_merchant_base_url); GNUNET_free (PH_base_url); if (NULL != PH_ctx) @@ -171,6 +174,11 @@ run (void *cls, GNUNET_SCHEDULER_shutdown (); return; } + GNUNET_CONFIGURATION_get_value_filename ( + c, + "paivana", + "DESTINATION_UNIXPATH", + &PH_target_server_unixpath)) { size_t tlen = strlen (PH_target_server_base_url); diff --git a/src/backend/paivana-httpd.h b/src/backend/paivana-httpd.h @@ -43,6 +43,12 @@ extern char *PH_target_server_base_url; /** + * Replace the connection to target server. + * File path to the unix socket + */ +extern char *PH_target_server_unixpath; + +/** * Merchant backend base URL. */ extern char *PH_merchant_base_url; diff --git a/src/backend/paivana-httpd_reverse.c b/src/backend/paivana-httpd_reverse.c @@ -1372,6 +1372,17 @@ start_curl_request (struct HttpRequest *hr, GNUNET_free (curlurl); } + if (NULL != PH_target_server_unixpath) + { + curl_easy_setopt (hr->curl, + CURLOPT_UNIX_SOCKET_PATH, + PH_target_server_unixpath); + + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "Forwarding using unixpath: %s\n", + PH_target_server_unixpath); + } + { char *host_hdr;