neovim/runtime/autoload
zeertzjq 7bf0963d48
vim-patch:9.0.1833: [security] runtime file fixes (#24969)
Problem:  runtime files may execute code in current dir
Solution: only execute, if not run from current directory

The perl, zig and ruby filetype plugins and the zip and gzip autoload
plugins may try to load malicious executable files from the current
working directory.  This is especially a problem on windows, where the
current directory is implicitly in your $PATH and windows may even run a
file with the extension `.bat` because of $PATHEXT.

So make sure that we are not trying to execute a file from the current
directory. If this would be the case, error out (for the zip and gzip)
plugins or silently do not run those commands (for the ftplugins).

This assumes, that only the current working directory is bad. For all
other directories, it is assumed that those directories were
intentionally set to the $PATH by the user.

816fbcc262

Co-authored-by: Christian Brabandt <cb@256bit.org>
2023-09-01 11:38:31 +08:00
..
provider fix(clipboard): ignore exit caused by signal #23378 2023-07-16 04:15:30 -07:00
remote runtime: support once on s:GetAutocmdPrefix (#16457) 2021-12-10 12:28:55 -07:00
xml re-integrate runtime/ vim-patch:0 #938 2014-07-29 02:12:31 +00:00
zig vim-patch:86b4816766d9 (#21314) 2022-12-08 16:33:38 +01:00
ada.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
adacomplete.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
bitbake.vim vim-patch:b529cfbd04c0 (#19501) 2022-07-26 11:26:23 +02:00
ccomplete.lua vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
ccomplete.vim dist: generated version of ccomplete.vim (#21623) 2023-01-05 11:00:32 -05:00
clojurecomplete.vim vim-patch:46eea444d (#17920) 2022-03-30 12:12:12 +01:00
context.vim vim-patch:46fceaaa8d14 2017-04-29 01:47:36 +02:00
contextcomplete.vim vim-patch:46fceaaa8d14 2017-04-29 01:47:36 +02:00
csscomplete.vim vim-patch:34cc7d8c034f #15753 2021-09-22 06:12:06 -07:00
decada.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
freebasic.vim vim-patch:0d878b95d8f9 (#19197) 2022-07-02 11:06:03 +02:00
gnat.vim re-integrate runtime/ vim-patch:0 #938 2014-07-29 02:12:31 +00:00
gzip.vim vim-patch:9.0.1833: [security] runtime file fixes (#24969) 2023-09-01 11:38:31 +08:00
haskellcomplete.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
health.vim fix(checkhealth): fix crash due to incorrect argument type 2023-04-16 12:26:13 +02:00
htmlcomplete.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
javascriptcomplete.vim vim-patch:a0fddaa2f4b7 2023-08-21 20:32:28 +09:00
msgpack.vim fix(messages): use "Vimscript" instead of "VimL" #24111 2023-06-22 04:09:14 -07:00
netrw_gitignore.vim runtime/netrw: 5ef1c6a4838a9629b793f3ae676f72a764171b00 2021-02-15 21:16:27 -05:00
netrw.vim feat(defaults): set g:netrw_use_errorwindow = 0 #24179 2023-06-29 14:14:14 -07:00
netrwFileHandlers.vim vim-patch:1d59aa1fdfb1 2021-05-01 01:37:13 -04:00
netrwSettings.vim vim-patch:b7398fe41c9e (#23627) 2023-05-15 09:38:32 +02:00
paste.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
phpcomplete.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
provider.vim Add overlapped option to jobstart 2020-06-10 22:21:14 +09:00
python3complete.vim vim-patch:46eea444d (#17920) 2022-03-30 12:12:12 +01:00
python.vim vim-patch:partial:dd60c365cd26 (#22437) 2023-02-28 09:34:27 +01:00
pythoncomplete.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
README.txt re-integrate runtime/ vim-patch:0 #938 2014-07-29 02:12:31 +00:00
RstFold.vim vim-patch:4c05fa08c973 2019-07-29 20:50:07 +02:00
rubycomplete.vim vim-patch:4d8f476176ea (#15612) 2021-09-10 08:48:27 +02:00
rust.vim vim-patch:21aaff3faa82 2023-08-11 22:06:37 +02:00
rustfmt.vim vim-patch:3c2881dc1195 2017-11-07 01:04:17 +01:00
shada.vim fix(messages): use "Vimscript" instead of "VimL" #24111 2023-06-22 04:09:14 -07:00
spellfile.vim runtime: update g:spellfile_URL to URL used in Vim 8 2020-09-17 13:31:55 +02:00
sqlcomplete.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
syntaxcomplete.vim vim-patch:4c295027a426 2021-05-02 13:00:38 -04:00
tar.vim feat!: remove vimballs (#22402) 2023-04-11 19:10:36 +02:00
tohtml.vim vim-patch:be4e01637e71 (#22103) 2023-02-03 09:18:18 +01:00
tutor.vim fix(runtime/tutor): don't try to close fold when there is none (#24953) 2023-08-31 09:18:39 +08:00
vimexpect.vim fix(typo): overriden -> overridden (RE: PR #14159) (#15360) 2021-09-17 13:07:00 -04:00
xmlcomplete.vim vim-patch:6c391a74fe90 (#15654) 2021-09-13 16:33:41 +02:00
xmlformat.vim xmlformat.vim: patch runtime/autoload to eab6dff19 2020-11-22 18:05:02 +01:00
zip.vim vim-patch:9.0.1833: [security] runtime file fixes (#24969) 2023-09-01 11:38:31 +08:00

The autoload directory is for standard Vim autoload scripts.

These are functions used by plugins and for general use.  They will be loaded
automatically when the function is invoked.  See ":help autoload".

gzip.vim	for editing compressed files
netrw*.vim	browsing (remote) directories and editing remote files
tar.vim		browsing tar files
zip.vim		browsing zip files
paste.vim	common code for mswin.vim, menu.vim and macmap.vim
spellfile.vim	downloading of a missing spell file

Omni completion files:
ccomplete.vim		C
csscomplete.vim		HTML / CSS
htmlcomplete.vim	HTML
javascriptcomplete.vim  Javascript
phpcomplete.vim		PHP
pythoncomplete.vim	Python
rubycomplete.vim	Ruby
syntaxcomplete.vim	from syntax highlighting
xmlcomplete.vim		XML (uses files in the xml directory)