[PATCH 1/4] Cygwin: pty: Code cleanup - Cleanup the code which is commented out by #if 0 regarding pseudo console. - 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(-) -- 2.21.0