]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
auth: When complaining about auth-userdb permission errors, log also the wanted UID...
authorTimo Sirainen <tss@iki.fi>
Mon, 7 Nov 2011 20:54:32 +0000 (22:54 +0200)
committerTimo Sirainen <tss@iki.fi>
Mon, 7 Nov 2011 20:54:32 +0000 (22:54 +0200)
src/auth/auth-master-connection.c

index b97843a44aeef537a1209db19e99b64e9cf92bde..bb57ce39c5fdb724991fd7a2315bc0454cfa1285 100644 (file)
@@ -12,6 +12,7 @@
 #include "network.h"
 #include "istream.h"
 #include "ostream.h"
+#include "ipwd.h"
 #include "master-service.h"
 #include "userdb.h"
 #include "userdb-blocking.h"
@@ -331,9 +332,17 @@ pass_callback(enum passdb_result result,
 
 static const char *auth_restricted_reason(struct auth_master_connection *conn)
 {
-       return t_strdup_printf("%s mode=0666, but not owned by UID %lu",
+       struct passwd pw;
+       const char *namestr;
+
+       if (i_getpwuid(conn->userdb_restricted_uid, &pw) <= 0)
+               namestr = "";
+       else
+               namestr = t_strdup_printf("(%s)", pw.pw_name);
+       return t_strdup_printf("%s mode=0666, but not owned by UID %lu%s",
                               conn->path,
-                              (unsigned long)conn->userdb_restricted_uid);
+                              (unsigned long)conn->userdb_restricted_uid,
+                              namestr);
 }
 
 static bool