First pass heimdal_gssapi authenticator.
[exim.git] / src / src / auths / heimdal_gssapi.h
1 /*************************************************
2 *     Exim - an Internet mail transport agent    *
3 *************************************************/
4
5 /* Copyright (c) University of Cambridge 1995 - 2012 */
6 /* See the file NOTICE for conditions of use and distribution. */
7
8 /* Copyright (c) Twitter Inc 2012 */
9
10 /* Interface to Heimdal library for GSSAPI authentication. */
11
12 /* Authenticator-specific options. */
13
14 typedef struct {
15   uschar *server_hostname;
16   uschar *server_keytab;
17   uschar *server_realm;
18   uschar *server_service;
19 } auth_heimdal_gssapi_options_block;
20
21 /* Data for reading the authenticator-specific options. */
22
23 extern optionlist auth_heimdal_gssapi_options[];
24 extern int auth_heimdal_gssapi_options_count;
25
26 /* Defaults for the authenticator-specific options. */
27
28 extern auth_heimdal_gssapi_options_block auth_heimdal_gssapi_option_defaults;
29
30 /* The entry points for the mechanism */
31
32 extern void auth_heimdal_gssapi_init(auth_instance *);
33 extern int auth_heimdal_gssapi_server(auth_instance *, uschar *);
34 extern int auth_heimdal_gssapi_client(auth_instance *, smtp_inblock *,
35                                 smtp_outblock *, int, uschar *, int);
36 extern void auth_heimdal_gssapi_version_report(FILE *f);
37
38 /* End of heimdal_gssapi.h */