# HG changeset patch # User Christian Brabandt # Date 1693677602 -7200 # Node ID 3e4c08a8d637c44a6b6c594d99879dec14ce8848 # Parent 93e2f3574adbeae969844be80e4e537ba45751f7 patch 9.0.1847: [security] potential oob write in do_addsub() Commit: https://github.com/vim/vim/commit/889f6af37164775192e33b233a90e86fd3df0f57 Author: Christian Brabandt Date: Sat Sep 2 19:43:33 2023 +0200 patch 9.0.1847: [security] potential oob write in do_addsub() Problem: potential oob write in do_addsub() Solution: don't overflow buf2, check size in for loop() Signed-off-by: Christian Brabandt diff --git a/src/ops.c b/src/ops.c --- a/src/ops.c +++ b/src/ops.c @@ -2919,7 +2919,7 @@ do_addsub( for (bit = bits; bit > 0; bit--) if ((n >> (bit - 1)) & 0x1) break; - for (i = 0; bit > 0; bit--) + for (i = 0; bit > 0 && i < (NUMBUFLEN - 1); bit--) buf2[i++] = ((n >> (bit - 1)) & 0x1) ? '1' : '0'; buf2[i] = '\0'; diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -700,6 +700,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1847, +/**/ 1846, /**/ 1845,