5353VSOCKPORT = 1234
5454AIX = platform .system () == "AIX"
5555SOLARIS = sys .platform .startswith ("sunos" )
56+ # NetBSD, OpenBSD and DragonFly deliver the file descriptors from only one
57+ # SCM_RIGHTS control message when several are sent in a single sendmsg().
58+ BSD_COMBINES_SCM_RIGHTS = sys .platform .startswith (
59+ ("netbsd" , "openbsd" , "dragonfly" ))
5660WSL = "microsoft-standard-WSL" in platform .release ()
5761
5862try :
@@ -4092,6 +4096,7 @@ def _testFDPassCMSG_LEN(self):
40924096 @unittest .skipIf (is_apple , "skipping, see issue #12958" )
40934097 @unittest .skipIf (SOLARIS , "skipping, see gh-91214" )
40944098 @unittest .skipIf (AIX , "skipping, see issue #22397" )
4099+ @unittest .skipIf (BSD_COMBINES_SCM_RIGHTS , "skipping, see gh-125860" )
40954100 @requireAttrs (socket , "CMSG_SPACE" )
40964101 def testFDPassSeparate (self ):
40974102 # Pass two FDs in two separate arrays. Arrays may be combined
@@ -4104,6 +4109,7 @@ def testFDPassSeparate(self):
41044109 @unittest .skipIf (is_apple , "skipping, see issue #12958" )
41054110 @unittest .skipIf (SOLARIS , "skipping, see gh-91214" )
41064111 @unittest .skipIf (AIX , "skipping, see issue #22397" )
4112+ @unittest .skipIf (BSD_COMBINES_SCM_RIGHTS , "skipping, see gh-125860" )
41074113 def _testFDPassSeparate (self ):
41084114 fd0 , fd1 = self .newFDs (2 )
41094115 self .assertEqual (
@@ -4118,6 +4124,7 @@ def _testFDPassSeparate(self):
41184124 @unittest .skipIf (is_apple , "skipping, see issue #12958" )
41194125 @unittest .skipIf (SOLARIS , "skipping, see gh-91214" )
41204126 @unittest .skipIf (AIX , "skipping, see issue #22397" )
4127+ @unittest .skipIf (BSD_COMBINES_SCM_RIGHTS , "skipping, see gh-125860" )
41214128 @requireAttrs (socket , "CMSG_SPACE" )
41224129 def testFDPassSeparateMinSpace (self ):
41234130 # Pass two FDs in two separate arrays, receiving them into the
@@ -4133,6 +4140,7 @@ def testFDPassSeparateMinSpace(self):
41334140 @unittest .skipIf (is_apple , "skipping, see issue #12958" )
41344141 @unittest .skipIf (SOLARIS , "skipping, see gh-91214" )
41354142 @unittest .skipIf (AIX , "skipping, see issue #22397" )
4143+ @unittest .skipIf (BSD_COMBINES_SCM_RIGHTS , "skipping, see gh-125860" )
41364144 def _testFDPassSeparateMinSpace (self ):
41374145 fd0 , fd1 = self .newFDs (2 )
41384146 self .assertEqual (
0 commit comments