forked from
slices.network/quickslice
Auto-indexing service and GraphQL API for AT Protocol Records
1-module(dpop_validator_ffi).
2-export([verify_dpop_proof/4]).
3
4%% Bridge to jose_ffi:verify_dpop_proof with Gleam-compatible return types
5verify_dpop_proof(DPoPProof, Method, Url, MaxAgeSeconds) ->
6 case jose_ffi:verify_dpop_proof(DPoPProof, Method, Url, MaxAgeSeconds) of
7 {ok, #{jkt := Jkt, jti := Jti, iat := Iat}} ->
8 %% Return DPoPValidationResult directly (Gleam atom: d_po_p_validation_result)
9 {ok, {d_po_p_validation_result, Jkt, Jti, Iat}};
10 {error, Reason} when is_binary(Reason) ->
11 {error, Reason};
12 {error, Reason} ->
13 {error, iolist_to_binary(io_lib:format("~p", [Reason]))}
14 end.