Initial release, version 0.0.0.
[gsasl.git] / lib / x-ntlm.h
bloba1552e6721face618794e946443884fe914b1274
1 /* sasl-ntlm.h header file for non-standard SASL mechanism NTLM
2 * Copyright (C) 2002 Simon Josefsson
4 * This file is part of libgsasl.
6 * Libgsasl is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * Libgsasl is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with libgsasl; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 #ifndef _SASL_NTLM_H
23 #define _SASL_NTLM_H
25 #ifdef USE_NTLM
27 #define _GSASL_NTLM_NAME "NTLM"
29 extern int _gsasl_ntlm_client_init (Gsasl_ctx *ctx);
30 extern void _gsasl_ntlm_client_done (Gsasl_ctx *ctx);
31 extern int _gsasl_ntlm_client_start (Gsasl_session_ctx *cctx,
32 void **mech_data);
33 extern int _gsasl_ntlm_client_step (Gsasl_session_ctx *cctx,
34 void *mech_data,
35 const char *input,
36 size_t input_len,
37 char *output,
38 size_t *output_len);
39 extern int _gsasl_ntlm_client_finish (Gsasl_session_ctx *cctx,
40 void *mech_data);
42 extern int _gsasl_ntlm_server_init (Gsasl_ctx *ctx);
43 extern void _gsasl_ntlm_server_done (Gsasl_ctx *ctx);
44 extern int _gsasl_ntlm_server_start (Gsasl_session_ctx *sctx,
45 void **mech_data);
46 extern int _gsasl_ntlm_server_step (Gsasl_session_ctx *sctx,
47 void *mech_data,
48 const char *input,
49 size_t input_len,
50 char *output,
51 size_t *output_len);
52 extern int _gsasl_ntlm_server_finish (Gsasl_session_ctx *sctx,
53 void *mech_data);
54 #endif /* USE_NTLM */
56 #endif /* _SASL_NTLM_H */