public inbox for cygwin-cvs@sourceware.org help / color / mirror / Atom feed
From: Takashi Yano <tyan0@sourceware.org> To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin] Cygwin: devices: Make generic console devices invisible from pty. Date: Thu, 22 Dec 2022 13:33:29 +0000 (GMT) [thread overview] Message-ID: <20221222133329.C31D7385B500@sourceware.org> (raw) https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=043b6089e2006dcde31811e35a5de6619a0e0098 commit 043b6089e2006dcde31811e35a5de6619a0e0098 Author: Takashi Yano <takashi.yano@nifty.ne.jp> Date: Wed Dec 21 10:06:10 2022 +0900 Cygwin: devices: Make generic console devices invisible from pty. The devices /dev/conin,conout,console were wrongly visible from ptys, though they are inaccessible. This is because fhandler_console::exists() returns true due to existing invisible console. This patch makes these devices invisible from ptys. Signed-off-by: Takashi Yano <takashi.yano@nifty.ne.jp> Diff: --- winsup/cygwin/devices.cc | 5 ++++- winsup/cygwin/devices.in | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/winsup/cygwin/devices.cc b/winsup/cygwin/devices.cc index a0762f292..9f6e80acb 100644 --- a/winsup/cygwin/devices.cc +++ b/winsup/cygwin/devices.cc @@ -9,6 +9,8 @@ #include "path.h" #include "fhandler.h" #include "ntdll.h" +#include "dtable.h" +#include "cygheap.h" typedef const _device *KR_device_t; @@ -76,7 +78,8 @@ exists_console (const device& dev) case FH_CONSOLE: case FH_CONIN: case FH_CONOUT: - return fhandler_console::exists (); + return cygheap && cygheap->ctty && cygheap->ctty->is_console () + && fhandler_console::exists (); default: /* Only show my own console device (for now?) */ return iscons_dev (myself->ctty) && myself->ctty == devn; diff --git a/winsup/cygwin/devices.in b/winsup/cygwin/devices.in index 7506dfe9c..48199f46c 100644 --- a/winsup/cygwin/devices.in +++ b/winsup/cygwin/devices.in @@ -8,6 +8,8 @@ #include "path.h" #include "fhandler.h" #include "ntdll.h" +#include "dtable.h" +#include "cygheap.h" typedef const _device *KR_device_t; } @@ -72,7 +74,8 @@ exists_console (const device& dev) case FH_CONSOLE: case FH_CONIN: case FH_CONOUT: - return fhandler_console::exists (); + return cygheap && cygheap->ctty && cygheap->ctty->is_console () + && fhandler_console::exists (); default: /* Only show my own console device (for now?) */ return iscons_dev (myself->ctty) && myself->ctty == devn;
reply other threads:[~2022-12-22 13:33 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20221222133329.C31D7385B500@sourceware.org \ --to=tyan0@sourceware.org \ --cc=cygwin-cvs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).