summaryrefslogtreecommitdiffstats
path: root/source/a/shadow/shadow.newgrp.getlogin
blob: 5d032f15c7ed8bbd9158035b4de3ece61125911f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
--- ./src/newgrp.c.orig	2003-05-31 21:19:39.000000000 -0700
+++ ./src/newgrp.c	2003-05-31 21:21:32.000000000 -0700
@@ -76,6 +76,7 @@
 	gid_t gid;
 	char *cp;
 	const char *cpasswd, *name, *prog;
+	char *loginname = NULL;
 	char *group = NULL;
 	char *command = NULL;
 	char **envp = environ;
@@ -386,7 +387,9 @@
 		SYSLOG ((LOG_INFO, "user `%s' switched to group `%s'",
 			 name, group));
 	if (getdef_bool ("SYSLOG_SG_ENAB")) {
-		char *loginname = xstrdup (getlogin ());
+                char *user = getlogin ();
+                if (user != NULL)
+                        loginname = xstrdup (user);
 		char *tty = xstrdup (ttyname (0));
 
 		if (loginname == NULL)