/** * WinPR: Windows Portable Runtime * Handle Management * * Copyright 2012 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 #ifndef _WIN32 #if defined __APPLE__ #include #include #include #include #include #define winpr_sem_t semaphore_td #else #include #include #define winpr_sem_t sem_t #endif BOOL CloseHandle(HANDLE hObject) { #if defined __APPLE__ semaphore_destroy(mach_task_self(), *((winpr_sem_t*) hObject)); #else sem_destroy((winpr_sem_t*) hObject); #endif free(hObject); return 1; } BOOL DuplicateHandle(HANDLE hSourceProcessHandle, HANDLE hSourceHandle, HANDLE hTargetProcessHandle, LPHANDLE lpTargetHandle, DWORD dwDesiredAccess, BOOL bInheritHandle, DWORD dwOptions) { return 1; } BOOL GetHandleInformation(HANDLE hObject, LPDWORD lpdwFlags) { return 1; } BOOL SetHandleInformation(HANDLE hObject, DWORD dwMask, DWORD dwFlags) { return 1; } #endif