]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: Do not use AUTH_SUBSYS_MECH in logging when request->mech is NULL
authorAki Tuomi <aki.tuomi@dovecot.fi>
Tue, 9 May 2017 09:25:49 +0000 (12:25 +0300)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Thu, 11 May 2017 13:12:20 +0000 (16:12 +0300)
This can happen when a lookup is done instead of authentication.

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

src/auth/auth-request.c

index 5f6e93be998e088a70c0f781d62ad6af936b232a..33210e89d7e308b930a5a6a6fb13bdcf7f7d1b4a 100644 (file)
@@ -674,14 +674,18 @@ auth_request_want_skip_passdb(struct auth_request *request,
        username = request->user;
 
        if (!auth_request_mechanism_accepted(mechs, request->mech)) {
-               auth_request_log_debug(request, AUTH_SUBSYS_MECH,
+               auth_request_log_debug(request,
+                                      request->mech != NULL ? AUTH_SUBSYS_MECH
+                                                             : "none",
                                       "skipping passdb: mechanism filtered");
                return TRUE;
        }
 
        if (passdb->passdb->username_filter != NULL &&
            !auth_request_username_accepted(username_filter, username)) {
-               auth_request_log_debug(request, AUTH_SUBSYS_MECH,
+               auth_request_log_debug(request,
+                                      request->mech != NULL ? AUTH_SUBSYS_MECH
+                                                             : "none",
                                       "skipping passdb: username filtered");
                return TRUE;
        }