2025-11-11 03:12:12 +01:00
|
|
|
(* TODO
|
2025-11-20 23:32:25 +01:00
|
|
|
- GNU Taler db-events?
|
2025-11-22 21:40:24 +01:00
|
|
|
it seems caqti/pgx does not support it *)
|
2025-11-11 03:12:12 +01:00
|
|
|
|
|
|
|
|
let test req server _ =
|
2025-11-22 21:40:24 +01:00
|
|
|
let (module Conn : Caqti_miou.CONNECTION) =
|
|
|
|
|
Vif.Server.device Devices.db_connection server
|
|
|
|
|
in
|
2025-11-11 03:12:12 +01:00
|
|
|
let query =
|
|
|
|
|
let open Caqti_request.Infix in
|
|
|
|
|
Caqti_type.(unit ->! int) "SELECT 53 - 11"
|
|
|
|
|
in
|
2025-11-22 21:40:24 +01:00
|
|
|
match Conn.find query () with
|
2025-11-11 03:12:12 +01:00
|
|
|
| Ok n ->
|
|
|
|
|
let open Vif.Response.Syntax in
|
|
|
|
|
let* () =
|
|
|
|
|
Vif.Response.add ~field:"content-type" "text/plain; charset= utf-8"
|
|
|
|
|
in
|
|
|
|
|
let* () = Vif.Response.with_string req (Fmt.str "53 - 11 = %d@." n) in
|
|
|
|
|
Vif.Response.respond `OK
|
|
|
|
|
| Error err ->
|
|
|
|
|
(* TODO don't leak private data in error messages *)
|
|
|
|
|
let open Vif.Response.Syntax in
|
|
|
|
|
let str = Fmt.str "Database error: %a." Caqti_error.pp err in
|
|
|
|
|
let* () = Vif.Response.with_string req str in
|
|
|
|
|
Vif.Response.respond `Internal_server_error
|
2025-11-11 10:03:07 +01:00
|
|
|
|
2025-11-22 21:40:24 +01:00
|
|
|
let test_activate req server _ =
|
|
|
|
|
(*let (module Conn : Caqti_miou.CONNECTION) =*)
|
|
|
|
|
let db_conn = Vif.Server.device Devices.db_connection server in
|
|
|
|
|
let secmod_signkey = Vif.Server.device Devices.secmod_signkey server in
|
|
|
|
|
let exchange_public_key = secmod_signkey.sm_key in
|
|
|
|
|
match Pg.activate_signing_key db_conn exchange_public_key with
|
|
|
|
|
| Ok () ->
|
|
|
|
|
let open Vif.Response.Syntax in
|
|
|
|
|
let* () =
|
|
|
|
|
Vif.Response.add ~field:"content-type" "text/plain; charset= utf-8"
|
|
|
|
|
in
|
|
|
|
|
let* () =
|
|
|
|
|
Vif.Response.with_string req (Fmt.str "activate_signing_key done~~@.")
|
|
|
|
|
in
|
|
|
|
|
Vif.Response.respond `OK
|
|
|
|
|
| Error err ->
|
|
|
|
|
(* TODO don't leak private data in error messages *)
|
|
|
|
|
let open Vif.Response.Syntax in
|
|
|
|
|
let str = Fmt.str "Database error: %a." Caqti_error.pp err in
|
|
|
|
|
let* () = Vif.Response.with_string req str in
|
|
|
|
|
Vif.Response.respond `Internal_server_error
|