]> git.kaiwu.me - nginx.git/commit
Mp4: fixed possible pointer overflow on 32-bit platforms.
authorMaxim Dounin <mdounin@mdounin.ru>
Wed, 21 Nov 2018 17:23:16 +0000 (20:23 +0300)
committerMaxim Dounin <mdounin@mdounin.ru>
Wed, 21 Nov 2018 17:23:16 +0000 (20:23 +0300)
commitf5708e66c7187c2489a7d0b39918f6d0fe4c6645
tree786f8e45897d9afae68a09a0debb52d9a7ee4402
parentaedc37fb3e7fb4550c17c4ec7aed3d33c73aab43
Mp4: fixed possible pointer overflow on 32-bit platforms.

On 32-bit platforms mp4->buffer_pos might overflow when a large
enough (close to 4 gigabytes) atom is being skipped, resulting in
incorrect memory addesses being read further in the code.  In most
cases this results in harmless errors being logged, though may also
result in a segmentation fault if hitting unmapped pages.

To address this, ngx_mp4_atom_next() now only increments mp4->buffer_pos
up to mp4->buffer_end.  This ensures that overflow cannot happen.
src/http/modules/ngx_http_mp4_module.c