From 6bf62ec43d6989d2e88d6b2713ba5ff9c24de2b6 Mon Sep 17 00:00:00 2001 From: swrup Date: Mon, 13 Oct 2025 02:07:07 +0200 Subject: [PATCH] + database --- src/config.ml | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/src/config.ml b/src/config.ml index fa4fb746..6002c118 100644 --- a/src/config.ml +++ b/src/config.ml @@ -374,6 +374,44 @@ module type Secmod_rsa = Secmod module type Secmod_cs = Secmod module type Secmod_eddsa = Secmod +(* The following options must be in the section "[exchangedb]". *) +module type Database = sig + (* TODO not sure about what unit of time/duration is used here *) + + (* + After which time period should reserves be closed if they are idle? *) + val idle_reserve_expiration_time : seconds + + (* + After what time do we forget about (drained) reserves during garbage collection? *) + val legal_reserve_expiration_time : seconds + + (* + Delay between a deposit being eligible for aggregation and + the aggregator actually triggering. *) + val aggregator_shift : seconds + + (* + Number of concurrent purses that a reserve may have active + if it is paid to be opened for a year. *) + val default_purse_limit : int + + (* + Maximum time an AML program is allowed to run. + (Optional for taler-auditor.) *) + val max_aml_program_runtime : int option + + (* +The following options must be in section “[exchangedb-postgres]” if the +“postgres” plugin was selected for the database. *) + module type Postgres_backend = sig + (* + How to access the database, e.g. “postgres:///taler-exchange” to use the + “taler-exchange” database. Testcases use “talercheck”. *) + val config : string + end +end + (* -- ********************************** -- *) let currency = `Eur let currency_to_string = function `Eur -> "EUR"