diff options
author | Christian Grothoff <grothoff@gnunet.org> | 2024-03-08 18:43:54 +0100 |
---|---|---|
committer | Christian Grothoff <grothoff@gnunet.org> | 2024-03-08 18:43:54 +0100 |
commit | 9a5a961622c22e26d0378279c1b5fdaa886c6063 (patch) | |
tree | 1767051f4154eeea2aa8c6058ec245948746f0f1 /src/exchangedb | |
parent | 2c3d548b4850b96275d73a9703b076d37551a706 (diff) |
fix account update failing to persist wire signature and then breaking that wire account for good
Diffstat (limited to 'src/exchangedb')
-rw-r--r-- | src/exchangedb/pg_update_wire.c | 5 | ||||
-rw-r--r-- | src/exchangedb/pg_update_wire.h | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/exchangedb/pg_update_wire.c b/src/exchangedb/pg_update_wire.c index f3b074686..439c92d4f 100644 --- a/src/exchangedb/pg_update_wire.c +++ b/src/exchangedb/pg_update_wire.c @@ -33,6 +33,7 @@ TEH_PG_update_wire (void *cls, const json_t *debit_restrictions, const json_t *credit_restrictions, struct GNUNET_TIME_Timestamp change_date, + const struct TALER_MasterSignatureP *master_sig, bool enabled) { struct PostgresClosure *pg = cls; @@ -49,6 +50,9 @@ TEH_PG_update_wire (void *cls, ? TALER_PQ_query_param_json (credit_restrictions) : GNUNET_PQ_query_param_null (), GNUNET_PQ_query_param_timestamp (&change_date), + NULL == master_sig + ? GNUNET_PQ_query_param_null () + : GNUNET_PQ_query_param_auto_from_type (master_sig), GNUNET_PQ_query_param_end }; @@ -61,6 +65,7 @@ TEH_PG_update_wire (void *cls, " ,debit_restrictions=$4" " ,credit_restrictions=$5" " ,last_change=$6" + " ,master_sig=$7" " WHERE payto_uri=$1"); return GNUNET_PQ_eval_prepared_non_select (pg->conn, "update_wire", diff --git a/src/exchangedb/pg_update_wire.h b/src/exchangedb/pg_update_wire.h index ecdbc405a..9c30816e6 100644 --- a/src/exchangedb/pg_update_wire.h +++ b/src/exchangedb/pg_update_wire.h @@ -36,6 +36,7 @@ * @param credit_restrictions JSON array with credit restrictions on the account; NULL allowed if not @a enabled * @param change_date date when the account status was last changed * (only to be used for replay detection) + * @param master_sig master signature to store, can be NULL (if @a enabled is false) * @param enabled true to enable, false to disable (the actual change) * @return transaction status code */ @@ -46,6 +47,7 @@ TEH_PG_update_wire (void *cls, const json_t *debit_restrictions, const json_t *credit_restrictions, struct GNUNET_TIME_Timestamp change_date, + const struct TALER_MasterSignatureP *master_sig, bool enabled); #endif |