summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2020-12-22 18:13:46 +0100
committerChristian Grothoff <christian@grothoff.org>2020-12-22 18:13:46 +0100
commita644355c44ec08c6e0691c8e308bba69619fdccd (patch)
treeb9b2deb85999a803483805076cf7dcd27758a0f6
parentf17d886753fae3148afbfd3e267da30548f71ad4 (diff)
downloadexchange-a644355c44ec08c6e0691c8e308bba69619fdccd.tar.gz
exchange-a644355c44ec08c6e0691c8e308bba69619fdccd.tar.bz2
exchange-a644355c44ec08c6e0691c8e308bba69619fdccd.zip
address FIXME: pass session when iterating over denominations
-rw-r--r--src/auditor/report-lib.c10
-rw-r--r--src/exchangedb/plugin_exchangedb_postgres.c6
-rw-r--r--src/include/taler_exchangedb_plugin.h2
3 files changed, 11 insertions, 7 deletions
diff --git a/src/auditor/report-lib.c b/src/auditor/report-lib.c
index 19a8ed7d..e7d20dc5 100644
--- a/src/auditor/report-lib.c
+++ b/src/auditor/report-lib.c
@@ -164,10 +164,10 @@ TALER_ARL_report (json_t *array,
* @param validity issuing information with value, fees and other info about the denomination.
*/
static void
-add_denomination (void *cls,
- const struct TALER_DenominationPublicKey *denom_pub,
- const struct
- TALER_EXCHANGEDB_DenominationKeyInformationP *validity)
+add_denomination (
+ void *cls,
+ const struct TALER_DenominationPublicKey *denom_pub,
+ const struct TALER_EXCHANGEDB_DenominationKeyInformationP *validity)
{
const struct TALER_DenominationKeyValidityPS *issue = &validity->properties;
@@ -292,7 +292,7 @@ TALER_ARL_get_denomination_info_by_hash (
denominations = GNUNET_CONTAINER_multihashmap_create (256,
GNUNET_NO);
qs = TALER_ARL_edb->iterate_denomination_info (TALER_ARL_edb->cls,
- // FIXME: change API to pass session!?
+ TALER_ARL_esession,
&add_denomination,
NULL);
if (0 > qs)
diff --git a/src/exchangedb/plugin_exchangedb_postgres.c b/src/exchangedb/plugin_exchangedb_postgres.c
index bc3b292a..43b927c2 100644
--- a/src/exchangedb/plugin_exchangedb_postgres.c
+++ b/src/exchangedb/plugin_exchangedb_postgres.c
@@ -2004,12 +2004,14 @@ domination_cb_helper (void *cls,
* Fetch information about all known denomination keys.
*
* @param cls the @e cls of this struct with the plugin-specific state
+ * @param session connection to use
* @param cb function to call on each denomination key
* @param cb_cls closure for @a cb
* @return transaction status code
*/
static enum GNUNET_DB_QueryStatus
postgres_iterate_denomination_info (void *cls,
+ struct TALER_EXCHANGEDB_Session *session,
TALER_EXCHANGEDB_DenominationCallback cb,
void *cb_cls)
{
@@ -2022,9 +2024,9 @@ postgres_iterate_denomination_info (void *cls,
.cb_cls = cb_cls,
.pg = pc
};
- struct TALER_EXCHANGEDB_Session *session;
- session = postgres_get_session (pc);
+ if (NULL == session)
+ session = postgres_get_session (pc);
if (NULL == session)
return GNUNET_DB_STATUS_HARD_ERROR;
return GNUNET_PQ_eval_prepared_multi_select (session->conn,
diff --git a/src/include/taler_exchangedb_plugin.h b/src/include/taler_exchangedb_plugin.h
index 869eebb5..068d97fb 100644
--- a/src/include/taler_exchangedb_plugin.h
+++ b/src/include/taler_exchangedb_plugin.h
@@ -1904,12 +1904,14 @@ struct TALER_EXCHANGEDB_Plugin
* own read-only transaction (hence no session provided).
*
* @param cls the @e cls of this struct with the plugin-specific state
+ * @param session session to use
* @param cb function to call on each denomination key
* @param cb_cls closure for @a cb
* @return transaction status code
*/
enum GNUNET_DB_QueryStatus
(*iterate_denomination_info)(void *cls,
+ struct TALER_EXCHANGEDB_Session *session,
TALER_EXCHANGEDB_DenominationCallback cb,
void *cb_cls);