diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2011-03-06 00:11:03 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2011-03-06 00:11:03 (GMT) |
commit | 16a0a0b0a0b42dd42f2206a864d6325a278796f7 (patch) | |
tree | a734d6acbfcbb5f28922d7f78bad4b01894f0a27 /Lib/test | |
parent | 3c2ccf293619dc05b39db609be8e2cde80e0fe70 (diff) | |
download | cpython-16a0a0b0a0b42dd42f2206a864d6325a278796f7.zip cpython-16a0a0b0a0b42dd42f2206a864d6325a278796f7.tar.gz cpython-16a0a0b0a0b42dd42f2206a864d6325a278796f7.tar.bz2 |
Issue #11391: Writing to a mmap object created with
`mmap.PROT_READ|mmap.PROT_EXEC` would segfault instead of raising a
TypeError. Patch by Charles-François Natali.
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_mmap.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Lib/test/test_mmap.py b/Lib/test/test_mmap.py index d6addff..056b9ec 100644 --- a/Lib/test/test_mmap.py +++ b/Lib/test/test_mmap.py @@ -237,6 +237,14 @@ class MmapTests(unittest.TestCase): prot=mmap.PROT_READ, access=mmap.ACCESS_WRITE) f.close() + # Try writting without PROT_WRITE + with open(TESTFN, "r+b") as f: + m = mmap.mmap(f.fileno(), mapsize, prot=~mmap.PROT_WRITE) + self.assertRaises(TypeError, m.write, b"abcdef") + self.assertRaises(TypeError, m.write_byte, 0) + m.close() + + def test_bad_file_desc(self): # Try opening a bad file descriptor... self.assertRaises(mmap.error, mmap.mmap, -2, 4096) |