This commit is contained in:
swrup 2025-12-07 17:21:08 +01:00
parent edbe3ceb70
commit 88f81769f4
3 changed files with 31 additions and 5 deletions

View file

@ -26,7 +26,7 @@ end
include Respond_util
open Api
let keys_get req server _env =
let management_keys_get req server _env =
let sm_signkey = Vif.Server.device Devices.secmod_signkey server in
let sm_denom = Vif.Server.device Devices.secmod_denom server in
let res =
@ -36,9 +36,9 @@ let keys_get req server _env =
in
respond_with_res res req
let keys_post_jsont = MasterSignatures.jsont
let management_keys_post_jsont = MasterSignatures.jsont
let keys_post req server _env =
let management_keys_post req server _env =
let open Syntax in
let open Management in
let db_conn = Vif.Server.device Devices.db_connection server in
@ -55,3 +55,19 @@ let keys_post req server _env =
Ok ""
in
respond_with_res res req
let management_denom_revoke_jsont = DenomRevocationSignature.jsont
let management_denom_revoke req server _env =
let open Syntax in
let open Management in
let db_conn = Vif.Server.device Devices.db_connection server in
let sm_signkey = Vif.Server.device Devices.secmod_signkey server in
let sm_denom = Vif.Server.device Devices.secmod_denom server in
let res =
let* v = Vif.Request.of_json req |> unwrap_err_msg in
let* () = verify_denom_revocation_sig ~sm_signkey ~sm_denom v in
let* () = update_denom_revocation ~db_conn ~sm_signkey ~sm_denom v in
Ok ""
in
respond_with_res res req

View file

@ -213,3 +213,8 @@ let update_master_signatures ~db_conn ~sm_signkey ~sm_denom
in
let* () = check_master_signatures_update ~db_conn ~sm_denom in
Ok ()
[@@@ocaml.warning "-27"]
let verify_denom_revocation_sig ~sm_signkey ~sm_denom v = Ok ()
let update_denom_revocation ~db_conn ~sm_signkey ~sm_denom v = Ok ()

View file

@ -32,8 +32,13 @@ let routes =
get_ rel --> hello;
get_ (v "terms") --> Static.terms;
get_ (v "privacy") --> Static.privacy;
get_ (v "management" / "keys") --> keys_get;
post (v "management" / "keys") keys_post_jsont --> keys_post;
get_ (v "management" / "keys") --> management_keys_get;
post (v "management" / "keys") management_keys_post_jsont
--> management_keys_post;
post
(v "management" / "denominations" / "$H_DENOM_PUB" / "revoke")
management_denom_revoke_jsont
--> management_denom_revoke;
]
let () =