merchant

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

commit d66e62e53c83a5c4bf4437b8c43c322f5812bf8e
parent b09beb56b1be7171e4501c516dd8b3edda4bbcec
Author: Christian Grothoff <christian@grothoff.org>
Date:   Sat, 18 Apr 2026 23:05:25 +0200

-fix SQL bugs

Diffstat:
Msrc/backenddb/insert_unclaim_signature.c | 17+++++++++--------
Msrc/backenddb/lookup_order.c | 20+++++++++++---------
Msrc/backenddb/update_donau_instance.c | 2+-
3 files changed, 21 insertions(+), 18 deletions(-)

diff --git a/src/backenddb/insert_unclaim_signature.c b/src/backenddb/insert_unclaim_signature.c @@ -47,13 +47,14 @@ get_notify_str (const char *order_id, enum GNUNET_DB_QueryStatus -TALER_MERCHANTDB_insert_unclaim_signature (struct TALER_MERCHANTDB_PostgresContext *pg, - const char *instance_id, - const struct TALER_MerchantPublicKeyP *merchant_pub, - const char *order_id, - const struct GNUNET_CRYPTO_EddsaPublicKey *nonce, - const struct GNUNET_HashCode *h_contract, - const struct GNUNET_CRYPTO_EddsaSignature *nsig) +TALER_MERCHANTDB_insert_unclaim_signature ( + struct TALER_MERCHANTDB_PostgresContext *pg, + const char *instance_id, + const struct TALER_MerchantPublicKeyP *merchant_pub, + const char *order_id, + const struct GNUNET_CRYPTO_EddsaPublicKey *nonce, + const struct GNUNET_HashCode *h_contract, + const struct GNUNET_CRYPTO_EddsaSignature *nsig) { char *nonce_str = GNUNET_STRINGS_data_to_string_alloc (nonce, sizeof (*nonce)); @@ -82,7 +83,7 @@ TALER_MERCHANTDB_insert_unclaim_signature (struct TALER_MERCHANTDB_PostgresConte "SELECT" " out_found" " FROM merchant_do_insert_unclaim_signature" - "($1, $2, $3, $4, $5);"); + "($1, $2, $3, $4, $5, $6);"); qs = GNUNET_PQ_eval_prepared_singleton_select ( pg->conn, "insert_unclaim_signature", diff --git a/src/backenddb/lookup_order.c b/src/backenddb/lookup_order.c @@ -25,13 +25,15 @@ #include "merchant-database/lookup_order.h" #include "helper.h" + enum GNUNET_DB_QueryStatus -TALER_MERCHANTDB_lookup_order (struct TALER_MERCHANTDB_PostgresContext *pg, - const char *instance_id, - const char *order_id, - struct TALER_ClaimTokenP *claim_token, - struct TALER_MerchantPostDataHashP *h_post_data, - json_t **contract_terms) +TALER_MERCHANTDB_lookup_order ( + struct TALER_MERCHANTDB_PostgresContext *pg, + const char *instance_id, + const char *order_id, + struct TALER_ClaimTokenP *claim_token, + struct TALER_MerchantPostDataHashP *h_post_data, + json_t **contract_terms) { json_t *j; struct TALER_ClaimTokenP ct; @@ -62,7 +64,6 @@ TALER_MERCHANTDB_lookup_order (struct TALER_MERCHANTDB_PostgresContext *pg, " contract_terms::TEXT" ",claim_token" ",h_post_data" - ",pos_key" " FROM merchant_orders" " WHERE merchant_orders.merchant_serial=" " (SELECT merchant_serial " @@ -88,8 +89,9 @@ TALER_MERCHANTDB_lookup_order (struct TALER_MERCHANTDB_PostgresContext *pg, if (NULL != contract_terms) *contract_terms = NULL; if (NULL != claim_token) - *claim_token = (struct TALER_ClaimTokenP) { 0 } - ; + memset (claim_token, + 0, + sizeof (struct TALER_ClaimTokenP)); } return qs; } diff --git a/src/backenddb/update_donau_instance.c b/src/backenddb/update_donau_instance.c @@ -60,7 +60,7 @@ TALER_MERCHANTDB_update_donau_instance (struct TALER_MERCHANTDB_PostgresContext " AND merchant_instance_serial " " = (SELECT merchant_serial" " FROM merchant_instances mi" - " WHERE mi.merchant_pub = $3)," + " WHERE mi.merchant_pub = $3)" " AND donau_url = $1;"); return GNUNET_PQ_eval_prepared_non_select (pg->conn,