Mercurial > vim
view READMEdir/README_ami.txt @ 33865:8cdb69ea3711 v9.0.2143
patch 9.0.2143: [security]: buffer-overflow in ex_substitute
Commit: https://github.com/vim/vim/commit/abfa13ebe92d81aaf66669c428d767847b577453
Author: Christian Brabandt <cb@256bit.org>
Date: Thu Nov 30 11:32:18 2023 +0100
patch 9.0.2143: [security]: buffer-overflow in ex_substitute
Problem: [security]: buffer-overflow in ex_substitute
Solution: clear memory after allocating
When allocating the new_start pointer in ex_substitute() the memory
pointer points to some garbage that the following for loop in
ex_cmds.c:4743 confuses and causes it to accessing the new_start pointer
beyond it's size, leading to a buffer-overlow.
So fix this by using alloc_clear() instead of alloc(), which will
clear the memory by NUL and therefore cause the loop to terminate
correctly.
Reported by @henices, thanks!
closes: #13596
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 10 Dec 2023 15:16:05 +0100 |
parents | f8116058ca76 |
children | 4635e43f2c6f |
line wrap: on
line source
README_ami.txt for version 9.0 of Vim: Vi IMproved. This file explains the installation of Vim on Amiga systems. See README.txt for general information about Vim. Unpack the distributed files in the place where you want to keep them. It is wise to have a "vim" directory to keep your vimrc file and any other files you change. The distributed files go into a subdirectory. This way you can easily upgrade to a new version. For example: dh0:editors/vim contains your vimrc and modified files dh0:editors/vim/vim54 contains the Vim version 5.4 distributed files dh0:editors/vim/vim55 contains the Vim version 5.5 distributed files You would then unpack the archives like this: cd dh0:editors tar xf t:vim90bin.tar tar xf t:vim90rt.tar Set the $VIM environment variable to point to the top directory of your Vim files. For the above example: set VIM=dh0:editors/vim Vim version 5.4 will look for your vimrc file in $VIM, and for the runtime files in $VIM/vim54. See ":help $VIM" for more information. Make sure the Vim executable is in your search path. Either copy the Vim executable to a directory that is in your search path, or (preferred) modify the search path to include the directory where the Vim executable is.