mirror of
https://github.com/pbatard/rufus.git
synced 2025-06-04 00:29:00 -04:00

- Side load SetupAPI.dll, as this is the DLL that was causing the CfgMgr32.dll local load. This reverts part of622e60659c
since we no longer have to hook into CfgMgr32.dll directly. - Also set the redefinition of DECLSPEC_IMPORT, which we need for MinGW32 x86, in the global AM_CFLAGS of configure.ac, so that we no longer have to worry about forgetting to do it in a source and experience crashes on 32-bit as a result (See965759f58a
). - Also delay-load crypt32.dll while we're at it. - Also add provision for enabling /DEPENDENTLOADFLAG:0x800 on MinGW, by leaving a properly crafted entry in the .rdata section that can then be used with the loadcfg.py Python script. - Sadly, per https://github.com/pbatard/rufus/issues/2701#issuecomment-2874788564 and subsequent comment, having DependentLoadFlags set to LOAD_LIBRARY_SEARCH_SYSTEM32 is still not enough to take care of side loading issues, as, ever since the introduction of wimlib support, we are seeing CRYPTBASE.DLL being side-loaded in MinGW, and, even with crypt32.dll being delay-loaded there is literally *nothing* we can do about it! - The end result of all the above is that we will have no choice but ditch MinGW for release executables as it's just impossible to properly take care of side-loading vulnerabilities with MinGW (and Microsoft are REALLY not helping with this whole mess either, when they don't even use LOAD_LIBRARY_SEARCH_SYSTEM32 for Windows' system DLLs). - In preparation for this, we add UPX compression to the x86_64 and x86_32 MSVC executables. - Finally, we also fix one last Coverity warning in xml.c and remove duplicates in .vcxproj for ARM64.
14 lines
324 B
Modula-2
14 lines
324 B
Modula-2
EXPORTS
|
|
CertFindCertificateInStore@24
|
|
CertGetCertificateChain@32
|
|
CertGetNameStringA@24
|
|
CertCloseStore@8
|
|
CertFreeCertificateContext@4
|
|
CryptQueryObject@44
|
|
CryptDecodeObjectEx@32
|
|
CryptHashCertificate@28
|
|
CryptMsgGetParam@20
|
|
CryptMsgClose@4
|
|
CryptMsgGetParam@20
|
|
CryptMsgOpenToDecode@24
|
|
CryptMsgUpdate@16
|