diff options
author | Joep Vesseur <Joep.Vesseur@Sun.COM> | 2009-03-23 14:35:14 +0100 |
---|---|---|
committer | Joep Vesseur <Joep.Vesseur@Sun.COM> | 2009-03-23 14:35:14 +0100 |
commit | ad84d946d04cc1356150710206b0b141a93e935d (patch) | |
tree | dbb127b08d91dafbc0404c85bbcfa3f060e4739c /usr/src | |
parent | 9893142ce876f74dae9dcfdd15523ebaf8e363d6 (diff) | |
download | illumos-joyent-ad84d946d04cc1356150710206b0b141a93e935d.tar.gz |
6588644 When audit is enabled and the tty or host fails to build the terminalid, the syslog could be better
Diffstat (limited to 'usr/src')
-rw-r--r-- | usr/src/lib/pam_modules/unix_cred/unix_cred.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/usr/src/lib/pam_modules/unix_cred/unix_cred.c b/usr/src/lib/pam_modules/unix_cred/unix_cred.c index 22256206ef..5230394f50 100644 --- a/usr/src/lib/pam_modules/unix_cred/unix_cred.c +++ b/usr/src/lib/pam_modules/unix_cred/unix_cred.c @@ -261,17 +261,30 @@ pam_sm_setcred(pam_handle_t *pamh, int flags, int argc, const char **argv) struct passwd apwd; char apwbuf[NSS_BUFLEN_PASSWD]; + errno = 0; if ((rhost == NULL || *rhost == '\0')) { if (adt_load_ttyname(tty, &termid) != 0) { - syslog(LOG_AUTH | LOG_ERR, - "pam_unix_cred: cannot load ttyname %m"); + if (errno != 0) + syslog(LOG_AUTH | LOG_ERR, + "pam_unix_cred: cannot load " + "ttyname: %m."); + else + syslog(LOG_AUTH | LOG_ERR, + "pam_unix_cred: cannot load " + "ttyname."); ret = PAM_SYSTEM_ERR; goto adt_done; } } else { if (adt_load_hostname(rhost, &termid) != 0) { - syslog(LOG_AUTH | LOG_ERR, - "pam_unix_cred: cannot load hostname %m"); + if (errno != 0) + syslog(LOG_AUTH | LOG_ERR, + "pam_unix_cred: cannot load " + "hostname: %m."); + else + syslog(LOG_AUTH | LOG_ERR, + "pam_unix_cred: cannot load " + "hostname."); ret = PAM_SYSTEM_ERR; goto adt_done; } |