wine/loader
Jinoh Kang da74da2939 loader: Don't return from __stack_chk_fail() stub in preloader.
GCC expects __stack_chk_fail() to be noreturn[1].  Returning from
__stack_chk_fail() can thus lead to subtle failures.

When crashing, use a volatile NULL pointer dereference.  Ideally we
would like to "abort()" here, but doing so would require two more
syscall definitions just for a cold function.  After all, the function
isn't even used at all if -fno-stack-protector is specified.

Also, don't say "stack smashing" (unlike glibc).  The preloader
currently initializes the stack canary value to a fixed value (0), which
serves little value in protecting against actual buffer overrun attacks.

[1]: https://gcc.gnu.org/onlinedocs/gcc-9.1.0/gccint/Stack-Smashing-Protection.html
2023-09-04 11:40:38 +02:00
..
main.c loader: Unbreak FreeBSD builds (ARRAY_SIZE undefined). 2022-10-31 12:11:55 +01:00
main.h
Makefile.in loader: Force building the main loader as PIE on 64-bit. 2023-06-19 17:30:45 +02:00
preloader.c loader: Don't return from __stack_chk_fail() stub in preloader. 2023-09-04 11:40:38 +02:00
preloader_mac.c loader: In macOS preloader, add __program_vars section. 2023-07-18 15:16:12 +02:00
wine.de.UTF-8.man.in
wine.desktop
wine.fr.UTF-8.man.in
wine.inf.in wine.inf: Use FLG_ADDREG_NOCLOBBER for CurrentMajor/MinorVersionNumber. 2023-04-17 18:55:41 +02:00
wine.man.in loader: Document the WINE_D3D_CONFIG environment variable. 2023-01-24 15:22:49 +01:00
wine.pl.UTF-8.man.in
wine_info.plist.in