diff -r 64640a02b0ca Lib/test/test_ssl.py --- a/Lib/test/test_ssl.py Mon Aug 27 10:03:23 2012 +0300 +++ b/Lib/test/test_ssl.py Tue Aug 28 01:41:04 2012 +0300 @@ -125,12 +125,8 @@ else: self.assertRaises(ssl.SSLError, ssl.RAND_bytes, 16) - try: - ssl.RAND_egd(1) - except TypeError: - pass - else: - print("didn't raise TypeError") + self.assertRaises(TypeError, ssl.RAND_egd, 1) + self.assertRaises(TypeError, ssl.RAND_egd, 'foo', 1) ssl.RAND_add("this is a random string", 75.0) def test_parse_cert(self): diff -r 64640a02b0ca Modules/_ssl.c --- a/Modules/_ssl.c Mon Aug 27 10:03:23 2012 +0300 +++ b/Modules/_ssl.c Tue Aug 28 01:41:04 2012 +0300 @@ -2481,7 +2481,7 @@ PyObject *path; int bytes; - if (!PyArg_ParseTuple(args, "O&|i:RAND_egd", + if (!PyArg_ParseTuple(args, "O&:RAND_egd", PyUnicode_FSConverter, &path)) return NULL;