1/* This is a generated file */
2#ifndef __heimntlm_protos_h__
3#define __heimntlm_protos_h__
4
5#include <stdarg.h>
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11int
12heim_ntlm_build_ntlm1_master (
13	void */*key*/,
14	size_t /*len*/,
15	struct ntlm_buf */*session*/,
16	struct ntlm_buf */*master*/);
17
18int
19heim_ntlm_build_ntlm2_master (
20	void */*key*/,
21	size_t /*len*/,
22	struct ntlm_buf */*blob*/,
23	struct ntlm_buf */*session*/,
24	struct ntlm_buf */*master*/);
25
26int
27heim_ntlm_calculate_lm2 (
28	const void */*key*/,
29	size_t /*len*/,
30	const char */*username*/,
31	const char */*target*/,
32	const unsigned char serverchallenge[8],
33	unsigned char ntlmv2[16],
34	struct ntlm_buf */*answer*/);
35
36int
37heim_ntlm_calculate_ntlm1 (
38	void */*key*/,
39	size_t /*len*/,
40	unsigned char challenge[8],
41	struct ntlm_buf */*answer*/);
42
43int
44heim_ntlm_calculate_ntlm2 (
45	const void */*key*/,
46	size_t /*len*/,
47	const char */*username*/,
48	const char */*target*/,
49	const unsigned char serverchallenge[8],
50	const struct ntlm_buf */*infotarget*/,
51	unsigned char ntlmv2[16],
52	struct ntlm_buf */*answer*/);
53
54int
55heim_ntlm_calculate_ntlm2_sess (
56	const unsigned char clnt_nonce[8],
57	const unsigned char svr_chal[8],
58	const unsigned char ntlm_hash[16],
59	struct ntlm_buf */*lm*/,
60	struct ntlm_buf */*ntlm*/);
61
62int
63heim_ntlm_calculate_ntlm2_sess_hash (
64	const unsigned char clnt_nonce[8],
65	const unsigned char svr_chal[8],
66	unsigned char verifier[8]);
67
68int
69heim_ntlm_decode_targetinfo (
70	const struct ntlm_buf */*data*/,
71	int /*ucs2*/,
72	struct ntlm_targetinfo */*ti*/);
73
74int
75heim_ntlm_decode_type1 (
76	const struct ntlm_buf */*buf*/,
77	struct ntlm_type1 */*data*/);
78
79int
80heim_ntlm_decode_type2 (
81	const struct ntlm_buf */*buf*/,
82	struct ntlm_type2 */*type2*/);
83
84int
85heim_ntlm_decode_type3 (
86	const struct ntlm_buf */*buf*/,
87	int /*ucs2*/,
88	struct ntlm_type3 */*type3*/);
89
90void
91heim_ntlm_derive_ntlm2_sess (
92	const unsigned char sessionkey[16],
93	const unsigned char */*clnt_nonce*/,
94	size_t /*clnt_nonce_length*/,
95	const unsigned char svr_chal[8],
96	unsigned char derivedkey[16]);
97
98int
99heim_ntlm_encode_targetinfo (
100	const struct ntlm_targetinfo */*ti*/,
101	int /*ucs2*/,
102	struct ntlm_buf */*data*/);
103
104int
105heim_ntlm_encode_type1 (
106	const struct ntlm_type1 */*type1*/,
107	struct ntlm_buf */*data*/);
108
109int
110heim_ntlm_encode_type2 (
111	const struct ntlm_type2 */*type2*/,
112	struct ntlm_buf */*data*/);
113
114int
115heim_ntlm_encode_type3 (
116	const struct ntlm_type3 */*type3*/,
117	struct ntlm_buf */*data*/);
118
119void
120heim_ntlm_free_buf (struct ntlm_buf */*p*/);
121
122void
123heim_ntlm_free_targetinfo (struct ntlm_targetinfo */*ti*/);
124
125void
126heim_ntlm_free_type1 (struct ntlm_type1 */*data*/);
127
128void
129heim_ntlm_free_type2 (struct ntlm_type2 */*data*/);
130
131void
132heim_ntlm_free_type3 (struct ntlm_type3 */*data*/);
133
134int
135heim_ntlm_keyex_unwrap (
136	struct ntlm_buf */*baseKey*/,
137	struct ntlm_buf */*encryptedSession*/,
138	struct ntlm_buf */*session*/);
139
140int
141heim_ntlm_keyex_wrap (
142	struct ntlm_buf */*base_session*/,
143	struct ntlm_buf */*session*/,
144	struct ntlm_buf */*encryptedSession*/);
145
146int
147heim_ntlm_nt_key (
148	const char */*password*/,
149	struct ntlm_buf */*key*/);
150
151int
152heim_ntlm_ntlmv2_key (
153	const void */*key*/,
154	size_t /*len*/,
155	const char */*username*/,
156	const char */*target*/,
157	unsigned char ntlmv2[16]);
158
159size_t
160heim_ntlm_unparse_flags (
161	uint32_t /*flags*/,
162	char */*s*/,
163	size_t /*len*/);
164
165int
166heim_ntlm_v1_base_session (
167	void */*key*/,
168	size_t /*len*/,
169	struct ntlm_buf */*session*/);
170
171int
172heim_ntlm_v2_base_session (
173	void */*key*/,
174	size_t /*len*/,
175	struct ntlm_buf */*ntlmResponse*/,
176	struct ntlm_buf */*session*/);
177
178int
179heim_ntlm_verify_ntlm2 (
180	const void */*key*/,
181	size_t /*len*/,
182	const char */*username*/,
183	const char */*target*/,
184	time_t /*now*/,
185	const unsigned char serverchallenge[8],
186	const struct ntlm_buf */*answer*/,
187	struct ntlm_buf */*infotarget*/,
188	unsigned char ntlmv2[16]);
189
190#ifdef __cplusplus
191}
192#endif
193
194#endif /* __heimntlm_protos_h__ */
195