diff --git a/src/management.ml b/src/management.ml index 445f8931..5a22bd8e 100644 --- a/src/management.ml +++ b/src/management.ml @@ -214,8 +214,6 @@ let update_master_signatures ~db_conn ~sm_signkey ~sm_denom let* () = check_master_signatures_update ~db_conn ~sm_denom in Ok () -[@@@ocaml.warning "-27"] - let verify_denom_revocation_sig h_denom_pub DenomRevocationSignature.{ master_sig } = let open Bin_sig.MasterDenominationKeyRevocation in @@ -225,4 +223,8 @@ let update_denom_revocation ~db_conn ~sm_denom h_denom_pub DenomRevocationSignature.{ master_sig } = let open Syntax in let* () = Secmod_denom.revoke_denomination sm_denom h_denom_pub master_sig in + let* () = + Pg.insert_denomination_revocation db_conn h_denom_pub master_sig + |> unwrap_err_caqti + in Ok () diff --git a/src/pg.ml b/src/pg.ml index dbdfdbd6..f6146e74 100644 --- a/src/pg.ml +++ b/src/pg.ml @@ -158,3 +158,14 @@ let add_denomination_key = fee_deposit, fee_refresh, (fee_refund, age_mask) ) + +let insert_denomination_revocation = + let denomination_revocation_insert = + let master_sig = Bin_sig.MasterDenominationKeyRevocation.caqti in + Caqti_type.(t2 denomination_hash master_sig ->. unit) + "INSERT INTO denomination_revocations (denominations_serial, master_sig) \ + SELECT denominations_serial, $2 FROM denominations WHERE \ + denom_pub_hash=$1" + in + fun (module Conn : CONN) h_denom_pub master_sig -> + Conn.exec denomination_revocation_insert (h_denom_pub, master_sig)