http://bugs.winehq.org/show_bug.cgi?id=28465
Summary: shlwapi/path.c test crashes if CFLAGS="-fstack-protector-all" is used Product: Wine Version: 1.3.28 Platform: x86 URL: http://wiki.debian.org/Hardening OS/Version: Linux Status: NEW Keywords: download, source, testcase Severity: enhancement Priority: P2 Component: shlwapi AssignedTo: wine-bugs@winehq.org ReportedBy: austinenglish@gmail.com
Created an attachment (id=36503) --> (http://bugs.winehq.org/attachment.cgi?id=36503) backtraces
make test passes for me fine if I use -fstack-protector, but if I use fstack-protector-all, some tests fail. Next up, shlwapi/path.c:
austin@aw25 ~/wine-git/dlls/shlwapi/tests $ make path.ok ../../../tools/runtest -q -P wine -M shlwapi.dll -T ../../.. -p shlwapi_test.exe.so path.c && touch path.ok *** stack smashing detected ***: shlwapi_test.exe.so terminated ======= Backtrace: ========= /lib/libc.so.6(__fortify_fail+0x50)[0x68278a50] /lib/libc.so.6(+0xe39fa)[0x682789fa] /home/austin/wine-git/dlls/shlwapi/shlwapi.dll.so(+0x50404)[0x6858f404] /home/austin/wine-git/dlls/shlwapi/shlwapi.dll.so(+0x35d82)[0x68574d82] /home/austin/wine-git/dlls/shlwapi/shlwapi.dll.so(PathCombineA+0x103)[0x68574fa3] /home/austin/.wine/dosdevices/z:/home/austin/wine-git/dlls/shlwapi/tests/shlwapi_test.exe.so(+0x2a41d)[0x6851841d] /home/austin/.wine/dosdevices/z:/home/austin/wine-git/dlls/shlwapi/tests/shlwapi_test.exe.so(func_path+0x754)[0x6851d4a4] /home/austin/.wine/dosdevices/z:/home/austin/wine-git/dlls/shlwapi/tests/shlwapi_test.exe.so(+0x3d9ac)[0x6852b9ac] /home/austin/.wine/dosdevices/z:/home/austin/wine-git/dlls/shlwapi/tests/shlwapi_test.exe.so(main+0x162)[0x6852bbc2] /home/austin/.wine/dosdevices/z:/home/austin/wine-git/dlls/shlwapi/tests/shlwapi_test.exe.so(+0x3e8cc)[0x6852c8cc] /home/austin/wine-git/dlls/kernel32/kernel32.dll.so[0x7b85f91c] /home/austin/wine-git/dlls/kernel32/kernel32.dll.so[0x7b86361a] /home/austin/wine-git/dlls/ntdll/ntdll.dll.so[0x7bc77df8] /home/austin/wine-git/dlls/ntdll/ntdll.dll.so[0x7bc78061] /home/austin/wine-git/dlls/ntdll/ntdll.dll.so[0x7bc4ecd9] /home/austin/wine-git/libs/wine/libwine.so.1(+0x984d)[0x6802884d]
Disabling the tests: /* try a directory longer than MAX_PATH */ /* pszPath is too long */
allows it to pass.
testing this when I noticed that Debian is planning to harden packages by default: http://wiki.debian.org/Hardening http://lists.debian.org/debian-devel/2011/09/msg00054.html