diff options
author | Balint Reczey <balint@balintreczey.hu> | 2016-11-30 02:36:06 +0100 |
---|---|---|
committer | Balint Reczey <balint@balintreczey.hu> | 2016-11-30 02:36:06 +0100 |
commit | 365658d0f3a51814626afbb70aa2dd7b5e82ac36 (patch) | |
tree | 7218fb9147359258fda0f9a43da5a29b2d20e85b /src/newgrp.c | |
parent | bfaa59229d61adb7fa0c570f0d94fd324c6e05aa (diff) | |
download | shadow-365658d0f3a51814626afbb70aa2dd7b5e82ac36.tar.gz |
Imported Upstream version 4.4upstream/4.4
Diffstat (limited to 'src/newgrp.c')
-rw-r--r-- | src/newgrp.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/newgrp.c b/src/newgrp.c index 49dd1512..b8d3ddc8 100644 --- a/src/newgrp.c +++ b/src/newgrp.c @@ -255,12 +255,15 @@ static void syslog_sg (const char *name, const char *group) { const char *loginname = getlogin (); const char *tty = ttyname (0); + char *free_login = NULL, *free_tty = NULL; if (loginname != NULL) { - loginname = xstrdup (loginname); + free_login = xstrdup (loginname); + loginname = free_login; } if (tty != NULL) { - tty = xstrdup (tty); + free_tty = xstrdup (tty); + tty = free_tty; } if (loginname == NULL) { @@ -372,6 +375,8 @@ static void syslog_sg (const char *name, const char *group) (void) signal (SIGTTOU, SIG_DFL); } #endif /* USE_PAM */ + free(free_login); + free(free_tty); } #endif /* USE_SYSLOG */ |