]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: Use a common auth_request_log_unknown_user() for logging "unknown user" entries.
authorTimo Sirainen <tss@iki.fi>
Sat, 21 Sep 2013 23:32:05 +0000 (02:32 +0300)
committerTimo Sirainen <tss@iki.fi>
Sat, 21 Sep 2013 23:32:05 +0000 (02:32 +0300)
17 files changed:
src/auth/auth-request.c
src/auth/auth-request.h
src/auth/db-passwd-file.c
src/auth/passdb-bsdauth.c
src/auth/passdb-cache.c
src/auth/passdb-dict.c
src/auth/passdb-ldap.c
src/auth/passdb-pam.c
src/auth/passdb-passwd.c
src/auth/passdb-shadow.c
src/auth/passdb-sql.c
src/auth/userdb-dict.c
src/auth/userdb-ldap.c
src/auth/userdb-nss.c
src/auth/userdb-passwd.c
src/auth/userdb-sql.c
src/auth/userdb-vpopmail.c

index 7206a3f303e15d0e875d69c2d1d61ae2a8326c2c..a2ff1c0a99187679a2ec08e4d41b810fb030bd46 100644 (file)
@@ -2114,6 +2114,12 @@ void auth_request_log_error(struct auth_request *auth_request,
        va_end(va);
 }
 
+void auth_request_log_unknown_user(struct auth_request *auth_request,
+                                  const char *subsystem)
+{
+       auth_request_log_info(auth_request, subsystem, "unknown user");
+}
+
 void auth_request_refresh_last_access(struct auth_request *request)
 {
        request->last_access = ioloop_time;
index f72d6b5bc235aa561cade1cc458ec0f9153116bb..e0fae78ed522ba8d630baf554559f719b7d419b8 100644 (file)
@@ -245,6 +245,8 @@ void auth_request_log_warning(struct auth_request *auth_request,
 void auth_request_log_error(struct auth_request *auth_request,
                            const char *subsystem,
                            const char *format, ...) ATTR_FORMAT(3, 4);
+void auth_request_log_unknown_user(struct auth_request *auth_request,
+                                  const char *subsystem);
 
 void auth_request_verify_plain_callback(enum passdb_result result,
                                        struct auth_request *request);
index eeda7bcedf50e5a769a779006dbe8bef13afd3f6..ef61d2be84be8f5316b645403b16fdcf45d3c4a5 100644 (file)
@@ -463,7 +463,7 @@ db_passwd_file_lookup(struct db_passwd_file *db, struct auth_request *request,
 
        pu = hash_table_lookup(pw->users, str_c(username));
        if (pu == NULL)
-                auth_request_log_info(request, "passwd-file", "unknown user");
+                auth_request_log_unknown_user(request, "passwd-file");
        return pu;
 }
 
index 3de7d53a2a8ac13b68df95fdf8f70186befb7e21..ee1c59ac4382b3b7a9d92d409a0c6bc930c25552 100644 (file)
@@ -30,7 +30,7 @@ bsdauth_verify_plain(struct auth_request *request, const char *password,
                callback(PASSDB_RESULT_INTERNAL_FAILURE, request);
                return;
        case 0:
-               auth_request_log_info(request, "bsdauth", "unknown user");
+               auth_request_log_unknown_user(request, "bsdauth");
                callback(PASSDB_RESULT_USER_UNKNOWN, request);
                return;
        }
index ed7331f8f6273d702fc16a0dfec3f06852def05e..a18f45aad18e205ea346cede0054c8da0ac2c8f0 100644 (file)
@@ -48,7 +48,7 @@ bool passdb_cache_verify_plain(struct auth_request *request, const char *key,
 
        if (*value == '\0') {
                /* negative cache entry */
-               auth_request_log_info(request, "cache", "User unknown");
+               auth_request_log_unknown_user(request, "cache");
                *result_r = PASSDB_RESULT_USER_UNKNOWN;
                return TRUE;
        }
index d2d91e5aa52e4750d8b633349b4c18b20489fffd..f4b4dc70193bffa67d788f13d6e73794707bf866 100644 (file)
@@ -64,7 +64,7 @@ passdb_dict_lookup_key(struct auth_request *auth_request,
                auth_request_log_error(auth_request, "dict", "Lookup failed");
                return PASSDB_RESULT_INTERNAL_FAILURE;
        } else if (ret == 0) {
-               auth_request_log_info(auth_request, "dict", "unknown user");
+               auth_request_log_unknown_user(auth_request, "dict");
                return PASSDB_RESULT_USER_UNKNOWN;
        } else {
                auth_request_log_debug(auth_request, "dict",
index 15d392c163aeb6fbae14f2970362db2fc14b2a87..4be5d154c75cbe0e35315944669b7811cd44b8e2 100644 (file)
@@ -77,8 +77,7 @@ ldap_lookup_finish(struct auth_request *auth_request,
                passdb_result = PASSDB_RESULT_INTERNAL_FAILURE;
        } else if (ldap_request->entries == 0) {
                passdb_result = PASSDB_RESULT_USER_UNKNOWN;
-               auth_request_log_info(auth_request, "ldap",
-                                     "unknown user");
+               auth_request_log_unknown_user(auth_request, "ldap");
        } else if (ldap_request->entries > 1) {
                auth_request_log_error(auth_request, "ldap",
                        "pass_filter matched multiple objects, aborting");
@@ -166,8 +165,7 @@ ldap_auth_bind_callback(struct ldap_connection *conn,
                        passdb_result = PASSDB_RESULT_PASSWORD_MISMATCH;
                } else if (ret == LDAP_NO_SUCH_OBJECT) {
                        passdb_result = PASSDB_RESULT_USER_UNKNOWN;
-                       auth_request_log_info(auth_request, "ldap",
-                                             "unknown user");
+                       auth_request_log_unknown_user(auth_request, "ldap");
                } else {
                        auth_request_log_error(auth_request, "ldap",
                                               "ldap_bind() failed: %s",
@@ -214,8 +212,7 @@ ldap_bind_lookup_dn_fail(struct auth_request *auth_request,
                passdb_result = PASSDB_RESULT_INTERNAL_FAILURE;
        else if (request->entries == 0) {
                passdb_result = PASSDB_RESULT_USER_UNKNOWN;
-               auth_request_log_info(auth_request, "ldap",
-                                     "unknown user");
+               auth_request_log_unknown_user(auth_request, "ldap");
        } else {
                i_assert(request->entries > 1);
                auth_request_log_error(auth_request, "ldap",
index 0c15bf86fce58d105440250fbd111b5a842b89b0..03e43e89297cf7236938c9bbfa4c84a6dbe16465 100644 (file)
@@ -181,7 +181,10 @@ static int try_pam_auth(struct auth_request *request, pam_handle_t *pamh,
                        }
                        auth_request_log_info(request, "pam", "%s", str);
                } else {
-                       auth_request_log_info(request, "pam", "%s", str);
+                       if (status == PAM_USER_UNKNOWN)
+                               auth_request_log_unknown_user(request, "pam");
+                       else
+                               auth_request_log_info(request, "pam", "%s", str);
                }
                return status;
        }
index 5879f7684857fac4569ecbeca6b87c7a17a7b866..37043cd5e6c6b7eab6af87c4fe0a70371561e79f 100644 (file)
@@ -27,7 +27,7 @@ passwd_verify_plain(struct auth_request *request, const char *password,
                callback(PASSDB_RESULT_INTERNAL_FAILURE, request);
                return;
        case 0:
-               auth_request_log_info(request, "passwd", "unknown user");
+               auth_request_log_unknown_user(request, "passwd");
                callback(PASSDB_RESULT_USER_UNKNOWN, request);
                return;
        }
index 2aa1bca938b7072d91ab91cc2853e9c5cc417ac1..0424fd6328ba253b6cd609b93a683a5432e8dc7f 100644 (file)
@@ -23,7 +23,7 @@ shadow_verify_plain(struct auth_request *request, const char *password,
 
        spw = getspnam(request->user);
        if (spw == NULL) {
-               auth_request_log_info(request, "shadow", "unknown user");
+               auth_request_log_unknown_user(request, "shadow");
                callback(PASSDB_RESULT_USER_UNKNOWN, request);
                return;
        }
index 55fe7167e19c670b98d688dbe7ffdaec7239ab7d..57ce919c61456aaa0e8d8f0786643cc7242cd591 100644 (file)
@@ -85,7 +85,7 @@ static void sql_query_callback(struct sql_result *result,
                                module->conn->set.password_query);
                }
        } else if (ret == 0) {
-               auth_request_log_info(auth_request, "sql", "unknown user");
+               auth_request_log_unknown_user(auth_request, "sql");
                passdb_result = PASSDB_RESULT_USER_UNKNOWN;
        } else {
                sql_query_save_results(result, sql_request);
index 1d392f3d43c4016afa814628877752647f39d532..169b5ccb3eb3498e5038c1c74c72ad1900c1baac 100644 (file)
@@ -81,7 +81,7 @@ static void userdb_dict_lookup(struct auth_request *auth_request,
                auth_request_log_error(auth_request, "dict", "Lookup failed");
                userdb_result = USERDB_RESULT_INTERNAL_FAILURE;
        } else if (ret == 0) {
-               auth_request_log_info(auth_request, "dict", "unknown user");
+               auth_request_log_unknown_user(auth_request, "dict");
                userdb_result = USERDB_RESULT_USER_UNKNOWN;
        } else {
                auth_request_log_debug(auth_request, "dict",
index f009c88695994d6faa2afe1e26770fa045821383..0d66e74a706c41056805a3092c75b114ed53c3e9 100644 (file)
@@ -71,8 +71,7 @@ userdb_ldap_lookup_finish(struct auth_request *auth_request,
                result = USERDB_RESULT_INTERNAL_FAILURE;
        } else if (urequest->entries == 0) {
                result = USERDB_RESULT_USER_UNKNOWN;
-               auth_request_log_info(auth_request, "ldap",
-                                     "unknown user");
+               auth_request_log_unknown_user(auth_request, "ldap");
        } else if (urequest->entries > 1) {
                auth_request_log_error(auth_request, "ldap",
                        "user_filter matched multiple objects, aborting");
index 1dda872d0f3a210c4d522a071f4730c6fb99062f..39416e82d497865b588e261bbb7864bee8b8d250 100644 (file)
@@ -52,7 +52,7 @@ userdb_nss_lookup(struct auth_request *auth_request,
                                       "unavailable (err=%d)", err);
                break;
        case NSS_STATUS_NOTFOUND:
-               auth_request_log_info(auth_request, "nss", "unknown user");
+               auth_request_log_unknown_user(auth_request, "nss");
                result = USERDB_RESULT_USER_UNKNOWN;
                break;
        case NSS_STATUS_SUCCESS:
index 438bec16ef13ff7e37597e2e6fcad00eeabd1ebf..1a8146cb47e48394a4146ba2aa3a5f2b991d7996 100644 (file)
@@ -101,7 +101,7 @@ static void passwd_lookup(struct auth_request *auth_request,
                callback(USERDB_RESULT_INTERNAL_FAILURE, auth_request);
                return;
        case 0:
-               auth_request_log_info(auth_request, "passwd", "unknown user");
+               auth_request_log_unknown_user(auth_request, "passwd");
                callback(USERDB_RESULT_USER_UNKNOWN, auth_request);
                return;
        }
index bce281c33175255c084b1816a9057d0733dc5af8..2638f980fa36ca09454cc9f643b5850c2d93d84f 100644 (file)
@@ -83,7 +83,7 @@ static void sql_query_callback(struct sql_result *sql_result,
                }
        } else if (ret == 0) {
                result = USERDB_RESULT_USER_UNKNOWN;
-               auth_request_log_info(auth_request, "sql", "Unknown user");
+               auth_request_log_unknown_user(auth_request, "sql");
        } else {
                sql_query_get_result(sql_result, auth_request);
                result = USERDB_RESULT_OK;
index bf2b8122ca3fec13f92ac109841a50fa04eb5732..f07da1dd0d375d564c0447a88c2b07768f1c148f 100644 (file)
@@ -42,7 +42,7 @@ struct vqpasswd *vpopmail_lookup_vqp(struct auth_request *request,
 
        vpw = vauth_getpw(vpop_user, vpop_domain);
        if (vpw == NULL) {
-               auth_request_log_info(request, "vpopmail", "unknown user");
+               auth_request_log_unknown_user(request, "vpopmail");
                return NULL;
        }