From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from m0.truegem.net (m0.truegem.net [69.55.228.47]) by sourceware.org (Postfix) with ESMTPS id C02AA385E019 for ; Thu, 25 Feb 2021 07:41:46 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org C02AA385E019 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=maxrnd.com Authentication-Results: sourceware.org; spf=none smtp.mailfrom=mark@maxrnd.com Received: (from daemon@localhost) by m0.truegem.net (8.12.11/8.12.11) id 11P7fjpX034774 for ; Wed, 24 Feb 2021 23:41:45 -0800 (PST) (envelope-from mark@maxrnd.com) Received: from 162-235-43-67.lightspeed.irvnca.sbcglobal.net(162.235.43.67), claiming to be "[192.168.1.20]" via SMTP by m0.truegem.net, id smtpdjqalGv; Wed Feb 24 23:41:37 2021 Subject: Re: Python regression related to unix sockets From: Mark Geisert To: Cygwin Mailing List References: Message-ID: <5af3eb7e-c4a5-bf8b-cff8-444c45df1f58@maxrnd.com> Date: Wed, 24 Feb 2021 23:41:37 -0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.4 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.9 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, NICE_REPLY_A, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Feb 2021 07:41:50 -0000 Following up to myself: Mark Geisert wrote: > Hi Fabian, > > Fabian Henze via Cygwin wrote: >> Hi Cygwin users, >> I noticed a regression in the recent Python packages: Between version >> 3.6.10-1 and 3.6.12-2, accessing the SSH agent via the paramiko python >> package broke. When a ssh agent is used, paramiko tries to connect to >> it via the unix socket and just freezes. Python 3.8 is also affected, >> but I don't know which was the last working one. >> I was able to pinpoint that error to 3.6.12-socketmodule.patch [1]. >> Reverting/removing the patch fixes the ssh agent access. >> A few weeks ago there was a discussion regarding "Problems with native >> Unix domain sockets on Win 10/2019", but it seems unrelated as the >> cygwin1.dll from [2] does not work for me. >> >> Can you please check if you are able to reproduce that? I uploaded a >> script [3] for that. >> >> Best regards, >> Fabian Henze >> >> [1] https://bugs.python.org/file49717/3.6.12-socketmodule.patch >> [2] https://cygwin.com/snapshots/x86_64/cygwin1-20210201.dll.xz >> [3] https://gist.github.com/henzef/4e553fad2335227b8f6b4550cd3fa543 > > Thanks for the report and sorry you've run into this.  The patch is a workaround > that's evidently too draconian.  I will debug the situation using your testcase. > Thank you very much for the testcase. It's a limitation of the patch. It was meant to allow Python programs on the same computer to communicate via AF_UNIX sockets, by working around less than perfect support in the Cygwin DLL. But you've got a Python program trying to communicate with a non-Python program, and that fails because the patch is only applied on the Python end of the connection. If you can continue to run without the problematic patch, that's your best option. I will learn more about the underlying code in the Cygwin DLL and see if I can make an improvement there so the Python patch will not be needed in the future. Thanks again for the report! ..mark