From: Aki Tuomi Date: Wed, 2 Jan 2019 08:08:16 +0000 (+0200) Subject: auth: passdb - Add passdb_result_to_string X-Git-Tag: 2.3.9~770 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e80f2fddbd06077a76e565bbc04e200333897edd;p=thirdparty%2Fdovecot%2Fcore.git auth: passdb - Add passdb_result_to_string --- diff --git a/src/auth/passdb.c b/src/auth/passdb.c index a4b6bc18ea..033ceb8500 100644 --- a/src/auth/passdb.c +++ b/src/auth/passdb.c @@ -286,6 +286,30 @@ void passdbs_generate_md5(unsigned char md5[STATIC_ARRAY MD5_RESULTLEN]) md5_final(&ctx, md5); } +const char * +passdb_result_to_string(enum passdb_result result) +{ + switch (result) { + case PASSDB_RESULT_INTERNAL_FAILURE: + return "internal_failure"; + case PASSDB_RESULT_SCHEME_NOT_AVAILABLE: + return "scheme_not_available"; + case PASSDB_RESULT_USER_UNKNOWN: + return "user_unknown"; + case PASSDB_RESULT_USER_DISABLED: + return "user_disabled"; + case PASSDB_RESULT_PASS_EXPIRED: + return "pass_expired"; + case PASSDB_RESULT_NEXT: + return "next"; + case PASSDB_RESULT_PASSWORD_MISMATCH: + return "password_mismatch"; + case PASSDB_RESULT_OK: + return "ok"; + } + i_unreached(); +} + extern struct passdb_module_interface passdb_passwd; extern struct passdb_module_interface passdb_bsdauth; extern struct passdb_module_interface passdb_dict; diff --git a/src/auth/passdb.h b/src/auth/passdb.h index ea07dbb6b4..7625f57f4a 100644 --- a/src/auth/passdb.h +++ b/src/auth/passdb.h @@ -82,6 +82,8 @@ struct passdb_module { struct passdb_module_interface iface; }; +const char *passdb_result_to_string(enum passdb_result result); + /* Try to get credentials in wanted scheme (request->credentials_scheme) from given input. Returns FALSE if this wasn't possible (unknown scheme, conversion not possible or invalid credentials).