DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 5958GP2g2055707 Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 5958GP2g2055707 Authentication-Results: delorie.com; dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=PYXL/BFK X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6E3273858D29 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1759652183; bh=Y+UlCaYRvDvfGZgXuwG6P+y91HCqDenxK3qkLG4SjmE=; h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=PYXL/BFKM4Ydrftxq/as6PLQyeYatPbALj1X2VxQXc3K86CC+IDO22AX/3jKpSP+F CwHNKmBNvMcXl1fxj0rcuFSAKPeM2lWdbqD5dSyYl5LsUVGEn/lF3JEArqF9vl2E8m O25ElM4JabXTnkFPxUAebirgMF7R5SheKKonFBGA= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D68283858D1E ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D68283858D1E ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1759652120; cv=none; b=Aem1mXCgFsUVclwWqZyU8SHR6glXI8XV5LK7z0mCZq4DWMjJ7DUddGvyCxgaLx2MGzDdKNcpAjZiXIauG5ZOWxUobhzqcFp2uvFyL7BtrYyfxVPAl1qPRgkalk/lQVDNqwfrhgf0lNZRmh5zfLRIRV5ZJuO7pl39oZhGgWwbQgI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1759652120; c=relaxed/simple; bh=RWsezxw0Y2HZ4tHupKKRiksMY8NDPDR6/cr8+eYr2Z0=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=it1cXwlTNr/90dgqN8Dn0Xm0jh0pvkUNzIgq/i+cc3KbOADPNUep6k+9e0bF/bV1KOOktT3dkBcR31rEbQkMMIXDZgcv4VkVFF4OQNuSAYeP9xl6mnFq4g5YfrA8gZZ5cb7BY/W7Bz+4T4autSJaWWa7fYn6YU/fCBjzzANMeM4= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D68283858D1E X-UI-Sender-Class: 55c96926-9e95-11ee-ae09-1f7a4046a0f6 Message-ID: <707f4d4c-a20d-4f1d-bdbd-65a2392dea15@towo.net> Date: Sun, 5 Oct 2025 10:15:55 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: dynamic conpty loading To: cygwin AT cygwin DOT com References: <30deef29-ba20-49d9-9b38-28020941b0ef AT towo DOT net> Autocrypt: addr=towo AT towo DOT net; keydata= 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 kQ== In-Reply-To: <30deef29-ba20-49d9-9b38-28020941b0ef@towo.net> X-Provags-ID: V03:K1:eJ6uAaAnsgXyYKPn+3fT0sSY8/BwaOR7UAHn+1P9oBNDTrr2AEq M7/Z1JDCMQXET30PUTG317EOGv2HhBLHEL124BUgCRQWylIZx696onl8FFiBWGF3upMbZu1 7UAd3DMjxnDgdzle3OKAtlwBzUIMlDAYf/EkC+QfDUUNC3yVqN8urUuvOkH0GTw0fptNDh3 u7wIj9i/sIS0Gg9XNT9Qw== UI-OutboundReport: notjunk:1;M01:P0:/bGIfVwagTQ=;yINw7r+1RYkkzKXpDQUJVNnkA9D umqmccHhDYJJyOaYLmK74ZhOQYxp6LpIDg54kd3fnVxq3tjCR3WFYAZIwyKIbPWdXbAe2qEHA 9Kia013rYQ9Aw7MHegeGu8/BxAvsKXIGDUfSLD4w2Uo2fkw4F8VF2U7wru3O6XtRgE6+GjGXQ l+1OlA/L5Jxp3+oUaxo5M890e2jIwLa+j+AVpCm/eakvBPzJjpccC8b0G6xcwXMTcV96m3Hlg uHFm2eGPZvao6fJBgAvKrZC6z3QaJD3SEnGu6nTAHBJKGjHJL8Hxrys8r1KSnLliZ6divSwk0 FiDBf8dcPNivgHXokjI7tzTjWFhQGaHWSuqXsKdqh04lVDVyFC5q/LuL6UF3uiNfQet5F4/eR cM+4koRDiarRXa6W98Y1EggYNiioDUYCu0dy8OC75Fyyybju0oG+Q004wr9Re3/cty7sBMwL8 jKdtnMi0whvCK+N0LKKsyKGCtp3xKyVuo9CYVH+wJnC6ieqrxyX9gJkPPZ6nB4TWCvt229dwv QbUt/aL7YyRTuyePweAYCIaSihRzKqJ9He4SYyA+QZQbujOmokMqRVhsdM4Ho1K1lvfagUOow k6F9nhhtF1xt1kfG0+Hs5NAibOcAuKAWEZ0snSl4fmPp3Ut9kTqQ5dPzDa8/sb+8aCUfIVBki t3jVvow2+Af9w0sPkcUnORoTZDWaU2PEKyzWMxBfy7tT5tUOcAuERAen1A2hTdnWrslLDe7BK EL6fTewEZQ6gsYHm3BOzHZ0DvOUmTVxtwn7pAaaVKc4As2qSCdZdI4aQ54CDoC13lqJqv1Bql KNHeCd6571wHPwW+aQyX0uOW+efsu7wNw7BziJrY3gF3NkrBa6YjiOFbEIRnKqT66QHlgzOEK NSLg0vnhCP0i/6B3jVASS4LdOKbckVneiRc+kUXIuh6ctjirNTQebe2at/9iAx2t3xs9hMFiM fLExc498IVIdE2db9tN7QajcdhfL9grgBu4dFn6Kcwev86ZGDMWTkrD34zbK01ExX8PfDHtd4 9T3nBFA1wkfO2gCXtqGJVsmTcAD/teGouckuQeaaFtqgaTxAUHwINX9yI3b/YCaOzqcyhqqUR tCuFK0EA2q3hddd4zbRdPWfAqEF+X9wT9/T1hOw8z/aVU7K2WNeUXSDA8QutTsH6y1X2VMOx6 0Yi26Tq4HyvY6wCI1XrlqoD2UlqWKghL8wXIiklf0rPMkerICJwnn5JThG59fDytBppAHNAQG yftnTNp945MH2lWLESIcSAQP1Sg/fyIoBuKLt9lx+MnlDw7QLyPIF18WEneTed+ntpY1WC6MN tgYC5xXigdF0wZDdkCMfyh5qyA0pQi3lDguBQW3JBy/+Y/S7W5/x7arQP3ZmvbHSWr33vVMSv LsWkn98cnN5C0r21UNTBVmeTU3tQ4xG+bdMz6a3YfqmC+RMeeea0Y5yGPAM0JkvbgdLR6+hdw zCFijluJnM5W8yexYE/IXxrjqvpy6mp2rS7WJ7yDUj3iJ+M5JIlt4qonesOFEspMkMAyoSTH3 PCZUT4En1ulf4moraBha8X2LgOJA0OoBs9ejh93V/Fou+X7lolQWxb09ywYZjZBMJ1Cc6XxJV qWitg4w80x9bf8lUSBD4xZIaATgzMB90znJXBqF+FicrTLMJj56SJghDjXbhGzcHvO5MRtN1O Y9vYYEc0mhZVx89zNJzhOO X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Thomas Wolff via Cygwin Reply-To: Thomas Wolff Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" Am 10.09.2025 um 11:21 schrieb Thomas Wolff via Cygwin: > [Reposting by response from cygwin-developers] > > I wrote: >> The ancient conhost and also the initial conpty implementation of >> Windows were obstacles to using terminal feature from Windows >> applications. >> There are nuisances like mangled or ignored character attributes, >> terminal reports not passed through etc. >> While there is an updated Windows conpty layer being developed as >> part of the Windows terminal project, it is not yet deployed with >> Windows 11 and will probably not be deployed with Windows 10 at all >> anymore (https://github.com/microsoft/terminal/issues/17452). >> Various terminals had to fight with these problems and some found a >> solution. >> According to >> https://github.com/saitoha/libsixel/issues/199#issuecomment-3181728693 >> it is possible to inject a specific version of conpty so to supersede >> the Windows-installed conhost.exe. >> >> I've tried to apply that to mintty by just preloading a conpty.dll >> before calling forkpty for the terminal child process but that has no >> effect. >> The procedure seems to be: >> try LoadLibrary("conpty.dll"), (if not successful, fallback to >> GetModuleHandle("kernel32") instead) to retrieve GetProcAddress for >> CreatePseudoConsole, ResizePseudoConsole, ClosePseudoConsole, and >> then somehow (?) use those while calling CreateProcess. >> The latter is woven into the cygwin library and I don't think it's a >> good idea to clone that out of cygwin for a patched process creation >> in mintty. >> >> My question/suggestion: >> Can a cygwin mode switch to a selected conpty library instead of the >> default one please? My idea would be to configure this per process >> with the environment variable CYGWIN. Like its error_start= setting, >> it could have a conpty= setting to configure the filename to be used >> for conpty when starting a subprocess. >> That would allow mintty to inject a modern conpty when calling a >> Windows application (e.g. wsl.exe). >> > Thomas It would also help if someone writes a small wrapper that loads a local conpty.dll version, runs CreatePseudoConsole from it, and invokes wsl.exe (likely with CreateProcess). I somehow fail to get this working, being umfamiliar with Windows intrinsics... -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple