[PATCH 0/4] Some fixes for PTY with pseudo console support (1)
Wed Sep 4 01:44:00 GMT 2019
[PATCH 1/4] Cygwin: pty: Code cleanup
- Cleanup the code which is commented out by #if 0 regarding pseudo
- Remove #if 1 for experimental code which seems to be stable.
[PATCH 2/4] Cygwin: pty: Speed up a little hooked Win32 API for pseudo console.
- Some Win32 APIs are hooked in pty code for pseudo console support.
This causes slow down. This patch improves speed a little.
[PATCH 3/4] Cygwin: pty: Move function hook_api() into hookapi.cc.
- PTY uses Win32 API hook for pseudo console suppot. The function
hook_api() is used for this purpose and defined in fhandler_tty.cc
previously. This patch moves it into hookapi.cc.
[PATCH 4/4] Cygwin: pty: Limit API hook to the program linked with the APIs.
- API hook used for pseudo console support causes slow down.
This patch limits API hook to only program which is linked
with the corresponding APIs. Normal cygwin program is not
linked with such APIs (such as WriteFile, etc...) directly,
therefore, no slow down occurs. However, console access by
cygwin.dll itself cannot switch the r/w pipe to pseudo console
side. Therefore, the code to switch it forcely to pseudo
console side is added to smallprint.cc and strace.cc.
Takashi Yano (4):
Cygwin: pty: Code cleanup
Cygwin: pty: Speed up a little hooked Win32 API for pseudo console.
Cygwin: pty: Move function hook_api() into hookapi.cc.
Cygwin: pty: Limit API hook to the program linked with the APIs.
winsup/cygwin/fhandler_tty.cc | 136 +++++++++++-----------------------
winsup/cygwin/hookapi.cc | 34 +++++++++
winsup/cygwin/smallprint.cc | 5 ++
winsup/cygwin/strace.cc | 29 ++------
winsup/cygwin/winsup.h | 1 +
5 files changed, 89 insertions(+), 116 deletions(-)
More information about the Cygwin-patches