aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2004-09-28 04:41:42 +0000
committerChristopher Faylor <me@cgf.cx>2004-09-28 04:41:42 +0000
commite3e443e4df7faa1de17ed4b472ecf6d3068f86d1 (patch)
treeda51bcde5a4f07ec4a95dc1decf947faa544aef6
parent2b94cfce8932fdf3a1f88b8a909cb0fb65bcb9b7 (diff)
downloadnewlib-e3e443e4df7faa1de17ed4b472ecf6d3068f86d1.zip
newlib-e3e443e4df7faa1de17ed4b472ecf6d3068f86d1.tar.gz
newlib-e3e443e4df7faa1de17ed4b472ecf6d3068f86d1.tar.bz2
* fhandler_termios.cc (fhandler_termios::tcsetpgrp): Disallow attempts to set
the process group to a nonexistent process group.
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/fhandler_termios.cc2
2 files changed, 6 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 75e4619..c0b6fe8 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+2004-09-28 Christopher Faylor <cgf@timesys.com>
+
+ * fhandler_termios.cc (fhandler_termios::tcsetpgrp): Disallow attempts
+ to set the process group to a nonexistent process group.
+
2004-09-27 Corinna Vinschen <corinna@vinschen.de>
* lib/_cygwin_crt0_common.cc: Revert patch from 2004-09-16. Brakes
diff --git a/winsup/cygwin/fhandler_termios.cc b/winsup/cygwin/fhandler_termios.cc
index ecef3b8..4f1ce3e 100644
--- a/winsup/cygwin/fhandler_termios.cc
+++ b/winsup/cygwin/fhandler_termios.cc
@@ -67,7 +67,7 @@ fhandler_termios::tcsetpgrp (const pid_t pgid)
{
termios_printf ("tty %d pgid %d, sid %d, tsid %d", tc->ntty, pgid,
myself->sid, tc->getsid ());
- if (myself->sid != tc->getsid ())
+ if (!pid_exists (pgid) || myself->sid != tc->getsid ())
{
set_errno (EPERM);
return -1;