Commit | Line | Data |
---|---|---|
44bbabb5 PP |
1 | /************************************************* |
2 | * Exim - an Internet mail transport agent * | |
3 | *************************************************/ | |
4 | ||
5 | /* Copyright (c) University of Cambridge 1995 - 2012 */ | |
14a806d6 | 6 | /* Copyright (c) The Exim Maintainers 2019 */ |
44bbabb5 PP |
7 | /* See the file NOTICE for conditions of use and distribution. */ |
8 | ||
9 | /* Copyright (c) Twitter Inc 2012 */ | |
10 | ||
11 | /* Interface to GNU SASL library for generic authentication. */ | |
12 | ||
13 | /* Authenticator-specific options. */ | |
14 | ||
15 | typedef struct { | |
16 | uschar *server_service; | |
17 | uschar *server_hostname; | |
18 | uschar *server_realm; | |
19 | uschar *server_mech; | |
20 | uschar *server_password; | |
49d47806 JH |
21 | uschar *server_key; |
22 | uschar *server_s_key; | |
44bbabb5 PP |
23 | uschar *server_scram_iter; |
24 | uschar *server_scram_salt; | |
14a806d6 JH |
25 | |
26 | uschar *client_username; | |
27 | uschar *client_password; | |
28 | uschar *client_authz; | |
49d47806 | 29 | uschar *client_spassword; |
14a806d6 | 30 | |
44bbabb5 | 31 | BOOL server_channelbinding; |
14a806d6 | 32 | BOOL client_channelbinding; |
44bbabb5 PP |
33 | } auth_gsasl_options_block; |
34 | ||
35 | /* Data for reading the authenticator-specific options. */ | |
36 | ||
37 | extern optionlist auth_gsasl_options[]; | |
38 | extern int auth_gsasl_options_count; | |
39 | ||
40 | /* Defaults for the authenticator-specific options. */ | |
41 | ||
42 | extern auth_gsasl_options_block auth_gsasl_option_defaults; | |
43 | ||
44 | /* The entry points for the mechanism */ | |
45 | ||
46 | extern void auth_gsasl_init(auth_instance *); | |
47 | extern int auth_gsasl_server(auth_instance *, uschar *); | |
1c519e07 | 48 | extern int auth_gsasl_client(auth_instance *, void *, |
d0858b27 | 49 | int, uschar *, int); |
44bbabb5 | 50 | extern void auth_gsasl_version_report(FILE *f); |
25bd12fd | 51 | extern void auth_gsasl_macros(void); |
44bbabb5 PP |
52 | |
53 | /* End of gsasl_exim.h */ |