repo: ngircd
action: commit
revision: 
path_from: 
revision_from: 1bb2fbedcc975aa6e424fd201f59a178a03d45b0:
path_to: 
revision_to: 
git.thebackupbox.net
ngircd
git clone git://git.thebackupbox.net/ngircd
commit 1bb2fbedcc975aa6e424fd201f59a178a03d45b0
Author: Alexander Barton 
Date:   Tue Jan 3 21:05:35 2012 +0100

    Enhance log messages when setting user and group

diff --git a/src/ngircd/ngircd.c b/src/ngircd/ngircd.c
index ec2462aeb1d38abd7dc98ad1555c223c794bfb79..
index ..874dfa3f6bb7de2ae9a8bc632a7a65f8ce58b38e 100644
--- a/src/ngircd/ngircd.c
+++ b/src/ngircd/ngircd.c
@@ -658,10 +658,10 @@ NGIRCd_Init(bool NGIRCd_NoDaemon)

 	/* Check user ID */
 	if (Conf_UID == 0) {
+		pwd = getpwuid(0);
 		Log(LOG_INFO,
-		    "ServerUID must not be 0, using \"nobody\" instead.",
-		    Conf_UID);
-
+		    "ServerUID must not be %s(0), using \"nobody\" instead.",
+		    pwd ? pwd->pw_name : "?");
 		if (!NGIRCd_getNobodyID(&Conf_UID, &Conf_GID)) {
 			Log(LOG_WARNING,
 			    "Could not get user/group ID of user \"nobody\": %s",
@@ -674,8 +674,10 @@ NGIRCd_Init(bool NGIRCd_NoDaemon)
 	if (getgid() != Conf_GID) {
 		if (setgid(Conf_GID) != 0) {
 			real_errno = errno;
-			Log(LOG_ERR, "Can't change group ID to %u: %s",
-			    Conf_GID, strerror(errno));
+			grp = getgrgid(Conf_GID);
+			Log(LOG_ERR, "Can't change group ID to %s(%u): %s",
+			    grp ? grp->gr_name : "?", Conf_GID,
+			    strerror(errno));
 			if (real_errno != EPERM) 
 				goto out;
 		}
@@ -685,8 +687,10 @@ NGIRCd_Init(bool NGIRCd_NoDaemon)
 	if (getuid() != Conf_UID) {
 		if (setuid(Conf_UID) != 0) {
 			real_errno = errno;
-			Log(LOG_ERR, "Can't change user ID to %u: %s",
-			    Conf_UID, strerror(errno));
+			pwd = getpwuid(Conf_UID);
+			Log(LOG_ERR, "Can't change user ID to %s(%u): %s",
+			    pwd ? pwd->pw_name : "?", Conf_UID,
+			    strerror(errno));
 			if (real_errno != EPERM)
 				goto out;
 		}

-----END OF PAGE-----