summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorJoep Vesseur <Joep.Vesseur@Sun.COM>2009-03-23 14:35:14 +0100
committerJoep Vesseur <Joep.Vesseur@Sun.COM>2009-03-23 14:35:14 +0100
commitad84d946d04cc1356150710206b0b141a93e935d (patch)
treedbb127b08d91dafbc0404c85bbcfa3f060e4739c /usr/src
parent9893142ce876f74dae9dcfdd15523ebaf8e363d6 (diff)
downloadillumos-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.c21
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;
}