Issue #5677: Explicitly forbid write operations on read-only file objects,
and read operations on write-only file objects.  On Windows, the system C
library would return a bogus result; on Solaris, it was possible to crash
the interpreter.  Patch by Stefan Krah.
diff --git a/Lib/test/test_sys.py b/Lib/test/test_sys.py
index 6b45d12..f7e828b 100644
--- a/Lib/test/test_sys.py
+++ b/Lib/test/test_sys.py
@@ -581,7 +581,7 @@
         # enumerate
         check(enumerate([]), size(h + 'l3P'))
         # file
-        check(self.file, size(h + '4P2i4P3i3Pi'))
+        check(self.file, size(h + '4P2i4P3i3P3i'))
         # float
         check(float(0), size(h + 'd'))
         # sys.floatinfo