/** * WinPR: Windows Portable Runtime * Memory Functions * * Copyright 2014 Marc-Andre Moreau * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include #include #include #include #ifdef WINPR_HAVE_UNISTD_H #include #endif /** * api-ms-win-core-memory-l1-1-2.dll: * * AllocateUserPhysicalPages * AllocateUserPhysicalPagesNuma * CreateFileMappingFromApp * CreateFileMappingNumaW * CreateFileMappingW * CreateMemoryResourceNotification * FlushViewOfFile * FreeUserPhysicalPages * GetLargePageMinimum * GetMemoryErrorHandlingCapabilities * GetProcessWorkingSetSizeEx * GetSystemFileCacheSize * GetWriteWatch * MapUserPhysicalPages * MapViewOfFile * MapViewOfFileEx * MapViewOfFileFromApp * OpenFileMappingW * PrefetchVirtualMemory * QueryMemoryResourceNotification * ReadProcessMemory * RegisterBadMemoryNotification * ResetWriteWatch * SetProcessWorkingSetSizeEx * SetSystemFileCacheSize * UnmapViewOfFile * UnmapViewOfFileEx * UnregisterBadMemoryNotification * VirtualAlloc * VirtualAllocEx * VirtualAllocExNuma * VirtualFree * VirtualFreeEx * VirtualLock * VirtualProtect * VirtualProtectEx * VirtualQuery * VirtualQueryEx * VirtualUnlock * WriteProcessMemory */ #ifndef _WIN32 #include "memory.h" HANDLE CreateFileMappingA(WINPR_ATTR_UNUSED HANDLE hFile, WINPR_ATTR_UNUSED LPSECURITY_ATTRIBUTES lpAttributes, WINPR_ATTR_UNUSED DWORD flProtect, WINPR_ATTR_UNUSED DWORD dwMaximumSizeHigh, WINPR_ATTR_UNUSED DWORD dwMaximumSizeLow, WINPR_ATTR_UNUSED LPCSTR lpName) { WLog_ERR("TODO", "TODO: Implement"); if (hFile != INVALID_HANDLE_VALUE) { return nullptr; /* not yet implemented */ } return nullptr; } HANDLE CreateFileMappingW(WINPR_ATTR_UNUSED HANDLE hFile, WINPR_ATTR_UNUSED LPSECURITY_ATTRIBUTES lpAttributes, WINPR_ATTR_UNUSED DWORD flProtect, WINPR_ATTR_UNUSED DWORD dwMaximumSizeHigh, WINPR_ATTR_UNUSED DWORD dwMaximumSizeLow, WINPR_ATTR_UNUSED LPCWSTR lpName) { WLog_ERR("TODO", "TODO: Implement"); return nullptr; } HANDLE OpenFileMappingA(WINPR_ATTR_UNUSED DWORD dwDesiredAccess, WINPR_ATTR_UNUSED BOOL bInheritHandle, WINPR_ATTR_UNUSED LPCSTR lpName) { WLog_ERR("TODO", "TODO: Implement"); return nullptr; } HANDLE OpenFileMappingW(WINPR_ATTR_UNUSED DWORD dwDesiredAccess, WINPR_ATTR_UNUSED BOOL bInheritHandle, WINPR_ATTR_UNUSED LPCWSTR lpName) { WLog_ERR("TODO", "TODO: Implement"); return nullptr; } LPVOID MapViewOfFile(WINPR_ATTR_UNUSED HANDLE hFileMappingObject, WINPR_ATTR_UNUSED DWORD dwDesiredAccess, WINPR_ATTR_UNUSED DWORD dwFileOffsetHigh, WINPR_ATTR_UNUSED DWORD dwFileOffsetLow, WINPR_ATTR_UNUSED size_t dwNumberOfBytesToMap) { WLog_ERR("TODO", "TODO: Implement"); return nullptr; } LPVOID MapViewOfFileEx(WINPR_ATTR_UNUSED HANDLE hFileMappingObject, WINPR_ATTR_UNUSED DWORD dwDesiredAccess, WINPR_ATTR_UNUSED DWORD dwFileOffsetHigh, WINPR_ATTR_UNUSED DWORD dwFileOffsetLow, WINPR_ATTR_UNUSED size_t dwNumberOfBytesToMap, WINPR_ATTR_UNUSED LPVOID lpBaseAddress) { WLog_ERR("TODO", "TODO: Implement"); return nullptr; } BOOL FlushViewOfFile(WINPR_ATTR_UNUSED LPCVOID lpBaseAddress, WINPR_ATTR_UNUSED size_t dwNumberOfBytesToFlush) { WLog_ERR("TODO", "TODO: Implement"); return TRUE; } BOOL UnmapViewOfFile(WINPR_ATTR_UNUSED LPCVOID lpBaseAddress) { WLog_ERR("TODO", "TODO: Implement"); return TRUE; } #endif