From 17f454ae107cfe126db0ded195f9e2c8b7072e48 Mon Sep 17 00:00:00 2001 From: swrup Date: Sun, 7 Dec 2025 03:56:00 +0100 Subject: [PATCH] --- src/pg.ml | 8 +++++--- src/secmod_denom.ml | 21 +++++++++++++++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/src/pg.ml b/src/pg.ml index feda504c..3a76c3a7 100644 --- a/src/pg.ml +++ b/src/pg.ml @@ -110,9 +110,11 @@ let lookup_denomination_key = Caqti_type.( denomination_hash ->? t10 time time time time amount amount amount amount amount age_mask) - "SELECT valid_from, expire_withdraw, expire_deposit, expire_legal, coin, \ - fee_withdraw, fee_deposit, fee_refresh, fee_refund, age_mask FROM \ - denominations WHERE denom_pub_hash=$1" + "SELECT valid_from, expire_withdraw, expire_deposit, expire_legal, \ + coin::taler_amount, fee_withdraw::taler_amount, \ + fee_deposit::taler_amount, fee_refresh::taler_amount, \ + fee_refund::taler_amount, age_mask FROM denominations WHERE \ + denom_pub_hash=$1" in fun (module Conn : CONN) (h_denom_pub : DenominationHash.t) -> Conn.find_opt lookup_denomination_key h_denom_pub diff --git a/src/secmod_denom.ml b/src/secmod_denom.ml index 3de76e66..a1b8c921 100644 --- a/src/secmod_denom.ml +++ b/src/secmod_denom.ml @@ -12,6 +12,8 @@ let get_denoms t = Miou.Mutex.protect t.lock @@ fun () -> Hashtbl.to_seq_values t.denom_ht |> List.of_seq +[@@@ocaml.warning "-27"] + let add_master_signatures conn t l = Miou.Mutex.protect t.lock @@ fun () -> list_iter @@ -22,6 +24,25 @@ let add_master_signatures conn t l = let denom = { denom with master_sig= Some master_sig } in let* () = Pg.add_denomination_key conn denom |> unwrap_err_caqti in Hashtbl.replace t.denom_ht h_denom_pub denom; + let* ( valid_from, + expire_withdraw, + expire_deposit, + expire_legal, + coin, + fee_withdraw, + fee_deposit, + fee_refresh, + fee_refund, + age_mask ) = + Pg.lookup_denomination_key conn h_denom_pub + |> unwrap_err_caqti + |> Result.map Option.get + in + (* + assert (valid_from = denom.stamp_start); + assert (coin = denom.value); + assert (age_mask = denom.age_mask); + *) Ok ()) l