mech.h revision 73bfdbe28c2ce6d143eadf0bab8ccfbe4cab0fae
e0aff4c7e3336ec4b5edbcfc3a72e1e118603ee2Timo Sirainentypedef void mech_callback_t(struct auth_request *request,
e0aff4c7e3336ec4b5edbcfc3a72e1e118603ee2Timo Sirainen unsigned int id;
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainen /* ... mechanism specific data ... */
7ff6268cc35102675d73d44d680bed13d0709f7bTimo Sirainen void (*auth_initial)(struct auth_request *request,
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainen void (*auth_continue)(struct auth_request *request,
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainen void (*auth_free)(struct auth_request *request);
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenextern const char *const *auth_realms;
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenextern const char *default_realm;
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenextern const char *anonymous_username;
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenvoid mech_register_module(struct mech_module *module);
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenvoid mech_unregister_module(struct mech_module *module);
0f97c2b6ec76e7f600e983cb952cf265a6189114Timo Sirainenstruct mech_module *mech_module_find(const char *name);
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenconst string_t *auth_mechanisms_get_list(void);
2848ed04730e9f2ed91829d41312ebc3132b5613Timo Sirainenvoid mech_auth_finish(struct auth_request *request,
2848ed04730e9f2ed91829d41312ebc3132b5613Timo Sirainen const void *data, size_t data_size, int success);
cf05592015b99607095f970bf914f5d069bf0666Timo Sirainenint mech_fix_username(char *username, const char **error_r);
cf05592015b99607095f970bf914f5d069bf0666Timo Sirainenstruct auth_request *auth_request_new(struct mech_module *mech);
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenvoid auth_request_destroy(struct auth_request *request);
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenvoid auth_request_ref(struct auth_request *request);
402e999a878e0cc41a0afb830fea0a93afc75f0dTimo Sirainenint auth_request_unref(struct auth_request *request);
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenauth_request_get_var_expand_table(const struct auth_request *auth_request,
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainen const char *(*escape_func)(const char *));
66e1cf5014bec1cf1a8339be6fccc9be5ad3c793Timo Sirainenconst char *get_log_prefix(const struct auth_request *auth_request);