adam@0
|
1 #include <urweb/urweb.h>
|
adam@0
|
2
|
adam@8
|
3 #include <openssl/dh.h>
|
adam@8
|
4
|
adam@3
|
5 uw_unit uw_OpenidFfi_init(uw_context);
|
adam@3
|
6
|
adam@8
|
7 typedef struct {
|
adam@8
|
8 uw_Basis_string endpoint, localId;
|
adam@8
|
9 } uw_OpenidFfi_discovery;
|
adam@2
|
10
|
adam@2
|
11 uw_Basis_string uw_OpenidFfi_endpoint(uw_context, uw_OpenidFfi_discovery);
|
adam@2
|
12 uw_Basis_string uw_OpenidFfi_localId(uw_context, uw_OpenidFfi_discovery);
|
adam@2
|
13
|
adam@2
|
14 uw_OpenidFfi_discovery *uw_OpenidFfi_discover(uw_context, uw_Basis_string id);
|
adam@3
|
15
|
adam@3
|
16 typedef uw_buffer *uw_OpenidFfi_inputs;
|
adam@3
|
17 typedef uw_buffer *uw_OpenidFfi_outputs;
|
adam@3
|
18
|
adam@3
|
19 uw_OpenidFfi_inputs uw_OpenidFfi_createInputs(uw_context);
|
adam@3
|
20 uw_unit uw_OpenidFfi_addInput(uw_context, uw_OpenidFfi_inputs, uw_Basis_string key, uw_Basis_string value);
|
adam@3
|
21
|
adam@3
|
22 uw_Basis_string uw_OpenidFfi_getOutput(uw_context, uw_OpenidFfi_outputs, uw_Basis_string key);
|
adam@27
|
23 uw_unit uw_OpenidFfi_printOutputs(uw_context, uw_OpenidFfi_outputs);
|
adam@3
|
24
|
adam@4
|
25 uw_OpenidFfi_outputs uw_OpenidFfi_direct(uw_context, uw_Basis_string url, uw_OpenidFfi_inputs);
|
adam@4
|
26 uw_OpenidFfi_outputs uw_OpenidFfi_indirect(uw_context, uw_Basis_string fields);
|
adam@6
|
27
|
adam@12
|
28 uw_Basis_string uw_OpenidFfi_sha1(uw_context ctx, uw_Basis_string data);
|
adam@12
|
29 uw_Basis_string uw_OpenidFfi_sha256(uw_context ctx, uw_Basis_string data);
|
adam@12
|
30
|
adam@12
|
31 uw_Basis_string uw_OpenidFfi_hmac_sha1(uw_context, uw_Basis_string key, uw_Basis_string data);
|
adam@12
|
32 uw_Basis_string uw_OpenidFfi_hmac_sha256(uw_context, uw_Basis_string key, uw_Basis_string data);
|
adam@8
|
33
|
adam@8
|
34 typedef DH *uw_OpenidFfi_dh;
|
adam@8
|
35
|
adam@8
|
36 uw_Basis_string uw_OpenidFfi_modulus(uw_context, uw_OpenidFfi_dh);
|
adam@8
|
37 uw_Basis_string uw_OpenidFfi_generator(uw_context, uw_OpenidFfi_dh);
|
adam@8
|
38 uw_Basis_string uw_OpenidFfi_public(uw_context, uw_OpenidFfi_dh);
|
adam@8
|
39
|
adam@8
|
40 uw_OpenidFfi_dh uw_OpenidFfi_generate(uw_context);
|
adam@8
|
41 uw_Basis_string uw_OpenidFfi_compute(uw_context, uw_OpenidFfi_dh, uw_Basis_string server_pub);
|
adam@12
|
42 uw_Basis_string uw_OpenidFfi_xor(uw_context, uw_Basis_string, uw_Basis_string);
|
adam@13
|
43
|
adam@13
|
44 uw_OpenidFfi_inputs uw_OpenidFfi_remode(uw_context, uw_OpenidFfi_outputs, uw_Basis_string mode);
|