mirror of
https://github.com/vim/vim.git
synced 2025-11-15 23:14:06 -05:00
patch 9.0.2110: [security]: overflow in ex address parsing
Problem: [security]: overflow in ex address parsing
Solution: Verify that lnum is positive, before substracting from
LONG_MAX
[security]: overflow in ex address parsing
When parsing relative ex addresses one may unintentionally cause an
overflow (because LONG_MAX - lnum will overflow for negative addresses).
So verify that lnum is actually positive before doing the overflow
check.
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
@@ -4644,7 +4644,7 @@ get_address(
|
||||
lnum -= n;
|
||||
else
|
||||
{
|
||||
if (n >= LONG_MAX - lnum)
|
||||
if (lnum >= 0 && n >= LONG_MAX - lnum)
|
||||
{
|
||||
emsg(_(e_line_number_out_of_range));
|
||||
goto error;
|
||||
|
||||
Reference in New Issue
Block a user