From a2cd934184df4effe964be7abe9fcc28e9e1897c Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Wed, 14 Nov 2018 14:59:58 +0100 Subject: [PATCH] Fixed windows build warnings. --- client/Windows/wf_cliprdr.c | 18 ++++++------ cmake/FindOpenSSL.cmake | 8 ++++++ libfreerdp/core/client.h | 4 ++- libfreerdp/crypto/crypto.c | 4 +-- winpr/include/winpr/nt.h | 54 +++++++++++++++++++---------------- winpr/libwinpr/path/shell.c | 6 ++-- winpr/libwinpr/utils/strlst.c | 4 +-- 7 files changed, 57 insertions(+), 41 deletions(-) diff --git a/client/Windows/wf_cliprdr.c b/client/Windows/wf_cliprdr.c index 88413a25a..3f3e1c4da 100644 --- a/client/Windows/wf_cliprdr.c +++ b/client/Windows/wf_cliprdr.c @@ -154,8 +154,8 @@ static UINT cliprdr_send_data_request(wfClipboard* clipboard, UINT32 format); static UINT cliprdr_send_lock(wfClipboard* clipboard); static UINT cliprdr_send_unlock(wfClipboard* clipboard); static UINT cliprdr_send_request_filecontents(wfClipboard* clipboard, - void* streamid, - int index, int flag, DWORD positionhigh, + const void* streamid, + LONG index, int flag, DWORD positionhigh, DWORD positionlow, ULONG request); static void CliprdrDataObject_Delete(CliprdrDataObject* instance); @@ -1289,8 +1289,8 @@ static UINT cliprdr_send_format_list(wfClipboard* clipboard) for (index = 0; index < numFormats; index++) { - if(GetClipboardFormatNameA(formats[index].formatId, formatName, - sizeof(formatName))) + if (GetClipboardFormatNameA(formats[index].formatId, formatName, + sizeof(formatName))) { formats[index].formatName = _strdup(formatName); } @@ -1330,10 +1330,10 @@ static UINT cliprdr_send_data_request(wfClipboard* clipboard, UINT32 formatId) return rc; } -static UINT cliprdr_send_request_filecontents(wfClipboard* clipboard, - const void* streamid, - int index, int flag, DWORD positionhigh, - DWORD positionlow, ULONG nreq) +UINT cliprdr_send_request_filecontents(wfClipboard* clipboard, + const void* streamid, + LONG index, int flag, DWORD positionhigh, + DWORD positionlow, ULONG nreq) { UINT rc; CLIPRDR_FILE_CONTENTS_REQUEST fileContentsRequest; @@ -2046,7 +2046,7 @@ static BOOL wf_cliprdr_process_filename(wfClipboard* clipboard, if (!wf_cliprdr_add_to_file_arrays(clipboard, wFileName, pathLen)) return FALSE; - if ((clipboard->fileDescriptor[clipboard->nFiles - 1]->dwFileAttributes & + if ((clipboard->fileDescriptor[clipboard->nFiles - 1]->dwFileAttributes& FILE_ATTRIBUTE_DIRECTORY) != 0) { /* this is a directory */ diff --git a/cmake/FindOpenSSL.cmake b/cmake/FindOpenSSL.cmake index ec0760533..35af2e50e 100644 --- a/cmake/FindOpenSSL.cmake +++ b/cmake/FindOpenSSL.cmake @@ -108,6 +108,7 @@ ELSEIF(WIN32 AND NOT CYGWIN) "libeay32${MSVC_RUNTIME_SUFFIX}d" libeay32 libcrypto + libcrypto-1_1 ${_OPENSSL_ROOT_HINTS_AND_PATHS} PATH_SUFFIXES ${MSVC_RUNTIME_PATH_SUFFIX} @@ -121,6 +122,7 @@ ELSEIF(WIN32 AND NOT CYGWIN) "libeay32${MSVC_RUNTIME_SUFFIX}" libeay32 libcrypto + libcrypto-1_1 ${_OPENSSL_ROOT_HINTS_AND_PATHS} PATH_SUFFIXES ${MSVC_RUNTIME_PATH_SUFFIX} @@ -135,6 +137,7 @@ ELSEIF(WIN32 AND NOT CYGWIN) ssleay32 ssl libssl + libssl-1_1 ${_OPENSSL_ROOT_HINTS_AND_PATHS} PATH_SUFFIXES ${MSVC_RUNTIME_PATH_SUFFIX} @@ -149,6 +152,7 @@ ELSEIF(WIN32 AND NOT CYGWIN) ssleay32 ssl libssl + libssl-1_1 ${_OPENSSL_ROOT_HINTS_AND_PATHS} PATH_SUFFIXES ${MSVC_RUNTIME_PATH_SUFFIX} @@ -193,6 +197,7 @@ ELSEIF(WIN32 AND NOT CYGWIN) NAMES libeay32 libcrypto + libcrypto-1_1 HINTS ${_OPENSSL_LIBDIR} ${_OPENSSL_ROOT_HINTS_AND_PATHS} @@ -204,6 +209,7 @@ ELSEIF(WIN32 AND NOT CYGWIN) NAMES ssleay32 libssl + libssl-1_1 HINTS ${_OPENSSL_LIBDIR} ${_OPENSSL_ROOT_HINTS_AND_PATHS} @@ -220,6 +226,7 @@ ELSE(WIN32 AND NOT CYGWIN) NAMES ssl ssleay32 + libssl-1_1 "ssleay32${MSVC_RUNTIME_SUFFIX}" HINTS ${_OPENSSL_LIBDIR} @@ -231,6 +238,7 @@ ELSE(WIN32 AND NOT CYGWIN) FIND_LIBRARY(OPENSSL_CRYPTO_LIBRARY NAMES crypto + libcrypto-1_1 HINTS ${_OPENSSL_LIBDIR} ${_OPENSSL_ROOT_HINTS_AND_PATHS} diff --git a/libfreerdp/core/client.h b/libfreerdp/core/client.h index e98531488..82b0e239c 100644 --- a/libfreerdp/core/client.h +++ b/libfreerdp/core/client.h @@ -35,7 +35,9 @@ #include #include -#define CHANNEL_MAX_COUNT 31 +#ifndef CHANNEL_MAX_COUNT +#define CHANNEL_MAX_COUNT 30 +#endif struct rdp_channel_client_data { diff --git a/libfreerdp/crypto/crypto.c b/libfreerdp/crypto/crypto.c index 39875f74d..32e1ad0d8 100644 --- a/libfreerdp/crypto/crypto.c +++ b/libfreerdp/crypto/crypto.c @@ -573,7 +573,7 @@ static char* object_string(ASN1_TYPE* object) return 0; } - result = (char*)strdup((char*)utf8String); + result = (char*)_strdup((char*)utf8String); OPENSSL_free(utf8String); return result; } @@ -638,7 +638,7 @@ char* crypto_cert_get_email(X509* x509) return 0; } - result = strdup(list.strings[0]); + result = _strdup(list.strings[0]); OPENSSL_free(list.strings[0]); string_list_free(&list); return result; diff --git a/winpr/include/winpr/nt.h b/winpr/include/winpr/nt.h index 1a686cce5..d7ba79590 100644 --- a/winpr/include/winpr/nt.h +++ b/winpr/include/winpr/nt.h @@ -28,7 +28,7 @@ /* Defined in winnt.h, do not redefine */ -#define STATUS_WAIT_0 ((NTSTATUS)0x00000000L) +#define STATUS_WAIT_0 ((NTSTATUS)0x00000000L) #define STATUS_ABANDONED_WAIT_0 ((NTSTATUS)0x00000080L) #define STATUS_USER_APC ((NTSTATUS)0x000000C0L) #define STATUS_TIMEOUT ((NTSTATUS)0x00000102L) @@ -78,9 +78,9 @@ #define STATUS_DLL_INIT_FAILED ((NTSTATUS)0xC0000142L) #define STATUS_FLOAT_MULTIPLE_FAULTS ((NTSTATUS)0xC00002B4L) #define STATUS_FLOAT_MULTIPLE_TRAPS ((NTSTATUS)0xC00002B5L) -#define STATUS_REG_NAT_CONSUMPTION ((NTSTATUS)0xC00002C9L) -#define STATUS_STACK_BUFFER_OVERRUN ((NTSTATUS)0xC0000409L) -#define STATUS_INVALID_CRUNTIME_PARAMETER ((NTSTATUS)0xC0000417L) +#define STATUS_REG_NAT_CONSUMPTION ((NTSTATUS)0xC00002C9L) +#define STATUS_STACK_BUFFER_OVERRUN ((NTSTATUS)0xC0000409L) +#define STATUS_INVALID_CRUNTIME_PARAMETER ((NTSTATUS)0xC0000417L) #define STATUS_ASSERTION_FAILURE ((NTSTATUS)0xC0000420L) #define STATUS_SXS_EARLY_DEACTIVATION ((NTSTATUS)0xC015000FL) #define STATUS_SXS_INVALID_DEACTIVATION ((NTSTATUS)0xC0150010L) @@ -377,12 +377,16 @@ #define STATUS_NO_IMPERSONATION_TOKEN ((NTSTATUS)0xC000005C) #define STATUS_CANT_DISABLE_MANDATORY ((NTSTATUS)0xC000005D) #define STATUS_NO_LOGON_SERVERS ((NTSTATUS)0xC000005E) +#ifndef STATUS_NO_SUCH_LOGON_SESSION #define STATUS_NO_SUCH_LOGON_SESSION ((NTSTATUS)0xC000005F) +#endif #define STATUS_NO_SUCH_PRIVILEGE ((NTSTATUS)0xC0000060) #define STATUS_PRIVILEGE_NOT_HELD ((NTSTATUS)0xC0000061) #define STATUS_INVALID_ACCOUNT_NAME ((NTSTATUS)0xC0000062) #define STATUS_USER_EXISTS ((NTSTATUS)0xC0000063) +#ifndef STATUS_NO_SUCH_USER #define STATUS_NO_SUCH_USER ((NTSTATUS)0xC0000064) +#endif #define STATUS_GROUP_EXISTS ((NTSTATUS)0xC0000065) #define STATUS_NO_SUCH_GROUP ((NTSTATUS)0xC0000066) #define STATUS_MEMBER_IN_GROUP ((NTSTATUS)0xC0000067) @@ -1259,7 +1263,7 @@ #if !defined(NTSTATUS_FROM_WIN32) && !defined(INLINE_NTSTATUS_FROM_WIN32) static INLINE NTSTATUS NTSTATUS_FROM_WIN32(long x) { - return x <= 0 ? (NTSTATUS)x : (NTSTATUS) (((x) & 0x0000FFFF) | (0x7 << 16) | 0xC0000000); + return x <= 0 ? (NTSTATUS)x : (NTSTATUS)(((x) & 0x0000FFFF) | (0x7 << 16) | 0xC0000000); } #endif @@ -1269,7 +1273,7 @@ static INLINE NTSTATUS NTSTATUS_FROM_WIN32(long x) * winternl.h contains an incomplete definition of enum FILE_INFORMATION_CLASS * avoid conflict by prefixing the winternl.h definition by _WINTERNL_ and then * make a complete definition of enum FILE_INFORMATION_CLASS ourselves. - * + * * For more information, refer to [MS-FSCC]: File System Control Codes: * http://msdn.microsoft.com/en-us/library/cc231987.aspx */ @@ -1379,7 +1383,7 @@ typedef enum _FILE_INFORMATION_CLASS #define FILE_EXISTS 0x00000004 #define FILE_DOES_NOT_EXIST 0x00000005 -typedef CONST char *PCSZ; +typedef CONST char* PCSZ; typedef struct _STRING { @@ -1387,7 +1391,7 @@ typedef struct _STRING USHORT MaximumLength; PCHAR Buffer; } STRING; -typedef STRING *PSTRING; +typedef STRING* PSTRING; typedef STRING ANSI_STRING; typedef PSTRING PANSI_STRING; @@ -1423,7 +1427,7 @@ typedef struct _OBJECT_ATTRIBUTES PVOID SecurityDescriptor; PVOID SecurityQualityOfService; } OBJECT_ATTRIBUTES; -typedef OBJECT_ATTRIBUTES *POBJECT_ATTRIBUTES; +typedef OBJECT_ATTRIBUTES* POBJECT_ATTRIBUTES; typedef struct _IO_STATUS_BLOCK { @@ -1548,35 +1552,37 @@ WINPR_API VOID _RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceStr WINPR_API VOID _RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString); WINPR_API NTSTATUS _RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString, - PCANSI_STRING SourceString, BOOLEAN AllocateDestinationString); + PCANSI_STRING SourceString, BOOLEAN AllocateDestinationString); WINPR_API VOID _RtlFreeUnicodeString(PUNICODE_STRING UnicodeString); WINPR_API ULONG _RtlNtStatusToDosError(NTSTATUS status); WINPR_API VOID _InitializeObjectAttributes(POBJECT_ATTRIBUTES InitializedAttributes, - PUNICODE_STRING ObjectName, ULONG Attributes, HANDLE RootDirectory, - PSECURITY_DESCRIPTOR SecurityDescriptor); + PUNICODE_STRING ObjectName, ULONG Attributes, HANDLE RootDirectory, + PSECURITY_DESCRIPTOR SecurityDescriptor); WINPR_API NTSTATUS _NtCreateFile(PHANDLE FileHandle, ACCESS_MASK DesiredAccess, - POBJECT_ATTRIBUTES ObjectAttributes, PIO_STATUS_BLOCK IoStatusBlock, - PLARGE_INTEGER AllocationSize, ULONG FileAttributes, ULONG ShareAccess, - ULONG CreateDisposition, ULONG CreateOptions, PVOID EaBuffer, ULONG EaLength); + POBJECT_ATTRIBUTES ObjectAttributes, PIO_STATUS_BLOCK IoStatusBlock, + PLARGE_INTEGER AllocationSize, ULONG FileAttributes, ULONG ShareAccess, + ULONG CreateDisposition, ULONG CreateOptions, PVOID EaBuffer, ULONG EaLength); WINPR_API NTSTATUS _NtOpenFile(PHANDLE FileHandle, ACCESS_MASK DesiredAccess, - POBJECT_ATTRIBUTES ObjectAttributes, PIO_STATUS_BLOCK IoStatusBlock, - ULONG ShareAccess, ULONG OpenOptions); + POBJECT_ATTRIBUTES ObjectAttributes, PIO_STATUS_BLOCK IoStatusBlock, + ULONG ShareAccess, ULONG OpenOptions); -WINPR_API NTSTATUS _NtReadFile(HANDLE FileHandle, HANDLE Event, PIO_APC_ROUTINE ApcRoutine, PVOID ApcContext, - PIO_STATUS_BLOCK IoStatusBlock, PVOID Buffer, ULONG Length, PLARGE_INTEGER ByteOffset, PULONG Key); +WINPR_API NTSTATUS _NtReadFile(HANDLE FileHandle, HANDLE Event, PIO_APC_ROUTINE ApcRoutine, + PVOID ApcContext, + PIO_STATUS_BLOCK IoStatusBlock, PVOID Buffer, ULONG Length, PLARGE_INTEGER ByteOffset, PULONG Key); -WINPR_API NTSTATUS _NtWriteFile(HANDLE FileHandle, HANDLE Event, PIO_APC_ROUTINE ApcRoutine, PVOID ApcContext, - PIO_STATUS_BLOCK IoStatusBlock, PVOID Buffer, ULONG Length, PLARGE_INTEGER ByteOffset, PULONG Key); +WINPR_API NTSTATUS _NtWriteFile(HANDLE FileHandle, HANDLE Event, PIO_APC_ROUTINE ApcRoutine, + PVOID ApcContext, + PIO_STATUS_BLOCK IoStatusBlock, PVOID Buffer, ULONG Length, PLARGE_INTEGER ByteOffset, PULONG Key); WINPR_API NTSTATUS _NtDeviceIoControlFile(HANDLE FileHandle, HANDLE Event, - PIO_APC_ROUTINE ApcRoutine, PVOID ApcContext, PIO_STATUS_BLOCK IoStatusBlock, - ULONG IoControlCode, PVOID InputBuffer, ULONG InputBufferLength, - PVOID OutputBuffer, ULONG OutputBufferLength); + PIO_APC_ROUTINE ApcRoutine, PVOID ApcContext, PIO_STATUS_BLOCK IoStatusBlock, + ULONG IoControlCode, PVOID InputBuffer, ULONG InputBufferLength, + PVOID OutputBuffer, ULONG OutputBufferLength); WINPR_API NTSTATUS _NtClose(HANDLE Handle); diff --git a/winpr/libwinpr/path/shell.c b/winpr/libwinpr/path/shell.c index cfe2d8aef..d8b9456ba 100644 --- a/winpr/libwinpr/path/shell.c +++ b/winpr/libwinpr/path/shell.c @@ -115,11 +115,11 @@ static char* GetPath_TEMP(void) static char* GetPath_XDG_DATA_HOME(void) { - size_t size; char* path = NULL; #if defined(WIN32) || defined(__IOS__) path = GetPath_XDG_CONFIG_HOME(); #else + size_t size; char* home = NULL; /** * There is a single base directory relative to which user-specific data files should be written. @@ -155,7 +155,6 @@ static char* GetPath_XDG_DATA_HOME(void) static char* GetPath_XDG_CONFIG_HOME(void) { - size_t size; char* path = NULL; #if defined(WIN32) && !defined(_UWP) path = calloc(MAX_PATH, sizeof(char)); @@ -172,6 +171,7 @@ static char* GetPath_XDG_CONFIG_HOME(void) #elif defined(__IOS__) path = ios_get_data(); #else + size_t size; char* home = NULL; /** * There is a single base directory relative to which user-specific configuration files should be written. @@ -210,7 +210,6 @@ static char* GetPath_XDG_CONFIG_HOME(void) static char* GetPath_XDG_CACHE_HOME(void) { - size_t size; char* path = NULL; char* home = NULL; #if defined(WIN32) @@ -229,6 +228,7 @@ static char* GetPath_XDG_CACHE_HOME(void) #elif defined(__IOS__) path = ios_get_cache(); #else + size_t size; /** * There is a single base directory relative to which user-specific non-essential (cached) data should be written. * This directory is defined by the environment variable $XDG_CACHE_HOME. diff --git a/winpr/libwinpr/utils/strlst.c b/winpr/libwinpr/utils/strlst.c index 19d2e2a1e..da0b7a15c 100644 --- a/winpr/libwinpr/utils/strlst.c +++ b/winpr/libwinpr/utils/strlst.c @@ -25,7 +25,7 @@ #include #include - +#include void string_list_free(char** string_list) @@ -62,7 +62,7 @@ char** string_list_copy(const char* const* string_list) for (i = 0; i < length; i ++) { - copy[i] = strdup(string_list[i]); + copy[i] = _strdup(string_list[i]); } copy[length] = 0;