merchant

Merchant backend to process payments, run by merchants
Log | Files | Refs | Submodules | README | LICENSE

commit 2fecd9db0453733ee5b0caeff9a30e6b9f39ae7d
parent b1682233abce99960736d720fa53684f7d7014d0
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sun, 28 Jun 2026 18:45:21 +0200

bugs

Diffstat:
Msrc/backend/taler-merchant-httpd_patch-private-accounts-H_WIRE.c | 20++++++++++----------
Msrc/backend/taler-merchant-httpd_post-orders-ORDER_ID-pay.c | 2+-
Msrc/backenddb/insert_report.c | 3++-
Msrc/backenddb/lookup_reports_pending.sql | 2+-
4 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/src/backend/taler-merchant-httpd_patch-private-accounts-H_WIRE.c b/src/backend/taler-merchant-httpd_patch-private-accounts-H_WIRE.c @@ -80,16 +80,6 @@ TMH_private_patch_accounts_ID (const struct TMH_RequestHandler *rh, TALER_EC_MERCHANT_GENERIC_H_WIRE_MALFORMED, h_wire_s); } - if (! TALER_is_valid_subject_metadata_string ( - extra_wire_subject_metadata)) - { - GNUNET_break_op (0); - return TALER_MHD_reply_with_error ( - connection, - MHD_HTTP_BAD_REQUEST, - TALER_EC_GENERIC_PARAMETER_MALFORMED, - "extra_wire_subject_metadata"); - } { enum GNUNET_GenericReturnValue res; @@ -101,6 +91,16 @@ TMH_private_patch_accounts_ID (const struct TMH_RequestHandler *rh, ? MHD_YES : MHD_NO; } + if (! TALER_is_valid_subject_metadata_string ( + extra_wire_subject_metadata)) + { + GNUNET_break_op (0); + return TALER_MHD_reply_with_error ( + connection, + MHD_HTTP_BAD_REQUEST, + TALER_EC_GENERIC_PARAMETER_MALFORMED, + "extra_wire_subject_metadata"); + } qs = TALER_MERCHANTDB_update_account (TMH_db, mi->settings.id, diff --git a/src/backend/taler-merchant-httpd_post-orders-ORDER_ID-pay.c b/src/backend/taler-merchant-httpd_post-orders-ORDER_ID-pay.c @@ -4846,7 +4846,7 @@ phase_parse_wallet_data (struct PayContext *pc) GNUNET_new_array (num_bkps, struct DONAU_BlindedUniqueDonorIdentifierKeyPair); - /* Change to json for each*/ + /* Change to json for each */ for (size_t i = 0; i < num_bkps; i++) { const json_t *bkp_obj = json_array_get (budikeypairs, diff --git a/src/backenddb/insert_report.c b/src/backenddb/insert_report.c @@ -86,7 +86,8 @@ TALER_MERCHANTDB_insert_report ( ",next_transmission)" " VALUES ($1, $2, $3, $4," " $5, $6, $7, $8, $9)" - " ON CONFLICT DO NOTHING;"); + " ON CONFLICT DO NOTHING" + " RETURNING report_serial;"); return GNUNET_PQ_eval_prepared_singleton_select (pg->conn, "", params, diff --git a/src/backenddb/lookup_reports_pending.sql b/src/backenddb/lookup_reports_pending.sql @@ -62,7 +62,7 @@ BEGIN THEN CONTINUE; END IF; - IF (NOT found) OR (inner_rec.nt < out_next_transmission) + IF (NOT xfound) OR (inner_rec.nt < out_next_transmission) THEN out_merchant_id := rec.merchant_id; out_report_serial := inner_rec.rs;