[Mingw-w64-public] [PATCH] headers: Import wmsecure.idl from wine

2021-10-21 Thread Biswapriyo Nath

From a82ed5bd10ced3aba842cf6ab6dd9baf5f70751b Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 21 Oct 2021 21:04:54 +0530
Subject: [PATCH] headers: Import wmsecure.idl from wine

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/wine-import.sh|  1 +
 1 files changed, 1 insertions(+)

diff --git a/mingw-w64-headers/wine-import.sh b/mingw-w64-headers/wine-import.sh
index f0c998f..1c0d064 100755
--- a/mingw-w64-headers/wine-import.sh
+++ b/mingw-w64-headers/wine-import.sh
@@ -209,6 +209,7 @@ for f in \
wmpservices \
wmsbuffer \
wmsdkidl \
+   wmsecure \
wpcapi \
wuapi \
xapo \
-- 
2.33.0
___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add some interfaces in mfidl.idl

2021-10-21 Thread Biswapriyo Nath

From 5109f7273105838fadf3af121bfb964dc0f8e1af Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 21 Oct 2021 21:03:55 +0530
Subject: [PATCH] headers: Add some interfaces in mfidl.idl

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/mfidl.idl | 36 +
 1 file changed, 36 insertions(+)

diff --git a/mingw-w64-headers/include/mfidl.idl 
b/mingw-w64-headers/include/mfidl.idl
index 9e2dbaf..1c441bd 100644
--- a/mingw-w64-headers/include/mfidl.idl
+++ b/mingw-w64-headers/include/mfidl.idl
@@ -236,6 +236,18 @@ interface IMFMediaSource : IMFMediaEventGenerator
 HRESULT Shutdown();
 }
 
+cpp_quote("#if (WINVER >= _WIN32_WINNT_WIN8)")
+[object, uuid(3c9b2eb9-86d5-4514-a394-f56664f9f0d8)]
+interface IMFMediaSourceEx : IMFMediaSource
+{
+  HRESULT GetSourceAttributes([out] IMFAttributes **ppAttributes);
+  HRESULT GetStreamAttributes([in] DWORD dwStreamIdentifier, [out] 
IMFAttributes **ppAttributes);
+  HRESULT SetD3DManager([in] IUnknown *pManager);
+}
+cpp_quote("EXTERN_GUID(MF_SOURCE_STREAM_SUPPORTS_HW_CONNECTION, 0xa38253aa, 
0x6314, 0x42fd, 0xa3, 0xce, 0xbb, 0x27, 0xb6, 0x85, 0x99, 0x46);")
+
+cpp_quote("#endif /* (WINVER >= _WIN32_WINNT_WIN8) */")
+
 typedef [public] struct _MF_LEAKY_BUCKET_PAIR {
 DWORD dwBitrate;
 DWORD msBufferWindow;
@@ -746,6 +758,22 @@ interface IMFSampleGrabberSinkCallback : IMFClockStateSink
   HRESULT OnShutdown(void);
 }
 
+[object, uuid(97ec2ea4-0e42-4937-97ac-9d6d328824e1)]
+interface IMFShutdown : IUnknown
+{
+  HRESULT Shutdown(void);
+  HRESULT GetShutdownStatus([out] MFSHUTDOWN_STATUS *pStatus);
+};
+
+[object, uuid(089edf13-cf71-4338-8d13-9e569dbdc319)]
+interface IMFSimpleAudioVolume : IUnknown
+{
+  HRESULT SetMasterVolume([in] float fLevel);
+  HRESULT GetMasterVolume([out] float *pfLevel);
+  HRESULT SetMute([in] const WINBOOL bMute);
+  HRESULT GetMute([out] WINBOOL *pbMute);
+}
+
 [object, uuid(fbe5a32d-a497-4b61-bb85-97b1a848a6e3)]
 interface IMFSourceResolver : IUnknown
 {
@@ -794,6 +822,13 @@ interface IMFStreamSink : IMFMediaEventGenerator
   HRESULT Flush(void);
 }
 
+[object, uuid(e56e4cbd-8f70-49d8-a0f8-edb3d6ab9bf2), local]
+interface IMFTimer : IUnknown
+{
+  HRESULT SetTimer([in] DWORD dwFlags, [in] LONGLONG llClockTime, [in] 
IMFAsyncCallback *pCallback, [in] IUnknown *punkState, [out] IUnknown 
**ppunkKey);
+  HRESULT CancelTimer([in] IUnknown *punkKey);
+}
+
 [object, uuid(de9a6157-f660-4643-b56a-df9f7998c7cd), local]
 interface IMFTopoLoader : IUnknown
 {
@@ -815,6 +850,7 @@ cpp_quote("HRESULT WINAPI 
MFCreateASFProfileFromPresentationDescriptor(IMFPresen
 cpp_quote("HRESULT WINAPI MFCreateASFSplitter(IMFASFSplitter **ppISplitter);")
 cpp_quote("HRESULT WINAPI MFCreateAudioRenderer(IMFAttributes 
*pAudioAttributes, IMFMediaSink **ppSink);")
 cpp_quote("HRESULT WINAPI MFCreateAudioRendererActivate(IMFActivate 
**ppActivate);")
+cpp_quote("HRESULT WINAPI MFCreateDeviceSource(IMFAttributes 
*pAttributes,IMFMediaSource **ppSource);")
 cpp_quote("HRESULT WINAPI MFCreateMediaSession(IMFAttributes 
*pConfiguration,IMFMediaSession **ppMS);")
 cpp_quote("HRESULT WINAPI MFCreateMP3MediaSink(IMFByteStream 
*pTargetByteStream,IMFMediaSink **ppMediaSink);")
 cpp_quote("HRESULT WINAPI MFCreateMPEG4MediaSink(IMFByteStream 
*pIByteStream,IMFMediaType *pVideoMediaType,IMFMediaType 
*pAudioMediaType,IMFMediaSink **ppIMediaSink);")
-- 
2.33.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add missing WINAPI attribute in mfidl.idl

2021-10-19 Thread Biswapriyo Nath

From ea40c3fc9c90c498e6ee31597b53d975df2e095c Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Tue, 19 Oct 2021 18:24:39 +0530
Subject: [PATCH] headers: Add missing WINAPI attribute in mfidl.idl

This fixes qt6-multimedia build in i686 mingw

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/mfidl.idl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-headers/include/mfidl.idl 
b/mingw-w64-headers/include/mfidl.idl
index 1263ac3..5e9e756 100644
--- a/mingw-w64-headers/include/mfidl.idl
+++ b/mingw-w64-headers/include/mfidl.idl
@@ -833,8 +833,8 @@ interface IMFTopoLoader : IUnknown
   HRESULT Load([in] IMFTopology *pInputTopo, [out] IMFTopology **ppOutputTopo, 
[in] IMFTopology *pCurrentTopo);
 }
 
-cpp_quote("HRESULT MFCreate3GPMediaSink(IMFByteStream 
*pIByteStream,IMFMediaType *pVideoMediaType,IMFMediaType 
*pAudioMediaType,IMFMediaSink **ppIMediaSink);")
-cpp_quote("HRESULT MFCreateAggregateSource(IMFCollection 
*pSourceCollection,IMFMediaSource **ppAggSource);")
+cpp_quote("HRESULT WINAPI MFCreate3GPMediaSink(IMFByteStream 
*pIByteStream,IMFMediaType *pVideoMediaType,IMFMediaType 
*pAudioMediaType,IMFMediaSink **ppIMediaSink);")
+cpp_quote("HRESULT WINAPI MFCreateAggregateSource(IMFCollection 
*pSourceCollection,IMFMediaSource **ppAggSource);")
 cpp_quote("")
 cpp_quote("HRESULT WINAPI MFCreateAlignedMemoryBuffer(DWORD cbMaxLength,DWORD 
fAlignmentFlags,IMFMediaBuffer **ppBuffer);")
 cpp_quote("HRESULT WINAPI MFCreateASFContentInfo(IMFASFContentInfo 
**ppIContentInfo);")
-- 
2.33.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add ioringapi.h

2021-10-19 Thread Biswapriyo Nath
The ioring APIs in ntdll are totally undocumented[1]. The APIs in
ioringapi.h are provided by kernelbase.dll. I would suggest to wait
for Microsoft to open up some more documentation. For example, MS did
not mention the library to use CreateIoRing[2] but only mentioned the
header name.

[1]: 
https://windows-internals.com/i-o-rings-when-one-i-o-operation-is-not-enough/
[2]: 
https://docs.microsoft.com/en-us/windows/win32/api/ioringapi/nf-ioringapi-createioring


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add ioringapi.h

2021-10-18 Thread Biswapriyo Nath
unlvsur: As of this writing, I can not find any official Microsoft
documentation about how to use ioring APIs in any program. You have to
rely on this LoadLibrary("kernelbase.dll") or other naughty ways :)


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] crt: Add APIs in ntdll.def

2021-10-16 Thread Biswapriyo Nath

From 748a7ff9e9f60a8137e55529e06ee55271a7ba6e Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 17 Oct 2021 10:40:12 +0530
Subject: [PATCH] crt: Add APIs in ntdll.def

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/lib-common/ntdll.def.in | 60 +++
 mingw-w64-crt/lib32/ntdll.def | 55 
 2 files changed, 115 insertions(+)

diff --git a/mingw-w64-crt/lib-common/ntdll.def.in 
b/mingw-w64-crt/lib-common/ntdll.def.in
index 0ad5922..8d91bb5 100644
--- a/mingw-w64-crt/lib-common/ntdll.def.in
+++ b/mingw-w64-crt/lib-common/ntdll.def.in
@@ -256,6 +256,7 @@ NtAccessCheckByTypeAndAuditAlarm
 NtAccessCheckByTypeResultList
 NtAccessCheckByTypeResultListAndAuditAlarm
 NtAccessCheckByTypeResultListAndAuditAlarmByHandle
+NtAcquireCrossVmMutant
 NtAcquireProcessActivityReference
 NtAddAtom
 NtAddAtomEx
@@ -310,6 +311,8 @@ NtCancelSynchronousIoFile
 NtCancelTimer
 NtCancelTimer2
 NtCancelWaitCompletionPacket
+NtChangeProcessState
+NtChangeThreadState
 NtClearEvent
 NtClose
 NtCloseObjectAuditAlarm
@@ -325,8 +328,10 @@ NtCompleteConnectPort
 NtCompressKey
 NtConnectPort
 NtContinue
+NtContinueEx
 NtConvertBetweenAuxiliaryCounterAndPerformanceCounter
 NtCreateCrossVmEvent
+NtCreateCrossVmMutant
 NtCreateDebugObject
 NtCreateDirectoryObject
 NtCreateDirectoryObjectEx
@@ -337,6 +342,7 @@ NtCreateEventPair
 NtCreateFile
 NtCreateIRTimer
 NtCreateIoCompletion
+NtCreateIoRing
 NtCreateJobObject
 NtCreateJobSet
 NtCreateKey
@@ -352,6 +358,7 @@ NtCreatePort
 NtCreatePrivateNamespace
 NtCreateProcess
 NtCreateProcessEx
+NtCreateProcessStateChange
 NtCreateProfile
 NtCreateProfileEx
 NtCreateRegistryTransaction
@@ -362,6 +369,7 @@ NtCreateSemaphore
 NtCreateSymbolicLinkObject
 NtCreateThread
 NtCreateThreadEx
+NtCreateThreadStateChange
 NtCreateTimer
 NtCreateTimer2
 NtCreateToken
@@ -387,6 +395,7 @@ NtDeleteValueKey
 NtDeleteWnfStateData
 NtDeleteWnfStateName
 NtDeviceIoControlFile
+NtDirectGraphicsCall
 NtDisableLastKnownGood
 NtDisplayString
 NtDrawText
@@ -543,6 +552,7 @@ NtQueryInformationWorkerFactory
 NtQueryInstallUILanguage
 NtQueryIntervalProfile
 NtQueryIoCompletion
+NtQueryIoRingCapabilities
 NtQueryKey
 NtQueryLicenseValue
 NtQueryMultipleValueKey
@@ -573,6 +583,7 @@ NtQueryWnfStateData
 NtQueryWnfStateNameInformation
 NtQueueApcThread
 NtQueueApcThreadEx
+NtQueueApcThreadEx2
 NtRaiseException
 NtRaiseHardError
 NtReadFile
@@ -580,6 +591,7 @@ NtReadFileScatter
 NtReadOnlyEnlistment
 NtReadRequestData
 NtReadVirtualMemory
+NtReadVirtualMemoryEx
 NtRecoverEnlistment
 NtRecoverResourceManager
 NtRecoverTransactionManager
@@ -639,6 +651,7 @@ NtSetIRTimer
 NtSetInformationDebugObject
 NtSetInformationEnlistment
 NtSetInformationFile
+NtSetInformationIoRing
 NtSetInformationJobObject
 NtSetInformationKey
 NtSetInformationObject
@@ -679,6 +692,7 @@ NtSignalAndWaitForSingleObject
 NtSinglePhaseReject
 NtStartProfile
 NtStopProfile
+NtSubmitIoRing
 NtSubscribeWnfStateChange
 NtSuspendProcess
 NtSuspendThread
@@ -836,6 +850,7 @@ RtlCanonicalizeDomainName
 RtlCapabilityCheck
 RtlCapabilityCheckForSingleSessionSku
 RtlCaptureContext
+RtlCaptureContext2
 RtlCaptureStackBackTrace
 RtlCharToInteger
 RtlCheckBootStatusIntegrity
@@ -864,6 +879,8 @@ RtlCommitDebugInfo
 RtlCommitMemoryStream
 RtlCompactHeap
 RtlCompareAltitudes
+RtlCompareExchangePointerMapping
+RtlCompareExchangePropertyStore
 RtlCompareMemory
 RtlCompareMemoryUlong
 RtlCompareString
@@ -877,6 +894,7 @@ RtlComputePrivatizedDllName_U
 RtlConnectToSm
 RtlConsoleMultiByteToUnicodeN
 RtlConstructCrossVmEventPath
+RtlConstructCrossVmMutexPath
 RtlContractHashTable
 RtlConvertDeviceFamilyInfoToString
 RtlConvertExclusiveToShared
@@ -957,6 +975,7 @@ RtlDecompressBuffer
 RtlDecompressBufferEx
 RtlDecompressFragment
 RtlDefaultNpAcl
+RtlDelayExecution
 RtlDelete
 RtlDeleteAce
 RtlDeleteAtomFromAtomTable
@@ -1071,6 +1090,7 @@ RtlFindActivationContextSectionString
 RtlFindCharInUnicodeString
 RtlFindClearBits
 RtlFindClearBitsAndSet
+RtlFindClearBitsAndSetEx
 F_X64(RtlFindClearBitsEx)
 RtlFindClearRuns
 RtlFindClosestEncodableLength
@@ -1149,6 +1169,7 @@ RtlGetFullPathName_UEx
 RtlGetFullPathName_UstrEx
 RtlGetFunctionTableListHead
 RtlGetGroupSecurityDescriptor
+RtlGetImageFileMachines
 RtlGetIntegerAtom
 RtlGetInterruptTimePrecise
 RtlGetLastNtStatus
@@ -1172,6 +1193,7 @@ RtlGetPersistedStateLocation
 RtlGetProcessHeaps
 RtlGetProcessPreferredUILanguages
 RtlGetProductInfo
+RtlGetReturnAddressHijackTarget
 RtlGetSaclSecurityDescriptor
 RtlGetSearchPath
 RtlGetSecurityDescriptorRMControl
@@ -1180,7 +1202,9 @@ RtlGetSetBootStatusData
 RtlGetSuiteMask
 RtlGetSystemBootStatus
 RtlGetSystemBootStatusEx
+RtlGetSystemGlobalData
 RtlGetSystemPreferredUILanguages
+RtlGetSystemTimeAndBias
 RtlGetSystemTimePrecise
 RtlGetThreadErrorMode
 RtlGetThreadLangIdByIndex
@@ -1282,6 +1306,7 @@ RtlIpv6StringToAddressExA
 RtlIpv6StringToAddressExW
 RtlIpv6StringToAddressW
 RtlIsActivationContextActive
+RtlIsApiSetImplemented

Re: [Mingw-w64-public] [PATCH] headers: Add ioringapi.h

2021-10-15 Thread Biswapriyo Nath
Liu Hao: Opps! Forgot that. Updated patch file attached.
unlvsur: This is just to check if your projects compile without linking.
From 87b6f9c174fc96b4ca4b159e0d72d4ffe146004f Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 15 Oct 2021 17:34:18 +0530
Subject: [PATCH] headers: Add ioringapi.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/ioringapi.h  | 140 +
 mingw-w64-headers/include/ntioring_x.h |  54 ++
 2 files changed, 194 insertions(+)
 create mode 100644 mingw-w64-headers/include/ioringapi.h
 create mode 100644 mingw-w64-headers/include/ntioring_x.h

diff --git a/mingw-w64-headers/include/ioringapi.h 
b/mingw-w64-headers/include/ioringapi.h
new file mode 100644
index 000..f950893
--- /dev/null
+++ b/mingw-w64-headers/include/ioringapi.h
@@ -0,0 +1,140 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+#ifndef _APISET_IORING_
+#define _APISET_IORING_
+
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
+#if NTDDI_VERSION >= NTDDI_WIN10_CO
+
+DECLARE_HANDLE(HIORING);
+
+typedef enum IORING_SQE_FLAGS {
+  IOSQE_FLAGS_NONE = 0
+} IORING_SQE_FLAGS;
+DEFINE_ENUM_FLAG_OPERATORS(IORING_SQE_FLAGS)
+
+typedef enum IORING_CREATE_REQUIRED_FLAGS {
+  IORING_CREATE_REQUIRED_FLAGS_NONE = 0
+} IORING_CREATE_REQUIRED_FLAGS;
+DEFINE_ENUM_FLAG_OPERATORS(IORING_CREATE_REQUIRED_FLAGS)
+
+typedef enum IORING_CREATE_ADVISORY_FLAGS {
+  IORING_CREATE_ADVISORY_FLAGS_NONE = 0
+} IORING_CREATE_ADVISORY_FLAGS;
+DEFINE_ENUM_FLAG_OPERATORS(IORING_CREATE_ADVISORY_FLAGS)
+
+typedef struct IORING_CREATE_FLAGS {
+  IORING_CREATE_REQUIRED_FLAGS Required;
+  IORING_CREATE_ADVISORY_FLAGS Advisory;
+} IORING_CREATE_FLAGS;
+
+typedef struct IORING_INFO {
+  IORING_VERSION IoRingVersion;
+  IORING_CREATE_FLAGS Flags;
+  UINT32 SubmissionQueueSize;
+  UINT32 CompletionQueueSize;
+} IORING_INFO;
+
+typedef struct IORING_CAPABILITIES {
+  IORING_VERSION MaxVersion;
+  UINT32 MaxSubmissionQueueSize;
+  UINT32 MaxCompletionQueueSize;
+  IORING_FEATURE_FLAGS FeatureFlags;
+} IORING_CAPABILITIES;
+
+typedef enum IORING_REF_KIND {
+  IORING_REF_RAW,
+  IORING_REF_REGISTERED
+} IORING_REF_KIND;
+
+typedef struct IORING_HANDLE_REF {
+#ifdef __cplusplus
+  explicit IORING_HANDLE_REF(HANDLE h) : 
Kind(IORING_REF_KIND::IORING_REF_RAW), Handle(h) {}
+  explicit IORING_HANDLE_REF(UINT32 index) : 
Kind(IORING_REF_KIND::IORING_REF_REGISTERED), Handle(index) {}
+#endif
+
+  IORING_REF_KIND Kind;
+  union HandleUnion {
+#ifdef __cplusplus
+HandleUnion(HANDLE h) : Handle(h) {}
+HandleUnion(UINT32 index) : Index(index) {}
+#endif
+HANDLE Handle;
+UINT32 Index;
+  } Handle;
+} IORING_HANDLE_REF;
+
+#ifdef __cplusplus
+#define IoRingHandleRefFromHandle(h) IORING_HANDLE_REF(static_cast(h))
+#define IoRingHandleRefFromIndex(i) IORING_HANDLE_REF(static_cast(i))
+#else
+#define IoRingHandleRefFromHandle(h) {IORING_REF_RAW, {.Handle = h}}
+#define IoRingHandleRefFromIndex(i) {IORING_REF_REGISTERED, {.Index = i}}
+#endif
+
+typedef struct IORING_BUFFER_REF {
+#ifdef __cplusplus
+  explicit IORING_BUFFER_REF(void* address) : 
Kind(IORING_REF_KIND::IORING_REF_RAW), Buffer(address) {}
+  explicit IORING_BUFFER_REF(IORING_REGISTERED_BUFFER registeredBuffer) : 
Kind(IORING_REF_KIND::IORING_REF_REGISTERED), Buffer(registeredBuffer) {}
+  IORING_BUFFER_REF(UINT32 index, UINT32 offset) : 
IORING_BUFFER_REF(IORING_REGISTERED_BUFFER{index, offset}) {}
+#endif
+
+  IORING_REF_KIND Kind;
+  union BufferUnion {
+#ifdef __cplusplus
+BufferUnion(void* address) : Address(address) {}
+BufferUnion(IORING_REGISTERED_BUFFER indexAndOffset) : 
IndexAndOffset(indexAndOffset) {}
+#endif
+void* Address;
+IORING_REGISTERED_BUFFER IndexAndOffset;
+  }Buffer;
+} IORING_BUFFER_REF;
+
+#ifdef __cplusplus
+#define IoRingBufferRefFromPointer(p) IORING_BUFFER_REF(static_cast(p))
+#define IoRingBufferRefFromIndexAndOffset(i,o) IORING_BUFFER_REF((i),(o))
+#else
+#define IoRingBufferRefFromPointer(p) {IORING_REF_RAW, {.Address = p}}
+#define IoRingBufferRefFromIndexAndOffset(i,o) {IORING_REF_REGISTERED, 
{.IndexAndOffset = {(i),(o)}}}
+#endif
+
+typedef struct IORING_CQE {
+  UINT_PTR UserData;
+  HRESULT ResultCode;
+  ULONG_PTR Information;
+} IORING_CQE;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+STDAPI QueryIoRingCapabilities(IORING_CAPABILITIES* capabilities);
+STDAPI_(WINBOOL) IsIoRingOpSupported(HIORING ioRing, IORING_OP_CODE op);
+STDAPI CreateIoRing(IORING_VERSION ioringVersion, IORING_CREATE_FLAGS flags, 
UINT32 submissionQueueSize, UINT32 completionQueueSize, HIORING* h);
+STDAPI GetIoRingInfo(HIORING ioRing, IORING_INFO* info);
+STDAPI SubmitIoRing(HIORING ioRing, UINT32 waitOperations, UINT32 
milliseconds, UINT32* submittedEntries);
+STDAPI CloseI

[Mingw-w64-public] [PATCH] headers: Add ioringapi.h

2021-10-15 Thread Biswapriyo Nath
Hi unlvsur, would you like to test the ioringapi.h and ntioring_x.h
header from this patch file? Also apply the previous sdkddkver.h patch
from previous thread, here
https://sourceforge.net/p/mingw-w64/mailman/message/37367205/
From 87b6f9c174fc96b4ca4b159e0d72d4ffe146004f Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 15 Oct 2021 17:34:18 +0530
Subject: [PATCH] headers: Add ioringapi.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/ioringapi.h  | 140 +
 mingw-w64-headers/include/ntioring_x.h |  54 ++
 2 files changed, 194 insertions(+)
 create mode 100644 mingw-w64-headers/include/ioringapi.h
 create mode 100644 mingw-w64-headers/include/ntioring_x.h

diff --git a/mingw-w64-headers/include/ioringapi.h 
b/mingw-w64-headers/include/ioringapi.h
new file mode 100644
index 000..f950893
--- /dev/null
+++ b/mingw-w64-headers/include/ioringapi.h
@@ -0,0 +1,140 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+#ifndef _APISET_IORING_
+#define _APISET_IORING_
+
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
+#if NTDDI_VERSION >= NTDDI_WIN10_CO
+
+DECLARE_HANDLE(HIORING);
+
+typedef enum IORING_SQE_FLAGS {
+  IOSQE_FLAGS_NONE = 0
+} IORING_SQE_FLAGS;
+DEFINE_ENUM_FLAG_OPERATORS(IORING_SQE_FLAGS)
+
+typedef enum IORING_CREATE_REQUIRED_FLAGS {
+  IORING_CREATE_REQUIRED_FLAGS_NONE = 0
+} IORING_CREATE_REQUIRED_FLAGS;
+DEFINE_ENUM_FLAG_OPERATORS(IORING_CREATE_REQUIRED_FLAGS)
+
+typedef enum IORING_CREATE_ADVISORY_FLAGS {
+  IORING_CREATE_ADVISORY_FLAGS_NONE = 0
+} IORING_CREATE_ADVISORY_FLAGS;
+DEFINE_ENUM_FLAG_OPERATORS(IORING_CREATE_ADVISORY_FLAGS)
+
+typedef struct IORING_CREATE_FLAGS {
+  IORING_CREATE_REQUIRED_FLAGS Required;
+  IORING_CREATE_ADVISORY_FLAGS Advisory;
+} IORING_CREATE_FLAGS;
+
+typedef struct IORING_INFO {
+  IORING_VERSION IoRingVersion;
+  IORING_CREATE_FLAGS Flags;
+  UINT32 SubmissionQueueSize;
+  UINT32 CompletionQueueSize;
+} IORING_INFO;
+
+typedef struct IORING_CAPABILITIES {
+  IORING_VERSION MaxVersion;
+  UINT32 MaxSubmissionQueueSize;
+  UINT32 MaxCompletionQueueSize;
+  IORING_FEATURE_FLAGS FeatureFlags;
+} IORING_CAPABILITIES;
+
+typedef enum IORING_REF_KIND {
+  IORING_REF_RAW,
+  IORING_REF_REGISTERED
+} IORING_REF_KIND;
+
+typedef struct IORING_HANDLE_REF {
+#ifdef __cplusplus
+  explicit IORING_HANDLE_REF(HANDLE h) : 
Kind(IORING_REF_KIND::IORING_REF_RAW), Handle(h) {}
+  explicit IORING_HANDLE_REF(UINT32 index) : 
Kind(IORING_REF_KIND::IORING_REF_REGISTERED), Handle(index) {}
+#endif
+
+  IORING_REF_KIND Kind;
+  union HandleUnion {
+#ifdef __cplusplus
+HandleUnion(HANDLE h) : Handle(h) {}
+HandleUnion(UINT32 index) : Index(index) {}
+#endif
+HANDLE Handle;
+UINT32 Index;
+  } Handle;
+} IORING_HANDLE_REF;
+
+#ifdef __cplusplus
+#define IoRingHandleRefFromHandle(h) IORING_HANDLE_REF(static_cast(h))
+#define IoRingHandleRefFromIndex(i) IORING_HANDLE_REF(static_cast(i))
+#else
+#define IoRingHandleRefFromHandle(h) {IORING_REF_RAW, {.Handle = h}}
+#define IoRingHandleRefFromIndex(i) {IORING_REF_REGISTERED, {.Index = i}}
+#endif
+
+typedef struct IORING_BUFFER_REF {
+#ifdef __cplusplus
+  explicit IORING_BUFFER_REF(void* address) : 
Kind(IORING_REF_KIND::IORING_REF_RAW), Buffer(address) {}
+  explicit IORING_BUFFER_REF(IORING_REGISTERED_BUFFER registeredBuffer) : 
Kind(IORING_REF_KIND::IORING_REF_REGISTERED), Buffer(registeredBuffer) {}
+  IORING_BUFFER_REF(UINT32 index, UINT32 offset) : 
IORING_BUFFER_REF(IORING_REGISTERED_BUFFER{index, offset}) {}
+#endif
+
+  IORING_REF_KIND Kind;
+  union BufferUnion {
+#ifdef __cplusplus
+BufferUnion(void* address) : Address(address) {}
+BufferUnion(IORING_REGISTERED_BUFFER indexAndOffset) : 
IndexAndOffset(indexAndOffset) {}
+#endif
+void* Address;
+IORING_REGISTERED_BUFFER IndexAndOffset;
+  }Buffer;
+} IORING_BUFFER_REF;
+
+#ifdef __cplusplus
+#define IoRingBufferRefFromPointer(p) IORING_BUFFER_REF(static_cast(p))
+#define IoRingBufferRefFromIndexAndOffset(i,o) IORING_BUFFER_REF((i),(o))
+#else
+#define IoRingBufferRefFromPointer(p) {IORING_REF_RAW, {.Address = p}}
+#define IoRingBufferRefFromIndexAndOffset(i,o) {IORING_REF_REGISTERED, 
{.IndexAndOffset = {(i),(o)}}}
+#endif
+
+typedef struct IORING_CQE {
+  UINT_PTR UserData;
+  HRESULT ResultCode;
+  ULONG_PTR Information;
+} IORING_CQE;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+STDAPI QueryIoRingCapabilities(IORING_CAPABILITIES* capabilities);
+STDAPI_(BOOL) IsIoRingOpSupported(HIORING ioRing, IORING_OP_CODE op);
+STDAPI CreateIoRing(IORING_VERSION ioringVersion, IORING_CREATE_FLAGS flags, 
UINT32 submissionQueueSize, UINT32 completionQueueSize, HIORING* h);
+STDAPI GetIoRingInfo(HIORING ioRing, IORING_INFO* info);
+STDAPI SubmitIoRing(H

[Mingw-w64-public] [PATCH] headers: Add NTDDI_WIN10_CO in sdkddkver.h

2021-10-14 Thread Biswapriyo Nath

From 7a8a1d09fd8463a11166aa818db54abc4f6c24ae Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 15 Oct 2021 10:58:06 +0530
Subject: [PATCH] headers: Add NTDDI_WIN10_CO in sdkddkver.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/sdkddkver.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-headers/include/sdkddkver.h 
b/mingw-w64-headers/include/sdkddkver.h
index 44b5fb2..2c214b2 100644
--- a/mingw-w64-headers/include/sdkddkver.h
+++ b/mingw-w64-headers/include/sdkddkver.h
@@ -144,8 +144,9 @@
 #define NTDDI_WIN10_VB 0x0A08
 #define NTDDI_WIN10_MN 0x0A09
 #define NTDDI_WIN10_FE 0x0A0A
+#define NTDDI_WIN10_CO 0x0A0B
 
-#define WDK_NTDDI_VERSION NTDDI_WIN10_FE
+#define WDK_NTDDI_VERSION NTDDI_WIN10_CO
 
 /* Version Fields in NTDDI_VERSION */
 #define OSVERSION_MASK 0xU
-- 
2.33.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] add vulkan-1.def imports?

2021-10-14 Thread Biswapriyo Nath
I can try to add that header file. Do you have a project that requires
that header file? The newly added header file has to be tested with
something.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] add vulkan-1.def imports?

2021-10-13 Thread Biswapriyo Nath
mingw-w64 is not correct place to add DEF file from other projects. If
you need import library for vulkan you can use
mingw-w64-vulkan-loader[1] package from msys2 project. It provides
libvulkan-1.dll and libvulkan.dll.a.

[1]: 
https://packages.msys2.org/package/mingw-w64-x86_64-vulkan-loader?repo=mingw64


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] patch to add MFTranscodeContainerType guids

2021-10-13 Thread Biswapriyo Nath
The mfidl.h is generated from mfidl.idl file using widl. Hence those
GUIDs have to be added in mfidl.idl file. If there is any problem I
can send an updated patch file.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] make dsparse library common

2021-10-11 Thread Biswapriyo Nath
Just wondering. Is libdsparse.a actually required in a project? I
cherry pick some of the APIs mentioned in dsparse.def file and MS
Docs[1] suggests to use ntdspapi instead.

[1]: https://docs.microsoft.com/en-us/windows/win32/api/dsparse/


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add some names in mstcpip.h

2021-10-11 Thread Biswapriyo Nath

From fcf842b9164c76c8a19f321d4c124ba36cafb95e Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Mon, 11 Oct 2021 11:41:39 +0530
Subject: [PATCH] headers: Add some names in mstcpip.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/mstcpip.h | 241 +++-
 1 file changed, 237 insertions(+), 4 deletions(-)

diff --git a/mingw-w64-headers/include/mstcpip.h 
b/mingw-w64-headers/include/mstcpip.h
index b040ba7..1e1bc24 100644
--- a/mingw-w64-headers/include/mstcpip.h
+++ b/mingw-w64-headers/include/mstcpip.h
@@ -15,12 +15,68 @@
 #define u_long __ms_u_long
 #endif
 
+#if NTDDI_VERSION >= NTDDI_WIN10_RS2
+typedef enum _TCPSTATE {
+  TCPSTATE_CLOSED,
+  TCPSTATE_LISTEN,
+  TCPSTATE_SYN_SENT,
+  TCPSTATE_SYN_RCVD,
+  TCPSTATE_ESTABLISHED,
+  TCPSTATE_FIN_WAIT_1,
+  TCPSTATE_FIN_WAIT_2,
+  TCPSTATE_CLOSE_WAIT,
+  TCPSTATE_CLOSING,
+  TCPSTATE_LAST_ACK,
+  TCPSTATE_TIME_WAIT,
+  TCPSTATE_MAX
+} TCPSTATE;
+#endif
+
+#ifndef _TRANSPORT_SETTING_COMMON_
+#define _TRANSPORT_SETTING_COMMON_
+typedef struct TRANSPORT_SETTING_ID {
+  GUID Guid;
+} TRANSPORT_SETTING_ID, *PTRANSPORT_SETTING_ID;
+#endif
+
 struct tcp_keepalive {
   u_long onoff;
   u_long keepalivetime;
   u_long keepaliveinterval;
 };
 
+typedef enum {
+  CONTROL_CHANNEL_TRIGGER_STATUS_INVALID = 0,
+  CONTROL_CHANNEL_TRIGGER_STATUS_SOFTWARE_SLOT_ALLOCATED = 1,
+  CONTROL_CHANNEL_TRIGGER_STATUS_HARDWARE_SLOT_ALLOCATED = 2,
+  CONTROL_CHANNEL_TRIGGER_STATUS_POLICY_ERROR = 3,
+  CONTROL_CHANNEL_TRIGGER_STATUS_SYSTEM_ERROR = 4,
+  CONTROL_CHANNEL_TRIGGER_STATUS_TRANSPORT_DISCONNECTED = 5,
+  CONTROL_CHANNEL_TRIGGER_STATUS_SERVICE_UNAVAILABLE = 6
+} CONTROL_CHANNEL_TRIGGER_STATUS, *PCONTROL_CHANNEL_TRIGGER_STATUS;
+
+#define CONTROL_CHANNEL_TRIGGER_STATUS_MAX 
CONTROL_CHANNEL_TRIGGER_STATUS_SYSTEM_ERROR
+
+typedef struct _REAL_TIME_NOTIFICATION_SETTING_INPUT {
+  TRANSPORT_SETTING_ID TransportSettingId;
+  GUID BrokerEventGuid;
+} REAL_TIME_NOTIFICATION_SETTING_INPUT, *PREAL_TIME_NOTIFICATION_SETTING_INPUT;
+
+typedef struct _REAL_TIME_NOTIFICATION_SETTING_INPUT_EX {
+  TRANSPORT_SETTING_ID TransportSettingId;
+  GUID BrokerEventGuid;
+  BOOLEAN Unmark;
+} REAL_TIME_NOTIFICATION_SETTING_INPUT_EX, 
*PREAL_TIME_NOTIFICATION_SETTING_INPUT_EX;
+
+typedef struct _REAL_TIME_NOTIFICATION_SETTING_OUTPUT {
+  CONTROL_CHANNEL_TRIGGER_STATUS ChannelStatus;
+} REAL_TIME_NOTIFICATION_SETTING_OUTPUT, 
*PREAL_TIME_NOTIFICATION_SETTING_OUTPUT;
+
+typedef struct _ASSOCIATE_NAMERES_CONTEXT_INPUT {
+  TRANSPORT_SETTING_ID TransportSettingId;
+  UINT64 Handle;
+} ASSOCIATE_NAMERES_CONTEXT_INPUT, *PASSOCIATE_NAMERES_CONTEXT_INPUT;
+
 #define SIO_RCVALL _WSAIOW(IOC_VENDOR,1)
 #define SIO_RCVALL_MCAST _WSAIOW(IOC_VENDOR,2)
 #define SIO_RCVALL_IGMPMCAST _WSAIOW(IOC_VENDOR,3)
@@ -32,11 +88,188 @@ struct tcp_keepalive {
 #define SIO_INDEX_MCASTIF _WSAIOW(IOC_VENDOR,9)
 #define SIO_INDEX_ADD_MCAST _WSAIOW(IOC_VENDOR,10)
 #define SIO_INDEX_DEL_MCAST _WSAIOW(IOC_VENDOR,11)
+#define SIO_RCVALL_MCAST_IF _WSAIOW(IOC_VENDOR,13)
+#define SIO_RCVALL_IF _WSAIOW(IOC_VENDOR,14)
+#define SIO_LOOPBACK_FAST_PATH _WSAIOW(IOC_VENDOR,16)
+#define SIO_TCP_INITIAL_RTO _WSAIOW(IOC_VENDOR,17)
+#define SIO_APPLY_TRANSPORT_SETTING _WSAIOW(IOC_VENDOR,19)
+#define SIO_QUERY_TRANSPORT_SETTING _WSAIOW(IOC_VENDOR,20)
+#define SIO_TCP_SET_ICW _WSAIOW(IOC_VENDOR,22)
+#define SIO_TCP_SET_ACK_FREQUENCY _WSAIOW(IOC_VENDOR,23)
+#if NTDDI_VERSION >= NTDDI_WIN10_RS3
+#define SIO_SET_PRIORITY_HINT _WSAIOW(IOC_VENDOR,24)
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_FE
+#define SIO_PRIORITY_HINT SIO_SET_PRIORITY_HINT
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_RS2
+#define SIO_TCP_INFO _WSAIORW(IOC_VENDOR,39)
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_VB
+#define SIO_CPU_AFFINITY _WSAIOW(IOC_VENDOR,21)
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_FE
+
+#define SIO_TIMESTAMPING _WSAIOW(IOC_VENDOR, 235)
+
+typedef struct _TIMESTAMPING_CONFIG {
+  ULONG Flags;
+  USHORT TxTimestampsBuffered;
+} TIMESTAMPING_CONFIG, *PTIMESTAMPING_CONFIG;
+
+#define TIMESTAMPING_FLAG_RX 0x1
+#define TIMESTAMPING_FLAG_TX 0x2
+
+#define SO_TIMESTAMP 0x300A
+
+#define SO_TIMESTAMP_ID 0x300B
+
+#define SIO_GET_TX_TIMESTAMP _WSAIOW(IOC_VENDOR, 234)
+
+typedef enum {
+  SocketPriorityHintVeryLow = 0,
+  SocketPriorityHintLow,
+  SocketPriorityHintNormal,
+  SocketMaximumPriorityHintType
+} SOCKET_PRIORITY_HINT, *PSOCKET_PRIORITY_HINT;
+
+typedef struct _PRIORITY_STATUS {
+  SOCKET_PRIORITY_HINT Sender;
+  SOCKET_PRIORITY_HINT Receiver;
+} PRIORITY_STATUS, *PPRIORITY_STATUS;
+#endif /* NTDDI_WIN10_FE */
+
+typedef enum {
+  RCVALL_OFF = 0,
+  RCVALL_ON = 1,
+  RCVALL_SOCKETLEVELONLY = 2,
+  RCVALL_IPLEVEL = 3
+} RCVALL_VALUE, *PRCVALL_VALUE;
+
+#define RCVALL_MAX RCVALL_IPLEVEL
+
+typedef struct {
+  RCVALL_VALUE Mode;
+  ULONG Interface;
+} RCVALL_IF, *PRCVALL_IF;
+
+#define TCP_INITIAL_RTO_UNSPECIFIED_RTT ((USHORT) -1)
+#define TCP_INITIAL_RTO_UNSPECIFIED_MAX_SYN_RETRANSMISSIONS ((UCH

Re: [Mingw-w64-public] Latest Windows SDK headers and API support in the MinGW-W64 toolchain

2021-10-07 Thread Biswapriyo Nath
Hi Praveen, the mingw-w64-headers package[1] has been updated in msys2
with these new changes.

[1]: https://packages.msys2.org/base/mingw-w64-headers-git


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH 2/2] headers: Add APIs in computenetwork.h

2021-10-07 Thread Biswapriyo Nath

From 57f1cca0c582f655a18fda5c177c56131f8c99bb Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 7 Oct 2021 23:36:52 +0530
Subject: [PATCH 2/2] headers: Add APIs in computenetwork.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/computenetwork.h | 50 ++
 1 file changed, 50 insertions(+)

diff --git a/mingw-w64-headers/include/computenetwork.h 
b/mingw-w64-headers/include/computenetwork.h
index 6d2b8a0..3fc8080 100644
--- a/mingw-w64-headers/include/computenetwork.h
+++ b/mingw-w64-headers/include/computenetwork.h
@@ -25,6 +25,12 @@ typedef enum HCN_NOTIFICATIONS {
   HcnNotificationNetworkDelete = 0x0004,
   HcnNotificationNamespaceCreate = 0x0005,
   HcnNotificationNamespaceDelete = 0x0006,
+  HcnNotificationGuestNetworkServiceCreate = 0x0007,
+  HcnNotificationGuestNetworkServiceDelete = 0x0008,
+  HcnNotificationNetworkEndpointAttached = 0x0009,
+  HcnNotificationNetworkEndpointDetached = 0x0010,
+  HcnNotificationGuestNetworkServiceStateChanged = 0x0011,
+  HcnNotificationGuestNetworkServiceInterfaceStateChanged = 0x0012,
   HcnNotificationServiceDisconnect = 0x0100,
   HcnNotificationFlagsReserved = 0xF000
 } HCN_NOTIFICATIONS;
@@ -83,6 +89,50 @@ typedef HCN_SERVICE* PHCN_SERVICE;
 HRESULT WINAPI HcnRegisterServiceCallback (HCN_NOTIFICATION_CALLBACK Callback, 
void *Context, HCN_CALLBACK *CallbackHandle);
 HRESULT WINAPI HcnUnregisterServiceCallback (HCN_CALLBACK CallbackHandle);
 
+typedef void* HCN_GUESTNETWORKSERVICE;
+typedef HCN_GUESTNETWORKSERVICE* PHCN_GUESTNETWORKSERVICE;
+
+HRESULT WINAPI HcnRegisterGuestNetworkServiceCallback (HCN_GUESTNETWORKSERVICE 
GuestNetworkService, HCN_NOTIFICATION_CALLBACK Callback, void* Context, 
HCN_CALLBACK* CallbackHandle);
+HRESULT WINAPI HcnUnregisterGuestNetworkServiceCallback (HCN_CALLBACK 
CallbackHandle);
+HRESULT WINAPI HcnCreateGuestNetworkService (REFGUID Id, PCWSTR Settings, 
PHCN_GUESTNETWORKSERVICE GuestNetworkService, PWSTR* ErrorRecord);
+HRESULT WINAPI HcnCloseGuestNetworkService (HCN_GUESTNETWORKSERVICE 
GuestNetworkService);
+HRESULT WINAPI HcnModifyGuestNetworkService (HCN_GUESTNETWORKSERVICE 
GuestNetworkService, PCWSTR Settings, PWSTR* ErrorRecord);
+HRESULT WINAPI HcnDeleteGuestNetworkService (REFGUID Id, PWSTR* ErrorRecord);
+
+typedef enum tagHCN_PORT_PROTOCOL {
+  HCN_PORT_PROTOCOL_TCP = 0x01,
+  HCN_PORT_PROTOCOL_UDP = 0x02,
+  HCN_PORT_PROTOCOL_BOTH = 0x03
+} HCN_PORT_PROTOCOL;
+
+typedef enum tagHCN_PORT_ACCESS {
+  HCN_PORT_ACCESS_EXCLUSIVE = 0x01,
+  HCN_PORT_ACCESS_SHARED = 0x02
+} HCN_PORT_ACCESS;
+
+typedef struct tagHCN_PORT_RANGE_RESERVATION {
+  USHORT startingPort;
+  USHORT endingPort;
+} HCN_PORT_RANGE_RESERVATION;
+
+typedef struct tagHCN_PORT_RANGE_ENTRY {
+  GUID OwningPartitionId;
+  GUID TargetPartitionId;
+  HCN_PORT_PROTOCOL Protocol;
+  UINT64 Priority;
+  UINT32 ReservationType;
+  UINT32 SharingFlags;
+  UINT32 DeliveryMode;
+  UINT16 StartingPort;
+  UINT16 EndingPort;
+} HCN_PORT_RANGE_ENTRY, *PHCN_PORT_RANGE_ENTRY;
+
+HRESULT WINAPI HcnReserveGuestNetworkServicePort (HCN_GUESTNETWORKSERVICE 
GuestNetworkService, HCN_PORT_PROTOCOL Protocol, HCN_PORT_ACCESS Access, USHORT 
Port, HANDLE* PortReservationHandle);
+HRESULT WINAPI HcnReserveGuestNetworkServicePortRange (HCN_GUESTNETWORKSERVICE 
GuestNetworkService, USHORT PortCount, HCN_PORT_RANGE_RESERVATION* 
PortRangeReservation, HANDLE* PortReservationHandle);
+HRESULT WINAPI HcnReleaseGuestNetworkServicePortReservationHandle (HANDLE 
PortReservationHandle);
+HRESULT WINAPI HcnEnumerateGuestNetworkPortReservations (ULONG* ReturnCount, 
HCN_PORT_RANGE_ENTRY** PortEntries);
+VOID WINAPI HcnFreeGuestNetworkPortReservations (HCN_PORT_RANGE_ENTRY* 
PortEntries);
+
 #ifdef __cplusplus
 }
 #endif
-- 
2.33.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH 1/2] crt: Add APIs in computenetwork.def

2021-10-07 Thread Biswapriyo Nath

From f381f33abc67c51626ff564155bfa7d9aabc8f7a Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 7 Oct 2021 23:36:16 +0530
Subject: [PATCH 1/2] crt: Add APIs in computenetwork.def

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/lib-common/computenetwork.def | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/mingw-w64-crt/lib-common/computenetwork.def 
b/mingw-w64-crt/lib-common/computenetwork.def
index 5c339e6..119a041 100644
--- a/mingw-w64-crt/lib-common/computenetwork.def
+++ b/mingw-w64-crt/lib-common/computenetwork.def
@@ -36,9 +36,11 @@ HcnDeleteLoadBalancer
 HcnDeleteNamespace
 HcnDeleteNetwork
 HcnEnumerateEndpoints
+HcnEnumerateGuestNetworkPortReservations
 HcnEnumerateLoadBalancers
 HcnEnumerateNamespaces
 HcnEnumerateNetworks
+HcnFreeGuestNetworkPortReservations
 HcnModifyEndpoint
 HcnModifyLoadBalancer
 HcnModifyNamespace
@@ -48,8 +50,12 @@ HcnOpenLoadBalancer
 HcnOpenNamespace
 HcnOpenNetwork
 HcnQueryEndpointProperties
+HcnQueryEndpointStats
 HcnQueryLoadBalancerProperties
 HcnQueryNamespaceProperties
 HcnQueryNetworkProperties
 HcnRegisterServiceCallback
+HcnReleaseGuestNetworkServicePortReservationHandle
+HcnReserveGuestNetworkServicePort
+HcnReserveGuestNetworkServicePortRange
 HcnUnregisterServiceCallback
-- 
2.33.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] Cannot build with latest binutils-gdb. file format not recognized

2021-10-05 Thread Biswapriyo Nath
Please provide the build environment details and exact steps you've
followed to build this project.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] crt: Add missing exports in lib32/authz.def

2021-09-30 Thread Biswapriyo Nath

From 2ae3156eb257eff3798b45f2642de85085b61701 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 1 Oct 2021 10:00:23 +0530
Subject: [PATCH] crt: Add missing exports in lib32/authz.def

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/lib32/authz.def | 36 +--
 1 file changed, 30 insertions(+), 6 deletions(-)

diff --git a/mingw-w64-crt/lib32/authz.def b/mingw-w64-crt/lib32/authz.def
index 262a2da..764bd9d 100644
--- a/mingw-w64-crt/lib32/authz.def
+++ b/mingw-w64-crt/lib32/authz.def
@@ -8,26 +8,38 @@ EXPORTS
 AuthzAccessCheck@36
 AuthzAddSidsToContext@24
 AuthzCachedAccessCheck@20
+AuthzComputeEffectivePermission@60
 AuthzEnumerateSecurityEventSources@16
 AuthzEvaluateSacl@24
 AuthzFreeAuditEvent@4
+AuthzFreeCentralAccessPolicyCache@0
 AuthzFreeContext@4
 AuthzFreeHandle@4
 AuthzFreeResourceManager@4
 AuthzGetInformationFromContext@20
+AuthzInitializeCompoundContext@12
 AuthzInitializeContextFromAuthzContext@28
 AuthzInitializeContextFromSid@32
 AuthzInitializeContextFromToken@32
-AuthzInitializeObjectAccessAuditEvent
-AuthzInitializeObjectAccessAuditEvent2
+AuthzInitializeObjectAccessAuditEvent@0
+AuthzInitializeObjectAccessAuditEvent2@0
+AuthzInitializeRemoteAccessCheck@4
+AuthzInitializeRemoteResourceManager@8
 AuthzInitializeResourceManager@24
+AuthzInitializeResourceManagerEx@12
 AuthzInstallSecurityEventSource@8
+AuthzModifyClaims@16
 AuthzModifySecurityAttributes@12
+AuthzModifySids@16
 AuthzOpenObjectAudit@32
+AuthzRegisterCapChangeNotification@12
 AuthzRegisterSecurityEventSource@12
-AuthzReportSecurityEvent
+AuthzReportSecurityEvent@0
 AuthzReportSecurityEventFromParams@20
+AuthzSetAppContainerInformation@16
+AuthzShutdownRemoteAccessCheck@0
 AuthzUninstallSecurityEventSource@8
+AuthzUnregisterCapChangeNotification@4
 AuthzUnregisterSecurityEventSource@8
 AuthziAccessCheckEx@40
 AuthziAllocateAuditParams@8
@@ -38,9 +50,9 @@ AuthziFreeAuditQueue@4
 AuthziGenerateAdminAlertAuditW@16
 AuthziInitializeAuditEvent@44
 AuthziInitializeAuditEventType@20
-AuthziInitializeAuditParams
+AuthziInitializeAuditParams@0
 AuthziInitializeAuditParamsFromArray@20
-AuthziInitializeAuditParamsWithRM
+AuthziInitializeAuditParamsWithRM@0
 AuthziInitializeAuditQueue@20
 AuthziInitializeContextFromSid@32
 AuthziLogAuditEvent@12
@@ -48,6 +60,18 @@ AuthziModifyAuditEvent2@32
 AuthziModifyAuditEvent@28
 AuthziModifyAuditEventType@20
 AuthziModifyAuditQueue@24
+AuthziQueryAuditPolicy@0
+AuthziSetAuditPolicy@0
 AuthziModifySecurityAttributes@12
 AuthziQuerySecurityAttributes@24
-AuthziSourceAudit
+AuthziSourceAudit@0
+FreeClaimDefinitions@8
+FreeClaimDictionary@4
+GenerateNewCAPID@4
+GetCentralAccessPoliciesByCapID@28
+GetCentralAccessPoliciesByDN@20
+GetClaimDefinitions@16
+GetClaimDomainInfo@12
+GetDefaultCAPESecurityDescriptor@4
+InitializeClaimDictionary@12
+RefreshClaimDictionary@4
-- 
2.33.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add new names in winioctl.h

2021-09-30 Thread Biswapriyo Nath

From 758dfab297b493e831c462d73c9709add6cc5d78 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 1 Oct 2021 09:59:12 +0530
Subject: [PATCH] headers: Add new names in winioctl.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winioctl.h | 469 ++-
 1 file changed, 455 insertions(+), 14 deletions(-)

diff --git a/mingw-w64-headers/include/winioctl.h 
b/mingw-w64-headers/include/winioctl.h
index 68982c7..d282d25 100644
--- a/mingw-w64-headers/include/winioctl.h
+++ b/mingw-w64-headers/include/winioctl.h
@@ -19,7 +19,17 @@ 
DEFINE_GUID(GUID_DEVINTERFACE_MEDIUMCHANGER,0x53f56310,0xb6bf,0x11d0,0x94,0xf2,0
 
DEFINE_GUID(GUID_DEVINTERFACE_FLOPPY,0x53f56311,0xb6bf,0x11d0,0x94,0xf2,0x00,0xa0,0xc9,0x1e,0xfb,0x8b);
 
DEFINE_GUID(GUID_DEVINTERFACE_CDCHANGER,0x53f56312,0xb6bf,0x11d0,0x94,0xf2,0x00,0xa0,0xc9,0x1e,0xfb,0x8b);
 
DEFINE_GUID(GUID_DEVINTERFACE_STORAGEPORT,0x2accfe60,0xc130,0x11d2,0xb0,0x82,0x00,0xa0,0xc9,0x1e,0xfb,0x8b);
+DEFINE_GUID(GUID_DEVINTERFACE_VMLUN,0x6f416619,0x9f29,0x42a5,0xb2,0x0b,0x37,0xe2,0x19,0xca,0x02,0xb0);
+DEFINE_GUID(GUID_DEVINTERFACE_SES,0x1790c9ec,0x47d5,0x4df3,0xb5,0xaf,0x9a,0xdf,0x3c,0xf2,0x3e,0x48);
+DEFINE_GUID(GUID_DEVINTERFACE_ZNSDISK,0xb87941c5,0xffdb,0x43c7,0xb6,0xb1,0x20,0xb6,0x32,0xf0,0xb1,0x09);
+#define WDI_STORAGE_PREDICT_FAILURE_DPS_GUID 
{0xe9f2d03a,0x747c,0x41c2,{0xbb,0x9a,0x02,0xc6,0x2b,0x6d,0x5f,0xcb}};
+
+DEFINE_GUID(GUID_DEVINTERFACE_SERVICE_VOLUME,0x6ead3d82,0x25ec,0x46bc,0xb7,0xfd,0xc1,0xf0,0xdf,0x8f,0x50,0x37);
 
DEFINE_GUID(GUID_DEVINTERFACE_HIDDEN_VOLUME,0x7f108a28,0x9833,0x4b3b,0xb7,0x80,0x2c,0x6b,0x5f,0xa5,0xc0,0x62);
+DEFINE_GUID(GUID_DEVINTERFACE_UNIFIED_ACCESS_RPMB,0x27447c21,0xbcc3,0x4d07,0xa0,0x5b,0xa3,0x39,0x5b,0xb4,0xee,0xe7);
+DEFINE_GUID(GUID_DEVINTERFACE_SCM_PHYSICAL_DEVICE,0x4283609d,0x4dc2,0x43be,0xbb,0xb4,0x4f,0x15,0xdf,0xce,0x2c,0x61);
+DEFINE_GUID(GUID_SCM_PD_HEALTH_NOTIFICATION,0x9da2d386,0x72f5,0x4ee3,0x81,0x55,0xec,0xa0,0x67,0x8e,0x3b,0x6);
+DEFINE_GUID(GUID_SCM_PD_PASSTHROUGH_INVDIMM,0x4309ac30,0x0d11,0x11e4,0x91,0x91,0x08,0x00,0x20,0x0c,0x9a,0x66);
 
DEFINE_GUID(GUID_DEVINTERFACE_COMPORT,0x86e0d1e0,0x8089,0x11d0,0x9c,0xe4,0x08,0x00,0x3e,0x30,0x1f,0x73);
 
DEFINE_GUID(GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR,0x4D36E978,0xE325,0x11CE,0xBF,0xC1,0x08,0x00,0x2B,0xE1,0x03,0x18);
 
@@ -38,6 +48,23 @@ 
DEFINE_GUID(GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR,0x4D36E978,0xE325,0x11CE,0x
 #define GUID_SERENUM_BUS_ENUMERATOR GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR
 #endif /* DEFINE_GUID */
 
+#ifdef DEFINE_DEVPROPKEY
+
+#ifndef __WRAPPED__
+#define __WRAPPED__
+#endif
+
+DEFINE_DEVPROPKEY(DEVPKEY_Storage_Portable,0x4d1ebee8,0x803,0x4774,0x98,0x42,0xb7,0x7d,0xb5,0x2,0x65,0xe9,2);
+DEFINE_DEVPROPKEY(DEVPKEY_Storage_Removable_Media,0x4d1ebee8,0x803,0x4774,0x98,0x42,0xb7,0x7d,0xb5,0x2,0x65,0xe9,3);
+DEFINE_DEVPROPKEY(DEVPKEY_Storage_System_Critical,0x4d1ebee8,0x803,0x4774,0x98,0x42,0xb7,0x7d,0xb5,0x2,0x65,0xe9,4);
+DEFINE_DEVPROPKEY(DEVPKEY_Storage_Disk_Number,0x4d1ebee8,0x803,0x4774,0x98,0x42,0xb7,0x7d,0xb5,0x2,0x65,0xe9,5);
+DEFINE_DEVPROPKEY(DEVPKEY_Storage_Partition_Number,0x4d1ebee8,0x803,0x4774,0x98,0x42,0xb7,0x7d,0xb5,0x2,0x65,0xe9,6);
+DEFINE_DEVPROPKEY(DEVPKEY_Storage_Mbr_Type,0x4d1ebee8,0x803,0x4774,0x98,0x42,0xb7,0x7d,0xb5,0x2,0x65,0xe9,7);
+DEFINE_DEVPROPKEY(DEVPKEY_Storage_Gpt_Type,0x4d1ebee8,0x803,0x4774,0x98,0x42,0xb7,0x7d,0xb5,0x2,0x65,0xe9,8);
+DEFINE_DEVPROPKEY(DEVPKEY_Storage_Gpt_Name,0x4d1ebee8,0x803,0x4774,0x98,0x42,0xb7,0x7d,0xb5,0x2,0x65,0xe9,9);
+
+#endif /* DEFINE_DEVPROPKEY */
+
 #ifndef _WINIOCTL_
 #define _WINIOCTL_
 
@@ -133,10 +160,15 @@ 
DEFINE_GUID(GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR,0x4D36E978,0xE325,0x11CE,0x
 #define FILE_DEVICE_HOLOGRAPHIC 0x005b
 #define FILE_DEVICE_SDFXHCI 0x005c
 #define FILE_DEVICE_UCMUCSI 0x005d
+#define FILE_DEVICE_PRM 0x005e
+#define FILE_DEVICE_EVENT_COLLECTOR 0x005f
+#define FILE_DEVICE_USB4 0x0060
+#define FILE_DEVICE_SOUNDWIRE 0x0061
 
 #define CTL_CODE(DeviceType,Function,Method,Access) (((DeviceType) << 16) | 
((Access) << 14) | ((Function) << 2) | (Method))
 
 #define DEVICE_TYPE_FROM_CTL_CODE(ctrlCode) (((DWORD)(ctrlCode & 0x)) 
>> 16)
+#define METHOD_FROM_CTL_CODE(ctrlCode) ((DWORD)(ctrlCode & 3))
 
 #define METHOD_BUFFERED 0
 #define METHOD_IN_DIRECT 1
@@ -189,17 +221,59 @@ extern "C" {
 #define IOCTL_STORAGE_PERSISTENT_RESERVE_OUT CTL_CODE(IOCTL_STORAGE_BASE, 
0x0407, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
 
 #define IOCTL_STORAGE_GET_DEVICE_NUMBER 
CTL_CODE(IOCTL_STORAGE_BASE,0x0420,METHOD_BUFFERED,FILE_ANY_ACCESS)
+#define IOCTL_STORAGE_GET_DEVICE_NUMBER_EX 
CTL_CODE(IOCTL_STORAGE_BASE,0x0421,METHOD_BUFFERED,FILE_ANY_ACCESS)
 #define IOCTL_STORAGE_PREDICT_FAILURE 
CTL_CODE(IOCTL_STORAGE_BASE,0x0440,METHOD_BUFFERED,FILE_ANY_ACCESS)
+#define IOCTL_STORAGE_FAILURE_PREDICTION_CONFIG 
CTL_CODE(IOCTL_STORAGE_BASE,0x0441,METHOD_BUFFERED,FILE_ANY_A

[Mingw-w64-public] [PATCH] headers: Add nvme.h

2021-09-30 Thread Biswapriyo Nath

From a7f0bd170bf2c3692c9cd592e0e4774cb58faba5 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 30 Sep 2021 20:06:35 +0530
Subject: [PATCH] headers: Add nvme.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/nvme.h | 2835 ++
 1 file changed, 2835 insertions(+)
 create mode 100644 mingw-w64-headers/include/nvme.h

diff --git a/mingw-w64-headers/include/nvme.h b/mingw-w64-headers/include/nvme.h
new file mode 100644
index 000..5787768
--- /dev/null
+++ b/mingw-w64-headers/include/nvme.h
@@ -0,0 +1,2835 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+#ifndef NVME_INCLUDED
+#define NVME_INCLUDED
+
+#include 
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+
+typedef enum {
+NVME_AMS_ROUND_ROBIN = 0,
+NVME_AMS_WEIGHTED_ROUND_ROBIN_URGENT = 1
+} NVME_AMS_OPTION;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONGLONG MQES : 16;
+ULONGLONG CQR : 1;
+ULONGLONG AMS_WeightedRoundRobinWithUrgent : 1;
+ULONGLONG AMS_VendorSpecific : 1;
+ULONGLONG Reserved0 : 5;
+ULONGLONG TO : 8;
+ULONGLONG DSTRD : 4;
+ULONGLONG NSSRS : 1;
+ULONGLONG CSS_NVM : 1;
+ULONGLONG CSS_Reserved0 : 1;
+ULONGLONG CSS_Reserved1 : 1;
+ULONGLONG CSS_Reserved2 : 1;
+ULONGLONG CSS_Reserved3 : 1;
+ULONGLONG CSS_Reserved4 : 1;
+ULONGLONG CSS_MultipleIo : 1;
+ULONGLONG CSS_AdminOnly : 1;
+ULONGLONG Reserved2 : 3;
+ULONGLONG MPSMIN : 4;
+ULONGLONG MPSMAX : 4;
+ULONGLONG Reserved3 : 8;
+};
+ULONGLONG AsUlonglong;
+} NVME_CONTROLLER_CAPABILITIES, *PNVME_CONTROLLER_CAPABILITIES;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONG TER : 8;
+ULONG MNR : 8;
+ULONG MJR : 16;
+};
+ULONG AsUlong;
+} NVME_VERSION, *PNVME_VERSION;
+
+typedef enum {
+NVME_CC_SHN_NO_NOTIFICATION = 0,
+NVME_CC_SHN_NORMAL_SHUTDOWN = 1,
+NVME_CC_SHN_ABRUPT_SHUTDOWN = 2
+} NVME_CC_SHN_SHUTDOWN_NOTIFICATIONS;
+
+typedef enum {
+NVME_CSS_NVM_COMMAND_SET = 0,
+NVME_CSS_ALL_SUPPORTED_IO_COMMAND_SET = 6,
+NVME_CSS_ADMIN_COMMAND_SET_ONLY = 7
+} NVME_CSS_COMMAND_SETS;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONG EN : 1;
+ULONG Reserved0 : 3;
+ULONG CSS : 3;
+ULONG MPS : 4;
+ULONG AMS : 3;
+ULONG SHN : 2;
+ULONG IOSQES : 4;
+ULONG IOCQES : 4;
+ULONG Reserved1 : 8;
+};
+ULONG AsUlong;
+} NVME_CONTROLLER_CONFIGURATION, *PNVME_CONTROLLER_CONFIGURATION;
+
+typedef enum {
+NVME_CSTS_SHST_NO_SHUTDOWN = 0,
+NVME_CSTS_SHST_SHUTDOWN_IN_PROCESS = 1,
+NVME_CSTS_SHST_SHUTDOWN_COMPLETED = 2
+} NVME_CSTS_SHST_SHUTDOWN_STATUS;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONG RDY : 1;
+ULONG CFS : 1;
+ULONG SHST : 2;
+ULONG NSSRO : 1;
+ULONG PP : 1;
+ULONG Reserved0 : 26;
+};
+ULONG AsUlong;
+} NVME_CONTROLLER_STATUS, *PNVME_CONTROLLER_STATUS;
+
+typedef struct _NVME_NVM_SUBSYSTEM_RESET {
+ULONG NSSRC;
+} NVME_NVM_SUBSYSTEM_RESET, *PNVME_NVM_SUBSYSTEM_RESET;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONG ASQS : 12;
+ULONG Reserved0 : 4;
+ULONG ACQS : 12;
+ULONG Reserved1 : 4;
+};
+ULONG AsUlong;
+} NVME_ADMIN_QUEUE_ATTRIBUTES, *PNVME_ADMIN_QUEUE_ATTRIBUTES;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONGLONG Reserved0 : 12;
+ULONGLONG ASQB : 52;
+};
+ULONGLONG AsUlonglong;
+} NVME_ADMIN_SUBMISSION_QUEUE_BASE_ADDRESS, 
*PNVME_ADMIN_SUBMISSION_QUEUE_BASE_ADDRESS;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONGLONG Reserved0 : 12;
+ULONGLONG ACQB : 52;
+};
+ULONGLONG AsUlonglong;
+} NVME_ADMIN_COMPLETION_QUEUE_BASE_ADDRESS, 
*PNVME_ADMIN_COMPLETION_QUEUE_BASE_ADDRESS;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONG BIR : 3;
+ULONG Reserved : 9;
+ULONG OFST : 20;
+};
+ULONG AsUlong;
+} NVME_CONTROLLER_MEMORY_BUFFER_LOCATION, 
*PNVME_CONTROLLER_MEMORY_BUFFER_LOCATION;
+
+typedef enum {
+NVME_CMBSZ_SIZE_UNITS_4KB = 0,
+NVME_CMBSZ_SIZE_UNITS_64KB = 1,
+NVME_CMBSZ_SIZE_UNITS_1MB = 2,
+NVME_CMBSZ_SIZE_UNITS_16MB = 3,
+NVME_CMBSZ_SIZE_UNITS_256MB = 4,
+NVME_CMBSZ_SIZE_UNITS_4GB = 5,
+NVME_CMBSZ_SIZE_UNITS_64GB = 6
+} NVME_CMBSZ_SIZE_UNITS;
+
+typedef union {
+__C89_NAMELESS struct {
+ULONG SQS : 1;
+ULONG CQS : 1;
+ULONG LISTS : 1;
+ULONG RDS : 1;
+ULONG WDS : 1;
+ULONG Reserved : 3;
+ULONG SZU : 4;
+ULONG SZ : 20;
+};
+ULONG AsUlong;
+} NVME_CONTROLLER_MEMORY_BUFFER_SIZE, *PNVME_CONTROLLER_MEMORY_BUFFER_SIZE;
+
+typedef union

Re: [Mingw-w64-public] Latest Windows SDK headers and API support in the MinGW-W64 toolchain

2021-09-30 Thread Biswapriyo Nath
Thanks again for testing. Here is the process:

1. I send patches here.
2. mingw-w64 maintainers apply those.
3. I shall ask msys2 maintainers to update mingw-w64 headers.
4. It will update after 1 or 2 days. After packages will updated those
will show here https://packages.msys2.org/updates


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] Latest Windows SDK headers and API support in the MinGW-W64 toolchain

2021-09-28 Thread Biswapriyo Nath
Thanks for testing. I have added those in my test branch
https://github.com/Biswa96/mingw-w64/tree/test.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] Latest Windows SDK headers and API support in the MinGW-W64 toolchain

2021-09-26 Thread Biswapriyo Nath
Hi, can you check the nvme.h header file I have added in this test
repository https://github.com/Biswa96/mingw-w64/tree/test ? Try to
compile the project you've mentioned with it.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] Latest Windows SDK headers and API support in the MinGW-W64 toolchain

2021-09-20 Thread Biswapriyo Nath
I can try to help to add the header files. But first the headers need
to be tested with that project. The project, with recursive git
submodule, is too big to compile in my old rusty box. If someone can
build the project with newly created header files it will help. Can
you create an issue or discussion in that project to support mingw-w64
build environment? And ping me there.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add GetHostNameW in winsock2.h

2021-09-18 Thread Biswapriyo Nath

From c5ce6017835a4bace7522b47fad664bebea8e131 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 18 Sep 2021 14:43:41 +0530
Subject: [PATCH] headers: Add GetHostNameW in winsock2.h

This fixes build failure of libuv in x86.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winsock2.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mingw-w64-headers/include/winsock2.h 
b/mingw-w64-headers/include/winsock2.h
index 99f4c24..0697e8c 100644
--- a/mingw-w64-headers/include/winsock2.h
+++ b/mingw-w64-headers/include/winsock2.h
@@ -1032,6 +1032,7 @@ typedef unsigned int GROUP;
   WINSOCK_API_LINKAGE struct hostent *WSAAPI gethostbyaddr(const char 
*addr,int len,int type);
   WINSOCK_API_LINKAGE struct hostent *WSAAPI gethostbyname(const char *name);
   WINSOCK_API_LINKAGE int WSAAPI gethostname(char *name,int namelen);
+  WINSOCK_API_LINKAGE int WSAAPI GetHostNameW(PWSTR name, int namelen);
   WINSOCK_API_LINKAGE struct servent *WSAAPI getservbyport(int port,const char 
*proto);
   WINSOCK_API_LINKAGE struct servent *WSAAPI getservbyname(const char 
*name,const char *proto);
   WINSOCK_API_LINKAGE struct protoent *WSAAPI getprotobynumber(int number);
-- 
2.33.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] dcomp.h: add some missing interfaces

2021-09-13 Thread Biswapriyo Nath
* C style comment please.
* I can not understand why "some of the arguments are replaced with void*".


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] contributions

2021-09-04 Thread Biswapriyo Nath
Are not you reinventing what cygwin already has?


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] wtypes.h: replace #include <...> with #include "..." for rpc

2021-09-03 Thread Biswapriyo Nath
I disagree with this change. Your project contains files with similar
name in mingw-w64. You should change your project file instead of the
opposite.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add headers for host compute system APIs

2021-08-30 Thread Biswapriyo Nath
IMHO, I don't see any proper reason to "uglify" every header file. Some issues:
1. If parameters are removed the function declarations will look cryptic.
2. If I want to see a function prototype quickly without opening a web
browser header files are handy at that time.
3. If there is any wrong in code the compiler output shows the
functions parameters which also helps.
4. Just asking. If a simple function parameters cause test failure,
should not those tests need a fix? These headers are not included in
any crt files.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] WIN32_LEAN_AND_MEAN changes from runtime-8 to runtime-9

2021-08-26 Thread Biswapriyo Nath
I don't know what the issue is. But to compile perl with mingw-w64
toolchain, I have to patch some files. You can see the changes here
https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-perl.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add headers for host compute system APIs

2021-08-26 Thread Biswapriyo Nath

From d8b3fa8e4c2ddaede22ca0b134b5dcccd34aa87f Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 27 Aug 2021 00:51:06 +0530
Subject: [PATCH] headers: Add headers for host compute system APIs

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/computecore.h|  82 ++
 mingw-w64-headers/include/computedefs.h| 119 +
 mingw-w64-headers/include/computenetwork.h |  92 
 mingw-w64-headers/include/computestorage.h |  40 +++
 4 files changed, 333 insertions(+)
 create mode 100644 mingw-w64-headers/include/computecore.h
 create mode 100644 mingw-w64-headers/include/computedefs.h
 create mode 100644 mingw-w64-headers/include/computenetwork.h
 create mode 100644 mingw-w64-headers/include/computestorage.h

diff --git a/mingw-w64-headers/include/computecore.h 
b/mingw-w64-headers/include/computecore.h
new file mode 100644
index 000..e6d53a9
--- /dev/null
+++ b/mingw-w64-headers/include/computecore.h
@@ -0,0 +1,82 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+#ifndef _HYPERV_COMPUTECORE_H_
+#define _HYPERV_COMPUTECORE_H_
+
+#include 
+#include 
+#include 
+#include 
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+
+#include 
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+HRESULT WINAPI HcsEnumerateComputeSystems (PCWSTR query, HCS_OPERATION 
operation);
+HRESULT WINAPI HcsEnumerateComputeSystemsInNamespace (PCWSTR idNamespace, 
PCWSTR query, HCS_OPERATION operation);
+HCS_OPERATION WINAPI HcsCreateOperation (const void *context, 
HCS_OPERATION_COMPLETION callback);
+void WINAPI HcsCloseOperation (HCS_OPERATION operation);
+void* WINAPI HcsGetOperationContext (HCS_OPERATION operation);
+HRESULT WINAPI HcsSetOperationContext (HCS_OPERATION operation, const void 
*context);
+HCS_SYSTEM WINAPI HcsGetComputeSystemFromOperation (HCS_OPERATION operation);
+HCS_PROCESS WINAPI HcsGetProcessFromOperation (HCS_OPERATION operation);
+HCS_OPERATION_TYPE WINAPI HcsGetOperationType (HCS_OPERATION operation);
+UINT64 WINAPI HcsGetOperationId (HCS_OPERATION operation);
+HRESULT WINAPI HcsGetOperationResult (HCS_OPERATION operation, PWSTR 
*resultDocument);
+HRESULT WINAPI HcsGetOperationResultAndProcessInfo (HCS_OPERATION operation, 
HCS_PROCESS_INFORMATION *processInformation, PWSTR *resultDocument);
+HRESULT WINAPI HcsGetProcessorCompatibilityFromSavedState (PCWSTR 
RuntimeFileName, PCWSTR *ProcessorFeaturesString);
+HRESULT WINAPI HcsWaitForOperationResult (HCS_OPERATION operation, DWORD 
timeoutMs, PWSTR *resultDocument);
+HRESULT WINAPI HcsWaitForOperationResultAndProcessInfo (HCS_OPERATION 
operation, DWORD timeoutMs, HCS_PROCESS_INFORMATION *processInformation, PWSTR 
*resultDocument);
+HRESULT WINAPI HcsSetOperationCallback (HCS_OPERATION operation, const void 
*context, HCS_OPERATION_COMPLETION callback);
+HRESULT WINAPI HcsCancelOperation (HCS_OPERATION operation);
+HRESULT WINAPI HcsCreateComputeSystem (PCWSTR id, PCWSTR configuration, 
HCS_OPERATION operation, const SECURITY_DESCRIPTOR *securityDescriptor, 
HCS_SYSTEM *computeSystem);
+HRESULT WINAPI HcsCreateComputeSystemInNamespace (PCWSTR idNamespace, PCWSTR 
id, PCWSTR configuration, HCS_OPERATION operation, const HCS_CREATE_OPTIONS 
*options, HCS_SYSTEM *computeSystem);
+HRESULT WINAPI HcsOpenComputeSystem (PCWSTR id, DWORD requestedAccess, 
HCS_SYSTEM *computeSystem);
+HRESULT WINAPI HcsOpenComputeSystemInNamespace (PCWSTR idNamespace, PCWSTR id, 
DWORD requestedAccess, HCS_SYSTEM *computeSystem);
+void WINAPI HcsCloseComputeSystem (HCS_SYSTEM computeSystem);
+HRESULT WINAPI HcsStartComputeSystem (HCS_SYSTEM computeSystem, HCS_OPERATION 
operation, PCWSTR options);
+HRESULT WINAPI HcsShutDownComputeSystem (HCS_SYSTEM computeSystem, 
HCS_OPERATION operation, PCWSTR options);
+HRESULT WINAPI HcsTerminateComputeSystem (HCS_SYSTEM computeSystem, 
HCS_OPERATION operation, PCWSTR options);
+HRESULT WINAPI HcsCrashComputeSystem (HCS_SYSTEM computeSystem, HCS_OPERATION 
operation, PCWSTR options);
+HRESULT WINAPI HcsPauseComputeSystem (HCS_SYSTEM computeSystem, HCS_OPERATION 
operation, PCWSTR options);
+HRESULT WINAPI HcsResumeComputeSystem (HCS_SYSTEM computeSystem, HCS_OPERATION 
operation, PCWSTR options);
+HRESULT WINAPI HcsSaveComputeSystem (HCS_SYSTEM computeSystem, HCS_OPERATION 
operation, PCWSTR options);
+HRESULT WINAPI HcsGetComputeSystemProperties (HCS_SYSTEM computeSystem, 
HCS_OPERATION operation, PCWSTR propertyQuery);
+HRESULT WINAPI HcsModifyComputeSystem (HCS_SYSTEM computeSystem, HCS_OPERATION 
operation, PCWSTR configuration, HANDLE identity);
+HRESULT WINAPI HcsWaitForComputeSystemExit (HCS_SYSTEM computeSystem, DWORD 
timeoutMs, PWSTR *result);
+HRESULT WINAPI HcsSetComputeSystemCallback (HCS_SYSTEM computeSystem, 
HCS_EVENT_OPTIONS callbackOptions, const voi

Re: [Mingw-w64-public] WIN32_LEAN_AND_MEAN changes from runtime-8 to runtime-9

2021-08-26 Thread Biswapriyo Nath
The output from v9 matches with the output of same code compiled with
MSVC. To detect poll.h, curl does this
https://github.com/curl/curl/blob/master/lib/select.h


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] crt: Add def files of host compute system APIs

2021-08-13 Thread Biswapriyo Nath

From 48147e98e2f84b04e09c25b6195c3d27d5d527b8 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 13 Aug 2021 23:51:00 +0530
Subject: [PATCH] crt: Add def files of host compute system APIs

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/lib-common/computecore.def| 63 +
 mingw-w64-crt/lib-common/computenetwork.def | 55 ++
 mingw-w64-crt/lib-common/computestorage.def | 19 +++
 mingw-w64-crt/lib64/Makefile.am |  3 +
 mingw-w64-crt/libarm64/Makefile.am  |  3 +
 5 files changed, 143 insertions(+)
 create mode 100644 mingw-w64-crt/lib-common/computecore.def
 create mode 100644 mingw-w64-crt/lib-common/computenetwork.def
 create mode 100644 mingw-w64-crt/lib-common/computestorage.def

diff --git a/mingw-w64-crt/lib-common/computecore.def 
b/mingw-w64-crt/lib-common/computecore.def
new file mode 100644
index 000..60fd227
--- /dev/null
+++ b/mingw-w64-crt/lib-common/computecore.def
@@ -0,0 +1,63 @@
+;
+; Definition file of computecore.dll
+; Automatic generated by gendef
+; written by Kai Tietz 2008
+;
+LIBRARY "computecore.dll"
+EXPORTS
+HcsEnumerateVmWorkerProcesses
+HcsFindVmWorkerProcesses
+HcsGetWorkerProcessJob
+HcsStartVmWorkerProcess
+HcsCancelOperation
+HcsCloseComputeSystem
+HcsCloseOperation
+HcsCloseProcess
+HcsCrashComputeSystem
+HcsCreateComputeSystem
+HcsCreateComputeSystemInNamespace
+HcsCreateEmptyGuestStateFile
+HcsCreateEmptyRuntimeStateFile
+HcsCreateOperation
+HcsCreateProcess
+HcsEnumerateComputeSystems
+HcsEnumerateComputeSystemsInNamespace
+HcsGetComputeSystemFromOperation
+HcsGetComputeSystemProperties
+HcsGetOperationContext
+HcsGetOperationId
+HcsGetOperationResult
+HcsGetOperationResultAndProcessInfo
+HcsGetOperationType
+HcsGetProcessFromOperation
+HcsGetProcessInfo
+HcsGetProcessProperties
+HcsGetProcessorCompatibilityFromSavedState
+HcsGetServiceProperties
+HcsGrantVmAccess
+HcsGrantVmGroupAccess
+HcsModifyComputeSystem
+HcsModifyProcess
+HcsModifyServiceSettings
+HcsOpenComputeSystem
+HcsOpenComputeSystemInNamespace
+HcsOpenProcess
+HcsPauseComputeSystem
+HcsResumeComputeSystem
+HcsRevokeVmAccess
+HcsRevokeVmGroupAccess
+HcsSaveComputeSystem
+HcsSetComputeSystemCallback
+HcsSetOperationCallback
+HcsSetOperationContext
+HcsSetProcessCallback
+HcsShutDownComputeSystem
+HcsSignalProcess
+HcsStartComputeSystem
+HcsSubmitWerReport
+HcsTerminateComputeSystem
+HcsTerminateProcess
+HcsWaitForComputeSystemExit
+HcsWaitForOperationResult
+HcsWaitForOperationResultAndProcessInfo
+HcsWaitForProcessExit
diff --git a/mingw-w64-crt/lib-common/computenetwork.def 
b/mingw-w64-crt/lib-common/computenetwork.def
new file mode 100644
index 000..5c339e6
--- /dev/null
+++ b/mingw-w64-crt/lib-common/computenetwork.def
@@ -0,0 +1,55 @@
+;
+; Definition file of computenetwork.dll
+; Automatic generated by gendef
+; written by Kai Tietz 2008
+;
+LIBRARY "computenetwork.dll"
+EXPORTS
+HcnCloseGuestNetworkService
+HcnCloseSdnRoute
+HcnCreateGuestNetworkService
+HcnCreateSdnRoute
+HcnDeleteGuestNetworkService
+HcnDeleteSdnRoute
+HcnEnumerateGuestNetworkServices
+HcnEnumerateSdnRoutes
+HcnModifyGuestNetworkService
+HcnModifySdnRoute
+HcnOpenGuestNetworkService
+HcnOpenSdnRoute
+HcnQueryGuestNetworkServiceProperties
+HcnQuerySdnRouteProperties
+HcnRegisterGuestNetworkServiceCallback
+HcnRegisterNetworkCallback
+HcnUnregisterGuestNetworkServiceCallback
+HcnUnregisterNetworkCallback
+HcnCloseEndpoint
+HcnCloseLoadBalancer
+HcnCloseNamespace
+HcnCloseNetwork
+HcnCreateEndpoint
+HcnCreateLoadBalancer
+HcnCreateNamespace
+HcnCreateNetwork
+HcnDeleteEndpoint
+HcnDeleteLoadBalancer
+HcnDeleteNamespace
+HcnDeleteNetwork
+HcnEnumerateEndpoints
+HcnEnumerateLoadBalancers
+HcnEnumerateNamespaces
+HcnEnumerateNetworks
+HcnModifyEndpoint
+HcnModifyLoadBalancer
+HcnModifyNamespace
+HcnModifyNetwork
+HcnOpenEndpoint
+HcnOpenLoadBalancer
+HcnOpenNamespace
+HcnOpenNetwork
+HcnQueryEndpointProperties
+HcnQueryLoadBalancerProperties
+HcnQueryNamespaceProperties
+HcnQueryNetworkProperties
+HcnRegisterServiceCallback
+HcnUnregisterServiceCallback
diff --git a/mingw-w64-crt/lib-common/computestorage.def 
b/mingw-w64-crt/lib-common/computestorage.def
new file mode 100644
index 000..e79ec1a
--- /dev/null
+++ b/mingw-w64-crt/lib-common/computestorage.def
@@ -0,0 +1,19 @@
+;
+; Definition file of computestorage.dll
+; Automatic generated by gendef
+; written by Kai Tietz 2008
+;
+LIBRARY "computestorage.dll"
+EXPORTS
+HcsAttachLayerStorageFilter
+HcsDestroyLayer
+HcsDetachLayerStorageFilter
+HcsExportLayer
+HcsExportLegacyWritableLayer
+HcsFormatWritableLayerVhd
+HcsGetLayerVhdMountPath
+HcsImportLayer
+HcsInitializeLegacyWritableLayer
+HcsInitializeWritableLayer
+HcsSetupBaseOSLayer
+HcsSetupBaseOSVolume
diff --git a/mingw-w64-crt/lib64/Makefile.am b/mingw-w64-crt/lib64/Makefile.am
index 6de4b77..c0608b8 100644
--- a/mingw-w64-crt/lib64/Makefile.am
+++ b/mingw-w64-crt/lib64/Makefile.am
@@ -68,6 +68,9 @@ lib64_DATA += %re

Re: [Mingw-w64-public] [PATCH] WHVP updates

2021-08-12 Thread Biswapriyo Nath
Aye. Updated.
From a5a1b8fb35d638a30e9f2f2b6b1fd9298d7e8b1d Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 8 Aug 2021 23:34:05 +0530
Subject: [PATCH 2/4] headers: Add new types in winhvplatformdefs.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winhvplatformdefs.h | 496 +-
 1 file changed, 491 insertions(+), 5 deletions(-)

diff --git a/mingw-w64-headers/include/winhvplatformdefs.h 
b/mingw-w64-headers/include/winhvplatformdefs.h
index 0f66c73..fd66fdd 100644
--- a/mingw-w64-headers/include/winhvplatformdefs.h
+++ b/mingw-w64-headers/include/winhvplatformdefs.h
@@ -192,6 +192,78 @@ typedef struct WHV_PROCESSOR_FEATURES_BANKS {
 
 C_ASSERT(sizeof(WHV_PROCESSOR_FEATURES_BANKS) == sizeof(UINT64) * 
(WHV_PROCESSOR_FEATURES_BANKS_COUNT + 1));
 
+typedef union WHV_SYNTHETIC_PROCESSOR_FEATURES {
+__C89_NAMELESS struct {
+UINT64 HypervisorPresent:1;
+UINT64 Hv1:1;
+UINT64 AccessVpRunTimeReg:1;
+UINT64 AccessPartitionReferenceCounter:1;
+UINT64 AccessSynicRegs:1;
+UINT64 AccessSyntheticTimerRegs:1;
+#ifdef __x86_64__
+UINT64 AccessIntrCtrlRegs:1;
+#else
+UINT64 ReservedZ6:1;
+#endif
+UINT64 AccessHypercallRegs:1;
+UINT64 AccessVpIndex:1;
+UINT64 AccessPartitionReferenceTsc:1;
+#ifdef __x86_64__
+UINT64 AccessGuestIdleReg:1;
+UINT64 AccessFrequencyRegs:1;
+#else
+UINT64 ReservedZ10:1;
+UINT64 ReservedZ11:1;
+#endif
+UINT64 ReservedZ12:1;
+UINT64 ReservedZ13:1;
+UINT64 ReservedZ14:1;
+#ifdef __x86_64__
+UINT64 EnableExtendedGvaRangesForFlushVirtualAddressList:1;
+#else
+UINT64 ReservedZ15:1;
+#endif
+UINT64 ReservedZ16:1;
+UINT64 ReservedZ17:1;
+UINT64 FastHypercallOutput:1;
+UINT64 ReservedZ19:1;
+UINT64 ReservedZ20:1;
+UINT64 ReservedZ21:1;
+UINT64 DirectSyntheticTimers:1;
+UINT64 ReservedZ23:1;
+UINT64 ExtendedProcessorMasks:1;
+#ifdef __x86_64__
+UINT64 TbFlushHypercalls:1;
+#else
+UINT64 ReservedZ25:1;
+#endif
+UINT64 SyntheticClusterIpi:1;
+UINT64 NotifyLongSpinWait:1;
+UINT64 QueryNumaDistance:1;
+UINT64 SignalEvents:1;
+UINT64 RetargetDeviceInterrupt:1;
+UINT64 Reserved:33;
+};
+UINT64 AsUINT64;
+} WHV_SYNTHETIC_PROCESSOR_FEATURES;
+
+C_ASSERT(sizeof(WHV_SYNTHETIC_PROCESSOR_FEATURES) == 8);
+
+#define WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS_COUNT 1
+
+typedef struct WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS {
+UINT32 BanksCount;
+UINT32 Reserved0;
+__C89_NAMELESS union {
+__C89_NAMELESS struct {
+WHV_SYNTHETIC_PROCESSOR_FEATURES Bank0;
+};
+UINT64 AsUINT64[WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS_COUNT];
+};
+} WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS;
+
+C_ASSERT(sizeof(WHV_SYNTHETIC_PROCESSOR_FEATURES_BANKS) == 16);
+
 typedef union _WHV_PROCESSOR_XSAVE_FEATURES {
 __C89_NAMELESS struct {
 UINT64 XsaveSupport : 1;
@@ -232,6 +304,17 @@ typedef union _WHV_PROCESSOR_XSAVE_FEATURES {
 
 C_ASSERT(sizeof(WHV_PROCESSOR_XSAVE_FEATURES) == sizeof(UINT64));
 
+typedef union WHV_PROCESSOR_PERFMON_FEATURES {
+__C89_NAMELESS struct {
+UINT64 PmuSupport : 1;
+UINT64 LbrSupport : 1;
+UINT64 Reserved : 62;
+};
+UINT64 AsUINT64;
+} WHV_PROCESSOR_PERFMON_FEATURES, *PWHV_PROCESSOR_PERFMON_FEATURES;
+
+C_ASSERT(sizeof(WHV_PROCESSOR_PERFMON_FEATURES) == 8);
+
 typedef union WHV_X64_MSR_EXIT_BITMAP {
 UINT64 AsUINT64;
 __C89_NAMELESS struct {
@@ -247,12 +330,69 @@ typedef union WHV_X64_MSR_EXIT_BITMAP {
 
 C_ASSERT(sizeof(WHV_X64_MSR_EXIT_BITMAP) == sizeof(UINT64));
 
+typedef struct WHV_MEMORY_RANGE_ENTRY {
+UINT64 GuestAddress;
+UINT64 SizeInBytes;
+} WHV_MEMORY_RANGE_ENTRY;
+
+C_ASSERT(sizeof(WHV_MEMORY_RANGE_ENTRY) == 16);
+
+typedef union WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS {
+UINT32 AsUINT32;
+__C89_NAMELESS struct {
+UINT32 Prefetch:1;
+UINT32 AvoidHardFaults:1;
+UINT32 Reserved:30;
+};
+} WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS;
+
+C_ASSERT(sizeof(WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS) == 4);
+
+typedef enum WHV_MEMORY_ACCESS_TYPE {
+WHvMemoryAccessRead = 0,
+WHvMemoryAccessWrite = 1,
+WHvMemoryAccessExecute = 2
+} WHV_MEMORY_ACCESS_TYPE;
+
+typedef struct WHV_ADVISE_GPA_RANGE_POPULATE {
+WHV_ADVISE_GPA_RANGE_POPULATE_FLAGS Flags;
+WHV_MEMORY_ACCESS_TYPE AccessType;
+} WHV_ADVISE_GPA_RANGE_POPULATE;
+
+C_ASSERT(sizeof(WHV_ADVISE_GPA_RANGE_POPULATE) == 8);
+
+typedef struct WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP {
+UINT32 IsSupported:1;
+UINT32 Reserved:31;
+UINT32 HighestFrequencyMhz;
+UINT32 NominalFrequencyMhz;
+UINT32 LowestFrequencyMhz;
+UINT32 FrequencyStepMhz;
+} WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP;
+
+C_ASSERT(sizeof(WHV_CAPABILITY_PROCESSOR_FREQUENCY_CAP) == 20);
+
+typedef union

[Mingw-w64-public] [PATCH] WHVP updates

2021-08-08 Thread Biswapriyo Nath

From 4d829b31e9fdb50b2e62ccb2e65b9d5127b6e301 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 8 Aug 2021 23:32:08 +0530
Subject: [PATCH 1/4] headers: Update existing enums and unions in 
winhvplatformdefs.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winhvplatformdefs.h | 235 +-
 1 file changed, 224 insertions(+), 11 deletions(-)

diff --git a/mingw-w64-headers/include/winhvplatformdefs.h 
b/mingw-w64-headers/include/winhvplatformdefs.h
index 2b62e7e..0f66c73 100644
--- a/mingw-w64-headers/include/winhvplatformdefs.h
+++ b/mingw-w64-headers/include/winhvplatformdefs.h
@@ -12,13 +12,18 @@ typedef enum WHV_CAPABILITY_CODE {
 WHvCapabilityCodeExtendedVmExits = 0x0002,
 WHvCapabilityCodeExceptionExitBitmap = 0x0003,
 WHvCapabilityCodeX64MsrExitBitmap = 0x0004,
+WHvCapabilityCodeGpaRangePopulateFlags = 0x0005,
+WHvCapabilityCodeSchedulerFeatures = 0x0006,
 WHvCapabilityCodeProcessorVendor = 0x1000,
 WHvCapabilityCodeProcessorFeatures = 0x1001,
 WHvCapabilityCodeProcessorClFlushSize = 0x1002,
 WHvCapabilityCodeProcessorXsaveFeatures = 0x1003,
 WHvCapabilityCodeProcessorClockFrequency = 0x1004,
 WHvCapabilityCodeInterruptClockFrequency = 0x1005,
-WHvCapabilityCodeProcessorFeaturesBanks = 0x1006
+WHvCapabilityCodeProcessorFeaturesBanks = 0x1006,
+WHvCapabilityCodeProcessorFrequencyCap = 0x1007,
+WHvCapabilityCodeSyntheticProcessorFeaturesBanks = 0x1008,
+WHvCapabilityCodeProcessorPerfmonFeatures = 0x1009
 } WHV_CAPABILITY_CODE;
 
 typedef union WHV_CAPABILITY_FEATURES {
@@ -30,7 +35,10 @@ typedef union WHV_CAPABILITY_FEATURES {
 UINT64 SpeculationControl : 1;
 UINT64 ApicRemoteRead : 1;
 UINT64 IdleSuspend : 1;
-UINT64 Reserved : 57;
+UINT64 VirtualPciDeviceSupport : 1;
+UINT64 IommuSupport : 1;
+UINT64 VpHotAddRemove : 1;
+UINT64 Reserved : 54;
 };
 UINT64 AsUINT64;
 } WHV_CAPABILITY_FEATURES;
@@ -46,7 +54,15 @@ typedef union WHV_EXTENDED_VM_EXITS {
 UINT64 X64ApicSmiExitTrap : 1;
 UINT64 HypercallExit : 1;
 UINT64 X64ApicInitSipiExitTrap : 1;
-UINT64 Reserved : 57;
+UINT64 X64ApicWriteLint0ExitTrap : 1;
+UINT64 X64ApicWriteLint1ExitTrap : 1;
+UINT64 X64ApicWriteSvrExitTrap : 1;
+UINT64 UnknownSynicConnection : 1;
+UINT64 RetargetUnknownVpciDevice : 1;
+UINT64 X64ApicWriteLdrExitTrap : 1;
+UINT64 X64ApicWriteDfrExitTrap : 1;
+UINT64 GpaAccessFaultExit : 1;
+UINT64 Reserved : 49;
 };
 UINT64 AsUINT64;
 } WHV_EXTENDED_VM_EXITS;
@@ -121,7 +137,9 @@ typedef union WHV_PROCESSOR_FEATURES {
 UINT64 UmipSupport : 1;
 UINT64 MdsNoSupport : 1;
 UINT64 MdClearSupport : 1;
-UINT64 Reserved6 : 3;
+UINT64 TaaNoSupport : 1;
+UINT64 TsxCtrlSupport : 1;
+UINT64 Reserved6 : 1;
 };
 UINT64 AsUINT64;
 } WHV_PROCESSOR_FEATURES;
@@ -130,9 +148,28 @@ C_ASSERT(sizeof(WHV_PROCESSOR_FEATURES) == sizeof(UINT64));
 
 typedef union WHV_PROCESSOR_FEATURES1 {
 __C89_NAMELESS struct {
-UINT64 Reserved1 : 2;
+UINT64 ACountMCountSupport : 1;
+UINT64 TscInvariantSupport : 1;
 UINT64 ClZeroSupport : 1;
-UINT64 Reserved2 : 61;
+UINT64 RdpruSupport : 1;
+UINT64 Reserved2 : 2;
+UINT64 NestedVirtSupport : 1;
+UINT64 PsfdSupport: 1;
+UINT64 CetSsSupport : 1;
+UINT64 CetIbtSupport : 1;
+UINT64 VmxExceptionInjectSupport : 1;
+UINT64 Reserved4 : 1;
+UINT64 UmwaitTpauseSupport : 1;
+UINT64 MovdiriSupport : 1;
+UINT64 Movdir64bSupport : 1;
+UINT64 CldemoteSupport : 1;
+UINT64 SerializeSupport : 1;
+UINT64 TscDeadlineTmrSupport : 1;
+UINT64 TscAdjustSupport : 1;
+UINT64 FZLRepMovsb : 1;
+UINT64 FSRepStosb : 1;
+UINT64 FSRepCmpsb : 1;
+UINT64 Reserved5 : 42;
 };
 UINT64 AsUINT64;
 } WHV_PROCESSOR_FEATURES1;
@@ -182,7 +219,13 @@ typedef union _WHV_PROCESSOR_XSAVE_FEATURES {
 UINT64 VpclmulqdqSupport : 1;
 UINT64 Avx512Bf16Support : 1;
 UINT64 Avx512Vp2IntersectSupport : 1;
-UINT64 Reserved : 39;
+UINT64 Avx512Fp16Support : 1;
+UINT64 XfdSupport : 1;
+UINT64 AmxTileSupport : 1;
+UINT64 AmxBf16Support : 1;
+UINT64 AmxInt8Support : 1;
+UINT64 AvxVnniSupport : 1;
+UINT64 Reserved : 33;
 };
 UINT64 AsUINT64;
 } WHV_PROCESSOR_XSAVE_FEATURES, *PWHV_PROCESSOR_XSAVE_FEATURES;
@@ -196,7 +239,9 @@ typedef union WHV_X64_MSR_EXIT_BITMAP {
 UINT64 TscMsrWrite : 1;
 UINT64 TscMsrRead : 1;
 UINT64 ApicBaseMsrWrite : 1;
-UINT64 Reserved : 60;
+UINT64 MiscEnableMsrRead:1;
+UINT64 McUpdatePatchLevelMsrRead:1

Re: [Mingw-w64-public] [PATCH] headers: Add some type aliases in dsound.h

2021-08-08 Thread Biswapriyo Nath
Though wine's one make sense. Alright, wish fulfilled :)
From 8de629a3ebee0cd205477428e0df0717c89079ef Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 8 Aug 2021 21:45:03 +0530
Subject: [PATCH] headers: Add some type aliases in dsound.h

Required in portaudio.
wine commit 811e4129c1a05c9df84e01ba251f6b5b515f38a6

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/dsound.h | 12 ++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-headers/include/dsound.h 
b/mingw-w64-headers/include/dsound.h
index a96c3d0..58fb907 100644
--- a/mingw-w64-headers/include/dsound.h
+++ b/mingw-w64-headers/include/dsound.h
@@ -83,13 +83,21 @@ typedef struct IDirectSoundBuffer8 
*LPDIRECTSOUNDBUFFER8,**LPLPDIRECTSOUNDBUFFER
 
 DEFINE_GUID(IID_IDirectSoundNotify,
0xB0210783,0x89cd,0x11d0,0xAF,0x08,0x00,0xA0,0xC9,0x25,0xCD,0x16);
 typedef struct IDirectSoundNotify *LPDIRECTSOUNDNOTIFY,**LPLPDIRECTSOUNDNOTIFY;
+#define IDirectSoundNotify8 IDirectSoundNotify
+typedef struct IDirectSoundNotify8 *LPDIRECTSOUNDNOTIFY8;
 #defineIID_IDirectSoundNotify8 IID_IDirectSoundNotify
 
 DEFINE_GUID(IID_IDirectSound3DListener,
0x279AFA84,0x4981,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60);
 typedef struct IDirectSound3DListener 
*LPDIRECTSOUND3DLISTENER,**LPLPDIRECTSOUND3DLISTENER;
+#define IDirectSound3DListener8 IDirectSound3DListener
+typedef struct IDirectSound3DListener8 *LPDIRECTSOUND3DLISTENER8;
+#define IID_IDirectSound3DListener8 IID_IDirectSound3DListener
 
 DEFINE_GUID(IID_IDirectSound3DBuffer,  
0x279AFA86,0x4981,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60);
 typedef struct IDirectSound3DBuffer 
*LPDIRECTSOUND3DBUFFER,**LPLPDIRECTSOUND3DBUFFER;
+#define IDirectSound3DBuffer8 IDirectSound3DBuffer
+typedef struct IDirectSound3DBuffer8 *LPDIRECTSOUND3DBUFFER8;
+#define IID_IDirectSound3DBuffer8 IID_IDirectSound3DBuffer
 
 DEFINE_GUID(IID_IDirectSoundCapture,   
0xB0210781,0x89CD,0x11D0,0xAF,0x08,0x00,0xA0,0xC9,0x25,0xCD,0x16);
 typedef struct IDirectSoundCapture 
*LPDIRECTSOUNDCAPTURE,**LPLPDIRECTSOUNDCAPTURE;
@@ -104,6 +112,8 @@ typedef struct IDirectSoundCaptureBuffer8 
*LPDIRECTSOUNDCAPTUREBUFFER8,**LPLPDIR
 
 DEFINE_GUID(IID_IDirectSoundFullDuplex,
0xEDCB4C7A,0xDAAB,0x4216,0xA4,0x2E,0x6C,0x50,0x59,0x6D,0xDC,0x1D);
 typedef struct IDirectSoundFullDuplex 
*LPDIRECTSOUNDFULLDUPLEX,**LPLPDIRECTSOUNDFULLDUPLEX;
+#define IDirectSoundFullDuplex8 IDirectSoundFullDuplex
+typedef struct IDirectSoundFullDuplex8 *LPDIRECTSOUNDFULLDUPLEX8;
 #defineIID_IDirectSoundFullDuplex8 IID_IDirectSoundFullDuplex
 
 DEFINE_GUID(IID_IDirectSoundFXI3DL2Reverb, 0x4b166a6a, 0x0d66, 0x43f3, 0x80, 
0xe3, 0xee, 0x62, 0x80, 0xde, 0xe1, 0xa4);
@@ -1153,7 +1163,6 @@ DECLARE_INTERFACE_(IDirectSound3DListener,IUnknown)
 #define IDirectSound3DListener_SetVelocity(p,a,b,c,d)  
(p)->SetVelocity(a,b,c,d)
 #define IDirectSound3DListener_CommitDeferredSettings(p)   
(p)->CommitDeferredSettings()
 #endif
-#define IDirectSound3DListener8 IDirectSound3DListener
 
 /*
  * IDirectSound3DBuffer interface
@@ -1251,7 +1260,6 @@ DECLARE_INTERFACE_(IDirectSound3DBuffer,IUnknown)
 #define IDirectSound3DBuffer_SetPosition(p,a,b,c,d)
(p)->SetPosition(a,b,c,d)
 #define IDirectSound3DBuffer_SetVelocity(p,a,b,c,d)
(p)->SetVelocity(a,b,c,d)
 #endif
-#define IDirectSound3DBuffer8 IDirectSound3DBuffer
 
 /*
  * IKsPropertySet interface
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add some type aliases in dsound.h

2021-08-08 Thread Biswapriyo Nath
In that wine dsound.h header, it is defined as `typedef struct Iabc
Iabc8` instead of `#define Iabc8 Iabc`. I followed that style and
removed the later `#define` ones.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add some type aliases in dsound.h

2021-08-04 Thread Biswapriyo Nath

From be3c5307bfdd01a94abca693ad05be5a47bf9912 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 5 Aug 2021 10:35:32 +0530
Subject: [PATCH] headers: Add some type aliases in dsound.h

Required in portaudio.
wine commit 811e4129c1a05c9df84e01ba251f6b5b515f38a6

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/dsound.h | 9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-headers/include/dsound.h 
b/mingw-w64-headers/include/dsound.h
index a96c3d0..495bef9 100644
--- a/mingw-w64-headers/include/dsound.h
+++ b/mingw-w64-headers/include/dsound.h
@@ -84,12 +84,17 @@ typedef struct IDirectSoundBuffer8 
*LPDIRECTSOUNDBUFFER8,**LPLPDIRECTSOUNDBUFFER
 DEFINE_GUID(IID_IDirectSoundNotify,
0xB0210783,0x89cd,0x11d0,0xAF,0x08,0x00,0xA0,0xC9,0x25,0xCD,0x16);
 typedef struct IDirectSoundNotify *LPDIRECTSOUNDNOTIFY,**LPLPDIRECTSOUNDNOTIFY;
 #defineIID_IDirectSoundNotify8 IID_IDirectSoundNotify
+typedef struct IDirectSoundNotify IDirectSoundNotify8,*LPDIRECTSOUNDNOTIFY8;
 
 DEFINE_GUID(IID_IDirectSound3DListener,
0x279AFA84,0x4981,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60);
 typedef struct IDirectSound3DListener 
*LPDIRECTSOUND3DLISTENER,**LPLPDIRECTSOUND3DLISTENER;
+#define IID_IDirectSound3DListener8 IID_IDirectSound3DListener
+typedef struct IDirectSound3DListener 
IDirectSound3DListener8,*LPDIRECTSOUND3DLISTENER8;
 
 DEFINE_GUID(IID_IDirectSound3DBuffer,  
0x279AFA86,0x4981,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60);
 typedef struct IDirectSound3DBuffer 
*LPDIRECTSOUND3DBUFFER,**LPLPDIRECTSOUND3DBUFFER;
+#define IID_IDirectSound3DBuffer8 IID_IDirectSound3DBuffer
+typedef struct IDirectSound3DBuffer 
IDirectSound3DBuffer8,*LPDIRECTSOUND3DBUFFER8;
 
 DEFINE_GUID(IID_IDirectSoundCapture,   
0xB0210781,0x89CD,0x11D0,0xAF,0x08,0x00,0xA0,0xC9,0x25,0xCD,0x16);
 typedef struct IDirectSoundCapture 
*LPDIRECTSOUNDCAPTURE,**LPLPDIRECTSOUNDCAPTURE;
@@ -105,6 +110,7 @@ typedef struct IDirectSoundCaptureBuffer8 
*LPDIRECTSOUNDCAPTUREBUFFER8,**LPLPDIR
 DEFINE_GUID(IID_IDirectSoundFullDuplex,
0xEDCB4C7A,0xDAAB,0x4216,0xA4,0x2E,0x6C,0x50,0x59,0x6D,0xDC,0x1D);
 typedef struct IDirectSoundFullDuplex 
*LPDIRECTSOUNDFULLDUPLEX,**LPLPDIRECTSOUNDFULLDUPLEX;
 #defineIID_IDirectSoundFullDuplex8 IID_IDirectSoundFullDuplex
+typedef struct IDirectSoundFullDuplex 
IDirectSoundFullDuplex8,*LPDIRECTSOUNDFULLDUPLEX8;
 
 DEFINE_GUID(IID_IDirectSoundFXI3DL2Reverb, 0x4b166a6a, 0x0d66, 0x43f3, 0x80, 
0xe3, 0xee, 0x62, 0x80, 0xde, 0xe1, 0xa4);
 typedef struct IDirectSoundFXI3DL2Reverb  *LPDIRECTSOUNDFXI3DL2REVERB;
@@ -1153,7 +1159,6 @@ DECLARE_INTERFACE_(IDirectSound3DListener,IUnknown)
 #define IDirectSound3DListener_SetVelocity(p,a,b,c,d)  
(p)->SetVelocity(a,b,c,d)
 #define IDirectSound3DListener_CommitDeferredSettings(p)   
(p)->CommitDeferredSettings()
 #endif
-#define IDirectSound3DListener8 IDirectSound3DListener
 
 /*
  * IDirectSound3DBuffer interface
@@ -1251,13 +1256,13 @@ DECLARE_INTERFACE_(IDirectSound3DBuffer,IUnknown)
 #define IDirectSound3DBuffer_SetPosition(p,a,b,c,d)
(p)->SetPosition(a,b,c,d)
 #define IDirectSound3DBuffer_SetVelocity(p,a,b,c,d)
(p)->SetVelocity(a,b,c,d)
 #endif
-#define IDirectSound3DBuffer8 IDirectSound3DBuffer
 
 /*
  * IKsPropertySet interface
  */
 #ifndef _IKsPropertySet_
 #define _IKsPropertySet_
+#define __IKsPropertySet_FWD_DEFINED__
 
 typedef struct IKsPropertySet *LPKSPROPERTYSET;
 
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH 2/2] genpeimg: add support for ARMNT and ARM64 images.

2021-08-04 Thread Biswapriyo Nath
Wondering if Windows names can be used e.g. IMAGE_FILE_MACHINE_AMD64 (0x8664)


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] crt: Add missing exports in mswsock.def

2021-07-31 Thread Biswapriyo Nath

From fdf3245ba30040fa596636b66c115282ec7a2594 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 1 Aug 2021 11:17:18 +0530
Subject: [PATCH] crt: Add missing exports in mswsock.def

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/lib-common/mswsock.def |  2 ++
 mingw-w64-crt/lib32/mswsock.def  | 46 +++-
 2 files changed, 47 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-crt/lib-common/mswsock.def 
b/mingw-w64-crt/lib-common/mswsock.def
index 889f2f1..b557a10 100644
--- a/mingw-w64-crt/lib-common/mswsock.def
+++ b/mingw-w64-crt/lib-common/mswsock.def
@@ -22,6 +22,8 @@ MigrateWinsockConfiguration
 MigrateWinsockConfigurationEx
 NPLoadNameSpaces
 NSPStartup
+; MSDN says ProcessSocketNotifications is from ws2_32.dll, not mswsock.dll
+; ProcessSocketNotifications
 SetServiceA
 SetServiceW
 StartWsdpService
diff --git a/mingw-w64-crt/lib32/mswsock.def b/mingw-w64-crt/lib32/mswsock.def
index 3e74f87..90c20dc 100644
--- a/mingw-w64-crt/lib32/mswsock.def
+++ b/mingw-w64-crt/lib32/mswsock.def
@@ -1,4 +1,9 @@
-LIBRARY MSWSOCK.DLL
+;
+; Definition file of MSWSOCK.dll
+; Automatic generated by gendef
+; written by Kai Tietz 2008
+;
+LIBRARY "MSWSOCK.dll"
 EXPORTS
 AcceptEx@32
 EnumProtocolsA@12
@@ -10,14 +15,53 @@ GetNameByTypeA@12
 GetNameByTypeW@12
 GetServiceA@28
 GetServiceW@28
+GetSocketErrorMessageW@4
 GetTypeByNameA@8
 GetTypeByNameW@8
 MigrateWinsockConfiguration@12
+MigrateWinsockConfigurationEx@20
 NPLoadNameSpaces@12
+NSPStartup@8
+; MSDN says ProcessSocketNotifications is from ws2_32.dll, not mswsock.dll
+; ProcessSocketNotifications@28
 SetServiceA@24
 SetServiceW@24
+StartWsdpService@0
+StopWsdpService@0
+Tcpip4_WSHAddressToString@20
+Tcpip4_WSHEnumProtocols@16
+Tcpip4_WSHGetBroadcastSockaddr@12
+Tcpip4_WSHGetProviderGuid@8
+Tcpip4_WSHGetSockaddrType@12
+Tcpip4_WSHGetSocketInformation@32
+Tcpip4_WSHGetWSAProtocolInfo@12
+Tcpip4_WSHGetWildcardSockaddr@12
+Tcpip4_WSHGetWinsockMapping@8
+Tcpip4_WSHIoctl@52
+Tcpip4_WSHJoinLeaf@52
+Tcpip4_WSHNotify@20
+Tcpip4_WSHOpenSocket2@32
+Tcpip4_WSHOpenSocket@24
+Tcpip4_WSHSetSocketInformation@32
+Tcpip4_WSHStringToAddress@20
+Tcpip6_WSHAddressToString@20
+Tcpip6_WSHEnumProtocols@16
+Tcpip6_WSHGetProviderGuid@8
+Tcpip6_WSHGetSockaddrType@12
+Tcpip6_WSHGetSocketInformation@32
+Tcpip6_WSHGetWSAProtocolInfo@12
+Tcpip6_WSHGetWildcardSockaddr@12
+Tcpip6_WSHGetWinsockMapping@8
+Tcpip6_WSHIoctl@52
+Tcpip6_WSHJoinLeaf@52
+Tcpip6_WSHNotify@20
+Tcpip6_WSHOpenSocket2@32
+Tcpip6_WSHOpenSocket@24
+Tcpip6_WSHSetSocketInformation@32
+Tcpip6_WSHStringToAddress@20
 TransmitFile@28
 WSARecvEx@16
+WSPStartup@76
 dn_expand@20
 getnetbyname@4
 inet_network@4
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] crt: Add missing exports in ws2_32.def

2021-07-22 Thread Biswapriyo Nath

From 669dd778642674b8522daa4c969c0413badc7be4 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 22 Jul 2021 19:57:06 +0530
Subject: [PATCH] crt: Add missing exports in ws2_32.def

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/lib-common/ws2_32.def.in |  1 +
 mingw-w64-crt/lib32/ws2_32.def | 14 ++
 2 files changed, 15 insertions(+)

diff --git a/mingw-w64-crt/lib-common/ws2_32.def.in 
b/mingw-w64-crt/lib-common/ws2_32.def.in
index 4789b77..b49c4b8 100644
--- a/mingw-w64-crt/lib-common/ws2_32.def.in
+++ b/mingw-w64-crt/lib-common/ws2_32.def.in
@@ -38,6 +38,7 @@ GetHostNameW
 GetNameInfoW
 InetNtopW
 InetPtonW
+ProcessSocketNotifications
 SetAddrInfoExA
 SetAddrInfoExW
 WPUCompleteOverlappedRequest
diff --git a/mingw-w64-crt/lib32/ws2_32.def b/mingw-w64-crt/lib32/ws2_32.def
index 19f3f69..f78defc 100644
--- a/mingw-w64-crt/lib32/ws2_32.def
+++ b/mingw-w64-crt/lib32/ws2_32.def
@@ -33,14 +33,19 @@ FreeAddrInfoEx@4
 FreeAddrInfoExW@4
 FreeAddrInfoW@4
 GetAddrInfoExA@40
+GetAddrInfoExCancel@4
+GetAddrInfoExOverlappedResult@4
 GetAddrInfoExW@40
 GetAddrInfoW@16
+GetHostNameW@8
 GetNameInfoW@28
 InetNtopW@16
 InetPtonW@12
+ProcessSocketNotifications@28
 SetAddrInfoExA@48
 SetAddrInfoExW@48
 WPUCompleteOverlappedRequest@20
+WPUGetProviderPathEx@20
 WSAAccept@20
 WSAAddressToStringA@20
 WSAAddressToStringW@20
@@ -126,21 +131,30 @@ WSAStringToAddressW@20
 WSAUnadvertiseProvider@4
 WSAWaitForMultipleEvents@20
 WSCDeinstallProvider@8
+WSCDeinstallProviderEx@12
 WSCEnableNSProvider@8
 WSCEnumProtocols@16
+WSCEnumProtocolsEx@20
 WSCGetApplicationCategory@24
+WSCGetApplicationCategoryEx@28
 WSCGetProviderInfo@24
 WSCGetProviderPath@16
 WSCInstallNameSpace@20
+WSCInstallNameSpaceEx2@28
 WSCInstallNameSpaceEx@24
 WSCInstallProvider@20
 WSCInstallProviderAndChains@32
+WSCInstallProviderEx@28
 WSCSetApplicationCategory@28
+WSCSetApplicationCategoryEx@32
 WSCSetProviderInfo@24
 WSCUnInstallNameSpace@4
+WSCUnInstallNameSpaceEx2@8
 WSCUpdateProvider@20
+WSCUpdateProviderEx@24
 WSCWriteNameSpaceOrder@8
 WSCWriteProviderOrder@8
+WSCWriteProviderOrderEx@12
 WahCloseApcHelper@4
 WahCloseHandleHelper@4
 WahCloseNotificationHandleHelper@4
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Import propvarutil.h from wine

2021-07-20 Thread Biswapriyo Nath
Apology for my mistake. It has been fixed today in wine by Jacek Caban
in this commit[1].

[1]: 
https://source.winehq.org/git/wine.git/commitdiff/92a0405d9a2fce080e98b1a6ec09ca88bc2d243e


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] crt: Add missing exports in tbs.def

2021-07-18 Thread Biswapriyo Nath

From 272cf75ecabbc37486bc829255dcd9bcb990b3c6 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Mon, 19 Jul 2021 10:48:06 +0530
Subject: [PATCH] crt: Add missing exports in tbs.def

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/lib-common/tbs.def |  3 +++
 mingw-w64-crt/lib32/tbs.def  | 15 +++
 2 files changed, 18 insertions(+)

diff --git a/mingw-w64-crt/lib-common/tbs.def b/mingw-w64-crt/lib-common/tbs.def
index a4093d9..59b9dfe 100644
--- a/mingw-w64-crt/lib-common/tbs.def
+++ b/mingw-w64-crt/lib-common/tbs.def
@@ -11,10 +11,12 @@ GetDeviceID
 GetDeviceIDString
 GetDeviceIDWithTimeout
 Tbsi_Context_Create
+Tbsi_Create_Windows_Key
 Tbsi_FilterLog
 Tbsi_GetDeviceInfo
 Tbsi_Get_OwnerAuth
 Tbsi_Get_TCG_Log
+Tbsi_Get_TCG_Log_Ex
 Tbsi_Physical_Presence_Command
 Tbsi_Revoke_Attestation
 Tbsi_ShaHash
@@ -22,4 +24,5 @@ Tbsip_Cancel_Commands
 Tbsip_Context_Close
 Tbsip_Submit_Command
 Tbsip_Submit_Command_NonBlocking
+Tbsip_TestInterruptInformation
 Tbsip_TestMorBit
diff --git a/mingw-w64-crt/lib32/tbs.def b/mingw-w64-crt/lib32/tbs.def
index 13bdf38..1ea9f8b 100644
--- a/mingw-w64-crt/lib32/tbs.def
+++ b/mingw-w64-crt/lib32/tbs.def
@@ -5,9 +5,24 @@
 ;
 LIBRARY "tbs.dll"
 EXPORTS
+Tbsi_Create_Attestation_From_Log@36
+Tbsi_Get_TCG_Logs@24
+GetDeviceID@16
+GetDeviceIDString@16
+GetDeviceIDWithTimeout@20
 Tbsi_Context_Create@8
+Tbsi_Create_Windows_Key@4
+Tbsi_FilterLog@24
+Tbsi_GetDeviceInfo@8
+Tbsi_Get_OwnerAuth@16
 Tbsi_Get_TCG_Log@12
+Tbsi_Get_TCG_Log_Ex@12
 Tbsi_Physical_Presence_Command@20
+Tbsi_Revoke_Attestation@0
+Tbsi_ShaHash@32
 Tbsip_Cancel_Commands@4
 Tbsip_Context_Close@4
 Tbsip_Submit_Command@28
+Tbsip_Submit_Command_NonBlocking@28
+Tbsip_TestInterruptInformation@4
+Tbsip_TestMorBit@4
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] Discussion: Need new function declarations in propvarutil.h from wine

2021-07-16 Thread Biswapriyo Nath
Thank you for the fix <3


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add some missing names in psdk_inc/_dbg_common.h

2021-07-15 Thread Biswapriyo Nath
OK, I've updated the patch file according to the _rule_
From 02fe066f2699d57707de906b7be6d2024ef60ff8 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 15 Jul 2021 12:57:12 +0530
Subject: [PATCH] headers: Add some missing names in psdk_inc/_dbg_common.h

Signed-off-by: Biswapriyo Nath 
---
 .../include/psdk_inc/_dbg_common.h| 89 ++-
 1 file changed, 87 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-headers/include/psdk_inc/_dbg_common.h 
b/mingw-w64-headers/include/psdk_inc/_dbg_common.h
index c42da02..1eefc7f 100644
--- a/mingw-w64-headers/include/psdk_inc/_dbg_common.h
+++ b/mingw-w64-headers/include/psdk_inc/_dbg_common.h
@@ -192,7 +192,12 @@ extern "C" {
 DWORD64 KiUserExceptionDispatcher;
 DWORD64 StackBase;
 DWORD64 StackLimit;
-DWORD64 Reserved[5];
+DWORD BuildVersion;
+DWORD RetpolineStubFunctionTableSize;
+DWORD64 RetpolineStubFunctionTable;
+DWORD RetpolineStubOffset;
+DWORD RetpolineStubSize;
+DWORD64 Reserved0[2];
   } KDHELP64,*PKDHELP64;
 
 #ifdef _IMAGEHLP64
@@ -242,6 +247,25 @@ extern "C" {
 KDHELP64 KdHelp;
   } STACKFRAME64,*LPSTACKFRAME64;
 
+#define INLINE_FRAME_CONTEXT_INIT   0
+#define INLINE_FRAME_CONTEXT_IGNORE 0x
+
+  typedef struct _tagSTACKFRAME_EX {
+ADDRESS64 AddrPC;
+ADDRESS64 AddrReturn;
+ADDRESS64 AddrFrame;
+ADDRESS64 AddrStack;
+ADDRESS64 AddrBStore;
+PVOID FuncTableEntry;
+DWORD64 Params[4];
+WINBOOL Far;
+WINBOOL Virtual;
+DWORD64 Reserved[3];
+KDHELP64 KdHelp;
+DWORD StackFrameSize;
+DWORD InlineFrameContext;
+  } STACKFRAME_EX,*LPSTACKFRAME_EX;
+
 #ifdef _IMAGEHLP64
 #define STACKFRAME STACKFRAME64
 #define LPSTACKFRAME LPSTACKFRAME64
@@ -336,6 +360,18 @@ GetModuleBaseRoutine,PTRANSLATE_ADDRESS_ROUTINE 
TranslateAddress);
 #define SYMFLAG_VIRTUAL 0x1000
 #define SYMFLAG_THUNK 0x2000
 #define SYMFLAG_TLSREL 0x4000
+#define SYMFLAG_SLOT 0x8000
+#define SYMFLAG_ILREL 0x0001
+#define SYMFLAG_METADATA 0x0002
+#define SYMFLAG_CLR_TOKEN 0x0004
+#define SYMFLAG_NULL 0x0008
+#define SYMFLAG_FUNC_NO_RETURN 0x0010
+#define SYMFLAG_SYNTHETIC_ZEROBASE 0x0020
+#define SYMFLAG_PUBLIC_CODE 0x0040
+#define SYMFLAG_REGREL_ALIASINDIR 0x0080
+#define SYMFLAG_FIXUP_ARM64X 0x0100
+#define SYMFLAG_GLOBAL 0x0200
+#define SYMFLAG_RESET 0x8000
 
   typedef enum {
 SymNone = 0,
@@ -411,8 +447,15 @@ GetModuleBaseRoutine,PTRANSLATE_ADDRESS_ROUTINE 
TranslateAddress);
 WINBOOL TypeInfo;
 WINBOOL SourceIndexed;
 WINBOOL Publics;
+DWORD MachineType;
+DWORD Reserved;
   } IMAGEHLP_MODULE64,*PIMAGEHLP_MODULE64;
 
+  typedef struct _IMAGEHLP_MODULE64_EX {
+IMAGEHLP_MODULE64 Module;
+DWORD RegionFlags;
+  } IMAGEHLP_MODULE64_EX,*PIMAGEHLP_MODULE64_EX;
+
   typedef struct _IMAGEHLP_MODULE64W {
 DWORD SizeOfStruct;
 DWORD64 BaseOfImage;
@@ -437,8 +480,15 @@ GetModuleBaseRoutine,PTRANSLATE_ADDRESS_ROUTINE 
TranslateAddress);
 WINBOOL TypeInfo;
 WINBOOL SourceIndexed;
 WINBOOL Publics;
+DWORD MachineType;
+DWORD Reserved;
   } IMAGEHLP_MODULEW64,*PIMAGEHLP_MODULEW64;
 
+  typedef struct _IMAGEHLP_MODULEW64_EX {
+IMAGEHLP_MODULEW64 Module;
+DWORD RegionFlags;
+  } IMAGEHLP_MODULEW64_EX,*PIMAGEHLP_MODULEW64_EX;
+
 #ifdef _IMAGEHLP64
 #define IMAGEHLP_MODULE IMAGEHLP_MODULE64
 #define PIMAGEHLP_MODULE PIMAGEHLP_MODULE64
@@ -1137,6 +1187,11 @@ typedef struct _SYMSRV_INDEX_INFOW {
 ThreadInfoListStream = 17,
 HandleOperationListStream = 18,
 TokenStream = 19,
+JavaScriptDataStream = 20,
+SystemMemoryInfoStream = 21,
+ProcessVmCountersStream = 22,
+IptTraceStream = 23,
+ThreadNamesStream = 24,
 ceStreamNull = 0x8000,
 ceStreamSystemInfo = 0x8001,
 ceStreamException = 0x8002,
@@ -1283,6 +1338,25 @@ typedef struct _SYMSRV_INDEX_INFOW {
 WINBOOL ClientPointers;
   } MINIDUMP_EXCEPTION_INFORMATION64,*PMINIDUMP_EXCEPTION_INFORMATION64;
 
+  typedef enum _MINIDUMP_HANDLE_OBJECT_INFORMATION_TYPE {
+MiniHandleObjectInformationNone,
+MiniThreadInformation1,
+MiniMutantInformation1,
+MiniMutantInformation2,
+MiniProcessInformation1,
+MiniProcessInformation2,
+MiniEventInformation1,
+MiniSectionInformation1,
+MiniSemaphoreInformation1,
+MiniHandleObjectInformationTypeMax
+  } MINIDUMP_HANDLE_OBJECT_INFORMATION_TYPE;
+
+  typedef struct _MINIDUMP_HANDLE_OBJECT_INFORMATION {
+RVA NextInfoRva;
+ULONG32 InfoType;
+ULONG32 SizeOfInfo;
+  } MINIDUMP_HANDLE_OBJECT_INFORMATION;
+
   typedef struct _MINIDUMP_HANDLE_DESCRIPTOR {
 ULONG64 Handle;
 RVA TypeNameRva;
@@ -1376,12 +1450,20 @@ typedef struct _SYMSRV_INDEX_INFOW {
 IoWriteAllCallback,
 IoFinishCallback,
 ReadMemoryFailureCallback,
-SecondaryFlagsCallback
+SecondaryFlagsCallback,
+IsProcessSnapshotCallback,
+VmStartCallback,
+VmQueryCallback,
+ 

[Mingw-w64-public] [PATCH] headers: Add some missing names in psdk_inc/_dbg_common.h

2021-07-15 Thread Biswapriyo Nath
Question: This adds a condition for arm64 ad `#ifdef _ARM64_. It
matches with the WinSDK. Should it be replaced with __aarch64__ or
_M_ARM64_ etc.? As far as I can remember, there was a discussion like
that but forgot the end result of it.
From 02fe066f2699d57707de906b7be6d2024ef60ff8 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 15 Jul 2021 12:57:12 +0530
Subject: [PATCH] headers: Add some missing names in psdk_inc/_dbg_common.h

Signed-off-by: Biswapriyo Nath 
---
 .../include/psdk_inc/_dbg_common.h| 89 ++-
 1 file changed, 87 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-headers/include/psdk_inc/_dbg_common.h 
b/mingw-w64-headers/include/psdk_inc/_dbg_common.h
index c42da02..1eefc7f 100644
--- a/mingw-w64-headers/include/psdk_inc/_dbg_common.h
+++ b/mingw-w64-headers/include/psdk_inc/_dbg_common.h
@@ -192,7 +192,12 @@ extern "C" {
 DWORD64 KiUserExceptionDispatcher;
 DWORD64 StackBase;
 DWORD64 StackLimit;
-DWORD64 Reserved[5];
+DWORD BuildVersion;
+DWORD RetpolineStubFunctionTableSize;
+DWORD64 RetpolineStubFunctionTable;
+DWORD RetpolineStubOffset;
+DWORD RetpolineStubSize;
+DWORD64 Reserved0[2];
   } KDHELP64,*PKDHELP64;
 
 #ifdef _IMAGEHLP64
@@ -242,6 +247,25 @@ extern "C" {
 KDHELP64 KdHelp;
   } STACKFRAME64,*LPSTACKFRAME64;
 
+#define INLINE_FRAME_CONTEXT_INIT   0
+#define INLINE_FRAME_CONTEXT_IGNORE 0x
+
+  typedef struct _tagSTACKFRAME_EX {
+ADDRESS64 AddrPC;
+ADDRESS64 AddrReturn;
+ADDRESS64 AddrFrame;
+ADDRESS64 AddrStack;
+ADDRESS64 AddrBStore;
+PVOID FuncTableEntry;
+DWORD64 Params[4];
+WINBOOL Far;
+WINBOOL Virtual;
+DWORD64 Reserved[3];
+KDHELP64 KdHelp;
+DWORD StackFrameSize;
+DWORD InlineFrameContext;
+  } STACKFRAME_EX,*LPSTACKFRAME_EX;
+
 #ifdef _IMAGEHLP64
 #define STACKFRAME STACKFRAME64
 #define LPSTACKFRAME LPSTACKFRAME64
@@ -336,6 +360,18 @@ GetModuleBaseRoutine,PTRANSLATE_ADDRESS_ROUTINE 
TranslateAddress);
 #define SYMFLAG_VIRTUAL 0x1000
 #define SYMFLAG_THUNK 0x2000
 #define SYMFLAG_TLSREL 0x4000
+#define SYMFLAG_SLOT 0x8000
+#define SYMFLAG_ILREL 0x0001
+#define SYMFLAG_METADATA 0x0002
+#define SYMFLAG_CLR_TOKEN 0x0004
+#define SYMFLAG_NULL 0x0008
+#define SYMFLAG_FUNC_NO_RETURN 0x0010
+#define SYMFLAG_SYNTHETIC_ZEROBASE 0x0020
+#define SYMFLAG_PUBLIC_CODE 0x0040
+#define SYMFLAG_REGREL_ALIASINDIR 0x0080
+#define SYMFLAG_FIXUP_ARM64X 0x0100
+#define SYMFLAG_GLOBAL 0x0200
+#define SYMFLAG_RESET 0x8000
 
   typedef enum {
 SymNone = 0,
@@ -411,8 +447,15 @@ GetModuleBaseRoutine,PTRANSLATE_ADDRESS_ROUTINE 
TranslateAddress);
 WINBOOL TypeInfo;
 WINBOOL SourceIndexed;
 WINBOOL Publics;
+DWORD MachineType;
+DWORD Reserved;
   } IMAGEHLP_MODULE64,*PIMAGEHLP_MODULE64;
 
+  typedef struct _IMAGEHLP_MODULE64_EX {
+IMAGEHLP_MODULE64 Module;
+DWORD RegionFlags;
+  } IMAGEHLP_MODULE64_EX,*PIMAGEHLP_MODULE64_EX;
+
   typedef struct _IMAGEHLP_MODULE64W {
 DWORD SizeOfStruct;
 DWORD64 BaseOfImage;
@@ -437,8 +480,15 @@ GetModuleBaseRoutine,PTRANSLATE_ADDRESS_ROUTINE 
TranslateAddress);
 WINBOOL TypeInfo;
 WINBOOL SourceIndexed;
 WINBOOL Publics;
+DWORD MachineType;
+DWORD Reserved;
   } IMAGEHLP_MODULEW64,*PIMAGEHLP_MODULEW64;
 
+  typedef struct _IMAGEHLP_MODULEW64_EX {
+IMAGEHLP_MODULEW64 Module;
+DWORD RegionFlags;
+  } IMAGEHLP_MODULEW64_EX,*PIMAGEHLP_MODULEW64_EX;
+
 #ifdef _IMAGEHLP64
 #define IMAGEHLP_MODULE IMAGEHLP_MODULE64
 #define PIMAGEHLP_MODULE PIMAGEHLP_MODULE64
@@ -1137,6 +1187,11 @@ typedef struct _SYMSRV_INDEX_INFOW {
 ThreadInfoListStream = 17,
 HandleOperationListStream = 18,
 TokenStream = 19,
+JavaScriptDataStream = 20,
+SystemMemoryInfoStream = 21,
+ProcessVmCountersStream = 22,
+IptTraceStream = 23,
+ThreadNamesStream = 24,
 ceStreamNull = 0x8000,
 ceStreamSystemInfo = 0x8001,
 ceStreamException = 0x8002,
@@ -1283,6 +1338,25 @@ typedef struct _SYMSRV_INDEX_INFOW {
 WINBOOL ClientPointers;
   } MINIDUMP_EXCEPTION_INFORMATION64,*PMINIDUMP_EXCEPTION_INFORMATION64;
 
+  typedef enum _MINIDUMP_HANDLE_OBJECT_INFORMATION_TYPE {
+MiniHandleObjectInformationNone,
+MiniThreadInformation1,
+MiniMutantInformation1,
+MiniMutantInformation2,
+MiniProcessInformation1,
+MiniProcessInformation2,
+MiniEventInformation1,
+MiniSectionInformation1,
+MiniSemaphoreInformation1,
+MiniHandleObjectInformationTypeMax
+  } MINIDUMP_HANDLE_OBJECT_INFORMATION_TYPE;
+
+  typedef struct _MINIDUMP_HANDLE_OBJECT_INFORMATION {
+RVA NextInfoRva;
+ULONG32 InfoType;
+ULONG32 SizeOfInfo;
+  } MINIDUMP_HANDLE_OBJECT_INFORMATION;
+
   typedef struct _MINIDUMP_HANDLE_DESCRIPTOR {
 ULONG64 Handle;
 RVA TypeNameRva;
@@ -1376,12 +1450,20 @@ typedef struct _SYMSRV_INDEX_INFOW {
 IoWriteAllCallback,
 

[Mingw-w64-public] [PATCH] headers: Import propvarutil.h from wine

2021-07-13 Thread Biswapriyo Nath

From ad16f9d5f67e64860b09541a7f285e10434c4884 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Tue, 13 Jul 2021 21:03:36 +0530
Subject: [PATCH] headers: Import propvarutil.h from wine

This reverts d603db2c1544a26c7e1153208b660f1c0f0f21d7 commit.
The added functions are required for qt6-multimedia v6.2.0.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/wine-import.sh | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mingw-w64-headers/wine-import.sh b/mingw-w64-headers/wine-import.sh
index a1b80a8..f0c998f 100755
--- a/mingw-w64-headers/wine-import.sh
+++ b/mingw-w64-headers/wine-import.sh
@@ -113,6 +113,7 @@ for f in \
mscat.h \
propkeydef.h \
propkey.h \
+   propvarutil.h \
rpcsal.h \
t2embapi.h \
uiautomationcoreapi.h \
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] Discussion: Need new function declarations in propvarutil.h from wine

2021-07-12 Thread Biswapriyo Nath
Would you like to upstream that change? I am not the author of that
commit and don't know why it was added. qt6-multimedia compiles fine
without that NTSTATUS re-definition.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] Discussion: Need new function declarations in propvarutil.h from wine

2021-07-11 Thread Biswapriyo Nath
Option 1: Import propvarutil.h from wine. But that reverts this commit
propvarutil.h: Added NTSTATUS declaration (d603db2). Before that
commit propvarutil.h was imported from wine. I have compiled
qt6-multimedia without that NTSTATUS declaration.
Option 2: Add new function declarations manually.
So, which one will be better?


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add some audio format GUIDs in mfapi.h

2021-07-10 Thread Biswapriyo Nath

From e3a72d3ba627cad1b0c2c74f562b2abd22a8c703 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 10 Jul 2021 21:37:18 +0530
Subject: [PATCH] headers: Add some audio format GUIDs in mfapi.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/mfapi.h | 64 ++-
 1 file changed, 63 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-headers/include/mfapi.h 
b/mingw-w64-headers/include/mfapi.h
index 6c49764..899d15d 100644
--- a/mingw-w64-headers/include/mfapi.h
+++ b/mingw-w64-headers/include/mfapi.h
@@ -334,7 +334,12 @@ extern "C" {
 #define D3DFMT_X8R8G8B8 22
 #define D3DFMT_R5G6B5 23
 #define D3DFMT_X1R5G5B5 24
+#define D3DFMT_A2B10G10R10 31
 #define D3DFMT_P8 41
+#define D3DFMT_L8 50
+#define D3DFMT_D16 80
+#define D3DFMT_L16 81
+#define D3DFMT_A16B16G16R16F 113
 #define LOCAL_D3DFMT_DEFINES 1
 #endif
 
@@ -345,6 +350,9 @@ extern "C" {
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_RGB555, D3DFMT_X1R5G5B5);
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_RGB565, D3DFMT_R5G6B5);
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_RGB8, D3DFMT_P8);
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_L8, D3DFMT_L8);
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_L16, D3DFMT_L16);
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_D16, D3DFMT_D16);
 
 #ifdef __GNUC__
 #pragma GCC diagnostic push
@@ -359,6 +367,7 @@ extern "C" {
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_UYVY, FCC ('UYVY'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_NV11, FCC ('NV11'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_NV12, FCC ('NV12'));
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_NV21, FCC ('NV21'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_YV12, FCC ('YV12'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_I420, FCC ('I420'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_IYUV, FCC ('IYUV'));
@@ -402,9 +411,21 @@ extern "C" {
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_HEVC_ES, FCC('HEVS'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_VP80, FCC ('VP80'));
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_VP90, FCC ('VP90'));
-#if WINVER >= 0x0602
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_ORAW, FCC('ORAW'));
+#if WINVER >= _WIN32_WINNT_WIN8
   DEFINE_MEDIATYPE_GUID (MFVideoFormat_H263, FCC ('H263'));
 #endif
+#if WDK_NTDDI_VERSION >= NTDDI_WIN10
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_A2R10G10B10, D3DFMT_A2B10G10R10);
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_A16B16G16R16F, D3DFMT_A16B16G16R16F);
+#endif
+#if WDK_NTDDI_VERSION >= NTDDI_WIN10_RS3
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_VP10, FCC('VP10'));
+  DEFINE_MEDIATYPE_GUID (MFVideoFormat_AV1, FCC('AV01'));
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_FE
+DEFINE_MEDIATYPE_GUID(MFVideoFormat_Theora, FCC('theo'));
+#endif
 
 #ifdef __GNUC__
 #pragma GCC diagnostic pop
@@ -417,6 +438,11 @@ extern "C" {
 #undef D3DFMT_R5G6B5
 #undef D3DFMT_X1R5G5B5
 #undef D3DFMT_P8
+#undef D3DFMT_A2B10G10R10
+#undef D3DFMT_A16B16G16R16F
+#undef D3DFMT_L8
+#undef D3DFMT_D16
+#undef D3DFMT_L16
 #undef LOCAL_D3DFMT_DEFINES
 #endif
 
@@ -486,8 +512,44 @@ extern "C" {
   DEFINE_MEDIATYPE_GUID (MFAudioFormat_MPEG, WAVE_FORMAT_MPEG);
   DEFINE_MEDIATYPE_GUID (MFAudioFormat_AAC, WAVE_FORMAT_MPEG_HEAAC);
   DEFINE_MEDIATYPE_GUID (MFAudioFormat_ADTS, WAVE_FORMAT_MPEG_ADTS_AAC);
+  DEFINE_MEDIATYPE_GUID (MFAudioFormat_AMR_NB, WAVE_FORMAT_AMR_NB);
+  DEFINE_MEDIATYPE_GUID (MFAudioFormat_AMR_WB, WAVE_FORMAT_AMR_WB);
+  DEFINE_MEDIATYPE_GUID (MFAudioFormat_AMR_WP, WAVE_FORMAT_AMR_WP);
+#if WINVER >= _WIN32_WINNT_WINTHRESHOLD
+  DEFINE_MEDIATYPE_GUID (MFAudioFormat_FLAC, WAVE_FORMAT_FLAC);
+  DEFINE_MEDIATYPE_GUID (MFAudioFormat_ALAC, WAVE_FORMAT_ALAC);
+  DEFINE_MEDIATYPE_GUID (MFAudioFormat_Opus, WAVE_FORMAT_OPUS);
+#endif
+  DEFINE_MEDIATYPE_GUID (MFAudioFormat_Dolby_AC4, WAVE_FORMAT_DOLBY_AC4);
+
   DEFINE_GUID (MFAudioFormat_Dolby_AC3, 0xe06d802c, 0xdb46, 0x11cf, 0xb4, 
0xd1, 0x00, 0x80, 0x05f, 0x6c, 0xbb, 0xea);
   DEFINE_GUID (MFAudioFormat_Dolby_DDPlus, 0xa7fb87af, 0x2d02, 0x42fb, 0xa4, 
0xd4, 0x5, 0xcd, 0x93, 0x84, 0x3b, 0xdd);
+  DEFINE_GUID (MFAudioFormat_Dolby_AC4_V1, 0x36b7927c, 0x3d87, 0x4a2a, 0x91, 
0x96, 0xa2, 0x1a, 0xd9, 0xe9, 0x35, 0xe6);
+  DEFINE_GUID (MFAudioFormat_Dolby_AC4_V2, 0x7998b2a0, 0x17dd, 0x49b6, 0x8d, 
0xfa, 0x9b, 0x27, 0x85, 0x52, 0xa2, 0xac);
+  DEFINE_GUID (MFAudioFormat_Dolby_AC4_V1_ES, 0x9d8dccc6, 0xd156, 0x4fb8, 
0x97, 0x9c, 0xa8, 0x5b, 0xe7, 0xd2, 0x1d, 0xfa);
+  DEFINE_GUID (MFAudioFormat_Dolby_AC4_V2_ES, 0x7e58c9f9, 0xb070, 0x45f4, 
0x8c, 0xcd, 0xa9, 0x9a, 0x04, 0x17, 0xc1, 0xac);
+  DEFINE_GUID (MFAudioFormat_Vorbis, 0x8d2fd10b, 0x5841, 0x4a6b, 0x89, 0x05, 
0x58, 0x8f, 0xec, 0x1a, 0xde, 0xd9);
+  DEFINE_GUID (MFAudioFormat_DTS_RAW, 0xe06d8033, 0xdb46, 0x11cf, 0xb4, 0xd1, 
0x00, 0x80, 0x5f, 0x6c, 0xbb, 0xea);
+  DEFINE_GUID (MFAudioFormat_DTS_HD, 0xa2e58eb7, 0x0fa9, 0x48bb, 0xa4, 0x0c, 
0xfa, 0x0e, 0x15, 0x6d, 0x06, 0x45);
+  DEFINE_GUID (MFAudioFormat_DTS_XLL, 0x45b37c1b, 0x8c70, 0x4e59, 0xa7, 0xbe, 
0xa1, 0xe4, 0x2c, 0x81, 0xc8, 0x0d);
+  DEFINE_GU

[Mingw-w64-public] [PATCH] crt: Add missing exports in lib32/ksuser.def

2021-07-09 Thread Biswapriyo Nath

From 9b9fc7e02cb6ff8307d4676d227a959a59d57310 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 10 Jul 2021 10:40:02 +0530
Subject: [PATCH] crt: Add missing exports in lib32/ksuser.def

These are present in lib-common/ksuser.def.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/lib32/ksuser.def | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-crt/lib32/ksuser.def b/mingw-w64-crt/lib32/ksuser.def
index 63a6916..fe97a06 100644
--- a/mingw-w64-crt/lib32/ksuser.def
+++ b/mingw-w64-crt/lib32/ksuser.def
@@ -1,6 +1,15 @@
-LIBRARY ksuser.dll
+;
+; Definition file of ksuser.dll
+; Automatic generated by gendef
+; written by Kai Tietz 2008
+;
+LIBRARY "ksuser.dll"
 EXPORTS
+KsCreateAllocator2@12
 KsCreateAllocator@12
+KsCreateClock2@12
 KsCreateClock@12
+KsCreatePin2@16
 KsCreatePin@16
+KsCreateTopologyNode2@16
 KsCreateTopologyNode@16
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add more wave format constants in mmreg.h

2021-07-09 Thread Biswapriyo Nath

From 6331b129adf369697357967ce4e362706966d5a5 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 9 Jul 2021 12:13:32 +0530
Subject: [PATCH] headers: Add more wave format constants in mmreg.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/mmreg.h | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/mingw-w64-headers/include/mmreg.h 
b/mingw-w64-headers/include/mmreg.h
index c7ddc89..092a052 100644
--- a/mingw-w64-headers/include/mmreg.h
+++ b/mingw-w64-headers/include/mmreg.h
@@ -2008,6 +2008,7 @@ extern "C" {
 #define WAVE_FORMAT_LEAD_SPEECH 0x434c
 #define WAVE_FORMAT_LEAD_VORBIS 0x564c
 #define WAVE_FORMAT_WAVPACK_AUDIO 0x5756
+#define WAVE_FORMAT_ALAC 0x6c61
 #define WAVE_FORMAT_OGG_VORBIS_MODE_1 0x674f
 #define WAVE_FORMAT_OGG_VORBIS_MODE_2 0x6750
 #define WAVE_FORMAT_OGG_VORBIS_MODE_3 0x6751
@@ -2015,7 +2016,11 @@ extern "C" {
 #define WAVE_FORMAT_OGG_VORBIS_MODE_2_PLUS 0x6770
 #define WAVE_FORMAT_OGG_VORBIS_MODE_3_PLUS 0x6771
 #define WAVE_FORMAT_3COM_NBX 0x7000
+#define WAVE_FORMAT_OPUS 0x704f
 #define WAVE_FORMAT_FAAD_AAC 0x706d
+#define WAVE_FORMAT_AMR_NB 0x7361
+#define WAVE_FORMAT_AMR_WB 0x7362
+#define WAVE_FORMAT_AMR_WP 0x7363
 #define WAVE_FORMAT_GSM_AMR_CBR 0x7a21
 #define WAVE_FORMAT_GSM_AMR_VBR_SID 0x7a22
 #define WAVE_FORMAT_COMVERSE_INFOSYS_G723_1 0xa100
@@ -2055,6 +2060,7 @@ extern "C" {
 #define WAVE_FORMAT_NICE_G728 0xa122
 #define WAVE_FORMAT_FRACE_TELECOM_G729 0xa123
 #define WAVE_FORMAT_CODIAN 0xa124
+#define WAVE_FORMAT_DOLBY_AC4 0xac40
 #define WAVE_FORMAT_FLAC 0xf1ac
 
 #if !defined (WAVE_FORMAT_EXTENSIBLE)
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH 2/2] headers: Add more structures in processthreadsapi.h

2021-07-04 Thread Biswapriyo Nath

From 3450ef95091fc4e090b9dfd666a2d691dfcbd21f Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 4 Jul 2021 20:58:08 +0530
Subject: [PATCH 2/2] headers: Add more structures in processthreadsapi.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/processthreadsapi.h | 77 +++
 1 file changed, 77 insertions(+)

diff --git a/mingw-w64-headers/include/processthreadsapi.h 
b/mingw-w64-headers/include/processthreadsapi.h
index a486343..fe71aa8 100644
--- a/mingw-w64-headers/include/processthreadsapi.h
+++ b/mingw-w64-headers/include/processthreadsapi.h
@@ -114,6 +114,70 @@ extern "C" {
 ProcessInformationClassMax
   } PROCESS_INFORMATION_CLASS;
 
+  typedef struct _APP_MEMORY_INFORMATION {
+ULONG64 AvailableCommit;
+ULONG64 PrivateCommitUsage;
+ULONG64 PeakPrivateCommitUsage;
+ULONG64 TotalCommitUsage;
+  } APP_MEMORY_INFORMATION, *PAPP_MEMORY_INFORMATION;
+
+  typedef enum _MACHINE_ATTRIBUTES {
+UserEnabled = 0x0001,
+KernelEnabled = 0x0002,
+Wow64Container = 0x0004
+  } MACHINE_ATTRIBUTES;
+#ifndef __WIDL__
+DEFINE_ENUM_FLAG_OPERATORS(MACHINE_ATTRIBUTES);
+#endif
+
+  typedef struct _PROCESS_MACHINE_INFORMATION {
+USHORT ProcessMachine;
+USHORT Res0;
+MACHINE_ATTRIBUTES MachineAttributes;
+  } PROCESS_MACHINE_INFORMATION;
+
+#define PME_CURRENT_VERSION 1
+
+  typedef enum _PROCESS_MEMORY_EXHAUSTION_TYPE {
+PMETypeFailFastOnCommitFailure,
+PMETypeMax
+  } PROCESS_MEMORY_EXHAUSTION_TYPE, *PPROCESS_MEMORY_EXHAUSTION_TYPE;
+
+#define PME_FAILFAST_ON_COMMIT_FAIL_DISABLE 0x0
+#define PME_FAILFAST_ON_COMMIT_FAIL_ENABLE 0x1
+
+  typedef struct _PROCESS_MEMORY_EXHAUSTION_INFO {
+USHORT Version;
+USHORT Reserved;
+PROCESS_MEMORY_EXHAUSTION_TYPE Type;
+ULONG_PTR Value;
+  } PROCESS_MEMORY_EXHAUSTION_INFO, *PPROCESS_MEMORY_EXHAUSTION_INFO;
+
+#define PROCESS_POWER_THROTTLING_CURRENT_VERSION 1
+
+#define PROCESS_POWER_THROTTLING_EXECUTION_SPEED 0x1
+#define PROCESS_POWER_THROTTLING_IGNORE_TIMER_RESOLUTION 0x4
+
+#define PROCESS_POWER_THROTTLING_VALID_FLAGS 
(PROCESS_POWER_THROTTLING_EXECUTION_SPEED | 
PROCESS_POWER_THROTTLING_IGNORE_TIMER_RESOLUTION)
+
+  typedef struct _PROCESS_POWER_THROTTLING_STATE {
+ULONG Version;
+ULONG ControlMask;
+ULONG StateMask;
+  } PROCESS_POWER_THROTTLING_STATE, *PPROCESS_POWER_THROTTLING_STATE;
+
+  typedef struct PROCESS_PROTECTION_LEVEL_INFORMATION {
+DWORD ProtectionLevel;
+  } PROCESS_PROTECTION_LEVEL_INFORMATION;
+
+#define PROCESS_LEAP_SECOND_INFO_FLAG_ENABLE_SIXTY_SECOND 0x1
+#define PROCESS_LEAP_SECOND_INFO_VALID_FLAGS 
PROCESS_LEAP_SECOND_INFO_FLAG_ENABLE_SIXTY_SECOND
+
+  typedef struct _PROCESS_LEAP_SECOND_INFO {
+ULONG Flags;
+ULONG Reserved;
+  } PROCESS_LEAP_SECOND_INFO, *PPROCESS_LEAP_SECOND_INFO;
+
 #if _WIN32_WINNT >= 0x0602
   WINBASEAPI WINBOOL WINAPI GetProcessInformation (HANDLE hProcess, 
PROCESS_INFORMATION_CLASS ProcessInformationClass, LPVOID ProcessInformation, 
DWORD ProcessInformationSize);
   WINBASEAPI WINBOOL WINAPI SetProcessInformation (HANDLE hProcess, 
PROCESS_INFORMATION_CLASS ProcessInformationClass, LPVOID ProcessInformation, 
DWORD ProcessInformationSize);
@@ -230,6 +294,19 @@ extern "C" {
 #if _WIN32_WINNT >= 0x0601
   WINBASEAPI WINBOOL WINAPI SetThreadIdealProcessorEx (HANDLE hThread, 
PPROCESSOR_NUMBER lpIdealProcessor, PPROCESSOR_NUMBER lpPreviousIdealProcessor);
 #endif
+#if NTDDI_VERSION >= NTDDI_WIN10_VB
+  WINBASEAPI WINBOOL WINAPI SetProcessDynamicEHContinuationTargets (HANDLE 
Process, USHORT NumberOfTargets, PPROCESS_DYNAMIC_EH_CONTINUATION_TARGET 
Targets);
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_MN
+  typedef enum _QUEUE_USER_APC_FLAGS {
+QUEUE_USER_APC_FLAGS_NONE = 0x0,
+QUEUE_USER_APC_FLAGS_SPECIAL_USER_APC = 0x1
+  } QUEUE_USER_APC_FLAGS;
+  WINBASEAPI WINBOOL WINAPI QueueUserAPC2 (PAPCFUNC ApcRoutine, HANDLE Thread, 
ULONG_PTR Data, QUEUE_USER_APC_FLAGS Flags);
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_FE
+  WINBASEAPI WINBOOL WINAPI SetProcessDynamicEnforcedCetCompatibleRanges 
(HANDLE Process, USHORT NumberOfRanges, PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE 
Ranges);
+#endif
 
 #endif
 
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH 1/2] headers: Move Get/SetProcessInformation from winbase.h to processthredsapi.h

2021-07-04 Thread Biswapriyo Nath

From d2287eff0393519afbdbcfb6539669344c8f1fd0 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 4 Jul 2021 21:20:13 +0530
Subject: [PATCH 1/2] headers: Move Get/SetProcessInformation from winbase.h to 
processthredsapi.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/processthreadsapi.h | 20 +++
 mingw-w64-headers/include/winbase.h   | 17 
 2 files changed, 20 insertions(+), 17 deletions(-)

diff --git a/mingw-w64-headers/include/processthreadsapi.h 
b/mingw-w64-headers/include/processthreadsapi.h
index 8889151..a486343 100644
--- a/mingw-w64-headers/include/processthreadsapi.h
+++ b/mingw-w64-headers/include/processthreadsapi.h
@@ -99,8 +99,28 @@ extern "C" {
 DWORD dwProcessId;
 DWORD dwThreadId;
   } PROCESS_INFORMATION, *PPROCESS_INFORMATION, *LPPROCESS_INFORMATION;
+
+  typedef enum _PROCESS_INFORMATION_CLASS {
+ProcessMemoryPriority,
+ProcessMemoryExhaustionInfo,
+ProcessAppMemoryInfo,
+ProcessInPrivateInfo,
+ProcessPowerThrottling,
+ProcessReservedValue1,
+ProcessTelemetryCoverageInfo,
+ProcessProtectionLevelInfo,
+ProcessLeapSecondInfo,
+ProcessMachineTypeInfo,
+ProcessInformationClassMax
+  } PROCESS_INFORMATION_CLASS;
+
+#if _WIN32_WINNT >= 0x0602
+  WINBASEAPI WINBOOL WINAPI GetProcessInformation (HANDLE hProcess, 
PROCESS_INFORMATION_CLASS ProcessInformationClass, LPVOID ProcessInformation, 
DWORD ProcessInformationSize);
+  WINBASEAPI WINBOOL WINAPI SetProcessInformation (HANDLE hProcess, 
PROCESS_INFORMATION_CLASS ProcessInformationClass, LPVOID ProcessInformation, 
DWORD ProcessInformationSize);
 #endif
 
+#endif /* WINAPI_PARTITION_APP */
+
 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
 
   typedef struct _PROC_THREAD_ATTRIBUTE_LIST *PPROC_THREAD_ATTRIBUTE_LIST, 
*LPPROC_THREAD_ATTRIBUTE_LIST;
diff --git a/mingw-w64-headers/include/winbase.h 
b/mingw-w64-headers/include/winbase.h
index 08f8977..cc29351 100644
--- a/mingw-w64-headers/include/winbase.h
+++ b/mingw-w64-headers/include/winbase.h
@@ -1594,25 +1594,8 @@ extern "C" {
 #endif
 #endif
 
-#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
-  typedef enum _PROCESS_INFORMATION_CLASS {
-ProcessMemoryPriority,
-ProcessMemoryExhaustionInfo,
-ProcessAppMemoryInfo,
-ProcessInPrivateInfo,
-ProcessPowerThrottling,
-ProcessReservedValue1,
-ProcessTelemetryCoverageInfo,
-ProcessProtectionLevelInfo,
-ProcessLeapSecondInfo,
-ProcessInformationClassMax
-  } PROCESS_INFORMATION_CLASS;
-#endif
-
 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP) && _WIN32_WINNT >= 0x0602
   WINBASEAPI HMODULE WINAPI LoadPackagedLibrary (LPCWSTR lpwLibFileName, DWORD 
Reserved);
-  WINBASEAPI WINBOOL WINAPI GetProcessInformation (HANDLE hProcess, 
PROCESS_INFORMATION_CLASS ProcessInformationClass, LPVOID ProcessInformation, 
DWORD ProcessInformationSize);
-  WINBASEAPI WINBOOL WINAPI SetProcessInformation (HANDLE hProcess, 
PROCESS_INFORMATION_CLASS ProcessInformationClass, LPVOID ProcessInformation, 
DWORD ProcessInformationSize);
 #endif
 
 #if _WIN32_WINNT >= 0x0600
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add some missing names in winnt.h

2021-07-03 Thread Biswapriyo Nath

From bde6b2d5a697e119ff5722a795cf640cc6c25f25 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 3 Jul 2021 21:46:52 +0530
Subject: [PATCH] headers: Add some missing names in winnt.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winnt.h | 123 +-
 1 file changed, 121 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-headers/include/winnt.h 
b/mingw-w64-headers/include/winnt.h
index 5133c1f..9e660bc 100644
--- a/mingw-w64-headers/include/winnt.h
+++ b/mingw-w64-headers/include/winnt.h
@@ -4180,6 +4180,44 @@ __buildmemorybarrier()
   PVOID UmsCompletionList;
 } UMS_CREATE_THREAD_ATTRIBUTES,*PUMS_CREATE_THREAD_ATTRIBUTES;
 
+#define COMPONENT_KTM 0x01
+#define COMPONENT_VALID_FLAGS COMPONENT_KTM
+
+typedef struct _COMPONENT_FILTER {
+  DWORD ComponentFlags;
+} COMPONENT_FILTER,*PCOMPONENT_FILTER;
+
+#define DYNAMIC_EH_CONTINUATION_TARGET_ADD 0x0001
+#define DYNAMIC_EH_CONTINUATION_TARGET_PROCESSED 0x0002
+
+typedef struct _PROCESS_DYNAMIC_EH_CONTINUATION_TARGET {
+  ULONG_PTR TargetAddress;
+  ULONG_PTR Flags;
+} 
PROCESS_DYNAMIC_EH_CONTINUATION_TARGET,*PPROCESS_DYNAMIC_EH_CONTINUATION_TARGET;
+
+typedef struct _PROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION {
+  WORD NumberOfTargets;
+  WORD Reserved;
+  DWORD Reserved2;
+  PPROCESS_DYNAMIC_EH_CONTINUATION_TARGET Targets;
+} 
PROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION,*PPROCESS_DYNAMIC_EH_CONTINUATION_TARGETS_INFORMATION;
+
+#define DYNAMIC_ENFORCED_ADDRESS_RANGE_ADD 0x0001
+#define DYNAMIC_ENFORCED_ADDRESS_RANGE_PROCESSED 0x0002
+
+typedef struct _PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE {
+  ULONG_PTR BaseAddress;
+  SIZE_T Size;
+  DWORD Flags;
+} 
PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE,*PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE;
+
+typedef struct _PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION {
+  WORD NumberOfRanges;
+  WORD Reserved;
+  DWORD Reserved2;
+  PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGE Ranges;
+} 
PROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION,*PPROCESS_DYNAMIC_ENFORCED_ADDRESS_RANGES_INFORMATION;
+
 typedef struct _QUOTA_LIMITS {
   SIZE_T PagedPoolLimit;
   SIZE_T NonPagedPoolLimit;
@@ -4252,6 +4290,8 @@ __buildmemorybarrier()
   ProcessPayloadRestrictionPolicy,
   ProcessChildProcessPolicy,
   ProcessSideChannelIsolationPolicy,
+  ProcessUserShadowStackPolicy,
+  ProcessRedirectionTrustPolicy,
   MaxProcessMitigationPolicy
 } PROCESS_MITIGATION_POLICY,*PPROCESS_MITIGATION_POLICY;
 
@@ -4426,6 +4466,36 @@ __buildmemorybarrier()
   };
 } PROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY, 
*PPROCESS_MITIGATION_SIDE_CHANNEL_ISOLATION_POLICY;
 
+typedef struct _PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY {
+  __C89_NAMELESS union {
+DWORD Flags;
+__C89_NAMELESS struct {
+  DWORD EnableUserShadowStack : 1;
+  DWORD AuditUserShadowStack : 1;
+  DWORD SetContextIpValidation : 1;
+  DWORD AuditSetContextIpValidation : 1;
+  DWORD EnableUserShadowStackStrictMode : 1;
+  DWORD BlockNonCetBinaries : 1;
+  DWORD BlockNonCetBinariesNonEhcont : 1;
+  DWORD AuditBlockNonCetBinaries : 1;
+  DWORD CetDynamicApisOutOfProcOnly : 1;
+  DWORD SetContextIpValidationRelaxedMode : 1;
+  DWORD ReservedFlags : 22;
+};
+  };
+} PROCESS_MITIGATION_USER_SHADOW_STACK_POLICY, 
*PPROCESS_MITIGATION_USER_SHADOW_STACK_POLICY;
+
+typedef struct _PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY {
+  __C89_NAMELESS union {
+DWORD Flags;
+__C89_NAMELESS struct {
+  DWORD EnforceRedirectionTrust : 1;
+  DWORD AuditRedirectionTrust : 1;
+  DWORD ReservedFlags : 30;
+};
+  };
+} PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY, 
*PPROCESS_MITIGATION_REDIRECTION_TRUST_POLICY;
+
 typedef struct _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION {
   LARGE_INTEGER TotalUserTime;
   LARGE_INTEGER TotalKernelTime;
@@ -4758,6 +4828,16 @@ __buildmemorybarrier()
   DWORD64 CycleTime;
 } 
SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION,*PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION;
 
+typedef struct _SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION {
+  DWORD Machine : 16;
+  DWORD KernelMode : 1;
+  DWORD UserMode : 1;
+  DWORD Native : 1;
+  DWORD Process : 1;
+  DWORD WoW64Container : 1;
+  DWORD ReservedZero0 : 11;
+} 
SYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION,*PSYSTEM_SUPPORTED_PROCESSOR_ARCHITECTURES_INFORMATION;
+
 #define PROCESSOR_INTEL_386 386
 #define PROCESSOR_INTEL_486 486
 #define PROCESSOR_INTEL_PENTIUM 586
@@ -4834,19 +4914,58 @@ __buildmemorybarrier()
 #define PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE 31
 #define PF_RDTSCP_INSTRUCTION_AVAILABLE 32
 #define PF_RDPID_INSTRUCTION_AVAILABLE 33
+#define

Re: [Mingw-w64-public] [PATCH] headers: Add missing names in winsvc.h

2021-06-29 Thread Biswapriyo Nath
Same mistake as previous. How did you catch those warnings? I copied
the modified header to /mingw64/x86_64-w43-mingw32/include folder then
compile a simple file with `#include `. But gcc and clang
shows nothing. I did something wrong but can't figure it out.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add missing names in winsvc.h

2021-06-29 Thread Biswapriyo Nath

From 152155ec38dd68f1a59880dd4f7b410756325eb0 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Tue, 29 Jun 2021 15:41:41 +0530
Subject: [PATCH] headers: Add missing names in winsvc.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winsvc.h | 113 +
 1 file changed, 113 insertions(+)

diff --git a/mingw-w64-headers/include/winsvc.h 
b/mingw-w64-headers/include/winsvc.h
index 182db88..fb66e5b 100644
--- a/mingw-w64-headers/include/winsvc.h
+++ b/mingw-w64-headers/include/winsvc.h
@@ -48,6 +48,12 @@ extern "C" {
 #define SERVICE_CONTROL_HARDWAREPROFILECHANGE 0x000C
 #define SERVICE_CONTROL_POWEREVENT 0x000D
 #define SERVICE_CONTROL_SESSIONCHANGE 0x000E
+#define SERVICE_CONTROL_PRESHUTDOWN 0x000F
+#define SERVICE_CONTROL_TIMECHANGE 0x0010
+#define SERVICE_CONTROL_USER_LOGOFF 0x0011
+#define SERVICE_CONTROL_TRIGGEREVENT 0x0020
+#define SERVICE_CONTROL_LOWRESOURCES 0x0060
+#define SERVICE_CONTROL_SYSTEMLOWRESOURCES 0x0061
 
 #define SERVICE_STOPPED 0x0001
 #define SERVICE_START_PENDING 0x0002
@@ -65,6 +71,12 @@ extern "C" {
 #define SERVICE_ACCEPT_HARDWAREPROFILECHANGE 0x0020
 #define SERVICE_ACCEPT_POWEREVENT 0x0040
 #define SERVICE_ACCEPT_SESSIONCHANGE 0x0080
+#define SERVICE_ACCEPT_PRESHUTDOWN 0x0100
+#define SERVICE_ACCEPT_TIMECHANGE 0x0200
+#define SERVICE_ACCEPT_TRIGGEREVENT 0x0400
+#define SERVICE_ACCEPT_USER_LOGOFF 0x0800
+#define SERVICE_ACCEPT_LOWRESOURCES 0x2000
+#define SERVICE_ACCEPT_SYSTEMLOWRESOURCES 0x4000
 
 #define SC_MANAGER_CONNECT 0x0001
 #define SC_MANAGER_CREATE_SERVICE 0x0002
@@ -91,6 +103,107 @@ extern "C" {
 
 #define SERVICE_CONFIG_DESCRIPTION 1
 #define SERVICE_CONFIG_FAILURE_ACTIONS 2
+#define SERVICE_CONFIG_DELAYED_AUTO_START_INFO 3
+#define SERVICE_CONFIG_FAILURE_ACTIONS_FLAG 4
+#define SERVICE_CONFIG_SERVICE_SID_INFO 5
+#define SERVICE_CONFIG_REQUIRED_PRIVILEGES_INFO 6
+#define SERVICE_CONFIG_PRESHUTDOWN_INFO 7
+#define SERVICE_CONFIG_TRIGGER_INFO 8
+#define SERVICE_CONFIG_PREFERRED_NODE 9
+#define SERVICE_CONFIG_LAUNCH_PROTECTED 12
+
+#define SERVICE_NOTIFY_STATUS_CHANGE_1 1
+#define SERVICE_NOTIFY_STATUS_CHANGE_2 2
+
+#define SERVICE_NOTIFY_STATUS_CHANGE SERVICE_NOTIFY_STATUS_CHANGE_2
+
+#define SERVICE_NOTIFY_STOPPED 0x0001
+#define SERVICE_NOTIFY_START_PENDING 0x0002
+#define SERVICE_NOTIFY_STOP_PENDING 0x0004
+#define SERVICE_NOTIFY_RUNNING 0x0008
+#define SERVICE_NOTIFY_CONTINUE_PENDING 0x0010
+#define SERVICE_NOTIFY_PAUSE_PENDING 0x0020
+#define SERVICE_NOTIFY_PAUSED 0x0040
+#define SERVICE_NOTIFY_CREATED 0x0080
+#define SERVICE_NOTIFY_DELETED 0x0100
+#define SERVICE_NOTIFY_DELETE_PENDING 0x0200
+
+#define SERVICE_STOP_REASON_FLAG_MIN 0x
+#define SERVICE_STOP_REASON_FLAG_UNPLANNED 0x1000
+#define SERVICE_STOP_REASON_FLAG_CUSTOM 0x2000
+#define SERVICE_STOP_REASON_FLAG_PLANNED 0x4000
+#define SERVICE_STOP_REASON_FLAG_MAX 0x8000
+
+#define SERVICE_STOP_REASON_MAJOR_MIN 0x
+#define SERVICE_STOP_REASON_MAJOR_OTHER 0x0001
+#define SERVICE_STOP_REASON_MAJOR_HARDWARE 0x0002
+#define SERVICE_STOP_REASON_MAJOR_OPERATINGSYSTEM 0x0003
+#define SERVICE_STOP_REASON_MAJOR_SOFTWARE 0x0004
+#define SERVICE_STOP_REASON_MAJOR_APPLICATION 0x0005
+#define SERVICE_STOP_REASON_MAJOR_NONE 0x0006
+#define SERVICE_STOP_REASON_MAJOR_MAX 0x0007
+#define SERVICE_STOP_REASON_MAJOR_MIN_CUSTOM 0x0040
+#define SERVICE_STOP_REASON_MAJOR_MAX_CUSTOM 0x00ff
+
+#define SERVICE_STOP_REASON_MINOR_MIN 0x
+#define SERVICE_STOP_REASON_MINOR_OTHER 0x0001
+#define SERVICE_STOP_REASON_MINOR_MAINTENANCE 0x0002
+#define SERVICE_STOP_REASON_MINOR_INSTALLATION 0x0003
+#define SERVICE_STOP_REASON_MINOR_UPGRADE 0x0004
+#define SERVICE_STOP_REASON_MINOR_RECONFIG 0x0005
+#define SERVICE_STOP_REASON_MINOR_HUNG 0x0006
+#define SERVICE_STOP_REASON_MINOR_UNSTABLE 0x0007
+#define SERVICE_STOP_REASON_MINOR_DISK 0x0008
+#define SERVICE_STOP_REASON_MINOR_NETWORKCARD 0x0009
+#define SERVICE_STOP_REASON_MINOR_ENVIRONMENT 0x000a
+#define SERVICE_STOP_REASON_MINOR_HARDWARE_DRIVER 0x000b
+#define SERVICE_STOP_REASON_MINOR_OTHERDRIVER 0x000c
+#define SERVICE_STOP_REASON_MINOR_SERVICEPACK 0x000d
+#define SERVICE_STOP_REASON_MINOR_SOFTWARE_UPDATE 0x000e
+#define SERVICE_STOP_REASON_MINOR_SECURITYFIX 0x000f
+#define SERVICE_STOP_REASON_MINOR_SECURITY 0x0010
+#define SERVICE_STOP_REASON_MINOR_NETWORK_CONNECTIVITY 0x0011
+#define SERVICE_STOP_REASON_MINOR_WMI 0x0012
+#define SERVICE_STOP_REASON_MINOR_SERVICEPACK_UNINSTALL 0x0013
+#define SERVICE_STOP_REASON_MINOR_SOFTWARE_UPDATE_UNINSTALL 0x0014
+#define SERVICE_STOP_REASON_MINOR_SECURITYFIX_UNINSTALL 0x0015
+#define SERVICE_STOP_REASON_MINOR_MMC 0x0016
+#define SERVICE_STOP_REASON_MINOR_NONE 0x0017
+#define SERVICE_STOP_REASO

Re: [Mingw-w64-public] [PATCH] headers: Add missing names in wininet.h

2021-06-28 Thread Biswapriyo Nath
Interesting, gcc does not show any error with that change. Patch updated.
From 6d0e9b120280be3978688b7b42962f80d665a087 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Tue, 29 Jun 2021 00:09:31 +0530
Subject: [PATCH] headers: Add missing names in wininet.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/wininet.h | 98 -
 1 file changed, 97 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-headers/include/wininet.h 
b/mingw-w64-headers/include/wininet.h
index bb19d65..61c3a11 100644
--- a/mingw-w64-headers/include/wininet.h
+++ b/mingw-w64-headers/include/wininet.h
@@ -61,6 +61,9 @@ extern "C" {
 #define INTERNET_REQFLAG_CACHE_WRITE_DISABLED 0x0040
 #define INTERNET_REQFLAG_NET_TIMEOUT 0x0080
 
+#define INTERNET_FLAG_IDN_DIRECT 0x0001
+#define INTERNET_FLAG_IDN_PROXY 0x0002
+
 #define INTERNET_FLAG_RELOAD 0x8000
 
 #define INTERNET_FLAG_RAW_DATA 0x4000
@@ -104,6 +107,7 @@ extern "C" {
 #define INTERNET_FLAG_TRANSFER_BINARY FTP_TRANSFER_TYPE_BINARY
 
 #define SECURITY_INTERNET_MASK (INTERNET_FLAG_IGNORE_CERT_CN_INVALID | 
INTERNET_FLAG_IGNORE_CERT_DATE_INVALID | INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS 
| INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP)
+#define SECURITY_IGNORE_ERROR_MASK (INTERNET_FLAG_IGNORE_CERT_CN_INVALID | 
INTERNET_FLAG_IGNORE_CERT_DATE_INVALID | SECURITY_FLAG_IGNORE_UNKNOWN_CA | 
SECURITY_FLAG_IGNORE_REVOCATION | SECURITY_FLAG_IGNORE_WEAK_SIGNATURE)
 #define INTERNET_FLAGS_MASK (INTERNET_FLAG_RELOAD | INTERNET_FLAG_RAW_DATA | 
INTERNET_FLAG_EXISTING_CONNECT | INTERNET_FLAG_ASYNC | INTERNET_FLAG_PASSIVE | 
INTERNET_FLAG_NO_CACHE_WRITE | INTERNET_FLAG_MAKE_PERSISTENT | 
INTERNET_FLAG_FROM_CACHE | INTERNET_FLAG_SECURE | INTERNET_FLAG_KEEP_CONNECTION 
| INTERNET_FLAG_NO_AUTO_REDIRECT | INTERNET_FLAG_READ_PREFETCH | 
INTERNET_FLAG_NO_COOKIES | INTERNET_FLAG_NO_AUTH | 
INTERNET_FLAG_CACHE_IF_NET_FAIL | SECURITY_INTERNET_MASK | 
INTERNET_FLAG_RESYNCHRONIZE | INTERNET_FLAG_HYPERLINK | INTERNET_FLAG_NO_UI | 
INTERNET_FLAG_PRAGMA_NOCACHE | INTERNET_FLAG_CACHE_ASYNC | 
INTERNET_FLAG_FORMS_SUBMIT | INTERNET_FLAG_NEED_FILE | 
INTERNET_FLAG_RESTRICTED_ZONE | INTERNET_FLAG_TRANSFER_BINARY | 
INTERNET_FLAG_TRANSFER_ASCII | INTERNET_FLAG_FWD_BACK | INTERNET_FLAG_BGUPDATE)
 
 #define INTERNET_ERROR_MASK_INSERT_CDROM 0x1
@@ -476,6 +480,7 @@ extern "C" {
 #define INTERNET_OPTION_ERROR_MASK 62
 #define INTERNET_OPTION_FROM_CACHE_TIMEOUT 63
 #define INTERNET_OPTION_BYPASS_EDITED_ENTRY 64
+#define INTERNET_OPTION_HTTP_DECODING 65
 #define INTERNET_OPTION_DIAGNOSTIC_SOCKET_INFO 67
 #define INTERNET_OPTION_CODEPAGE 68
 #define INTERNET_OPTION_CACHE_TIMESTAMPS 69
@@ -507,11 +512,47 @@ extern "C" {
 
 #define INTERNET_OPTION_DATAFILE_EXT 96
 
+#define INTERNET_OPTION_CODEPAGE_PATH 100
+#define INTERNET_OPTION_CODEPAGE_EXTRA 101
+#define INTERNET_OPTION_IDN 102
+#define INTERNET_OPTION_MAX_CONNS_PER_PROXY 103
+#define INTERNET_OPTION_SUPPRESS_SERVER_AUTH 104
+#define INTERNET_OPTION_SERVER_CERT_CHAIN_CONTEXT 105
+
+#define INTERNET_OPTION_ENABLE_REDIRECT_CACHE_READ 122
+
+#define INTERNET_OPTION_COMPRESSED_CONTENT_LENGTH 147
+#define INTERNET_OPTION_ENABLE_HTTP_PROTOCOL 148
+#define INTERNET_OPTION_HTTP_PROTOCOL_USED 149
+
+#define INTERNET_OPTION_ENCODE_EXTRA 155
+
+#define INTERNET_OPTION_HSTS 157
+
+#define INTERNET_OPTION_ENTERPRISE_CONTEXT 159
+
+#define INTERNET_OPTION_CONNECTION_FILTER 162
+#define INTERNET_OPTION_REFERER_TOKEN_BINDING_HOSTNAME 163
+
+#define INTERNET_OPTION_TOKEN_BINDING_PUBLIC_KEY 181
+
+#define INTERNET_OPTION_COOKIES_SAME_SITE_LEVEL 187
+
 #define INTERNET_FIRST_OPTION INTERNET_OPTION_CALLBACK
 #define INTERNET_LAST_OPTION INTERNET_OPTION_DATAFILE_EXT
 
 #define INTERNET_PRIORITY_FOREGROUND 1000
 
+#define HTTP_COOKIES_SAME_SITE_LEVEL_UNKNOWN 0x0
+#define HTTP_COOKIES_SAME_SITE_LEVEL_SAME_SITE 0x1
+#define HTTP_COOKIES_SAME_SITE_LEVEL_CROSS_SITE_LAX 0x2
+#define HTTP_COOKIES_SAME_SITE_LEVEL_CROSS_SITE 0x3
+
+#define HTTP_COOKIES_SAME_SITE_LEVEL_MAX 
HTTP_COOKIES_SAME_SITE_LEVEL_CROSS_SITE
+
+#define HTTP_PROTOCOL_FLAG_HTTP2 0x2
+#define HTTP_PROTOCOL_MASK HTTP_PROTOCOL_FLAG_HTTP2
+
 #define INTERNET_HANDLE_TYPE_INTERNET 1
 #define INTERNET_HANDLE_TYPE_CONNECT_FTP 2
 #define INTERNET_HANDLE_TYPE_CONNECT_GOPHER 3
@@ -530,6 +571,7 @@ extern "C" {
 #define AUTH_FLAG_DISABLE_NEGOTIATE 0x0001
 #define AUTH_FLAG_ENABLE_NEGOTIATE 0x0002
 #define AUTH_FLAG_DISABLE_BASIC_CLEARCHANNEL 0x0004
+#define AUTH_FLAG_DISABLE_SERVER_AUTH 0x0008
 
 #define SECURITY_FLAG_SECURE 0x0001
 #define SECURITY_FLAG_STRENGTH_WEAK 0x1000
@@ -552,6 +594,7 @@ extern "C" {
 #define SECURITY_FLAG_IGNORE_REVOCATION 0x0080
 #define SECURITY_FLAG_IGNORE_UNKNOWN_CA 0x0100
 #define SECURITY_FLAG_IGNORE_WRONG_USAGE 0x0200
+#define SECURITY_FLAG_IGNORE_WEAK_SIGNATURE 0x0001
 
 #define SECURITY_FLAG_IGNORE_CERT_CN_INVALID 
INTERNET_FLAG_IGNORE_CER

[Mingw-w64-public] [PATCH] headers: Add missing names in wininet.h

2021-06-27 Thread Biswapriyo Nath

From 93db93c912ab8a120766cbf8470aed6b2c207cef Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 27 Jun 2021 21:25:27 +0530
Subject: [PATCH] headers: Add missing names in wininet.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/wininet.h | 100 +++-
 1 file changed, 99 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-headers/include/wininet.h 
b/mingw-w64-headers/include/wininet.h
index bb19d65..221b06f 100644
--- a/mingw-w64-headers/include/wininet.h
+++ b/mingw-w64-headers/include/wininet.h
@@ -61,6 +61,9 @@ extern "C" {
 #define INTERNET_REQFLAG_CACHE_WRITE_DISABLED 0x0040
 #define INTERNET_REQFLAG_NET_TIMEOUT 0x0080
 
+#define INTERNET_FLAG_IDN_DIRECT 0x0001
+#define INTERNET_FLAG_IDN_PROXY 0x0002
+
 #define INTERNET_FLAG_RELOAD 0x8000
 
 #define INTERNET_FLAG_RAW_DATA 0x4000
@@ -104,6 +107,7 @@ extern "C" {
 #define INTERNET_FLAG_TRANSFER_BINARY FTP_TRANSFER_TYPE_BINARY
 
 #define SECURITY_INTERNET_MASK (INTERNET_FLAG_IGNORE_CERT_CN_INVALID | 
INTERNET_FLAG_IGNORE_CERT_DATE_INVALID | INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS 
| INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP)
+#define SECURITY_IGNORE_ERROR_MASK (INTERNET_FLAG_IGNORE_CERT_CN_INVALID | 
INTERNET_FLAG_IGNORE_CERT_DATE_INVALID | SECURITY_FLAG_IGNORE_UNKNOWN_CA | 
SECURITY_FLAG_IGNORE_REVOCATION | SECURITY_FLAG_IGNORE_WEAK_SIGNATURE)
 #define INTERNET_FLAGS_MASK (INTERNET_FLAG_RELOAD | INTERNET_FLAG_RAW_DATA | 
INTERNET_FLAG_EXISTING_CONNECT | INTERNET_FLAG_ASYNC | INTERNET_FLAG_PASSIVE | 
INTERNET_FLAG_NO_CACHE_WRITE | INTERNET_FLAG_MAKE_PERSISTENT | 
INTERNET_FLAG_FROM_CACHE | INTERNET_FLAG_SECURE | INTERNET_FLAG_KEEP_CONNECTION 
| INTERNET_FLAG_NO_AUTO_REDIRECT | INTERNET_FLAG_READ_PREFETCH | 
INTERNET_FLAG_NO_COOKIES | INTERNET_FLAG_NO_AUTH | 
INTERNET_FLAG_CACHE_IF_NET_FAIL | SECURITY_INTERNET_MASK | 
INTERNET_FLAG_RESYNCHRONIZE | INTERNET_FLAG_HYPERLINK | INTERNET_FLAG_NO_UI | 
INTERNET_FLAG_PRAGMA_NOCACHE | INTERNET_FLAG_CACHE_ASYNC | 
INTERNET_FLAG_FORMS_SUBMIT | INTERNET_FLAG_NEED_FILE | 
INTERNET_FLAG_RESTRICTED_ZONE | INTERNET_FLAG_TRANSFER_BINARY | 
INTERNET_FLAG_TRANSFER_ASCII | INTERNET_FLAG_FWD_BACK | INTERNET_FLAG_BGUPDATE)
 
 #define INTERNET_ERROR_MASK_INSERT_CDROM 0x1
@@ -476,6 +480,7 @@ extern "C" {
 #define INTERNET_OPTION_ERROR_MASK 62
 #define INTERNET_OPTION_FROM_CACHE_TIMEOUT 63
 #define INTERNET_OPTION_BYPASS_EDITED_ENTRY 64
+#define INTERNET_OPTION_HTTP_DECODING 65
 #define INTERNET_OPTION_DIAGNOSTIC_SOCKET_INFO 67
 #define INTERNET_OPTION_CODEPAGE 68
 #define INTERNET_OPTION_CACHE_TIMESTAMPS 69
@@ -507,11 +512,49 @@ extern "C" {
 
 #define INTERNET_OPTION_DATAFILE_EXT 96
 
+#define INTERNET_OPTION_CODEPAGE_PATH 100
+#define INTERNET_OPTION_CODEPAGE_EXTRA 101
+#define INTERNET_OPTION_IDN 102
+#define INTERNET_OPTION_MAX_CONNS_PER_PROXY 103
+#define INTERNET_OPTION_SUPPRESS_SERVER_AUTH 104
+#define INTERNET_OPTION_SERVER_CERT_CHAIN_CONTEXT 105
+
+#define INTERNET_OPTION_ENABLE_REDIRECT_CACHE_READ 122
+
+#define INTERNET_OPTION_COMPRESSED_CONTENT_LENGTH 147
+#define INTERNET_OPTION_ENABLE_HTTP_PROTOCOL 148
+#define INTERNET_OPTION_HTTP_PROTOCOL_USED 149
+
+#define INTERNET_OPTION_ENCODE_EXTRA 155
+
+#define INTERNET_OPTION_HSTS 157
+
+#define INTERNET_OPTION_ENTERPRISE_CONTEXT 159
+
+#define INTERNET_OPTION_CONNECTION_FILTER 162
+#define INTERNET_OPTION_REFERER_TOKEN_BINDING_HOSTNAME 163
+
+#define INTERNET_OPTION_TOKEN_BINDING_PUBLIC_KEY 181
+
+#define INTERNET_OPTION_COOKIES_SAME_SITE_LEVEL 187
+
+#define INTERNET_OPTION_ENABLE_REDIRECT_CACHE_READ 122
+
 #define INTERNET_FIRST_OPTION INTERNET_OPTION_CALLBACK
 #define INTERNET_LAST_OPTION INTERNET_OPTION_DATAFILE_EXT
 
 #define INTERNET_PRIORITY_FOREGROUND 1000
 
+#define HTTP_COOKIES_SAME_SITE_LEVEL_UNKNOWN 0x0
+#define HTTP_COOKIES_SAME_SITE_LEVEL_SAME_SITE 0x1
+#define HTTP_COOKIES_SAME_SITE_LEVEL_CROSS_SITE_LAX 0x2
+#define HTTP_COOKIES_SAME_SITE_LEVEL_CROSS_SITE 0x3
+
+#define HTTP_COOKIES_SAME_SITE_LEVEL_MAX 
HTTP_COOKIES_SAME_SITE_LEVEL_CROSS_SITE
+
+#define HTTP_PROTOCOL_FLAG_HTTP2 0x2
+#define HTTP_PROTOCOL_MASK HTTP_PROTOCOL_FLAG_HTTP2
+
 #define INTERNET_HANDLE_TYPE_INTERNET 1
 #define INTERNET_HANDLE_TYPE_CONNECT_FTP 2
 #define INTERNET_HANDLE_TYPE_CONNECT_GOPHER 3
@@ -530,6 +573,7 @@ extern "C" {
 #define AUTH_FLAG_DISABLE_NEGOTIATE 0x0001
 #define AUTH_FLAG_ENABLE_NEGOTIATE 0x0002
 #define AUTH_FLAG_DISABLE_BASIC_CLEARCHANNEL 0x0004
+#define AUTH_FLAG_DISABLE_SERVER_AUTH 0x0008
 
 #define SECURITY_FLAG_SECURE 0x0001
 #define SECURITY_FLAG_STRENGTH_WEAK 0x1000
@@ -552,6 +596,7 @@ extern "C" {
 #define SECURITY_FLAG_IGNORE_REVOCATION 0x0080
 #define SECURITY_FLAG_IGNORE_UNKNOWN_CA 0x0100
 #define SECURITY_FLAG_IGNORE_WRONG_USAGE 0x0200
+#define SECURITY_FLAG_IGNORE_WEAK_SIGNATURE 0x0001
 
 #define SECURITY_FLAG_IGNORE_CERT_CN_INVALID 
INTERNET_FLAG_IGNORE_CER

[Mingw-w64-public] [PATCH] headers: Add missing names in winevt.h

2021-06-26 Thread Biswapriyo Nath

From b513617123950018bf75f0cae790b0576e9ad157 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 26 Jun 2021 19:04:26 +0530
Subject: [PATCH] headers: Add missing names in winevt.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winevt.h | 21 ++---
 1 file changed, 18 insertions(+), 3 deletions(-)

diff --git a/mingw-w64-headers/include/winevt.h 
b/mingw-w64-headers/include/winevt.h
index 90be0cd..add920b 100644
--- a/mingw-w64-headers/include/winevt.h
+++ b/mingw-w64-headers/include/winevt.h
@@ -3,14 +3,24 @@
  * This file is part of the mingw-w64 runtime package.
  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  */
-#ifndef _INC_WINEVT
-#define _INC_WINEVT
+#ifndef __WINEVT_H__
+#define __WINEVT_H__
+
+#include 
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+
 #if (_WIN32_WINNT >= 0x0600)
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
+#define EVT_READ_ACCESS 0x1
+#define EVT_WRITE_ACCESS 0x2
+#define EVT_CLEAR_ACCESS 0x4
+#define EVT_ALL_ACCESS 0x7
+
 typedef enum _EVT_CHANNEL_CLOCK_TYPE {
   EvtChannelClockTypeSystemTime   = 0,
   EvtChannelClockTypeQPC  = 1 
@@ -266,6 +276,9 @@ typedef enum _EVT_VARIANT_TYPE {
   EvtVarTypeEvtXml   = 35 
 } EVT_VARIANT_TYPE;
 
+#define EVT_VARIANT_TYPE_MASK 0x7f
+#define EVT_VARIANT_TYPE_ARRAY 128
+
 typedef HANDLE EVT_HANDLE;
 typedef HANDLE EVT_OBJECT_ARRAY_PROPERTY_HANDLE;
 
@@ -572,5 +585,7 @@ WINBOOL WINAPI EvtUpdateBookmark(
 #ifdef __cplusplus
 }
 #endif
+
 #endif /*(_WIN32_WINNT >= 0x0600)*/
-#endif /*_INC_TDH*/
+#endif /* WINAPI_PARTITION_DESKTOP */
+#endif /*__WINEVT_H__ */
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] Revert "headers: Move IP_MREQ from _ip_mreq1.h to ws2ipdef.h."

2021-06-26 Thread Biswapriyo Nath
Thanks for the explanation. Two questions.

1. If I include winsock.h for ip_mreq it compiles. But if I include
winsock2.h for ip_mreq it does not compile. Does winsock2.h need
_ip_mreq1.h to be included?
2. If I include winsock.h or winsock2.h for ipv6_mreq neither works.
Does ipv6_mreq need same treatment as ip_mreq?

But according to MS docs[1][2] ws2tcpip.h should be include for
ip_mreq and ipv6_mreq both. I was just testing the aforementioned
cases.

[1]: 
https://docs.microsoft.com/en-us/windows/win32/api/ws2ipdef/ns-ws2ipdef-ip_mreq
[2]: 
https://docs.microsoft.com/en-us/windows/win32/api/ws2ipdef/ns-ws2ipdef-ipv6_mreq


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] Revert "headers: Move IP_MREQ from _ip_mreq1.h to ws2ipdef.h."

2021-06-25 Thread Biswapriyo Nath
Forgot the patch file.
From 57fb78c373e609712ae159ac7b9ed51259afaa4b Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 26 Jun 2021 10:27:17 +0530
Subject: [PATCH] Revert "headers: Move IP_MREQ from _ip_mreq1.h to ws2ipdef.h."

This reverts commit 0c7108c439fcf349ec172843b022ccec5cef5da4
This revert fixes the build of SDL_net for x86 architecture.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/psdk_inc/_ip_mreq1.h | 9 +
 mingw-w64-headers/include/ws2ipdef.h   | 5 -
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/mingw-w64-headers/include/psdk_inc/_ip_mreq1.h 
b/mingw-w64-headers/include/psdk_inc/_ip_mreq1.h
index 5ca7bb3..1840ecb 100644
--- a/mingw-w64-headers/include/psdk_inc/_ip_mreq1.h
+++ b/mingw-w64-headers/include/psdk_inc/_ip_mreq1.h
@@ -4,9 +4,18 @@
  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  */
 
+/*
+ * Shared data types between winsock and winsock2
+ */
+
 #ifndef _MINGW_IP_MREQ1_H
 #define _MINGW_IP_MREQ1_H
 
 #include 
 
+typedef struct ip_mreq {
+  struct in_addr imr_multiaddr;
+  struct in_addr imr_interface;
+} IP_MREQ, *PIP_MREQ;
+
 #endif /* _MINGW_IP_MREQ1_H */
diff --git a/mingw-w64-headers/include/ws2ipdef.h 
b/mingw-w64-headers/include/ws2ipdef.h
index 188b2f4..d440bbc 100644
--- a/mingw-w64-headers/include/ws2ipdef.h
+++ b/mingw-w64-headers/include/ws2ipdef.h
@@ -192,11 +192,6 @@ typedef enum _MULTICAST_MODE_TYPE {
   MCAST_EXCLUDE
 } MULTICAST_MODE_TYPE;
 
-typedef struct ip_mreq {
-  IN_ADDR imr_multiaddr;
-  IN_ADDR imr_interface;
-} IP_MREQ, *PIP_MREQ;
-
 typedef struct ip_mreq_source {
   IN_ADDR imr_multiaddr;
   IN_ADDR imr_sourceaddr;
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] Revert "headers: Move IP_MREQ from _ip_mreq1.h to ws2ipdef.h."

2021-06-25 Thread Biswapriyo Nath
My apology for this mistake. I am not sure why this causes build issue
in SDL_net https://github.com/msys2/MINGW-packages/issues/8759. /cc
Ozkan Sezer


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add MsvAvSingleHost in MSV1_0_AVID enum.

2021-06-24 Thread Biswapriyo Nath

From 10e2039d440aab444532fffd394f5be9b56deb1a Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 25 Jun 2021 10:06:06 +0530
Subject: [PATCH] headers: Add MsvAvSingleHost in MSV1_0_AVID enum.

MsvAvSingleHost present in MS-NLMP specifications[1] but not in WinSDK
[1]: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-nlmp/

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/ddk/include/ddk/ntifs.h | 2 ++
 mingw-w64-headers/include/ntsecapi.h  | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/mingw-w64-headers/ddk/include/ddk/ntifs.h 
b/mingw-w64-headers/ddk/include/ddk/ntifs.h
index 673eb36..ea76faa 100644
--- a/mingw-w64-headers/ddk/include/ddk/ntifs.h
+++ b/mingw-w64-headers/ddk/include/ddk/ntifs.h
@@ -2726,6 +2726,7 @@ typedef struct _MSV1_0_NTLM3_RESPONSE {
   UCHAR Buffer[1];
 } MSV1_0_NTLM3_RESPONSE, *PMSV1_0_NTLM3_RESPONSE;
 
+/* MsvAvSingleHost present in MS-NLMP specifications but not in WinSDK */
 typedef enum _MSV1_0_AVID {
   MsvAvEOL,
   MsvAvNbComputerName,
@@ -2738,6 +2739,7 @@ typedef enum _MSV1_0_AVID {
 #if (_WIN32_WINNT >= 0x0600)
   MsvAvTimestamp,
   MsvAvRestrictions,
+  MsvAvSingleHost = MsvAvRestrictions,
   MsvAvTargetName,
   MsvAvChannelBindings,
 #endif
diff --git a/mingw-w64-headers/include/ntsecapi.h 
b/mingw-w64-headers/include/ntsecapi.h
index edef4d5..f5dba11 100644
--- a/mingw-w64-headers/include/ntsecapi.h
+++ b/mingw-w64-headers/include/ntsecapi.h
@@ -1575,6 +1575,7 @@ typedef enum _SE_ADT_PARAMETER_TYPE {
 #define MSV1_0_NTLM3_INPUT_LENGTH (sizeof(MSV1_0_NTLM3_RESPONSE) - 
MSV1_0_NTLM3_RESPONSE_LENGTH)
 #define MSV1_0_NTLM3_MIN_NT_RESPONSE_LENGTH 
RTL_SIZEOF_THROUGH_FIELD(MSV1_0_NTLM3_RESPONSE,AvPairsOff)
 
+/* MsvAvSingleHost present in MS-NLMP specifications but not in WinSDK */
   typedef enum {
 MsvAvEOL,
 MsvAvNbComputerName,
@@ -1587,6 +1588,7 @@ typedef enum _SE_ADT_PARAMETER_TYPE {
 #if _WIN32_WINNT >= 0x0600
 ,MsvAvTimestamp
 ,MsvAvRestrictions
+,MsvAvSingleHost = MsvAvRestrictions
 ,MsvAvTargetName
 ,MsvAvChannelBindings
 #endif
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] crt: Add missing members in setjmp for x86_64.

2021-06-17 Thread Biswapriyo Nath
Updated patch with longjmp.
From 4b29c21c4e334934fd9c545c0d3cfe25ecaeea82 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 18 Jun 2021 10:20:50 +0530
Subject: [PATCH] crt: Add missing members in setjmp for x86_64.

This add MxCsr and FpCsr members in _JUMP_BUFFER sturcture.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/misc/longjmp.S   | 3 +++
 mingw-w64-crt/misc/setjmp.S| 2 ++
 mingw-w64-headers/crt/setjmp.h | 4 +++-
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-crt/misc/longjmp.S b/mingw-w64-crt/misc/longjmp.S
index a1318dc..7026ed5 100644
--- a/mingw-w64-crt/misc/longjmp.S
+++ b/mingw-w64-crt/misc/longjmp.S
@@ -30,6 +30,9 @@ __MINGW_USYMBOL(longjmp):
 movq0x38(%rcx),%r13  /* jmp_buf->R13 */
 movq0x40(%rcx),%r14  /* jmp_buf->R14 */
 movq0x48(%rcx),%r15  /* jmp_buf->R15 */
+ldmxcsr 0x58(%rcx)   /* jmp_buf->MxCsr */
+fnclex
+fldcw   0x5c(%rcx)   /* jmp_buf->FpCsr */
 movdqa  0x60(%rcx),%xmm6 /* jmp_buf->Xmm6 */
 movdqa  0x70(%rcx),%xmm7 /* jmp_buf->Xmm7 */
 movdqa  0x80(%rcx),%xmm8 /* jmp_buf->Xmm8 */
diff --git a/mingw-w64-crt/misc/setjmp.S b/mingw-w64-crt/misc/setjmp.S
index b2058e9..0c06b86 100644
--- a/mingw-w64-crt/misc/setjmp.S
+++ b/mingw-w64-crt/misc/setjmp.S
@@ -50,6 +50,8 @@ __MINGW_USYMBOL(__intrinsic_setjmpex):
 movq%r15,0x48(%rcx)  /* jmp_buf->R15 */
 movq(%rsp),%rax
 movq%rax,0x50(%rcx)  /* jmp_buf->Rip */
+stmxcsr 0x58(%rcx)   /* jmp_buf->MxCsr */
+fnstcw  0x5c(%rcx)   /* jmp_buf->FpCsr */
 movdqa  %xmm6,0x60(%rcx) /* jmp_buf->Xmm6 */
 movdqa  %xmm7,0x70(%rcx) /* jmp_buf->Xmm7 */
 movdqa  %xmm8,0x80(%rcx) /* jmp_buf->Xmm8 */
diff --git a/mingw-w64-headers/crt/setjmp.h b/mingw-w64-headers/crt/setjmp.h
index eb772a3..4b69efa 100644
--- a/mingw-w64-headers/crt/setjmp.h
+++ b/mingw-w64-headers/crt/setjmp.h
@@ -128,7 +128,9 @@ extern "C" {
 __MINGW_EXTENSION unsigned __int64 R14;
 __MINGW_EXTENSION unsigned __int64 R15;
 __MINGW_EXTENSION unsigned __int64 Rip;
-__MINGW_EXTENSION unsigned __int64 Spare;
+unsigned long MxCsr;
+unsigned short FpCsr;
+unsigned short Spare;
 SETJMP_FLOAT128 Xmm6;
 SETJMP_FLOAT128 Xmm7;
 SETJMP_FLOAT128 Xmm8;
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] crt: Add missing members in setjmp for x86_64.

2021-06-15 Thread Biswapriyo Nath
I don't consider myself expert on this topic. But while _exploring_
something, I found these (MxCsr and FpCsr) are missing from
JUMP_BUFFER. Is this right? wine also don't have these. Wondering why?
Thought attached.
From cb1ff23556cbbdeb286f1fc26872d7b887044477 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Tue, 15 Jun 2021 21:30:25 +0530
Subject: [PATCH] crt: Add missing members in setjmp for x86_64.

---
 mingw-w64-crt/misc/setjmp.S| 2 ++
 mingw-w64-headers/crt/setjmp.h | 4 +++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-crt/misc/setjmp.S b/mingw-w64-crt/misc/setjmp.S
index b2058e9..0c06b86 100644
--- a/mingw-w64-crt/misc/setjmp.S
+++ b/mingw-w64-crt/misc/setjmp.S
@@ -50,6 +50,8 @@ __MINGW_USYMBOL(__intrinsic_setjmpex):
 movq%r15,0x48(%rcx)  /* jmp_buf->R15 */
 movq(%rsp),%rax
 movq%rax,0x50(%rcx)  /* jmp_buf->Rip */
+stmxcsr 0x58(%rcx)   /* jmp_buf->MxCsr */
+fnstcw  0x5c(%rcx)   /* jmp_buf->FpCsr */
 movdqa  %xmm6,0x60(%rcx) /* jmp_buf->Xmm6 */
 movdqa  %xmm7,0x70(%rcx) /* jmp_buf->Xmm7 */
 movdqa  %xmm8,0x80(%rcx) /* jmp_buf->Xmm8 */
diff --git a/mingw-w64-headers/crt/setjmp.h b/mingw-w64-headers/crt/setjmp.h
index eb772a3..4b69efa 100644
--- a/mingw-w64-headers/crt/setjmp.h
+++ b/mingw-w64-headers/crt/setjmp.h
@@ -128,7 +128,9 @@ extern "C" {
 __MINGW_EXTENSION unsigned __int64 R14;
 __MINGW_EXTENSION unsigned __int64 R15;
 __MINGW_EXTENSION unsigned __int64 Rip;
-__MINGW_EXTENSION unsigned __int64 Spare;
+unsigned long MxCsr;
+unsigned short FpCsr;
+unsigned short Spare;
 SETJMP_FLOAT128 Xmm6;
 SETJMP_FLOAT128 Xmm7;
 SETJMP_FLOAT128 Xmm8;
-- 
2.32.0

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] Can't link _setjmpex in UCRT

2021-06-08 Thread Biswapriyo Nath
> Why do you ever want to call `_setjmpex()` directly? It is only used to 
> implement the standard
> `setjmp()` macro, which in the case of UCRT calls `__intrinsic_setjmpex()`.

Same question as mine. Need it here
https://github.com/Perl/perl5/blob/blead/dist/threads/threads.xs


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add afunix.h file.

2021-06-06 Thread Biswapriyo Nath

From 29bba5d53ab3acf3f823995a85d39badb8f26053 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Mon, 7 Jun 2021 10:25:36 +0530
Subject: [PATCH] headers: Add afunix.h file.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/afunix.h | 19 +++
 1 file changed, 19 insertions(+)
 create mode 100644 mingw-w64-headers/include/afunix.h

diff --git a/mingw-w64-headers/include/afunix.h 
b/mingw-w64-headers/include/afunix.h
new file mode 100644
index 000..8a4f05f
--- /dev/null
+++ b/mingw-w64-headers/include/afunix.h
@@ -0,0 +1,19 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+#ifndef _AFUNIX_
+#define _AFUNIX_
+
+#define UNIX_PATH_MAX 108
+
+typedef struct sockaddr_un {
+  ADDRESS_FAMILY sun_family;
+  char sun_path[UNIX_PATH_MAX];
+} SOCKADDR_UN, *PSOCKADDR_UN;
+
+#define SIO_AF_UNIX_GETPEERPID _WSAIOR(IOC_VENDOR, 256)
+
+#endif /* _AFUNIX_ */
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] Can't link _setjmpex in UCRT

2021-06-06 Thread Biswapriyo Nath
* Source: int main() { _setjmpex(0,0); }
* Compiler command: gcc test.c
* msvcrt ok.
* ucrt linking error


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] Can't link _setjmpex in UCRT

2021-06-06 Thread Biswapriyo Nath
* Source: int main() { _setjmpex(0,0); }
* Compiler command: gcc test.c
* msvcrt ok.
* ucrt linking error


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add tsvirtualchannels.idl file.

2021-05-31 Thread Biswapriyo Nath

From c1707eac1e5039bf682850b21591632f25277bb1 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Mon, 31 May 2021 13:10:10 +0530
Subject: [PATCH] headers: Add tsvirtualchannels.idl file.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/Makefile.am |   1 +
 .../include/tsvirtualchannels.idl | 102 ++
 2 files changed, 103 insertions(+)
 create mode 100644 mingw-w64-headers/include/tsvirtualchannels.idl

diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index 4c52681..a0fbe62 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -208,6 +208,7 @@ IDL_SRCS = \
   include/tlbref.idl \
   include/tlogstg.idl \
   include/tpcshrd.idl \
+  include/tsvirtualchannels.idl \
   include/tuner.idl \
   include/uianimation.idl \
   include/uiautomationclient.idl \
diff --git a/mingw-w64-headers/include/tsvirtualchannels.idl 
b/mingw-w64-headers/include/tsvirtualchannels.idl
new file mode 100644
index 000..f46463b
--- /dev/null
+++ b/mingw-w64-headers/include/tsvirtualchannels.idl
@@ -0,0 +1,102 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+cpp_quote("#include ")
+
+cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
+
+import "unknwn.idl";
+import "oaidl.idl";
+
+interface IWTSPlugin;
+interface IWTSListener;
+interface IWTSListenerCallback;
+interface IWTSVirtualChannelCallback;
+interface IWTSVirtualChannelManager;
+interface IWTSVirtualChannel;
+
+
+cpp_quote("#define WTS_PROPERTY_DEFAULT_CONFIG L\"DefaultConfig\"") 
+
+cpp_quote("#define E_MAPPEDRENDERER_SHUTDOWN 
HRESULT_FROM_WIN32(ERROR_INVALID_STATE)")
+cpp_quote("#define E_DUPLICATE_WINDOW_HINT 
HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS)")
+
+[object, uuid(a1230201-1439-4e62-a414-190d0ac3d40e), oleautomation]
+interface IWTSPlugin : IUnknown
+{
+  HRESULT Initialize([in] IWTSVirtualChannelManager *pChannelMgr);
+  HRESULT Connected(void);
+  HRESULT Disconnected([in] DWORD dwDisconnectCode);
+  HRESULT Terminated(void);
+}
+
+[object, uuid(a1230206-9a39-4d58-8674-cdb4dff4e73b), oleautomation]
+interface IWTSListener : IUnknown
+{
+  HRESULT GetConfiguration([out] IPropertyBag **ppPropertyBag);
+}
+
+[object, uuid(a1230203-d6a7-11d8-b9fd-000bdbd1f198), oleautomation]
+interface IWTSListenerCallback : IUnknown
+{
+  HRESULT OnNewChannelConnection([in] IWTSVirtualChannel *pChannel, [in,ptr] 
BSTR data, [out] WINBOOL *pbAccept, [out] IWTSVirtualChannelCallback 
**ppCallback);
+}
+
+[object, uuid(a1230204-d6a7-11d8-b9fd-000bdbd1f198), oleautomation]
+interface IWTSVirtualChannelCallback : IUnknown
+{
+  HRESULT OnDataReceived([in] ULONG cbSize, [in, size_is(cbSize)] BYTE 
*pBuffer);
+  HRESULT OnClose(void);
+}
+
+cpp_quote("#define TS_VC_LISTENER_STATIC_CHANNEL 0x0001")
+[object, uuid(a1230205-d6a7-11d8-b9fd-000bdbd1f198), oleautomation]
+interface IWTSVirtualChannelManager : IUnknown
+{
+  HRESULT CreateListener([in, string] const char *pszChannelName, [in] ULONG 
uFlags, [in] IWTSListenerCallback *pListenerCallback, [out] IWTSListener 
**ppListener);
+}
+
+[object, uuid(a1230207-d6a7-11d8-b9fd-000bdbd1f198), oleautomation]
+interface IWTSVirtualChannel : IUnknown
+{
+  HRESULT Write([in] ULONG cbSize, [in, size_is(cbSize)] BYTE *pBuffer, [in] 
IUnknown *pReserved);
+  HRESULT Close(void);
+}
+
+cpp_quote( "EXTERN_GUID( RDCLIENT_BITMAP_RENDER_SERVICE, 0xe4cc08cb, 0x942e, 
0x4b19, 0x85, 0x4, 0xbd, 0x5a, 0x89, 0xa7, 0x47, 0xf5);" )
+
+[object, uuid(d3e07363-087c-476c-86a7-dbb15f46ddb4), oleautomation]
+interface IWTSPluginServiceProvider : IUnknown
+{
+  HRESULT GetService([in] GUID ServiceId, [out] IUnknown **ppunkObject);
+}
+
+typedef struct __BITMAP_RENDERER_STATISTICS {
+  DWORD dwFramesDelivered;
+  DWORD dwFramesDropped;
+} BITMAP_RENDERER_STATISTICS, *PBITMAP_RENDERER_STATISTICS;
+
+[object, uuid(5b7acc97-f3c9-46f7-8c5b-fa685d3441b1), oleautomation]
+interface IWTSBitmapRenderer : IUnknown
+{
+  HRESULT Render([in] GUID imageFormat, [in] DWORD dwWidth, [in] DWORD 
dwHeight, [in] LONG cbStride, [in] DWORD cbImageBuffer, [in, 
size_is(cbImageBuffer)] BYTE *pImageBuffer);
+  HRESULT GetRendererStatistics([out] BITMAP_RENDERER_STATISTICS *pStatistics);
+  HRESULT RemoveMapping(void);
+}
+
+[object, uuid(d782928e-fe4e-4e77-ae90-9cd0b3e3b353), oleautomation]
+interface IWTSBitmapRendererCallback : IUnknown
+{
+  HRESULT OnTargetSizeChanged([in] RECT rcNewSize);
+}
+
+[object, uuid(ea326091-05fe-40c1-b49c-3d2ef4626a0e), oleautomation]
+interface IWTSBitmapRenderService : IUnknown
+{
+  HRESULT GetMappedRenderer([in] UINT64 mappingId, [in] 
IWTSBitmapRendererCallback *pMappedRendererCallback, [out] IWTSBitmapRenderer 
**ppMappedRenderer);
+}
+
+cpp_quote("#end

[Mingw-w64-public] [PATCH] headers: Add missing flags in pchannel.h.

2021-05-27 Thread Biswapriyo Nath

From 5161559e8004d1d5642c637a65f6f0c7ec2ab1e1 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Fri, 28 May 2021 01:49:21 +0530
Subject: [PATCH] headers: Add missing flags in pchannel.h.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/pchannel.h | 16 +++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-headers/include/pchannel.h 
b/mingw-w64-headers/include/pchannel.h
index 021219c..1eb7899 100644
--- a/mingw-w64-headers/include/pchannel.h
+++ b/mingw-w64-headers/include/pchannel.h
@@ -3,10 +3,18 @@
  * This file is part of the mingw-w64 runtime package.
  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  */
+
 #ifndef _H_PCHANNEL
 #define _H_PCHANNEL
 
+#include 
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+
+#if NTDDI_VERSION >= NTDDI_XP
+
 #define CHANNEL_CHUNK_LENGTH 1600
+#define CHANNEL_BUFFER_SIZE 65535
 
 #define CHANNEL_PDU_LENGTH (CHANNEL_CHUNK_LENGTH + sizeof(CHANNEL_PDU_HEADER))
 
@@ -29,6 +37,7 @@
 #define CHANNEL_OPTION_COMPRESS_RDP 0x0080
 #define CHANNEL_OPTION_COMPRESS 0x0040
 #define CHANNEL_OPTION_SHOW_PROTOCOL 0x0020
+#define CHANNEL_OPTION_REMOTE_CONTROL_PERSISTENT 0x0010
 
 #define CHANNEL_MAX_COUNT 30
 #define CHANNEL_NAME_LEN 7
@@ -42,4 +51,9 @@ typedef struct tagCHANNEL_PDU_HEADER {
   UINT32 length;
   UINT32 flags;
 } CHANNEL_PDU_HEADER,*PCHANNEL_PDU_HEADER;
-#endif
+
+#endif /* (NTDDI_VERSION >= NTDDI_XP) */
+
+#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
+
+#endif /* _H_PCHANNEL */
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add missing APIs in wow64apiset.h.

2021-05-20 Thread Biswapriyo Nath

From dcbea6cc8937ca1bf169448f466c7e46f5f59ac0 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 20 May 2021 20:10:20 +0530
Subject: [PATCH] headers: Add missing APIs in wow64apiset.h.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/wow64apiset.h | 30 +++--
 1 file changed, 28 insertions(+), 2 deletions(-)

diff --git a/mingw-w64-headers/include/wow64apiset.h 
b/mingw-w64-headers/include/wow64apiset.h
index eefd694..b8fe3a6 100644
--- a/mingw-w64-headers/include/wow64apiset.h
+++ b/mingw-w64-headers/include/wow64apiset.h
@@ -17,11 +17,37 @@ extern "C" {
 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
   WINBASEAPI WINBOOL WINAPI Wow64DisableWow64FsRedirection (PVOID *OldValue);
   WINBASEAPI WINBOOL WINAPI Wow64RevertWow64FsRedirection (PVOID OlValue);
-#endif
+
+  WINBASEAPI UINT WINAPI GetSystemWow64DirectoryA (LPSTR lpBuffer, UINT uSize);
+  WINBASEAPI UINT WINAPI GetSystemWow64DirectoryW (LPWSTR lpBuffer, UINT 
uSize);
+  #define GetSystemWow64Directory __MINGW_NAME_AW(GetSystemWow64Directory)
+
+  #if _WIN32_WINNT >= 0x0600
+  WINBASEAPI WINBOOL WINAPI Wow64GetThreadContext (HANDLE hThread, 
PWOW64_CONTEXT lpContext);
+  WINBASEAPI WINBOOL WINAPI Wow64SetThreadContext (HANDLE hThread, CONST 
WOW64_CONTEXT *lpContext);
+  WINBASEAPI DWORD WINAPI Wow64SuspendThread (HANDLE hThread);
+  #endif
+
+  #if _WIN32_WINNT >= 0x0A00
+  WINBASEAPI USHORT WINAPI Wow64SetThreadDefaultGuestMachine (USHORT Machine);
+
+  WINBASEAPI UINT WINAPI GetSystemWow64Directory2A (LPSTR lpBuffer, UINT 
uSize, WORD ImageFileMachineType);
+  WINBASEAPI UINT WINAPI GetSystemWow64Directory2W (LPWSTR lpBuffer, UINT 
uSize, WORD ImageFileMachineType);
+  #define GetSystemWow64Directory2 __MINGW_NAME_AW(GetSystemWow64Directory2)
+
+  WINBASEAPI HRESULT WINAPI IsWow64GuestMachineSupported (USHORT 
WowGuestMachine, WINBOOL *MachineIsSupported);
+  #endif
+
+#endif /* WINAPI_PARTITION_DESKTOP */
 
 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
   WINBASEAPI WINBOOL WINAPI IsWow64Process (HANDLE hProcess, PBOOL 
Wow64Process);
-#endif
+
+  #if _WIN32_WINNT >= 0x0A00
+  WINBASEAPI WINBOOL WINAPI IsWow64Process2 (HANDLE hProcess, USHORT 
*pProcessMachine, USHORT *pNativeMachine);
+  #endif
+
+#endif /* WINAPI_PARTITION_APP */
 
 #ifdef __cplusplus
 }
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add thread pool wrappers in winbase.h.

2021-05-19 Thread Biswapriyo Nath

From c6724c8ae7877402401ea16b46b8aca6eccf5f37 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Wed, 19 May 2021 23:02:30 +0530
Subject: [PATCH] headers: Add thread pool wrappers in winbase.h.

Required for FreeRDP project.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winbase.h | 41 -
 1 file changed, 40 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-headers/include/winbase.h 
b/mingw-w64-headers/include/winbase.h
index dff8ee5..08f8977 100644
--- a/mingw-w64-headers/include/winbase.h
+++ b/mingw-w64-headers/include/winbase.h
@@ -3292,11 +3292,50 @@ extern "C" {
 #endif
 #endif
 
-#ifdef __cplusplus
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
+#if _WIN32_WINNT >= 0x0600
+#if !defined(__WIDL__)
+
+FORCEINLINE VOID InitializeThreadpoolEnvironment(PTP_CALLBACK_ENVIRON cbe) {
+  TpInitializeCallbackEnviron(cbe);
+}
+
+FORCEINLINE VOID SetThreadpoolCallbackPool(PTP_CALLBACK_ENVIRON cbe, PTP_POOL 
pool) {
+  TpSetCallbackThreadpool(cbe, pool);
+}
+
+FORCEINLINE VOID SetThreadpoolCallbackCleanupGroup(PTP_CALLBACK_ENVIRON cbe, 
PTP_CLEANUP_GROUP cleanup_group, PTP_CLEANUP_GROUP_CANCEL_CALLBACK 
cleanup_group_cb) {
+  TpSetCallbackCleanupGroup(cbe, cleanup_group, cleanup_group_cb);
+}
+
+FORCEINLINE VOID SetThreadpoolCallbackRunsLong(PTP_CALLBACK_ENVIRON cbe) {
+  TpSetCallbackLongFunction(cbe);
+}
+
+FORCEINLINE VOID SetThreadpoolCallbackLibrary(PTP_CALLBACK_ENVIRON cbe, PVOID 
h) {
+  TpSetCallbackRaceWithDll(cbe, h);
+}
+
+#if _WIN32_WINNT >= _WIN32_WINNT_WIN7
+FORCEINLINE VOID SetThreadpoolCallbackPriority(PTP_CALLBACK_ENVIRON cbe, 
TP_CALLBACK_PRIORITY prio) {
+  TpSetCallbackPriority(cbe, prio);
 }
 #endif
+
+FORCEINLINE VOID DestroyThreadpoolEnvironment(PTP_CALLBACK_ENVIRON cbe) {
+  TpDestroyCallbackEnviron(cbe);
+}
+
+#endif /* !__WIDL__ */
+#endif /* _WIN32_WINNT >= 0x0600 */
+#endif /* WINAPI_PARTITION_APP */
+
+#ifdef __cplusplus
+}
 #endif
 
+#endif /* _WINBASE_ */
+
 #if !defined (RC_INVOKED) && !defined (NOWINBASEINTERLOCK) && !defined 
(_NTOS_) && !defined 
(MICROSOFT_WINDOWS_WINBASE_INTERLOCKED_CPLUSPLUS_H_INCLUDED)
 #define MICROSOFT_WINDOWS_WINBASE_INTERLOCKED_CPLUSPLUS_H_INCLUDED
 #if !defined (__WIDL__)
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add missing interfaces in mfidl.idl.

2021-05-19 Thread Biswapriyo Nath
ping!


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH 1/4] crt: Add libopends60.a.

2021-05-17 Thread Biswapriyo Nath
Where do those files come from? I can not find srv.h and opends60
library in Microsoft Windows SDK 10.0.19041.0.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add missing interfaces in mfidl.idl.

2021-05-16 Thread Biswapriyo Nath

From 12d026984d097182a49b950a1cbdd8f64d2ce659 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 16 May 2021 18:58:54 +0530
Subject: [PATCH] headers: Add missing interfaces in mfidl.idl.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/mfidl.idl | 174 +++-
 1 file changed, 168 insertions(+), 6 deletions(-)

diff --git a/mingw-w64-headers/include/mfidl.idl 
b/mingw-w64-headers/include/mfidl.idl
index ed74c74..65a5b80 100644
--- a/mingw-w64-headers/include/mfidl.idl
+++ b/mingw-w64-headers/include/mfidl.idl
@@ -602,8 +602,9 @@ enum
 MF_RESOLUTION_WRITE = 
0x0002
 };
 
-/* FIXME: Properly declare followinf interfaces: */
-interface IMFMediaSink;
+/* Forward declaration goes here.
+ * Just for ease, declare interfaces alphabatically.
+ */
 interface IMFASFContentInfo;
 interface IMFASFIndexer;
 interface IMFASFMultiplexer;
@@ -614,14 +615,175 @@ interface IMFPresentationClock;
 interface IMFNetProxyLocator;
 interface IMFRemoteDesktopPlugin;
 interface IMFTransform;
-interface IMFSampleGrabberSinkCallback;
 interface IMFSequencerSource;
+interface IMFStreamSink;
 interface IMFQualityManager;
-interface IMFSourceResolver;
-interface IMFPresentationTimeSource;
-interface IMFTopoLoader;
 interface IMFTranscodeProfile;
 
+[object, uuid(76b1bbdb-4ec8-4f36-b106-70a9316df593)]
+interface IMFAudioStreamVolume : IUnknown
+{
+  HRESULT GetChannelCount([out] UINT32 *pdwCount);
+  HRESULT SetChannelVolume([in] UINT32 dwIndex, [in] const float fLevel);
+  HRESULT GetChannelVolume([in] UINT32 dwIndex, [out] float *pfLevel);
+  HRESULT SetAllVolumes([in] UINT32 dwCount, [in, size_is(dwCount)] const 
float *pfVolumes);
+  HRESULT GetAllVolumes([in] UINT32 dwCount, [out, size_is(dwCount)] float 
*pfVolumes);
+}
+
+[object, uuid(6ef2a660-47c0-4666-b13d-cbb717f2fa2c)]
+interface IMFMediaSink : IUnknown
+{
+  HRESULT GetCharacteristics([out] DWORD *pdwCharacteristics);
+  HRESULT AddStreamSink([in] DWORD dwStreamSinkIdentifier, [in] IMFMediaType 
*pMediaType, [out] IMFStreamSink **ppStreamSink);
+  HRESULT RemoveStreamSink([in] DWORD dwStreamSinkIdentifier);
+  HRESULT GetStreamSinkCount([out] DWORD *pcStreamSinkCount);
+  HRESULT GetStreamSinkByIndex([in] DWORD dwIndex, [out] IMFStreamSink 
**ppStreamSink);
+  HRESULT GetStreamSinkById([in] DWORD dwStreamSinkIdentifier, [out] 
IMFStreamSink **ppStreamSink);
+  HRESULT SetPresentationClock([in] IMFPresentationClock *pPresentationClock);
+  HRESULT GetPresentationClock([out] IMFPresentationClock 
**ppPresentationClock);
+  HRESULT Shutdown(void);
+}
+
+[object, uuid(eaecb74a-9a50-42ce-9541-6a7f57aa4ad7), local]
+interface IMFFinalizableMediaSink : IMFMediaSink
+{
+  HRESULT BeginFinalize([in] IMFAsyncCallback *pCallback, [in] IUnknown 
*punkState);
+  HRESULT EndFinalize([in] IMFAsyncResult *pResult);
+}
+
+[object, uuid(5dfd4b2a-7674-4110-a4e6-8a68fd5f3688)]
+interface IMFMediaSinkPreroll : IUnknown
+{
+  HRESULT NotifyPreroll([in] MFTIME hnsUpcomingStartTime);
+}
+
+[object, uuid(d182108f-4ec6-443f-aa42-a71106ec825f)]
+interface IMFMediaStream : IMFMediaEventGenerator
+{
+  HRESULT GetMediaSource([out] IMFMediaSource**ppMediaSource);
+  HRESULT GetStreamDescriptor([out] IMFStreamDescriptor **ppStreamDescriptor);
+
+  [local]
+  HRESULT RequestSample([in] IUnknown *pToken);
+
+  [call_as(RequestSample)]
+  HRESULT RemoteRequestSample(void);
+}
+
+[object, uuid(f88cfb8c-ef16-4991-b450-cb8c69e51704)]
+interface IMFMetadata : IUnknown
+{
+  HRESULT SetLanguage([in] LPCWSTR pwszRFC1766);
+  HRESULT GetLanguage([out] LPWSTR *ppwszRFC1766);
+  HRESULT GetAllLanguages([out] PROPVARIANT *ppvLanguages);
+  HRESULT SetProperty([in] LPCWSTR pwszName, [in] const PROPVARIANT *ppvValue);
+  HRESULT GetProperty([in] LPCWSTR pwszName, [out] PROPVARIANT *ppvValue);
+  HRESULT DeleteProperty([in] LPCWSTR pwszName);
+  HRESULT GetAllPropertyNames([out] PROPVARIANT *ppvNames);
+}
+
+[object, uuid(56181d2d-e221-4adb-b1c8-3cee6a53f76f)]
+interface IMFMetadataProvider : IUnknown
+{
+  HRESULT GetMFMetadata([in] IMFPresentationDescriptor 
*pPresentationDescriptor, [in] DWORD dwStreamIdentifier, [in] DWORD dwFlags, 
[out] IMFMetadata **ppMFMetadata);
+}
+
+[object, uuid(7ff12cce-f76f-41c2-863b-1666c8e5e139)]
+interface IMFPresentationTimeSource : IMFClock
+{
+  HRESULT GetUnderlyingClock([out] IMFClock **ppClock);
+}
+
+[object, uuid(868ce85c-8ea9-4f55-ab82-b009a910a805)]
+interface IMFPresentationClock : IMFClock
+{
+  HRESULT SetTimeSource([in] IMFPresentationTimeSource *pTimeSource);
+  HRESULT GetTimeSource([out] IMFPresentationTimeSource **ppTimeSource);
+  HRESULT GetTime([out] MFTIME *phnsClockTime);
+  HRESULT AddClockStateSink([in] IMFClockStateSink *pStateSink);
+  HRESULT RemoveClockStateSink([in] IMFClockStateSink* pStateSink);
+  HRESULT Start([in] LONGLONG llClockStartOffset);
+  HRESULT Stop(void);
+  HRESULT Pause(void);
+}
+
+[object, uuid(88ddcd21-03c3-4275-91ed-55ee3929328f

[Mingw-w64-public] [PATCH] headers: Add more GUIDs in mfidl.idl.

2021-05-14 Thread Biswapriyo Nath

From 8c54bb5c0842decc2966cf2252f4881522580162 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 15 May 2021 10:48:02 +0530
Subject: [PATCH] headers: Add more GUIDs in mfidl.idl.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/mfidl.idl | 55 +
 1 file changed, 55 insertions(+)

diff --git a/mingw-w64-headers/include/mfidl.idl 
b/mingw-w64-headers/include/mfidl.idl
index 1ac68cc..ed74c74 100644
--- a/mingw-w64-headers/include/mfidl.idl
+++ b/mingw-w64-headers/include/mfidl.idl
@@ -635,6 +635,8 @@ cpp_quote("HRESULT WINAPI 
MFCreateASFMultiplexer(IMFASFMultiplexer **ppIMultiple
 cpp_quote("HRESULT WINAPI MFCreateASFProfile(IMFASFProfile **ppIProfile);")
 cpp_quote("HRESULT WINAPI 
MFCreateASFProfileFromPresentationDescriptor(IMFPresentationDescriptor 
*pIPD,IMFASFProfile **ppIProfile);")
 cpp_quote("HRESULT WINAPI MFCreateASFSplitter(IMFASFSplitter **ppISplitter);")
+cpp_quote("HRESULT WINAPI MFCreateAudioRenderer(IMFAttributes 
*pAudioAttributes, IMFMediaSink **ppSink);")
+cpp_quote("HRESULT WINAPI MFCreateAudioRendererActivate(IMFActivate 
**ppActivate);")
 cpp_quote("HRESULT WINAPI MFCreateMediaSession(IMFAttributes 
*pConfiguration,IMFMediaSession **ppMS);")
 cpp_quote("HRESULT WINAPI MFCreateMP3MediaSink(IMFByteStream 
*pTargetByteStream,IMFMediaSink **ppMediaSink);")
 cpp_quote("HRESULT WINAPI MFCreateMPEG4MediaSink(IMFByteStream 
*pIByteStream,IMFMediaType *pVideoMediaType,IMFMediaType 
*pAudioMediaType,IMFMediaSink **ppIMediaSink);")
@@ -678,6 +680,21 @@ cpp_quote("HRESULT WINAPI 
MFGetTopoNodeCurrentType(IMFTopologyNode *pNode,DWORD
 cpp_quote("HRESULT WINAPI MFTranscodeGetAudioOutputAvailableTypes(REFGUID 
guidSubType,DWORD dwMFTFlags,IMFAttributes *pCodecConfig,IMFCollection 
**ppAvailableTypes);")
 cpp_quote("#endif")
 
+cpp_quote("EXTERN_GUID(MFNETSOURCE_STATISTICS, 0x3cb1f274, 0x0505, 0x4c5d, 
0xae, 0x71, 0x0a, 0x55, 0x63, 0x44, 0xef, 0xa1);")
+cpp_quote("EXTERN_GUID(MFNETSOURCE_STATISTICS_SERVICE, 0x3cb1f275, 0x0505, 
0x4c5d, 0xae, 0x71, 0x0a, 0x55, 0x63, 0x44, 0xef, 0xa1);")
+
+cpp_quote("EXTERN_GUID(MF_ACTIVATE_CUSTOM_VIDEO_MIXER_CLSID, 0xba491360, 
0xbe50, 0x451e, 0x95, 0xab, 0x6d, 0x4a, 0xcc, 0xc7, 0xda, 0xd8 );")
+cpp_quote("EXTERN_GUID(MF_ACTIVATE_CUSTOM_VIDEO_MIXER_ACTIVATE, 0xba491361, 
0xbe50, 0x451e, 0x95, 0xab, 0x6d, 0x4a, 0xcc, 0xc7, 0xda, 0xd8 );")
+cpp_quote("EXTERN_GUID(MF_ACTIVATE_CUSTOM_VIDEO_MIXER_FLAGS, 0xba491362, 
0xbe50, 0x451e, 0x95, 0xab, 0x6d, 0x4a, 0xcc, 0xc7, 0xda, 0xd8 );")
+cpp_quote("EXTERN_GUID(MF_ACTIVATE_CUSTOM_VIDEO_PRESENTER_CLSID, 0xba491364, 
0xbe50, 0x451e, 0x95, 0xab, 0x6d, 0x4a, 0xcc, 0xc7, 0xda, 0xd8 );")
+cpp_quote("EXTERN_GUID(MF_ACTIVATE_CUSTOM_VIDEO_PRESENTER_ACTIVATE, 
0xba491365, 0xbe50, 0x451e, 0x95, 0xab, 0x6d, 0x4a, 0xcc, 0xc7, 0xda, 0xd8 );")
+cpp_quote("EXTERN_GUID(MF_ACTIVATE_CUSTOM_VIDEO_PRESENTER_FLAGS, 0xba491366, 
0xbe50, 0x451e, 0x95, 0xab, 0x6d, 0x4a, 0xcc, 0xc7, 0xda, 0xd8 );")
+
+cpp_quote("EXTERN_GUID(MF_AUDIO_RENDERER_ATTRIBUTE_SESSION_ID, 0xede4b5e3, 
0xf805, 0x4d6c, 0x99, 0xb3, 0xdb, 0x01, 0xbf, 0x95, 0xdf, 0xab);")
+cpp_quote("EXTERN_GUID(MF_AUDIO_RENDERER_ATTRIBUTE_ENDPOINT_ID, 0xb10aaec3, 
0xef71, 0x4cc3, 0xb8, 0x73, 0x5, 0xa9, 0xa0, 0x8b, 0x9f, 0x8e);")
+cpp_quote("EXTERN_GUID(MF_AUDIO_RENDERER_ATTRIBUTE_ENDPOINT_ROLE, 0x6ba644ff, 
0x27c5, 0x4d02, 0x98, 0x87, 0xc2, 0x86, 0x19, 0xfd, 0xb9, 0x1b);")
+cpp_quote("EXTERN_GUID(MF_AUDIO_RENDERER_ATTRIBUTE_STREAM_CATEGORY, 
0xa9770471, 0x92ec, 0x4df4, 0x94, 0xfe, 0x81, 0xc3, 0x6f, 0xc, 0x3a, 0x7a);")
+
 cpp_quote("EXTERN_GUID(MF_DEVSOURCE_ATTRIBUTE_FRIENDLY_NAME, 
0x60d0e559,0x52f8,0x4fa2,0xbb,0xce,0xac,0xdb,0x34,0xa8,0xec,0x1);")
 cpp_quote("EXTERN_GUID(MF_DEVSOURCE_ATTRIBUTE_MEDIA_TYPE, 
0x56a819ca,0xc78,0x4de4,0xa0,0xa7,0x3d,0xda,0xba,0xf,0x24,0xd4);")
 cpp_quote("EXTERN_GUID(MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_AUDCAP_ENDPOINT_ID, 
0x30da9258,0xfeb9,0x47a7,0xa4,0x53,0x76,0x3a,0x7a,0x8e,0x1c,0x5f);")
@@ -688,3 +705,41 @@ 
cpp_quote("EXTERN_GUID(MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_MAX_BUFFERS, 0x
 
cpp_quote("EXTERN_GUID(MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_SYMBOLIC_LINK, 
0x58f0aad8,0x22bf,0x4f8a,0xbb,0x3d,0xd2,0xc4,0x97,0x8c,0x6e,0x2f);")
 cpp_quote("EXTERN_GUID(MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE, 
0xc60ac5fe,0x252a,0x478f,0xa0,0xef,0xbc,0x8f,0xa5,0xf7,0xca,0xd3);")
 cpp_quote("EXTERN_GUID(MF_DEVSOURCE_ATTRIBUTE_SOURCE_TYPE_VIDCAP_GUID, 
0x8ac3587a,0x4ae7,0x42d8,0x99,0xe0,0x0a,0x60,0x13,0xee,0xf9,0x0f);")
+
+cpp_quote("EXTERN_GUID(MF_METADATA_PROVIDER_SERVICE, 0xdb214084, 0x58a4, 
0x4d2e, 0xb8, 0x4f, 0x6f, 0x75, 0x5b, 0x2f, 0x7a, 0xd);")
+cpp_quote("EXTERN_GUID(MF_PROPERTY_HANDLER_SERVICE, 0xa3face02, 0x32b8, 

[Mingw-w64-public] __CRT_UUID_DECL in namespace causes error

2021-05-14 Thread Biswapriyo Nath
If an interface declaration is moved inside a namespace
__CRT_UUID_DECL produces error. The error is: explicit specialization
of 'template const GUID& __mingw_uuidof()' outside its
namespace must use a nested-name-specifier [-fpermissive].

A simple reproducible code is attached (test.cpp). The same thing
happen with qtmultimedia/src/plugins/wmf/player/mfvideorenderercontrol.cpp
file of branch 5.15.2.
#include 

namespace
{
MIDL_INTERFACE("12345678-1234-1234-1234-123456789012")
IFooBar : public IUnknown
{
virtual void Foo(void) = 0;
};

#ifdef __CRT_UUID_DECL
__CRT_UUID_DECL(IFooBar, 0x12345678, 0x1234, 0x1234, 
0x12,0x34,0x12,0x34,0x56,0x78,0x90,0x12)
#endif

GUID var = __uuidof(IFooBar);
}
___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] wofutil def files for x86/x86_64

2021-05-13 Thread Biswapriyo Nath
Both wofutil are same in x64 and arm64, verified with (if not wrong):
nm "C:\Program Files (x86)\Windows
Kits\10\Lib\10.0.19041.0\um\x64\wofutil.lib" | grep __imp


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add wmsdk.h

2021-05-13 Thread Biswapriyo Nath

From 1abbce6636e6da56fd164f68bb9728bfda47e193 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Thu, 13 May 2021 20:58:22 +0530
Subject: [PATCH] headers: Add wmsdk.h

qtmultimedia checks for this in config.tests.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/wmsdk.h | 13 +
 1 file changed, 13 insertions(+)
 create mode 100644 mingw-w64-headers/include/wmsdk.h

diff --git a/mingw-w64-headers/include/wmsdk.h 
b/mingw-w64-headers/include/wmsdk.h
new file mode 100644
index 000..c524745
--- /dev/null
+++ b/mingw-w64-headers/include/wmsdk.h
@@ -0,0 +1,13 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+#include 
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+
+#include 
+
+#endif /* WINAPI_PARTITION_DESKTOP */
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add definitions for Compact OS compression.

2021-05-13 Thread Biswapriyo Nath
The patch does not contain anything from wofapi.h (though the name has
literally "WOF" in it). And yes, we all know it's WinSDK, docs does
not match with actual implementation :)


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add definitions for Compact OS compression.

2021-05-12 Thread Biswapriyo Nath
According to WinSDK 10.0.19041.0, Christian seems to be correct.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH 4/4] include/winioctl.h: Import definitions from ntddstor.h.

2021-05-10 Thread Biswapriyo Nath
Do we need both DUMMYUNIONNAME and __C89_NAMELESS in struct
_PERSISTENT_RESERVE_COMMAND? BTW, love your kernel mode projects.


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] MINGW trademark claims

2021-05-08 Thread Biswapriyo Nath
This is not MinGW, this is MinGW-w64. BTW, I'm just a normal human not a
lawyer.

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Import wuapi.idl from wine.

2021-05-04 Thread Biswapriyo Nath

From ed477454b564a0d3a4cd1a0af0249fc575b741c5 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Wed, 5 May 2021 10:37:11 +0530
Subject: [PATCH] headers: Import wuapi.idl from wine.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/Makefile.am| 1 +
 mingw-w64-headers/wine-import.sh | 1 +
 2 files changed, 2 insertions(+)

diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index 6e8bc73..4c52681 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -261,6 +261,7 @@ IDL_SRCS = \
   include/wmdrmsdk.idl \
   include/wpcapi.idl \
   include/wtypes.idl \
+  include/wuapi.idl \
   include/xapo.idl \
   include/xaudio2.idl \
   include/xaudio2fx.idl \
diff --git a/mingw-w64-headers/wine-import.sh b/mingw-w64-headers/wine-import.sh
index 3efac13..c0929f9 100755
--- a/mingw-w64-headers/wine-import.sh
+++ b/mingw-w64-headers/wine-import.sh
@@ -208,6 +208,7 @@ for f in \
wmsbuffer \
wmsdkidl \
wpcapi \
+   wuapi \
xapo \
xaudio2 \
xaudio2fx \
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add missing names in shlwapi.h

2021-05-02 Thread Biswapriyo Nath

From 3bde731614cf9ea87f75a98752b905785b984485 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sun, 2 May 2021 23:21:56 +0530
Subject: [PATCH] headers: Add missing names in shlwapi.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/shlwapi.h | 32 -
 1 file changed, 27 insertions(+), 5 deletions(-)

diff --git a/mingw-w64-headers/include/shlwapi.h 
b/mingw-w64-headers/include/shlwapi.h
index 41ed0fe..dc10c23 100644
--- a/mingw-w64-headers/include/shlwapi.h
+++ b/mingw-w64-headers/include/shlwapi.h
@@ -601,7 +601,18 @@ LWSTDAPI PathMatchSpecExW(LPCWSTR pszFile, LPCWSTR 
pszSpec, DWORD dwFlags);
 #define URL_UNESCAPE_HIGH_ANSI_ONLY 0x0040
 #define URL_INTERNAL_PATH 0x0080
 #define URL_FILE_USE_PATHURL 0x0001
+#if _WIN32_IE >= _WIN32_IE_IE60SP2
 #define URL_DONT_UNESCAPE 0x0002
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN7
+#define URL_ESCAPE_AS_UTF8 0x0004
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN8
+#define URL_UNESCAPE_AS_UTF8 URL_ESCAPE_AS_UTF8
+#define URL_ESCAPE_ASCII_URI_COMPONENT 0x0008
+#define URL_ESCAPE_URI_COMPONENT (URL_ESCAPE_ASCII_URI_COMPONENT | 
URL_ESCAPE_AS_UTF8)
+#define URL_UNESCAPE_URI_COMPONENT URL_UNESCAPE_AS_UTF8
+#endif
 #define URL_ESCAPE_PERCENT 0x1000
 #define URL_ESCAPE_SEGMENT_ONLY 0x2000
 
@@ -754,6 +765,7 @@ LWSTDAPI PathMatchSpecExW(LPCWSTR pszFile, LPCWSTR pszSpec, 
DWORD dwFlags);
 
 #define SRRF_NOEXPAND 0x1000
 #define SRRF_ZEROONFAILURE 0x2000
+#define SRRF_NOVIRT 0x4000
 
   LWSTDAPI_(LONG) SHRegGetValueA(HKEY hkey,LPCSTR pszSubKey,LPCSTR 
pszValue,SRRF dwFlags,DWORD *pdwType,void *pvData,DWORD *pcbData);
   LWSTDAPI_(LONG) SHRegGetValueW(HKEY hkey,LPCWSTR pszSubKey,LPCWSTR 
pszValue,SRRF dwFlags,DWORD *pdwType,void *pvData,DWORD *pcbData);
@@ -863,10 +875,19 @@ LWSTDAPI PathMatchSpecExW(LPCWSTR pszFile, LPCWSTR 
pszSpec, DWORD dwFlags);
 ASSOCF_REMAPRUNDLL = 0x0080,
 ASSOCF_NOFIXUPS = 0x0100,
 ASSOCF_IGNOREBASECLASS = 0x0200,
-ASSOCF_INIT_IGNOREUNKNOWN = 0x0400,
-ASSOCF_INIT_FIXED_PROGID = 0x0800,
-ASSOCF_IS_PROTOCOL = 0x1000,
-ASSOCF_INIT_FOR_FILE = 0x2000
+ASSOCF_INIT_IGNOREUNKNOWN = 0x0400
+#if NTDDI_VERSION >= NTDDI_WIN8
+,ASSOCF_INIT_FIXED_PROGID = 0x0800
+,ASSOCF_IS_PROTOCOL = 0x1000
+,ASSOCF_INIT_FOR_FILE = 0x2000
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_RS1
+,ASSOCF_IS_FULL_URI = 0x4000
+,ASSOCF_PER_MACHINE_ONLY = 0x8000
+#endif
+#if NTDDI_VERSION >= NTDDI_WIN10_RS4
+,ASSOCF_APP_TO_APP = 0x0001
+#endif
   };
 
   typedef DWORD ASSOCF;
@@ -1213,6 +1234,7 @@ typedef const QITAB *LPCQITAB;
 #define CTF_INSIST 0x0001
 #define CTF_THREAD_REF 0x0002
 #define CTF_PROCESS_REF 0x0004
+#define CTF_COINIT_STA 0x0008
 #define CTF_COINIT 0x0008
 #if (_WIN32_IE >= _WIN32_IE_IE60)
 #define CTF_FREELIBANDEXIT 0x0010
@@ -1370,7 +1392,7 @@ typedef const QITAB *LPCQITAB;
 #define SHGVSPB_FOLDER (SHGVSPB_PERUSER | SHGVSPB_PERFOLDER)
 #define SHGVSPB_FOLDERNODEFAULTS (SHGVSPB_PERUSER | SHGVSPB_PERFOLDER | 
SHGVSPB_NOAUTODEFAULTS)
 #define SHGVSPB_USERDEFAULTS (SHGVSPB_PERUSER | SHGVSPB_ALLFOLDERS)
-#define SHGVSPB_GLOBALDEAFAULTS (SHGVSPB_ALLUSERS | SHGVSPB_ALLFOLDERS)
+#define SHGVSPB_GLOBALDEFAULTS (SHGVSPB_ALLUSERS | SHGVSPB_ALLFOLDERS)
 
   LWSTDAPI SHGetViewStatePropertyBag(LPCITEMIDLIST pidl,LPCWSTR 
pszBagName,DWORD dwFlags,REFIID riid,void **ppv);
 #endif
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] Question: Should opaque UCRT structures be added?

2021-05-01 Thread Biswapriyo Nath
Some projects like ruby, perl, gnulib etc. uses the iobuf and ioinfo
structures heavily. Is it possible to add those structure definition
for UCRT here? Just asking :)


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] Question: Should not the UCRT _iobuf condition be in every declaration?

2021-04-30 Thread Biswapriyo Nath
The `void *_Placeholder` was added in struct _iobuf in stdio.h only.
But struct _iobuf is declared in other three headers also. Thoughts
attached.
From 12a57820b60b5e47ff347b9498a43b74d00d0c95 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Sat, 1 May 2021 11:07:37 +0530
Subject: [PATCH] headers: Follow struct _iobuf delcaration in other files.

The _UCRT condition in struct _iobuf was added in this
fe226dd9028f3f64bef4b4384edb1ef2c95c15f4 commit previously..

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-crt/include/internal.h | 4 
 mingw-w64-headers/crt/mbstring.h | 4 
 mingw-w64-headers/crt/wchar.h| 4 
 3 files changed, 12 insertions(+)

diff --git a/mingw-w64-crt/include/internal.h b/mingw-w64-crt/include/internal.h
index 8a7aeb1..078ded2 100644
--- a/mingw-w64-crt/include/internal.h
+++ b/mingw-w64-crt/include/internal.h
@@ -73,6 +73,9 @@ extern "C" {
 #ifndef _FILE_DEFINED
 #define _FILE_DEFINED
   struct _iobuf {
+#ifdef _UCRT
+void *_Placeholder;
+#else
 char *_ptr;
 int _cnt;
 char *_base;
@@ -81,6 +84,7 @@ extern "C" {
 int _charbuf;
 int _bufsiz;
 char *_tmpfname;
+#endif
   };
   typedef struct _iobuf FILE;
 #endif
diff --git a/mingw-w64-headers/crt/mbstring.h b/mingw-w64-headers/crt/mbstring.h
index b6e48a8..a236c0e 100644
--- a/mingw-w64-headers/crt/mbstring.h
+++ b/mingw-w64-headers/crt/mbstring.h
@@ -16,6 +16,9 @@ extern "C" {
 
 #ifndef _FILE_DEFINED
   struct _iobuf {
+#ifdef _UCRT
+void *_Placeholder;
+#else
 char *_ptr;
 int _cnt;
 char *_base;
@@ -24,6 +27,7 @@ extern "C" {
 int _charbuf;
 int _bufsiz;
 char *_tmpfname;
+#endif
   };
   typedef struct _iobuf FILE;
 #define _FILE_DEFINED
diff --git a/mingw-w64-headers/crt/wchar.h b/mingw-w64-headers/crt/wchar.h
index ddafe77..aedca07 100644
--- a/mingw-w64-headers/crt/wchar.h
+++ b/mingw-w64-headers/crt/wchar.h
@@ -40,6 +40,9 @@ extern "C" {
 
 #ifndef _FILE_DEFINED
   struct _iobuf {
+#ifdef _UCRT
+void *_Placeholder;
+#else
 char *_ptr;
 int _cnt;
 char *_base;
@@ -48,6 +51,7 @@ extern "C" {
 int _charbuf;
 int _bufsiz;
 char *_tmpfname;
+#endif
   };
   typedef struct _iobuf FILE;
 #define _FILE_DEFINED
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add coclasses in rdpencomapi.idl

2021-04-28 Thread Biswapriyo Nath
It seems that lh_mouse misses my previous updated patch of
rdpencomapi.idl. I should have sent full patch at once. But no
problem. Here is the addition to that rdpencomapi.idl. Also
Makefile.in was not regenerated last time.
From aa44619f81115fab1cc41804d9531295a87db7f0 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Wed, 28 Apr 2021 23:12:56 +0530
Subject: [PATCH] headers: Add coclasses in rdpencomapi.idl

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/rdpencomapi.idl | 318 ++
 1 file changed, 318 insertions(+)

diff --git a/mingw-w64-headers/include/rdpencomapi.idl 
b/mingw-w64-headers/include/rdpencomapi.idl
index 121f29d..0dbc4ef 100644
--- a/mingw-w64-headers/include/rdpencomapi.idl
+++ b/mingw-w64-headers/include/rdpencomapi.idl
@@ -617,4 +617,322 @@ interface IRDPSRAPITransportStreamBuffer : IUnknown
   HRESULT Context([in] IUnknown *pContext);
 }
 
+[object, uuid(ea81c254-f5af-4e40-982e-3e63bb595276), local, 
pointer_default(unique)]
+interface IRDPSRAPITransportStreamEvents : IUnknown
+{
+  [id(DISPID_RDPSRAPI_EVENT_ON_STREAM_SENDCOMPLETED)]
+  void OnWriteCompleted([in] IRDPSRAPITransportStreamBuffer *pBuffer);
+
+  [id(DISPID_RDPSRAPI_EVENT_ON_STREAM_DATARECEIVED)]
+  void OnReadCompleted([in] IRDPSRAPITransportStreamBuffer *pBuffer);
+
+  [id(DISPID_RDPSRAPI_EVENT_ON_STREAM_CLOSED)]
+  void OnStreamClosed([in] HRESULT hrReason);
+}
+
+[object, uuid(36cfa065-43bb-4ef7-aed7-9b88a5053036), pointer_default(unique)]
+interface IRDPSRAPITransportStream : IUnknown
+{
+  [id(DISPID_RDPSRAPI_METHOD_STREAM_ALLOCBUFFER)]
+  HRESULT AllocBuffer([in] long maxPayload, [out, retval] 
IRDPSRAPITransportStreamBuffer **ppBuffer);
+
+  [id(DISPID_RDPSRAPI_METHOD_STREAM_FREEBUFFER)]
+  HRESULT FreeBuffer([in] IRDPSRAPITransportStreamBuffer *pBuffer);
+
+  [id(DISPID_RDPSRAPI_METHOD_STREAMSENDDATA)]
+  HRESULT WriteBuffer([in] IRDPSRAPITransportStreamBuffer *pBuffer);
+
+  [id(DISPID_RDPSRAPI_METHOD_STREAMREADDATA)]
+  HRESULT ReadBuffer([in] IRDPSRAPITransportStreamBuffer *pBuffer);
+
+  [id(DISPID_RDPSRAPI_METHOD_STREAMOPEN)]
+  HRESULT Open([in] IRDPSRAPITransportStreamEvents *pCallbacks);
+
+  [id(DISPID_RDPSRAPI_METHOD_STREAMCLOSE)]
+  HRESULT Close(void);
+}
+
+[object, uuid(eeb20886-e470-4cf6-842b-2739c0ec5cfb), dual, 
pointer_default(unique)]
+interface IRDPSRAPISharingSession : IDispatch
+{
+  [id(DISPID_RDPSRAPI_METHOD_OPEN)]
+  HRESULT Open(void);
+
+  [id(DISPID_RDPSRAPI_METHOD_CLOSE)]
+  HRESULT Close(void);
+
+  [propput, id(DISPID_RDPSRAPI_PROP_SESSION_COLORDEPTH)]
+  HRESULT ColorDepth([in] long colorDepth);
+
+  [propget, id(DISPID_RDPSRAPI_PROP_SESSION_COLORDEPTH)]
+  HRESULT ColorDepth([out, retval] long *pColorDepth);
+
+  [propget, id(DISPID_RDPSRAPI_PROP_SESSION_PROPERTIES)]
+  HRESULT Properties([out, retval] IRDPSRAPISessionProperties **ppVal);
+
+  [propget, id(DISPID_RDPSRAPI_PROP_ATTENDEES)]
+  HRESULT Attendees([out, retval] IRDPSRAPIAttendeeManager **ppVal);
+
+  [propget, id(DISPID_RDPSRAPI_PROP_INVITATIONS)]
+  HRESULT Invitations([out, retval] IRDPSRAPIInvitationManager **ppVal);
+
+  [propget, id(DISPID_RDPSRAPI_PROP_APPLICATION_FILTER)]
+  HRESULT ApplicationFilter([out, retval] IRDPSRAPIApplicationFilter **ppVal);
+
+  [propget, id(DISPID_RDPSRAPI_PROP_CHANNELMANAGER)]
+  HRESULT VirtualChannelManager([out, retval] IRDPSRAPIVirtualChannelManager 
**ppVal);
+
+  [id(DISPID_RDPSRAPI_METHOD_PAUSE)]
+  HRESULT Pause(void);
+
+  [id(DISPID_RDPSRAPI_METHOD_RESUME)]
+  HRESULT Resume(void);
+
+  [id(DISPID_RDPSRAPI_METHOD_CONNECTTOCLIENT)]
+  HRESULT ConnectToClient([in] BSTR bstrConnectionString);
+
+  [id(DISPID_RDPSRAPI_METHOD_SETSHAREDRECT)]
+  HRESULT SetDesktopSharedRect([in] long left, [in] long top, [in] long right, 
[in] long bottom);
+
+  [id(DISPID_RDPSRAPI_METHOD_GETSHAREDRECT)]
+  HRESULT GetDesktopSharedRect([out] long *pleft, [out] long *ptop, [out] long 
*pright, [out] long *pbottom);
+}
+
+[object, uuid(fee4ee57-e3e8-4205-8fb0-8fd1d0675c21), dual, 
pointer_default(unique)]
+interface IRDPSRAPISharingSession2 : IRDPSRAPISharingSession
+{
+  [id(DISPID_RDPSRAPI_METHOD_CONNECTUSINGTRANSPORTSTREAM)]
+  HRESULT ConnectUsingTransportStream([in] IRDPSRAPITransportStream *pStream, 
[in] BSTR bstrGroup, [in] BSTR bstrAuthenticatedAttendeeName);
+
+  [propget, id(DISPID_RDPSRAPI_PROP_FRAMEBUFFER)]
+  HRESULT FrameBuffer([out, retval] IRDPSRAPIFrameBuffer **ppVal);
+
+  [id(DISPID_RDPSRAPI_METHOD_SENDCONTROLLEVELCHANGERESPONSE)]
+  HRESULT SendControlLevelChangeResponse([in] IRDPSRAPIAttendee *pAttendee, 
[in] CTRL_LEVEL RequestedLevel, [in] long ReasonCode);
+}
+
+[uuid(cc802d05-ae07-4c15-b496-db9d22aa0a84), version(1.0)]
+library RDPCOMAPILib
+{
+  importlib("stdole32.tlb");
+  importlib("stdole2.tlb");
+
+  typedef enum
+  {
+CONST_MAX_CHANNEL_MESSAGE_SIZE = 1024,
+CONST_MAX_CHANNEL_NAME_LEN = 8,
+CONST_MAX_LEGACY_CHANNEL_MESSAGE_SIZE = 409600,
+CONST_ATTENDEE_ID_EVERYONE = -1,
+CONST_

[Mingw-w64-public] [PATCH] headers/sec_api: Add strnlen_s definition.

2021-04-28 Thread Biswapriyo Nath

From 130a886913d019bd19e8b3cc02873a40a890e000 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Wed, 28 Apr 2021 12:00:37 +0530
Subject: [PATCH] headers/sec_api: Add strnlen_s definition.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/crt/sec_api/string_s.h | 4 
 1 file changed, 4 insertions(+)

diff --git a/mingw-w64-headers/crt/sec_api/string_s.h 
b/mingw-w64-headers/crt/sec_api/string_s.h
index 8f29587..f1a9e34 100644
--- a/mingw-w64-headers/crt/sec_api/string_s.h
+++ b/mingw-w64-headers/crt/sec_api/string_s.h
@@ -43,6 +43,10 @@ extern "C" {
   _CRTIMP errno_t __cdecl strcat_s(char *_Dst, rsize_t _SizeInBytes, const 
char * _Src);
   __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, strcat_s, char, _Dest, const 
char *, _Source)
 
+  __forceinline size_t __cdecl strnlen_s(const char * _src, size_t _count) {
+return _src ? strnlen(_src, _count) : 0;
+  }
+
   _SECIMP errno_t __cdecl memmove_s(void *_dest,size_t _numberOfElements,const 
void *_src,size_t _count);
 #ifndef _WSTRING_S_DEFINED
 #define _WSTRING_S_DEFINED
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] [PATCH] headers: Add rdpencomapi.idl file.

2021-04-28 Thread Biswapriyo Nath
Forgot to add the coclasses. Here is the new updated patch.

On Wed, Apr 28, 2021 at 1:49 AM Biswapriyo Nath  wrote:
>
>
From 2b091db263eca8253850918436d8c7199efa7a7e Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Wed, 28 Apr 2021 11:58:16 +0530
Subject: [PATCH] headers: Add rdpencomapi.idl file.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/Makefile.am |   1 +
 mingw-w64-headers/include/rdpencomapi.idl | 938 ++
 2 files changed, 939 insertions(+)
 create mode 100644 mingw-w64-headers/include/rdpencomapi.idl

diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index 35900d5..6e8bc73 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -188,6 +188,7 @@ IDL_SRCS = \
   include/portabledevicetypes.idl \
   include/propidl.idl \
   include/propsys.idl \
+  include/rdpencomapi.idl \
   include/regbag.idl \
   include/sapi51.idl \
   include/sapi53.idl \
diff --git a/mingw-w64-headers/include/rdpencomapi.idl 
b/mingw-w64-headers/include/rdpencomapi.idl
new file mode 100644
index 000..0dbc4ef
--- /dev/null
+++ b/mingw-w64-headers/include/rdpencomapi.idl
@@ -0,0 +1,938 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+import "oaidl.idl";
+import "ocidl.idl";
+
+cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
+
+const int DISPID_RDPSRAPI_METHOD_OPEN = 100;
+const int DISPID_RDPSRAPI_METHOD_CLOSE = 101;
+const int DISPID_RDPSRAPI_METHOD_SETSHAREDRECT = 102;
+const int DISPID_RDPSRAPI_METHOD_GETSHAREDRECT = 103;
+const int DISPID_RDPSRAPI_METHOD_VIEWERCONNECT = 104;
+const int DISPID_RDPSRAPI_METHOD_VIEWERDISCONNECT = 105;
+const int DISPID_RDPSRAPI_METHOD_TERMINATE_CONNECTION = 106;
+const int DISPID_RDPSRAPI_METHOD_CREATE_INVITATION = 107;
+const int DISPID_RDPSRAPI_METHOD_REQUEST_CONTROL = 108;
+const int DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_CREATE = 109;
+const int DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_SEND_DATA = 110;
+const int DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_SET_ACCESS = 111;
+const int DISPID_RDPSRAPI_METHOD_PAUSE = 112;
+const int DISPID_RDPSRAPI_METHOD_RESUME = 113;
+const int DISPID_RDPSRAPI_METHOD_SHOW_WINDOW = 114;
+const int DISPID_RDPSRAPI_METHOD_REQUEST_COLOR_DEPTH_CHANGE = 115;
+const int DISPID_RDPSRAPI_METHOD_STARTREVCONNECTLISTENER = 116;
+const int DISPID_RDPSRAPI_METHOD_CONNECTTOCLIENT = 117;
+const int DISPID_RDPSRAPI_METHOD_SET_RENDERING_SURFACE = 118;
+const int DISPID_RDPSRAPI_METHOD_SEND_MOUSE_BUTTON_EVENT = 119;
+const int DISPID_RDPSRAPI_METHOD_SEND_MOUSE_MOVE_EVENT = 120;
+const int DISPID_RDPSRAPI_METHOD_SEND_MOUSE_WHEEL_EVENT = 121;
+const int DISPID_RDPSRAPI_METHOD_SEND_KEYBOARD_EVENT = 122;
+const int DISPID_RDPSRAPI_METHOD_SEND_SYNC_EVENT = 123;
+const int DISPID_RDPSRAPI_METHOD_BEGIN_TOUCH_FRAME = 124;
+const int DISPID_RDPSRAPI_METHOD_ADD_TOUCH_INPUT = 125;
+const int DISPID_RDPSRAPI_METHOD_END_TOUCH_FRAME = 126;
+const int DISPID_RDPSRAPI_METHOD_CONNECTUSINGTRANSPORTSTREAM = 127;
+const int DISPID_RDPSRAPI_METHOD_SENDCONTROLLEVELCHANGERESPONSE = 148;
+const int DISPID_RDPSRAPI_METHOD_GETFRAMEBUFFERBITS = 149;
+
+const int DISPID_RDPSRAPI_PROP_DISPIDVALUE = 200;
+const int DISPID_RDPSRAPI_PROP_ID = 201;
+const int DISPID_RDPSRAPI_PROP_SESSION_PROPERTIES = 202;
+const int DISPID_RDPSRAPI_PROP_ATTENDEES = 203;
+const int DISPID_RDPSRAPI_PROP_INVITATIONS = 204;
+const int DISPID_RDPSRAPI_PROP_INVITATION = 205;
+const int DISPID_RDPSRAPI_PROP_CHANNELMANAGER = 206;
+const int DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETNAME = 207;
+const int DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETFLAGS = 208;
+const int DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETPRIORITY = 209;
+const int DISPID_RDPSRAPI_PROP_WINDOWID = 210;
+const int DISPID_RDPSRAPI_PROP_APPLICATION = 211;
+const int DISPID_RDPSRAPI_PROP_WINDOWSHARED = 212;
+const int DISPID_RDPSRAPI_PROP_WINDOWNAME = 213;
+const int DISPID_RDPSRAPI_PROP_APPNAME = 214;
+const int DISPID_RDPSRAPI_PROP_APPLICATION_FILTER = 215;
+const int DISPID_RDPSRAPI_PROP_WINDOW_LIST = 216;
+const int DISPID_RDPSRAPI_PROP_APPLICATION_LIST = 217;
+const int DISPID_RDPSRAPI_PROP_APPFILTER_ENABLED = 218;
+const int DISPID_RDPSRAPI_PROP_APPFILTERENABLED = 219;
+const int DISPID_RDPSRAPI_PROP_SHARED = 220;
+const int DISPID_RDPSRAPI_PROP_INVITATIONITEM = 221;
+const int DISPID_RDPSRAPI_PROP_DBG_CLX_CMDLINE = 222;
+const int DISPID_RDPSRAPI_PROP_APPFLAGS = 223;
+const int DISPID_RDPSRAPI_PROP_WNDFLAGS = 224;
+const int DISPID_RDPSRAPI_PROP_PROTOCOL_TYPE = 225;
+const int DISPID_RDPSRAPI_PROP_LOCAL_PORT = 226;
+const int DISPID_RDPSRAPI_PROP_LOCAL_IP = 227;
+const int DISPID_RDPSRAPI_PROP_PEER_PORT = 228;
+const int DISPID_RDPSRAPI_PROP_PEER_IP = 229;
+const int DISPID_RDPSRAPI_PROP_ATTENDEE_FLAGS = 230;
+const int DISPID_RDP

[Mingw-w64-public] [PATCH] headers: Add rdpencomapi.idl file.

2021-04-27 Thread Biswapriyo Nath

From aed783445a96eef815db5494e25f7b8962c49d69 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Wed, 28 Apr 2021 01:47:33 +0530
Subject: [PATCH] headers: Add rdpencomapi.idl file.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/Makefile.am |   1 +
 mingw-w64-headers/include/rdpencomapi.idl | 620 ++
 2 files changed, 621 insertions(+)
 create mode 100644 mingw-w64-headers/include/rdpencomapi.idl

diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index 35900d5..6e8bc73 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -188,6 +188,7 @@ IDL_SRCS = \
   include/portabledevicetypes.idl \
   include/propidl.idl \
   include/propsys.idl \
+  include/rdpencomapi.idl \
   include/regbag.idl \
   include/sapi51.idl \
   include/sapi53.idl \
diff --git a/mingw-w64-headers/include/rdpencomapi.idl 
b/mingw-w64-headers/include/rdpencomapi.idl
new file mode 100644
index 000..121f29d
--- /dev/null
+++ b/mingw-w64-headers/include/rdpencomapi.idl
@@ -0,0 +1,620 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+import "oaidl.idl";
+import "ocidl.idl";
+
+cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
+
+const int DISPID_RDPSRAPI_METHOD_OPEN = 100;
+const int DISPID_RDPSRAPI_METHOD_CLOSE = 101;
+const int DISPID_RDPSRAPI_METHOD_SETSHAREDRECT = 102;
+const int DISPID_RDPSRAPI_METHOD_GETSHAREDRECT = 103;
+const int DISPID_RDPSRAPI_METHOD_VIEWERCONNECT = 104;
+const int DISPID_RDPSRAPI_METHOD_VIEWERDISCONNECT = 105;
+const int DISPID_RDPSRAPI_METHOD_TERMINATE_CONNECTION = 106;
+const int DISPID_RDPSRAPI_METHOD_CREATE_INVITATION = 107;
+const int DISPID_RDPSRAPI_METHOD_REQUEST_CONTROL = 108;
+const int DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_CREATE = 109;
+const int DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_SEND_DATA = 110;
+const int DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_SET_ACCESS = 111;
+const int DISPID_RDPSRAPI_METHOD_PAUSE = 112;
+const int DISPID_RDPSRAPI_METHOD_RESUME = 113;
+const int DISPID_RDPSRAPI_METHOD_SHOW_WINDOW = 114;
+const int DISPID_RDPSRAPI_METHOD_REQUEST_COLOR_DEPTH_CHANGE = 115;
+const int DISPID_RDPSRAPI_METHOD_STARTREVCONNECTLISTENER = 116;
+const int DISPID_RDPSRAPI_METHOD_CONNECTTOCLIENT = 117;
+const int DISPID_RDPSRAPI_METHOD_SET_RENDERING_SURFACE = 118;
+const int DISPID_RDPSRAPI_METHOD_SEND_MOUSE_BUTTON_EVENT = 119;
+const int DISPID_RDPSRAPI_METHOD_SEND_MOUSE_MOVE_EVENT = 120;
+const int DISPID_RDPSRAPI_METHOD_SEND_MOUSE_WHEEL_EVENT = 121;
+const int DISPID_RDPSRAPI_METHOD_SEND_KEYBOARD_EVENT = 122;
+const int DISPID_RDPSRAPI_METHOD_SEND_SYNC_EVENT = 123;
+const int DISPID_RDPSRAPI_METHOD_BEGIN_TOUCH_FRAME = 124;
+const int DISPID_RDPSRAPI_METHOD_ADD_TOUCH_INPUT = 125;
+const int DISPID_RDPSRAPI_METHOD_END_TOUCH_FRAME = 126;
+const int DISPID_RDPSRAPI_METHOD_CONNECTUSINGTRANSPORTSTREAM = 127;
+const int DISPID_RDPSRAPI_METHOD_SENDCONTROLLEVELCHANGERESPONSE = 148;
+const int DISPID_RDPSRAPI_METHOD_GETFRAMEBUFFERBITS = 149;
+
+const int DISPID_RDPSRAPI_PROP_DISPIDVALUE = 200;
+const int DISPID_RDPSRAPI_PROP_ID = 201;
+const int DISPID_RDPSRAPI_PROP_SESSION_PROPERTIES = 202;
+const int DISPID_RDPSRAPI_PROP_ATTENDEES = 203;
+const int DISPID_RDPSRAPI_PROP_INVITATIONS = 204;
+const int DISPID_RDPSRAPI_PROP_INVITATION = 205;
+const int DISPID_RDPSRAPI_PROP_CHANNELMANAGER = 206;
+const int DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETNAME = 207;
+const int DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETFLAGS = 208;
+const int DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETPRIORITY = 209;
+const int DISPID_RDPSRAPI_PROP_WINDOWID = 210;
+const int DISPID_RDPSRAPI_PROP_APPLICATION = 211;
+const int DISPID_RDPSRAPI_PROP_WINDOWSHARED = 212;
+const int DISPID_RDPSRAPI_PROP_WINDOWNAME = 213;
+const int DISPID_RDPSRAPI_PROP_APPNAME = 214;
+const int DISPID_RDPSRAPI_PROP_APPLICATION_FILTER = 215;
+const int DISPID_RDPSRAPI_PROP_WINDOW_LIST = 216;
+const int DISPID_RDPSRAPI_PROP_APPLICATION_LIST = 217;
+const int DISPID_RDPSRAPI_PROP_APPFILTER_ENABLED = 218;
+const int DISPID_RDPSRAPI_PROP_APPFILTERENABLED = 219;
+const int DISPID_RDPSRAPI_PROP_SHARED = 220;
+const int DISPID_RDPSRAPI_PROP_INVITATIONITEM = 221;
+const int DISPID_RDPSRAPI_PROP_DBG_CLX_CMDLINE = 222;
+const int DISPID_RDPSRAPI_PROP_APPFLAGS = 223;
+const int DISPID_RDPSRAPI_PROP_WNDFLAGS = 224;
+const int DISPID_RDPSRAPI_PROP_PROTOCOL_TYPE = 225;
+const int DISPID_RDPSRAPI_PROP_LOCAL_PORT = 226;
+const int DISPID_RDPSRAPI_PROP_LOCAL_IP = 227;
+const int DISPID_RDPSRAPI_PROP_PEER_PORT = 228;
+const int DISPID_RDPSRAPI_PROP_PEER_IP = 229;
+const int DISPID_RDPSRAPI_PROP_ATTENDEE_FLAGS = 230;
+const int DISPID_RDPSRAPI_PROP_CONINFO = 231;
+const int DISPID_RDPSRAPI_PROP_CONNECTION_STRING = 232;
+const int DISPID_RDPSRAPI_PRO

Re: [Mingw-w64-public] Add missing function declarations to mingw-w64-headers/include/shlwapi.h

2021-04-27 Thread Biswapriyo Nath
1. Does changing all `#ifndef` to `#if !defined()` make any difference?
2. It is not necessary to comment every #ifdef...#endif sections. If you
want comment use C89 comment style like this /*...*/
3. Remove comma from last element in enum. C89 :(

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add missing names in ntsecapi.h

2021-04-26 Thread Biswapriyo Nath

From 25460572ab90c9028c1225a4570c343ce89b6435 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Tue, 27 Apr 2021 01:55:20 +0530
Subject: [PATCH] headers: Add missing names in ntsecapi.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/ntsecapi.h | 185 +++
 1 file changed, 161 insertions(+), 24 deletions(-)

diff --git a/mingw-w64-headers/include/ntsecapi.h 
b/mingw-w64-headers/include/ntsecapi.h
index 99fd3cb..2d4f141 100644
--- a/mingw-w64-headers/include/ntsecapi.h
+++ b/mingw-w64-headers/include/ntsecapi.h
@@ -26,9 +26,25 @@ extern "C" {
 
 #ifndef _NTLSA_IFS_
   typedef enum _SECURITY_LOGON_TYPE {
-Interactive = 
2,Network,Batch,Service,Proxy,Unlock,NetworkCleartext,NewCredentials,RemoteInteractive,CachedInteractive,
-CachedRemoteInteractive,CachedUnlock
-  } SECURITY_LOGON_TYPE,*PSECURITY_LOGON_TYPE;
+UndefinedLogonType = 0,
+Interactive = 2,
+Network,
+Batch,
+Service,
+Proxy,
+Unlock,
+NetworkCleartext,
+NewCredentials
+#if _WIN32_WINNT >= 0x0501
+,RemoteInteractive
+,CachedInteractive
+#endif
+#if _WIN32_WINNT >= 0x0502
+,CachedRemoteInteractive
+,CachedUnlock
+#endif
+  } SECURITY_LOGON_TYPE, *PSECURITY_LOGON_TYPE;
+
 #endif
 
 #ifndef _NTLSA_IFS_
@@ -36,12 +52,44 @@ extern "C" {
 #ifndef _NTLSA_AUDIT_
 #define _NTLSA_AUDIT_
 
-  typedef enum _SE_ADT_PARAMETER_TYPE {
-SeAdtParmTypeNone = 
0,SeAdtParmTypeString,SeAdtParmTypeFileSpec,SeAdtParmTypeUlong,SeAdtParmTypeSid,SeAdtParmTypeLogonId,
-
SeAdtParmTypeNoLogonId,SeAdtParmTypeAccessMask,SeAdtParmTypePrivs,SeAdtParmTypeObjectTypes,SeAdtParmTypeHexUlong,SeAdtParmTypePtr,
-
SeAdtParmTypeTime,SeAdtParmTypeGuid,SeAdtParmTypeLuid,SeAdtParmTypeHexInt64,SeAdtParmTypeStringList,SeAdtParmTypeSidList,
-
SeAdtParmTypeDuration,SeAdtParmTypeUserAccountControl,SeAdtParmTypeNoUac,SeAdtParmTypeMessage,SeAdtParmTypeDateTime,SeAdtParmTypeSockAddr
-  } SE_ADT_PARAMETER_TYPE,*PSE_ADT_PARAMETER_TYPE;
+typedef enum _SE_ADT_PARAMETER_TYPE {
+SeAdtParmTypeNone = 0,
+SeAdtParmTypeString,
+SeAdtParmTypeFileSpec,
+SeAdtParmTypeUlong,
+SeAdtParmTypeSid,
+SeAdtParmTypeLogonId,
+SeAdtParmTypeNoLogonId,
+SeAdtParmTypeAccessMask,
+SeAdtParmTypePrivs,
+SeAdtParmTypeObjectTypes,
+SeAdtParmTypeHexUlong,
+SeAdtParmTypePtr,
+SeAdtParmTypeTime,
+SeAdtParmTypeGuid,
+SeAdtParmTypeLuid,
+SeAdtParmTypeHexInt64,
+SeAdtParmTypeStringList,
+SeAdtParmTypeSidList,
+SeAdtParmTypeDuration,
+SeAdtParmTypeUserAccountControl,
+SeAdtParmTypeNoUac,
+SeAdtParmTypeMessage,
+SeAdtParmTypeDateTime,
+SeAdtParmTypeSockAddr,
+SeAdtParmTypeSD,
+SeAdtParmTypeLogonHours,
+SeAdtParmTypeLogonIdNoSid,
+SeAdtParmTypeUlongNoConv,
+SeAdtParmTypeSockAddrNoPort,
+SeAdtParmTypeAccessReason,
+SeAdtParmTypeStagingReason,
+SeAdtParmTypeResourceAttribute,
+SeAdtParmTypeClaims,
+SeAdtParmTypeLogonIdAsSid,
+SeAdtParmTypeMultiSzString,
+SeAdtParmTypeLogonIdEx
+  } SE_ADT_PARAMETER_TYPE, *PSE_ADT_PARAMETER_TYPE;
 
 #include 
 
@@ -61,6 +109,19 @@ extern "C" {
 PVOID Address;
   } SE_ADT_PARAMETER_ARRAY_ENTRY,*PSE_ADT_PARAMETER_ARRAY_ENTRY;
 
+  typedef struct _SE_ADT_ACCESS_REASON {
+ACCESS_MASK AccessMask;
+ULONG AccessReasons[32];
+ULONG ObjectTypeIndex;
+ULONG AccessGranted;
+PSECURITY_DESCRIPTOR SecurityDescriptor;
+  } SE_ADT_ACCESS_REASON, *PSE_ADT_ACCESS_REASON;
+
+  typedef struct _SE_ADT_CLAIMS {
+ULONG Length;
+PCLAIMS_BLOB Claims;
+  } SE_ADT_CLAIMS, *PSE_ADT_CLAIMS;
+
 #define SE_MAX_AUDIT_PARAMETERS 32
 #define SE_MAX_GENERIC_AUDIT_PARAMETERS 28
 
@@ -71,12 +132,31 @@ extern "C" {
 ULONG Length;
 USHORT Type;
 ULONG Flags;
-SE_ADT_PARAMETER_ARRAY_ENTRY Parameters[SE_MAX_AUDIT_PARAMETERS ];
+SE_ADT_PARAMETER_ARRAY_ENTRY Parameters[SE_MAX_AUDIT_PARAMETERS];
   } SE_ADT_PARAMETER_ARRAY,*PSE_ADT_PARAMETER_ARRAY;
 
+  typedef struct _SE_ADT_PARAMETER_ARRAY_EX {
+ULONG CategoryId;
+ULONG AuditId;
+ULONG Version;
+ULONG ParameterCount;
+ULONG Length;
+USHORT FlatSubCategoryId;
+USHORT Type;
+ULONG Flags;
+SE_ADT_PARAMETER_ARRAY_ENTRY Parameters[SE_MAX_AUDIT_PARAMETERS];
+  } SE_ADT_PARAMETER_ARRAY_EX, *PSE_ADT_PARAMETER_ARRAY_EX;
+
 #define SE_ADT_PARAMETERS_SELF_RELATIVE 0x0001
-#endif
-#endif
+#define SE_ADT_PARAMETERS_SEND_TO_LSA 0x0002
+#define SE_ADT_PARAMETER_EXTENSIBLE_AUDIT 0x0004
+#define SE_ADT_PARAMETER_GENERIC_AUDIT 0x0008
+#define SE_ADT_PARAMETER_WRITE_SYNCHRONOUS 0x0010
+
+#define LSAP_SE_ADT_PARAMETER_ARRAY_TRUE_SIZE(AuditParameters) 
(sizeof(SE_ADT_PARAMETER_ARRAY) - sizeof(SE_ADT_PARAMETER_ARRAY_ENTRY) * 
(SE_MAX_AUDIT_PARAMETERS - AuditParameters->ParameterCount))
+
+#endif /* _NTLSA_AUDIT_ */
+#endif /* _NTLSA_IFS_ */
 
   typedef enum _POLICY_AUDIT_EVENT_TYPE {
 AuditCategorySystem 

[Mingw-w64-public] [PATCH] headers: Add missing values in winerror.h

2021-04-25 Thread Biswapriyo Nath

From 7ec990e83e74470fa989d69e19f90bc6f65d5e13 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Mon, 26 Apr 2021 00:46:21 +0530
Subject: [PATCH] headers: Add missing values in winerror.h

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/include/winerror.h | 9 +
 1 file changed, 9 insertions(+)

diff --git a/mingw-w64-headers/include/winerror.h 
b/mingw-w64-headers/include/winerror.h
index cc16ff2..ee3b72e 100755
--- a/mingw-w64-headers/include/winerror.h
+++ b/mingw-w64-headers/include/winerror.h
@@ -718,6 +718,7 @@
 #define RPC_S_CALL_FAILED __MSABI_LONG(1726)
 #define RPC_S_CALL_FAILED_DNE __MSABI_LONG(1727)
 #define RPC_S_PROTOCOL_ERROR __MSABI_LONG(1728)
+#define RPC_S_PROXY_ACCESS_DENIED __MSABI_LONG(1729)
 #define RPC_S_UNSUPPORTED_TRANS_SYN __MSABI_LONG(1730)
 #define RPC_S_UNSUPPORTED_TYPE __MSABI_LONG(1732)
 #define RPC_S_INVALID_TAG __MSABI_LONG(1733)
@@ -818,6 +819,10 @@
 #define RPC_X_INVALID_PIPE_OBJECT __MSABI_LONG(1830)
 #define RPC_X_WRONG_PIPE_ORDER __MSABI_LONG(1831)
 #define RPC_X_WRONG_PIPE_VERSION __MSABI_LONG(1832)
+#define RPC_S_COOKIE_AUTH_FAILED __MSABI_LONG(1833)
+#define RPC_S_DO_NOT_DISTURB __MSABI_LONG(1834)
+#define RPC_S_SYSTEM_HANDLE_COUNT_EXCEEDED __MSABI_LONG(1835)
+#define RPC_S_SYSTEM_HANDLE_TYPE_MISMATCH __MSABI_LONG(1836)
 #define RPC_S_GROUP_MEMBER_NOT_FOUND __MSABI_LONG(1898)
 #define EPT_S_CANT_CREATE __MSABI_LONG(1899)
 #define RPC_S_INVALID_OBJECT __MSABI_LONG(1900)
@@ -3324,6 +3329,9 @@ __CRT_INLINE HRESULT HRESULT_FROM_WIN32(__LONG32 x) { 
return x <= 0 ? (HRESULT)x
 #define SCARD_E_COMM_DATA_LOST _HRESULT_TYPEDEF_(0x8010002F)
 #define SCARD_E_NO_KEY_CONTAINER _HRESULT_TYPEDEF_(0x80100030)
 #define SCARD_E_SERVER_TOO_BUSY _HRESULT_TYPEDEF_(0x80100031)
+#define SCARD_E_PIN_CACHE_EXPIRED _HRESULT_TYPEDEF_(0x80100032)
+#define SCARD_E_NO_PIN_CACHE _HRESULT_TYPEDEF_(0x80100033)
+#define SCARD_E_READ_ONLY_CARD _HRESULT_TYPEDEF_(0x80100034)
 #define SCARD_W_UNSUPPORTED_CARD _HRESULT_TYPEDEF_(0x80100065)
 #define SCARD_W_UNRESPONSIVE_CARD _HRESULT_TYPEDEF_(0x80100066)
 #define SCARD_W_UNPOWERED_CARD _HRESULT_TYPEDEF_(0x80100067)
@@ -3337,6 +3345,7 @@ __CRT_INLINE HRESULT HRESULT_FROM_WIN32(__LONG32 x) { 
return x <= 0 ? (HRESULT)x
 #define SCARD_W_CARD_NOT_AUTHENTICATED _HRESULT_TYPEDEF_(0x8010006F)
 #define SCARD_W_CACHE_ITEM_NOT_FOUND _HRESULT_TYPEDEF_(0x80100070)
 #define SCARD_W_CACHE_ITEM_STALE _HRESULT_TYPEDEF_(0x80100071)
+#define SCARD_W_CACHE_ITEM_TOO_BIG _HRESULT_TYPEDEF_(0x80100072)
 #define COMADMIN_E_OBJECTERRORS _HRESULT_TYPEDEF_(0x80110401)
 #define COMADMIN_E_OBJECTINVALID _HRESULT_TYPEDEF_(0x80110402)
 #define COMADMIN_E_KEYMISSING _HRESULT_TYPEDEF_(0x80110403)
-- 
2.31.1

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] If __MINGW_MSVC_COMPAT_WARNINGS enabled __mingw_ovr not defined in UCRT

2021-04-18 Thread Biswapriyo Nath
* Minimal test:

#define __MINGW_MSVC_COMPAT_WARNINGS
#include 
int main() {}

* Test program:
https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-groonga
(in header lib/grn.h)
* msvcrt ✓
* ucrt ✕


___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


[Mingw-w64-public] [PATCH] headers: Add spellcheck.idl.

2021-04-14 Thread Biswapriyo Nath

From 114b0dea1948a3f12595d1c41fb246116bd29ab4 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath 
Date: Wed, 14 Apr 2021 21:29:53 +0530
Subject: [PATCH] headers: Add spellcheck.idl.

Signed-off-by: Biswapriyo Nath 
---
 mingw-w64-headers/Makefile.am|   1 +
 mingw-w64-headers/include/spellcheck.idl | 157 +++
 2 files changed, 158 insertions(+)
 create mode 100644 mingw-w64-headers/include/spellcheck.idl

diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index e32aea6..35900d5 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -198,6 +198,7 @@ IDL_SRCS = \
   include/shobjidl.idl \
   include/shtypes.idl \
   include/spatialaudioclient.idl \
+  include/spellcheck.idl \
   include/strmif.idl \
   include/structuredquerycondition.idl \
   include/taskschd.idl \
diff --git a/mingw-w64-headers/include/spellcheck.idl 
b/mingw-w64-headers/include/spellcheck.idl
new file mode 100644
index 000..92e188e
--- /dev/null
+++ b/mingw-w64-headers/include/spellcheck.idl
@@ -0,0 +1,157 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+cpp_quote("#ifndef MIN_SPELLING_NTDDI")
+cpp_quote("#define MIN_SPELLING_NTDDI NTDDI_WIN8")
+cpp_quote("#endif")
+
+cpp_quote("#if NTDDI_VERSION >= MIN_SPELLING_NTDDI")
+
+import "oaidl.idl";
+import "ocidl.idl";
+
+cpp_quote("#include ")
+
+cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
+
+typedef [v1_enum] enum WORDLIST_TYPE {
+  WORDLIST_TYPE_IGNORE = 0,
+  WORDLIST_TYPE_ADD = 1,
+  WORDLIST_TYPE_EXCLUDE = 2,
+  WORDLIST_TYPE_AUTOCORRECT = 3,
+} WORDLIST_TYPE;
+
+[
+  object,
+  uuid(b7c82d61-fbe8-4b47-9b27-6c0d2e0de0a3),
+  pointer_default(unique)
+]
+interface ISpellingError : IUnknown {
+
+  typedef [v1_enum] enum CORRECTIVE_ACTION {
+CORRECTIVE_ACTION_NONE = 0,
+CORRECTIVE_ACTION_GET_SUGGESTIONS = 1,
+CORRECTIVE_ACTION_REPLACE = 2,
+CORRECTIVE_ACTION_DELETE = 3,
+  } CORRECTIVE_ACTION;
+
+  [propget] HRESULT StartIndex([out, retval] ULONG *val);
+  [propget] HRESULT Length([out, retval] ULONG *val);
+  [propget] HRESULT CorrectiveAction([out, retval] CORRECTIVE_ACTION *val);
+  [propget] HRESULT Replacement([out, retval] LPWSTR *val);
+}
+
+[
+  object,
+  uuid(803e3bd4-2828-4410-8290-418d1d73c762),
+  pointer_default(unique)
+]
+interface IEnumSpellingError : IUnknown {
+  HRESULT Next([out, retval] ISpellingError **val);
+}
+
+[
+  object,
+  uuid(432e5f85-35cf-4606-a801-6f70277e1d7a),
+  pointer_default(unique)
+]
+interface IOptionDescription : IUnknown {
+  [propget] HRESULT Id([out, retval] LPWSTR *val);
+  [propget] HRESULT Heading([out, retval] LPWSTR *val);
+  [propget] HRESULT Description([out, retval] LPWSTR *val);
+  [propget] HRESULT Labels([out, retval] IEnumString **val);
+}
+
+interface ISpellChecker;
+
+[
+  object,
+  uuid(0b83a5b0-792f-4eab-9799-acf52c5ed08a),
+  pointer_default(unique)
+]
+interface ISpellCheckerChangedEventHandler : IUnknown {
+  HRESULT Invoke([in] ISpellChecker *sender);
+}
+
+[
+  object,
+  uuid(b6fd0b71-e2bc-4653-8d05-f197e412770b),
+  pointer_default(unique)
+]
+interface ISpellChecker : IUnknown {
+  [propget] HRESULT LanguageTag([out, retval] LPWSTR *val);
+  HRESULT Check([in] LPCWSTR text, [out, retval] IEnumSpellingError **val);
+  HRESULT Suggest([in] LPCWSTR word, [out, retval] IEnumString **val);
+  HRESULT Add([in] LPCWSTR word);
+  HRESULT Ignore([in] LPCWSTR word);
+  HRESULT AutoCorrect([in] LPCWSTR from, [in] LPCWSTR to);
+  HRESULT GetOptionValue([in] LPCWSTR option_id, [out, retval] BYTE *val);
+  [propget] HRESULT OptionIds([out, retval] IEnumString **val);
+  [propget] HRESULT Id([out, retval] LPWSTR *val);
+  [propget] HRESULT LocalizedName([out, retval] LPWSTR *val);
+  HRESULT add_SpellCheckerChanged([in] ISpellCheckerChangedEventHandler 
*handler, [out, retval] DWORD *event_cookie);
+  HRESULT remove_SpellCheckerChanged([in] DWORD event_cookie);
+  HRESULT GetOptionDescription([in] LPCWSTR optionId, [out, retval] 
IOptionDescription **val);
+  HRESULT ComprehensiveCheck([in] LPCWSTR text, [out, retval] 
IEnumSpellingError **val);
+}
+
+[
+  object,
+  uuid(e7ed1c71-87f7-4378-a840-c9200dacee47),
+  pointer_default(unique)
+]
+interface ISpellChecker2 : ISpellChecker {
+  HRESULT Remove([in] LPCWSTR word);
+}
+
+[
+  object,
+  uuid(8e018a9d-2415-4677-bf08-794ea61f94bb),
+  pointer_default(unique)
+]
+interface ISpellCheckerFactory : IUnknown {
+  [propget] HRESULT SupportedLanguages([out, retval] IEnumString **val);
+  HRESULT IsSupported([in] LPCWSTR languageTag, [out, retval] WINBOOL *val);
+  HRESULT CreateSpellChecker([in] LPCWSTR languageTag, [out, retval] 
ISpellChecker **val);
+}
+
+cpp_quote("#endif /* WINAPI_PARTITION_APP */")

[Mingw-w64-public] Autoconf fails to check scanf APIs in UCRT

2021-04-10 Thread Biswapriyo Nath
* Failed autoconf function: AC_CHECK_FUNCS(scanf sscanf vscanf fscanf
vsscanf)
* Minimal test from config.log:

char scanf();
int main(void) {
return scanf();
}

* Test program:
https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-libwmf
* msvcrt ✓
* ucrt ✕

___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


  1   2   3   4   5   >