From c134aa17fcb7a7730ff9e76010cb1eecb51852a7 Mon Sep 17 00:00:00 2001 From: Paul Mackerras Date: Tue, 19 Jan 1999 23:59:39 +0000 Subject: [PATCH] use fchmod rather than chmod to restore device permissions --- pppd/main.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pppd/main.c b/pppd/main.c index dbeaeac..214af77 100644 --- a/pppd/main.c +++ b/pppd/main.c @@ -18,7 +18,7 @@ */ #ifndef lint -static char rcsid[] = "$Id: main.c,v 1.51 1998/11/07 06:59:28 paulus Exp $"; +static char rcsid[] = "$Id: main.c,v 1.52 1999/01/19 23:59:39 paulus Exp $"; #endif #include @@ -827,8 +827,12 @@ close_tty() restore_tty(ttyfd); - if (tty_mode != (mode_t) -1) - chmod(devnam, tty_mode); + if (tty_mode != (mode_t) -1) { + if (fchmod(devnam, tty_mode) != 0) { + /* XXX if devnam is a symlink, this will change the link */ + chmod(devnam, tty_mode); + } + } close(ttyfd); ttyfd = -1; -- 2.39.2