diff --git a/src/api.ml b/src/api.ml index 9f3b99d0..dcbf036d 100644 --- a/src/api.ml +++ b/src/api.ml @@ -612,6 +612,31 @@ module GlobalFees = struct master_sig: GlobalFees.t; } + let verify_global_fees ~key + { + start_date; + end_date; + history_fee; + account_fee; + purse_fee; + history_expiration; + purse_account_limit; + purse_timeout; + master_sig; + } = + let open Signatures.GlobalFees in + verify key master_sig + { + start_date; + end_date; + purse_timeout; + history_expiration; + history_fee; + account_fee; + purse_fee; + purse_account_limit; + } + let jsont = let make start_date end_date history_fee account_fee purse_fee history_expiration purse_account_limit purse_timeout master_sig = diff --git a/src/http_management.ml b/src/http_management.ml index 6aa0da10..f1b67201 100644 --- a/src/http_management.ml +++ b/src/http_management.ml @@ -250,31 +250,7 @@ module Wire_fee = struct end module Global_fees = struct - let verify (module Keys : Keys.S) - GlobalFees. - { - start_date; - end_date; - history_fee; - account_fee; - purse_fee; - history_expiration; - purse_account_limit; - purse_timeout; - master_sig; - } = - let open Signatures.GlobalFees in - verify Config.master_public_key master_sig - { - start_date; - end_date; - purse_timeout; - history_expiration; - history_fee; - account_fee; - purse_fee; - purse_account_limit; - } + let verify v = GlobalFees.verify_global_fees ~key:Config.master_public_key v let do_ ~db_conn v = let* global_fees = @@ -309,11 +285,10 @@ module Global_fees = struct and once set for a timeframe, it should not change. *) let f req server _env = Logs.info (fun m -> m "POST /management/global-fees/"); - let keys = Vif.Server.device Devices.keys server in let db_conn = Vif.Server.device Devices.db_connection server in let res = let* v = Vif.Request.of_json req |> unwrap_err_msg in - let* () = verify keys v in + let* () = verify v in let* () = do_ ~db_conn v in Ok () in diff --git a/test/validate_response.ml b/test/validate_response.ml index 5c9cd3c5..4db13e8b 100644 --- a/test/validate_response.ml +++ b/test/validate_response.ml @@ -81,33 +81,7 @@ let keys content = let* () = v.global_fees - |> list_iter - (fun - GlobalFees. - { - start_date; - end_date; - history_fee; - account_fee; - purse_fee; - history_expiration; - purse_account_limit; - purse_timeout; - master_sig; - } - -> - let open Signatures.GlobalFees in - verify v.master_public_key master_sig - { - start_date; - end_date; - purse_timeout; - history_expiration; - history_fee; - account_fee; - purse_fee; - purse_account_limit; - }) + |> list_iter (GlobalFees.verify_global_fees ~key:v.master_public_key) in let* () =