diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2015-06-28 17:56:28 +0300 |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2015-06-28 17:56:28 +0300 |
commit | 1e8d91adfe946807bcd2fd4f40327542eccebe21 (patch) | |
tree | 241ebd00d081aca6ad2a84a3a1dfac562c996505 /Lib/test/test_audioop.py | |
parent | 9aad9f27407861d674570bf5c0bd957bbe13663b (diff) | |
parent | b9b9e7b46a880e7a628a698fd47173b7f7d68870 (diff) | |
download | cpython-git-1e8d91adfe946807bcd2fd4f40327542eccebe21.tar.gz |
Issue #24456: Fixed possible buffer over-read in adpcm2lin() and lin2adpcm()
functions of the audioop module.
Diffstat (limited to 'Lib/test/test_audioop.py')
-rw-r--r-- | Lib/test/test_audioop.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Lib/test/test_audioop.py b/Lib/test/test_audioop.py index 01ed18d1c1..8f34d72427 100644 --- a/Lib/test/test_audioop.py +++ b/Lib/test/test_audioop.py @@ -273,6 +273,16 @@ class TestAudioop(unittest.TestCase): # state must be a tuple or None, not an integer self.assertRaises(TypeError, audioop.adpcm2lin, b'\0', 1, 555) self.assertRaises(TypeError, audioop.lin2adpcm, b'\0', 1, 555) + # Issues #24456, #24457: index out of range + self.assertRaises(ValueError, audioop.adpcm2lin, b'\0', 1, (0, -1)) + self.assertRaises(ValueError, audioop.adpcm2lin, b'\0', 1, (0, 89)) + self.assertRaises(ValueError, audioop.lin2adpcm, b'\0', 1, (0, -1)) + self.assertRaises(ValueError, audioop.lin2adpcm, b'\0', 1, (0, 89)) + # value out of range + self.assertRaises(ValueError, audioop.adpcm2lin, b'\0', 1, (-0x8001, 0)) + self.assertRaises(ValueError, audioop.adpcm2lin, b'\0', 1, (0x8000, 0)) + self.assertRaises(ValueError, audioop.lin2adpcm, b'\0', 1, (-0x8001, 0)) + self.assertRaises(ValueError, audioop.lin2adpcm, b'\0', 1, (0x8000, 0)) def test_lin2alaw(self): self.assertEqual(audioop.lin2alaw(datas[1], 1), |