quick fix; ok json response ~~

This commit is contained in:
swrup 2025-10-18 20:28:38 +02:00
parent 1674e338ac
commit d6e47b681f
4 changed files with 20 additions and 11 deletions

View file

@ -46,8 +46,10 @@ let to_string =
in
let pp_currency ppf = function `Eur -> string ppf "EUR" in
fun ppf { sign; currency; value; fraction } ->
pf ppf "%a%a:%Ld.%Ld" (Fmt.option pp_sign) sign pp_currency currency value
fraction
(* TODO amount
use config *)
pf ppf "%a%a:%Ld.%02Ld" (Fmt.option pp_sign) sign pp_currency currency
value fraction
in
Fmt.str "%a" pp

View file

@ -188,7 +188,9 @@ module UTIL = struct
let hash s =
match String.length s = 32 with
| false -> Fmt.failwith "SHA256 failure: data is not 32 bytes"
| false ->
Fmt.failwith "SHA256 failure: data is not 32 bytes, instead is %d"
(String.length s)
| true -> hash s
end
@ -218,7 +220,7 @@ module UTIL = struct
val bin : t Bin.t
val hash : M.src -> t
end = struct
include Hash_64
include HHH_64
let hash src = hash (M.to_octets src)
end
@ -233,7 +235,7 @@ module UTIL = struct
val bin : t Bin.t
val hash : M.src -> t
end = struct
include Hash_32
include HHH_32
let hash src = hash (M.to_octets src)
end

View file

@ -1,7 +1,7 @@
(* hardcoded config for now *)
let amount s = Amount.of_string s |> Result.get_ok
let zero_eur = amount "EUR:0.01"
let zero_eur = amount "EUR:0.00"
let dummy_duration = Ptime.Span.of_int_s 99999999
module Exchange = struct

View file

@ -84,13 +84,18 @@ end = struct
(* mirage_crypto: "The result is the concatenation of r and s, as specified in RFC 8032." *)
Mirage_crypto_ec.Ed25519.sign ~key s
let of_b32 s = B32.decode s
let check_size t =
match String.length t = 64 with
| false -> Error "EddsaSignature: invalid string length"
| true -> Ok ()
let to_b32 t =
let s = B32.encode t in
assert (String.length s = 64);
s
let of_b32 s =
let open Syntax in
let* t = B32.decode s in
let+ () = check_size t in
t
let to_b32 = B32.encode
let jsont = Jsont.of_of_string ~kind:"EddsaSignature" of_b32 ~enc:to_b32
end