annotate src/auth/mech.c @ 9575:0a00dcc4f0ea HEAD

lib-storage: Allow shared namespace prefix to use %variable modifiers.
author Timo Sirainen <tss@iki.fi>
date Wed, 26 May 2010 17:07:51 +0100
parents 00cd9aacd03c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9532
00cd9aacd03c Updated copyright notices to include year 2010.
Timo Sirainen <tss@iki.fi>
parents: 9078
diff changeset
1 /* Copyright (c) 2002-2010 Dovecot authors, see the included COPYING file */
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
2
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
3 #include "common.h"
1083
f6ec28683512 auth: kill login connection if it leaves requests hanging too long.
Timo Sirainen <tss@iki.fi>
parents: 1081
diff changeset
4 #include "ioloop.h"
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
5 #include "mech.h"
2077
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
6 #include "str.h"
2943
6a6e794bb6d3 Mechanism list / passdb compatibility checking wasn't working because we
Timo Sirainen <tss@iki.fi>
parents: 2798
diff changeset
7 #include "passdb.h"
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
8
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
9 #include <stdlib.h>
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
10
3065
29d83a8bb50d Reorganized the code to have less global/static variables.
Timo Sirainen <tss@iki.fi>
parents: 3064
diff changeset
11 static struct mech_module_list *mech_modules;
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
12
5640
8591bc9961d9 Constify struct mech_module.
Andrey Panin <pazke@donpac.ru>
parents: 4798
diff changeset
13 void mech_register_module(const struct mech_module *module)
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
14 {
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
15 struct mech_module_list *list;
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
16
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
17 list = i_new(struct mech_module_list, 1);
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
18 list->module = *module;
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
19
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
20 list->next = mech_modules;
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
21 mech_modules = list;
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
22 }
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
23
5640
8591bc9961d9 Constify struct mech_module.
Andrey Panin <pazke@donpac.ru>
parents: 4798
diff changeset
24 void mech_unregister_module(const struct mech_module *module)
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
25 {
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
26 struct mech_module_list **pos, *list;
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
27
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
28 for (pos = &mech_modules; *pos != NULL; pos = &(*pos)->next) {
2077
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
29 if (strcmp((*pos)->module.mech_name, module->mech_name) == 0) {
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
30 list = *pos;
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
31 *pos = (*pos)->next;
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
32 i_free(list);
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
33 break;
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
34 }
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
35 }
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
36 }
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
37
5788
bdb16967be64 Further const'ification of struct mech_module.
Andrey Panin <pazke@donpac.ru>
parents: 5641
diff changeset
38 const struct mech_module *mech_module_find(const char *name)
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
39 {
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
40 struct mech_module_list *list;
2077
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
41
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
42 for (list = mech_modules; list != NULL; list = list->next) {
2081
3c0fb1a4a379 Case insensitive lookups for mechanism names
Timo Sirainen <tss@iki.fi>
parents: 2077
diff changeset
43 if (strcasecmp(list->module.mech_name, name) == 0)
2077
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
44 return &list->module;
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
45 }
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
46 return NULL;
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
47 }
d5b20d679b8a Removed hardcoded mechanism lists. It's now possible to add them
Timo Sirainen <tss@iki.fi>
parents: 2076
diff changeset
48
4414
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
49 void mech_generic_auth_initial(struct auth_request *request,
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
50 const unsigned char *data, size_t data_size)
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
51 {
9078
76d455a7f4da auth: If initial SASL reply was given but empty, pass it to auth mechanisms.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
52 if (data == NULL) {
4414
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
53 request->callback(request, AUTH_CLIENT_RESULT_CONTINUE,
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
54 NULL, 0);
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
55 } else {
9078
76d455a7f4da auth: If initial SASL reply was given but empty, pass it to auth mechanisms.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
56 /* initial reply given, even if it was 0 bytes */
4414
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
57 request->mech->auth_continue(request, data, data_size);
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
58 }
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
59 }
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
60
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
61 void mech_generic_auth_free(struct auth_request *request)
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
62 {
6428
7cad076906eb pool_unref() now takes ** pointer.
Timo Sirainen <tss@iki.fi>
parents: 6199
diff changeset
63 pool_unref(&request->pool);
4414
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
64 }
9017db478693 Added mech_generic_auth_internal() and mech_generic_auth_free() functions
Timo Sirainen <tss@iki.fi>
parents: 3683
diff changeset
65
5641
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
66 extern const struct mech_module mech_plain;
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
67 extern const struct mech_module mech_login;
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
68 extern const struct mech_module mech_apop;
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
69 extern const struct mech_module mech_cram_md5;
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
70 extern const struct mech_module mech_digest_md5;
9078
76d455a7f4da auth: If initial SASL reply was given but empty, pass it to auth mechanisms.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
71 extern const struct mech_module mech_external;
5641
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
72 extern const struct mech_module mech_ntlm;
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
73 extern const struct mech_module mech_otp;
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
74 extern const struct mech_module mech_skey;
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
75 extern const struct mech_module mech_rpa;
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
76 extern const struct mech_module mech_anonymous;
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3065
diff changeset
77 #ifdef HAVE_GSSAPI
5641
209a71c37012 Declare extern struct mech_modules also const
Timo Sirainen <tss@iki.fi>
parents: 5640
diff changeset
78 extern const struct mech_module mech_gssapi;
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3065
diff changeset
79 #endif
8094
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
80 #ifdef HAVE_GSSAPI_SPNEGO
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
81 extern const struct mech_module mech_gssapi_spnego;
641d761219a6 Support GSS-SPNEGO mechanism if GSSAPI library supports it.
Timo Sirainen <tss@iki.fi>
parents: 7086
diff changeset
82 #endif
6181
18f663e23c28 Added support for Samba's ntlm_auth helper. It's used for GSS-SPNEGO
Timo Sirainen <tss@iki.fi>
parents: 5788
diff changeset
83 extern const struct mech_module mech_winbind_ntlm;
18f663e23c28 Added support for Samba's ntlm_auth helper. It's used for GSS-SPNEGO
Timo Sirainen <tss@iki.fi>
parents: 5788
diff changeset
84 extern const struct mech_module mech_winbind_spnego;
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
85
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
86 void mech_init(void)
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
87 {
3065
29d83a8bb50d Reorganized the code to have less global/static variables.
Timo Sirainen <tss@iki.fi>
parents: 3064
diff changeset
88 mech_register_module(&mech_plain);
29d83a8bb50d Reorganized the code to have less global/static variables.
Timo Sirainen <tss@iki.fi>
parents: 3064
diff changeset
89 mech_register_module(&mech_login);
29d83a8bb50d Reorganized the code to have less global/static variables.
Timo Sirainen <tss@iki.fi>
parents: 3064
diff changeset
90 mech_register_module(&mech_apop);
29d83a8bb50d Reorganized the code to have less global/static variables.
Timo Sirainen <tss@iki.fi>
parents: 3064
diff changeset
91 mech_register_module(&mech_cram_md5);
29d83a8bb50d Reorganized the code to have less global/static variables.
Timo Sirainen <tss@iki.fi>
parents: 3064
diff changeset
92 mech_register_module(&mech_digest_md5);
9078
76d455a7f4da auth: If initial SASL reply was given but empty, pass it to auth mechanisms.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
93 mech_register_module(&mech_external);
8095
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
94 if (getenv("USE_WINBIND") != NULL) {
6181
18f663e23c28 Added support for Samba's ntlm_auth helper. It's used for GSS-SPNEGO
Timo Sirainen <tss@iki.fi>
parents: 5788
diff changeset
95 mech_register_module(&mech_winbind_ntlm);
8095
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
96 mech_register_module(&mech_winbind_spnego);
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
97 } else {
6181
18f663e23c28 Added support for Samba's ntlm_auth helper. It's used for GSS-SPNEGO
Timo Sirainen <tss@iki.fi>
parents: 5788
diff changeset
98 mech_register_module(&mech_ntlm);
8095
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
99 #if defined(HAVE_GSSAPI_SPNEGO) && defined(BUILTIN_GSSAPI)
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
100 mech_register_module(&mech_gssapi_spnego);
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
101 #endif
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
102 }
4798
c04189d77a59 Added OTP and S/KEY authentication mechanisms. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 4414
diff changeset
103 mech_register_module(&mech_otp);
c04189d77a59 Added OTP and S/KEY authentication mechanisms. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 4414
diff changeset
104 mech_register_module(&mech_skey);
3065
29d83a8bb50d Reorganized the code to have less global/static variables.
Timo Sirainen <tss@iki.fi>
parents: 3064
diff changeset
105 mech_register_module(&mech_rpa);
29d83a8bb50d Reorganized the code to have less global/static variables.
Timo Sirainen <tss@iki.fi>
parents: 3064
diff changeset
106 mech_register_module(&mech_anonymous);
6199
c1d09af8bdda Added --with-gssapi=plugin
Timo Sirainen <tss@iki.fi>
parents: 6181
diff changeset
107 #ifdef BUILTIN_GSSAPI
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3065
diff changeset
108 mech_register_module(&mech_gssapi);
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3065
diff changeset
109 #endif
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
110 }
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
111
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
112 void mech_deinit(void)
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
113 {
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
114 mech_unregister_module(&mech_plain);
2346
13ed27a24f46 Added LOGIN SASL mechanism. Patch by Andrey Panin
Timo Sirainen <tss@iki.fi>
parents: 2267
diff changeset
115 mech_unregister_module(&mech_login);
2267
d2e186f716d8 Added APOP authentication for POP3. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2102
diff changeset
116 mech_unregister_module(&mech_apop);
1873
ed5e808d934f CRAM-MD5 mechanism by Joshua Goodall, plus some cleanups.
Timo Sirainen <tss@iki.fi>
parents: 1820
diff changeset
117 mech_unregister_module(&mech_cram_md5);
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
118 mech_unregister_module(&mech_digest_md5);
9078
76d455a7f4da auth: If initial SASL reply was given but empty, pass it to auth mechanisms.
Timo Sirainen <tss@iki.fi>
parents: 8590
diff changeset
119 mech_unregister_module(&mech_external);
8095
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
120 if (getenv("NTLM_USE_WINBIND") != NULL) {
6181
18f663e23c28 Added support for Samba's ntlm_auth helper. It's used for GSS-SPNEGO
Timo Sirainen <tss@iki.fi>
parents: 5788
diff changeset
121 mech_unregister_module(&mech_winbind_ntlm);
8095
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
122 mech_unregister_module(&mech_winbind_spnego);
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
123 } else {
6181
18f663e23c28 Added support for Samba's ntlm_auth helper. It's used for GSS-SPNEGO
Timo Sirainen <tss@iki.fi>
parents: 5788
diff changeset
124 mech_unregister_module(&mech_ntlm);
8095
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
125 #if defined(HAVE_GSSAPI_SPNEGO) && defined(BUILTIN_GSSAPI)
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
126 mech_unregister_module(&mech_gssapi_spnego);
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
127 #endif
1f948670f274 Renamed auth_ntlm_use_winbind to auth_use_winbind,
Timo Sirainen <tss@iki.fi>
parents: 8094
diff changeset
128 }
4798
c04189d77a59 Added OTP and S/KEY authentication mechanisms. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 4414
diff changeset
129 mech_unregister_module(&mech_otp);
c04189d77a59 Added OTP and S/KEY authentication mechanisms. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 4414
diff changeset
130 mech_unregister_module(&mech_skey);
2428
abef2ac8843a Added Compuserve RPA authentication. Patch by Andrey Panin.
Timo Sirainen <tss@iki.fi>
parents: 2426
diff changeset
131 mech_unregister_module(&mech_rpa);
1437
c27c6089e933 Added support for ANONYMOUS SASL mechanism.
Timo Sirainen <tss@iki.fi>
parents: 1330
diff changeset
132 mech_unregister_module(&mech_anonymous);
6199
c1d09af8bdda Added --with-gssapi=plugin
Timo Sirainen <tss@iki.fi>
parents: 6181
diff changeset
133 #ifdef BUILTIN_GSSAPI
3683
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3065
diff changeset
134 mech_unregister_module(&mech_gssapi);
28cca6317829 Added GSSAPI support. Patch by Jelmer Vernooij and some fixes by
Timo Sirainen <tss@iki.fi>
parents: 3065
diff changeset
135 #endif
1035
fe49ece0f3ea We have now separate "userdb" and "passdb". They aren't tied to each others
Timo Sirainen <tss@iki.fi>
parents:
diff changeset
136 }