From: nekral-guest Date: Sun, 20 May 2012 16:15:14 +0000 (+0000) Subject: * src/su.c: non PAM enabled versions: do not fail if su is called X-Git-Tag: 4.1.5.1~8 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f100b5ea7e2e431395cf7bbebb698ede1986ecaa;p=shadow * src/su.c: non PAM enabled versions: do not fail if su is called without a controlling terminal. Ignore ENXIO errors when opening /dev/tty. --- diff --git a/ChangeLog b/ChangeLog index 08106221..4924e91d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2012-05-20 Nicolas François + + * src/su.c: non PAM enabled versions: do not fail if su is called + without a controlling terminal. Ignore ENXIO errors when opening + /dev/tty. + +2012-05-20 Nicolas François + + * src/useradd.c: Cleanup, return code 13 no more used. + * man/useradd.8.xml: Document return code 14, and remove return + code 13. + 2012-05-20 Nicolas François * NEWS, man/generate_mans.mak: Generate manpages in man1, man3, diff --git a/NEWS b/NEWS index a4c2ce3e..56094326 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,9 @@ shadow-4.1.5 -> shadow-4.1.5.1 UNRELEASED - login * Log into utmp(x) when PAM is enabled, but do not log into wtmp. This complete pam_lastlog which logs into wtmp and in into utmp(x). +- su + * non PAM enabled versions: do not fail if su is called without a + controlling terminal. - userdel * Fix segfault when userdel removes the user's group. diff --git a/src/su.c b/src/su.c index f5946cc3..363a8b85 100644 --- a/src/su.c +++ b/src/su.c @@ -1092,6 +1092,9 @@ int main (int argc, char **argv) if (fd >= 0) { err = ioctl (fd, TIOCNOTTY, (char *) 0); (void) close (fd); + } else if (ENXIO == errno) { + /* There are no controlling terminal already */ + err = 0; } #endif /* USE_PAM */