--- ./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)