This commit is contained in:
swrup 2025-12-06 22:29:56 +01:00
parent fa21837947
commit 16ab1fff2b
2 changed files with 47 additions and 38 deletions

View file

@ -92,36 +92,6 @@ let mk_future_keys_response ~(sm_signkey : Secmod_signkey.t)
signkey_secmod_public_key;
}
let respond_with_plain_text_error ?status e req =
let open Vif.Response in
let open Syntax in
let status = Option.value ~default:`Bad_request status in
let* () = add ~field:"content-type" "text/plain; charset=utf-8" in
let* () = with_string req e in
respond status
let respond_with_ok_json content req =
let open Vif.Response in
let open Syntax in
let* () = add ~field:"content-type" "application/json" in
let* () = with_string req content in
respond `OK
let respond_with_res res req =
match res with
| Error err -> respond_with_plain_text_error err req
| Ok content -> respond_with_ok_json content req
let 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 =
let v = mk_future_keys_response ~sm_signkey ~sm_denom in
let s = Api.encode_exn Api.FutureKeysResponse.jsont v in
Ok s
in
respond_with_res res req
(* - ** - *)
let verify_denom_signature ~sm_denom DenomSignature.{ h_denom_pub; master_sig }
@ -193,7 +163,45 @@ let verify_master_signatures ~sm_signkey ~sm_denom
let* () = list_iter (verify_signkey_signature ~sm_signkey) signkey_sigs in
Ok ()
let store_master_signatures _ = Ok ()
(* --- *)
let store_master_signatures _ =
(* TODO *)
Ok ()
(* --- *)
let respond_with_plain_text_error ?status e req =
let open Vif.Response in
let open Syntax in
let status = Option.value ~default:`Bad_request status in
let* () = add ~field:"content-type" "text/plain; charset=utf-8" in
let* () = with_string req e in
respond status
let respond_with_ok_json content req =
let open Vif.Response in
let open Syntax in
let* () = add ~field:"content-type" "application/json" in
let* () = with_string req content in
respond `OK
let respond_with_res res req =
match res with
| Error err -> respond_with_plain_text_error err req
| Ok content -> respond_with_ok_json content req
let 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 =
let v = mk_future_keys_response ~sm_signkey ~sm_denom in
let s = Api.encode_exn Api.FutureKeysResponse.jsont v in
Ok s
in
respond_with_res res req
let keys_post_jsont = MasterSignatures.jsont
let keys_post req server _env =
let sm_signkey = Vif.Server.device Devices.secmod_signkey server in