commit 0e00c2a9854c00d2b2da62689d1ba2a735090caf
parent c83b53428f42c9bcb1dcbefcc897b062a0571343
Author: Christian Grothoff <christian@grothoff.org>
Date: Sun, 22 Feb 2026 13:52:34 +0100
add extra_wire_subject_metadata to C API (fixes #11118)
Diffstat:
4 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/include/taler/taler-exchange/get-management-keys.h b/src/include/taler/taler-exchange/get-management-keys.h
@@ -298,7 +298,7 @@ typedef void
/**
* @deprecated
*/
-TALER_EXCHANGE_GetManagementKeysHandle *
+struct TALER_EXCHANGE_GetManagementKeysHandle *
TALER_EXCHANGE_get_management_keys (
struct GNUNET_CURL_Context *ctx,
const char *url,
diff --git a/src/include/taler/taler-exchange/post-batch-deposit.h b/src/include/taler/taler-exchange/post-batch-deposit.h
@@ -100,6 +100,7 @@ struct TALER_EXCHANGE_DepositContractDetail
* Date until which the merchant can issue a refund to the customer via the
* exchange (can be zero if refunds are not allowed); must not be after the
* @e wire_deadline.
+ * Note: this should become an option in the future API!
*/
struct GNUNET_TIME_Timestamp refund_deadline;
@@ -125,9 +126,15 @@ struct TALER_EXCHANGE_DepositContractDetail
/**
* Policy extension specific details about the deposit relevant to the exchange.
+ * Note: this should become an option in the future API!
*/
const json_t *policy_details;
+ /**
+ * Metadata to additionally include in the wire transfer subject.
+ * Note: this should become an option in the future API!
+ */
+ const char *extra_wire_subject_metadata;
};
diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
@@ -18,7 +18,7 @@ lib_LTLIBRARIES = \
libtalerexchange.la
libtalerexchange_la_LDFLAGS = \
- -version-info 18:0:0 \
+ -version-info 19:0:0 \
-no-undefined
libtalerexchange_la_SOURCES = \
exchange_api_add_aml_decision.c \
diff --git a/src/lib/exchange_api_batch_deposit.c b/src/lib/exchange_api_batch_deposit.c
@@ -718,6 +718,9 @@ TALER_EXCHANGE_batch_deposit (
deposit_obj = GNUNET_JSON_PACK (
TALER_JSON_pack_full_payto ("merchant_payto_uri",
dcd->merchant_payto_uri),
+ GNUNET_JSON_pack_allow_null (
+ GNUNET_JSON_pack_data_auto ("extra_wire_subject_metadata",
+ dcd->extra_wire_subject_metadata)),
GNUNET_JSON_pack_data_auto ("wire_salt",
&dcd->wire_salt),
GNUNET_JSON_pack_data_auto ("h_contract_terms",