1/* This is a generated file */
2#ifndef __heimscram_protos_h__
3#define __heimscram_protos_h__
4
5#include <stdarg.h>
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11int
12heim_scram_client1 (
13	const char */*username*/,
14	heim_scram_data *ch,
15	heim_scram_method,
16	heim_scram **/*scram*/,
17	heim_scram_data */*out*/);
18
19int
20heim_scram_client2 (
21	heim_scram_data */*in*/,
22	struct heim_scram_client *client,
23	void *ctx,
24	heim_scram */*scram*/,
25	heim_scram_data */*out*/);
26
27int
28heim_scram_client3 (
29	heim_scram_data */*in*/,
30	heim_scram */*scram*/);
31
32int
33heim_scram_client_key (
34	heim_scram_method /* method */,
35	const char */*password*/,
36	unsigned int iterations,
37	heim_scram_data */*salt*/,
38	heim_scram_data */*data*/);
39
40void
41heim_scram_free (heim_scram */*scram*/);
42
43void
44heim_scram_data_free (heim_scram_data */*data*/);
45
46int
47heim_scram_get_channel_binding (
48	heim_scram */*scram*/,
49	heim_scram_data */*ch*/);
50
51
52int
53heim_scram_server1 (
54	heim_scram_data */*in*/,
55	heim_scram_data *ch,
56	heim_scram_method,
57	struct heim_scram_server */*server*/,
58	void */*ctx*/,
59	heim_scram **/*scram*/,
60	heim_scram_data */*out*/);
61
62int
63heim_scram_server2 (
64	heim_scram_data */*in*/,
65	heim_scram */*scram*/,
66	heim_scram_data */*out*/);
67
68int
69heim_scram_stored_key(heim_scram_method method,
70		      const char *password,
71		      unsigned int iterations,
72		      heim_scram_data *salt,
73		      heim_scram_data *client_key,
74		      heim_scram_data *stored_key,
75		      heim_scram_data *server_key);
76
77
78int
79heim_scram_salted_key(heim_scram_method method,
80		      const char *password,
81		      unsigned int iterations,
82		      heim_scram_data *salt,
83		      heim_scram_data *data);
84
85int
86heim_scram_generate(heim_scram_method method,
87		    const heim_scram_data *stored_key,
88		    const heim_scram_data *server_key,
89		    const heim_scram_data *c1,
90		    const heim_scram_data *s1,
91		    const heim_scram_data *c2noproof,
92		    heim_scram_data *clientSig,
93		    heim_scram_data *serverSig);
94
95int
96heim_scram_validate_client_signature(heim_scram_method method,
97				     const heim_scram_data *stored_key,
98				     const heim_scram_data *client_signature,
99				     const heim_scram_data *proof,
100				     heim_scram_data *clientKey);
101
102int
103
104heim_scram_session_key(heim_scram_method method,
105		       const heim_scram_data *stored_key,
106		       const heim_scram_data *client_key,
107		       const heim_scram_data *c1,
108		       const heim_scram_data *s1,
109		       const heim_scram_data *c2noproof,
110		       heim_scram_data *sessionKey);
111
112int
113heim_scram_get_session_key(heim_scram *scram,
114			   heim_scram_data *sessionKey);
115
116
117
118#ifdef __cplusplus
119}
120#endif
121
122#endif /* __heimscram_protos_h__ */
123