Description
The documentation of CreatePseudoConsole
explicitly documents that CreatePseudoConsole
can be used with sockets:
If we look at the implementation of CreatePseudoConsole
, we can see it calls DuplicateHandle
on the handles passed to it:
terminal/src/winconpty/winconpty.cpp
Lines 348 to 349 in 2712e41
However, the documentation of DuplicateHandle
explicitly mentions that DuplicateHandle
should not be used to duplicate socket handles:
https://docs.microsoft.com/en-us/windows/win32/api/handleapi/nf-handleapi-duplicatehandle#remarks
Doesn't this make the CreatePseudoConsole
implementation incorrect when using sockets?
I haven't actually confirmed whether sockets work or not, I'm currently trying to get CreatePseudoConsole
to work with sockets but it's returning Access is Denied
. While looking at the source code to figure out why it's returning Access is Denied
, I stumbled upon this possible issue.
EDIT: Nvm the Access is Denied
issue, I incorrectly assumed CreatePseudoConsole
would return 0 on failure. The DuplicateHandle
issue still stands however.
EDIT2: Removed edit because it was a programming error by me.
Activity