Skip to content

Commit d0b02ce

Browse files
committed
Move WinAPI functions from libc to std::sys::windows::c
Also remove unused WinAPI functions Signed-off-by: Peter Atashian <[email protected]>
1 parent ef72938 commit d0b02ce

File tree

9 files changed

+150
-329
lines changed

9 files changed

+150
-329
lines changed

src/liblibc/lib.rs

Lines changed: 1 addition & 223 deletions
Original file line numberDiff line numberDiff line change
@@ -134,11 +134,6 @@ pub use funcs::bsd43::*;
134134
#[cfg(unix)] pub use funcs::posix01::unistd::*;
135135
#[cfg(unix)] pub use funcs::posix01::resource::*;
136136

137-
138-
#[cfg(windows)] pub use funcs::extra::kernel32::*;
139-
#[cfg(windows)] pub use funcs::extra::winsock::*;
140-
#[cfg(windows)] pub use funcs::extra::msvcrt::*;
141-
142137
// On NaCl, these libraries are static. Thus it would be a Bad Idea to link them
143138
// in when creating a test crate.
144139
#[cfg(not(any(windows, target_env = "musl", all(target_os = "nacl", test))))]
@@ -6165,224 +6160,7 @@ pub mod funcs {
61656160

61666161

61676162
#[cfg(target_os = "windows")]
6168-
pub mod extra {
6169-
6170-
pub mod kernel32 {
6171-
use types::os::arch::c95::{c_uint};
6172-
use types::os::arch::extra::{BOOL, DWORD, SIZE_T, HMODULE,
6173-
LPCWSTR, LPWSTR,
6174-
LPWCH, LPDWORD, LPVOID,
6175-
LPCVOID, LPOVERLAPPED,
6176-
LPSECURITY_ATTRIBUTES,
6177-
LPSTARTUPINFO,
6178-
LPPROCESS_INFORMATION,
6179-
LPMEMORY_BASIC_INFORMATION,
6180-
LPSYSTEM_INFO, HANDLE, LPHANDLE,
6181-
LARGE_INTEGER, PLARGE_INTEGER,
6182-
LPFILETIME, LPWIN32_FIND_DATAW};
6183-
6184-
extern "system" {
6185-
pub fn GetEnvironmentVariableW(n: LPCWSTR,
6186-
v: LPWSTR,
6187-
nsize: DWORD)
6188-
-> DWORD;
6189-
pub fn SetEnvironmentVariableW(n: LPCWSTR, v: LPCWSTR)
6190-
-> BOOL;
6191-
pub fn GetEnvironmentStringsW() -> LPWCH;
6192-
pub fn FreeEnvironmentStringsW(env_ptr: LPWCH) -> BOOL;
6193-
pub fn GetModuleFileNameW(hModule: HMODULE,
6194-
lpFilename: LPWSTR,
6195-
nSize: DWORD)
6196-
-> DWORD;
6197-
pub fn CreateDirectoryW(lpPathName: LPCWSTR,
6198-
lpSecurityAttributes:
6199-
LPSECURITY_ATTRIBUTES)
6200-
-> BOOL;
6201-
pub fn CopyFileW(lpExistingFileName: LPCWSTR,
6202-
lpNewFileName: LPCWSTR,
6203-
bFailIfExists: BOOL)
6204-
-> BOOL;
6205-
pub fn DeleteFileW(lpPathName: LPCWSTR) -> BOOL;
6206-
pub fn RemoveDirectoryW(lpPathName: LPCWSTR) -> BOOL;
6207-
pub fn GetCurrentDirectoryW(nBufferLength: DWORD,
6208-
lpBuffer: LPWSTR)
6209-
-> DWORD;
6210-
pub fn SetCurrentDirectoryW(lpPathName: LPCWSTR) -> BOOL;
6211-
pub fn GetLastError() -> DWORD;
6212-
pub fn FindFirstFileW(fileName: LPCWSTR, findFileData: LPWIN32_FIND_DATAW)
6213-
-> HANDLE;
6214-
pub fn FindNextFileW(findFile: HANDLE, findFileData: LPWIN32_FIND_DATAW)
6215-
-> BOOL;
6216-
pub fn FindClose(findFile: HANDLE) -> BOOL;
6217-
pub fn DuplicateHandle(hSourceProcessHandle: HANDLE,
6218-
hSourceHandle: HANDLE,
6219-
hTargetProcessHandle: HANDLE,
6220-
lpTargetHandle: LPHANDLE,
6221-
dwDesiredAccess: DWORD,
6222-
bInheritHandle: BOOL,
6223-
dwOptions: DWORD)
6224-
-> BOOL;
6225-
pub fn CloseHandle(hObject: HANDLE) -> BOOL;
6226-
pub fn OpenProcess(dwDesiredAccess: DWORD,
6227-
bInheritHandle: BOOL,
6228-
dwProcessId: DWORD)
6229-
-> HANDLE;
6230-
pub fn GetCurrentProcess() -> HANDLE;
6231-
pub fn CreateProcessW(lpApplicationName: LPCWSTR,
6232-
lpCommandLine: LPWSTR,
6233-
lpProcessAttributes:
6234-
LPSECURITY_ATTRIBUTES,
6235-
lpThreadAttributes:
6236-
LPSECURITY_ATTRIBUTES,
6237-
bInheritHandles: BOOL,
6238-
dwCreationFlags: DWORD,
6239-
lpEnvironment: LPVOID,
6240-
lpCurrentDirectory: LPCWSTR,
6241-
lpStartupInfo: LPSTARTUPINFO,
6242-
lpProcessInformation:
6243-
LPPROCESS_INFORMATION)
6244-
-> BOOL;
6245-
pub fn WaitForSingleObject(hHandle: HANDLE,
6246-
dwMilliseconds: DWORD)
6247-
-> DWORD;
6248-
pub fn TerminateProcess(hProcess: HANDLE, uExitCode: c_uint)
6249-
-> BOOL;
6250-
pub fn GetExitCodeProcess(hProcess: HANDLE,
6251-
lpExitCode: LPDWORD)
6252-
-> BOOL;
6253-
pub fn GetSystemInfo(lpSystemInfo: LPSYSTEM_INFO);
6254-
pub fn VirtualAlloc(lpAddress: LPVOID,
6255-
dwSize: SIZE_T,
6256-
flAllocationType: DWORD,
6257-
flProtect: DWORD)
6258-
-> LPVOID;
6259-
pub fn VirtualFree(lpAddress: LPVOID,
6260-
dwSize: SIZE_T,
6261-
dwFreeType: DWORD)
6262-
-> BOOL;
6263-
pub fn VirtualLock(lpAddress: LPVOID, dwSize: SIZE_T) -> BOOL;
6264-
pub fn VirtualUnlock(lpAddress: LPVOID, dwSize: SIZE_T)
6265-
-> BOOL;
6266-
pub fn VirtualProtect(lpAddress: LPVOID,
6267-
dwSize: SIZE_T,
6268-
flNewProtect: DWORD,
6269-
lpflOldProtect: LPDWORD)
6270-
-> BOOL;
6271-
pub fn VirtualQuery(lpAddress: LPCVOID,
6272-
lpBuffer: LPMEMORY_BASIC_INFORMATION,
6273-
dwLength: SIZE_T)
6274-
-> SIZE_T;
6275-
pub fn CreateFileMappingW(hFile: HANDLE,
6276-
lpAttributes: LPSECURITY_ATTRIBUTES,
6277-
flProtect: DWORD,
6278-
dwMaximumSizeHigh: DWORD,
6279-
dwMaximumSizeLow: DWORD,
6280-
lpName: LPCWSTR)
6281-
-> HANDLE;
6282-
pub fn MapViewOfFile(hFileMappingObject: HANDLE,
6283-
dwDesiredAccess: DWORD,
6284-
dwFileOffsetHigh: DWORD,
6285-
dwFileOffsetLow: DWORD,
6286-
dwNumberOfBytesToMap: SIZE_T)
6287-
-> LPVOID;
6288-
pub fn UnmapViewOfFile(lpBaseAddress: LPCVOID) -> BOOL;
6289-
pub fn MoveFileExW(lpExistingFileName: LPCWSTR,
6290-
lpNewFileName: LPCWSTR,
6291-
dwFlags: DWORD) -> BOOL;
6292-
pub fn CreateHardLinkW(lpSymlinkFileName: LPCWSTR,
6293-
lpTargetFileName: LPCWSTR,
6294-
lpSecurityAttributes: LPSECURITY_ATTRIBUTES)
6295-
-> BOOL;
6296-
pub fn FlushFileBuffers(hFile: HANDLE) -> BOOL;
6297-
pub fn CreateFileW(lpFileName: LPCWSTR,
6298-
dwDesiredAccess: DWORD,
6299-
dwShareMode: DWORD,
6300-
lpSecurityAttributes: LPSECURITY_ATTRIBUTES,
6301-
dwCreationDisposition: DWORD,
6302-
dwFlagsAndAttributes: DWORD,
6303-
hTemplateFile: HANDLE) -> HANDLE;
6304-
pub fn ReadFile(hFile: HANDLE,
6305-
lpBuffer: LPVOID,
6306-
nNumberOfBytesToRead: DWORD,
6307-
lpNumberOfBytesRead: LPDWORD,
6308-
lpOverlapped: LPOVERLAPPED) -> BOOL;
6309-
pub fn WriteFile(hFile: HANDLE,
6310-
lpBuffer: LPVOID,
6311-
nNumberOfBytesToWrite: DWORD,
6312-
lpNumberOfBytesWritten: LPDWORD,
6313-
lpOverlapped: LPOVERLAPPED) -> BOOL;
6314-
pub fn SetFilePointerEx(hFile: HANDLE,
6315-
liDistanceToMove: LARGE_INTEGER,
6316-
lpNewFilePointer: PLARGE_INTEGER,
6317-
dwMoveMethod: DWORD) -> BOOL;
6318-
pub fn SetEndOfFile(hFile: HANDLE) -> BOOL;
6319-
6320-
pub fn GetSystemTimeAsFileTime(
6321-
lpSystemTimeAsFileTime: LPFILETIME);
6322-
6323-
pub fn QueryPerformanceFrequency(
6324-
lpFrequency: *mut LARGE_INTEGER) -> BOOL;
6325-
pub fn QueryPerformanceCounter(
6326-
lpPerformanceCount: *mut LARGE_INTEGER) -> BOOL;
6327-
6328-
pub fn GetCurrentProcessId() -> DWORD;
6329-
pub fn CreateNamedPipeW(
6330-
lpName: LPCWSTR,
6331-
dwOpenMode: DWORD,
6332-
dwPipeMode: DWORD,
6333-
nMaxInstances: DWORD,
6334-
nOutBufferSize: DWORD,
6335-
nInBufferSize: DWORD,
6336-
nDefaultTimeOut: DWORD,
6337-
lpSecurityAttributes: LPSECURITY_ATTRIBUTES
6338-
) -> HANDLE;
6339-
pub fn ConnectNamedPipe(hNamedPipe: HANDLE,
6340-
lpOverlapped: LPOVERLAPPED) -> BOOL;
6341-
pub fn WaitNamedPipeW(lpNamedPipeName: LPCWSTR,
6342-
nTimeOut: DWORD) -> BOOL;
6343-
pub fn SetNamedPipeHandleState(hNamedPipe: HANDLE,
6344-
lpMode: LPDWORD,
6345-
lpMaxCollectionCount: LPDWORD,
6346-
lpCollectDataTimeout: LPDWORD)
6347-
-> BOOL;
6348-
pub fn CreateEventW(lpEventAttributes: LPSECURITY_ATTRIBUTES,
6349-
bManualReset: BOOL,
6350-
bInitialState: BOOL,
6351-
lpName: LPCWSTR) -> HANDLE;
6352-
pub fn GetOverlappedResult(hFile: HANDLE,
6353-
lpOverlapped: LPOVERLAPPED,
6354-
lpNumberOfBytesTransferred: LPDWORD,
6355-
bWait: BOOL) -> BOOL;
6356-
pub fn DisconnectNamedPipe(hNamedPipe: HANDLE) -> BOOL;
6357-
}
6358-
}
6359-
6360-
pub mod msvcrt {
6361-
use types::os::arch::c95::{c_int, c_long};
6362-
use types::os::arch::c99::intptr_t;
6363-
6364-
extern {
6365-
#[link_name = "_commit"]
6366-
pub fn commit(fd: c_int) -> c_int;
6367-
6368-
#[link_name = "_get_osfhandle"]
6369-
pub fn get_osfhandle(fd: c_int) -> c_long;
6370-
6371-
#[link_name = "_open_osfhandle"]
6372-
pub fn open_osfhandle(osfhandle: intptr_t,
6373-
flags: c_int) -> c_int;
6374-
}
6375-
}
6376-
6377-
pub mod winsock {
6378-
use types::os::arch::c95::{c_int, c_long, c_ulong};
6379-
use types::os::common::bsd44::SOCKET;
6380-
6381-
extern "system" {
6382-
pub fn ioctlsocket(s: SOCKET, cmd: c_long, argp: *mut c_ulong) -> c_int;
6383-
}
6384-
}
6385-
}
6163+
pub mod extra {}
63866164
}
63876165

63886166
#[doc(hidden)]

0 commit comments

Comments
 (0)