]> git.ipfire.org Git - thirdparty/vim.git/commit
patch 9.0.1899: potential buffer overflow in PBYTE macro v9.0.1899
authorChristian Brabandt <cb@256bit.org>
Fri, 15 Sep 2023 18:22:02 +0000 (20:22 +0200)
committerChristian Brabandt <cb@256bit.org>
Fri, 15 Sep 2023 18:22:02 +0000 (20:22 +0200)
commitffb13674d1af1c90beb229867ec989e4fb232df3
tree6309506286c8b90dc12c7f13e067a96b1e21b626
parentc30a90d9b2c029f794cea502f6b824f71e4876dd
patch 9.0.1899: potential buffer overflow in PBYTE macro

Problem:  potential buffer overflow in PBYTE macro
Solution: Check returned memline length

closes: #13083

the PBYTE macro is used to put byte c at a position lp of the returned
memline. However, in case of unexpected errors ml_get_buf() may return
either "???" or an empty line in which case it is quite likely that we
are causing a buffer overrun.

Therefore, switch the macro PBYTE (which is only used in ops.c anyhow)
to a function, that verifies that we will only try to access within the
given length of the buffer.

Also, since the macro is only used in ops.c, move the definition from
macros.h to ops.c

Signed-off-by: Christian Brabandt <cb@256bit.org>
src/macros.h
src/ops.c
src/version.c