031e783ed90072983202a29f6be71f49728ad107
[users/jgh/exim.git] / src / src / auths / cyrus_sasl.h
1 /*************************************************
2 *     Exim - an Internet mail transport agent    *
3 *************************************************/
4
5 /* Copyright (c) University of Cambridge 1995 - 2009 */
6 /* See the file NOTICE for conditions of use and distribution. */
7
8 /* Copyright (c) A L Digital Ltd 2004 */
9
10 /* Private structure for the private options. */
11
12 typedef struct {
13   uschar *server_service;
14   uschar *server_hostname;
15   uschar *server_realm;
16   uschar *server_mech;
17 } auth_cyrus_sasl_options_block;
18
19 /* Data for reading the private options. */
20
21 extern optionlist auth_cyrus_sasl_options[];
22 extern int auth_cyrus_sasl_options_count;
23
24 /* Block containing default values. */
25
26 extern auth_cyrus_sasl_options_block auth_cyrus_sasl_option_defaults;
27
28 /* The entry points for the mechanism */
29
30 extern void auth_cyrus_sasl_init(auth_instance *);
31 extern int auth_cyrus_sasl_server(auth_instance *, uschar *);
32 extern int auth_cyrus_sasl_client(auth_instance *, smtp_inblock *,
33                                 smtp_outblock *, int, uschar *, int);
34 extern void auth_cyrus_sasl_version_report(FILE *f);
35
36 /* End of cyrus_sasl.h */