]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: Fix crash on passdb lookup when all passdbs were skipped
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Tue, 30 May 2017 08:30:10 +0000 (11:30 +0300)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Tue, 30 May 2017 08:59:26 +0000 (11:59 +0300)
Finishes the fix in 614f5b6febaf3c825f9200ab3b62d9d047197b0e

Fixes:
auth: Panic: file auth-request.c: line 2493 (get_log_prefix): assertion failed: (auth_request->mech != NULL)

src/auth/auth-request.c

index 33210e89d7e308b930a5a6a6fb13bdcf7f7d1b4a..3d52655f370112337879a0c828955ffaa0f60b65 100644 (file)
@@ -1062,7 +1062,8 @@ void auth_request_verify_plain_continue(struct auth_request *request,
        request->passdb = passdb;
 
        if (passdb == NULL) {
-               auth_request_log_error(request, AUTH_SUBSYS_MECH,
+               auth_request_log_error(request,
+                       request->mech != NULL ? AUTH_SUBSYS_MECH : "none",
                        "All password databases were skipped");
                callback(PASSDB_RESULT_INTERNAL_FAILURE, request);
                return;
@@ -1229,7 +1230,8 @@ void auth_request_lookup_credentials_policy_continue(struct auth_request *reques
        request->passdb = passdb;
 
        if (passdb == NULL) {
-               auth_request_log_error(request, AUTH_SUBSYS_MECH,
+               auth_request_log_error(request,
+                       request->mech != NULL ? AUTH_SUBSYS_MECH : "none",
                        "All password databases were skipped");
                callback(PASSDB_RESULT_INTERNAL_FAILURE, NULL, 0, request);
                return;