Add #[link] attributes to dll imports

This avoids using jmp stubs when calling functions exported from a dll.
This commit is contained in:
Chris Denton 2021-04-30 16:24:49 +01:00
parent bacf770f29
commit 25712afd94
No known key found for this signature in database
GPG Key ID: 713472F2F45627DE

View File

@ -688,6 +688,7 @@ pub struct BY_HANDLE_FILE_INFORMATION {
pub const TOKEN_READ: DWORD = 0x20008;
#[link(name="kernel32")]
extern "system" {
#[link_name = "SystemFunction036"]
pub fn RtlGenRandom(RandomBuffer: *mut u8, RandomBufferLength: ULONG) -> BOOLEAN;
@ -744,6 +745,7 @@ pub struct FILE_STANDARD_INFO {
pub Directory: BOOLEAN,
}
#[link(name="kernel32")]
extern "system" {
pub fn GetFileInformationByHandleEx(hFile: HANDLE,
fileInfoClass: FILE_INFO_BY_HANDLE_CLASS,
@ -756,6 +758,7 @@ pub fn BCryptGenRandom(hAlgorithm: LPVOID, pBuffer: *mut u8,
}
// Shared between Desktop & UWP
#[link(name = "kernel32")]
extern "system" {
pub fn WSAStartup(wVersionRequested: WORD, lpWSAData: LPWSADATA) -> c_int;
pub fn WSACleanup() -> c_int;