mirror of
https://github.com/vim/vim.git
synced 2025-10-02 05:04:20 -04: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