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;
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);
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;
}
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;
}
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;
}
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",
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");
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",
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",
}
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;
}
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;
}
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;
}
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);
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",
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");
"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:
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;
}
}
} 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;
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;
}