Blame 00157-uid-gid-overflows.patch

e32ce18
--- Python-3.4.0b1/Lib/test/test_os.py.orig	2013-11-27 12:07:32.368411798 +0100
e32ce18
+++ Python-3.4.0b1/Lib/test/test_os.py	2013-11-27 12:12:11.220265174 +0100
e32ce18
@@ -1319,30 +1319,36 @@
e32ce18
     def test_setuid(self):
e32ce18
         if os.getuid() != 0:
e32ce18
             self.assertRaises(OSError, os.setuid, 0)
e32ce18
+        self.assertRaises(TypeError, os.setuid, 'not an int')
e32ce18
         self.assertRaises(OverflowError, os.setuid, 1<<32)
e32ce18
 
e32ce18
     @unittest.skipUnless(hasattr(os, 'setgid'), 'test needs os.setgid()')
e32ce18
     def test_setgid(self):
e32ce18
         if os.getuid() != 0 and not HAVE_WHEEL_GROUP:
e32ce18
             self.assertRaises(OSError, os.setgid, 0)
e32ce18
+        self.assertRaises(TypeError, os.setgid, 'not an int')
e32ce18
         self.assertRaises(OverflowError, os.setgid, 1<<32)
e32ce18
 
e32ce18
     @unittest.skipUnless(hasattr(os, 'seteuid'), 'test needs os.seteuid()')
e32ce18
     def test_seteuid(self):
e32ce18
         if os.getuid() != 0:
e32ce18
             self.assertRaises(OSError, os.seteuid, 0)
e32ce18
+        self.assertRaises(TypeError, os.seteuid, 'not an int')
e32ce18
         self.assertRaises(OverflowError, os.seteuid, 1<<32)
e32ce18
 
e32ce18
     @unittest.skipUnless(hasattr(os, 'setegid'), 'test needs os.setegid()')
e32ce18
     def test_setegid(self):
e32ce18
         if os.getuid() != 0 and not HAVE_WHEEL_GROUP:
e32ce18
             self.assertRaises(OSError, os.setegid, 0)
e32ce18
+        self.assertRaises(TypeError, os.setegid, 'not an int')
e32ce18
         self.assertRaises(OverflowError, os.setegid, 1<<32)
e32ce18
 
e32ce18
     @unittest.skipUnless(hasattr(os, 'setreuid'), 'test needs os.setreuid()')
e32ce18
     def test_setreuid(self):
e32ce18
         if os.getuid() != 0:
e32ce18
             self.assertRaises(OSError, os.setreuid, 0, 0)
e32ce18
+        self.assertRaises(TypeError, os.setreuid, 'not an int', 0)
e32ce18
+        self.assertRaises(TypeError, os.setreuid, 0, 'not an int')
e32ce18
         self.assertRaises(OverflowError, os.setreuid, 1<<32, 0)
e32ce18
         self.assertRaises(OverflowError, os.setreuid, 0, 1<<32)
e32ce18
 
e32ce18
@@ -1358,6 +1364,8 @@
e32ce18
     def test_setregid(self):
e32ce18
         if os.getuid() != 0 and not HAVE_WHEEL_GROUP:
e32ce18
             self.assertRaises(OSError, os.setregid, 0, 0)
e32ce18
+        self.assertRaises(TypeError, os.setregid, 'not an int', 0)
e32ce18
+        self.assertRaises(TypeError, os.setregid, 0, 'not an int')
e32ce18
         self.assertRaises(OverflowError, os.setregid, 1<<32, 0)
e32ce18
         self.assertRaises(OverflowError, os.setregid, 0, 1<<32)
e32ce18
 
e32ce18
--- Python-3.4.0b1/Lib/test/test_pwd.py.orig	2013-11-24 21:36:55.000000000 +0100
e32ce18
+++ Python-3.4.0b1/Lib/test/test_pwd.py	2013-11-27 12:07:32.369411798 +0100
e32ce18
@@ -89,9 +89,9 @@
e32ce18
         # In some cases, byuids isn't a complete list of all users in the
e32ce18
         # system, so if we try to pick a value not in byuids (via a perturbing
e32ce18
         # loop, say), pwd.getpwuid() might still be able to find data for that
e32ce18
-        # uid. Using sys.maxint may provoke the same problems, but hopefully
e32ce18
+        # uid. Using 2**32 - 2 may provoke the same problems, but hopefully
e32ce18
         # it will be a more repeatable failure.
e32ce18
-        fakeuid = sys.maxsize
e32ce18
+        fakeuid = 2**32 - 2
e32ce18
         self.assertNotIn(fakeuid, byuids)
e32ce18
         self.assertRaises(KeyError, pwd.getpwuid, fakeuid)
e32ce18