public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
* python fails asyncio tests (py 3.7 & 3.8)
@ 2020-12-17  9:20 Mark Geisert
  2020-12-28 21:57 ` Marco Atzeri
  0 siblings, 1 reply; 5+ messages in thread
From: Mark Geisert @ 2020-12-17  9:20 UTC (permalink / raw)
  To: cygwin-apps

Hi Marco,
Below is the patch I developed to work around the problem report in
https://cygwin.com/pipermail/cygwin/2020-November/246830.html
I called the patch file 3.8.3-peercred-cygwin.patch.

I am unable to test the patch myself because of continuing problems building a new 
Python.  I don't know if my issues are due to being on latest Cygwin code vs 
3.1.7, or gcc 10.2 vs 9.3, or what.  Could you tell me what your build environment 
is like?  I'll try to duplicate it.

Test the patch by running a Python built with it on the example from the OP. 
Without the patch, the run would hang in the middle of the test script.  With the 
patch, it should quickly complete with 4 unrelated errors mentioning MSG_OOB.
Thanks & Regards,

..mark

--- origsrc/Python-3.8.3/Modules/socketmodule.c 2020-05-13 10:31:54.000000000-0700
+++ src/Python-3.8.3/Modules/socketmodule.c     2020-12-15 21:00:15.373059900-0800
@@ -1030,6 +1030,14 @@ init_sockobject(PySocketSockObject *s,
              }
          }
      }
+#ifdef __CYGWIN__
+    /* Temporarily work around AF_UNIX credential passing issues */
+    if (s->sock_family == AF_UNIX && s->sock_fd != -1) {
+        if (setsockopt(s->sock_fd, SOL_SOCKET, SO_PEERCRED, 0, 0) == -1) {
+            return -1;
+        }
+    }
+#endif
      return 0;
  }


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-12-29  6:20 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-17  9:20 python fails asyncio tests (py 3.7 & 3.8) Mark Geisert
2020-12-28 21:57 ` Marco Atzeri
2020-12-29  0:08   ` Mark Geisert
2020-12-29  5:41     ` Marco Atzeri
2020-12-29  6:20       ` Marco Atzeri

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).