[ANNOUNCEMENT] TEST: Cygwin 3.1.0-0.3

Biswapriyo Nath nathbappai@gmail.com
Sun Sep 1 06:32:00 GMT 2019


To Corinna Vinschen:

> We can only use what's part of the current w32api-headers package.

I occasionally contribute to mingw-w64 repository. Is there anything I can
do so that cygwin uses latest headers and libraries from mingw-w64?

To Takashi Yano:

> Then, is it possible to DuplicateHandle() for three handles in HPCON to
other process which calls ioctl() with new HPCON?

** THE FOLLOWING PROCEDURE USES UNDOCUMENTED AND UNSTABLE CODE **

To use HPCON in another process, first cast it to a pointer of struct of
three handles as below:

    struct HPCON_INTERNAL {
        HANDLE hWritePipe;
        HANDLE hConDrvReference;
        HANDLE hConHostProcess;
    };

    HPCON hpCon;
    HRESULT hRes = CreatePseudoConsole(consoleSize, hPipePTYIn,
hPipePTYOut, 0, &hpCon);
    HPCON_INTERNAL *hpConInt = hpCon;

Then **inherit** and use hpConInt->hWritePipe to write the resize signal.
Get detail information about that buffer here[1]. Sample in my repo[2].

[1]:
https://github.com/microsoft/terminal/blob/master/src/host/PtySignalInputThread.cpp
[2]: https://github.com/Biswa96/wslbridge2/blob/master/rawpty/rawpty.cpp

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list