authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-07-02 20:25:06+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-07-02 20:25:06+02:00
log358c43939c1f5236eec9e022e7d45f1741234948
treef7163f258415da5f30a9f6ec8857d907dcd322f1
parentefd6f190fd829d89c71e2592b48945a1bacae107
parentc5879812be778d529b5125cf6ab44a14917b8cb2

Merge pull request 'update MinGW-w64 to `31bd54ab7d5fe03c67ed2bb1a57e531b9c7f8cc4`' (#36016) from alexrp/zig:mingw-update into master

Reviewed-on: https://codeberg.org/ziglang/zig/pulls/36016

432 files changed, 13273 insertions(+), 7499 deletions(-)

lib/c/string.zig+2-1
...@@ -4,6 +4,8 @@ const symbol = @import("../c.zig").symbol;...@@ -4,6 +4,8 @@ const symbol = @import("../c.zig").symbol;
4const c = std.c;4const c = std.c;
55
6comptime {6comptime {
7 symbol(&strndup, "strndup");
8
7 if (builtin.target.isMuslLibC() or builtin.target.isWasiLibC()) {9 if (builtin.target.isMuslLibC() or builtin.target.isWasiLibC()) {
8 // memcpy implemented in compiler_rt10 // memcpy implemented in compiler_rt
9 // memmove implemented in compiler_rt11 // memmove implemented in compiler_rt
...@@ -26,7 +28,6 @@ comptime {...@@ -26,7 +28,6 @@ comptime {
26 symbol(&strstr, "strstr");28 symbol(&strstr, "strstr");
27 symbol(&strtok, "strtok");29 symbol(&strtok, "strtok");
28 symbol(&strdup, "strdup");30 symbol(&strdup, "strdup");
29 symbol(&strndup, "strndup");
30 // strlen is in compiler_rt31 // strlen is in compiler_rt
3132
32 symbol(&strtok_r, "strtok_r");33 symbol(&strtok_r, "strtok_r");
lib/libc/include/any-windows-any/_mingw.h+12-26
...@@ -622,17 +622,17 @@ __MINGW_INTRIN_INLINE void __cdecl __debugbreak(void)...@@ -622,17 +622,17 @@ __MINGW_INTRIN_INLINE void __cdecl __debugbreak(void)
622#define __MINGW_FASTFAIL_IMPL 1622#define __MINGW_FASTFAIL_IMPL 1
623#endif623#endif
624#if __MINGW_FASTFAIL_IMPL == 1624#if __MINGW_FASTFAIL_IMPL == 1
625void __cdecl __MINGW_ATTRIB_NORETURN __fastfail(unsigned int code);625void __cdecl __MINGW_ATTRIB_NORETURN __fastfail(unsigned int _Code);
626__MINGW_INTRIN_INLINE void __cdecl __MINGW_ATTRIB_NORETURN __fastfail(unsigned int code)626__MINGW_INTRIN_INLINE void __cdecl __MINGW_ATTRIB_NORETURN __fastfail(unsigned int _Code)
627{627{
628#if defined(__aarch64__) || defined(__arm64ec__)628#if defined(__aarch64__) || defined(__arm64ec__)
629 register unsigned int w0 __asm__("w0") = code;629 register unsigned int __w0 __asm__("w0") = _Code;
630 __asm__ __volatile__("brk #0xf003"::"r"(w0));630 __asm__ __volatile__("brk #0xf003"::"r"(__w0));
631#elif defined(__i386__) || defined(__x86_64__)631#elif defined(__i386__) || defined(__x86_64__)
632 __asm__ __volatile__("int {$}0x29"::"c"(code));632 __asm__ __volatile__("int {$}0x29"::"c"(_Code));
633#elif defined(__arm__)633#elif defined(__arm__)
634 register unsigned int r0 __asm__("r0") = code;634 register unsigned int __r0 __asm__("r0") = _Code;
635 __asm__ __volatile__("udf #0xfb"::"r"(r0));635 __asm__ __volatile__("udf #0xfb"::"r"(__r0));
636#else636#else
637 __asm__ __volatile__("unimplemented");637 __asm__ __volatile__("unimplemented");
638#endif638#endif
...@@ -647,13 +647,13 @@ __MINGW_INTRIN_INLINE void __cdecl __MINGW_ATTRIB_NORETURN __fastfail(unsigned i...@@ -647,13 +647,13 @@ __MINGW_INTRIN_INLINE void __cdecl __MINGW_ATTRIB_NORETURN __fastfail(unsigned i
647#endif647#endif
648#if __MINGW_PREFETCH_IMPL == 1648#if __MINGW_PREFETCH_IMPL == 1
649#if defined(__arm__) || defined(__aarch64__) || defined(__arm64ec__)649#if defined(__arm__) || defined(__aarch64__) || defined(__arm64ec__)
650void __cdecl __prefetch(const void *addr);650void __cdecl __prefetch(const void *_Addr);
651__MINGW_INTRIN_INLINE void __cdecl __prefetch(const void *addr)651__MINGW_INTRIN_INLINE void __cdecl __prefetch(const void *_Addr)
652{652{
653#if defined(__arm__)653#if defined(__arm__)
654 __asm__ __volatile__("pld [%0]"::"r"(addr));654 __asm__ __volatile__("pld [%0]"::"r"(_Addr));
655#elif defined(__aarch64__) || defined(__arm64ec__)655#elif defined(__aarch64__) || defined(__arm64ec__)
656 __asm__ __volatile__("prfm pldl1keep, [%0]"::"r"(addr));656 __asm__ __volatile__("prfm pldl1keep, [%0]"::"r"(_Addr));
657#endif657#endif
658}658}
659#endif /* defined(__arm__) || defined(__aarch64__) */659#endif /* defined(__arm__) || defined(__aarch64__) */
...@@ -668,21 +668,7 @@ const char *__mingw_get_crt_info (void);...@@ -668,21 +668,7 @@ const char *__mingw_get_crt_info (void);
668}668}
669#endif669#endif
670670
671#endif /* _INC__MINGW_H */
672
673#ifndef MINGW_SDK_INIT
674#define MINGW_SDK_INIT
675
676/* for backward compatibility */
677#ifndef MINGW_HAS_SECURE_API
678#define MINGW_HAS_SECURE_API 1
679#endif
680
681#define __STDC_SECURE_LIB__ 200411L671#define __STDC_SECURE_LIB__ 200411L
682#define __GOT_SECURE_LIB__ __STDC_SECURE_LIB__672#define __GOT_SECURE_LIB__ __STDC_SECURE_LIB__
683673
684#ifndef __WIDL__674#endif /* _INC__MINGW_H */
685#include "sdks/_mingw_ddk.h"
686#endif
687
688#endif /* MINGW_SDK_INIT */
lib/libc/include/any-windows-any/_mingw_mac.h+1-1
...@@ -14,7 +14,7 @@...@@ -14,7 +14,7 @@
14#define __MINGW64_STRINGIFY(x) \14#define __MINGW64_STRINGIFY(x) \
15 __STRINGIFY(x)15 __STRINGIFY(x)
1616
17#define __MINGW64_VERSION_MAJOR 1317#define __MINGW64_VERSION_MAJOR 15
18#define __MINGW64_VERSION_MINOR 018#define __MINGW64_VERSION_MINOR 0
19#define __MINGW64_VERSION_BUGFIX 019#define __MINGW64_VERSION_BUGFIX 0
2020
lib/libc/include/any-windows-any/_mingw_stat64.h+7
...@@ -3,6 +3,12 @@...@@ -3,6 +3,12 @@
3/* __stat64 is needed for compatibility with msvc */3/* __stat64 is needed for compatibility with msvc */
4#define __stat64 _stat644#define __stat64 _stat64
55
6/*
7 * To prevent ABI issues, the mingw-w64 runtime should not call the
8 * _fstat, _fstati64, _stat, _stati64, _wstat and _wstati64 functions.
9 * Instead it should call the fixed-size variants.
10 */
11#ifndef _CRTBLD
6#ifdef _USE_32BIT_TIME_T12#ifdef _USE_32BIT_TIME_T
7#define _fstat _fstat3213#define _fstat _fstat32
8#define _fstati64 _fstat32i6414#define _fstati64 _fstat32i64
...@@ -18,6 +24,7 @@...@@ -18,6 +24,7 @@
18#define _wstat _wstat64i3224#define _wstat _wstat64i32
19#define _wstati64 _wstat6425#define _wstati64 _wstat64
20#endif /* _USE_32BIT_TIME_T */26#endif /* _USE_32BIT_TIME_T */
27#endif /* _CRTBLD */
2128
22 struct _stat32 {29 struct _stat32 {
23 _dev_t st_dev;30 _dev_t st_dev;
lib/libc/include/any-windows-any/activation.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/activation.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/activation.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activaut.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/activaut.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/activaut.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activdbg.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/activdbg.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/activdbg.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activdbg100.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/activdbg100.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/activdbg100.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activprof.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/activprof.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/activprof.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activscp.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/activscp.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/activscp.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/adhoc.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/adhoc.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/adhoc.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/alg.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/alg.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/alg.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/amstream.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/amstream.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/amstream.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/amvideo.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/amvideo.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/amvideo.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/assert.h+2-3
...@@ -21,8 +21,8 @@...@@ -21,8 +21,8 @@
21extern "C" {21extern "C" {
22#endif22#endif
2323
24_CRTIMP void __cdecl __MINGW_ATTRIB_NORETURN _wassert(const wchar_t *_Message,const wchar_t *_File,unsigned _Line);24_CRTIMP void __cdecl _wassert(const wchar_t *_Message,const wchar_t *_File,unsigned _Line);
25_CRTIMP void __cdecl __MINGW_ATTRIB_NORETURN _assert (const char *_Message, const char *_File, unsigned _Line);25void __cdecl _assert (const char *_Message, const char *_File, unsigned _Line);
2626
27#ifdef __cplusplus27#ifdef __cplusplus
28}28}
...@@ -53,4 +53,3 @@ _CRTIMP void __cdecl __MINGW_ATTRIB_NORETURN _assert (const char *_Message, cons...@@ -53,4 +53,3 @@ _CRTIMP void __cdecl __MINGW_ATTRIB_NORETURN _assert (const char *_Message, cons
53 (_assert(#_Expression,__FILE__,__LINE__),0))53 (_assert(#_Expression,__FILE__,__LINE__),0))
54#endif /* _UNICODE||UNICODE */54#endif /* _UNICODE||UNICODE */
55#endif /* !defined (NDEBUG) */55#endif /* !defined (NDEBUG) */
56
lib/libc/include/any-windows-any/asyncinfo.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/asyncinfo.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/asyncinfo.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/audioclient.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/audioclient.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/audioclient.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/audioendpoints.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/audioendpoints.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/audioendpoints.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/audiopolicy.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/audiopolicy.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/audiopolicy.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/austream.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/austream.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/austream.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bdaiface.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/bdaiface.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/bdaiface.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/bits.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/bits.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits1_5.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/bits1_5.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/bits1_5.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits2_0.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/bits2_0.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/bits2_0.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits2_5.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/bits2_5.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/bits2_5.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits3_0.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/bits3_0.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/bits3_0.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits5_0.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/bits5_0.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/bits5_0.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/cfgmgr32.h+2-2
...@@ -37,8 +37,8 @@ extern "C" {...@@ -37,8 +37,8 @@ extern "C" {
37#define MAX_IRQS 737#define MAX_IRQS 7
38#define MAX_DMA_CHANNELS 738#define MAX_DMA_CHANNELS 7
3939
40#define DWORD_MAX 0xFFFFFFFF40#define DWORD_MAX __MSABI_LONG(0xffffffffu)
41#define DWORDLONG_MAX 0xFFFFFFFFFFFFFFFF41#define DWORDLONG_MAX 0xffffffffffffffffull
4242
43#define CONFIGMG_VERSION 0x040043#define CONFIGMG_VERSION 0x0400
4444
lib/libc/include/any-windows-any/comadmin.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/comadmin.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/comadmin.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/comcat.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/comcat.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/comcat.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/commoncontrols.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/commoncontrols.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/commoncontrols.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/comutil.h+45-2
...@@ -8,6 +8,7 @@...@@ -8,6 +8,7 @@
88
9#include <ole2.h>9#include <ole2.h>
10#include <stdio.h>10#include <stdio.h>
11#include <new>
1112
12#ifndef _COM_ASSERT13#ifndef _COM_ASSERT
13#define _COM_ASSERT(x) ((void)0)14#define _COM_ASSERT(x) ((void)0)
...@@ -51,8 +52,50 @@ namespace _com_util {...@@ -51,8 +52,50 @@ namespace _com_util {
51}52}
5253
53namespace _com_util {54namespace _com_util {
54 BSTR WINAPI ConvertStringToBSTR(const char *pSrc);55 inline BSTR WINAPI ConvertStringToBSTR(const char *pSrc){
55 char *WINAPI ConvertBSTRToString(BSTR pSrc);56 int wcSize;
57 BSTR bstr;
58 if(!pSrc) return NULL;
59 wcSize=::MultiByteToWideChar(CP_ACP,0,pSrc,-1,NULL,0);
60 if (wcSize==0) {
61 _com_issue_error(HRESULT_FROM_WIN32(GetLastError()));
62 return NULL;
63 }
64 bstr=::SysAllocStringLen(NULL,wcSize-1);
65 if(!bstr) {
66 _com_issue_error(E_OUTOFMEMORY);
67 return NULL;
68 }
69 if(::MultiByteToWideChar(CP_ACP,0,pSrc,-1,bstr,wcSize)==0) {
70 DWORD err = ::GetLastError();
71 ::SysFreeString(bstr);
72 _com_issue_error(HRESULT_FROM_WIN32(err));
73 return NULL;
74 }
75 return bstr;
76 }
77 inline char *WINAPI ConvertBSTRToString(BSTR pSrc){
78 int mbSize;
79 char *str;
80 if(!pSrc) return NULL;
81 mbSize = ::WideCharToMultiByte(CP_ACP,0,pSrc,-1,NULL,0,NULL,NULL);
82 if (mbSize==0) {
83 _com_issue_error(HRESULT_FROM_WIN32(::GetLastError()));
84 return NULL;
85 }
86 str=new(::std::nothrow) char[mbSize];
87 if(!str) {
88 _com_issue_error(E_OUTOFMEMORY);
89 return NULL;
90 }
91 if(::WideCharToMultiByte(CP_ACP,0,pSrc,-1,str,mbSize,NULL,NULL)==0) {
92 DWORD err = ::GetLastError();
93 delete[] str;
94 _com_issue_error(HRESULT_FROM_WIN32(err));
95 return NULL;
96 }
97 return str;
98 }
56}99}
57100
58class _bstr_t {101class _bstr_t {
lib/libc/include/any-windows-any/conio.h+69-185
...@@ -8,17 +8,53 @@...@@ -8,17 +8,53 @@
88
9#include <crtdefs.h>9#include <crtdefs.h>
10#include <corecrt_stdio_config.h>10#include <corecrt_stdio_config.h>
11#include <corecrt_wconio.h>
11#include <stddef.h>12#include <stddef.h>
1213
13#ifdef __cplusplus14#ifdef __cplusplus
14extern "C" {15extern "C" {
15#endif16#endif
1617
17 _CRTIMP char *_cgets(char *_Buffer) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;18/**
19 * Functions to read/write strings from/to console.
20 */
21
22 _CRTIMP char *__cdecl _cgets(char *_Buffer) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
18 _CRTIMP int __cdecl _cputs(const char *_Str);23 _CRTIMP int __cdecl _cputs(const char *_Str);
24
25#ifndef NO_OLDNAMES
26 char *__cdecl cgets(char *_Buffer) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
27 int __cdecl cputs(const char *_Str) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
28#endif
29
30/**
31 * Functions to read/write single characters from/to console.
32 */
33
34 _CRTIMP int __cdecl _kbhit(void);
19 _CRTIMP int __cdecl _getch(void);35 _CRTIMP int __cdecl _getch(void);
20 _CRTIMP int __cdecl _getche(void);36 _CRTIMP int __cdecl _getche(void);
21 _CRTIMP int __cdecl _kbhit(void);37 _CRTIMP int __cdecl _putch(int _Ch);
38 _CRTIMP int __cdecl _ungetch(int _Ch);
39
40#ifndef NO_OLDNAMES
41 int __cdecl kbhit(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
42 int __cdecl getch(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
43 int __cdecl getche(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
44 int __cdecl putch(int _Ch) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
45 int __cdecl ungetch(int _Ch) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
46#endif
47
48#if __MSVCRT_VERSION__ >= 0x800
49 _CRTIMP int __cdecl _getch_nolock(void);
50 _CRTIMP int __cdecl _getche_nolock(void);
51 _CRTIMP int __cdecl _putch_nolock(int _Ch);
52 _CRTIMP int __cdecl _ungetch_nolock(int _Ch);
53#endif
54
55/**
56 * Formatted console I/O functions.
57 */
2258
23#ifdef _UCRT59#ifdef _UCRT
24 int __cdecl __conio_common_vcprintf(unsigned __int64 _Options, const char *_Format, _locale_t _Locale, va_list _ArgList);60 int __cdecl __conio_common_vcprintf(unsigned __int64 _Options, const char *_Format, _locale_t _Locale, va_list _ArgList);
...@@ -59,7 +95,6 @@ extern "C" {...@@ -59,7 +95,6 @@ extern "C" {
59 __builtin_va_end(_ArgList);95 __builtin_va_end(_ArgList);
60 return _Ret;96 return _Ret;
61 }97 }
62
63 __mingw_ovr int __cdecl _vcprintf_p(const char * __restrict__ _Format,va_list _ArgList)98 __mingw_ovr int __cdecl _vcprintf_p(const char * __restrict__ _Format,va_list _ArgList)
64 {99 {
65 return __conio_common_vcprintf_p(0, _Format, NULL, _ArgList);100 return __conio_common_vcprintf_p(0, _Format, NULL, _ArgList);
...@@ -99,153 +134,7 @@ extern "C" {...@@ -99,153 +134,7 @@ extern "C" {
99 __builtin_va_end(_ArgList);134 __builtin_va_end(_ArgList);
100 return _Ret;135 return _Ret;
101 }136 }
102#else
103 _CRTIMP int __cdecl _cprintf(const char * __restrict__ _Format,...);
104 _CRTIMP int __cdecl _cscanf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
105 _CRTIMP int __cdecl _cscanf_l(const char * __restrict__ _Format,_locale_t _Locale,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
106
107 _CRTIMP int __cdecl _vcprintf(const char * __restrict__ _Format,va_list _ArgList);
108 _CRTIMP int __cdecl _cprintf_p(const char * __restrict__ _Format,...);
109 _CRTIMP int __cdecl _vcprintf_p(const char * __restrict__ _Format,va_list _ArgList);
110 _CRTIMP int __cdecl _cprintf_l(const char * __restrict__ _Format,_locale_t _Locale,...);
111 _CRTIMP int __cdecl _vcprintf_l(const char * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
112 _CRTIMP int __cdecl _cprintf_p_l(const char * __restrict__ _Format,_locale_t _Locale,...);
113 _CRTIMP int __cdecl _vcprintf_p_l(const char * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
114#endif
115
116#if defined(_X86_) && !defined(__x86_64)
117 int __cdecl _inp(unsigned short);
118 unsigned short __cdecl _inpw(unsigned short);
119 unsigned long __cdecl _inpd(unsigned short);
120 int __cdecl _outp(unsigned short,int);
121 unsigned short __cdecl _outpw(unsigned short,unsigned short);
122 unsigned long __cdecl _outpd(unsigned short,unsigned long);
123#endif
124
125 _CRTIMP int __cdecl _putch(int _Ch);
126 _CRTIMP int __cdecl _ungetch(int _Ch);
127#if __MSVCRT_VERSION__ >= 0x800
128 _CRTIMP int __cdecl _getch_nolock(void);
129 _CRTIMP int __cdecl _getche_nolock(void);
130 _CRTIMP int __cdecl _putch_nolock(int _Ch);
131 _CRTIMP int __cdecl _ungetch_nolock(int _Ch);
132#endif
133
134#ifndef _WCONIO_DEFINED
135#define _WCONIO_DEFINED
136
137#ifndef WEOF
138#define WEOF (wint_t)(0xFFFF)
139#endif
140
141 _CRTIMP wchar_t *_cgetws(wchar_t *_Buffer) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
142 _CRTIMP wint_t __cdecl _getwch(void);
143 _CRTIMP wint_t __cdecl _getwche(void);
144 _CRTIMP wint_t __cdecl _putwch(wchar_t _WCh);
145 _CRTIMP wint_t __cdecl _ungetwch(wint_t _WCh);
146 _CRTIMP int __cdecl _cputws(const wchar_t *_String);
147#ifdef _UCRT
148 int __cdecl __conio_common_vcwprintf(unsigned __int64 _Options, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
149 int __cdecl __conio_common_vcwprintf_p(unsigned __int64 _Options, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
150 int __cdecl __conio_common_vcwprintf_s(unsigned __int64 _Options, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
151 int __cdecl __conio_common_vcwscanf(unsigned __int64 _Options, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
152
153 __mingw_ovr int __cdecl _vcwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList)
154 {
155 return __conio_common_vcwprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Format, NULL, _ArgList);
156 }
157 __mingw_ovr int __cdecl _cwprintf(const wchar_t * __restrict__ _Format,...)
158 {
159 __builtin_va_list _ArgList;
160 int _Ret;
161 __builtin_va_start(_ArgList, _Format);
162 _Ret = _vcwprintf(_Format, _ArgList);
163 __builtin_va_end(_ArgList);
164 return _Ret;
165 }
166 __mingw_ovr __MINGW_ATTRIB_DEPRECATED_SEC_WARN
167 int __cdecl _cwscanf(const wchar_t * __restrict__ _Format,...)
168 {
169 __builtin_va_list _ArgList;
170 int _Ret;
171 __builtin_va_start(_ArgList, _Format);
172 _Ret = __conio_common_vcwscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS, _Format, NULL, _ArgList);
173 __builtin_va_end(_ArgList);
174 return _Ret;
175 }
176 __mingw_ovr __MINGW_ATTRIB_DEPRECATED_SEC_WARN
177 int __cdecl _cwscanf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...)
178 {
179 __builtin_va_list _ArgList;
180 int _Ret;
181 __builtin_va_start(_ArgList, _Locale);
182 _Ret = __conio_common_vcwscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS, _Format, _Locale, _ArgList);
183 __builtin_va_end(_ArgList);
184 return _Ret;
185 }
186 __mingw_ovr int __cdecl _vcwprintf_p(const wchar_t * __restrict__ _Format,va_list _ArgList)
187 {
188 return __conio_common_vcwprintf_p(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Format, NULL, _ArgList);
189 }
190 __mingw_ovr int __cdecl _cwprintf_p(const wchar_t * __restrict__ _Format,...)
191 {
192 __builtin_va_list _ArgList;
193 int _Ret;
194 __builtin_va_start(_ArgList, _Format);
195 _Ret = _vcwprintf_p(_Format, _ArgList);
196 __builtin_va_end(_ArgList);
197 return _Ret;
198 }
199 __mingw_ovr int __cdecl _vcwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList)
200 {
201 return __conio_common_vcwprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Format, _Locale, _ArgList);
202 }
203 __mingw_ovr int __cdecl _cwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...)
204 {
205 __builtin_va_list _ArgList;
206 int _Ret;
207 __builtin_va_start(_ArgList, _Locale);
208 _Ret = _vcwprintf_l(_Format, _Locale, _ArgList);
209 __builtin_va_end(_ArgList);
210 return _Ret;
211 }
212 __mingw_ovr int __cdecl _vcwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList)
213 {
214 return __conio_common_vcwprintf_p(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Format, _Locale, _ArgList);
215 }
216 __mingw_ovr int __cdecl _cwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...)
217 {
218 __builtin_va_list _ArgList;
219 int _Ret;
220 __builtin_va_start(_ArgList, _Locale);
221 _Ret = _vcwprintf_p_l(_Format, _Locale, _ArgList);
222 __builtin_va_end(_ArgList);
223 return _Ret;
224 }
225#else
226 _CRTIMP int __cdecl _cwprintf(const wchar_t * __restrict__ _Format,...);
227 _CRTIMP int __cdecl _cwscanf(const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
228 _CRTIMP int __cdecl _cwscanf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
229 _CRTIMP int __cdecl _vcwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
230 _CRTIMP int __cdecl _cwprintf_p(const wchar_t * __restrict__ _Format,...);
231 _CRTIMP int __cdecl _vcwprintf_p(const wchar_t * __restrict__ _Format,va_list _ArgList);
232 _CRTIMP int __cdecl _cwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...);
233 _CRTIMP int __cdecl _vcwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
234 _CRTIMP int __cdecl _cwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...);
235 _CRTIMP int __cdecl _vcwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
236#endif
237#if __MSVCRT_VERSION__ >= 0x800
238 _CRTIMP wint_t __cdecl _putwch_nolock(wchar_t _WCh);
239 _CRTIMP wint_t __cdecl _getwch_nolock(void);
240 _CRTIMP wint_t __cdecl _getwche_nolock(void);
241 _CRTIMP wint_t __cdecl _ungetwch_nolock(wint_t _WCh);
242#endif
243#endif
244
245#ifndef NO_OLDNAMES137#ifndef NO_OLDNAMES
246 char *__cdecl cgets(char *_Buffer) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
247
248#ifdef _UCRT
249 __mingw_ovr int __cdecl cprintf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005138 __mingw_ovr int __cdecl cprintf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005
250 {139 {
251 __builtin_va_list _ArgList;140 __builtin_va_list _ArgList;
...@@ -264,49 +153,44 @@ extern "C" {...@@ -264,49 +153,44 @@ extern "C" {
264 __builtin_va_end(_ArgList);153 __builtin_va_end(_ArgList);
265 return _Ret;154 return _Ret;
266 }155 }
267#else156#endif /* NO_OLDNAMES */
157#else /* !_UCRT */
158 _CRTIMP int __cdecl _cprintf(const char * __restrict__ _Format,...);
159 _CRTIMP int __cdecl _cprintf_l(const char * __restrict__ _Format,_locale_t _Locale,...);
160 _CRTIMP int __cdecl _cprintf_p(const char * __restrict__ _Format,...);
161 _CRTIMP int __cdecl _cprintf_p_l(const char * __restrict__ _Format,_locale_t _Locale,...);
162 _CRTIMP int __cdecl _vcprintf(const char * __restrict__ _Format,va_list _ArgList);
163 _CRTIMP int __cdecl _vcprintf_l(const char * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
164 _CRTIMP int __cdecl _vcprintf_p(const char * __restrict__ _Format,va_list _ArgList);
165 _CRTIMP int __cdecl _vcprintf_p_l(const char * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
166 _CRTIMP int __cdecl _cscanf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
167 _CRTIMP int __cdecl _cscanf_l(const char * __restrict__ _Format,_locale_t _Locale,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
168#ifndef NO_OLDNAMES
268 int __cdecl cprintf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;169 int __cdecl cprintf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
269 int __cdecl cscanf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;170 int __cdecl cscanf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
270#endif171#endif /* NO_OLDNAMES */
271 int __cdecl cputs(const char *_Str) __MINGW_ATTRIB_DEPRECATED_MSVC2005;172#endif /* _UCRT */
272 int __cdecl getch(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;173
273 int __cdecl getche(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;174/**
274 int __cdecl kbhit(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;175 * Port I/O functions.
275 int __cdecl putch(int _Ch) __MINGW_ATTRIB_DEPRECATED_MSVC2005;176 *
276 int __cdecl ungetch(int _Ch) __MINGW_ATTRIB_DEPRECATED_MSVC2005;177 * These functions were removed from CRT in msvcr80.dll.
178 * They are still available in i386 system versions of msvcrt.dll.
179 */
277180
278#if (defined(_X86_) && !defined(__x86_64))181#if (__MSVCRT_VERSION__ >= 0x0400 && __MSVCRT_VERSION__ < 0x0800) && defined(_M_IX86)
182 int __cdecl _inp(unsigned short);
183 unsigned short __cdecl _inpw(unsigned short);
184 unsigned long __cdecl _inpd(unsigned short);
185 int __cdecl _outp(unsigned short,int);
186 unsigned short __cdecl _outpw(unsigned short,unsigned short);
187 unsigned long __cdecl _outpd(unsigned short,unsigned long);
188#ifndef NO_OLDNAMES
279 int __cdecl inp(unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;189 int __cdecl inp(unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
280 unsigned short __cdecl inpw(unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;190 unsigned short __cdecl inpw(unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
281 int __cdecl outp(unsigned short,int) __MINGW_ATTRIB_DEPRECATED_MSVC2005;191 int __cdecl outp(unsigned short,int) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
282 unsigned short __cdecl outpw(unsigned short,unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;192 unsigned short __cdecl outpw(unsigned short,unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
283#endif193#endif /* NO_OLDNAMES */
284
285 /* __cpuid moved to intrin.h per msdn */
286 /* __inbyte moved to intrin.h per msdn */
287 /* __inbytestring moved to intrin.h per msdn */
288 /* __indword moved to intrin.h per msdn */
289 /* __indwordstring moved to intrin.h per msdn */
290 /* __inword moved to intrin.h per msdn */
291 /* __inwordstring moved to intrin.h per msdn */
292 /* __outbyte moved to intrin.h per msdn */
293 /* __outbytestring moved to intrin.h per msdn */
294 /* __outdword moved to intrin.h per msdn */
295 /* __outdwordstring moved to intrin.h per msdn */
296 /* __outword moved to intrin.h per msdn */
297 /* __outwordstring moved to intrin.h per msdn */
298 /* __readcr0 moved to intrin.h per msdn */
299 /* __readcr2 moved to intrin.h per msdn */
300 /* __readcr3 moved to intrin.h per msdn */
301 /* __readcr4 moved to intrin.h per msdn */
302 /* __readcr8 moved to intrin.h per msdn */
303 /* __readmsr moved to intrin.h per msdn */
304 /* __writecr0 moved to intrin.h per msdn */
305 /* __writecr2 moved to intrin.h per msdn */
306 /* __writecr3 moved to intrin.h per msdn */
307 /* __writecr4 moved to intrin.h per msdn */
308 /* __writecr8 moved to intrin.h per msdn */
309 /* __writemsr moved to intrin.h per msdn */
310#endif194#endif
311195
312#ifdef __cplusplus196#ifdef __cplusplus
lib/libc/include/any-windows-any/control.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/control.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/control.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/corecrt.h+7-35
...@@ -151,6 +151,13 @@ typedef __time64_t time_t;...@@ -151,6 +151,13 @@ typedef __time64_t time_t;
151#endif151#endif
152#endif152#endif
153153
154#ifdef _DEBUG
155_CRTIMP void __cdecl _invalid_parameter(const wchar_t *expression, const wchar_t *function_name, const wchar_t *file_name, unsigned int line_number, __UINTPTR_TYPE__ reserved);
156#endif
157_CRTIMP void __cdecl _invalid_parameter_noinfo(void);
158_CRTIMP __MINGW_ATTRIB_NORETURN void __cdecl _invalid_parameter_noinfo_noreturn(void);
159_CRTIMP __MINGW_ATTRIB_NORETURN void __cdecl _invoke_watson(const wchar_t *expression, const wchar_t *function_name, const wchar_t *file_name, unsigned int line_number, __UINTPTR_TYPE__ reserved);
160
154#if defined(__cplusplus) && _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES161#if defined(__cplusplus) && _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
155162
156#define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(__ret,__func,__dsttype,__dst) \163#define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(__ret,__func,__dsttype,__dst) \
...@@ -447,41 +454,6 @@ typedef struct tagLC_ID {...@@ -447,41 +454,6 @@ typedef struct tagLC_ID {
447} LC_ID,*LPLC_ID;454} LC_ID,*LPLC_ID;
448#endif /* _TAGLC_ID_DEFINED */455#endif /* _TAGLC_ID_DEFINED */
449456
450#ifndef _THREADLOCALEINFO
451#define _THREADLOCALEINFO
452typedef struct threadlocaleinfostruct {
453#ifdef _UCRT
454 const unsigned short *_locale_pctype;
455 int _locale_mb_cur_max;
456 unsigned int _locale_lc_codepage;
457#else
458 int refcount;
459 unsigned int lc_codepage;
460 unsigned int lc_collate_cp;
461 unsigned long lc_handle[6];
462 LC_ID lc_id[6];
463 struct {
464 char *locale;
465 wchar_t *wlocale;
466 int *refcount;
467 int *wrefcount;
468 } lc_category[6];
469 int lc_clike;
470 int mb_cur_max;
471 int *lconv_intl_refcount;
472 int *lconv_num_refcount;
473 int *lconv_mon_refcount;
474 struct lconv *lconv;
475 int *ctype1_refcount;
476 unsigned short *ctype1;
477 const unsigned short *pctype;
478 const unsigned char *pclmap;
479 const unsigned char *pcumap;
480 struct __lc_time_data *lc_time_curr;
481#endif
482} threadlocinfo;
483#endif /* _THREADLOCALEINFO */
484
485#ifndef __crt_typefix457#ifndef __crt_typefix
486#define __crt_typefix(ctype)458#define __crt_typefix(ctype)
487#endif459#endif
lib/libc/include/any-windows-any/corecrt_memory.h created+57
...@@ -0,0 +1,57 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _INC_CORECRT_MEMORY
7#define _INC_CORECRT_MEMORY
8
9#include <crtdefs.h>
10
11#if defined(__LIBMSVCRT__)
12/* When building mingw-w64, this should be blank. */
13#define _SECIMP
14#else
15#ifndef _SECIMP
16#define _SECIMP __declspec(dllimport)
17#endif /* _SECIMP */
18#endif /* defined(__LIBMSVCRT__) */
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
24#ifndef _CONST_RETURN
25#define _CONST_RETURN
26#endif
27
28#define _WConst_return _CONST_RETURN
29
30#ifndef _CRT_MEMORY_DEFINED
31#define _CRT_MEMORY_DEFINED
32 _CRTIMP void *__cdecl _memccpy(void *_Dst,const void *_Src,int _Val,size_t _MaxCount);
33#if !defined(__STRICT_ANSI__) || defined(_GNU_SOURCE) || __STDC_VERSION__ + 0 >= 202311L || _XOPEN_SOURCE + 0 >= 600
34 void * __cdecl memccpy(void *_Dst,const void *_Src,int _Val,size_t _Size);
35#endif
36 _CONST_RETURN void *__cdecl memchr(const void *_Buf ,int _Val,size_t _MaxCount);
37 _CRTIMP int __cdecl _memicmp(const void *_Buf1,const void *_Buf2,size_t _Size);
38 _CRTIMP int __cdecl _memicmp_l(const void *_Buf1,const void *_Buf2,size_t _Size,_locale_t _Locale);
39 int __cdecl memcmp(const void *_Buf1,const void *_Buf2,size_t _Size);
40 void * __cdecl memcpy(void * __restrict__ _Dst,const void * __restrict__ _Src,size_t _Size) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
41 _SECIMP errno_t __cdecl memcpy_s (void *_dest,size_t _numberOfElements,const void *_src,size_t _count);
42 void * __cdecl mempcpy (void *_Dst, const void *_Src, size_t _Size);
43 void * __cdecl memset(void *_Dst,int _Val,size_t _Size);
44#if !defined(__STRICT_ANSI__) || __STDC_VERSION__ + 0 >= 202311L
45 void * __cdecl memset_explicit(void *_Dst,int _Val,size_t _Size);
46#endif
47
48#ifndef NO_OLDNAMES
49 void * __cdecl memccpy(void *_Dst,const void *_Src,int _Val,size_t _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
50 int __cdecl memicmp(const void *_Buf1,const void *_Buf2,size_t _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
51#endif
52#endif
53
54#ifdef __cplusplus
55}
56#endif
57#endif
lib/libc/include/any-windows-any/corecrt_stdio_config.h+2-2
...@@ -13,8 +13,8 @@...@@ -13,8 +13,8 @@
13extern "C" {13extern "C" {
14#endif14#endif
1515
16unsigned __int64* __local_stdio_printf_options(void);16unsigned __int64* __cdecl __local_stdio_printf_options(void);
17unsigned __int64* __local_stdio_scanf_options(void);17unsigned __int64* __cdecl __local_stdio_scanf_options(void);
1818
19#define _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION 0x0001ULL19#define _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION 0x0001ULL
20#define _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR 0x0002ULL20#define _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR 0x0002ULL
lib/libc/include/any-windows-any/corecrt_wconio.h created+146
...@@ -0,0 +1,146 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef _INC_CORECRT_WCONIO
8#define _INC_CORECRT_WCONIO
9
10#include <corecrt.h>
11#include <corecrt_stdio_config.h>
12#include <stddef.h>
13
14#ifdef __cplusplus
15extern "C" {
16#endif
17
18#ifndef WEOF
19#define WEOF (wint_t)(0xFFFF)
20#endif
21
22/**
23 * Functions to read/write strings from/to console.
24 */
25
26_CRTIMP wchar_t *__cdecl _cgetws(wchar_t *_Buffer) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
27_CRTIMP int __cdecl _cputws(const wchar_t *_String);
28
29/**
30 * Functions to read/write single characters from/to console.
31 */
32
33_CRTIMP wint_t __cdecl _getwch(void);
34_CRTIMP wint_t __cdecl _getwche(void);
35_CRTIMP wint_t __cdecl _putwch(wchar_t _WCh);
36_CRTIMP wint_t __cdecl _ungetwch(wint_t _WCh);
37
38#if __MSVCRT_VERSION__ >= 0x800
39_CRTIMP wint_t __cdecl _getwch_nolock(void);
40_CRTIMP wint_t __cdecl _getwche_nolock(void);
41_CRTIMP wint_t __cdecl _putwch_nolock(wchar_t _WCh);
42_CRTIMP wint_t __cdecl _ungetwch_nolock(wint_t _WCh);
43#endif
44
45/**
46 * Formatted console I/O functions.
47 */
48
49#ifdef _UCRT
50int __cdecl __conio_common_vcwprintf(unsigned __int64 _Options, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
51int __cdecl __conio_common_vcwprintf_p(unsigned __int64 _Options, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
52int __cdecl __conio_common_vcwprintf_s(unsigned __int64 _Options, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
53int __cdecl __conio_common_vcwscanf(unsigned __int64 _Options, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
54
55__mingw_ovr int __cdecl _vcwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList)
56{
57 return __conio_common_vcwprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Format, NULL, _ArgList);
58}
59__mingw_ovr int __cdecl _cwprintf(const wchar_t * __restrict__ _Format,...)
60{
61 __builtin_va_list _ArgList;
62 int _Ret;
63 __builtin_va_start(_ArgList, _Format);
64 _Ret = _vcwprintf(_Format, _ArgList);
65 __builtin_va_end(_ArgList);
66 return _Ret;
67}
68__mingw_ovr __MINGW_ATTRIB_DEPRECATED_SEC_WARN
69int __cdecl _cwscanf(const wchar_t * __restrict__ _Format,...)
70{
71 __builtin_va_list _ArgList;
72 int _Ret;
73 __builtin_va_start(_ArgList, _Format);
74 _Ret = __conio_common_vcwscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS, _Format, NULL, _ArgList);
75 __builtin_va_end(_ArgList);
76 return _Ret;
77}
78__mingw_ovr __MINGW_ATTRIB_DEPRECATED_SEC_WARN
79int __cdecl _cwscanf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...)
80{
81 __builtin_va_list _ArgList;
82 int _Ret;
83 __builtin_va_start(_ArgList, _Locale);
84 _Ret = __conio_common_vcwscanf(_CRT_INTERNAL_LOCAL_SCANF_OPTIONS, _Format, _Locale, _ArgList);
85 __builtin_va_end(_ArgList);
86 return _Ret;
87}
88__mingw_ovr int __cdecl _vcwprintf_p(const wchar_t * __restrict__ _Format,va_list _ArgList)
89{
90 return __conio_common_vcwprintf_p(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Format, NULL, _ArgList);
91}
92__mingw_ovr int __cdecl _cwprintf_p(const wchar_t * __restrict__ _Format,...)
93{
94 __builtin_va_list _ArgList;
95 int _Ret;
96 __builtin_va_start(_ArgList, _Format);
97 _Ret = _vcwprintf_p(_Format, _ArgList);
98 __builtin_va_end(_ArgList);
99 return _Ret;
100}
101__mingw_ovr int __cdecl _vcwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList)
102{
103 return __conio_common_vcwprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Format, _Locale, _ArgList);
104}
105__mingw_ovr int __cdecl _cwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...)
106{
107 __builtin_va_list _ArgList;
108 int _Ret;
109 __builtin_va_start(_ArgList, _Locale);
110 _Ret = _vcwprintf_l(_Format, _Locale, _ArgList);
111 __builtin_va_end(_ArgList);
112 return _Ret;
113}
114__mingw_ovr int __cdecl _vcwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList)
115{
116 return __conio_common_vcwprintf_p(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Format, _Locale, _ArgList);
117}
118__mingw_ovr int __cdecl _cwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...)
119{
120 __builtin_va_list _ArgList;
121 int _Ret;
122 __builtin_va_start(_ArgList, _Locale);
123 _Ret = _vcwprintf_p_l(_Format, _Locale, _ArgList);
124 __builtin_va_end(_ArgList);
125 return _Ret;
126}
127#else /* !_UCRT */
128_CRTIMP int __cdecl _cwprintf(const wchar_t * __restrict__ _Format,...);
129_CRTIMP int __cdecl _cwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...);
130_CRTIMP int __cdecl _cwprintf_p(const wchar_t * __restrict__ _Format,...);
131_CRTIMP int __cdecl _cwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...);
132_CRTIMP int __cdecl _vcwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
133_CRTIMP int __cdecl _vcwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
134_CRTIMP int __cdecl _vcwprintf_p(const wchar_t * __restrict__ _Format,va_list _ArgList);
135_CRTIMP int __cdecl _vcwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
136_CRTIMP int __cdecl _cwscanf(const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
137_CRTIMP int __cdecl _cwscanf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
138#endif /* _UCRT */
139
140#ifdef __cplusplus
141}
142#endif
143
144#include <sec_api/wconio_s.h>
145
146#endif /* _INC_CORECRT_WCONIO */
lib/libc/include/any-windows-any/corecrt_wctype.h+124-105
...@@ -12,45 +12,31 @@...@@ -12,45 +12,31 @@
12extern "C" {12extern "C" {
13#endif13#endif
1414
15#ifndef _WCTYPE_T_DEFINED
16#define _WCTYPE_T_DEFINED
17 typedef unsigned short wint_t;
18 typedef unsigned short wctype_t;
19#endif /* _WCTYPE_T_DEFINED */
20
21#ifndef WEOF15#ifndef WEOF
22#define WEOF (wint_t)(0xFFFF)16#define WEOF (wint_t)(0xFFFF)
23#endif17#endif
2418
25#ifndef _CRT_CTYPEDATA_DEFINED
26#define _CRT_CTYPEDATA_DEFINED
27#ifndef _CTYPE_DISABLE_MACROS19#ifndef _CTYPE_DISABLE_MACROS
20_CRTIMP const unsigned short* __cdecl __pctype_func(void);
21_CRTIMP const wctype_t * __cdecl __pwctype_func(void);
2822
29#ifndef __PCTYPE_FUNC23#ifndef __PCTYPE_FUNC
30#define __PCTYPE_FUNC __pctype_func()24#define __PCTYPE_FUNC __pctype_func()
31 _CRTIMP const unsigned short* __pctype_func(void);
32#endif25#endif
3326
34#ifndef _pctype27#ifndef _pctype
35#define _pctype (__pctype_func())28#define _pctype (__pctype_func())
36#endif29#endif
3730
38#endif
39#endif
40
41#ifndef _CRT_WCTYPEDATA_DEFINED
42#define _CRT_WCTYPEDATA_DEFINED
43#ifndef _CTYPE_DISABLE_MACROS
44#if !defined(_wctype) && defined(_CRT_USE_WINAPI_FAMILY_DESKTOP_APP)
45 extern const unsigned short ** __MINGW_IMP_SYMBOL(_wctype);
46#define _wctype (* __MINGW_IMP_SYMBOL(_wctype))
47#endif
48
49 _CRTIMP const wctype_t * __cdecl __pwctype_func(void);
50#ifndef _pwctype31#ifndef _pwctype
51#define _pwctype (__pwctype_func())32#define _pwctype (__pwctype_func())
52#endif33#endif
53#endif34#endif /* !_CTYPE_DISABLE_MACROS */
35
36#if __MSVCRT_VERSION__ >= 0x0600
37#ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
38extern _CRTIMP const unsigned short *_wctype;
39#endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */
54#endif40#endif
5541
56#define _UPPER 0x142#define _UPPER 0x1
...@@ -66,95 +52,128 @@ extern "C" {...@@ -66,95 +52,128 @@ extern "C" {
66#define _LEADBYTE 0x800052#define _LEADBYTE 0x8000
67#define _ALPHA (0x0100|_UPPER|_LOWER)53#define _ALPHA (0x0100|_UPPER|_LOWER)
6854
69#ifndef _WCTYPE_DEFINED55/**
70#define _WCTYPE_DEFINED56 * Standard C functions.
7157 */
72 _CRTIMP int __cdecl iswalpha(wint_t _C);58
73 _CRTIMP int __cdecl iswupper(wint_t _C);59_CRTIMP int __cdecl iswctype(wint_t _C,wctype_t _Type);
74 _CRTIMP int __cdecl iswlower(wint_t _C);60
75 _CRTIMP int __cdecl iswdigit(wint_t _C);61_CRTIMP int __cdecl iswalnum(wint_t _C);
76 _CRTIMP int __cdecl iswxdigit(wint_t _C);62_CRTIMP int __cdecl iswalpha(wint_t _C);
77 _CRTIMP int __cdecl iswspace(wint_t _C);63_CRTIMP int __cdecl iswblank(wint_t _C);
78 _CRTIMP int __cdecl iswpunct(wint_t _C);64_CRTIMP int __cdecl iswcntrl(wint_t _C);
79 _CRTIMP int __cdecl iswalnum(wint_t _C);65_CRTIMP int __cdecl iswdigit(wint_t _C);
80 _CRTIMP int __cdecl iswprint(wint_t _C);66_CRTIMP int __cdecl iswgraph(wint_t _C);
81 _CRTIMP int __cdecl iswgraph(wint_t _C);67_CRTIMP int __cdecl iswlower(wint_t _C);
82 _CRTIMP int __cdecl iswcntrl(wint_t _C);68_CRTIMP int __cdecl iswprint(wint_t _C);
83 _CRTIMP int __cdecl iswascii(wint_t _C);69_CRTIMP int __cdecl iswpunct(wint_t _C);
84#ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP70_CRTIMP int __cdecl iswspace(wint_t _C);
85 _CRTIMP int __cdecl isleadbyte(int _C);71_CRTIMP int __cdecl iswupper(wint_t _C);
86#endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */72_CRTIMP int __cdecl iswxdigit(wint_t _C);
87 _CRTIMP wint_t __cdecl towupper(wint_t _C);73
88 _CRTIMP wint_t __cdecl towlower(wint_t _C);74_CRTIMP wint_t __cdecl towlower(wint_t _C);
89 _CRTIMP int __cdecl iswctype(wint_t _C,wctype_t _Type);75_CRTIMP wint_t __cdecl towupper(wint_t _C);
90 _CRTIMP int __cdecl __iswcsymf(wint_t _C);76
91 _CRTIMP int __cdecl __iswcsym(wint_t _C);77#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
92 _CRTIMP int __cdecl iswblank(wint_t _C);78#define iswalnum(_c) (iswctype(_c,_ALPHA|_DIGIT))
93#if __MSVCRT_VERSION__ >= 0x800 || (__MSVCRT_VERSION__ == 0x600 && _WIN32_WINNT >= 0x0600)79#define iswalpha(_c) (iswctype(_c,_ALPHA))
94 /* These are available since msvcr80.dll (__MSVCRT_VERSION__ >= 0x800), and in80#define iswblank(_c) (iswctype(_c,_BLANK))
95 * msvcrt.dll (__MSVCRT_VERSION__ == 0x600) since Vista (_WIN32_WINNT >= 0x0600). */81#define iswcntrl(_c) (iswctype(_c,_CONTROL))
96 _CRTIMP int __cdecl _iswalpha_l(wint_t _C,_locale_t _Locale);82#define iswdigit(_c) (iswctype(_c,_DIGIT))
97 _CRTIMP int __cdecl _iswupper_l(wint_t _C,_locale_t _Locale);83#define iswgraph(_c) (iswctype(_c,_PUNCT|_ALPHA|_DIGIT))
98 _CRTIMP int __cdecl _iswlower_l(wint_t _C,_locale_t _Locale);84#define iswlower(_c) (iswctype(_c,_LOWER))
99 _CRTIMP int __cdecl _iswdigit_l(wint_t _C,_locale_t _Locale);85#define iswprint(_c) (iswctype(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT))
100 _CRTIMP int __cdecl _iswxdigit_l(wint_t _C,_locale_t _Locale);86#define iswpunct(_c) (iswctype(_c,_PUNCT))
101 _CRTIMP int __cdecl _iswspace_l(wint_t _C,_locale_t _Locale);87#define iswspace(_c) (iswctype(_c,_SPACE))
102 _CRTIMP int __cdecl _iswpunct_l(wint_t _C,_locale_t _Locale);88#define iswupper(_c) (iswctype(_c,_UPPER))
103 _CRTIMP int __cdecl _iswalnum_l(wint_t _C,_locale_t _Locale);89#define iswxdigit(_c) (iswctype(_c,_HEX))
104 _CRTIMP int __cdecl _iswprint_l(wint_t _C,_locale_t _Locale);90#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
105 _CRTIMP int __cdecl _iswgraph_l(wint_t _C,_locale_t _Locale);91
106 _CRTIMP int __cdecl _iswcntrl_l(wint_t _C,_locale_t _Locale);92/**
107 _CRTIMP wint_t __cdecl _towupper_l(wint_t _C,_locale_t _Locale);93 * Locale-specific versions of Standard C functions.
108 _CRTIMP wint_t __cdecl _towlower_l(wint_t _C,_locale_t _Locale);94 *
109# ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP95 * They are available since msvcr80.dll.
110 _CRTIMP int __cdecl _isleadbyte_l(int _C,_locale_t _Locale);96 */
111# endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */97
112 _CRTIMP int __cdecl _iswctype_l(wint_t _C,wctype_t _Type,_locale_t _Locale);98/* These are also available in msvcrt.dll since Windows Vista. */
113 _CRTIMP int __cdecl _iswblank_l(wint_t _C,_locale_t _Locale);99#if __MSVCRT_VERSION__ >= 0x0800 || (__MSVCRT_VERSION__ == 0x0600 && _WIN32_WINNT >= 0x0600)
114#endif100_CRTIMP int __cdecl _iswctype_l(wint_t _C,wctype_t _Type,_locale_t _Locale);
115#if __MSVCRT_VERSION__ >= 0x800101
116 /* These are only available since msvcr80.dll, never in msvcrt.dll. */102_CRTIMP int __cdecl _iswalnum_l(wint_t _C,_locale_t _Locale);
117 _CRTIMP int __cdecl _iswcsymf_l(wint_t _C,_locale_t _Locale);103_CRTIMP int __cdecl _iswalpha_l(wint_t _C,_locale_t _Locale);
118 _CRTIMP int __cdecl _iswcsym_l(wint_t _C,_locale_t _Locale);104_CRTIMP int __cdecl _iswblank_l(wint_t _C,_locale_t _Locale);
105_CRTIMP int __cdecl _iswcntrl_l(wint_t _C,_locale_t _Locale);
106_CRTIMP int __cdecl _iswdigit_l(wint_t _C,_locale_t _Locale);
107_CRTIMP int __cdecl _iswgraph_l(wint_t _C,_locale_t _Locale);
108_CRTIMP int __cdecl _iswlower_l(wint_t _C,_locale_t _Locale);
109_CRTIMP int __cdecl _iswprint_l(wint_t _C,_locale_t _Locale);
110_CRTIMP int __cdecl _iswpunct_l(wint_t _C,_locale_t _Locale);
111_CRTIMP int __cdecl _iswspace_l(wint_t _C,_locale_t _Locale);
112_CRTIMP int __cdecl _iswupper_l(wint_t _C,_locale_t _Locale);
113_CRTIMP int __cdecl _iswxdigit_l(wint_t _C,_locale_t _Locale);
114
115_CRTIMP wint_t __cdecl _towlower_l(wint_t _C,_locale_t _Locale);
116_CRTIMP wint_t __cdecl _towupper_l(wint_t _C,_locale_t _Locale);
117
118#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
119#define _iswalnum_l(_c,_p) (_iswctype_l(_c,_ALPHA|_DIGIT,_p))
120#define _iswalpha_l(_c,_p) (_iswctype_l(_c,_ALPHA,_p))
121#define _iswblank_l(_c,_p) (((_c) == '\t') || _iswctype_l(_c,_BLANK,_p))
122#define _iswcntrl_l(_c,_p) (_iswctype_l(_c,_CONTROL,_p))
123#define _iswdigit_l(_c,_p) (_iswctype_l(_c,_DIGIT,_p))
124#define _iswgraph_l(_c,_p) (_iswctype_l(_c,_PUNCT|_ALPHA|_DIGIT,_p))
125#define _iswlower_l(_c,_p) (_iswctype_l(_c,_LOWER,_p))
126#define _iswprint_l(_c,_p) (_iswctype_l(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT,_p))
127#define _iswpunct_l(_c,_p) (_iswctype_l(_c,_PUNCT,_p))
128#define _iswspace_l(_c,_p) (_iswctype_l(_c,_SPACE,_p))
129#define _iswupper_l(_c,_p) (_iswctype_l(_c,_UPPER,_p))
130#define _iswxdigit_l(_c,_p) (_iswctype_l(_c,_HEX,_p))
131#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
119#endif132#endif
133
134/**
135 * Microsoft-specific functions.
136 */
137
138_CRTIMP int __cdecl __iswcsym(wint_t _C);
139_CRTIMP int __cdecl __iswcsymf(wint_t _C);
140_CRTIMP int __cdecl iswascii(wint_t _C);
141
142/* These are only available for Desktop applications. */
120#ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP143#ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
121 _CRTIMP int __cdecl is_wctype(wint_t _C,wctype_t _Type);144_CRTIMP int __cdecl is_wctype(wint_t _C,wctype_t _Type);
145_CRTIMP int __cdecl isleadbyte(int _C);
122#endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */146#endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */
123#endif
124147
125#ifndef _WCTYPE_INLINE_DEFINED148#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
126#define _WCTYPE_INLINE_DEFINED149#define __iswcsym(_c) (iswalnum(_c) || ((_c)=='_'))
150#define __iswcsymf(_c) (iswalpha(_c) || ((_c)=='_'))
151#define iswascii(_c) ((unsigned)(_c) < 0x80)
152#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
127153
128#undef _CRT_WCTYPE_NOINLINE154/**
129#ifndef __cplusplus155 * Locale-specific versions of Microsoft functions.
130#define iswalpha(_c) (iswctype(_c,_ALPHA))156 *
131#define iswupper(_c) (iswctype(_c,_UPPER))157 * They are available since msvcr80.dll.
132#define iswlower(_c) (iswctype(_c,_LOWER))158 */
133#define iswdigit(_c) (iswctype(_c,_DIGIT))159
134#define iswxdigit(_c) (iswctype(_c,_HEX))160/* These are only available since msvcr80.dll, never in msvcrt.dll. */
135#define iswspace(_c) (iswctype(_c,_SPACE))161#if __MSVCRT_VERSION__ >= 0x0800
136#define iswpunct(_c) (iswctype(_c,_PUNCT))162_CRTIMP int __cdecl _iswcsym_l(wint_t _C,_locale_t _Locale);
137#define iswalnum(_c) (iswctype(_c,_ALPHA|_DIGIT))163_CRTIMP int __cdecl _iswcsymf_l(wint_t _C,_locale_t _Locale);
138#define iswprint(_c) (iswctype(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT))164
139#define iswgraph(_c) (iswctype(_c,_PUNCT|_ALPHA|_DIGIT))165#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
140#define iswcntrl(_c) (iswctype(_c,_CONTROL))166#define _iswcsym_l(_c,_p) (_iswalnum_l(_c,_p) || ((_c)=='_'))
141#define iswascii(_c) ((unsigned)(_c) < 0x80)167#define _iswcsymf_l(_c,_p) (_iswalpha_l(_c,_p) || ((_c)=='_'))
142#define iswblank(_c) (((_c) == '\t') || iswctype(_c,_BLANK))168#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
143#if __MSVCRT_VERSION__ >= 0x800 || (__MSVCRT_VERSION__ == 0x600 && _WIN32_WINNT >= 0x0600)
144# define _iswalpha_l(_c,_p) (_iswctype_l(_c,_ALPHA,_p))
145# define _iswupper_l(_c,_p) (_iswctype_l(_c,_UPPER,_p))
146# define _iswlower_l(_c,_p) (_iswctype_l(_c,_LOWER,_p))
147# define _iswdigit_l(_c,_p) (_iswctype_l(_c,_DIGIT,_p))
148# define _iswxdigit_l(_c,_p) (_iswctype_l(_c,_HEX,_p))
149# define _iswspace_l(_c,_p) (_iswctype_l(_c,_SPACE,_p))
150# define _iswpunct_l(_c,_p) (_iswctype_l(_c,_PUNCT,_p))
151# define _iswalnum_l(_c,_p) (_iswctype_l(_c,_ALPHA|_DIGIT,_p))
152# define _iswprint_l(_c,_p) (_iswctype_l(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT,_p))
153# define _iswgraph_l(_c,_p) (_iswctype_l(_c,_PUNCT|_ALPHA|_DIGIT,_p))
154# define _iswcntrl_l(_c,_p) (_iswctype_l(_c,_CONTROL,_p))
155# define _iswblank_l(_c,_p) (((_c) == '\t') || _iswctype_l(_c,_BLANK,_p))
156#endif /* __MSVCRT_VERSION__ >= 0x800 */
157#endif169#endif
170
171/* These are also available in msvcrt.dll since Windows Vista. */
172#if __MSVCRT_VERSION__ >= 0x0800 || (__MSVCRT_VERSION__ == 0x0600 && _WIN32_WINNT >= 0x0600)
173/* These are only available for Desktop applications. */
174#ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
175_CRTIMP int __cdecl _isleadbyte_l(int _C,_locale_t _Locale);
176#endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */
158#endif177#endif
159178
160#ifdef __cplusplus179#ifdef __cplusplus
lib/libc/include/any-windows-any/credentialprovider.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/credentialprovider.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/credentialprovider.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ctfutb.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/ctfutb.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/ctfutb.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ctxtcall.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/ctxtcall.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/ctxtcall.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ctype.h+110-102
...@@ -12,122 +12,130 @@...@@ -12,122 +12,130 @@
12extern "C" {12extern "C" {
13#endif13#endif
1414
15#ifndef WEOF15/**
16#define WEOF (wint_t)(0xFFFF)16 * Standard C functions.
17#endif17 */
1818
19 /* CRT stuff */19_CRTIMP int __cdecl isalnum(int _C);
20#if 120_CRTIMP int __cdecl isalpha(int _C);
21 extern const unsigned char __newclmap[];21_CRTIMP int __cdecl isblank(int _C);
22 extern const unsigned char __newcumap[];22_CRTIMP int __cdecl iscntrl(int _C);
23 extern pthreadlocinfo __ptlocinfo;23_CRTIMP int __cdecl isdigit(int _C);
24 extern pthreadmbcinfo __ptmbcinfo;24_CRTIMP int __cdecl isgraph(int _C);
25 extern int __globallocalestatus;25_CRTIMP int __cdecl islower(int _C);
26 extern int __locale_changed;26_CRTIMP int __cdecl isprint(int _C);
27 extern struct threadlocaleinfostruct __initiallocinfo;27_CRTIMP int __cdecl ispunct(int _C);
28 extern _locale_tstruct __initiallocalestructinfo;28_CRTIMP int __cdecl isspace(int _C);
29 pthreadlocinfo __cdecl __updatetlocinfo(void);29_CRTIMP int __cdecl isupper(int _C);
30 pthreadmbcinfo __cdecl __updatetmbcinfo(void);30_CRTIMP int __cdecl isxdigit(int _C);
31#endif
3231
33#ifndef _CTYPE_DEFINED32_CRTIMP int __cdecl tolower(int _C);
34#define _CTYPE_DEFINED33_CRTIMP int __cdecl toupper(int _C);
35
36 _CRTIMP int __cdecl isalpha(int _C);
37 _CRTIMP int __cdecl isupper(int _C);
38 _CRTIMP int __cdecl islower(int _C);
39 _CRTIMP int __cdecl isdigit(int _C);
40 _CRTIMP int __cdecl isxdigit(int _C);
41 _CRTIMP int __cdecl isspace(int _C);
42 _CRTIMP int __cdecl ispunct(int _C);
43 _CRTIMP int __cdecl isalnum(int _C);
44 _CRTIMP int __cdecl isprint(int _C);
45 _CRTIMP int __cdecl isgraph(int _C);
46 _CRTIMP int __cdecl iscntrl(int _C);
47 _CRTIMP int __cdecl toupper(int _C);
48 _CRTIMP int __cdecl _toupper(int _C);
49 _CRTIMP int __cdecl tolower(int _C);
50 _CRTIMP int __cdecl _tolower(int _C);
51 _CRTIMP int __cdecl _tolower_l(int _C,_locale_t _Locale);
52 _CRTIMP int __cdecl _isctype(int _C,int _Type);
53 _CRTIMP int __cdecl isblank(int _C);
54 _CRTIMP int __cdecl _isalpha_l(int _C,_locale_t _Locale);
55 _CRTIMP int __cdecl _isupper_l(int _C,_locale_t _Locale);
56 _CRTIMP int __cdecl _islower_l(int _C,_locale_t _Locale);
57 _CRTIMP int __cdecl _isdigit_l(int _C,_locale_t _Locale);
58 _CRTIMP int __cdecl _isxdigit_l(int _C,_locale_t _Locale);
59 _CRTIMP int __cdecl _isspace_l(int _C,_locale_t _Locale);
60 _CRTIMP int __cdecl _ispunct_l(int _C,_locale_t _Locale);
61 _CRTIMP int __cdecl _isalnum_l(int _C,_locale_t _Locale);
62 _CRTIMP int __cdecl _isprint_l(int _C,_locale_t _Locale);
63 _CRTIMP int __cdecl _isgraph_l(int _C,_locale_t _Locale);
64 _CRTIMP int __cdecl _iscntrl_l(int _C,_locale_t _Locale);
65 _CRTIMP int __cdecl _toupper_l(int _C,_locale_t _Locale);
66 _CRTIMP int __cdecl _isctype_l(int _C,int _Type,_locale_t _Locale);
67 _CRTIMP int __cdecl _isblank_l(int _C,_locale_t _Locale);
68 _CRTIMP int __cdecl __isascii(int _C);
69 _CRTIMP int __cdecl __toascii(int _C);
70 _CRTIMP int __cdecl __iscsymf(int _C);
71 _CRTIMP int __cdecl __iscsym(int _C);
72#endif
7334
74#ifndef _CTYPE_DISABLE_MACROS35/**
36 * Locale-specific versions of Standard C functions.
37 *
38 * They are available since msvcr80.dll.
39 */
7540
76#ifndef MB_CUR_MAX41/* These are also available in msvcrt.dll since Windows Vista. */
77#define MB_CUR_MAX ___mb_cur_max_func()42#if __MSVCRT_VERSION__ >= 0x0800 || (__MSVCRT_VERSION__ == 0x0600 && _WIN32_WINNT >= 0x0600)
78#ifndef __mb_cur_max43_CRTIMP int __cdecl _isalnum_l(int _C,_locale_t _Locale);
79#define __mb_cur_max (___mb_cur_max_func())44_CRTIMP int __cdecl _isalpha_l(int _C,_locale_t _Locale);
80#endif45_CRTIMP int __cdecl _isblank_l(int _C,_locale_t _Locale);
81_CRTIMP int __cdecl ___mb_cur_max_func(void);46_CRTIMP int __cdecl _iscntrl_l(int _C,_locale_t _Locale);
82#endif47_CRTIMP int __cdecl _isdigit_l(int _C,_locale_t _Locale);
48_CRTIMP int __cdecl _isgraph_l(int _C,_locale_t _Locale);
49_CRTIMP int __cdecl _islower_l(int _C,_locale_t _Locale);
50_CRTIMP int __cdecl _isprint_l(int _C,_locale_t _Locale);
51_CRTIMP int __cdecl _ispunct_l(int _C,_locale_t _Locale);
52_CRTIMP int __cdecl _isspace_l(int _C,_locale_t _Locale);
53_CRTIMP int __cdecl _isupper_l(int _C,_locale_t _Locale);
54_CRTIMP int __cdecl _isxdigit_l(int _C,_locale_t _Locale);
8355
84#define __chvalidchk(a,b) (__PCTYPE_FUNC[(unsigned char)(a)] & (b))56_CRTIMP int __cdecl _tolower_l(int _C,_locale_t _Locale);
85#ifdef _UCRT57_CRTIMP int __cdecl _toupper_l(int _C,_locale_t _Locale);
86#define _chvalidchk_l(_Char,_Flag,_Locale) (!_Locale ? __chvalidchk(_Char,_Flag) : ((_locale_t)_Locale)->locinfo->_locale_pctype[(unsigned char)(_Char)] & (_Flag))
87#define _ischartype_l(_Char,_Flag,_Locale) (((_Locale)!=NULL && (((_locale_t)(_Locale))->locinfo->_locale_mb_cur_max) > 1) ? _isctype_l(_Char,(_Flag),_Locale) : _chvalidchk_l(_Char,_Flag,_Locale))
88#else
89#define _chvalidchk_l(_Char,_Flag,_Locale) (!_Locale ? __chvalidchk(_Char,_Flag) : ((_locale_t)_Locale)->locinfo->pctype[(unsigned char)(_Char)] & (_Flag))
90#define _ischartype_l(_Char,_Flag,_Locale) (((_Locale)!=NULL && (((_locale_t)(_Locale))->locinfo->mb_cur_max) > 1) ? _isctype_l(_Char,(_Flag),_Locale) : _chvalidchk_l(_Char,_Flag,_Locale))
91#endif58#endif
92#define _isalpha_l(_Char,_Locale) _ischartype_l(_Char,_ALPHA,_Locale)59
93#define _isupper_l(_Char,_Locale) _ischartype_l(_Char,_UPPER,_Locale)60/**
94#define _islower_l(_Char,_Locale) _ischartype_l(_Char,_LOWER,_Locale)61 * POSIX functions.
95#define _isdigit_l(_Char,_Locale) _ischartype_l(_Char,_DIGIT,_Locale)62 */
96#define _isxdigit_l(_Char,_Locale) _ischartype_l(_Char,_HEX,_Locale)63
97#define _isspace_l(_Char,_Locale) _ischartype_l(_Char,_SPACE,_Locale)64_CRTIMP int __cdecl __isascii(int _C);
98#define _ispunct_l(_Char,_Locale) _ischartype_l(_Char,_PUNCT,_Locale)65_CRTIMP int __cdecl __toascii(int _C);
99#define _isalnum_l(_Char,_Locale) _ischartype_l(_Char,_ALPHA|_DIGIT,_Locale)66_CRTIMP int __cdecl _tolower(int _C);
100#define _isprint_l(_Char,_Locale) _ischartype_l(_Char,_BLANK|_PUNCT|_ALPHA|_DIGIT,_Locale)67_CRTIMP int __cdecl _toupper(int _C);
101#define _isgraph_l(_Char,_Locale) _ischartype_l(_Char,_PUNCT|_ALPHA|_DIGIT,_Locale)68
102#define _iscntrl_l(_Char,_Locale) _ischartype_l(_Char,_CONTROL,_Locale)69#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
103#define _isblank_l(_Char,_Locale) (((_Char) == '\t') || _ischartype_l(_Char,_BLANK,_Locale))
104#define _tolower(_Char) ((_Char)-'A'+'a')
105#define _toupper(_Char) ((_Char)-'a'+'A')
106#define __isascii(_Char) ((unsigned)(_Char) < 0x80)70#define __isascii(_Char) ((unsigned)(_Char) < 0x80)
107#define __toascii(_Char) ((_Char) & 0x7f)71#define __toascii(_Char) ((_Char) & 0x7f)
10872#define _tolower(_Char) ((_Char)-'A'+'a')
109#define __iscsymf(_c) (isalpha(_c) || ((_c)=='_'))73#define _toupper(_Char) ((_Char)-'a'+'A')
110#define __iscsym(_c) (isalnum(_c) || ((_c)=='_'))74#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
111#define __iswcsymf(_c) (iswalpha(_c) || ((_c)=='_'))
112#define __iswcsym(_c) (iswalnum(_c) || ((_c)=='_'))
113#define _iscsymf_l(_c,_p) (_isalpha_l(_c,_p) || ((_c)=='_'))
114#define _iscsym_l(_c,_p) (_isalnum_l(_c,_p) || ((_c)=='_'))
115#define _iswcsymf_l(_c,_p) (_iswalpha_l(_c,_p) || ((_c)=='_'))
116#define _iswcsym_l(_c,_p) (_iswalnum_l(_c,_p) || ((_c)=='_'))
117#endif
11875
119#ifndef NO_OLDNAMES76#ifndef NO_OLDNAMES
120#ifndef _CTYPE_DEFINED77#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
121 _CRTIMP int __cdecl isascii(int _C) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
122 _CRTIMP int __cdecl toascii(int _C) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
123 _CRTIMP int __cdecl iscsymf(int _C) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
124 _CRTIMP int __cdecl iscsym(int _C) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
125#else
126#define isascii __isascii78#define isascii __isascii
127#define toascii __toascii79#define toascii __toascii
128#define iscsymf __iscsymf80#else
81_CRTIMP int __cdecl isascii(int _C) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
82_CRTIMP int __cdecl toascii(int _C) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
83#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
84#endif /* !NO_OLDNAMES */
85
86/**
87 * Microsoft-specific functions.
88 */
89
90_CRTIMP int __cdecl _isctype(int _C,int _Type);
91
92_CRTIMP int __cdecl __iscsym(int _C);
93_CRTIMP int __cdecl __iscsymf(int _C);
94
95#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
96#define __iscsym(_c) (isalnum(_c) || ((_c)=='_'))
97#define __iscsymf(_c) (isalpha(_c) || ((_c)=='_'))
98#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
99
100#ifndef NO_OLDNAMES
101#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
129#define iscsym __iscsym102#define iscsym __iscsym
103#define iscsymf __iscsymf
104#else
105_CRTIMP int __cdecl iscsym(int _C) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
106_CRTIMP int __cdecl iscsymf(int _C) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
107#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
108#endif /* !NO_OLDNAMES */
109
110/**
111 * Locale-specific versions of Microsoft functions.
112 *
113 * They are available since msvcr80.dll.
114 */
115
116/**
117 * _iscsym_l and _iscsymf_l are only available as macros in Microsoft headers.
118 *
119 * We do not expose those macros under following conditions:
120 *
121 * - when _CTYPE_DISABLE_MACROS is defined; this is what Microsoft headers do
122 * - for C++ compilations; this avoids possible clashes with class member names
123 *
124 * To make them available under above conditions, we provide them as externals.
125 */
126#if __MSVCRT_VERSION__ >= 0x0800
127int __cdecl _iscsym_l(wint_t _C, _locale_t _Locale);
128int __cdecl _iscsymf_l(wint_t _C, _locale_t _Locale);
129
130#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
131#define _iscsym_l(_c,_p) (_isalnum_l(_c,_p) || ((_c)=='_'))
132#define _iscsymf_l(_c,_p) (_isalpha_l(_c,_p) || ((_c)=='_'))
133#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
130#endif134#endif
135
136/* These are also available in msvcrt.dll since Windows Vista. */
137#if __MSVCRT_VERSION__ >= 0x0800 || (__MSVCRT_VERSION__ == 0x0600 && _WIN32_WINNT >= 0x0600)
138_CRTIMP int __cdecl _isctype_l(int _C,int _Type,_locale_t _Locale);
131#endif139#endif
132140
133#ifdef __cplusplus141#ifdef __cplusplus
lib/libc/include/any-windows-any/d3d10.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d10.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d10.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d10_1.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d10_1.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d10_1.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d10effect.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d10effect.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d10effect.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d10sdklayers.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d10sdklayers.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d10sdklayers.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d10shader.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d10shader.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d10shader.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11.h+21-8
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d11.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d11.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -1265,34 +1265,47 @@ typedef enum D3D11_FILTER_TYPE {...@@ -1265,34 +1265,47 @@ typedef enum D3D11_FILTER_TYPE {
1265 D3D11_FILTER_TYPE_POINT = 0,1265 D3D11_FILTER_TYPE_POINT = 0,
1266 D3D11_FILTER_TYPE_LINEAR = 11266 D3D11_FILTER_TYPE_LINEAR = 1
1267} D3D11_FILTER_TYPE;1267} D3D11_FILTER_TYPE;
1268typedef enum D3D11_FILTER_REDUCTION_TYPE {
1269 D3D11_FILTER_REDUCTION_TYPE_STANDARD = 0x0,
1270 D3D11_FILTER_REDUCTION_TYPE_COMPARISON = 0x1,
1271 D3D11_FILTER_REDUCTION_TYPE_MINIMUM = 0x2,
1272 D3D11_FILTER_REDUCTION_TYPE_MAXIMUM = 0x3
1273} D3D11_FILTER_REDUCTION_TYPE;
1274#define D3D11_FILTER_REDUCTION_TYPE_SHIFT (7)
1275
1268#define D3D11_MIN_FILTER_SHIFT (4)1276#define D3D11_MIN_FILTER_SHIFT (4)
12691277
1270#define D3D11_MAG_FILTER_SHIFT (2)1278#define D3D11_MAG_FILTER_SHIFT (2)
12711279
1272#define D3D11_MIP_FILTER_SHIFT (0)1280#define D3D11_MIP_FILTER_SHIFT (0)
12731281
1282#define D3D11_FILTER_REDUCTION_TYPE_MASK (0x3)
1283
1274#define D3D11_FILTER_TYPE_MASK (0x3)1284#define D3D11_FILTER_TYPE_MASK (0x3)
12751285
1276#define D3D11_COMPARISON_FILTERING_BIT (0x80)1286#define D3D11_COMPARISON_FILTERING_BIT (0x80)
12771287
1278#define D3D11_ANISOTROPIC_FILTERING_BIT (0x40)1288#define D3D11_ANISOTROPIC_FILTERING_BIT (0x40)
12791289
1280#define D3D11_ENCODE_BASIC_FILTER(min, mag, mip, bComparison) \1290#define D3D11_ENCODE_BASIC_FILTER(min, mag, mip, reduction_mode) \
1281 ((D3D11_FILTER)(((bComparison) ? D3D11_COMPARISON_FILTERING_BIT : 0 ) | \1291 ((D3D11_FILTER)((((min)&D3D11_FILTER_TYPE_MASK) << D3D11_MIN_FILTER_SHIFT) | \
1282 (((min)&D3D11_FILTER_TYPE_MASK) << D3D11_MIN_FILTER_SHIFT) | \
1283 (((mag)&D3D11_FILTER_TYPE_MASK) << D3D11_MAG_FILTER_SHIFT) | \1292 (((mag)&D3D11_FILTER_TYPE_MASK) << D3D11_MAG_FILTER_SHIFT) | \
1284 (((mip)&D3D11_FILTER_TYPE_MASK) << D3D11_MIP_FILTER_SHIFT)))1293 (((mip)&D3D11_FILTER_TYPE_MASK) << D3D11_MIP_FILTER_SHIFT) | \
1285#define D3D11_ENCODE_ANISOTROPIC_FILTER(bComparison) \1294 (((reduction_mode)&D3D11_FILTER_REDUCTION_TYPE_MASK) << D3D11_FILTER_REDUCTION_TYPE_SHIFT)))
1295#define D3D11_ENCODE_ANISOTROPIC_FILTER(reduction_mode) \
1286 ((D3D11_FILTER)(D3D11_ANISOTROPIC_FILTERING_BIT | \1296 ((D3D11_FILTER)(D3D11_ANISOTROPIC_FILTERING_BIT | \
1287 D3D11_ENCODE_BASIC_FILTER(D3D11_FILTER_TYPE_LINEAR,D3D11_FILTER_TYPE_LINEAR, \1297 D3D11_ENCODE_BASIC_FILTER(D3D11_FILTER_TYPE_LINEAR,D3D11_FILTER_TYPE_LINEAR, \
1288 D3D11_FILTER_TYPE_LINEAR,bComparison)))1298 D3D11_FILTER_TYPE_LINEAR,reduction_mode)))
1289#define D3D11_DECODE_MIN_FILTER(d3d11Filter) \1299#define D3D11_DECODE_MIN_FILTER(d3d11Filter) \
1290 ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIN_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))1300 ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIN_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))
1291#define D3D11_DECODE_MAG_FILTER(d3d11Filter) \1301#define D3D11_DECODE_MAG_FILTER(d3d11Filter) \
1292 ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MAG_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))1302 ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MAG_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))
1293#define D3D11_DECODE_MIP_FILTER(d3d11Filter) \1303#define D3D11_DECODE_MIP_FILTER(d3d11Filter) \
1294 ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIP_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))1304 ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIP_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))
1295#define D3D11_DECODE_IS_COMPARISON_FILTER(d3d11Filter) ((d3d11Filter) & D3D11_COMPARISON_FILTERING_BIT)1305#define D3D11_DECODE_FILTER_REDUCTION(filter) \
1306 ((D3D11_FILTER_REDUCTION_TYPE)(((filter) >> D3D11_FILTER_REDUCTION_TYPE_SHIFT) & D3D11_FILTER_REDUCTION_TYPE_MASK))
1307#define D3D11_DECODE_IS_COMPARISON_FILTER(filter) \
1308 (D3D11_DECODE_FILTER_REDUCTION(filter) == D3D11_FILTER_REDUCTION_TYPE_COMPARISON)
1296#define D3D11_DECODE_IS_ANISOTROPIC_FILTER(d3d11Filter) \1309#define D3D11_DECODE_IS_ANISOTROPIC_FILTER(d3d11Filter) \
1297 (((d3d11Filter) & D3D11_ANISOTROPIC_FILTERING_BIT ) \1310 (((d3d11Filter) & D3D11_ANISOTROPIC_FILTERING_BIT ) \
1298 && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIN_FILTER(d3d11Filter)) \1311 && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIN_FILTER(d3d11Filter)) \
lib/libc/include/any-windows-any/d3d11_1.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d11_1.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d11_1.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11_2.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d11_2.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d11_2.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11_3.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d11_3.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d11_3.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11_4.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d11_4.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d11_4.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11on12.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d11on12.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d11on12.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11sdklayers.h+2-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d11sdklayers.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d11sdklayers.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -1229,6 +1229,7 @@ typedef enum D3D11_RLDO_FLAGS {...@@ -1229,6 +1229,7 @@ typedef enum D3D11_RLDO_FLAGS {
1229 D3D11_RLDO_SUMMARY = 1,1229 D3D11_RLDO_SUMMARY = 1,
1230 D3D11_RLDO_DETAIL = 21230 D3D11_RLDO_DETAIL = 2
1231} D3D11_RLDO_FLAGS;1231} D3D11_RLDO_FLAGS;
1232DEFINE_ENUM_FLAG_OPERATORS(D3D11_RLDO_FLAGS)
1232typedef struct D3D11_MESSAGE {1233typedef struct D3D11_MESSAGE {
1233 D3D11_MESSAGE_CATEGORY Category;1234 D3D11_MESSAGE_CATEGORY Category;
1234 D3D11_MESSAGE_SEVERITY Severity;1235 D3D11_MESSAGE_SEVERITY Severity;
lib/libc/include/any-windows-any/d3d11shader.h+48
...@@ -151,6 +151,22 @@ typedef struct _D3D11_SIGNATURE_PARAMETER_DESC...@@ -151,6 +151,22 @@ typedef struct _D3D11_SIGNATURE_PARAMETER_DESC
151#endif151#endif
152} D3D11_SIGNATURE_PARAMETER_DESC;152} D3D11_SIGNATURE_PARAMETER_DESC;
153153
154typedef struct _D3D11_PARAMETER_DESC
155{
156 LPCSTR Name;
157 LPCSTR SemanticName;
158 D3D_SHADER_VARIABLE_TYPE Type;
159 D3D_SHADER_VARIABLE_CLASS Class;
160 UINT Rows;
161 UINT Columns;
162 D3D_INTERPOLATION_MODE InterpolationMode;
163 D3D_PARAMETER_FLAGS Flags;
164 UINT FirstInRegister;
165 UINT FirstInComponent;
166 UINT FirstOutRegister;
167 UINT FirstOutComponent;
168} D3D11_PARAMETER_DESC;
169
154DEFINE_GUID(IID_ID3D11ShaderReflectionType, 0x6e6ffa6a, 0x9bae, 0x4613, 0xa5, 0x1e, 0x91, 0x65, 0x2d, 0x50, 0x8c, 0x21);170DEFINE_GUID(IID_ID3D11ShaderReflectionType, 0x6e6ffa6a, 0x9bae, 0x4613, 0xa5, 0x1e, 0x91, 0x65, 0x2d, 0x50, 0x8c, 0x21);
155171
156#define INTERFACE ID3D11ShaderReflectionType172#define INTERFACE ID3D11ShaderReflectionType
...@@ -288,4 +304,36 @@ DECLARE_INTERFACE_(ID3D11Linker, IUnknown)...@@ -288,4 +304,36 @@ DECLARE_INTERFACE_(ID3D11Linker, IUnknown)
288};304};
289#undef INTERFACE305#undef INTERFACE
290306
307DEFINE_GUID(IID_ID3D11LinkingNode, 0xd80dd70c, 0x8d2f, 0x4751, 0x94, 0xa1, 0x3, 0xc7, 0x9b, 0x35, 0x56, 0xdb);
308
309#define INTERFACE ID3D11LinkingNode
310DECLARE_INTERFACE_(ID3D11LinkingNode, IUnknown)
311{
312 STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE;
313 STDMETHOD_(ULONG, AddRef)(THIS) PURE;
314 STDMETHOD_(ULONG, Release)(THIS) PURE;
315};
316#undef INTERFACE
317
318DEFINE_GUID(IID_ID3D11FunctionLinkingGraph, 0x54133220, 0x1ce8, 0x43d3, 0x82, 0x36, 0x98, 0x55, 0xc5, 0xce, 0xec, 0xff);
319
320#define INTERFACE ID3D11FunctionLinkingGraph
321DECLARE_INTERFACE_(ID3D11FunctionLinkingGraph, IUnknown)
322{
323 STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE;
324 STDMETHOD_(ULONG, AddRef)(THIS) PURE;
325 STDMETHOD_(ULONG, Release)(THIS) PURE;
326
327 /* ID3D11FunctionLinkingGraph methods */
328 STDMETHOD(CreateModuleInstance)(THIS_ ID3D11ModuleInstance **instance, ID3DBlob **error) PURE;
329 STDMETHOD(SetInputSignature)(THIS_ const D3D11_PARAMETER_DESC *parameter_desc, UINT parameter_count, ID3D11LinkingNode **input_node) PURE;
330 STDMETHOD(SetOutputSignature)(THIS_ const D3D11_PARAMETER_DESC *parameter_desc, UINT parameter_count, ID3D11LinkingNode **output_node) PURE;
331 STDMETHOD(CallFunction)(THIS_ LPCSTR _namespace, ID3D11Module *module, LPCSTR function_name, ID3D11LinkingNode **call_node) PURE;
332 STDMETHOD(PassValue)(THIS_ ID3D11LinkingNode *src_node, INT src_parameter_index, ID3D11LinkingNode *dst_node, INT dst_parameter_index) PURE;
333 STDMETHOD(PassValueWithSwizzle)(THIS_ ID3D11LinkingNode *src_node, INT src_parameter_index, LPCSTR src_swizzle, ID3D11LinkingNode *dst_node, INT dst_parameter_index,LPCSTR dst_swizzle) PURE;
334 STDMETHOD(GetLastError)(THIS_ ID3DBlob **error) PURE;
335 STDMETHOD(GenerateHlsl)(THIS_ UINT flags, ID3DBlob **buffer) PURE;
336};
337#undef INTERFACE
338
291#endif339#endif
lib/libc/include/any-windows-any/d3d12.h+463-3
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d12.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d12.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -466,6 +466,30 @@ interface ID3D12SDKConfiguration;...@@ -466,6 +466,30 @@ interface ID3D12SDKConfiguration;
466#endif /* __cplusplus */466#endif /* __cplusplus */
467#endif467#endif
468468
469#ifndef __ID3D12SDKConfiguration1_FWD_DEFINED__
470#define __ID3D12SDKConfiguration1_FWD_DEFINED__
471typedef interface ID3D12SDKConfiguration1 ID3D12SDKConfiguration1;
472#ifdef __cplusplus
473interface ID3D12SDKConfiguration1;
474#endif /* __cplusplus */
475#endif
476
477#ifndef __ID3D12DeviceFactory_FWD_DEFINED__
478#define __ID3D12DeviceFactory_FWD_DEFINED__
479typedef interface ID3D12DeviceFactory ID3D12DeviceFactory;
480#ifdef __cplusplus
481interface ID3D12DeviceFactory;
482#endif /* __cplusplus */
483#endif
484
485#ifndef __ID3D12DeviceConfiguration_FWD_DEFINED__
486#define __ID3D12DeviceConfiguration_FWD_DEFINED__
487typedef interface ID3D12DeviceConfiguration ID3D12DeviceConfiguration;
488#ifdef __cplusplus
489interface ID3D12DeviceConfiguration;
490#endif /* __cplusplus */
491#endif
492
469#ifndef __ID3D12GraphicsCommandList5_FWD_DEFINED__493#ifndef __ID3D12GraphicsCommandList5_FWD_DEFINED__
470#define __ID3D12GraphicsCommandList5_FWD_DEFINED__494#define __ID3D12GraphicsCommandList5_FWD_DEFINED__
471typedef interface ID3D12GraphicsCommandList5 ID3D12GraphicsCommandList5;495typedef interface ID3D12GraphicsCommandList5 ID3D12GraphicsCommandList5;
...@@ -1266,6 +1290,16 @@ extern "C" {...@@ -1266,6 +1290,16 @@ extern "C" {
12661290
1267#define D3D12_VIDEO_DECODE_STATUS_MACROBLOCKS_AFFECTED_UNKNOWN (0xffffffff)1291#define D3D12_VIDEO_DECODE_STATUS_MACROBLOCKS_AFFECTED_UNKNOWN (0xffffffff)
12681292
1293#define D3D12_VIDEO_ENCODER_AV1_INVALID_DPB_RESOURCE_INDEX (0xff)
1294
1295#define D3D12_VIDEO_ENCODER_AV1_MAX_TILE_COLS (64)
1296
1297#define D3D12_VIDEO_ENCODER_AV1_MAX_TILE_ROWS (64)
1298
1299#define D3D12_VIDEO_ENCODER_AV1_SUPERRES_DENOM_MIN (9)
1300
1301#define D3D12_VIDEO_ENCODER_AV1_SUPERRES_NUM (8)
1302
1269#define D3D12_VIDEO_PROCESS_MAX_FILTERS (32)1303#define D3D12_VIDEO_PROCESS_MAX_FILTERS (32)
12701304
1271#define D3D12_VIDEO_PROCESS_STEREO_VIEWS (2)1305#define D3D12_VIDEO_PROCESS_STEREO_VIEWS (2)
...@@ -18215,7 +18249,9 @@ typedef enum D3D12_RENDER_PASS_FLAGS {...@@ -18215,7 +18249,9 @@ typedef enum D3D12_RENDER_PASS_FLAGS {
18215 D3D12_RENDER_PASS_FLAG_NONE = 0x0,18249 D3D12_RENDER_PASS_FLAG_NONE = 0x0,
18216 D3D12_RENDER_PASS_FLAG_ALLOW_UAV_WRITES = 0x1,18250 D3D12_RENDER_PASS_FLAG_ALLOW_UAV_WRITES = 0x1,
18217 D3D12_RENDER_PASS_FLAG_SUSPENDING_PASS = 0x2,18251 D3D12_RENDER_PASS_FLAG_SUSPENDING_PASS = 0x2,
18218 D3D12_RENDER_PASS_FLAG_RESUMING_PASS = 0x418252 D3D12_RENDER_PASS_FLAG_RESUMING_PASS = 0x4,
18253 D3D12_RENDER_PASS_FLAG_BIND_READ_ONLY_DEPTH = 0x8,
18254 D3D12_RENDER_PASS_FLAG_BIND_READ_ONLY_STENCIL = 0x10
18219} D3D12_RENDER_PASS_FLAGS;18255} D3D12_RENDER_PASS_FLAGS;
18220DEFINE_ENUM_FLAG_OPERATORS(D3D12_RENDER_PASS_FLAGS);18256DEFINE_ENUM_FLAG_OPERATORS(D3D12_RENDER_PASS_FLAGS);
18221/*****************************************************************************18257/*****************************************************************************
...@@ -19272,7 +19308,7 @@ typedef enum D3D12_BARRIER_SYNC {...@@ -19272,7 +19308,7 @@ typedef enum D3D12_BARRIER_SYNC {
19272 D3D12_BARRIER_SYNC_NONE = 0x0,19308 D3D12_BARRIER_SYNC_NONE = 0x0,
19273 D3D12_BARRIER_SYNC_ALL = 0x1,19309 D3D12_BARRIER_SYNC_ALL = 0x1,
19274 D3D12_BARRIER_SYNC_DRAW = 0x2,19310 D3D12_BARRIER_SYNC_DRAW = 0x2,
19275 D3D12_BARRIER_SYNC_INPUT_ASSEMBLER = 0x4,19311 D3D12_BARRIER_SYNC_INDEX_INPUT = 0x4,
19276 D3D12_BARRIER_SYNC_VERTEX_SHADING = 0x8,19312 D3D12_BARRIER_SYNC_VERTEX_SHADING = 0x8,
19277 D3D12_BARRIER_SYNC_PIXEL_SHADING = 0x10,19313 D3D12_BARRIER_SYNC_PIXEL_SHADING = 0x10,
19278 D3D12_BARRIER_SYNC_DEPTH_STENCIL = 0x20,19314 D3D12_BARRIER_SYNC_DEPTH_STENCIL = 0x20,
...@@ -19286,6 +19322,7 @@ typedef enum D3D12_BARRIER_SYNC {...@@ -19286,6 +19322,7 @@ typedef enum D3D12_BARRIER_SYNC {
19286 D3D12_BARRIER_SYNC_ALL_SHADING = 0x1000,19322 D3D12_BARRIER_SYNC_ALL_SHADING = 0x1000,
19287 D3D12_BARRIER_SYNC_NON_PIXEL_SHADING = 0x2000,19323 D3D12_BARRIER_SYNC_NON_PIXEL_SHADING = 0x2000,
19288 D3D12_BARRIER_SYNC_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO = 0x4000,19324 D3D12_BARRIER_SYNC_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO = 0x4000,
19325 D3D12_BARRIER_SYNC_CLEAR_UNORDERED_ACCESS_VIEW = 0x8000,
19289 D3D12_BARRIER_SYNC_VIDEO_DECODE = 0x100000,19326 D3D12_BARRIER_SYNC_VIDEO_DECODE = 0x100000,
19290 D3D12_BARRIER_SYNC_VIDEO_PROCESS = 0x200000,19327 D3D12_BARRIER_SYNC_VIDEO_PROCESS = 0x200000,
19291 D3D12_BARRIER_SYNC_VIDEO_ENCODE = 0x400000,19328 D3D12_BARRIER_SYNC_VIDEO_ENCODE = 0x400000,
...@@ -21701,6 +21738,429 @@ static inline HRESULT ID3D12SDKConfiguration_SetSDKVersion(ID3D12SDKConfiguratio...@@ -21701,6 +21738,429 @@ static inline HRESULT ID3D12SDKConfiguration_SetSDKVersion(ID3D12SDKConfiguratio
2170121738
21702#endif /* __ID3D12SDKConfiguration_INTERFACE_DEFINED__ */21739#endif /* __ID3D12SDKConfiguration_INTERFACE_DEFINED__ */
2170321740
21741/*****************************************************************************
21742 * ID3D12SDKConfiguration1 interface
21743 */
21744#ifndef __ID3D12SDKConfiguration1_INTERFACE_DEFINED__
21745#define __ID3D12SDKConfiguration1_INTERFACE_DEFINED__
21746
21747DEFINE_GUID(IID_ID3D12SDKConfiguration1, 0x8aaf9303, 0xad25, 0x48b9, 0x9a,0x57, 0xd9,0xc3,0x7e,0x00,0x9d,0x9f);
21748#if defined(__cplusplus) && !defined(CINTERFACE)
21749MIDL_INTERFACE("8aaf9303-ad25-48b9-9a57-d9c37e009d9f")
21750ID3D12SDKConfiguration1 : public ID3D12SDKConfiguration
21751{
21752 virtual HRESULT STDMETHODCALLTYPE CreateDeviceFactory(
21753 UINT sdk_version,
21754 const char *sdk_path,
21755 REFIID riid,
21756 void **ppv) = 0;
21757
21758 virtual void STDMETHODCALLTYPE FreeUnusedSDKs(
21759 ) = 0;
21760
21761};
21762#ifdef __CRT_UUID_DECL
21763__CRT_UUID_DECL(ID3D12SDKConfiguration1, 0x8aaf9303, 0xad25, 0x48b9, 0x9a,0x57, 0xd9,0xc3,0x7e,0x00,0x9d,0x9f)
21764#endif
21765#else
21766typedef struct ID3D12SDKConfiguration1Vtbl {
21767 BEGIN_INTERFACE
21768
21769 /*** IUnknown methods ***/
21770 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21771 ID3D12SDKConfiguration1 *This,
21772 REFIID riid,
21773 void **ppvObject);
21774
21775 ULONG (STDMETHODCALLTYPE *AddRef)(
21776 ID3D12SDKConfiguration1 *This);
21777
21778 ULONG (STDMETHODCALLTYPE *Release)(
21779 ID3D12SDKConfiguration1 *This);
21780
21781 /*** ID3D12SDKConfiguration methods ***/
21782 HRESULT (STDMETHODCALLTYPE *SetSDKVersion)(
21783 ID3D12SDKConfiguration1 *This,
21784 UINT version,
21785 const char *path);
21786
21787 /*** ID3D12SDKConfiguration1 methods ***/
21788 HRESULT (STDMETHODCALLTYPE *CreateDeviceFactory)(
21789 ID3D12SDKConfiguration1 *This,
21790 UINT sdk_version,
21791 const char *sdk_path,
21792 REFIID riid,
21793 void **ppv);
21794
21795 void (STDMETHODCALLTYPE *FreeUnusedSDKs)(
21796 ID3D12SDKConfiguration1 *This);
21797
21798 END_INTERFACE
21799} ID3D12SDKConfiguration1Vtbl;
21800
21801interface ID3D12SDKConfiguration1 {
21802 CONST_VTBL ID3D12SDKConfiguration1Vtbl* lpVtbl;
21803};
21804
21805#ifdef COBJMACROS
21806#ifndef WIDL_C_INLINE_WRAPPERS
21807/*** IUnknown methods ***/
21808#define ID3D12SDKConfiguration1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21809#define ID3D12SDKConfiguration1_AddRef(This) (This)->lpVtbl->AddRef(This)
21810#define ID3D12SDKConfiguration1_Release(This) (This)->lpVtbl->Release(This)
21811/*** ID3D12SDKConfiguration methods ***/
21812#define ID3D12SDKConfiguration1_SetSDKVersion(This,version,path) (This)->lpVtbl->SetSDKVersion(This,version,path)
21813/*** ID3D12SDKConfiguration1 methods ***/
21814#define ID3D12SDKConfiguration1_CreateDeviceFactory(This,sdk_version,sdk_path,riid,ppv) (This)->lpVtbl->CreateDeviceFactory(This,sdk_version,sdk_path,riid,ppv)
21815#define ID3D12SDKConfiguration1_FreeUnusedSDKs(This) (This)->lpVtbl->FreeUnusedSDKs(This)
21816#else
21817/*** IUnknown methods ***/
21818static inline HRESULT ID3D12SDKConfiguration1_QueryInterface(ID3D12SDKConfiguration1* This,REFIID riid,void **ppvObject) {
21819 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21820}
21821static inline ULONG ID3D12SDKConfiguration1_AddRef(ID3D12SDKConfiguration1* This) {
21822 return This->lpVtbl->AddRef(This);
21823}
21824static inline ULONG ID3D12SDKConfiguration1_Release(ID3D12SDKConfiguration1* This) {
21825 return This->lpVtbl->Release(This);
21826}
21827/*** ID3D12SDKConfiguration methods ***/
21828static inline HRESULT ID3D12SDKConfiguration1_SetSDKVersion(ID3D12SDKConfiguration1* This,UINT version,const char *path) {
21829 return This->lpVtbl->SetSDKVersion(This,version,path);
21830}
21831/*** ID3D12SDKConfiguration1 methods ***/
21832static inline HRESULT ID3D12SDKConfiguration1_CreateDeviceFactory(ID3D12SDKConfiguration1* This,UINT sdk_version,const char *sdk_path,REFIID riid,void **ppv) {
21833 return This->lpVtbl->CreateDeviceFactory(This,sdk_version,sdk_path,riid,ppv);
21834}
21835static inline void ID3D12SDKConfiguration1_FreeUnusedSDKs(ID3D12SDKConfiguration1* This) {
21836 This->lpVtbl->FreeUnusedSDKs(This);
21837}
21838#endif
21839#endif
21840
21841#endif
21842
21843
21844#endif /* __ID3D12SDKConfiguration1_INTERFACE_DEFINED__ */
21845
21846typedef enum D3D12_DEVICE_FACTORY_FLAGS {
21847 D3D12_DEVICE_FACTORY_FLAG_NONE = 0,
21848 D3D12_DEVICE_FACTORY_FLAG_ALLOW_RETURNING_EXISTING_DEVICE = 0x1,
21849 D3D12_DEVICE_FACTORY_FLAG_ALLOW_RETURNING_INCOMPATIBLE_EXISTING_DEVICE = 0x2,
21850 D3D12_DEVICE_FACTORY_FLAG_DISALLOW_STORING_NEW_DEVICE_AS_SINGLETON = 0x4
21851} D3D12_DEVICE_FACTORY_FLAGS;
21852DEFINE_ENUM_FLAG_OPERATORS(D3D12_DEVICE_FACTORY_FLAGS)
21853/*****************************************************************************
21854 * ID3D12DeviceFactory interface
21855 */
21856#ifndef __ID3D12DeviceFactory_INTERFACE_DEFINED__
21857#define __ID3D12DeviceFactory_INTERFACE_DEFINED__
21858
21859DEFINE_GUID(IID_ID3D12DeviceFactory, 0x61f307d3, 0xd34e, 0x4e7c, 0x83,0x74, 0x3b,0xa4,0xde,0x23,0xcc,0xcb);
21860#if defined(__cplusplus) && !defined(CINTERFACE)
21861MIDL_INTERFACE("61f307d3-d34e-4e7c-8374-3ba4de23cccb")
21862ID3D12DeviceFactory : public IUnknown
21863{
21864 virtual HRESULT STDMETHODCALLTYPE InitializeFromGlobalState(
21865 ) = 0;
21866
21867 virtual HRESULT STDMETHODCALLTYPE ApplyToGlobalState(
21868 ) = 0;
21869
21870 virtual HRESULT STDMETHODCALLTYPE SetFlags(
21871 D3D12_DEVICE_FACTORY_FLAGS flags) = 0;
21872
21873 virtual D3D12_DEVICE_FACTORY_FLAGS STDMETHODCALLTYPE GetFlags(
21874 ) = 0;
21875
21876 virtual HRESULT STDMETHODCALLTYPE GetConfigurationInterface(
21877 REFCLSID clsid,
21878 REFIID iid,
21879 void **ppv) = 0;
21880
21881 virtual HRESULT STDMETHODCALLTYPE EnableExperimentalFeatures(
21882 UINT num_features,
21883 const IID *iids,
21884 void *configuration_structs,
21885 UINT *configuration_struct_sizes) = 0;
21886
21887 virtual HRESULT STDMETHODCALLTYPE CreateDevice(
21888 IUnknown *adapter,
21889 D3D_FEATURE_LEVEL feature_level,
21890 REFIID riid,
21891 void **ppv_device) = 0;
21892
21893};
21894#ifdef __CRT_UUID_DECL
21895__CRT_UUID_DECL(ID3D12DeviceFactory, 0x61f307d3, 0xd34e, 0x4e7c, 0x83,0x74, 0x3b,0xa4,0xde,0x23,0xcc,0xcb)
21896#endif
21897#else
21898typedef struct ID3D12DeviceFactoryVtbl {
21899 BEGIN_INTERFACE
21900
21901 /*** IUnknown methods ***/
21902 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
21903 ID3D12DeviceFactory *This,
21904 REFIID riid,
21905 void **ppvObject);
21906
21907 ULONG (STDMETHODCALLTYPE *AddRef)(
21908 ID3D12DeviceFactory *This);
21909
21910 ULONG (STDMETHODCALLTYPE *Release)(
21911 ID3D12DeviceFactory *This);
21912
21913 /*** ID3D12DeviceFactory methods ***/
21914 HRESULT (STDMETHODCALLTYPE *InitializeFromGlobalState)(
21915 ID3D12DeviceFactory *This);
21916
21917 HRESULT (STDMETHODCALLTYPE *ApplyToGlobalState)(
21918 ID3D12DeviceFactory *This);
21919
21920 HRESULT (STDMETHODCALLTYPE *SetFlags)(
21921 ID3D12DeviceFactory *This,
21922 D3D12_DEVICE_FACTORY_FLAGS flags);
21923
21924 D3D12_DEVICE_FACTORY_FLAGS (STDMETHODCALLTYPE *GetFlags)(
21925 ID3D12DeviceFactory *This);
21926
21927 HRESULT (STDMETHODCALLTYPE *GetConfigurationInterface)(
21928 ID3D12DeviceFactory *This,
21929 REFCLSID clsid,
21930 REFIID iid,
21931 void **ppv);
21932
21933 HRESULT (STDMETHODCALLTYPE *EnableExperimentalFeatures)(
21934 ID3D12DeviceFactory *This,
21935 UINT num_features,
21936 const IID *iids,
21937 void *configuration_structs,
21938 UINT *configuration_struct_sizes);
21939
21940 HRESULT (STDMETHODCALLTYPE *CreateDevice)(
21941 ID3D12DeviceFactory *This,
21942 IUnknown *adapter,
21943 D3D_FEATURE_LEVEL feature_level,
21944 REFIID riid,
21945 void **ppv_device);
21946
21947 END_INTERFACE
21948} ID3D12DeviceFactoryVtbl;
21949
21950interface ID3D12DeviceFactory {
21951 CONST_VTBL ID3D12DeviceFactoryVtbl* lpVtbl;
21952};
21953
21954#ifdef COBJMACROS
21955#ifndef WIDL_C_INLINE_WRAPPERS
21956/*** IUnknown methods ***/
21957#define ID3D12DeviceFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
21958#define ID3D12DeviceFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
21959#define ID3D12DeviceFactory_Release(This) (This)->lpVtbl->Release(This)
21960/*** ID3D12DeviceFactory methods ***/
21961#define ID3D12DeviceFactory_InitializeFromGlobalState(This) (This)->lpVtbl->InitializeFromGlobalState(This)
21962#define ID3D12DeviceFactory_ApplyToGlobalState(This) (This)->lpVtbl->ApplyToGlobalState(This)
21963#define ID3D12DeviceFactory_SetFlags(This,flags) (This)->lpVtbl->SetFlags(This,flags)
21964#define ID3D12DeviceFactory_GetFlags(This) (This)->lpVtbl->GetFlags(This)
21965#define ID3D12DeviceFactory_GetConfigurationInterface(This,clsid,iid,ppv) (This)->lpVtbl->GetConfigurationInterface(This,clsid,iid,ppv)
21966#define ID3D12DeviceFactory_EnableExperimentalFeatures(This,num_features,iids,configuration_structs,configuration_struct_sizes) (This)->lpVtbl->EnableExperimentalFeatures(This,num_features,iids,configuration_structs,configuration_struct_sizes)
21967#define ID3D12DeviceFactory_CreateDevice(This,adapter,feature_level,riid,ppv_device) (This)->lpVtbl->CreateDevice(This,adapter,feature_level,riid,ppv_device)
21968#else
21969/*** IUnknown methods ***/
21970static inline HRESULT ID3D12DeviceFactory_QueryInterface(ID3D12DeviceFactory* This,REFIID riid,void **ppvObject) {
21971 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21972}
21973static inline ULONG ID3D12DeviceFactory_AddRef(ID3D12DeviceFactory* This) {
21974 return This->lpVtbl->AddRef(This);
21975}
21976static inline ULONG ID3D12DeviceFactory_Release(ID3D12DeviceFactory* This) {
21977 return This->lpVtbl->Release(This);
21978}
21979/*** ID3D12DeviceFactory methods ***/
21980static inline HRESULT ID3D12DeviceFactory_InitializeFromGlobalState(ID3D12DeviceFactory* This) {
21981 return This->lpVtbl->InitializeFromGlobalState(This);
21982}
21983static inline HRESULT ID3D12DeviceFactory_ApplyToGlobalState(ID3D12DeviceFactory* This) {
21984 return This->lpVtbl->ApplyToGlobalState(This);
21985}
21986static inline HRESULT ID3D12DeviceFactory_SetFlags(ID3D12DeviceFactory* This,D3D12_DEVICE_FACTORY_FLAGS flags) {
21987 return This->lpVtbl->SetFlags(This,flags);
21988}
21989static inline D3D12_DEVICE_FACTORY_FLAGS ID3D12DeviceFactory_GetFlags(ID3D12DeviceFactory* This) {
21990 return This->lpVtbl->GetFlags(This);
21991}
21992static inline HRESULT ID3D12DeviceFactory_GetConfigurationInterface(ID3D12DeviceFactory* This,REFCLSID clsid,REFIID iid,void **ppv) {
21993 return This->lpVtbl->GetConfigurationInterface(This,clsid,iid,ppv);
21994}
21995static inline HRESULT ID3D12DeviceFactory_EnableExperimentalFeatures(ID3D12DeviceFactory* This,UINT num_features,const IID *iids,void *configuration_structs,UINT *configuration_struct_sizes) {
21996 return This->lpVtbl->EnableExperimentalFeatures(This,num_features,iids,configuration_structs,configuration_struct_sizes);
21997}
21998static inline HRESULT ID3D12DeviceFactory_CreateDevice(ID3D12DeviceFactory* This,IUnknown *adapter,D3D_FEATURE_LEVEL feature_level,REFIID riid,void **ppv_device) {
21999 return This->lpVtbl->CreateDevice(This,adapter,feature_level,riid,ppv_device);
22000}
22001#endif
22002#endif
22003
22004#endif
22005
22006
22007#endif /* __ID3D12DeviceFactory_INTERFACE_DEFINED__ */
22008
22009typedef enum D3D12_DEVICE_FLAGS {
22010 D3D12_DEVICE_FLAG_NONE = 0,
22011 D3D12_DEVICE_FLAG_DEBUG_LAYER_ENABLED = 0x1,
22012 D3D12_DEVICE_FLAG_GPU_BASED_VALIDATION_ENABLED = 0x2,
22013 D3D12_DEVICE_FLAG_SYNCHRONIZED_COMMAND_QUEUE_VALIDATION_DISABLED = 0x4,
22014 D3D12_DEVICE_FLAG_DRED_AUTO_BREADCRUMBS_ENABLED = 0x8,
22015 D3D12_DEVICE_FLAG_DRED_PAGE_FAULT_REPORTING_ENABLED = 0x10,
22016 D3D12_DEVICE_FLAG_DRED_WATSON_REPORTING_ENABLED = 0x20,
22017 D3D12_DEVICE_FLAG_DRED_BREADCRUMB_CONTEXT_ENABLED = 0x40,
22018 D3D12_DEVICE_FLAG_DRED_USE_MARKERS_ONLY_BREADCRUMBS = 0x80,
22019 D3D12_DEVICE_FLAG_SHADER_INSTRUMENTATION_ENABLED = 0x100,
22020 D3D12_DEVICE_FLAG_AUTO_DEBUG_NAME_ENABLED = 0x200,
22021 D3D12_DEVICE_FLAG_FORCE_LEGACY_STATE_VALIDATION = 0x400
22022} D3D12_DEVICE_FLAGS;
22023DEFINE_ENUM_FLAG_OPERATORS(D3D12_DEVICE_FLAGS)
22024typedef struct D3D12_DEVICE_CONFIGURATION_DESC {
22025 D3D12_DEVICE_FLAGS Flags;
22026 UINT GpuBasedValidationFlags;
22027 UINT SDKVersion;
22028 UINT NumEnabledExperimentalFeatures;
22029} D3D12_DEVICE_CONFIGURATION_DESC;
22030/*****************************************************************************
22031 * ID3D12DeviceConfiguration interface
22032 */
22033#ifndef __ID3D12DeviceConfiguration_INTERFACE_DEFINED__
22034#define __ID3D12DeviceConfiguration_INTERFACE_DEFINED__
22035
22036DEFINE_GUID(IID_ID3D12DeviceConfiguration, 0x78dbf87b, 0xf766, 0x422b, 0xa6,0x1c, 0xc8,0xc4,0x46,0xbd,0xb9,0xad);
22037#if defined(__cplusplus) && !defined(CINTERFACE)
22038MIDL_INTERFACE("78dbf87b-f766-422b-a61c-c8c446bdb9ad")
22039ID3D12DeviceConfiguration : public IUnknown
22040{
22041#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS
22042 virtual D3D12_DEVICE_CONFIGURATION_DESC* STDMETHODCALLTYPE GetDesc(
22043 D3D12_DEVICE_CONFIGURATION_DESC *__ret) = 0;
22044 D3D12_DEVICE_CONFIGURATION_DESC STDMETHODCALLTYPE GetDesc(
22045 )
22046 {
22047 D3D12_DEVICE_CONFIGURATION_DESC __ret;
22048 return *GetDesc(&__ret);
22049 }
22050#else
22051 virtual D3D12_DEVICE_CONFIGURATION_DESC STDMETHODCALLTYPE GetDesc(
22052 ) = 0;
22053#endif
22054
22055 virtual HRESULT STDMETHODCALLTYPE GetEnabledExperimentalFeatures(
22056 GUID *guids,
22057 UINT num_guids) = 0;
22058
22059 virtual HRESULT STDMETHODCALLTYPE SerializeVersionedRootSignature(
22060 const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *desc,
22061 ID3DBlob **result,
22062 ID3DBlob **error) = 0;
22063
22064 virtual HRESULT STDMETHODCALLTYPE CreateVersionedRootSignatureDeserializer(
22065 const void *blob,
22066 SIZE_T size,
22067 REFIID riid,
22068 void **deserializer) = 0;
22069
22070};
22071#ifdef __CRT_UUID_DECL
22072__CRT_UUID_DECL(ID3D12DeviceConfiguration, 0x78dbf87b, 0xf766, 0x422b, 0xa6,0x1c, 0xc8,0xc4,0x46,0xbd,0xb9,0xad)
22073#endif
22074#else
22075typedef struct ID3D12DeviceConfigurationVtbl {
22076 BEGIN_INTERFACE
22077
22078 /*** IUnknown methods ***/
22079 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
22080 ID3D12DeviceConfiguration *This,
22081 REFIID riid,
22082 void **ppvObject);
22083
22084 ULONG (STDMETHODCALLTYPE *AddRef)(
22085 ID3D12DeviceConfiguration *This);
22086
22087 ULONG (STDMETHODCALLTYPE *Release)(
22088 ID3D12DeviceConfiguration *This);
22089
22090 /*** ID3D12DeviceConfiguration methods ***/
22091 D3D12_DEVICE_CONFIGURATION_DESC * (STDMETHODCALLTYPE *GetDesc)(
22092 ID3D12DeviceConfiguration *This,
22093 D3D12_DEVICE_CONFIGURATION_DESC *__ret);
22094
22095 HRESULT (STDMETHODCALLTYPE *GetEnabledExperimentalFeatures)(
22096 ID3D12DeviceConfiguration *This,
22097 GUID *guids,
22098 UINT num_guids);
22099
22100 HRESULT (STDMETHODCALLTYPE *SerializeVersionedRootSignature)(
22101 ID3D12DeviceConfiguration *This,
22102 const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *desc,
22103 ID3DBlob **result,
22104 ID3DBlob **error);
22105
22106 HRESULT (STDMETHODCALLTYPE *CreateVersionedRootSignatureDeserializer)(
22107 ID3D12DeviceConfiguration *This,
22108 const void *blob,
22109 SIZE_T size,
22110 REFIID riid,
22111 void **deserializer);
22112
22113 END_INTERFACE
22114} ID3D12DeviceConfigurationVtbl;
22115
22116interface ID3D12DeviceConfiguration {
22117 CONST_VTBL ID3D12DeviceConfigurationVtbl* lpVtbl;
22118};
22119
22120#ifdef COBJMACROS
22121#ifndef WIDL_C_INLINE_WRAPPERS
22122/*** IUnknown methods ***/
22123#define ID3D12DeviceConfiguration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
22124#define ID3D12DeviceConfiguration_AddRef(This) (This)->lpVtbl->AddRef(This)
22125#define ID3D12DeviceConfiguration_Release(This) (This)->lpVtbl->Release(This)
22126/*** ID3D12DeviceConfiguration methods ***/
22127#define ID3D12DeviceConfiguration_GetDesc(This) ID3D12DeviceConfiguration_GetDesc_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support
22128#define ID3D12DeviceConfiguration_GetEnabledExperimentalFeatures(This,guids,num_guids) (This)->lpVtbl->GetEnabledExperimentalFeatures(This,guids,num_guids)
22129#define ID3D12DeviceConfiguration_SerializeVersionedRootSignature(This,desc,result,error) (This)->lpVtbl->SerializeVersionedRootSignature(This,desc,result,error)
22130#define ID3D12DeviceConfiguration_CreateVersionedRootSignatureDeserializer(This,blob,size,riid,deserializer) (This)->lpVtbl->CreateVersionedRootSignatureDeserializer(This,blob,size,riid,deserializer)
22131#else
22132/*** IUnknown methods ***/
22133static inline HRESULT ID3D12DeviceConfiguration_QueryInterface(ID3D12DeviceConfiguration* This,REFIID riid,void **ppvObject) {
22134 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22135}
22136static inline ULONG ID3D12DeviceConfiguration_AddRef(ID3D12DeviceConfiguration* This) {
22137 return This->lpVtbl->AddRef(This);
22138}
22139static inline ULONG ID3D12DeviceConfiguration_Release(ID3D12DeviceConfiguration* This) {
22140 return This->lpVtbl->Release(This);
22141}
22142/*** ID3D12DeviceConfiguration methods ***/
22143static inline D3D12_DEVICE_CONFIGURATION_DESC ID3D12DeviceConfiguration_GetDesc(ID3D12DeviceConfiguration* This) {
22144 D3D12_DEVICE_CONFIGURATION_DESC __ret;
22145 return *This->lpVtbl->GetDesc(This,&__ret);
22146}
22147static inline HRESULT ID3D12DeviceConfiguration_GetEnabledExperimentalFeatures(ID3D12DeviceConfiguration* This,GUID *guids,UINT num_guids) {
22148 return This->lpVtbl->GetEnabledExperimentalFeatures(This,guids,num_guids);
22149}
22150static inline HRESULT ID3D12DeviceConfiguration_SerializeVersionedRootSignature(ID3D12DeviceConfiguration* This,const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *desc,ID3DBlob **result,ID3DBlob **error) {
22151 return This->lpVtbl->SerializeVersionedRootSignature(This,desc,result,error);
22152}
22153static inline HRESULT ID3D12DeviceConfiguration_CreateVersionedRootSignatureDeserializer(ID3D12DeviceConfiguration* This,const void *blob,SIZE_T size,REFIID riid,void **deserializer) {
22154 return This->lpVtbl->CreateVersionedRootSignatureDeserializer(This,blob,size,riid,deserializer);
22155}
22156#endif
22157#endif
22158
22159#endif
22160
22161
22162#endif /* __ID3D12DeviceConfiguration_INTERFACE_DEFINED__ */
22163
21704typedef enum D3D12_AXIS_SHADING_RATE {22164typedef enum D3D12_AXIS_SHADING_RATE {
21705 D3D12_AXIS_SHADING_RATE_1X = 0x0,22165 D3D12_AXIS_SHADING_RATE_1X = 0x0,
21706 D3D12_AXIS_SHADING_RATE_2X = 0x1,22166 D3D12_AXIS_SHADING_RATE_2X = 0x1,
lib/libc/include/any-windows-any/d3d12sdklayers.h+3-2
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d12sdklayers.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d12sdklayers.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -989,7 +989,8 @@ typedef enum D3D12_MESSAGE_ID {...@@ -989,7 +989,8 @@ typedef enum D3D12_MESSAGE_ID {
989 D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_UNBOUNDED_STATIC_DESCRIPTORS = 0x4fd,989 D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_UNBOUNDED_STATIC_DESCRIPTORS = 0x4fd,
990 D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_INVALIDSHADERBYTECODE = 0x4fe,990 D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_INVALIDSHADERBYTECODE = 0x4fe,
991 D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_OUTOFMEMORY = 0x4ff,991 D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_OUTOFMEMORY = 0x4ff,
992 D3D12_MESSAGE_ID_D3D12_MESSAGES_END = 0x500992 D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_LAYOUT = 0x536,
993 D3D12_MESSAGE_ID_D3D12_MESSAGES_END = 0x537
993} D3D12_MESSAGE_ID;994} D3D12_MESSAGE_ID;
994typedef enum D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE {995typedef enum D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE {
995 D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NONE = 0x0,996 D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NONE = 0x0,
lib/libc/include/any-windows-any/d3d12shader.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d12shader.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d12shader.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d12video.h+1111-4
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3d12video.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3d12video.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -42,6 +42,14 @@ interface ID3D12VideoDecoder;...@@ -42,6 +42,14 @@ interface ID3D12VideoDecoder;
42#endif /* __cplusplus */42#endif /* __cplusplus */
43#endif43#endif
4444
45#ifndef __ID3D12VideoProcessor_FWD_DEFINED__
46#define __ID3D12VideoProcessor_FWD_DEFINED__
47typedef interface ID3D12VideoProcessor ID3D12VideoProcessor;
48#ifdef __cplusplus
49interface ID3D12VideoProcessor;
50#endif /* __cplusplus */
51#endif
52
45#ifndef __ID3D12VideoDecodeCommandList_FWD_DEFINED__53#ifndef __ID3D12VideoDecodeCommandList_FWD_DEFINED__
46#define __ID3D12VideoDecodeCommandList_FWD_DEFINED__54#define __ID3D12VideoDecodeCommandList_FWD_DEFINED__
47typedef interface ID3D12VideoDecodeCommandList ID3D12VideoDecodeCommandList;55typedef interface ID3D12VideoDecodeCommandList ID3D12VideoDecodeCommandList;
...@@ -50,6 +58,14 @@ interface ID3D12VideoDecodeCommandList;...@@ -50,6 +58,14 @@ interface ID3D12VideoDecodeCommandList;
50#endif /* __cplusplus */58#endif /* __cplusplus */
51#endif59#endif
5260
61#ifndef __ID3D12VideoProcessCommandList_FWD_DEFINED__
62#define __ID3D12VideoProcessCommandList_FWD_DEFINED__
63typedef interface ID3D12VideoProcessCommandList ID3D12VideoProcessCommandList;
64#ifdef __cplusplus
65interface ID3D12VideoProcessCommandList;
66#endif /* __cplusplus */
67#endif
68
53#ifndef __ID3D12VideoDecodeCommandList1_FWD_DEFINED__69#ifndef __ID3D12VideoDecodeCommandList1_FWD_DEFINED__
54#define __ID3D12VideoDecodeCommandList1_FWD_DEFINED__70#define __ID3D12VideoDecodeCommandList1_FWD_DEFINED__
55typedef interface ID3D12VideoDecodeCommandList1 ID3D12VideoDecodeCommandList1;71typedef interface ID3D12VideoDecodeCommandList1 ID3D12VideoDecodeCommandList1;
...@@ -169,6 +185,15 @@ typedef enum D3D12_VIDEO_FRAME_STEREO_FORMAT {...@@ -169,6 +185,15 @@ typedef enum D3D12_VIDEO_FRAME_STEREO_FORMAT {
169 D3D12_VIDEO_FRAME_STEREO_FORMAT_VERTICAL = 3,185 D3D12_VIDEO_FRAME_STEREO_FORMAT_VERTICAL = 3,
170 D3D12_VIDEO_FRAME_STEREO_FORMAT_SEPARATE = 4186 D3D12_VIDEO_FRAME_STEREO_FORMAT_SEPARATE = 4
171} D3D12_VIDEO_FRAME_STEREO_FORMAT;187} D3D12_VIDEO_FRAME_STEREO_FORMAT;
188typedef struct D3D12_VIDEO_FORMAT {
189 DXGI_FORMAT Format;
190 DXGI_COLOR_SPACE_TYPE ColorSpace;
191} D3D12_VIDEO_FORMAT;
192typedef struct D3D12_VIDEO_SAMPLE {
193 UINT Width;
194 UINT Height;
195 D3D12_VIDEO_FORMAT Format;
196} D3D12_VIDEO_SAMPLE;
172typedef enum D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE {197typedef enum D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE {
173 D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE_NONE = 0,198 D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE_NONE = 0,
174 D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE_FIELD_BASED = 1199 D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE_FIELD_BASED = 1
...@@ -213,7 +238,9 @@ typedef enum D3D12_FEATURE_VIDEO {...@@ -213,7 +238,9 @@ typedef enum D3D12_FEATURE_VIDEO {
213 D3D12_FEATURE_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT = 42,238 D3D12_FEATURE_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT = 42,
214 D3D12_FEATURE_VIDEO_ENCODER_SUPPORT = 43,239 D3D12_FEATURE_VIDEO_ENCODER_SUPPORT = 43,
215 D3D12_FEATURE_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT = 44,240 D3D12_FEATURE_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT = 44,
216 D3D12_FEATURE_VIDEO_ENCODER_RESOURCE_REQUIREMENTS = 45241 D3D12_FEATURE_VIDEO_ENCODER_RESOURCE_REQUIREMENTS = 45,
242 D3D12_FEATURE_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_CONFIG = 46,
243 D3D12_FEATURE_VIDEO_ENCODER_SUPPORT1 = 47
217} D3D12_FEATURE_VIDEO;244} D3D12_FEATURE_VIDEO;
218typedef enum D3D12_BITSTREAM_ENCRYPTION_TYPE {245typedef enum D3D12_BITSTREAM_ENCRYPTION_TYPE {
219 D3D12_BITSTREAM_ENCRYPTION_TYPE_NONE = 0246 D3D12_BITSTREAM_ENCRYPTION_TYPE_NONE = 0
...@@ -271,6 +298,10 @@ typedef enum D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS {...@@ -271,6 +298,10 @@ typedef enum D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS {
271 D3D12_VIDEO_PROCESS_DEINTERLACE_FLAG_CUSTOM = 0x80000000298 D3D12_VIDEO_PROCESS_DEINTERLACE_FLAG_CUSTOM = 0x80000000
272} D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS;299} D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS;
273DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS );300DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS );
301typedef struct D3D12_VIDEO_PROCESS_ALPHA_BLENDING {
302 WINBOOL Enable;
303 FLOAT Alpha;
304} D3D12_VIDEO_PROCESS_ALPHA_BLENDING;
274typedef struct D3D12_VIDEO_PROCESS_LUMA_KEY {305typedef struct D3D12_VIDEO_PROCESS_LUMA_KEY {
275 WINBOOL Enable;306 WINBOOL Enable;
276 FLOAT Lower;307 FLOAT Lower;
...@@ -761,6 +792,16 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_DECODE_SUPPORT {...@@ -761,6 +792,16 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_DECODE_SUPPORT {
761 D3D12_VIDEO_DECODE_CONFIGURATION_FLAGS ConfigurationFlags;792 D3D12_VIDEO_DECODE_CONFIGURATION_FLAGS ConfigurationFlags;
762 D3D12_VIDEO_DECODE_TIER DecodeTier;793 D3D12_VIDEO_DECODE_TIER DecodeTier;
763} D3D12_FEATURE_DATA_VIDEO_DECODE_SUPPORT;794} D3D12_FEATURE_DATA_VIDEO_DECODE_SUPPORT;
795typedef enum D3D12_VIDEO_SCALE_SUPPORT_FLAGS {
796 D3D12_VIDEO_SCALE_SUPPORT_FLAG_NONE = 0x0,
797 D3D12_VIDEO_SCALE_SUPPORT_FLAG_POW2_ONLY = 0x1,
798 D3D12_VIDEO_SCALE_SUPPORT_FLAG_EVEN_DIMENSIONS_ONLY = 0x2
799} D3D12_VIDEO_SCALE_SUPPORT_FLAGS;
800DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_SCALE_SUPPORT_FLAGS)
801typedef struct D3D12_VIDEO_SCALE_SUPPORT {
802 D3D12_VIDEO_SIZE_RANGE OutputSizeRange;
803 D3D12_VIDEO_SCALE_SUPPORT_FLAGS Flags;
804} D3D12_VIDEO_SCALE_SUPPORT;
764typedef struct D3D12_VIDEO_DECODE_FRAME_ARGUMENT {805typedef struct D3D12_VIDEO_DECODE_FRAME_ARGUMENT {
765 D3D12_VIDEO_DECODE_ARGUMENT_TYPE Type;806 D3D12_VIDEO_DECODE_ARGUMENT_TYPE Type;
766 UINT Size;807 UINT Size;
...@@ -796,6 +837,286 @@ typedef struct D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS {...@@ -796,6 +837,286 @@ typedef struct D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS {
796 UINT OutputSubresource;837 UINT OutputSubresource;
797 D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS ConversionArguments;838 D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS ConversionArguments;
798} D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS;839} D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS;
840/*****************************************************************************
841 * ID3D12VideoProcessor interface
842 */
843#ifndef __ID3D12VideoProcessor_INTERFACE_DEFINED__
844#define __ID3D12VideoProcessor_INTERFACE_DEFINED__
845
846DEFINE_GUID(IID_ID3D12VideoProcessor, 0x304fdb32, 0xbede, 0x410a, 0x85,0x45, 0x94,0x3a,0xc6,0xa4,0x61,0x38);
847#if defined(__cplusplus) && !defined(CINTERFACE)
848MIDL_INTERFACE("304fdb32-bede-410a-8545-943ac6a46138")
849ID3D12VideoProcessor : public ID3D12Pageable
850{
851 virtual UINT STDMETHODCALLTYPE GetNodeMask(
852 ) = 0;
853
854 virtual UINT STDMETHODCALLTYPE GetNumInputStreamDescs(
855 ) = 0;
856
857 virtual HRESULT STDMETHODCALLTYPE GetInputStreamDescs(
858 UINT num_input_stream_descs,
859 D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *input_stream_descs) = 0;
860
861#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS
862 virtual D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC* STDMETHODCALLTYPE GetOutputStreamDesc(
863 D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *__ret) = 0;
864 D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC STDMETHODCALLTYPE GetOutputStreamDesc(
865 )
866 {
867 D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC __ret;
868 return *GetOutputStreamDesc(&__ret);
869 }
870#else
871 virtual D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC STDMETHODCALLTYPE GetOutputStreamDesc(
872 ) = 0;
873#endif
874
875};
876#ifdef __CRT_UUID_DECL
877__CRT_UUID_DECL(ID3D12VideoProcessor, 0x304fdb32, 0xbede, 0x410a, 0x85,0x45, 0x94,0x3a,0xc6,0xa4,0x61,0x38)
878#endif
879#else
880typedef struct ID3D12VideoProcessorVtbl {
881 BEGIN_INTERFACE
882
883 /*** IUnknown methods ***/
884 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
885 ID3D12VideoProcessor *This,
886 REFIID riid,
887 void **ppvObject);
888
889 ULONG (STDMETHODCALLTYPE *AddRef)(
890 ID3D12VideoProcessor *This);
891
892 ULONG (STDMETHODCALLTYPE *Release)(
893 ID3D12VideoProcessor *This);
894
895 /*** ID3D12Object methods ***/
896 HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
897 ID3D12VideoProcessor *This,
898 REFGUID guid,
899 UINT *data_size,
900 void *data);
901
902 HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
903 ID3D12VideoProcessor *This,
904 REFGUID guid,
905 UINT data_size,
906 const void *data);
907
908 HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
909 ID3D12VideoProcessor *This,
910 REFGUID guid,
911 const IUnknown *data);
912
913 HRESULT (STDMETHODCALLTYPE *SetName)(
914 ID3D12VideoProcessor *This,
915 const WCHAR *name);
916
917 /*** ID3D12DeviceChild methods ***/
918 HRESULT (STDMETHODCALLTYPE *GetDevice)(
919 ID3D12VideoProcessor *This,
920 REFIID riid,
921 void **device);
922
923 /*** ID3D12VideoProcessor methods ***/
924 UINT (STDMETHODCALLTYPE *GetNodeMask)(
925 ID3D12VideoProcessor *This);
926
927 UINT (STDMETHODCALLTYPE *GetNumInputStreamDescs)(
928 ID3D12VideoProcessor *This);
929
930 HRESULT (STDMETHODCALLTYPE *GetInputStreamDescs)(
931 ID3D12VideoProcessor *This,
932 UINT num_input_stream_descs,
933 D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *input_stream_descs);
934
935 D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC * (STDMETHODCALLTYPE *GetOutputStreamDesc)(
936 ID3D12VideoProcessor *This,
937 D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC *__ret);
938
939 END_INTERFACE
940} ID3D12VideoProcessorVtbl;
941
942interface ID3D12VideoProcessor {
943 CONST_VTBL ID3D12VideoProcessorVtbl* lpVtbl;
944};
945
946#ifdef COBJMACROS
947#ifndef WIDL_C_INLINE_WRAPPERS
948/*** IUnknown methods ***/
949#define ID3D12VideoProcessor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
950#define ID3D12VideoProcessor_AddRef(This) (This)->lpVtbl->AddRef(This)
951#define ID3D12VideoProcessor_Release(This) (This)->lpVtbl->Release(This)
952/*** ID3D12Object methods ***/
953#define ID3D12VideoProcessor_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data)
954#define ID3D12VideoProcessor_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data)
955#define ID3D12VideoProcessor_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data)
956#define ID3D12VideoProcessor_SetName(This,name) (This)->lpVtbl->SetName(This,name)
957/*** ID3D12DeviceChild methods ***/
958#define ID3D12VideoProcessor_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device)
959/*** ID3D12VideoProcessor methods ***/
960#define ID3D12VideoProcessor_GetNodeMask(This) (This)->lpVtbl->GetNodeMask(This)
961#define ID3D12VideoProcessor_GetNumInputStreamDescs(This) (This)->lpVtbl->GetNumInputStreamDescs(This)
962#define ID3D12VideoProcessor_GetInputStreamDescs(This,num_input_stream_descs,input_stream_descs) (This)->lpVtbl->GetInputStreamDescs(This,num_input_stream_descs,input_stream_descs)
963#define ID3D12VideoProcessor_GetOutputStreamDesc(This) ID3D12VideoProcessor_GetOutputStreamDesc_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support
964#else
965/*** IUnknown methods ***/
966static inline HRESULT ID3D12VideoProcessor_QueryInterface(ID3D12VideoProcessor* This,REFIID riid,void **ppvObject) {
967 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
968}
969static inline ULONG ID3D12VideoProcessor_AddRef(ID3D12VideoProcessor* This) {
970 return This->lpVtbl->AddRef(This);
971}
972static inline ULONG ID3D12VideoProcessor_Release(ID3D12VideoProcessor* This) {
973 return This->lpVtbl->Release(This);
974}
975/*** ID3D12Object methods ***/
976static inline HRESULT ID3D12VideoProcessor_GetPrivateData(ID3D12VideoProcessor* This,REFGUID guid,UINT *data_size,void *data) {
977 return This->lpVtbl->GetPrivateData(This,guid,data_size,data);
978}
979static inline HRESULT ID3D12VideoProcessor_SetPrivateData(ID3D12VideoProcessor* This,REFGUID guid,UINT data_size,const void *data) {
980 return This->lpVtbl->SetPrivateData(This,guid,data_size,data);
981}
982static inline HRESULT ID3D12VideoProcessor_SetPrivateDataInterface(ID3D12VideoProcessor* This,REFGUID guid,const IUnknown *data) {
983 return This->lpVtbl->SetPrivateDataInterface(This,guid,data);
984}
985static inline HRESULT ID3D12VideoProcessor_SetName(ID3D12VideoProcessor* This,const WCHAR *name) {
986 return This->lpVtbl->SetName(This,name);
987}
988/*** ID3D12DeviceChild methods ***/
989static inline HRESULT ID3D12VideoProcessor_GetDevice(ID3D12VideoProcessor* This,REFIID riid,void **device) {
990 return This->lpVtbl->GetDevice(This,riid,device);
991}
992/*** ID3D12VideoProcessor methods ***/
993static inline UINT ID3D12VideoProcessor_GetNodeMask(ID3D12VideoProcessor* This) {
994 return This->lpVtbl->GetNodeMask(This);
995}
996static inline UINT ID3D12VideoProcessor_GetNumInputStreamDescs(ID3D12VideoProcessor* This) {
997 return This->lpVtbl->GetNumInputStreamDescs(This);
998}
999static inline HRESULT ID3D12VideoProcessor_GetInputStreamDescs(ID3D12VideoProcessor* This,UINT num_input_stream_descs,D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC *input_stream_descs) {
1000 return This->lpVtbl->GetInputStreamDescs(This,num_input_stream_descs,input_stream_descs);
1001}
1002static inline D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC ID3D12VideoProcessor_GetOutputStreamDesc(ID3D12VideoProcessor* This) {
1003 D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC __ret;
1004 return *This->lpVtbl->GetOutputStreamDesc(This,&__ret);
1005}
1006#endif
1007#endif
1008
1009#endif
1010
1011
1012#endif /* __ID3D12VideoProcessor_INTERFACE_DEFINED__ */
1013
1014typedef enum D3D12_VIDEO_PROCESS_FEATURE_FLAGS {
1015 D3D12_VIDEO_PROCESS_FEATURE_FLAG_NONE = 0x0,
1016 D3D12_VIDEO_PROCESS_FEATURE_FLAG_ALPHA_FILL = 0x1,
1017 D3D12_VIDEO_PROCESS_FEATURE_FLAG_LUMA_KEY = 0x2,
1018 D3D12_VIDEO_PROCESS_FEATURE_FLAG_STEREO = 0x4,
1019 D3D12_VIDEO_PROCESS_FEATURE_FLAG_ROTATION = 0x8,
1020 D3D12_VIDEO_PROCESS_FEATURE_FLAG_FLIP = 0x10,
1021 D3D12_VIDEO_PROCESS_FEATURE_FLAG_ALPHA_BLENDING = 0x20,
1022 D3D12_VIDEO_PROCESS_FEATURE_FLAG_PIXEL_ASPECT_RATIO = 0x40
1023} D3D12_VIDEO_PROCESS_FEATURE_FLAGS;
1024DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_PROCESS_FEATURE_FLAGS)
1025typedef enum D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAGS {
1026 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_NONE = 0x0,
1027 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_DENOISE = 0x1,
1028 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_DERINGING = 0x2,
1029 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_EDGE_ENHANCEMENT = 0x4,
1030 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_COLOR_CORRECTION = 0x8,
1031 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_FLESH_TONE_MAPPING = 0x10,
1032 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_IMAGE_STABILIZATION = 0x20,
1033 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_SUPER_RESOLUTION = 0x40,
1034 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_ANAMORPHIC_SCALING = 0x80,
1035 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAG_CUSTOM = 0x80000000
1036} D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAGS;
1037DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAGS)
1038typedef enum D3D12_VIDEO_PROCESS_ORIENTATION {
1039 D3D12_VIDEO_PROCESS_ORIENTATION_DEFAULT = 0,
1040 D3D12_VIDEO_PROCESS_ORIENTATION_FLIP_HORIZONTAL = 1,
1041 D3D12_VIDEO_PROCESS_ORIENTATION_CLOCKWISE_90 = 2,
1042 D3D12_VIDEO_PROCESS_ORIENTATION_CLOCKWISE_90_FLIP_HORIZONTAL = 3,
1043 D3D12_VIDEO_PROCESS_ORIENTATION_CLOCKWISE_180 = 4,
1044 D3D12_VIDEO_PROCESS_ORIENTATION_FLIP_VERTICAL = 5,
1045 D3D12_VIDEO_PROCESS_ORIENTATION_CLOCKWISE_270 = 6,
1046 D3D12_VIDEO_PROCESS_ORIENTATION_CLOCKWISE_270_FLIP_HORIZONTAL = 7
1047} D3D12_VIDEO_PROCESS_ORIENTATION;
1048typedef enum D3D12_VIDEO_PROCESS_INPUT_STREAM_FLAGS {
1049 D3D12_VIDEO_PROCESS_INPUT_STREAM_FLAG_NONE = 0x0,
1050 D3D12_VIDEO_PROCESS_INPUT_STREAM_FLAG_FRAME_DISCONTINUITY = 0x1,
1051 D3D12_VIDEO_PROCESS_INPUT_STREAM_FLAG_FRAME_REPEAT = 0x2
1052} D3D12_VIDEO_PROCESS_INPUT_STREAM_FLAGS;
1053DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_PROCESS_INPUT_STREAM_FLAGS)
1054typedef struct D3D12_VIDEO_PROCESS_FILTER_RANGE {
1055 INT Minimum;
1056 INT Maximum;
1057 INT Default;
1058 FLOAT Multiplier;
1059} D3D12_VIDEO_PROCESS_FILTER_RANGE;
1060typedef enum D3D12_VIDEO_PROCESS_SUPPORT_FLAGS {
1061 D3D12_VIDEO_PROCESS_SUPPORT_FLAG_NONE = 0x0,
1062 D3D12_VIDEO_PROCESS_SUPPORT_FLAG_SUPPORTED = 0x1
1063} D3D12_VIDEO_PROCESS_SUPPORT_FLAGS;
1064DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_PROCESS_SUPPORT_FLAGS)
1065typedef struct D3D12_FEATURE_DATA_VIDEO_PROCESS_SUPPORT {
1066 UINT NodeIndex;
1067 D3D12_VIDEO_SAMPLE InputSample;
1068 D3D12_VIDEO_FIELD_TYPE InputFieldType;
1069 D3D12_VIDEO_FRAME_STEREO_FORMAT InputStereoFormat;
1070 DXGI_RATIONAL InputFrameRate;
1071 D3D12_VIDEO_FORMAT OutputFormat;
1072 D3D12_VIDEO_FRAME_STEREO_FORMAT OutputStereoFormat;
1073 DXGI_RATIONAL OutputFrameRate;
1074 D3D12_VIDEO_PROCESS_SUPPORT_FLAGS SupportFlags;
1075 D3D12_VIDEO_SCALE_SUPPORT ScaleSupport;
1076 D3D12_VIDEO_PROCESS_FEATURE_FLAGS FeatureSupport;
1077 D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS DeinterlaceSupport;
1078 D3D12_VIDEO_PROCESS_AUTO_PROCESSING_FLAGS AutoProcessingSupport;
1079 D3D12_VIDEO_PROCESS_FILTER_FLAGS FilterSupport;
1080 D3D12_VIDEO_PROCESS_FILTER_RANGE FilterRangeSupport[32];
1081} D3D12_FEATURE_DATA_VIDEO_PROCESS_SUPPORT;
1082typedef struct D3D12_VIDEO_PROCESS_REFERENCE_SET {
1083 UINT NumPastFrames;
1084 ID3D12Resource **ppPastFrames;
1085 UINT *pPastSubresources;
1086 UINT NumFutureFrames;
1087 ID3D12Resource **ppFutureFrames;
1088 UINT *pFutureSubresources;
1089} D3D12_VIDEO_PROCESS_REFERENCE_SET;
1090typedef struct D3D12_VIDEO_PROCESS_TRANSFORM {
1091 D3D12_RECT SourceRectangle;
1092 D3D12_RECT DestinationRectangle;
1093 D3D12_VIDEO_PROCESS_ORIENTATION Orientation;
1094} D3D12_VIDEO_PROCESS_TRANSFORM;
1095typedef struct D3D12_VIDEO_PROCESS_INPUT_STREAM_RATE {
1096 UINT OutputIndex;
1097 UINT InputFrameOrField;
1098} D3D12_VIDEO_PROCESS_INPUT_STREAM_RATE;
1099typedef struct D3D12_VIDEO_PROCESS_INPUT_STREAM {
1100 ID3D12Resource *pTexture2D;
1101 UINT Subresource;
1102 D3D12_VIDEO_PROCESS_REFERENCE_SET ReferenceSet;
1103} D3D12_VIDEO_PROCESS_INPUT_STREAM;
1104typedef struct D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS {
1105 D3D12_VIDEO_PROCESS_INPUT_STREAM InputStream[2];
1106 D3D12_VIDEO_PROCESS_TRANSFORM Transform;
1107 D3D12_VIDEO_PROCESS_INPUT_STREAM_FLAGS Flags;
1108 D3D12_VIDEO_PROCESS_INPUT_STREAM_RATE RateInfo;
1109 INT FilterLevels[32];
1110 D3D12_VIDEO_PROCESS_ALPHA_BLENDING AlphaBlending;
1111} D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS;
1112typedef struct D3D12_VIDEO_PROCESS_OUTPUT_STREAM {
1113 ID3D12Resource *pTexture2D;
1114 UINT Subresource;
1115} D3D12_VIDEO_PROCESS_OUTPUT_STREAM;
1116typedef struct D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS {
1117 D3D12_VIDEO_PROCESS_OUTPUT_STREAM OutputStream[2];
1118 D3D12_RECT TargetRectangle;
1119} D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS;
799/*****************************************************************************1120/*****************************************************************************
800 * ID3D12VideoDecodeCommandList interface1121 * ID3D12VideoDecodeCommandList interface
801 */1122 */
...@@ -1117,6 +1438,329 @@ static inline void ID3D12VideoDecodeCommandList_WriteBufferImmediate(ID3D12Video...@@ -1117,6 +1438,329 @@ static inline void ID3D12VideoDecodeCommandList_WriteBufferImmediate(ID3D12Video
11171438
1118#endif /* __ID3D12VideoDecodeCommandList_INTERFACE_DEFINED__ */1439#endif /* __ID3D12VideoDecodeCommandList_INTERFACE_DEFINED__ */
11191440
1441/*****************************************************************************
1442 * ID3D12VideoProcessCommandList interface
1443 */
1444#ifndef __ID3D12VideoProcessCommandList_INTERFACE_DEFINED__
1445#define __ID3D12VideoProcessCommandList_INTERFACE_DEFINED__
1446
1447DEFINE_GUID(IID_ID3D12VideoProcessCommandList, 0xaeb2543a, 0x167f, 0x4682, 0xac,0xc8, 0xd1,0x59,0xed,0x4a,0x62,0x09);
1448#if defined(__cplusplus) && !defined(CINTERFACE)
1449MIDL_INTERFACE("aeb2543a-167f-4682-acc8-d159ed4a6209")
1450ID3D12VideoProcessCommandList : public ID3D12CommandList
1451{
1452 virtual HRESULT STDMETHODCALLTYPE Close(
1453 ) = 0;
1454
1455 virtual HRESULT STDMETHODCALLTYPE Reset(
1456 ID3D12CommandAllocator *allocator) = 0;
1457
1458 virtual void STDMETHODCALLTYPE ClearState(
1459 ) = 0;
1460
1461 virtual void STDMETHODCALLTYPE ResourceBarrier(
1462 UINT num_barriers,
1463 const D3D12_RESOURCE_BARRIER *barriers) = 0;
1464
1465 virtual void STDMETHODCALLTYPE DiscardResource(
1466 ID3D12Resource *resource,
1467 const D3D12_DISCARD_REGION *region) = 0;
1468
1469 virtual void STDMETHODCALLTYPE BeginQuery(
1470 ID3D12QueryHeap *query_heap,
1471 D3D12_QUERY_TYPE type,
1472 UINT index) = 0;
1473
1474 virtual void STDMETHODCALLTYPE EndQuery(
1475 ID3D12QueryHeap *query_heap,
1476 D3D12_QUERY_TYPE type,
1477 UINT index) = 0;
1478
1479 virtual void STDMETHODCALLTYPE ResolveQueryData(
1480 ID3D12QueryHeap *query_heap,
1481 D3D12_QUERY_TYPE type,
1482 UINT start_index,
1483 UINT num_queries,
1484 ID3D12Resource *destination_buffer,
1485 UINT64 aligned_destination_buffer_offset) = 0;
1486
1487 virtual void STDMETHODCALLTYPE SetPredication(
1488 ID3D12Resource *buffer,
1489 UINT64 aligned_buffer_offset,
1490 D3D12_PREDICATION_OP operation) = 0;
1491
1492 virtual void STDMETHODCALLTYPE SetMarker(
1493 UINT metadata,
1494 const void *data,
1495 UINT size) = 0;
1496
1497 virtual void STDMETHODCALLTYPE BeginEvent(
1498 UINT metadata,
1499 const void *data,
1500 UINT size) = 0;
1501
1502 virtual void STDMETHODCALLTYPE EndEvent(
1503 ) = 0;
1504
1505 virtual void STDMETHODCALLTYPE ProcessFrames(
1506 ID3D12VideoProcessor *video_processor,
1507 const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *output_arguments,
1508 UINT num_input_streams,
1509 const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *input_arguments) = 0;
1510
1511 virtual void STDMETHODCALLTYPE WriteBufferImmediate(
1512 UINT count,
1513 const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *params,
1514 const D3D12_WRITEBUFFERIMMEDIATE_MODE *modes) = 0;
1515
1516};
1517#ifdef __CRT_UUID_DECL
1518__CRT_UUID_DECL(ID3D12VideoProcessCommandList, 0xaeb2543a, 0x167f, 0x4682, 0xac,0xc8, 0xd1,0x59,0xed,0x4a,0x62,0x09)
1519#endif
1520#else
1521typedef struct ID3D12VideoProcessCommandListVtbl {
1522 BEGIN_INTERFACE
1523
1524 /*** IUnknown methods ***/
1525 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1526 ID3D12VideoProcessCommandList *This,
1527 REFIID riid,
1528 void **ppvObject);
1529
1530 ULONG (STDMETHODCALLTYPE *AddRef)(
1531 ID3D12VideoProcessCommandList *This);
1532
1533 ULONG (STDMETHODCALLTYPE *Release)(
1534 ID3D12VideoProcessCommandList *This);
1535
1536 /*** ID3D12Object methods ***/
1537 HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
1538 ID3D12VideoProcessCommandList *This,
1539 REFGUID guid,
1540 UINT *data_size,
1541 void *data);
1542
1543 HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
1544 ID3D12VideoProcessCommandList *This,
1545 REFGUID guid,
1546 UINT data_size,
1547 const void *data);
1548
1549 HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
1550 ID3D12VideoProcessCommandList *This,
1551 REFGUID guid,
1552 const IUnknown *data);
1553
1554 HRESULT (STDMETHODCALLTYPE *SetName)(
1555 ID3D12VideoProcessCommandList *This,
1556 const WCHAR *name);
1557
1558 /*** ID3D12DeviceChild methods ***/
1559 HRESULT (STDMETHODCALLTYPE *GetDevice)(
1560 ID3D12VideoProcessCommandList *This,
1561 REFIID riid,
1562 void **device);
1563
1564 /*** ID3D12CommandList methods ***/
1565 D3D12_COMMAND_LIST_TYPE (STDMETHODCALLTYPE *GetType)(
1566 ID3D12VideoProcessCommandList *This);
1567
1568 /*** ID3D12VideoProcessCommandList methods ***/
1569 HRESULT (STDMETHODCALLTYPE *Close)(
1570 ID3D12VideoProcessCommandList *This);
1571
1572 HRESULT (STDMETHODCALLTYPE *Reset)(
1573 ID3D12VideoProcessCommandList *This,
1574 ID3D12CommandAllocator *allocator);
1575
1576 void (STDMETHODCALLTYPE *ClearState)(
1577 ID3D12VideoProcessCommandList *This);
1578
1579 void (STDMETHODCALLTYPE *ResourceBarrier)(
1580 ID3D12VideoProcessCommandList *This,
1581 UINT num_barriers,
1582 const D3D12_RESOURCE_BARRIER *barriers);
1583
1584 void (STDMETHODCALLTYPE *DiscardResource)(
1585 ID3D12VideoProcessCommandList *This,
1586 ID3D12Resource *resource,
1587 const D3D12_DISCARD_REGION *region);
1588
1589 void (STDMETHODCALLTYPE *BeginQuery)(
1590 ID3D12VideoProcessCommandList *This,
1591 ID3D12QueryHeap *query_heap,
1592 D3D12_QUERY_TYPE type,
1593 UINT index);
1594
1595 void (STDMETHODCALLTYPE *EndQuery)(
1596 ID3D12VideoProcessCommandList *This,
1597 ID3D12QueryHeap *query_heap,
1598 D3D12_QUERY_TYPE type,
1599 UINT index);
1600
1601 void (STDMETHODCALLTYPE *ResolveQueryData)(
1602 ID3D12VideoProcessCommandList *This,
1603 ID3D12QueryHeap *query_heap,
1604 D3D12_QUERY_TYPE type,
1605 UINT start_index,
1606 UINT num_queries,
1607 ID3D12Resource *destination_buffer,
1608 UINT64 aligned_destination_buffer_offset);
1609
1610 void (STDMETHODCALLTYPE *SetPredication)(
1611 ID3D12VideoProcessCommandList *This,
1612 ID3D12Resource *buffer,
1613 UINT64 aligned_buffer_offset,
1614 D3D12_PREDICATION_OP operation);
1615
1616 void (STDMETHODCALLTYPE *SetMarker)(
1617 ID3D12VideoProcessCommandList *This,
1618 UINT metadata,
1619 const void *data,
1620 UINT size);
1621
1622 void (STDMETHODCALLTYPE *BeginEvent)(
1623 ID3D12VideoProcessCommandList *This,
1624 UINT metadata,
1625 const void *data,
1626 UINT size);
1627
1628 void (STDMETHODCALLTYPE *EndEvent)(
1629 ID3D12VideoProcessCommandList *This);
1630
1631 void (STDMETHODCALLTYPE *ProcessFrames)(
1632 ID3D12VideoProcessCommandList *This,
1633 ID3D12VideoProcessor *video_processor,
1634 const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *output_arguments,
1635 UINT num_input_streams,
1636 const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *input_arguments);
1637
1638 void (STDMETHODCALLTYPE *WriteBufferImmediate)(
1639 ID3D12VideoProcessCommandList *This,
1640 UINT count,
1641 const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *params,
1642 const D3D12_WRITEBUFFERIMMEDIATE_MODE *modes);
1643
1644 END_INTERFACE
1645} ID3D12VideoProcessCommandListVtbl;
1646
1647interface ID3D12VideoProcessCommandList {
1648 CONST_VTBL ID3D12VideoProcessCommandListVtbl* lpVtbl;
1649};
1650
1651#ifdef COBJMACROS
1652#ifndef WIDL_C_INLINE_WRAPPERS
1653/*** IUnknown methods ***/
1654#define ID3D12VideoProcessCommandList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1655#define ID3D12VideoProcessCommandList_AddRef(This) (This)->lpVtbl->AddRef(This)
1656#define ID3D12VideoProcessCommandList_Release(This) (This)->lpVtbl->Release(This)
1657/*** ID3D12Object methods ***/
1658#define ID3D12VideoProcessCommandList_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data)
1659#define ID3D12VideoProcessCommandList_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data)
1660#define ID3D12VideoProcessCommandList_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data)
1661#define ID3D12VideoProcessCommandList_SetName(This,name) (This)->lpVtbl->SetName(This,name)
1662/*** ID3D12DeviceChild methods ***/
1663#define ID3D12VideoProcessCommandList_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device)
1664/*** ID3D12CommandList methods ***/
1665#define ID3D12VideoProcessCommandList_GetType(This) (This)->lpVtbl->GetType(This)
1666/*** ID3D12VideoProcessCommandList methods ***/
1667#define ID3D12VideoProcessCommandList_Close(This) (This)->lpVtbl->Close(This)
1668#define ID3D12VideoProcessCommandList_Reset(This,allocator) (This)->lpVtbl->Reset(This,allocator)
1669#define ID3D12VideoProcessCommandList_ClearState(This) (This)->lpVtbl->ClearState(This)
1670#define ID3D12VideoProcessCommandList_ResourceBarrier(This,num_barriers,barriers) (This)->lpVtbl->ResourceBarrier(This,num_barriers,barriers)
1671#define ID3D12VideoProcessCommandList_DiscardResource(This,resource,region) (This)->lpVtbl->DiscardResource(This,resource,region)
1672#define ID3D12VideoProcessCommandList_BeginQuery(This,query_heap,type,index) (This)->lpVtbl->BeginQuery(This,query_heap,type,index)
1673#define ID3D12VideoProcessCommandList_EndQuery(This,query_heap,type,index) (This)->lpVtbl->EndQuery(This,query_heap,type,index)
1674#define ID3D12VideoProcessCommandList_ResolveQueryData(This,query_heap,type,start_index,num_queries,destination_buffer,aligned_destination_buffer_offset) (This)->lpVtbl->ResolveQueryData(This,query_heap,type,start_index,num_queries,destination_buffer,aligned_destination_buffer_offset)
1675#define ID3D12VideoProcessCommandList_SetPredication(This,buffer,aligned_buffer_offset,operation) (This)->lpVtbl->SetPredication(This,buffer,aligned_buffer_offset,operation)
1676#define ID3D12VideoProcessCommandList_SetMarker(This,metadata,data,size) (This)->lpVtbl->SetMarker(This,metadata,data,size)
1677#define ID3D12VideoProcessCommandList_BeginEvent(This,metadata,data,size) (This)->lpVtbl->BeginEvent(This,metadata,data,size)
1678#define ID3D12VideoProcessCommandList_EndEvent(This) (This)->lpVtbl->EndEvent(This)
1679#define ID3D12VideoProcessCommandList_ProcessFrames(This,video_processor,output_arguments,num_input_streams,input_arguments) (This)->lpVtbl->ProcessFrames(This,video_processor,output_arguments,num_input_streams,input_arguments)
1680#define ID3D12VideoProcessCommandList_WriteBufferImmediate(This,count,params,modes) (This)->lpVtbl->WriteBufferImmediate(This,count,params,modes)
1681#else
1682/*** IUnknown methods ***/
1683static inline HRESULT ID3D12VideoProcessCommandList_QueryInterface(ID3D12VideoProcessCommandList* This,REFIID riid,void **ppvObject) {
1684 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1685}
1686static inline ULONG ID3D12VideoProcessCommandList_AddRef(ID3D12VideoProcessCommandList* This) {
1687 return This->lpVtbl->AddRef(This);
1688}
1689static inline ULONG ID3D12VideoProcessCommandList_Release(ID3D12VideoProcessCommandList* This) {
1690 return This->lpVtbl->Release(This);
1691}
1692/*** ID3D12Object methods ***/
1693static inline HRESULT ID3D12VideoProcessCommandList_GetPrivateData(ID3D12VideoProcessCommandList* This,REFGUID guid,UINT *data_size,void *data) {
1694 return This->lpVtbl->GetPrivateData(This,guid,data_size,data);
1695}
1696static inline HRESULT ID3D12VideoProcessCommandList_SetPrivateData(ID3D12VideoProcessCommandList* This,REFGUID guid,UINT data_size,const void *data) {
1697 return This->lpVtbl->SetPrivateData(This,guid,data_size,data);
1698}
1699static inline HRESULT ID3D12VideoProcessCommandList_SetPrivateDataInterface(ID3D12VideoProcessCommandList* This,REFGUID guid,const IUnknown *data) {
1700 return This->lpVtbl->SetPrivateDataInterface(This,guid,data);
1701}
1702static inline HRESULT ID3D12VideoProcessCommandList_SetName(ID3D12VideoProcessCommandList* This,const WCHAR *name) {
1703 return This->lpVtbl->SetName(This,name);
1704}
1705/*** ID3D12DeviceChild methods ***/
1706static inline HRESULT ID3D12VideoProcessCommandList_GetDevice(ID3D12VideoProcessCommandList* This,REFIID riid,void **device) {
1707 return This->lpVtbl->GetDevice(This,riid,device);
1708}
1709/*** ID3D12CommandList methods ***/
1710static inline D3D12_COMMAND_LIST_TYPE ID3D12VideoProcessCommandList_GetType(ID3D12VideoProcessCommandList* This) {
1711 return This->lpVtbl->GetType(This);
1712}
1713/*** ID3D12VideoProcessCommandList methods ***/
1714static inline HRESULT ID3D12VideoProcessCommandList_Close(ID3D12VideoProcessCommandList* This) {
1715 return This->lpVtbl->Close(This);
1716}
1717static inline HRESULT ID3D12VideoProcessCommandList_Reset(ID3D12VideoProcessCommandList* This,ID3D12CommandAllocator *allocator) {
1718 return This->lpVtbl->Reset(This,allocator);
1719}
1720static inline void ID3D12VideoProcessCommandList_ClearState(ID3D12VideoProcessCommandList* This) {
1721 This->lpVtbl->ClearState(This);
1722}
1723static inline void ID3D12VideoProcessCommandList_ResourceBarrier(ID3D12VideoProcessCommandList* This,UINT num_barriers,const D3D12_RESOURCE_BARRIER *barriers) {
1724 This->lpVtbl->ResourceBarrier(This,num_barriers,barriers);
1725}
1726static inline void ID3D12VideoProcessCommandList_DiscardResource(ID3D12VideoProcessCommandList* This,ID3D12Resource *resource,const D3D12_DISCARD_REGION *region) {
1727 This->lpVtbl->DiscardResource(This,resource,region);
1728}
1729static inline void ID3D12VideoProcessCommandList_BeginQuery(ID3D12VideoProcessCommandList* This,ID3D12QueryHeap *query_heap,D3D12_QUERY_TYPE type,UINT index) {
1730 This->lpVtbl->BeginQuery(This,query_heap,type,index);
1731}
1732static inline void ID3D12VideoProcessCommandList_EndQuery(ID3D12VideoProcessCommandList* This,ID3D12QueryHeap *query_heap,D3D12_QUERY_TYPE type,UINT index) {
1733 This->lpVtbl->EndQuery(This,query_heap,type,index);
1734}
1735static inline void ID3D12VideoProcessCommandList_ResolveQueryData(ID3D12VideoProcessCommandList* This,ID3D12QueryHeap *query_heap,D3D12_QUERY_TYPE type,UINT start_index,UINT num_queries,ID3D12Resource *destination_buffer,UINT64 aligned_destination_buffer_offset) {
1736 This->lpVtbl->ResolveQueryData(This,query_heap,type,start_index,num_queries,destination_buffer,aligned_destination_buffer_offset);
1737}
1738static inline void ID3D12VideoProcessCommandList_SetPredication(ID3D12VideoProcessCommandList* This,ID3D12Resource *buffer,UINT64 aligned_buffer_offset,D3D12_PREDICATION_OP operation) {
1739 This->lpVtbl->SetPredication(This,buffer,aligned_buffer_offset,operation);
1740}
1741static inline void ID3D12VideoProcessCommandList_SetMarker(ID3D12VideoProcessCommandList* This,UINT metadata,const void *data,UINT size) {
1742 This->lpVtbl->SetMarker(This,metadata,data,size);
1743}
1744static inline void ID3D12VideoProcessCommandList_BeginEvent(ID3D12VideoProcessCommandList* This,UINT metadata,const void *data,UINT size) {
1745 This->lpVtbl->BeginEvent(This,metadata,data,size);
1746}
1747static inline void ID3D12VideoProcessCommandList_EndEvent(ID3D12VideoProcessCommandList* This) {
1748 This->lpVtbl->EndEvent(This);
1749}
1750static inline void ID3D12VideoProcessCommandList_ProcessFrames(ID3D12VideoProcessCommandList* This,ID3D12VideoProcessor *video_processor,const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_ARGUMENTS *output_arguments,UINT num_input_streams,const D3D12_VIDEO_PROCESS_INPUT_STREAM_ARGUMENTS *input_arguments) {
1751 This->lpVtbl->ProcessFrames(This,video_processor,output_arguments,num_input_streams,input_arguments);
1752}
1753static inline void ID3D12VideoProcessCommandList_WriteBufferImmediate(ID3D12VideoProcessCommandList* This,UINT count,const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *params,const D3D12_WRITEBUFFERIMMEDIATE_MODE *modes) {
1754 This->lpVtbl->WriteBufferImmediate(This,count,params,modes);
1755}
1756#endif
1757#endif
1758
1759#endif
1760
1761
1762#endif /* __ID3D12VideoProcessCommandList_INTERFACE_DEFINED__ */
1763
1120typedef struct D3D12_VIDEO_DECODE_OUTPUT_HISTOGRAM {1764typedef struct D3D12_VIDEO_DECODE_OUTPUT_HISTOGRAM {
1121 UINT64 Offset;1765 UINT64 Offset;
1122 ID3D12Resource *pBuffer;1766 ID3D12Resource *pBuffer;
...@@ -1416,15 +2060,33 @@ typedef enum D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE {...@@ -1416,15 +2060,33 @@ typedef enum D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE {
1416 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_8X8 = 0,2060 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_8X8 = 0,
1417 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_16X16 = 12061 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_16X16 = 1
1418} D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE;2062} D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE;
2063typedef enum D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_FLAGS {
2064 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_FLAG_NONE = 0,
2065 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_FLAG_8X8 = 1 << D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_8X8,
2066 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_FLAG_16X16 = 1 << D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_16X16
2067} D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_FLAGS;
2068DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_FLAGS)
1419typedef enum D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION {2069typedef enum D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION {
1420 D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_QUARTER_PEL = 02070 D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_QUARTER_PEL = 0
1421} D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION;2071} D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION;
2072typedef enum D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_FLAGS {
2073 D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_FLAG_NONE = 0,
2074 D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_FLAG_QUARTER_PEL = 1 << D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_QUARTER_PEL
2075} D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_FLAGS;
2076DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_FLAGS)
1422typedef struct D3D12_FEATURE_DATA_VIDEO_FEATURE_AREA_SUPPORT {2077typedef struct D3D12_FEATURE_DATA_VIDEO_FEATURE_AREA_SUPPORT {
1423 UINT NodeIndex;2078 UINT NodeIndex;
1424 WINBOOL VideoDecodeSupport;2079 WINBOOL VideoDecodeSupport;
1425 WINBOOL VideoProcessSupport;2080 WINBOOL VideoProcessSupport;
1426 WINBOOL VideoEncodeSupport;2081 WINBOOL VideoEncodeSupport;
1427} D3D12_FEATURE_DATA_VIDEO_FEATURE_AREA_SUPPORT;2082} D3D12_FEATURE_DATA_VIDEO_FEATURE_AREA_SUPPORT;
2083typedef struct D3D12_FEATURE_DATA_VIDEO_MOTION_ESTIMATOR {
2084 UINT NodeIndex;
2085 DXGI_FORMAT InputFormat;
2086 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_FLAGS BlockSizeFlags;
2087 D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_FLAGS PrecisionFlags;
2088 D3D12_VIDEO_SIZE_RANGE SizeRange;
2089} D3D12_FEATURE_DATA_VIDEO_MOTION_ESTIMATOR;
1428typedef struct D3D12_VIDEO_MOTION_ESTIMATOR_DESC {2090typedef struct D3D12_VIDEO_MOTION_ESTIMATOR_DESC {
1429 UINT NodeMask;2091 UINT NodeMask;
1430 DXGI_FORMAT InputFormat;2092 DXGI_FORMAT InputFormat;
...@@ -2983,6 +3645,362 @@ DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_PROFILE1, 0x6936ff0f, 0x45b1, 0x4163,...@@ -2983,6 +3645,362 @@ DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_PROFILE1, 0x6936ff0f, 0x45b1, 0x4163,
2983DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_PROFILE2, 0x0c5f2aa1, 0xe541, 0x4089, 0xbb, 0x7b, 0x98, 0x11, 0x0a, 0x19, 0xd7, 0xc8);3645DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_PROFILE2, 0x0c5f2aa1, 0xe541, 0x4089, 0xbb, 0x7b, 0x98, 0x11, 0x0a, 0x19, 0xd7, 0xc8);
2984DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_12BIT_PROFILE2, 0x17127009, 0xa00f, 0x4ce1, 0x99, 0x4e, 0xbf, 0x40, 0x81, 0xf6, 0xf3, 0xf0);3646DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_12BIT_PROFILE2, 0x17127009, 0xa00f, 0x4ce1, 0x99, 0x4e, 0xbf, 0x40, 0x81, 0xf6, 0xf3, 0xf0);
2985DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_12BIT_PROFILE2_420, 0x2d80bed6, 0x9cac, 0x4835, 0x9e, 0x91, 0x32, 0x7b, 0xbc, 0x4f, 0x9e, 0xe8);3647DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_12BIT_PROFILE2_420, 0x2d80bed6, 0x9cac, 0x4835, 0x9e, 0x91, 0x32, 0x7b, 0xbc, 0x4f, 0x9e, 0xe8);
3648typedef enum D3D12_VIDEO_ENCODER_AV1_PROFILE {
3649 D3D12_VIDEO_ENCODER_AV1_PROFILE_MAIN = 0,
3650 D3D12_VIDEO_ENCODER_AV1_PROFILE_HIGH = 1,
3651 D3D12_VIDEO_ENCODER_AV1_PROFILE_PROFESSIONAL = 2
3652} D3D12_VIDEO_ENCODER_AV1_PROFILE;
3653typedef enum D3D12_VIDEO_ENCODER_AV1_LEVELS {
3654 D3D12_VIDEO_ENCODER_AV1_LEVELS_2_0 = 0,
3655 D3D12_VIDEO_ENCODER_AV1_LEVELS_2_1 = 1,
3656 D3D12_VIDEO_ENCODER_AV1_LEVELS_2_2 = 2,
3657 D3D12_VIDEO_ENCODER_AV1_LEVELS_2_3 = 3,
3658 D3D12_VIDEO_ENCODER_AV1_LEVELS_3_0 = 4,
3659 D3D12_VIDEO_ENCODER_AV1_LEVELS_3_1 = 5,
3660 D3D12_VIDEO_ENCODER_AV1_LEVELS_3_2 = 6,
3661 D3D12_VIDEO_ENCODER_AV1_LEVELS_3_3 = 7,
3662 D3D12_VIDEO_ENCODER_AV1_LEVELS_4_0 = 8,
3663 D3D12_VIDEO_ENCODER_AV1_LEVELS_4_1 = 9,
3664 D3D12_VIDEO_ENCODER_AV1_LEVELS_4_2 = 10,
3665 D3D12_VIDEO_ENCODER_AV1_LEVELS_4_3 = 11,
3666 D3D12_VIDEO_ENCODER_AV1_LEVELS_5_0 = 12,
3667 D3D12_VIDEO_ENCODER_AV1_LEVELS_5_1 = 13,
3668 D3D12_VIDEO_ENCODER_AV1_LEVELS_5_2 = 14,
3669 D3D12_VIDEO_ENCODER_AV1_LEVELS_5_3 = 15,
3670 D3D12_VIDEO_ENCODER_AV1_LEVELS_6_0 = 16,
3671 D3D12_VIDEO_ENCODER_AV1_LEVELS_6_1 = 17,
3672 D3D12_VIDEO_ENCODER_AV1_LEVELS_6_2 = 18,
3673 D3D12_VIDEO_ENCODER_AV1_LEVELS_6_3 = 19,
3674 D3D12_VIDEO_ENCODER_AV1_LEVELS_7_0 = 20,
3675 D3D12_VIDEO_ENCODER_AV1_LEVELS_7_1 = 21,
3676 D3D12_VIDEO_ENCODER_AV1_LEVELS_7_2 = 22,
3677 D3D12_VIDEO_ENCODER_AV1_LEVELS_7_3 = 23
3678} D3D12_VIDEO_ENCODER_AV1_LEVELS;
3679typedef enum D3D12_VIDEO_ENCODER_AV1_TIER {
3680 D3D12_VIDEO_ENCODER_AV1_TIER_MAIN = 0,
3681 D3D12_VIDEO_ENCODER_AV1_TIER_HIGH = 1
3682} D3D12_VIDEO_ENCODER_AV1_TIER;
3683typedef struct D3D12_VIDEO_ENCODER_AV1_LEVEL_TIER_CONSTRAINTS {
3684 D3D12_VIDEO_ENCODER_AV1_LEVELS Level;
3685 D3D12_VIDEO_ENCODER_AV1_TIER Tier;
3686} D3D12_VIDEO_ENCODER_AV1_LEVEL_TIER_CONSTRAINTS;
3687typedef enum D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAGS {
3688 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_NONE = 0x0,
3689 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_128x128_SUPERBLOCK = 0x1,
3690 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_FILTER_INTRA = 0x2,
3691 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_INTRA_EDGE_FILTER = 0x4,
3692 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_INTERINTRA_COMPOUND = 0x8,
3693 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_MASKED_COMPOUND = 0x10,
3694 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_WARPED_MOTION = 0x20,
3695 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_DUAL_FILTER = 0x40,
3696 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_JNT_COMP = 0x80,
3697 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_FORCED_INTEGER_MOTION_VECTORS = 0x100,
3698 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_SUPER_RESOLUTION = 0x200,
3699 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_LOOP_RESTORATION_FILTER = 0x400,
3700 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_PALETTE_ENCODING = 0x800,
3701 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_CDEF_FILTERING = 0x1000,
3702 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_INTRA_BLOCK_COPY = 0x2000,
3703 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_FRAME_REFERENCE_MOTION_VECTORS = 0x4000,
3704 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_ORDER_HINT_TOOLS = 0x8000,
3705 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_AUTO_SEGMENTATION = 0x10000,
3706 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_CUSTOM_SEGMENTATION = 0x20000,
3707 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_LOOP_FILTER_DELTAS = 0x40000,
3708 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_QUANTIZATION_DELTAS = 0x80000,
3709 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_QUANTIZATION_MATRIX = 0x100000,
3710 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_REDUCED_TX_SET = 0x200000,
3711 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_MOTION_MODE_SWITCHABLE = 0x400000,
3712 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_ALLOW_HIGH_PRECISION_MV = 0x800000,
3713 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_SKIP_MODE_PRESENT = 0x1000000,
3714 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAG_DELTA_LF_PARAMS = 0x2000000
3715} D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAGS;
3716DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAGS)
3717typedef enum D3D12_VIDEO_ENCODER_AV1_TX_MODE {
3718 D3D12_VIDEO_ENCODER_AV1_TX_MODE_ONLY4x4 = 0,
3719 D3D12_VIDEO_ENCODER_AV1_TX_MODE_LARGEST = 1,
3720 D3D12_VIDEO_ENCODER_AV1_TX_MODE_SELECT = 2
3721} D3D12_VIDEO_ENCODER_AV1_TX_MODE;
3722typedef enum D3D12_VIDEO_ENCODER_AV1_TX_MODE_FLAGS {
3723 D3D12_VIDEO_ENCODER_AV1_TX_MODE_FLAG_NONE = 0x0,
3724 D3D12_VIDEO_ENCODER_AV1_TX_MODE_FLAG_ONLY4x4 = 1 << D3D12_VIDEO_ENCODER_AV1_TX_MODE_ONLY4x4,
3725 D3D12_VIDEO_ENCODER_AV1_TX_MODE_FLAG_LARGEST = 1 << D3D12_VIDEO_ENCODER_AV1_TX_MODE_LARGEST,
3726 D3D12_VIDEO_ENCODER_AV1_TX_MODE_FLAG_SELECT = 1 << D3D12_VIDEO_ENCODER_AV1_TX_MODE_SELECT
3727} D3D12_VIDEO_ENCODER_AV1_TX_MODE_FLAGS;
3728DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_TX_MODE_FLAGS)
3729typedef enum D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS {
3730 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_EIGHTTAP = 0,
3731 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_EIGHTTAP_SMOOTH = 1,
3732 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_EIGHTTAP_SHARP = 2,
3733 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_BILINEAR = 3,
3734 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_SWITCHABLE = 4
3735} D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS;
3736typedef enum D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAGS {
3737 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAG_NONE = 0x0,
3738 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAG_EIGHTTAP = 1 << D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_EIGHTTAP,
3739 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAG_EIGHTTAP_SMOOTH = 1 << D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_EIGHTTAP_SMOOTH,
3740 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAG_EIGHTTAP_SHARP = 1 << D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_EIGHTTAP_SHARP,
3741 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAG_BILINEAR = 1 << D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_BILINEAR,
3742 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAG_SWITCHABLE = 1 << D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_SWITCHABLE
3743} D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAGS;
3744DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAGS)
3745typedef enum D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE {
3746 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE_4x4 = 0,
3747 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE_8x8 = 1,
3748 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE_16x16 = 2,
3749 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE_32x32 = 3,
3750 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE_64x64 = 4
3751} D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE;
3752typedef enum D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE {
3753 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_DISABLED = 0,
3754 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_Q = 1,
3755 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_LF_Y_V = 2,
3756 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_LF_Y_H = 3,
3757 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_LF_U = 4,
3758 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_LF_V = 5,
3759 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_REF_FRAME = 6,
3760 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_SKIP = 7,
3761 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_GLOBALMV = 8
3762} D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE;
3763typedef enum D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAGS {
3764 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_NONE = 0,
3765 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_DISABLED = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_DISABLED,
3766 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_ALT_Q = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_Q,
3767 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_ALT_LF_Y_V = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_LF_Y_V,
3768 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_ALT_LF_Y_H = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_LF_Y_H,
3769 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_ALT_LF_U = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_LF_U,
3770 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_ALT_LF_V = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_LF_V,
3771 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_REF_FRAME = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_REF_FRAME,
3772 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_ALT_SKIP = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_SKIP,
3773 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAG_ALT_GLOBALMV = 1 << D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_ALT_GLOBALMV
3774} D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAGS;
3775DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAGS)
3776typedef enum D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE {
3777 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE_DISABLED = 0,
3778 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE_SWITCHABLE = 1,
3779 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE_WIENER = 2,
3780 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE_SGRPROJ = 3
3781} D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE;
3782typedef enum D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE {
3783 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE_DISABLED = 0,
3784 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE_32x32 = 1,
3785 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE_64x64 = 2,
3786 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE_128x128 = 3,
3787 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE_256x256 = 4
3788} D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE;
3789typedef enum D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAGS {
3790 D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAG_NOT_SUPPORTED = 0x0,
3791 D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAG_32x32 = 0x1,
3792 D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAG_64x64 = 0x2,
3793 D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAG_128x128 = 0x4,
3794 D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAG_256x256 = 0x8
3795} D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAGS;
3796DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAGS)
3797typedef enum D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION {
3798 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_IDENTITY = 0,
3799 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_TRANSLATION = 1,
3800 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_ROTZOOM = 2,
3801 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_AFFINE = 3
3802} D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION;
3803typedef enum D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAGS {
3804 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAG_NONE = 0,
3805 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAG_IDENTITY = 1 << D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_IDENTITY,
3806 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAG_TRANSLATION = 1 << D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_TRANSLATION,
3807 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAG_ROTZOOM = 1 << D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_ROTZOOM,
3808 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAG_AFFINE = 1 << D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_AFFINE
3809} D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAGS;
3810DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAGS)
3811typedef enum D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAGS {
3812 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_NONE = 0,
3813 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_QUANTIZATION = 0x1,
3814 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_QUANTIZATION_DELTA = 0x2,
3815 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_LOOP_FILTER = 0x4,
3816 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_LOOP_FILTER_DELTA = 0x8,
3817 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_CDEF_DATA = 0x10,
3818 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_CONTEXT_UPDATE_TILE_ID = 0x20,
3819 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_COMPOUND_PREDICTION_MODE = 0x40,
3820 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_PRIMARY_REF_FRAME = 0x80,
3821 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAG_REFERENCE_INDICES = 0x100
3822} D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAGS;
3823DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAGS)
3824typedef struct D3D12_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT {
3825 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAGS SupportedFeatureFlags;
3826 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAGS RequiredFeatureFlags;
3827 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS_FLAGS SupportedInterpolationFilters;
3828 D3D12_VIDEO_ENCODER_AV1_RESTORATION_SUPPORT_FLAGS SupportedRestorationParams[3][3];
3829 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MODE_FLAGS SupportedSegmentationModes;
3830 D3D12_VIDEO_ENCODER_AV1_TX_MODE_FLAGS SupportedTxModes[4];
3831 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_BLOCK_SIZE SegmentationBlockSize;
3832 D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES_FLAGS PostEncodeValuesFlags;
3833 UINT MaxTemporalLayers;
3834 UINT MaxSpatialLayers;
3835} D3D12_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT;
3836typedef enum D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE {
3837 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_KEY_FRAME = 0,
3838 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_INTER_FRAME = 1,
3839 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_INTRA_ONLY_FRAME = 2,
3840 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_SWITCH_FRAME = 3
3841} D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE;
3842typedef enum D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAGS {
3843 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAG_NONE = 0x0,
3844 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAG_KEY_FRAME = 1 << D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_KEY_FRAME,
3845 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAG_INTER_FRAME = 1 << D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_INTER_FRAME,
3846 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAG_INTRA_ONLY_FRAME = 1 << D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_INTRA_ONLY_FRAME,
3847 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAG_SWITCH_FRAME = 1 << D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_SWITCH_FRAME
3848} D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAGS;
3849DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAGS)
3850typedef enum D3D12_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE {
3851 D3D12_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE_SINGLE_REFERENCE = 0,
3852 D3D12_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE_COMPOUND_REFERENCE = 1
3853} D3D12_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE;
3854typedef struct D3D12_VIDEO_ENCODER_CODEC_AV1_PICTURE_CONTROL_SUPPORT {
3855 D3D12_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE PredictionMode;
3856 UINT MaxUniqueReferencesPerFrame;
3857 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE_FLAGS SupportedFrameTypes;
3858 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION_FLAGS SupportedReferenceWarpedMotionFlags;
3859} D3D12_VIDEO_ENCODER_CODEC_AV1_PICTURE_CONTROL_SUPPORT;
3860typedef struct D3D12_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION {
3861 D3D12_VIDEO_ENCODER_AV1_FEATURE_FLAGS FeatureFlags;
3862 UINT OrderHintBitsMinus1;
3863} D3D12_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION;
3864typedef struct D3D12_VIDEO_ENCODER_AV1_SEQUENCE_STRUCTURE {
3865 UINT IntraDistance;
3866 UINT InterFramePeriod;
3867} D3D12_VIDEO_ENCODER_AV1_SEQUENCE_STRUCTURE;
3868typedef struct D3D12_VIDEO_ENCODER_AV1_REFERENCE_PICTURE_WARPED_MOTION_INFO {
3869 D3D12_VIDEO_ENCODER_AV1_REFERENCE_WARPED_MOTION_TRANSFORMATION TransformationType;
3870 INT TransformationMatrix[8];
3871 WINBOOL InvalidAffineSet;
3872} D3D12_VIDEO_ENCODER_AV1_REFERENCE_PICTURE_WARPED_MOTION_INFO;
3873typedef struct D3D12_VIDEO_ENCODER_AV1_REFERENCE_PICTURE_DESCRIPTOR {
3874 UINT ReconstructedPictureResourceIndex;
3875 UINT TemporalLayerIndexPlus1;
3876 UINT SpatialLayerIndexPlus1;
3877 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE FrameType;
3878 D3D12_VIDEO_ENCODER_AV1_REFERENCE_PICTURE_WARPED_MOTION_INFO WarpedMotionInfo;
3879 UINT OrderHint;
3880 UINT PictureIndex;
3881} D3D12_VIDEO_ENCODER_AV1_REFERENCE_PICTURE_DESCRIPTOR;
3882typedef enum D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAGS {
3883 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_NONE = 0x0,
3884 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_ERROR_RESILIENT_MODE = 0x1,
3885 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_DISABLE_CDF_UPDATE = 0x2,
3886 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_PALETTE_ENCODING = 0x4,
3887 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_SKIP_MODE = 0x8,
3888 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_FRAME_REFERENCE_MOTION_VECTORS = 0x10,
3889 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_FORCE_INTEGER_MOTION_VECTORS = 0x20,
3890 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ALLOW_INTRA_BLOCK_COPY = 0x40,
3891 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_USE_SUPER_RESOLUTION = 0x80,
3892 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_DISABLE_FRAME_END_UPDATE_CDF = 0x100,
3893 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_FRAME_SEGMENTATION_AUTO = 0x200,
3894 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_FRAME_SEGMENTATION_CUSTOM = 0x400,
3895 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ENABLE_WARPED_MOTION = 0x800,
3896 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_REDUCED_TX_SET = 0x1000,
3897 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_MOTION_MODE_SWITCHABLE = 0x2000,
3898 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAG_ALLOW_HIGH_PRECISION_MV = 0x4000
3899} D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAGS;
3900DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAGS)
3901typedef struct D3D12_VIDEO_ENCODER_AV1_RESTORATION_CONFIG {
3902 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TYPE FrameRestorationType[3];
3903 D3D12_VIDEO_ENCODER_AV1_RESTORATION_TILESIZE LoopRestorationPixelSize[3];
3904} D3D12_VIDEO_ENCODER_AV1_RESTORATION_CONFIG;
3905typedef struct D3D12_VIDEO_ENCODER_AV1_SEGMENT_DATA {
3906 UINT64 EnabledFeatures;
3907 INT64 FeatureValue[8];
3908} D3D12_VIDEO_ENCODER_AV1_SEGMENT_DATA;
3909typedef struct D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_CONFIG {
3910 UINT64 UpdateMap;
3911 UINT64 TemporalUpdate;
3912 UINT64 UpdateData;
3913 UINT64 NumSegments;
3914 D3D12_VIDEO_ENCODER_AV1_SEGMENT_DATA SegmentsData[8];
3915} D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_CONFIG;
3916typedef struct D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MAP {
3917 UINT SegmentsMapByteSize;
3918 UINT8 *pSegmentsMap;
3919} D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MAP;
3920typedef struct D3D12_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_CONFIG {
3921 UINT64 LoopFilterLevel[2];
3922 UINT64 LoopFilterLevelU;
3923 UINT64 LoopFilterLevelV;
3924 UINT64 LoopFilterSharpnessLevel;
3925 UINT64 LoopFilterDeltaEnabled;
3926 UINT64 UpdateRefDelta;
3927 INT64 RefDeltas[8];
3928 UINT64 UpdateModeDelta;
3929 INT64 ModeDeltas[2];
3930} D3D12_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_CONFIG;
3931typedef struct D3D12_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_DELTA_CONFIG {
3932 UINT64 DeltaLFPresent;
3933 UINT64 DeltaLFMulti;
3934 UINT64 DeltaLFRes;
3935} D3D12_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_DELTA_CONFIG;
3936typedef struct D3D12_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_CONFIG {
3937 UINT64 BaseQIndex;
3938 INT64 YDCDeltaQ;
3939 INT64 UDCDeltaQ;
3940 INT64 UACDeltaQ;
3941 INT64 VDCDeltaQ;
3942 INT64 VACDeltaQ;
3943 UINT64 UsingQMatrix;
3944 UINT64 QMY;
3945 UINT64 QMU;
3946 UINT64 QMV;
3947} D3D12_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_CONFIG;
3948typedef struct D3D12_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_DELTA_CONFIG {
3949 UINT64 DeltaQPresent;
3950 UINT64 DeltaQRes;
3951} D3D12_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_DELTA_CONFIG;
3952typedef struct D3D12_VIDEO_ENCODER_AV1_CDEF_CONFIG {
3953 UINT64 CdefBits;
3954 UINT64 CdefDampingMinus3;
3955 UINT64 CdefYPriStrength[8];
3956 UINT64 CdefUVPriStrength[8];
3957 UINT64 CdefYSecStrength[8];
3958 UINT64 CdefUVSecStrength[8];
3959} D3D12_VIDEO_ENCODER_AV1_CDEF_CONFIG;
3960typedef struct D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA {
3961 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_FLAGS Flags;
3962 D3D12_VIDEO_ENCODER_AV1_FRAME_TYPE FrameType;
3963 D3D12_VIDEO_ENCODER_AV1_COMP_PREDICTION_TYPE CompoundPredictionType;
3964 D3D12_VIDEO_ENCODER_AV1_INTERPOLATION_FILTERS InterpolationFilter;
3965 D3D12_VIDEO_ENCODER_AV1_RESTORATION_CONFIG FrameRestorationConfig;
3966 D3D12_VIDEO_ENCODER_AV1_TX_MODE TxMode;
3967 UINT SuperResDenominator;
3968 UINT OrderHint;
3969 UINT PictureIndex;
3970 UINT TemporalLayerIndexPlus1;
3971 UINT SpatialLayerIndexPlus1;
3972 D3D12_VIDEO_ENCODER_AV1_REFERENCE_PICTURE_DESCRIPTOR ReferenceFramesReconPictureDescriptors[8];
3973 UINT ReferenceIndices[7];
3974 UINT PrimaryRefFrame;
3975 UINT RefreshFrameFlags;
3976 D3D12_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_CONFIG LoopFilter;
3977 D3D12_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_DELTA_CONFIG LoopFilterDelta;
3978 D3D12_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_CONFIG Quantization;
3979 D3D12_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_DELTA_CONFIG QuantizationDelta;
3980 D3D12_VIDEO_ENCODER_AV1_CDEF_CONFIG CDEF;
3981 UINT QPMapValuesCount;
3982 INT16 *pRateControlQPMap;
3983 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_CONFIG CustomSegmentation;
3984 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_MAP CustomSegmentsMap;
3985} D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA;
3986typedef struct D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_TILES {
3987 UINT64 RowCount;
3988 UINT64 ColCount;
3989 UINT64 RowHeights[64];
3990 UINT64 ColWidths[64];
3991 UINT64 ContextUpdateTileId;
3992} D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_TILES;
3993typedef struct D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES {
3994 UINT64 CompoundPredictionType;
3995 D3D12_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_CONFIG LoopFilter;
3996 D3D12_VIDEO_ENCODER_CODEC_AV1_LOOP_FILTER_DELTA_CONFIG LoopFilterDelta;
3997 D3D12_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_CONFIG Quantization;
3998 D3D12_VIDEO_ENCODER_CODEC_AV1_QUANTIZATION_DELTA_CONFIG QuantizationDelta;
3999 D3D12_VIDEO_ENCODER_AV1_CDEF_CONFIG CDEF;
4000 D3D12_VIDEO_ENCODER_AV1_SEGMENTATION_CONFIG SegmentationConfig;
4001 UINT64 PrimaryRefFrame;
4002 UINT64 ReferenceIndices[7];
4003} D3D12_VIDEO_ENCODER_AV1_POST_ENCODE_VALUES;
2986typedef enum D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE {4004typedef enum D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE {
2987 D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP = 0,4005 D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP = 0,
2988 D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP = 1,4006 D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP = 1,
...@@ -3050,7 +4068,8 @@ typedef struct D3D12_VIDEO_ENCODER_RATE_CONTROL {...@@ -3050,7 +4068,8 @@ typedef struct D3D12_VIDEO_ENCODER_RATE_CONTROL {
3050} D3D12_VIDEO_ENCODER_RATE_CONTROL;4068} D3D12_VIDEO_ENCODER_RATE_CONTROL;
3051typedef enum D3D12_VIDEO_ENCODER_CODEC {4069typedef enum D3D12_VIDEO_ENCODER_CODEC {
3052 D3D12_VIDEO_ENCODER_CODEC_H264 = 0,4070 D3D12_VIDEO_ENCODER_CODEC_H264 = 0,
3053 D3D12_VIDEO_ENCODER_CODEC_HEVC = 14071 D3D12_VIDEO_ENCODER_CODEC_HEVC = 1,
4072 D3D12_VIDEO_ENCODER_CODEC_AV1 = 2
3054} D3D12_VIDEO_ENCODER_CODEC;4073} D3D12_VIDEO_ENCODER_CODEC;
3055typedef enum D3D12_VIDEO_ENCODER_PROFILE_H264 {4074typedef enum D3D12_VIDEO_ENCODER_PROFILE_H264 {
3056 D3D12_VIDEO_ENCODER_PROFILE_H264_MAIN = 0,4075 D3D12_VIDEO_ENCODER_PROFILE_H264_MAIN = 0,
...@@ -3066,6 +4085,7 @@ typedef struct D3D12_VIDEO_ENCODER_PROFILE_DESC {...@@ -3066,6 +4085,7 @@ typedef struct D3D12_VIDEO_ENCODER_PROFILE_DESC {
3066 __C89_NAMELESS union {4085 __C89_NAMELESS union {
3067 D3D12_VIDEO_ENCODER_PROFILE_H264 *pH264Profile;4086 D3D12_VIDEO_ENCODER_PROFILE_H264 *pH264Profile;
3068 D3D12_VIDEO_ENCODER_PROFILE_HEVC *pHEVCProfile;4087 D3D12_VIDEO_ENCODER_PROFILE_HEVC *pHEVCProfile;
4088 D3D12_VIDEO_ENCODER_AV1_PROFILE *pAV1Profile;
3069 } __C89_NAMELESSUNIONNAME;4089 } __C89_NAMELESSUNIONNAME;
3070} D3D12_VIDEO_ENCODER_PROFILE_DESC;4090} D3D12_VIDEO_ENCODER_PROFILE_DESC;
3071typedef enum D3D12_VIDEO_ENCODER_LEVELS_H264 {4091typedef enum D3D12_VIDEO_ENCODER_LEVELS_H264 {
...@@ -3118,6 +4138,7 @@ typedef struct D3D12_VIDEO_ENCODER_LEVEL_SETTING {...@@ -3118,6 +4138,7 @@ typedef struct D3D12_VIDEO_ENCODER_LEVEL_SETTING {
3118 __C89_NAMELESS union {4138 __C89_NAMELESS union {
3119 D3D12_VIDEO_ENCODER_LEVELS_H264 *pH264LevelSetting;4139 D3D12_VIDEO_ENCODER_LEVELS_H264 *pH264LevelSetting;
3120 D3D12_VIDEO_ENCODER_LEVEL_TIER_CONSTRAINTS_HEVC *pHEVCLevelSetting;4140 D3D12_VIDEO_ENCODER_LEVEL_TIER_CONSTRAINTS_HEVC *pHEVCLevelSetting;
4141 D3D12_VIDEO_ENCODER_AV1_LEVEL_TIER_CONSTRAINTS *pAV1LevelSetting;
3121 } __C89_NAMELESSUNIONNAME;4142 } __C89_NAMELESSUNIONNAME;
3122} D3D12_VIDEO_ENCODER_LEVEL_SETTING;4143} D3D12_VIDEO_ENCODER_LEVEL_SETTING;
3123typedef struct D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC {4144typedef struct D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC {
...@@ -3134,6 +4155,14 @@ typedef enum D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE {...@@ -3134,6 +4155,14 @@ typedef enum D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE {
3134 D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE_NONE = 0,4155 D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE_NONE = 0,
3135 D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE_ROW_BASED = 14156 D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE_ROW_BASED = 1
3136} D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE;4157} D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE;
4158typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_INTRA_REFRESH_MODE {
4159 UINT NodeIndex;
4160 D3D12_VIDEO_ENCODER_CODEC Codec;
4161 D3D12_VIDEO_ENCODER_PROFILE_DESC Profile;
4162 D3D12_VIDEO_ENCODER_LEVEL_SETTING Level;
4163 D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE IntraRefreshMode;
4164 WINBOOL IsSupported;
4165} D3D12_FEATURE_DATA_VIDEO_ENCODER_INTRA_REFRESH_MODE;
3137typedef enum D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE {4166typedef enum D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE {
3138 D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_FULL_FRAME = 0,4167 D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_FULL_FRAME = 0,
3139 D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_BYTES_PER_SUBREGION = 1,4168 D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_BYTES_PER_SUBREGION = 1,
...@@ -3223,11 +4252,36 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC {...@@ -3223,11 +4252,36 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC {
3223 UCHAR max_transform_hierarchy_depth_inter;4252 UCHAR max_transform_hierarchy_depth_inter;
3224 UCHAR max_transform_hierarchy_depth_intra;4253 UCHAR max_transform_hierarchy_depth_intra;
3225} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC;4254} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC;
4255typedef enum D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAGS1 {
4256 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAG1_NONE = 0x0,
4257 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAG1_SEPARATE_COLOUR_PLANE_SUPPORT = 0x1,
4258 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAG1_SEPARATE_COLOUR_PLANE_REQUIRED = 0x2
4259} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAGS1;
4260DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAGS1)
4261typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC1 {
4262 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAGS SupportFlags;
4263 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE MinLumaCodingUnitSize;
4264 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE MaxLumaCodingUnitSize;
4265 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE MinLumaTransformUnitSize;
4266 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE MaxLumaTransformUnitSize;
4267 UCHAR max_transform_hierarchy_depth_inter;
4268 UCHAR max_transform_hierarchy_depth_intra;
4269 UINT allowed_diff_cu_chroma_qp_offset_depth_values;
4270 UINT allowed_log2_sao_offset_scale_luma_values;
4271 UINT allowed_log2_sao_offset_scale_chroma_values;
4272 UINT allowed_log2_max_transform_skip_block_size_minus2_values;
4273 UINT allowed_chroma_qp_offset_list_len_minus1_values;
4274 UINT allowed_cb_qp_offset_list_values[6];
4275 UINT allowed_cr_qp_offset_list_values[6];
4276 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC_FLAGS1 SupportFlags1;
4277} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC1;
3226typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT {4278typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT {
3227 UINT DataSize;4279 UINT DataSize;
3228 __C89_NAMELESS union {4280 __C89_NAMELESS union {
3229 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_H264 *pH264Support;4281 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_H264 *pH264Support;
3230 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC *pHEVCSupport;4282 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC *pHEVCSupport;
4283 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC1 *pHEVCSupport1;
4284 D3D12_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION_SUPPORT *pAV1Support;
3231 } __C89_NAMELESSUNIONNAME;4285 } __C89_NAMELESSUNIONNAME;
3232} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT;4286} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT;
3233typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT {4287typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT {
...@@ -3256,6 +4310,7 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT {...@@ -3256,6 +4310,7 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT {
3256 __C89_NAMELESS union {4310 __C89_NAMELESS union {
3257 D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_H264 *pH264Support;4311 D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_H264 *pH264Support;
3258 D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_HEVC *pHEVCSupport;4312 D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_HEVC *pHEVCSupport;
4313 D3D12_VIDEO_ENCODER_CODEC_AV1_PICTURE_CONTROL_SUPPORT *pAV1Support;
3259 } __C89_NAMELESSUNIONNAME;4314 } __C89_NAMELESSUNIONNAME;
3260} D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT;4315} D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT;
3261typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT {4316typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT {
...@@ -3325,6 +4380,7 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION {...@@ -3325,6 +4380,7 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION {
3325 __C89_NAMELESS union {4380 __C89_NAMELESS union {
3326 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264 *pH264Config;4381 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264 *pH264Config;
3327 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC *pHEVCConfig;4382 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC *pHEVCConfig;
4383 D3D12_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION *pAV1Config;
3328 } __C89_NAMELESSUNIONNAME;4384 } __C89_NAMELESSUNIONNAME;
3329} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION;4385} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION;
3330typedef struct D3D12_VIDEO_ENCODER_INTRA_REFRESH {4386typedef struct D3D12_VIDEO_ENCODER_INTRA_REFRESH {
...@@ -3335,7 +4391,8 @@ typedef enum D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE {...@@ -3335,7 +4391,8 @@ typedef enum D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE {
3335 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_MAXIMUM = 0,4391 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_MAXIMUM = 0,
3336 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_FULL_PIXEL = 1,4392 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_FULL_PIXEL = 1,
3337 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_HALF_PIXEL = 2,4393 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_HALF_PIXEL = 2,
3338 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_QUARTER_PIXEL = 34394 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_QUARTER_PIXEL = 3,
4395 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_EIGHTH_PIXEL = 4
3339} D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE;4396} D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE;
3340typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS {4397typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS {
3341 UINT MaxSubregionsNumber;4398 UINT MaxSubregionsNumber;
...@@ -3373,6 +4430,7 @@ typedef struct D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE {...@@ -3373,6 +4430,7 @@ typedef struct D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE {
3373 __C89_NAMELESS union {4430 __C89_NAMELESS union {
3374 D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_H264 *pH264GroupOfPictures;4431 D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_H264 *pH264GroupOfPictures;
3375 D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_HEVC *pHEVCGroupOfPictures;4432 D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_HEVC *pHEVCGroupOfPictures;
4433 D3D12_VIDEO_ENCODER_AV1_SEQUENCE_STRUCTURE *pAV1SequenceStructure;
3376 } __C89_NAMELESSUNIONNAME;4434 } __C89_NAMELESSUNIONNAME;
3377} D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE;4435} D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE;
3378typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT {4436typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT {
...@@ -4123,11 +5181,39 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC {...@@ -4123,11 +5181,39 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC {
4123 UINT QPMapValuesCount;5181 UINT QPMapValuesCount;
4124 INT8 *pRateControlQPMap;5182 INT8 *pRateControlQPMap;
4125} D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC;5183} D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC;
5184typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC1 {
5185 D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC_FLAGS Flags;
5186 D3D12_VIDEO_ENCODER_FRAME_TYPE_HEVC FrameType;
5187 UINT slice_pic_parameter_set_id;
5188 UINT PictureOrderCountNumber;
5189 UINT TemporalLayerIndex;
5190 UINT List0ReferenceFramesCount;
5191 UINT *pList0ReferenceFrames;
5192 UINT List1ReferenceFramesCount;
5193 UINT *pList1ReferenceFrames;
5194 UINT ReferenceFramesReconPictureDescriptorsCount;
5195 D3D12_VIDEO_ENCODER_REFERENCE_PICTURE_DESCRIPTOR_HEVC *pReferenceFramesReconPictureDescriptors;
5196 UINT List0RefPicModificationsCount;
5197 UINT *pList0RefPicModifications;
5198 UINT List1RefPicModificationsCount;
5199 UINT *pList1RefPicModifications;
5200 UINT QPMapValuesCount;
5201 INT8 *pRateControlQPMap;
5202 UCHAR diff_cu_chroma_qp_offset_depth;
5203 UCHAR log2_sao_offset_scale_luma;
5204 UCHAR log2_sao_offset_scale_chroma;
5205 UCHAR log2_max_transform_skip_block_size_minus2;
5206 UCHAR chroma_qp_offset_list_len_minus1;
5207 CHAR cb_qp_offset_list[6];
5208 CHAR cr_qp_offset_list[6];
5209} D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC1;
4126typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA {5210typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA {
4127 UINT DataSize;5211 UINT DataSize;
4128 __C89_NAMELESS union {5212 __C89_NAMELESS union {
4129 D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_H264 *pH264PicData;5213 D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_H264 *pH264PicData;
4130 D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC *pHEVCPicData;5214 D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC *pHEVCPicData;
5215 D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC1 *pHEVCPicData1;
5216 D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_CODEC_DATA *pAV1PicData;
4131 } __C89_NAMELESSUNIONNAME;5217 } __C89_NAMELESSUNIONNAME;
4132} D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA;5218} D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA;
4133typedef struct D3D12_VIDEO_ENCODE_REFERENCE_FRAMES {5219typedef struct D3D12_VIDEO_ENCODE_REFERENCE_FRAMES {
...@@ -4168,8 +5254,29 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA {...@@ -4168,8 +5254,29 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA {
4168 __C89_NAMELESS union {5254 __C89_NAMELESS union {
4169 const D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_SLICES *pSlicesPartition_H264;5255 const D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_SLICES *pSlicesPartition_H264;
4170 const D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_SLICES *pSlicesPartition_HEVC;5256 const D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_SLICES *pSlicesPartition_HEVC;
5257 const D3D12_VIDEO_ENCODER_AV1_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_TILES *pTilesPartition_AV1;
4171 } __C89_NAMELESSUNIONNAME;5258 } __C89_NAMELESSUNIONNAME;
4172} D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA;5259} D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA;
5260typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT1 {
5261 UINT NodeIndex;
5262 D3D12_VIDEO_ENCODER_CODEC Codec;
5263 DXGI_FORMAT InputFormat;
5264 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION CodecConfiguration;
5265 D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE CodecGopSequence;
5266 D3D12_VIDEO_ENCODER_RATE_CONTROL RateControl;
5267 D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE IntraRefresh;
5268 D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE SubregionFrameEncoding;
5269 UINT ResolutionsListCount;
5270 const D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC *pResolutionList;
5271 UINT MaxReferenceFramesInDPB;
5272 D3D12_VIDEO_ENCODER_VALIDATION_FLAGS ValidationFlags;
5273 D3D12_VIDEO_ENCODER_SUPPORT_FLAGS SupportFlags;
5274 D3D12_VIDEO_ENCODER_PROFILE_DESC SuggestedProfile;
5275 D3D12_VIDEO_ENCODER_LEVEL_SETTING SuggestedLevel;
5276 D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS *pResolutionDependentSupport;
5277 D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA SubregionFrameEncodingData;
5278 UINT MaxQualityVsSpeed;
5279} D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT1;
4173typedef struct D3D12_VIDEO_ENCODER_SEQUENCE_CONTROL_DESC {5280typedef struct D3D12_VIDEO_ENCODER_SEQUENCE_CONTROL_DESC {
4174 D3D12_VIDEO_ENCODER_SEQUENCE_CONTROL_FLAGS Flags;5281 D3D12_VIDEO_ENCODER_SEQUENCE_CONTROL_FLAGS Flags;
4175 D3D12_VIDEO_ENCODER_INTRA_REFRESH IntraRefreshConfig;5282 D3D12_VIDEO_ENCODER_INTRA_REFRESH IntraRefreshConfig;
lib/libc/include/any-windows-any/d3dcommon.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/d3dcommon.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/d3dcommon.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3dcompiler.h+1
...@@ -154,6 +154,7 @@ typedef HRESULT (WINAPI *pD3DPreprocess)(const void *data, SIZE_T size, const ch...@@ -154,6 +154,7 @@ typedef HRESULT (WINAPI *pD3DPreprocess)(const void *data, SIZE_T size, const ch
154 const D3D_SHADER_MACRO *defines, ID3DInclude *include,154 const D3D_SHADER_MACRO *defines, ID3DInclude *include,
155 ID3DBlob **shader, ID3DBlob **error_messages);155 ID3DBlob **shader, ID3DBlob **error_messages);
156156
157HRESULT WINAPI D3DCreateFunctionLinkingGraph(UINT flags, ID3D11FunctionLinkingGraph **graph);
157HRESULT WINAPI D3DCreateLinker(ID3D11Linker **linker);158HRESULT WINAPI D3DCreateLinker(ID3D11Linker **linker);
158HRESULT WINAPI D3DLoadModule(const void *data, SIZE_T size, ID3D11Module **module);159HRESULT WINAPI D3DLoadModule(const void *data, SIZE_T size, ID3D11Module **module);
159160
lib/libc/include/any-windows-any/dbgprop.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dbgprop.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dbgprop.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dcommon.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dcommon.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dcommon.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dcomp.h+62
...@@ -667,6 +667,68 @@ DECLARE_INTERFACE_IID_(IDCompositionDevice3, IDCompositionDevice2, "0987CB06-F91...@@ -667,6 +667,68 @@ DECLARE_INTERFACE_IID_(IDCompositionDevice3, IDCompositionDevice2, "0987CB06-F91
667__CRT_UUID_DECL(IDCompositionDevice3,0x0987cb06,0xf916,0x48bf,0x8d,0x35,0xce,0x76,0x41,0x78,0x1b,0xd9);667__CRT_UUID_DECL(IDCompositionDevice3,0x0987cb06,0xf916,0x48bf,0x8d,0x35,0xce,0x76,0x41,0x78,0x1b,0xd9);
668#endif668#endif
669669
670#if (NTDDI_VERSION >= NTDDI_WIN10_NI)
671
672#undef INTERFACE
673#define INTERFACE IDCompositionTexture
674DECLARE_INTERFACE_IID_(IDCompositionTexture, IUnknown, "929BB1AA-725F-433B-ABD7-273075A835F2")
675{
676 STDMETHOD(SetSourceRect)(THIS_ const D2D_RECT_U &sourceRect) PURE;
677 STDMETHOD(SetColorSpace)(THIS_ DXGI_COLOR_SPACE_TYPE colorSpace) PURE;
678 STDMETHOD(SetAlphaMode)(THIS_ DXGI_ALPHA_MODE alphaMode) PURE;
679 STDMETHOD(GetAvailableFence)(THIS_ UINT64 *fenceValue, REFIID iid, void **availableFence) PURE;
680};
681
682#ifdef __CRT_UUID_DECL
683__CRT_UUID_DECL(IDCompositionTexture, 0x929bb1aa, 0x725f, 0x433b, 0xab, 0xd7, 0x27, 0x30, 0x75, 0xa8, 0x35, 0xf2);
684#endif
685
686#undef INTERFACE
687#define INTERFACE IDCompositionDevice4
688DECLARE_INTERFACE_IID_(IDCompositionDevice4, IDCompositionDevice3, "85FC5CCA-2DA6-494C-86B6-4A775C049B8A")
689{
690 STDMETHOD(CheckCompositionTextureSupport)(THIS_ IUnknown *renderingDevice, WINBOOL *supportsCompositionTextures) PURE;
691 STDMETHOD(CreateCompositionTexture)(THIS_ IUnknown *d3dTexture, IDCompositionTexture **compositionTexture) PURE;
692};
693
694#ifdef __CRT_UUID_DECL
695__CRT_UUID_DECL(IDCompositionDevice4, 0x85fc5cca, 0x2da6, 0x494c, 0x86, 0xb6, 0x4a, 0x77, 0x5c, 0x04, 0x9b, 0x8a);
696#endif
697
698#endif /* (NTDDI_VERSION >= NTDDI_WIN10_NI) */
699
700#if (NTDDI_VERSION >= NTDDI_WIN11_GE)
701
702#undef INTERFACE
703#define INTERFACE IDCompositionDynamicTexture
704DECLARE_INTERFACE_IID_(IDCompositionDynamicTexture, IUnknown, "A1DE1D3F-6405-447F-8E95-1383A34B0277")
705{
706#if defined(_MSC_VER) && defined(__cplusplus)
707 STDMETHOD(SetTexture)(THIS_ IDCompositionTexture *pTexture) PURE;
708 STDMETHOD(SetTexture)(THIS_ IDCompositionTexture *pTexture, const D2D_RECT_L *pRects, size_t rectCount) PURE;
709#else
710 STDMETHOD(SetTexture)(THIS_ IDCompositionTexture *pTexture, const D2D_RECT_L *pRects, size_t rectCount) PURE;
711 STDMETHOD(SetTexture)(THIS_ IDCompositionTexture *pTexture) PURE;
712#endif
713};
714
715#ifdef __CRT_UUID_DECL
716__CRT_UUID_DECL(IDCompositionDynamicTexture, 0xa1de1d3f, 0x6405, 0x447f, 0x8e, 0x95, 0x13, 0x83, 0xa3, 0x4b, 0x02, 0x77);
717#endif
718
719#undef INTERFACE
720#define INTERFACE IDCompositionDevice5
721DECLARE_INTERFACE_IID_(IDCompositionDevice5, IDCompositionDevice4, "2C6BEBFE-A603-472F-AF34-D2443356E61B")
722{
723 STDMETHOD(CreateDynamicTexture)(THIS_ IDCompositionDynamicTexture **compositionDynamicTexture) PURE;
724};
725
726#ifdef __CRT_UUID_DECL
727__CRT_UUID_DECL(IDCompositionDevice5, 0x2c6bebfe, 0xa603, 0x472f, 0xaf, 0x34, 0xd2, 0x44, 0x33, 0x56, 0xe6, 0x1b);
728#endif
729
730#endif /* (NTDDI_VERSION >= NTDDI_WIN11_GE) */
731
670#endif /* WINAPI_PARTITION_DESKTOP */732#endif /* WINAPI_PARTITION_DESKTOP */
671733
672#if (_WIN32_WINNT >= 0x0A00)734#if (_WIN32_WINNT >= 0x0A00)
lib/libc/include/any-windows-any/dcompanimation.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dcompanimation.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dcompanimation.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ddk/ntddk.h+15
...@@ -1161,6 +1161,21 @@ typedef struct _FILE_DISPOSITION_INFORMATION {...@@ -1161,6 +1161,21 @@ typedef struct _FILE_DISPOSITION_INFORMATION {
1161 BOOLEAN DeleteFile;1161 BOOLEAN DeleteFile;
1162} FILE_DISPOSITION_INFORMATION, *PFILE_DISPOSITION_INFORMATION;1162} FILE_DISPOSITION_INFORMATION, *PFILE_DISPOSITION_INFORMATION;
11631163
1164#if (_WIN32_WINNT >= _WIN32_WINNT_WIN10_RS1)
1165#define FILE_DISPOSITION_DO_NOT_DELETE 0x00000000
1166#define FILE_DISPOSITION_DELETE 0x00000001
1167#define FILE_DISPOSITION_POSIX_SEMANTICS 0x00000002
1168#define FILE_DISPOSITION_FORCE_IMAGE_SECTION_CHECK 0x00000004
1169#define FILE_DISPOSITION_ON_CLOSE 0x00000008
1170#if (_WIN32_WINNT >= _WIN32_WINNT_WIN10_RS5)
1171#define FILE_DISPOSITION_IGNORE_READONLY_ATTRIBUTE 0x00000010
1172#endif
1173
1174typedef struct _FILE_DISPOSITION_INFORMATION_EX {
1175 ULONG Flags;
1176} FILE_DISPOSITION_INFORMATION_EX, *PFILE_DISPOSITION_INFORMATION_EX;
1177#endif
1178
1164typedef struct _FILE_END_OF_FILE_INFORMATION {1179typedef struct _FILE_END_OF_FILE_INFORMATION {
1165 LARGE_INTEGER EndOfFile;1180 LARGE_INTEGER EndOfFile;
1166} FILE_END_OF_FILE_INFORMATION, *PFILE_END_OF_FILE_INFORMATION;1181} FILE_END_OF_FILE_INFORMATION, *PFILE_END_OF_FILE_INFORMATION;
lib/libc/include/any-windows-any/ddk/wdm.h-45
...@@ -195,51 +195,6 @@ inline int IsEqualGUIDAligned(REFGUID guid1, REFGUID guid2)...@@ -195,51 +195,6 @@ inline int IsEqualGUIDAligned(REFGUID guid1, REFGUID guid2)
195/******************************************************************************195/******************************************************************************
196 * INTERLOCKED Functions *196 * INTERLOCKED Functions *
197 ******************************************************************************/197 ******************************************************************************/
198//
199// Intrinsics (note: taken from our winnt.h)
200// FIXME: 64-bit
201//
202#if defined(__GNUC__)
203
204static __inline__ BOOLEAN
205InterlockedBitTestAndSet(
206 IN LONG volatile *Base,
207 IN LONG Bit)
208{
209#if defined(_M_IX86)
210 LONG OldBit;
211 __asm__ __volatile__("lock "
212 "btsl %2,%1\n\t"
213 "sbbl %0,%0\n\t"
214 :"=r" (OldBit),"+m" (*Base)
215 :"Ir" (Bit)
216 : "memory");
217 return OldBit;
218#else
219 return (_InterlockedOr(Base, 1 << Bit) >> Bit) & 1;
220#endif
221}
222
223static __inline__ BOOLEAN
224InterlockedBitTestAndReset(
225 IN LONG volatile *Base,
226 IN LONG Bit)
227{
228#if defined(_M_IX86)
229 LONG OldBit;
230 __asm__ __volatile__("lock "
231 "btrl %2,%1\n\t"
232 "sbbl %0,%0\n\t"
233 :"=r" (OldBit),"+m" (*Base)
234 :"Ir" (Bit)
235 : "memory");
236 return OldBit;
237#else
238 return (_InterlockedAnd(Base, ~(1 << Bit)) >> Bit) & 1;
239#endif
240}
241
242#endif /* defined(__GNUC__) */
243198
244#define BitScanForward _BitScanForward199#define BitScanForward _BitScanForward
245#define BitScanReverse _BitScanReverse200#define BitScanReverse _BitScanReverse
lib/libc/include/any-windows-any/ddstream.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/ddstream.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/ddstream.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/devicetopology.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/devicetopology.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/devicetopology.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dimm.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dimm.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dimm.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dinputd.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dinputd.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dinputd.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/directmanipulation.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/directmanipulation.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/directmanipulation.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dirent.h+10-2
...@@ -38,7 +38,11 @@ struct dirent...@@ -38,7 +38,11 @@ struct dirent
38typedef struct38typedef struct
39{39{
40 /* disk transfer area for this dir */40 /* disk transfer area for this dir */
41 struct _finddata_t dd_dta;41#ifdef _WIN64
42 struct _finddata64i32_t dd_dta;
43#else
44 struct _finddata32_t dd_dta;
45#endif
4246
43 /* dirent struct to return from dir (NOTE: this makes this thread47 /* dirent struct to return from dir (NOTE: this makes this thread
44 * safe as long as only one thread uses a particular DIR struct at48 * safe as long as only one thread uses a particular DIR struct at
...@@ -85,7 +89,11 @@ struct _wdirent...@@ -85,7 +89,11 @@ struct _wdirent
85typedef struct89typedef struct
86{90{
87 /* disk transfer area for this dir */91 /* disk transfer area for this dir */
88 struct _wfinddata_t dd_dta;92#ifdef _WIN64
93 struct _wfinddata64i32_t dd_dta;
94#else
95 struct _wfinddata32_t dd_dta;
96#endif
8997
90 /* dirent struct to return from dir (NOTE: this makes this thread98 /* dirent struct to return from dir (NOTE: this makes this thread
91 * safe as long as only one thread uses a particular DIR struct at99 * safe as long as only one thread uses a particular DIR struct at
lib/libc/include/any-windows-any/dispex.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dispex.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dispex.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dmodshow.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dmodshow.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dmodshow.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dmusicf.h+10-3
...@@ -429,7 +429,7 @@ struct _DMUS_IO_SEQ_ITEM {...@@ -429,7 +429,7 @@ struct _DMUS_IO_SEQ_ITEM {
429 MUSIC_TIME mtTime;429 MUSIC_TIME mtTime;
430 MUSIC_TIME mtDuration;430 MUSIC_TIME mtDuration;
431 DWORD dwPChannel;431 DWORD dwPChannel;
432 short nOffset; 432 short nOffset;
433 BYTE bStatus;433 BYTE bStatus;
434 BYTE bByte1;434 BYTE bByte1;
435 BYTE bByte2;435 BYTE bByte2;
...@@ -489,7 +489,7 @@ struct _DMUS_IO_TIMESIG {...@@ -489,7 +489,7 @@ struct _DMUS_IO_TIMESIG {
489489
490struct _DMUS_IO_STYLE {490struct _DMUS_IO_STYLE {
491 DMUS_IO_TIMESIG timeSig;491 DMUS_IO_TIMESIG timeSig;
492 double dblTempo; 492 double dblTempo;
493};493};
494494
495struct _DMUS_IO_VERSION {495struct _DMUS_IO_VERSION {
...@@ -503,6 +503,7 @@ struct _DMUS_IO_PATTERN {...@@ -503,6 +503,7 @@ struct _DMUS_IO_PATTERN {
503 BYTE bGrooveTop;503 BYTE bGrooveTop;
504 WORD wEmbellishment;504 WORD wEmbellishment;
505 WORD wNbrMeasures;505 WORD wNbrMeasures;
506 /* DX8 */
506 BYTE bDestGrooveBottom;507 BYTE bDestGrooveBottom;
507 BYTE bDestGrooveTop;508 BYTE bDestGrooveTop;
508 DWORD dwFlags;509 DWORD dwFlags;
...@@ -516,6 +517,7 @@ struct _DMUS_IO_STYLEPART {...@@ -516,6 +517,7 @@ struct _DMUS_IO_STYLEPART {
516 BYTE bPlayModeFlags;517 BYTE bPlayModeFlags;
517 BYTE bInvertUpper;518 BYTE bInvertUpper;
518 BYTE bInvertLower;519 BYTE bInvertLower;
520 /* DX8 */
519 BYTE bPad[3];521 BYTE bPad[3];
520 DWORD dwFlags;522 DWORD dwFlags;
521};523};
...@@ -527,8 +529,9 @@ struct _DMUS_IO_PARTREF {...@@ -527,8 +529,9 @@ struct _DMUS_IO_PARTREF {
527 BYTE bSubChordLevel;529 BYTE bSubChordLevel;
528 BYTE bPriority;530 BYTE bPriority;
529 BYTE bRandomVariation;531 BYTE bRandomVariation;
532 /* DX8 */
530 WORD wPad;533 WORD wPad;
531 DWORD dwPChannel;534 DWORD dwPChannel; /* Replaces wLogicalPartID */
532};535};
533536
534537
...@@ -600,6 +603,7 @@ struct _DMUS_IO_CHORD {...@@ -600,6 +603,7 @@ struct _DMUS_IO_CHORD {
600 MUSIC_TIME mtTime;603 MUSIC_TIME mtTime;
601 WORD wMeasure;604 WORD wMeasure;
602 BYTE bBeat;605 BYTE bBeat;
606 /* DX8 */
603 BYTE bFlags;607 BYTE bFlags;
604};608};
605609
...@@ -619,6 +623,7 @@ struct _DMUS_IO_COMMAND {...@@ -619,6 +623,7 @@ struct _DMUS_IO_COMMAND {
619 BYTE bCommand;623 BYTE bCommand;
620 BYTE bGrooveLevel;624 BYTE bGrooveLevel;
621 BYTE bGrooveRange;625 BYTE bGrooveRange;
626 /* DX8 */
622 BYTE bRepeatMode;627 BYTE bRepeatMode;
623};628};
624629
...@@ -673,6 +678,7 @@ struct _DMUS_IO_INSTRUMENT {...@@ -673,6 +678,7 @@ struct _DMUS_IO_INSTRUMENT {
673 BYTE bVolume;678 BYTE bVolume;
674 short nTranspose;679 short nTranspose;
675 DWORD dwChannelPriority;680 DWORD dwChannelPriority;
681 /* DX8 */
676 short nPitchBendRange;682 short nPitchBendRange;
677};683};
678684
...@@ -707,6 +713,7 @@ struct _DMUS_IO_WAVE_ITEM_HEADER {...@@ -707,6 +713,7 @@ struct _DMUS_IO_WAVE_ITEM_HEADER {
707 DWORD dwLoopStart;713 DWORD dwLoopStart;
708 DWORD dwLoopEnd;714 DWORD dwLoopEnd;
709 DWORD dwFlags;715 DWORD dwFlags;
716 /* DX9 */
710 WORD wVolumeRange;717 WORD wVolumeRange;
711 WORD wPitchRange;718 WORD wPitchRange;
712};719};
lib/libc/include/any-windows-any/docobj.h+2-2
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/docobj.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/docobj.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -1713,7 +1713,7 @@ static inline HRESULT IProtectedModeMenuServices_LoadMenuID(IProtectedModeMenuSe...@@ -1713,7 +1713,7 @@ static inline HRESULT IProtectedModeMenuServices_LoadMenuID(IProtectedModeMenuSe
17131713
1714#endif1714#endif
1715#endif1715#endif
1716#if WINAPI_FAMILY_ONE_PARTITION(WINAPI_FAMILY_DESKTOP_APP, WINAPI_PARTITION_APP)1716#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) && !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
1717typedef struct tagPAGESET { } PAGESET;1717typedef struct tagPAGESET { } PAGESET;
1718#endif1718#endif
1719/* Begin additional prototypes for all interfaces */1719/* Begin additional prototypes for all interfaces */
lib/libc/include/any-windows-any/docobjectservice.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/docobjectservice.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/docobjectservice.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/documenttarget.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/documenttarget.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/documenttarget.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/downloadmgr.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/downloadmgr.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/downloadmgr.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/drmexternals.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/drmexternals.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/drmexternals.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dvdif.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dvdif.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dvdif.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dwrite.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dwrite.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dwrite.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dwrite_1.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dwrite_1.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dwrite_1.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dwrite_2.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dwrite_2.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dwrite_2.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dwrite_3.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dwrite_3.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dwrite_3.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_2.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgi1_2.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgi1_2.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_3.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgi1_3.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgi1_3.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_4.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgi1_4.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgi1_4.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_5.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgi1_5.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgi1_5.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_6.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgi1_6.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgi1_6.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgicommon.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgicommon.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgicommon.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgidebug.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgidebug.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgidebug.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgiformat.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgiformat.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgiformat.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgitype.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxgitype.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxgitype.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxva2api.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxva2api.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxva2api.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxvahd.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/dxvahd.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/dxvahd.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/emi.h created+83
...@@ -0,0 +1,83 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef _EMI_
8#define _EMI_
9
10#if (NTDDI_VERSION >= NTDDI_WINBLUE)
11
12#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
13
14DEFINE_GUID(GUID_DEVICE_ENERGY_METER, 0x45bd8344, 0x7ed6, 0x49cf, 0xa4, 0x40, 0xc2, 0x76, 0xc9, 0x33, 0xb0, 0x53);
15
16#define IOCTL_EMI_GET_VERSION CTL_CODE(FILE_DEVICE_UNKNOWN, 0, METHOD_BUFFERED, FILE_READ_ACCESS)
17#define IOCTL_EMI_GET_METADATA_SIZE CTL_CODE(FILE_DEVICE_UNKNOWN, 1, METHOD_BUFFERED, FILE_READ_ACCESS)
18#define IOCTL_EMI_GET_METADATA CTL_CODE(FILE_DEVICE_UNKNOWN, 2, METHOD_BUFFERED, FILE_READ_ACCESS)
19#define IOCTL_EMI_GET_MEASUREMENT CTL_CODE(FILE_DEVICE_UNKNOWN, 3, METHOD_BUFFERED, FILE_READ_ACCESS)
20
21#define EMI_NAME_MAX 16
22
23#define EMI_VERSION_V1 1
24#define EMI_VERSION_V2 2
25
26typedef enum {
27 EmiMeasurementUnitPicowattHours
28} EMI_MEASUREMENT_UNIT;
29
30typedef struct {
31 USHORT EmiVersion;
32} EMI_VERSION;
33
34typedef struct {
35 ULONG MetadataSize;
36} EMI_METADATA_SIZE;
37
38typedef struct {
39 ULONGLONG AbsoluteEnergy;
40 ULONGLONG AbsoluteTime;
41} EMI_CHANNEL_MEASUREMENT_DATA;
42
43typedef struct {
44 EMI_MEASUREMENT_UNIT MeasurementUnit;
45 WCHAR HardwareOEM[EMI_NAME_MAX];
46 WCHAR HardwareModel[EMI_NAME_MAX];
47 USHORT HardwareRevision;
48 USHORT MeteredHardwareNameSize;
49 WCHAR MeteredHardwareName[ANYSIZE_ARRAY];
50} EMI_METADATA_V1;
51
52typedef EMI_CHANNEL_MEASUREMENT_DATA EMI_MEASUREMENT_DATA_V1;
53
54typedef EMI_METADATA_V1 EMI_METADATA;
55typedef EMI_MEASUREMENT_DATA_V1 EMI_MEASUREMENT_DATA;
56
57typedef struct {
58 EMI_MEASUREMENT_UNIT MeasurementUnit;
59 USHORT ChannelNameSize;
60 WCHAR ChannelName[ANYSIZE_ARRAY];
61} EMI_CHANNEL_V2;
62
63typedef struct {
64 WCHAR HardwareOEM[EMI_NAME_MAX];
65 WCHAR HardwareModel[EMI_NAME_MAX];
66 USHORT HardwareRevision;
67 USHORT ChannelCount;
68 EMI_CHANNEL_V2 Channels[ANYSIZE_ARRAY];
69} EMI_METADATA_V2;
70
71typedef struct {
72 EMI_CHANNEL_MEASUREMENT_DATA ChannelData[ANYSIZE_ARRAY];
73} EMI_MEASUREMENT_DATA_V2;
74
75#define EMI_CHANNEL_V2_LENGTH(_ChannelNameSize) (FIELD_OFFSET(EMI_CHANNEL_V2, ChannelName) + (_ChannelNameSize))
76
77#define EMI_CHANNEL_V2_NEXT_CHANNEL(_Channel) ((EMI_CHANNEL_V2 *)((PUCHAR)(_Channel) + EMI_CHANNEL_V2_LENGTH((_Channel)->ChannelNameSize)))
78
79#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
80
81#endif /* (NTDDI_VERSION >= NTDDI_WINBLUE) */
82
83#endif /* _EMI_ */
lib/libc/include/any-windows-any/endpointvolume.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/endpointvolume.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/endpointvolume.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/errno.h+2-2
...@@ -17,8 +17,8 @@ extern "C" {...@@ -17,8 +17,8 @@ extern "C" {
17_CRTIMP extern int *__cdecl _errno(void);17_CRTIMP extern int *__cdecl _errno(void);
18#define errno (*_errno())18#define errno (*_errno())
1919
20errno_t __cdecl _set_errno(int _Value);20_CRTIMP errno_t __cdecl _set_errno(int _Value);
21errno_t __cdecl _get_errno(int *_Value);21_CRTIMP errno_t __cdecl _get_errno(int *_Value);
22#endif /* _CRT_ERRNO_DEFINED */22#endif /* _CRT_ERRNO_DEFINED */
2323
24#define EPERM 124#define EPERM 1
lib/libc/include/any-windows-any/esent.h+2
...@@ -2559,10 +2559,12 @@ JET_ERR JET_API JetOpenTableW(...@@ -2559,10 +2559,12 @@ JET_ERR JET_API JetOpenTableW(
25592559
2560#define JetOpenTable __MINGW_NAME_AW(JetOpenTable)2560#define JetOpenTable __MINGW_NAME_AW(JetOpenTable)
25612561
2562#if (JET_VERSION >= 0x0600)
2562JET_ERR JET_API JetOpenTemporaryTable(2563JET_ERR JET_API JetOpenTemporaryTable(
2563 JET_SESID sesid,2564 JET_SESID sesid,
2564 JET_OPENTEMPORARYTABLE* popentemporarytable2565 JET_OPENTEMPORARYTABLE* popentemporarytable
2565);2566);
2567#endif /*(JET_VERSION >= 0x0600)*/
25662568
2567JET_ERR JET_API JetOpenTempTable(2569JET_ERR JET_API JetOpenTempTable(
2568 JET_SESID sesid,2570 JET_SESID sesid,
lib/libc/include/any-windows-any/evr.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/evr.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/evr.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/evr9.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/evr9.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/evr9.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/excpt.h+6-8
...@@ -16,14 +16,12 @@ extern "C" {...@@ -16,14 +16,12 @@ extern "C" {
1616
17 struct _EXCEPTION_POINTERS;17 struct _EXCEPTION_POINTERS;
1818
19#ifndef EXCEPTION_DISPOSITION19typedef enum _EXCEPTION_DISPOSITION {
20#define EXCEPTION_DISPOSITION int20 ExceptionContinueExecution = 0,
21#endif21 ExceptionContinueSearch = 1,
22#define ExceptionContinueExecution 022 ExceptionNestedException = 2,
23#define ExceptionContinueSearch 123 ExceptionCollidedUnwind = 3
24#define ExceptionNestedException 224} EXCEPTION_DISPOSITION;
25#define ExceptionCollidedUnwind 3
26#define ExceptionExecuteHandler 4
2725
28#if (defined(_X86_) && !defined(__x86_64))26#if (defined(_X86_) && !defined(__x86_64))
29 struct _EXCEPTION_RECORD;27 struct _EXCEPTION_RECORD;
lib/libc/include/any-windows-any/exdisp.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/exdisp.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/exdisp.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fenv.h+16-10
...@@ -81,23 +81,29 @@ extern const fenv_t __mingw_fe_pc53_env;...@@ -81,23 +81,29 @@ extern const fenv_t __mingw_fe_pc53_env;
81/*TODO: Some of these could be inlined */81/*TODO: Some of these could be inlined */
82/* 7.6.2 Exception */82/* 7.6.2 Exception */
8383
84extern int __cdecl feclearexcept (int);84extern int __cdecl feclearexcept (int _Flags);
85extern int __cdecl fegetexceptflag (fexcept_t * flagp, int excepts);85extern int __cdecl fegetexceptflag (fexcept_t * _Flagp, int _Excepts);
86extern int __cdecl feraiseexcept (int excepts );86extern int __cdecl feraiseexcept (int _Excepts);
87extern int __cdecl fesetexceptflag (const fexcept_t *, int);87extern int __cdecl fesetexceptflag (const fexcept_t * _Flagp, int _Excepts);
88extern int __cdecl fetestexcept (int excepts);88extern int __cdecl fetestexcept (int _Excepts);
8989
90/* 7.6.3 Rounding */90/* 7.6.3 Rounding */
9191
92extern int __cdecl fegetround (void);92extern int __cdecl fegetround (void);
93extern int __cdecl fesetround (int mode);93extern int __cdecl fesetround (int _Mode);
9494
95/* 7.6.4 Environment */95/* 7.6.4 Environment */
9696
97extern int __cdecl fegetenv(fenv_t * envp);97extern int __cdecl fegetenv(fenv_t * _Envp);
98extern int __cdecl fesetenv(const fenv_t * );98extern int __cdecl fesetenv(const fenv_t * _Envp);
99extern int __cdecl feupdateenv(const fenv_t *);99extern int __cdecl feupdateenv(const fenv_t * _Envp);
100extern int __cdecl feholdexcept(fenv_t *);100extern int __cdecl feholdexcept(fenv_t * _Envp);
101
102#ifdef _GNU_SOURCE
103extern int __cdecl feenableexcept(int _Excepts);
104extern int __cdecl fedisableexcept(int _Excepts);
105extern int __cdecl fegetexcept(void);
106#endif
101107
102#ifdef __cplusplus108#ifdef __cplusplus
103}109}
lib/libc/include/any-windows-any/filter.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/filter.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/filter.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/float.h+2
...@@ -243,6 +243,8 @@...@@ -243,6 +243,8 @@
243#define _FPE_STACKOVERFLOW 0x8a243#define _FPE_STACKOVERFLOW 0x8a
244#define _FPE_STACKUNDERFLOW 0x8b244#define _FPE_STACKUNDERFLOW 0x8b
245#define _FPE_EXPLICITGEN 0x8c /* raise( SIGFPE ); */245#define _FPE_EXPLICITGEN 0x8c /* raise( SIGFPE ); */
246#define _FPE_MULTIPLE_TRAPS 0x8d
247#define _FPE_MULTIPLE_FAULTS 0x8e
246248
247#ifndef __STRICT_ANSI__249#ifndef __STRICT_ANSI__
248#define CW_DEFAULT _CW_DEFAULT250#define CW_DEFAULT _CW_DEFAULT
lib/libc/include/any-windows-any/fsrm.h+435-435
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/fsrm.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/fsrm.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -306,6 +306,421 @@ interface IFsrmExportImport;...@@ -306,6 +306,421 @@ interface IFsrmExportImport;
306306
307#define FSRM_DISPID_ADR (FSRM_DISPID_FEATURE_GENERAL | 0x800000)307#define FSRM_DISPID_ADR (FSRM_DISPID_FEATURE_GENERAL | 0x800000)
308308
309/*****************************************************************************
310 * IFsrmCollection interface
311 */
312#ifndef __IFsrmCollection_INTERFACE_DEFINED__
313#define __IFsrmCollection_INTERFACE_DEFINED__
314
315DEFINE_GUID(IID_IFsrmCollection, 0xf76fbf3b, 0x8ddd, 0x4b42, 0xb0,0x5a, 0xcb,0x1c,0x3f,0xf1,0xfe,0xe8);
316#if defined(__cplusplus) && !defined(CINTERFACE)
317MIDL_INTERFACE("f76fbf3b-8ddd-4b42-b05a-cb1c3ff1fee8")
318IFsrmCollection : public IDispatch
319{
320 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
321 IUnknown **unknown) = 0;
322
323 virtual HRESULT STDMETHODCALLTYPE get_Item(
324 LONG index,
325 VARIANT *item) = 0;
326
327 virtual HRESULT STDMETHODCALLTYPE get_Count(
328 LONG *count) = 0;
329
330 virtual HRESULT STDMETHODCALLTYPE get_State(
331 FsrmCollectionState *state) = 0;
332
333 virtual HRESULT STDMETHODCALLTYPE Cancel(
334 ) = 0;
335
336 virtual HRESULT STDMETHODCALLTYPE WaitForCompletion(
337 LONG waitSeconds,
338 VARIANT_BOOL *completed) = 0;
339
340 virtual HRESULT STDMETHODCALLTYPE GetById(
341 FSRM_OBJECT_ID id,
342 VARIANT *entry) = 0;
343
344};
345#ifdef __CRT_UUID_DECL
346__CRT_UUID_DECL(IFsrmCollection, 0xf76fbf3b, 0x8ddd, 0x4b42, 0xb0,0x5a, 0xcb,0x1c,0x3f,0xf1,0xfe,0xe8)
347#endif
348#else
349typedef struct IFsrmCollectionVtbl {
350 BEGIN_INTERFACE
351
352 /*** IUnknown methods ***/
353 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
354 IFsrmCollection *This,
355 REFIID riid,
356 void **ppvObject);
357
358 ULONG (STDMETHODCALLTYPE *AddRef)(
359 IFsrmCollection *This);
360
361 ULONG (STDMETHODCALLTYPE *Release)(
362 IFsrmCollection *This);
363
364 /*** IDispatch methods ***/
365 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
366 IFsrmCollection *This,
367 UINT *pctinfo);
368
369 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
370 IFsrmCollection *This,
371 UINT iTInfo,
372 LCID lcid,
373 ITypeInfo **ppTInfo);
374
375 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
376 IFsrmCollection *This,
377 REFIID riid,
378 LPOLESTR *rgszNames,
379 UINT cNames,
380 LCID lcid,
381 DISPID *rgDispId);
382
383 HRESULT (STDMETHODCALLTYPE *Invoke)(
384 IFsrmCollection *This,
385 DISPID dispIdMember,
386 REFIID riid,
387 LCID lcid,
388 WORD wFlags,
389 DISPPARAMS *pDispParams,
390 VARIANT *pVarResult,
391 EXCEPINFO *pExcepInfo,
392 UINT *puArgErr);
393
394 /*** IFsrmCollection methods ***/
395 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
396 IFsrmCollection *This,
397 IUnknown **unknown);
398
399 HRESULT (STDMETHODCALLTYPE *get_Item)(
400 IFsrmCollection *This,
401 LONG index,
402 VARIANT *item);
403
404 HRESULT (STDMETHODCALLTYPE *get_Count)(
405 IFsrmCollection *This,
406 LONG *count);
407
408 HRESULT (STDMETHODCALLTYPE *get_State)(
409 IFsrmCollection *This,
410 FsrmCollectionState *state);
411
412 HRESULT (STDMETHODCALLTYPE *Cancel)(
413 IFsrmCollection *This);
414
415 HRESULT (STDMETHODCALLTYPE *WaitForCompletion)(
416 IFsrmCollection *This,
417 LONG waitSeconds,
418 VARIANT_BOOL *completed);
419
420 HRESULT (STDMETHODCALLTYPE *GetById)(
421 IFsrmCollection *This,
422 FSRM_OBJECT_ID id,
423 VARIANT *entry);
424
425 END_INTERFACE
426} IFsrmCollectionVtbl;
427
428interface IFsrmCollection {
429 CONST_VTBL IFsrmCollectionVtbl* lpVtbl;
430};
431
432#ifdef COBJMACROS
433#ifndef WIDL_C_INLINE_WRAPPERS
434/*** IUnknown methods ***/
435#define IFsrmCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
436#define IFsrmCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
437#define IFsrmCollection_Release(This) (This)->lpVtbl->Release(This)
438/*** IDispatch methods ***/
439#define IFsrmCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
440#define IFsrmCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
441#define IFsrmCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
442#define IFsrmCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
443/*** IFsrmCollection methods ***/
444#define IFsrmCollection_get__NewEnum(This,unknown) (This)->lpVtbl->get__NewEnum(This,unknown)
445#define IFsrmCollection_get_Item(This,index,item) (This)->lpVtbl->get_Item(This,index,item)
446#define IFsrmCollection_get_Count(This,count) (This)->lpVtbl->get_Count(This,count)
447#define IFsrmCollection_get_State(This,state) (This)->lpVtbl->get_State(This,state)
448#define IFsrmCollection_Cancel(This) (This)->lpVtbl->Cancel(This)
449#define IFsrmCollection_WaitForCompletion(This,waitSeconds,completed) (This)->lpVtbl->WaitForCompletion(This,waitSeconds,completed)
450#define IFsrmCollection_GetById(This,id,entry) (This)->lpVtbl->GetById(This,id,entry)
451#else
452/*** IUnknown methods ***/
453static inline HRESULT IFsrmCollection_QueryInterface(IFsrmCollection* This,REFIID riid,void **ppvObject) {
454 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
455}
456static inline ULONG IFsrmCollection_AddRef(IFsrmCollection* This) {
457 return This->lpVtbl->AddRef(This);
458}
459static inline ULONG IFsrmCollection_Release(IFsrmCollection* This) {
460 return This->lpVtbl->Release(This);
461}
462/*** IDispatch methods ***/
463static inline HRESULT IFsrmCollection_GetTypeInfoCount(IFsrmCollection* This,UINT *pctinfo) {
464 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
465}
466static inline HRESULT IFsrmCollection_GetTypeInfo(IFsrmCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
467 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
468}
469static inline HRESULT IFsrmCollection_GetIDsOfNames(IFsrmCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
470 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
471}
472static inline HRESULT IFsrmCollection_Invoke(IFsrmCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
473 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
474}
475/*** IFsrmCollection methods ***/
476static inline HRESULT IFsrmCollection_get__NewEnum(IFsrmCollection* This,IUnknown **unknown) {
477 return This->lpVtbl->get__NewEnum(This,unknown);
478}
479static inline HRESULT IFsrmCollection_get_Item(IFsrmCollection* This,LONG index,VARIANT *item) {
480 return This->lpVtbl->get_Item(This,index,item);
481}
482static inline HRESULT IFsrmCollection_get_Count(IFsrmCollection* This,LONG *count) {
483 return This->lpVtbl->get_Count(This,count);
484}
485static inline HRESULT IFsrmCollection_get_State(IFsrmCollection* This,FsrmCollectionState *state) {
486 return This->lpVtbl->get_State(This,state);
487}
488static inline HRESULT IFsrmCollection_Cancel(IFsrmCollection* This) {
489 return This->lpVtbl->Cancel(This);
490}
491static inline HRESULT IFsrmCollection_WaitForCompletion(IFsrmCollection* This,LONG waitSeconds,VARIANT_BOOL *completed) {
492 return This->lpVtbl->WaitForCompletion(This,waitSeconds,completed);
493}
494static inline HRESULT IFsrmCollection_GetById(IFsrmCollection* This,FSRM_OBJECT_ID id,VARIANT *entry) {
495 return This->lpVtbl->GetById(This,id,entry);
496}
497#endif
498#endif
499
500#endif
501
502
503#endif /* __IFsrmCollection_INTERFACE_DEFINED__ */
504
505/*****************************************************************************
506 * IFsrmMutableCollection interface
507 */
508#ifndef __IFsrmMutableCollection_INTERFACE_DEFINED__
509#define __IFsrmMutableCollection_INTERFACE_DEFINED__
510
511DEFINE_GUID(IID_IFsrmMutableCollection, 0x1bb617b8, 0x3886, 0x49dc, 0xaf,0x82, 0xa6,0xc9,0x0f,0xa3,0x5d,0xda);
512#if defined(__cplusplus) && !defined(CINTERFACE)
513MIDL_INTERFACE("1bb617b8-3886-49dc-af82-a6c90fa35dda")
514IFsrmMutableCollection : public IFsrmCollection
515{
516 virtual HRESULT STDMETHODCALLTYPE Add(
517 VARIANT item) = 0;
518
519 virtual HRESULT STDMETHODCALLTYPE Remove(
520 LONG index) = 0;
521
522 virtual HRESULT STDMETHODCALLTYPE RemoveById(
523 FSRM_OBJECT_ID id) = 0;
524
525 virtual HRESULT STDMETHODCALLTYPE Clone(
526 IFsrmMutableCollection **collection) = 0;
527
528};
529#ifdef __CRT_UUID_DECL
530__CRT_UUID_DECL(IFsrmMutableCollection, 0x1bb617b8, 0x3886, 0x49dc, 0xaf,0x82, 0xa6,0xc9,0x0f,0xa3,0x5d,0xda)
531#endif
532#else
533typedef struct IFsrmMutableCollectionVtbl {
534 BEGIN_INTERFACE
535
536 /*** IUnknown methods ***/
537 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
538 IFsrmMutableCollection *This,
539 REFIID riid,
540 void **ppvObject);
541
542 ULONG (STDMETHODCALLTYPE *AddRef)(
543 IFsrmMutableCollection *This);
544
545 ULONG (STDMETHODCALLTYPE *Release)(
546 IFsrmMutableCollection *This);
547
548 /*** IDispatch methods ***/
549 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
550 IFsrmMutableCollection *This,
551 UINT *pctinfo);
552
553 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
554 IFsrmMutableCollection *This,
555 UINT iTInfo,
556 LCID lcid,
557 ITypeInfo **ppTInfo);
558
559 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
560 IFsrmMutableCollection *This,
561 REFIID riid,
562 LPOLESTR *rgszNames,
563 UINT cNames,
564 LCID lcid,
565 DISPID *rgDispId);
566
567 HRESULT (STDMETHODCALLTYPE *Invoke)(
568 IFsrmMutableCollection *This,
569 DISPID dispIdMember,
570 REFIID riid,
571 LCID lcid,
572 WORD wFlags,
573 DISPPARAMS *pDispParams,
574 VARIANT *pVarResult,
575 EXCEPINFO *pExcepInfo,
576 UINT *puArgErr);
577
578 /*** IFsrmCollection methods ***/
579 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
580 IFsrmMutableCollection *This,
581 IUnknown **unknown);
582
583 HRESULT (STDMETHODCALLTYPE *get_Item)(
584 IFsrmMutableCollection *This,
585 LONG index,
586 VARIANT *item);
587
588 HRESULT (STDMETHODCALLTYPE *get_Count)(
589 IFsrmMutableCollection *This,
590 LONG *count);
591
592 HRESULT (STDMETHODCALLTYPE *get_State)(
593 IFsrmMutableCollection *This,
594 FsrmCollectionState *state);
595
596 HRESULT (STDMETHODCALLTYPE *Cancel)(
597 IFsrmMutableCollection *This);
598
599 HRESULT (STDMETHODCALLTYPE *WaitForCompletion)(
600 IFsrmMutableCollection *This,
601 LONG waitSeconds,
602 VARIANT_BOOL *completed);
603
604 HRESULT (STDMETHODCALLTYPE *GetById)(
605 IFsrmMutableCollection *This,
606 FSRM_OBJECT_ID id,
607 VARIANT *entry);
608
609 /*** IFsrmMutableCollection methods ***/
610 HRESULT (STDMETHODCALLTYPE *Add)(
611 IFsrmMutableCollection *This,
612 VARIANT item);
613
614 HRESULT (STDMETHODCALLTYPE *Remove)(
615 IFsrmMutableCollection *This,
616 LONG index);
617
618 HRESULT (STDMETHODCALLTYPE *RemoveById)(
619 IFsrmMutableCollection *This,
620 FSRM_OBJECT_ID id);
621
622 HRESULT (STDMETHODCALLTYPE *Clone)(
623 IFsrmMutableCollection *This,
624 IFsrmMutableCollection **collection);
625
626 END_INTERFACE
627} IFsrmMutableCollectionVtbl;
628
629interface IFsrmMutableCollection {
630 CONST_VTBL IFsrmMutableCollectionVtbl* lpVtbl;
631};
632
633#ifdef COBJMACROS
634#ifndef WIDL_C_INLINE_WRAPPERS
635/*** IUnknown methods ***/
636#define IFsrmMutableCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
637#define IFsrmMutableCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
638#define IFsrmMutableCollection_Release(This) (This)->lpVtbl->Release(This)
639/*** IDispatch methods ***/
640#define IFsrmMutableCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
641#define IFsrmMutableCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
642#define IFsrmMutableCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
643#define IFsrmMutableCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
644/*** IFsrmCollection methods ***/
645#define IFsrmMutableCollection_get__NewEnum(This,unknown) (This)->lpVtbl->get__NewEnum(This,unknown)
646#define IFsrmMutableCollection_get_Item(This,index,item) (This)->lpVtbl->get_Item(This,index,item)
647#define IFsrmMutableCollection_get_Count(This,count) (This)->lpVtbl->get_Count(This,count)
648#define IFsrmMutableCollection_get_State(This,state) (This)->lpVtbl->get_State(This,state)
649#define IFsrmMutableCollection_Cancel(This) (This)->lpVtbl->Cancel(This)
650#define IFsrmMutableCollection_WaitForCompletion(This,waitSeconds,completed) (This)->lpVtbl->WaitForCompletion(This,waitSeconds,completed)
651#define IFsrmMutableCollection_GetById(This,id,entry) (This)->lpVtbl->GetById(This,id,entry)
652/*** IFsrmMutableCollection methods ***/
653#define IFsrmMutableCollection_Add(This,item) (This)->lpVtbl->Add(This,item)
654#define IFsrmMutableCollection_Remove(This,index) (This)->lpVtbl->Remove(This,index)
655#define IFsrmMutableCollection_RemoveById(This,id) (This)->lpVtbl->RemoveById(This,id)
656#define IFsrmMutableCollection_Clone(This,collection) (This)->lpVtbl->Clone(This,collection)
657#else
658/*** IUnknown methods ***/
659static inline HRESULT IFsrmMutableCollection_QueryInterface(IFsrmMutableCollection* This,REFIID riid,void **ppvObject) {
660 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
661}
662static inline ULONG IFsrmMutableCollection_AddRef(IFsrmMutableCollection* This) {
663 return This->lpVtbl->AddRef(This);
664}
665static inline ULONG IFsrmMutableCollection_Release(IFsrmMutableCollection* This) {
666 return This->lpVtbl->Release(This);
667}
668/*** IDispatch methods ***/
669static inline HRESULT IFsrmMutableCollection_GetTypeInfoCount(IFsrmMutableCollection* This,UINT *pctinfo) {
670 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
671}
672static inline HRESULT IFsrmMutableCollection_GetTypeInfo(IFsrmMutableCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
673 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
674}
675static inline HRESULT IFsrmMutableCollection_GetIDsOfNames(IFsrmMutableCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
676 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
677}
678static inline HRESULT IFsrmMutableCollection_Invoke(IFsrmMutableCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
679 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
680}
681/*** IFsrmCollection methods ***/
682static inline HRESULT IFsrmMutableCollection_get__NewEnum(IFsrmMutableCollection* This,IUnknown **unknown) {
683 return This->lpVtbl->get__NewEnum(This,unknown);
684}
685static inline HRESULT IFsrmMutableCollection_get_Item(IFsrmMutableCollection* This,LONG index,VARIANT *item) {
686 return This->lpVtbl->get_Item(This,index,item);
687}
688static inline HRESULT IFsrmMutableCollection_get_Count(IFsrmMutableCollection* This,LONG *count) {
689 return This->lpVtbl->get_Count(This,count);
690}
691static inline HRESULT IFsrmMutableCollection_get_State(IFsrmMutableCollection* This,FsrmCollectionState *state) {
692 return This->lpVtbl->get_State(This,state);
693}
694static inline HRESULT IFsrmMutableCollection_Cancel(IFsrmMutableCollection* This) {
695 return This->lpVtbl->Cancel(This);
696}
697static inline HRESULT IFsrmMutableCollection_WaitForCompletion(IFsrmMutableCollection* This,LONG waitSeconds,VARIANT_BOOL *completed) {
698 return This->lpVtbl->WaitForCompletion(This,waitSeconds,completed);
699}
700static inline HRESULT IFsrmMutableCollection_GetById(IFsrmMutableCollection* This,FSRM_OBJECT_ID id,VARIANT *entry) {
701 return This->lpVtbl->GetById(This,id,entry);
702}
703/*** IFsrmMutableCollection methods ***/
704static inline HRESULT IFsrmMutableCollection_Add(IFsrmMutableCollection* This,VARIANT item) {
705 return This->lpVtbl->Add(This,item);
706}
707static inline HRESULT IFsrmMutableCollection_Remove(IFsrmMutableCollection* This,LONG index) {
708 return This->lpVtbl->Remove(This,index);
709}
710static inline HRESULT IFsrmMutableCollection_RemoveById(IFsrmMutableCollection* This,FSRM_OBJECT_ID id) {
711 return This->lpVtbl->RemoveById(This,id);
712}
713static inline HRESULT IFsrmMutableCollection_Clone(IFsrmMutableCollection* This,IFsrmMutableCollection **collection) {
714 return This->lpVtbl->Clone(This,collection);
715}
716#endif
717#endif
718
719#endif
720
721
722#endif /* __IFsrmMutableCollection_INTERFACE_DEFINED__ */
723
309/*****************************************************************************724/*****************************************************************************
310 * IFsrmCommittableCollection interface725 * IFsrmCommittableCollection interface
311 */726 */
...@@ -1509,228 +1924,32 @@ static inline HRESULT IFsrmActionReport_Invoke(IFsrmActionReport* This,DISPID di...@@ -1509,228 +1924,32 @@ static inline HRESULT IFsrmActionReport_Invoke(IFsrmActionReport* This,DISPID di
1509}1924}
1510/*** IFsrmAction methods ***/1925/*** IFsrmAction methods ***/
1511static inline HRESULT IFsrmActionReport_get_Id(IFsrmActionReport* This,FSRM_OBJECT_ID *id) {1926static inline HRESULT IFsrmActionReport_get_Id(IFsrmActionReport* This,FSRM_OBJECT_ID *id) {
1512 return This->lpVtbl->get_Id(This,id);1927 return This->lpVtbl->get_Id(This,id);
1513}
1514static inline HRESULT IFsrmActionReport_get_ActionType(IFsrmActionReport* This,FsrmActionType *actionType) {
1515 return This->lpVtbl->get_ActionType(This,actionType);
1516}
1517static inline HRESULT IFsrmActionReport_get_RunLimitInterval(IFsrmActionReport* This,LONG *minutes) {
1518 return This->lpVtbl->get_RunLimitInterval(This,minutes);
1519}
1520static inline HRESULT IFsrmActionReport_put_RunLimitInterval(IFsrmActionReport* This,LONG minutes) {
1521 return This->lpVtbl->put_RunLimitInterval(This,minutes);
1522}
1523static inline HRESULT IFsrmActionReport_Delete(IFsrmActionReport* This) {
1524 return This->lpVtbl->Delete(This);
1525}
1526/*** IFsrmActionReport methods ***/
1527static inline HRESULT IFsrmActionReport_get_ReportTypes(IFsrmActionReport* This,SAFEARRAY **reportTypes) {
1528 return This->lpVtbl->get_ReportTypes(This,reportTypes);
1529}
1530static inline HRESULT IFsrmActionReport_put_ReportTypes(IFsrmActionReport* This,SAFEARRAY *reportTypes) {
1531 return This->lpVtbl->put_ReportTypes(This,reportTypes);
1532}
1533static inline HRESULT IFsrmActionReport_get_MailTo(IFsrmActionReport* This,BSTR *mailTo) {
1534 return This->lpVtbl->get_MailTo(This,mailTo);
1535}
1536static inline HRESULT IFsrmActionReport_put_MailTo(IFsrmActionReport* This,BSTR mailTo) {
1537 return This->lpVtbl->put_MailTo(This,mailTo);
1538}
1539#endif
1540#endif
1541
1542#endif
1543
1544
1545#endif /* __IFsrmActionReport_INTERFACE_DEFINED__ */
1546
1547/*****************************************************************************
1548 * IFsrmCollection interface
1549 */
1550#ifndef __IFsrmCollection_INTERFACE_DEFINED__
1551#define __IFsrmCollection_INTERFACE_DEFINED__
1552
1553DEFINE_GUID(IID_IFsrmCollection, 0xf76fbf3b, 0x8ddd, 0x4b42, 0xb0,0x5a, 0xcb,0x1c,0x3f,0xf1,0xfe,0xe8);
1554#if defined(__cplusplus) && !defined(CINTERFACE)
1555MIDL_INTERFACE("f76fbf3b-8ddd-4b42-b05a-cb1c3ff1fee8")
1556IFsrmCollection : public IDispatch
1557{
1558 virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
1559 IUnknown **unknown) = 0;
1560
1561 virtual HRESULT STDMETHODCALLTYPE get_Item(
1562 LONG index,
1563 VARIANT *item) = 0;
1564
1565 virtual HRESULT STDMETHODCALLTYPE get_Count(
1566 LONG *count) = 0;
1567
1568 virtual HRESULT STDMETHODCALLTYPE get_State(
1569 FsrmCollectionState *state) = 0;
1570
1571 virtual HRESULT STDMETHODCALLTYPE Cancel(
1572 ) = 0;
1573
1574 virtual HRESULT STDMETHODCALLTYPE WaitForCompletion(
1575 LONG waitSeconds,
1576 VARIANT_BOOL *completed) = 0;
1577
1578 virtual HRESULT STDMETHODCALLTYPE GetById(
1579 FSRM_OBJECT_ID id,
1580 VARIANT *entry) = 0;
1581
1582};
1583#ifdef __CRT_UUID_DECL
1584__CRT_UUID_DECL(IFsrmCollection, 0xf76fbf3b, 0x8ddd, 0x4b42, 0xb0,0x5a, 0xcb,0x1c,0x3f,0xf1,0xfe,0xe8)
1585#endif
1586#else
1587typedef struct IFsrmCollectionVtbl {
1588 BEGIN_INTERFACE
1589
1590 /*** IUnknown methods ***/
1591 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1592 IFsrmCollection *This,
1593 REFIID riid,
1594 void **ppvObject);
1595
1596 ULONG (STDMETHODCALLTYPE *AddRef)(
1597 IFsrmCollection *This);
1598
1599 ULONG (STDMETHODCALLTYPE *Release)(
1600 IFsrmCollection *This);
1601
1602 /*** IDispatch methods ***/
1603 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1604 IFsrmCollection *This,
1605 UINT *pctinfo);
1606
1607 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1608 IFsrmCollection *This,
1609 UINT iTInfo,
1610 LCID lcid,
1611 ITypeInfo **ppTInfo);
1612
1613 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1614 IFsrmCollection *This,
1615 REFIID riid,
1616 LPOLESTR *rgszNames,
1617 UINT cNames,
1618 LCID lcid,
1619 DISPID *rgDispId);
1620
1621 HRESULT (STDMETHODCALLTYPE *Invoke)(
1622 IFsrmCollection *This,
1623 DISPID dispIdMember,
1624 REFIID riid,
1625 LCID lcid,
1626 WORD wFlags,
1627 DISPPARAMS *pDispParams,
1628 VARIANT *pVarResult,
1629 EXCEPINFO *pExcepInfo,
1630 UINT *puArgErr);
1631
1632 /*** IFsrmCollection methods ***/
1633 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
1634 IFsrmCollection *This,
1635 IUnknown **unknown);
1636
1637 HRESULT (STDMETHODCALLTYPE *get_Item)(
1638 IFsrmCollection *This,
1639 LONG index,
1640 VARIANT *item);
1641
1642 HRESULT (STDMETHODCALLTYPE *get_Count)(
1643 IFsrmCollection *This,
1644 LONG *count);
1645
1646 HRESULT (STDMETHODCALLTYPE *get_State)(
1647 IFsrmCollection *This,
1648 FsrmCollectionState *state);
1649
1650 HRESULT (STDMETHODCALLTYPE *Cancel)(
1651 IFsrmCollection *This);
1652
1653 HRESULT (STDMETHODCALLTYPE *WaitForCompletion)(
1654 IFsrmCollection *This,
1655 LONG waitSeconds,
1656 VARIANT_BOOL *completed);
1657
1658 HRESULT (STDMETHODCALLTYPE *GetById)(
1659 IFsrmCollection *This,
1660 FSRM_OBJECT_ID id,
1661 VARIANT *entry);
1662
1663 END_INTERFACE
1664} IFsrmCollectionVtbl;
1665
1666interface IFsrmCollection {
1667 CONST_VTBL IFsrmCollectionVtbl* lpVtbl;
1668};
1669
1670#ifdef COBJMACROS
1671#ifndef WIDL_C_INLINE_WRAPPERS
1672/*** IUnknown methods ***/
1673#define IFsrmCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1674#define IFsrmCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
1675#define IFsrmCollection_Release(This) (This)->lpVtbl->Release(This)
1676/*** IDispatch methods ***/
1677#define IFsrmCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1678#define IFsrmCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1679#define IFsrmCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1680#define IFsrmCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1681/*** IFsrmCollection methods ***/
1682#define IFsrmCollection_get__NewEnum(This,unknown) (This)->lpVtbl->get__NewEnum(This,unknown)
1683#define IFsrmCollection_get_Item(This,index,item) (This)->lpVtbl->get_Item(This,index,item)
1684#define IFsrmCollection_get_Count(This,count) (This)->lpVtbl->get_Count(This,count)
1685#define IFsrmCollection_get_State(This,state) (This)->lpVtbl->get_State(This,state)
1686#define IFsrmCollection_Cancel(This) (This)->lpVtbl->Cancel(This)
1687#define IFsrmCollection_WaitForCompletion(This,waitSeconds,completed) (This)->lpVtbl->WaitForCompletion(This,waitSeconds,completed)
1688#define IFsrmCollection_GetById(This,id,entry) (This)->lpVtbl->GetById(This,id,entry)
1689#else
1690/*** IUnknown methods ***/
1691static inline HRESULT IFsrmCollection_QueryInterface(IFsrmCollection* This,REFIID riid,void **ppvObject) {
1692 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1693}
1694static inline ULONG IFsrmCollection_AddRef(IFsrmCollection* This) {
1695 return This->lpVtbl->AddRef(This);
1696}
1697static inline ULONG IFsrmCollection_Release(IFsrmCollection* This) {
1698 return This->lpVtbl->Release(This);
1699}
1700/*** IDispatch methods ***/
1701static inline HRESULT IFsrmCollection_GetTypeInfoCount(IFsrmCollection* This,UINT *pctinfo) {
1702 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1703}
1704static inline HRESULT IFsrmCollection_GetTypeInfo(IFsrmCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1705 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1706}
1707static inline HRESULT IFsrmCollection_GetIDsOfNames(IFsrmCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1708 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1709}1928}
1710static inline HRESULT IFsrmCollection_Invoke(IFsrmCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {1929static inline HRESULT IFsrmActionReport_get_ActionType(IFsrmActionReport* This,FsrmActionType *actionType) {
1711 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);1930 return This->lpVtbl->get_ActionType(This,actionType);
1712}1931}
1713/*** IFsrmCollection methods ***/1932static inline HRESULT IFsrmActionReport_get_RunLimitInterval(IFsrmActionReport* This,LONG *minutes) {
1714static inline HRESULT IFsrmCollection_get__NewEnum(IFsrmCollection* This,IUnknown **unknown) {1933 return This->lpVtbl->get_RunLimitInterval(This,minutes);
1715 return This->lpVtbl->get__NewEnum(This,unknown);
1716}1934}
1717static inline HRESULT IFsrmCollection_get_Item(IFsrmCollection* This,LONG index,VARIANT *item) {1935static inline HRESULT IFsrmActionReport_put_RunLimitInterval(IFsrmActionReport* This,LONG minutes) {
1718 return This->lpVtbl->get_Item(This,index,item);1936 return This->lpVtbl->put_RunLimitInterval(This,minutes);
1719}1937}
1720static inline HRESULT IFsrmCollection_get_Count(IFsrmCollection* This,LONG *count) {1938static inline HRESULT IFsrmActionReport_Delete(IFsrmActionReport* This) {
1721 return This->lpVtbl->get_Count(This,count);1939 return This->lpVtbl->Delete(This);
1722}1940}
1723static inline HRESULT IFsrmCollection_get_State(IFsrmCollection* This,FsrmCollectionState *state) {1941/*** IFsrmActionReport methods ***/
1724 return This->lpVtbl->get_State(This,state);1942static inline HRESULT IFsrmActionReport_get_ReportTypes(IFsrmActionReport* This,SAFEARRAY **reportTypes) {
1943 return This->lpVtbl->get_ReportTypes(This,reportTypes);
1725}1944}
1726static inline HRESULT IFsrmCollection_Cancel(IFsrmCollection* This) {1945static inline HRESULT IFsrmActionReport_put_ReportTypes(IFsrmActionReport* This,SAFEARRAY *reportTypes) {
1727 return This->lpVtbl->Cancel(This);1946 return This->lpVtbl->put_ReportTypes(This,reportTypes);
1728}1947}
1729static inline HRESULT IFsrmCollection_WaitForCompletion(IFsrmCollection* This,LONG waitSeconds,VARIANT_BOOL *completed) {1948static inline HRESULT IFsrmActionReport_get_MailTo(IFsrmActionReport* This,BSTR *mailTo) {
1730 return This->lpVtbl->WaitForCompletion(This,waitSeconds,completed);1949 return This->lpVtbl->get_MailTo(This,mailTo);
1731}1950}
1732static inline HRESULT IFsrmCollection_GetById(IFsrmCollection* This,FSRM_OBJECT_ID id,VARIANT *entry) {1951static inline HRESULT IFsrmActionReport_put_MailTo(IFsrmActionReport* This,BSTR mailTo) {
1733 return This->lpVtbl->GetById(This,id,entry);1952 return This->lpVtbl->put_MailTo(This,mailTo);
1734}1953}
1735#endif1954#endif
1736#endif1955#endif
...@@ -1738,7 +1957,7 @@ static inline HRESULT IFsrmCollection_GetById(IFsrmCollection* This,FSRM_OBJECT_...@@ -1738,7 +1957,7 @@ static inline HRESULT IFsrmCollection_GetById(IFsrmCollection* This,FSRM_OBJECT_
1738#endif1957#endif
17391958
17401959
1741#endif /* __IFsrmCollection_INTERFACE_DEFINED__ */1960#endif /* __IFsrmActionReport_INTERFACE_DEFINED__ */
17421961
1743/*****************************************************************************1962/*****************************************************************************
1744 * IFsrmDerivedObjectsResult interface1963 * IFsrmDerivedObjectsResult interface
...@@ -3244,225 +3463,6 @@ static inline HRESULT IFsrmActionEmail2_put_AttachmentFileListSize(IFsrmActionEm...@@ -3244,225 +3463,6 @@ static inline HRESULT IFsrmActionEmail2_put_AttachmentFileListSize(IFsrmActionEm
32443463
3245#endif /* __IFsrmActionEmail2_INTERFACE_DEFINED__ */3464#endif /* __IFsrmActionEmail2_INTERFACE_DEFINED__ */
32463465
3247/*****************************************************************************
3248 * IFsrmMutableCollection interface
3249 */
3250#ifndef __IFsrmMutableCollection_INTERFACE_DEFINED__
3251#define __IFsrmMutableCollection_INTERFACE_DEFINED__
3252
3253DEFINE_GUID(IID_IFsrmMutableCollection, 0x1bb617b8, 0x3886, 0x49dc, 0xaf,0x82, 0xa6,0xc9,0x0f,0xa3,0x5d,0xda);
3254#if defined(__cplusplus) && !defined(CINTERFACE)
3255MIDL_INTERFACE("1bb617b8-3886-49dc-af82-a6c90fa35dda")
3256IFsrmMutableCollection : public IFsrmCollection
3257{
3258 virtual HRESULT STDMETHODCALLTYPE Add(
3259 VARIANT item) = 0;
3260
3261 virtual HRESULT STDMETHODCALLTYPE Remove(
3262 LONG index) = 0;
3263
3264 virtual HRESULT STDMETHODCALLTYPE RemoveById(
3265 FSRM_OBJECT_ID id) = 0;
3266
3267 virtual HRESULT STDMETHODCALLTYPE Clone(
3268 IFsrmMutableCollection **collection) = 0;
3269
3270};
3271#ifdef __CRT_UUID_DECL
3272__CRT_UUID_DECL(IFsrmMutableCollection, 0x1bb617b8, 0x3886, 0x49dc, 0xaf,0x82, 0xa6,0xc9,0x0f,0xa3,0x5d,0xda)
3273#endif
3274#else
3275typedef struct IFsrmMutableCollectionVtbl {
3276 BEGIN_INTERFACE
3277
3278 /*** IUnknown methods ***/
3279 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3280 IFsrmMutableCollection *This,
3281 REFIID riid,
3282 void **ppvObject);
3283
3284 ULONG (STDMETHODCALLTYPE *AddRef)(
3285 IFsrmMutableCollection *This);
3286
3287 ULONG (STDMETHODCALLTYPE *Release)(
3288 IFsrmMutableCollection *This);
3289
3290 /*** IDispatch methods ***/
3291 HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3292 IFsrmMutableCollection *This,
3293 UINT *pctinfo);
3294
3295 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3296 IFsrmMutableCollection *This,
3297 UINT iTInfo,
3298 LCID lcid,
3299 ITypeInfo **ppTInfo);
3300
3301 HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3302 IFsrmMutableCollection *This,
3303 REFIID riid,
3304 LPOLESTR *rgszNames,
3305 UINT cNames,
3306 LCID lcid,
3307 DISPID *rgDispId);
3308
3309 HRESULT (STDMETHODCALLTYPE *Invoke)(
3310 IFsrmMutableCollection *This,
3311 DISPID dispIdMember,
3312 REFIID riid,
3313 LCID lcid,
3314 WORD wFlags,
3315 DISPPARAMS *pDispParams,
3316 VARIANT *pVarResult,
3317 EXCEPINFO *pExcepInfo,
3318 UINT *puArgErr);
3319
3320 /*** IFsrmCollection methods ***/
3321 HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
3322 IFsrmMutableCollection *This,
3323 IUnknown **unknown);
3324
3325 HRESULT (STDMETHODCALLTYPE *get_Item)(
3326 IFsrmMutableCollection *This,
3327 LONG index,
3328 VARIANT *item);
3329
3330 HRESULT (STDMETHODCALLTYPE *get_Count)(
3331 IFsrmMutableCollection *This,
3332 LONG *count);
3333
3334 HRESULT (STDMETHODCALLTYPE *get_State)(
3335 IFsrmMutableCollection *This,
3336 FsrmCollectionState *state);
3337
3338 HRESULT (STDMETHODCALLTYPE *Cancel)(
3339 IFsrmMutableCollection *This);
3340
3341 HRESULT (STDMETHODCALLTYPE *WaitForCompletion)(
3342 IFsrmMutableCollection *This,
3343 LONG waitSeconds,
3344 VARIANT_BOOL *completed);
3345
3346 HRESULT (STDMETHODCALLTYPE *GetById)(
3347 IFsrmMutableCollection *This,
3348 FSRM_OBJECT_ID id,
3349 VARIANT *entry);
3350
3351 /*** IFsrmMutableCollection methods ***/
3352 HRESULT (STDMETHODCALLTYPE *Add)(
3353 IFsrmMutableCollection *This,
3354 VARIANT item);
3355
3356 HRESULT (STDMETHODCALLTYPE *Remove)(
3357 IFsrmMutableCollection *This,
3358 LONG index);
3359
3360 HRESULT (STDMETHODCALLTYPE *RemoveById)(
3361 IFsrmMutableCollection *This,
3362 FSRM_OBJECT_ID id);
3363
3364 HRESULT (STDMETHODCALLTYPE *Clone)(
3365 IFsrmMutableCollection *This,
3366 IFsrmMutableCollection **collection);
3367
3368 END_INTERFACE
3369} IFsrmMutableCollectionVtbl;
3370
3371interface IFsrmMutableCollection {
3372 CONST_VTBL IFsrmMutableCollectionVtbl* lpVtbl;
3373};
3374
3375#ifdef COBJMACROS
3376#ifndef WIDL_C_INLINE_WRAPPERS
3377/*** IUnknown methods ***/
3378#define IFsrmMutableCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3379#define IFsrmMutableCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
3380#define IFsrmMutableCollection_Release(This) (This)->lpVtbl->Release(This)
3381/*** IDispatch methods ***/
3382#define IFsrmMutableCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3383#define IFsrmMutableCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3384#define IFsrmMutableCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3385#define IFsrmMutableCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3386/*** IFsrmCollection methods ***/
3387#define IFsrmMutableCollection_get__NewEnum(This,unknown) (This)->lpVtbl->get__NewEnum(This,unknown)
3388#define IFsrmMutableCollection_get_Item(This,index,item) (This)->lpVtbl->get_Item(This,index,item)
3389#define IFsrmMutableCollection_get_Count(This,count) (This)->lpVtbl->get_Count(This,count)
3390#define IFsrmMutableCollection_get_State(This,state) (This)->lpVtbl->get_State(This,state)
3391#define IFsrmMutableCollection_Cancel(This) (This)->lpVtbl->Cancel(This)
3392#define IFsrmMutableCollection_WaitForCompletion(This,waitSeconds,completed) (This)->lpVtbl->WaitForCompletion(This,waitSeconds,completed)
3393#define IFsrmMutableCollection_GetById(This,id,entry) (This)->lpVtbl->GetById(This,id,entry)
3394/*** IFsrmMutableCollection methods ***/
3395#define IFsrmMutableCollection_Add(This,item) (This)->lpVtbl->Add(This,item)
3396#define IFsrmMutableCollection_Remove(This,index) (This)->lpVtbl->Remove(This,index)
3397#define IFsrmMutableCollection_RemoveById(This,id) (This)->lpVtbl->RemoveById(This,id)
3398#define IFsrmMutableCollection_Clone(This,collection) (This)->lpVtbl->Clone(This,collection)
3399#else
3400/*** IUnknown methods ***/
3401static inline HRESULT IFsrmMutableCollection_QueryInterface(IFsrmMutableCollection* This,REFIID riid,void **ppvObject) {
3402 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3403}
3404static inline ULONG IFsrmMutableCollection_AddRef(IFsrmMutableCollection* This) {
3405 return This->lpVtbl->AddRef(This);
3406}
3407static inline ULONG IFsrmMutableCollection_Release(IFsrmMutableCollection* This) {
3408 return This->lpVtbl->Release(This);
3409}
3410/*** IDispatch methods ***/
3411static inline HRESULT IFsrmMutableCollection_GetTypeInfoCount(IFsrmMutableCollection* This,UINT *pctinfo) {
3412 return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3413}
3414static inline HRESULT IFsrmMutableCollection_GetTypeInfo(IFsrmMutableCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3415 return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3416}
3417static inline HRESULT IFsrmMutableCollection_GetIDsOfNames(IFsrmMutableCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3418 return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3419}
3420static inline HRESULT IFsrmMutableCollection_Invoke(IFsrmMutableCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3421 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3422}
3423/*** IFsrmCollection methods ***/
3424static inline HRESULT IFsrmMutableCollection_get__NewEnum(IFsrmMutableCollection* This,IUnknown **unknown) {
3425 return This->lpVtbl->get__NewEnum(This,unknown);
3426}
3427static inline HRESULT IFsrmMutableCollection_get_Item(IFsrmMutableCollection* This,LONG index,VARIANT *item) {
3428 return This->lpVtbl->get_Item(This,index,item);
3429}
3430static inline HRESULT IFsrmMutableCollection_get_Count(IFsrmMutableCollection* This,LONG *count) {
3431 return This->lpVtbl->get_Count(This,count);
3432}
3433static inline HRESULT IFsrmMutableCollection_get_State(IFsrmMutableCollection* This,FsrmCollectionState *state) {
3434 return This->lpVtbl->get_State(This,state);
3435}
3436static inline HRESULT IFsrmMutableCollection_Cancel(IFsrmMutableCollection* This) {
3437 return This->lpVtbl->Cancel(This);
3438}
3439static inline HRESULT IFsrmMutableCollection_WaitForCompletion(IFsrmMutableCollection* This,LONG waitSeconds,VARIANT_BOOL *completed) {
3440 return This->lpVtbl->WaitForCompletion(This,waitSeconds,completed);
3441}
3442static inline HRESULT IFsrmMutableCollection_GetById(IFsrmMutableCollection* This,FSRM_OBJECT_ID id,VARIANT *entry) {
3443 return This->lpVtbl->GetById(This,id,entry);
3444}
3445/*** IFsrmMutableCollection methods ***/
3446static inline HRESULT IFsrmMutableCollection_Add(IFsrmMutableCollection* This,VARIANT item) {
3447 return This->lpVtbl->Add(This,item);
3448}
3449static inline HRESULT IFsrmMutableCollection_Remove(IFsrmMutableCollection* This,LONG index) {
3450 return This->lpVtbl->Remove(This,index);
3451}
3452static inline HRESULT IFsrmMutableCollection_RemoveById(IFsrmMutableCollection* This,FSRM_OBJECT_ID id) {
3453 return This->lpVtbl->RemoveById(This,id);
3454}
3455static inline HRESULT IFsrmMutableCollection_Clone(IFsrmMutableCollection* This,IFsrmMutableCollection **collection) {
3456 return This->lpVtbl->Clone(This,collection);
3457}
3458#endif
3459#endif
3460
3461#endif
3462
3463
3464#endif /* __IFsrmMutableCollection_INTERFACE_DEFINED__ */
3465
3466#endif3466#endif
3467/* Begin additional prototypes for all interfaces */3467/* Begin additional prototypes for all interfaces */
34683468
lib/libc/include/any-windows-any/fsrmenums.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/fsrmenums.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/fsrmenums.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fsrmquota.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/fsrmquota.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/fsrmquota.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fsrmreports.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/fsrmreports.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/fsrmreports.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fsrmscreen.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/fsrmscreen.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/fsrmscreen.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fusion.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/fusion.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/fusion.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fwptypes.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/fwptypes.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/fwptypes.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/heapapi.h+11-11
...@@ -15,18 +15,7 @@ extern "C" {...@@ -15,18 +15,7 @@ extern "C" {
15#endif15#endif
1616
17#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)17#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
18 typedef struct _HEAP_SUMMARY {
19 DWORD cb;
20 SIZE_T cbAllocated;
21 SIZE_T cbCommitted;
22 SIZE_T cbReserved;
23 SIZE_T cbMaxReserve;
24 } HEAP_SUMMARY,*PHEAP_SUMMARY;
25
26 typedef PHEAP_SUMMARY LPHEAP_SUMMARY;
27
28 WINBASEAPI WINBOOL WINAPI HeapValidate (HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem);18 WINBASEAPI WINBOOL WINAPI HeapValidate (HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem);
29 WINBOOL WINAPI HeapSummary (HANDLE hHeap, DWORD dwFlags, LPHEAP_SUMMARY lpSummary);
30#endif19#endif
3120
32#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H121#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
...@@ -41,6 +30,17 @@ extern "C" {...@@ -41,6 +30,17 @@ extern "C" {
41#endif30#endif
4231
43#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)32#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
33 typedef struct _HEAP_SUMMARY {
34 DWORD cb;
35 SIZE_T cbAllocated;
36 SIZE_T cbCommitted;
37 SIZE_T cbReserved;
38 SIZE_T cbMaxReserve;
39 } HEAP_SUMMARY,*PHEAP_SUMMARY;
40
41 typedef PHEAP_SUMMARY LPHEAP_SUMMARY;
42
43 WINBOOL WINAPI HeapSummary (HANDLE hHeap, DWORD dwFlags, LPHEAP_SUMMARY lpSummary);
44 WINBASEAPI HANDLE WINAPI HeapCreate (DWORD flOptions, SIZE_T dwInitialSize, SIZE_T dwMaximumSize);44 WINBASEAPI HANDLE WINAPI HeapCreate (DWORD flOptions, SIZE_T dwInitialSize, SIZE_T dwMaximumSize);
45 WINBASEAPI SIZE_T WINAPI HeapCompact (HANDLE hHeap, DWORD dwFlags);45 WINBASEAPI SIZE_T WINAPI HeapCompact (HANDLE hHeap, DWORD dwFlags);
46 WINBASEAPI WINBOOL WINAPI HeapDestroy (HANDLE hHeap);46 WINBASEAPI WINBOOL WINAPI HeapDestroy (HANDLE hHeap);
lib/libc/include/any-windows-any/hstring.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/hstring.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/hstring.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/httprequest.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/httprequest.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/httprequest.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/icftypes.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/icftypes.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/icftypes.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/icodecapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/icodecapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/icodecapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/iketypes.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/iketypes.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/iketypes.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/inputpaneinterop.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/inputpaneinterop.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/inputpaneinterop.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/inputscope.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/inputscope.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/inputscope.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/inspectable.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/inspectable.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/inspectable.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/intrin.h+2-1
...@@ -521,7 +521,8 @@ extern "C" {...@@ -521,7 +521,8 @@ extern "C" {
521 __MACHINEIA64(void __rum(int))521 __MACHINEIA64(void __rum(int))
522#ifndef __CYGWIN__522#ifndef __CYGWIN__
523#ifndef USE_NO_MINGW_SETJMP_TWO_ARGS523#ifndef USE_NO_MINGW_SETJMP_TWO_ARGS
524 __MACHINE(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmp(jmp_buf,void *))524 __MACHINEIA32(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmp(jmp_buf))
525 __MACHINEX64(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmp(jmp_buf,void *))
525 __MACHINEIA64(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf,void *))526 __MACHINEIA64(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf,void *))
526 __MACHINEX64(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf,void *))527 __MACHINEX64(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf,void *))
527#else528#else
lib/libc/include/any-windows-any/intsafe.h+117-50
...@@ -11,9 +11,76 @@...@@ -11,9 +11,76 @@
1111
12#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)12#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
1313
14#include <_mingw.h>
14#include <wtypesbase.h>15#include <wtypesbase.h>
15#include <specstrings.h>16#include <specstrings.h>
1617
18#define INT8_MIN (-128)
19#define INT8_MAX 127
20#define UINT8_MAX 255
21#define BYTE_MAX 255
22#define INT16_MIN (-32768)
23#define INT16_MAX 32767
24#define SHORT_MIN (-32768)
25#define SHORT_MAX 32767
26#define UINT16_MAX 65535
27#define USHORT_MAX 65535
28#define WORD_MAX 65535
29#define INT32_MIN (-0x7fffffff - 1)
30#define INT32_MAX 0x7fffffff
31#define INT_MIN (-0x7fffffff - 1)
32#define INT_MAX 0x7fffffff
33#define UINT32_MAX 0xffffffffu
34#define UINT_MAX 0xffffffffu
35#define DWORD_MAX __MSABI_LONG(0xffffffffu)
36#define INT64_MIN (-0x7fffffffffffffff - 1)
37#define INT64_MAX 0x7fffffffffffffff
38#define LONGLONG_MIN (-0x7fffffffffffffffll - 1)
39#define LONG64_MIN (-0x7fffffffffffffffll - 1)
40#define LONGLONG_MAX 0x7fffffffffffffffll
41#define LONG64_MAX 0x7fffffffffffffffll
42#define UINT64_MAX 0xffffffffffffffffu
43#define ULONGLONG_MAX 0xffffffffffffffffull
44#define ULONG64_MAX 0xffffffffffffffffull
45#define DWORDLONG_MAX 0xffffffffffffffffull
46#define DWORD64_MAX 0xffffffffffffffffull
47
48#ifdef __LP64__
49#define LONG_MIN (-0x7fffffffffffffff - 1)
50#define LONG_MAX 0x7fffffffffffffff
51#define ULONG_MAX 0xffffffffffffffffu
52#else
53#define LONG_MIN (-0x7fffffffl - 1)
54#define LONG_MAX 0x7fffffffl
55#define ULONG_MAX 0xfffffffful
56#endif
57
58#ifdef _WIN64
59#define PTRDIFF_T_MIN (-0x7fffffffffffffff - 1)
60#define PTRDIFF_T_MAX 0x7fffffffffffffff
61#define SIZE_T_MAX 0xffffffffffffffffu
62#define INT_PTR_MIN (-0x7fffffffffffffffll - 1)
63#define INT_PTR_MAX 0x7fffffffffffffffll
64#define UINT_PTR_MAX 0xffffffffffffffffull
65#define LONG_PTR_MIN (-0x7fffffffffffffffll - 1)
66#define LONG_PTR_MAX 0x7fffffffffffffffll
67#define ULONG_PTR_MAX 0xffffffffffffffffull
68#else
69#define PTRDIFF_T_MIN (-0x7fffffff - 1)
70#define PTRDIFF_T_MAX 0x7fffffff
71#define SIZE_T_MAX 0xffffffffu
72#define INT_PTR_MIN (-0x7fffffff - 1)
73#define INT_PTR_MAX 0x7fffffff
74#define UINT_PTR_MAX 0xffffffffu
75#define LONG_PTR_MIN (-0x7fffffffl - 1)
76#define LONG_PTR_MAX 0x7fffffffl
77#define ULONG_PTR_MAX 0xfffffffful
78#endif
79#define SSIZE_T_MIN LONG_PTR_MIN
80#define SSIZE_T_MAX LONG_PTR_MAX
81#define _SIZE_T_MAX ULONG_PTR_MAX
82#define DWORD_PTR_MAX ULONG_PTR_MAX
83
17#define INTSAFE_E_ARITHMETIC_OVERFLOW ((HRESULT)0x80070216)84#define INTSAFE_E_ARITHMETIC_OVERFLOW ((HRESULT)0x80070216)
1885
19#ifndef S_OK86#ifndef S_OK
...@@ -424,7 +491,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -424,7 +491,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
424#define Int8ToULong64 Int8ToULongLong491#define Int8ToULong64 Int8ToULongLong
425#define Int8ToDWord64 Int8ToULongLong492#define Int8ToDWord64 Int8ToULongLong
426#define Int8ToUInt64 Int8ToULongLong493#define Int8ToUInt64 Int8ToULongLong
427#define Int8ToSizeT Int8ToUIntPtr494__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Int8ToSizeT, INT8, size_t)
428#define Int8ToSIZET Int8ToULongPtr495#define Int8ToSIZET Int8ToULongPtr
429#define ShortToUInt16 ShortToUShort496#define ShortToUInt16 ShortToUShort
430#define ShortToUInt32 ShortToUInt497#define ShortToUInt32 ShortToUInt
...@@ -433,7 +500,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -433,7 +500,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
433#define ShortToULong64 ShortToULongLong500#define ShortToULong64 ShortToULongLong
434#define ShortToDWord64 ShortToULongLong501#define ShortToDWord64 ShortToULongLong
435#define ShortToUInt64 ShortToULongLong502#define ShortToUInt64 ShortToULongLong
436#define ShortToSizeT ShortToUIntPtr503__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(ShortToSizeT, SHORT, size_t)
437#define ShortToSIZET ShortToULongPtr504#define ShortToSIZET ShortToULongPtr
438#define Int16ToChar ShortToChar505#define Int16ToChar ShortToChar
439#define Int16ToInt8 ShortToInt8506#define Int16ToInt8 ShortToInt8
...@@ -455,7 +522,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -455,7 +522,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
455#define Int16ToULong64 ShortToULongLong522#define Int16ToULong64 ShortToULongLong
456#define Int16ToDWord64 ShortToULongLong523#define Int16ToDWord64 ShortToULongLong
457#define Int16ToUInt64 ShortToULongLong524#define Int16ToUInt64 ShortToULongLong
458#define Int16ToSizeT ShortToUIntPtr525__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Int16ToSizeT, INT16, size_t)
459#define Int16ToSIZET ShortToULongPtr526#define Int16ToSIZET ShortToULongPtr
460#define UShortToInt16 UShortToShort527#define UShortToInt16 UShortToShort
461#define UInt16ToChar UShortToChar528#define UInt16ToChar UShortToChar
...@@ -497,7 +564,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -497,7 +564,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
497#define Int32ToULong64 IntToULongLong564#define Int32ToULong64 IntToULongLong
498#define Int32ToDWord64 IntToULongLong565#define Int32ToDWord64 IntToULongLong
499#define Int32ToUInt64 IntToULongLong566#define Int32ToUInt64 IntToULongLong
500#define Int32ToSizeT IntToUIntPtr567__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Int32ToSizeT, INT32, size_t)
501#define Int32ToSIZET IntToULongPtr568#define Int32ToSIZET IntToULongPtr
502#define IntPtrToByte IntPtrToUInt8569#define IntPtrToByte IntPtrToUInt8
503#define IntPtrToInt16 IntPtrToShort570#define IntPtrToInt16 IntPtrToShort
...@@ -535,7 +602,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -535,7 +602,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
535#define UIntPtrToInt32 UIntPtrToInt602#define UIntPtrToInt32 UIntPtrToInt
536#define UIntPtrToUInt32 UIntPtrToUInt603#define UIntPtrToUInt32 UIntPtrToUInt
537#define UIntPtrToLong64 UIntPtrToLongLong604#define UIntPtrToLong64 UIntPtrToLongLong
538#define UIntPtrToPtrdiffT UIntPtrToIntPtr605__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(UIntPtrToPtrdiffT, UINT_PTR, ptrdiff_t)
539#define LongToInt16 LongToShort606#define LongToInt16 LongToShort
540#define LongToUInt16 LongToUShort607#define LongToUInt16 LongToUShort
541#define LongToInt32 LongToInt608#define LongToInt32 LongToInt
...@@ -601,8 +668,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -601,8 +668,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
601#define LongLongToULong64 LongLongToULongLong668#define LongLongToULong64 LongLongToULongLong
602#define LongLongToDWord64 LongLongToULongLong669#define LongLongToDWord64 LongLongToULongLong
603#define LongLongToUInt64 LongLongToULongLong670#define LongLongToUInt64 LongLongToULongLong
604#define LongLongToPtrdiffT LongLongToIntPtr671__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(LongLongToPtrdiffT, LONGLONG, ptrdiff_t)
605#define LongLongToSizeT LongLongToUIntPtr672__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(LongLongToSizeT, LONGLONG, size_t)
606#define LongLongToSSIZET LongLongToLongPtr673#define LongLongToSSIZET LongLongToLongPtr
607#define LongLongToSIZET LongLongToULongPtr674#define LongLongToSIZET LongLongToULongPtr
608#define Long64ToChar LongLongToChar675#define Long64ToChar LongLongToChar
...@@ -628,8 +695,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -628,8 +695,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
628#define Long64ToDWord LongLongToULong695#define Long64ToDWord LongLongToULong
629#define Long64ToDWordPtr LongLongToULongPtr696#define Long64ToDWordPtr LongLongToULongPtr
630#define Long64ToULongLong LongLongToULongLong697#define Long64ToULongLong LongLongToULongLong
631#define Long64ToPtrdiffT LongLongToIntPtr698__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Long64ToPtrdiffT, LONG64, ptrdiff_t)
632#define Long64ToSizeT LongLongToUIntPtr699__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Long64ToSizeT, LONG64, size_t)
633#define Long64ToSSIZET LongLongToLongPtr700#define Long64ToSSIZET LongLongToLongPtr
634#define Long64ToSIZET LongLongToULongPtr701#define Long64ToSIZET LongLongToULongPtr
635#define Int64ToChar LongLongToChar702#define Int64ToChar LongLongToChar
...@@ -682,8 +749,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -682,8 +749,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
682#define DWordLongToLongLong ULongLongToLongLong749#define DWordLongToLongLong ULongLongToLongLong
683#define DWordLongToLong64 ULongLongToLongLong750#define DWordLongToLong64 ULongLongToLongLong
684#define DWordLongToInt64 ULongLongToLongLong751#define DWordLongToInt64 ULongLongToLongLong
685#define DWordLongToPtrdiffT ULongLongToIntPtr752__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(DWordLongToPtrdiffT, DWORDLONG, ptrdiff_t)
686#define DWordLongToSizeT ULongLongToUIntPtr753__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(DWordLongToSizeT, DWORDLONG, size_t)
687#define DWordLongToSSIZET ULongLongToLongPtr754#define DWordLongToSSIZET ULongLongToLongPtr
688#define DWordLongToSIZET ULongLongToULongPtr755#define DWordLongToSIZET ULongLongToULongPtr
689#define ULong64ToChar ULongLongToChar756#define ULong64ToChar ULongLongToChar
...@@ -711,8 +778,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -711,8 +778,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
711#define ULong64ToLongLong ULongLongToLongLong778#define ULong64ToLongLong ULongLongToLongLong
712#define ULong64ToLong64 ULongLongToLongLong779#define ULong64ToLong64 ULongLongToLongLong
713#define ULong64ToInt64 ULongLongToLongLong780#define ULong64ToInt64 ULongLongToLongLong
714#define ULong64ToPtrdiffT ULongLongToIntPtr781__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(ULong64ToPtrdiffT, ULONG64, ptrdiff_t)
715#define ULong64ToSizeT ULongLongToUIntPtr782__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(ULong64ToSizeT, ULONG64, size_t)
716#define ULong64ToSSIZET ULongLongToLongPtr783#define ULong64ToSSIZET ULongLongToLongPtr
717#define ULong64ToSIZET ULongLongToULongPtr784#define ULong64ToSIZET ULongLongToULongPtr
718#define DWord64ToChar ULongLongToChar785#define DWord64ToChar ULongLongToChar
...@@ -740,8 +807,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -740,8 +807,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
740#define DWord64ToLongLong ULongLongToLongLong807#define DWord64ToLongLong ULongLongToLongLong
741#define DWord64ToLong64 ULongLongToLongLong808#define DWord64ToLong64 ULongLongToLongLong
742#define DWord64ToInt64 ULongLongToLongLong809#define DWord64ToInt64 ULongLongToLongLong
743#define DWord64ToPtrdiffT ULongLongToIntPtr810__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(DWord64ToPtrdiffT, DWORD64, ptrdiff_t)
744#define DWord64ToSizeT ULongLongToUIntPtr811__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(DWord64ToSizeT, DWORD64, size_t)
745#define DWord64ToSSIZET ULongLongToLongPtr812#define DWord64ToSSIZET ULongLongToLongPtr
746#define DWord64ToSIZET ULongLongToULongPtr813#define DWord64ToSIZET ULongLongToULongPtr
747#define UInt64ToChar ULongLongToChar814#define UInt64ToChar ULongLongToChar
...@@ -769,42 +836,42 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -769,42 +836,42 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
769#define UInt64ToLongLong ULongLongToLongLong836#define UInt64ToLongLong ULongLongToLongLong
770#define UInt64ToLong64 ULongLongToLongLong837#define UInt64ToLong64 ULongLongToLongLong
771#define UInt64ToInt64 ULongLongToLongLong838#define UInt64ToInt64 ULongLongToLongLong
772#define UInt64ToPtrdiffT ULongLongToIntPtr839__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(UInt64ToPtrdiffT, UINT64, ptrdiff_t)
773#define UInt64ToSizeT ULongLongToUIntPtr840__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(UInt64ToSizeT, UINT64, size_t)
774#define UInt64ToSSIZET ULongLongToLongPtr841#define UInt64ToSSIZET ULongLongToLongPtr
775#define UInt64ToSIZET ULongLongToULongPtr842#define UInt64ToSIZET ULongLongToULongPtr
776#define PtrdiffTToChar IntPtrToChar843__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV_CHAR(PtrdiffTToChar, ptrdiff_t, CHAR)
777#define PtrdiffTToInt8 IntPtrToInt8844__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV_UCHAR(PtrdiffTToUChar, ptrdiff_t, UCHAR)
778#define PtrdiffTToUChar IntPtrToUChar845__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToInt8, ptrdiff_t, INT8)
779#define PtrdiffTToUInt8 IntPtrToUInt8846__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToUInt8, ptrdiff_t, UINT8)
780#define PtrdiffTToByte IntPtrToUInt8847#define PtrdiffTToByte PtrdiffTToUInt8
781#define PtrdiffTToShort IntPtrToShort848__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToInt16, ptrdiff_t, INT16)
782#define PtrdiffTToInt16 IntPtrToShort849#define PtrdiffTToShort PtrdiffTToInt16
783#define PtrdiffTToUShort IntPtrToUShort850__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToUInt16, ptrdiff_t, UINT16)
784#define PtrdiffTToUInt16 IntPtrToUShort851#define PtrdiffTToUShort PtrdiffTToUInt16
785#define PtrdiffTToWord IntPtrToUShort852#define PtrdiffTToWord PtrdiffTToUInt16
786#define PtrdiffTToInt32 IntPtrToInt853__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToInt32, ptrdiff_t, INT32)
787#define PtrdiffTToUInt32 IntPtrToUInt854__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToUInt32, ptrdiff_t, UINT32)
788#define PtrdiffTToLongPtr IntPtrToLongPtr855__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToLongPtr, ptrdiff_t, LONG_PTR)
789#define PtrdiffTToULongLong IntPtrToULongLong856__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToULongLong, ptrdiff_t, ULONGLONG)
790#define PtrdiffTToDWordLong IntPtrToULongLong857__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToDWordLong, ptrdiff_t, DWORDLONG)
791#define PtrdiffTToULong64 IntPtrToULongLong858__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToULong64, ptrdiff_t, ULONG64)
792#define PtrdiffTToDWord64 IntPtrToULongLong859__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToDWord64, ptrdiff_t, DWORD64)
793#define PtrdiffTToUInt64 IntPtrToULongLong860__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToUInt64, ptrdiff_t, UINT64)
794#define PtrdiffTToSIZET IntPtrToULongPtr861__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToSIZET, ptrdiff_t, SIZE_T)
795#define SizeTToInt8 UIntPtrToInt8862__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV_CHAR(SizeTToChar, size_t, CHAR)
796#define SizeTToUChar UIntPtrToUChar863__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV_UCHAR(SizeTToUChar, size_t, UCHAR)
797#define SizeTToChar UIntPtrToChar864__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToInt8, size_t, INT8)
798#define SizeTToUInt8 UIntPtrToUInt8865__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToUInt8, size_t, UINT8)
799#define SizeTToByte UIntPtrToUInt8866#define SizeTToByte SizeTToUInt8
800#define SizeTToShort UIntPtrToShort867__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToInt16, size_t, INT16)
801#define SizeTToInt16 UIntPtrToShort868#define SizeTToShort SizeTToInt16
802#define SizeTToUShort UIntPtrToUShort869__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToUInt16, size_t, UINT16)
803#define SizeTToUInt16 UIntPtrToUShort870#define SizeTToUShort SizeTToUInt16
804#define SizeTToWord UIntPtrToUShort871#define SizeTToWord SizeTToUInt16
805#define SizeTToInt32 UIntPtrToInt872__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToInt32, size_t, INT32)
806#define SizeTToLongLong UIntPtrToLongLong873__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToLongLong, size_t, LONGLONG)
807#define SizeTToLong64 UIntPtrToLongLong874#define SizeTToLong64 SizeTToLongLong
808#define SSIZETToInt8 LongPtrToInt8875#define SSIZETToInt8 LongPtrToInt8
809#define SSIZETToUChar LongPtrToUChar876#define SSIZETToUChar LongPtrToUChar
810#define SSIZETToChar LongPtrToChar877#define SSIZETToChar LongPtrToChar
...@@ -846,7 +913,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)...@@ -846,7 +913,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
846#define SIZETToLongLong ULongPtrToLongLong913#define SIZETToLongLong ULongPtrToLongLong
847#define SIZETToLong64 ULongPtrToLongLong914#define SIZETToLong64 ULongPtrToLongLong
848#define SIZETToInt64 ULongPtrToLongLong915#define SIZETToInt64 ULongPtrToLongLong
849#define SIZETToPtrdiffT ULongPtrToIntPtr916__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SIZETToPtrdiffT, SIZE_T, ptrdiff_t)
850#define SIZETToSSIZET ULongPtrToLongPtr917#define SIZETToSSIZET ULongPtrToLongPtr
851918
852#define UInt16Add UShortAdd919#define UInt16Add UShortAdd
lib/libc/include/any-windows-any/io.h+23-51
...@@ -76,6 +76,11 @@ _CRTIMP char* __cdecl _getcwd (char*, int);...@@ -76,6 +76,11 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
76 char name[260];76 char name[260];
77 };77 };
7878
79/*
80 * To prevent ABI issues, the mingw-w64 runtime should not call these
81 * functions. Instead it should call the fixed-size variants.
82 */
83#ifndef _CRTBLD
79#ifdef _USE_32BIT_TIME_T84#ifdef _USE_32BIT_TIME_T
80#define _finddata_t _finddata32_t85#define _finddata_t _finddata32_t
81#define _finddatai64_t _finddata32i64_t86#define _finddatai64_t _finddata32i64_t
...@@ -93,6 +98,7 @@ _CRTIMP char* __cdecl _getcwd (char*, int);...@@ -93,6 +98,7 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
93#define _findfirsti64 _findfirst6498#define _findfirsti64 _findfirst64
94#define _findnexti64 _findnext6499#define _findnexti64 _findnext64
95#endif /* _USE_32BIT_TIME_T */100#endif /* _USE_32BIT_TIME_T */
101#endif /* _CRTBLD */
96102
97#define _FINDDATA_T_DEFINED103#define _FINDDATA_T_DEFINED
98#endif /* _FINDDATA_T_DEFINED */104#endif /* _FINDDATA_T_DEFINED */
...@@ -135,14 +141,19 @@ _CRTIMP char* __cdecl _getcwd (char*, int);...@@ -135,14 +141,19 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
135 wchar_t name[260];141 wchar_t name[260];
136 };142 };
137143
144/*
145 * To prevent ABI issues, the mingw-w64 runtime should not call these
146 * functions. Instead it should call the fixed-size variants.
147 */
148#ifndef _CRTBLD
138#ifdef _USE_32BIT_TIME_T149#ifdef _USE_32BIT_TIME_T
139#define _wfinddata_t _wfinddata32_t150#define _wfinddata_t _wfinddata32_t
140#define _wfinddatai64_t _wfinddata32i64_t151#define _wfinddatai64_t _wfinddata32i64_t
141152
142#define _wfindfirst _wfindfirst32153#define _wfindfirst _wfindfirst32
143#define _wfindnext _wfindnext32154#define _wfindnext _wfindnext32
144#define _wfindfirst32i64 _wfindfirsti64155#define _wfindfirsti64 _wfindfirst32i64
145#define _wfindnext32i64 _wfindnexti64156#define _wfindnexti64 _wfindnext32i64
146#else157#else
147#define _wfinddata_t _wfinddata64i32_t158#define _wfinddata_t _wfinddata64i32_t
148#define _wfinddatai64_t _wfinddata64_t159#define _wfinddatai64_t _wfinddata64_t
...@@ -152,6 +163,7 @@ _CRTIMP char* __cdecl _getcwd (char*, int);...@@ -152,6 +163,7 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
152#define _wfindfirsti64 _wfindfirst64163#define _wfindfirsti64 _wfindfirst64
153#define _wfindnexti64 _wfindnext64164#define _wfindnexti64 _wfindnext64
154#endif /* _USE_32BIT_TIME_T */165#endif /* _USE_32BIT_TIME_T */
166#endif /* _CRTBLD */
155167
156#define _WFINDDATA_T_DEFINED168#define _WFINDDATA_T_DEFINED
157#endif /* _WFINDDATA_T_DEFINED */169#endif /* _WFINDDATA_T_DEFINED */
...@@ -237,49 +249,10 @@ _CRTIMP char* __cdecl _getcwd (char*, int);...@@ -237,49 +249,10 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
237 __MINGW_EXTENSION _CRTIMP __int64 __cdecl _filelengthi64(int _FileHandle);249 __MINGW_EXTENSION _CRTIMP __int64 __cdecl _filelengthi64(int _FileHandle);
238 _CRTIMP intptr_t __cdecl _findfirst32i64(const char *_Filename,struct _finddata32i64_t *_FindData);250 _CRTIMP intptr_t __cdecl _findfirst32i64(const char *_Filename,struct _finddata32i64_t *_FindData);
239 _CRTIMP intptr_t __cdecl _findfirst64(const char *_Filename,struct __finddata64_t *_FindData);251 _CRTIMP intptr_t __cdecl _findfirst64(const char *_Filename,struct __finddata64_t *_FindData);
240#ifdef __cplusplus252 _CRTIMP intptr_t __cdecl _findfirst64i32(const char *_Filename,struct _finddata64i32_t *_FindData);
241#include <string.h>
242#endif
243 intptr_t __cdecl _findfirst64i32(const char *_Filename,struct _finddata64i32_t *_FindData);
244#ifndef __CRT__NO_INLINE
245 __CRT_INLINE intptr_t __cdecl _findfirst64i32(const char *_Filename,struct _finddata64i32_t *_FindData)
246 {
247 struct __finddata64_t fd;
248 intptr_t ret = _findfirst64(_Filename,&fd);
249 if (ret == -1) {
250 memset(_FindData,0,sizeof(struct _finddata64i32_t));
251 return -1;
252 }
253 _FindData->attrib=fd.attrib;
254 _FindData->time_create=fd.time_create;
255 _FindData->time_access=fd.time_access;
256 _FindData->time_write=fd.time_write;
257 _FindData->size=(_fsize_t) fd.size;
258 strncpy(_FindData->name,fd.name,260);
259 return ret;
260 }
261#endif /* __CRT__NO_INLINE */
262 _CRTIMP int __cdecl _findnext32i64(intptr_t _FindHandle,struct _finddata32i64_t *_FindData);253 _CRTIMP int __cdecl _findnext32i64(intptr_t _FindHandle,struct _finddata32i64_t *_FindData);
263 _CRTIMP int __cdecl _findnext64(intptr_t _FindHandle,struct __finddata64_t *_FindData);254 _CRTIMP int __cdecl _findnext64(intptr_t _FindHandle,struct __finddata64_t *_FindData);
264 int __cdecl _findnext64i32(intptr_t _FindHandle,struct _finddata64i32_t *_FindData);255 _CRTIMP int __cdecl _findnext64i32(intptr_t _FindHandle,struct _finddata64i32_t *_FindData);
265#ifndef __CRT__NO_INLINE
266 __CRT_INLINE int __cdecl _findnext64i32(intptr_t _FindHandle,struct _finddata64i32_t *_FindData)
267 {
268 struct __finddata64_t fd;
269 int __ret = _findnext64(_FindHandle,&fd);
270 if (__ret == -1) {
271 memset(_FindData,0,sizeof(struct _finddata64i32_t));
272 return -1;
273 }
274 _FindData->attrib=fd.attrib;
275 _FindData->time_create=fd.time_create;
276 _FindData->time_access=fd.time_access;
277 _FindData->time_write=fd.time_write;
278 _FindData->size=(_fsize_t) fd.size;
279 strncpy(_FindData->name,fd.name,260);
280 return __ret;
281 }
282#endif /* __CRT__NO_INLINE */
283 __MINGW_EXTENSION __int64 __cdecl _lseeki64(int _FileHandle,__int64 _Offset,int _Origin);256 __MINGW_EXTENSION __int64 __cdecl _lseeki64(int _FileHandle,__int64 _Offset,int _Origin);
284 __MINGW_EXTENSION __int64 __cdecl _telli64(int _FileHandle);257 __MINGW_EXTENSION __int64 __cdecl _telli64(int _FileHandle);
285258
...@@ -344,15 +317,21 @@ _CRTIMP char* __cdecl _getcwd (char*, int);...@@ -344,15 +317,21 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
344 int __cdecl chsize(int _FileHandle,long _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;317 int __cdecl chsize(int _FileHandle,long _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
345 int __cdecl close(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;318 int __cdecl close(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
346 int __cdecl creat(const char *_Filename,int _PermissionMode) __MINGW_ATTRIB_DEPRECATED_MSVC2005;319 int __cdecl creat(const char *_Filename,int _PermissionMode) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
320 int __cdecl creat64(const char *_Filename,int _PermissionMode);
347 int __cdecl dup(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;321 int __cdecl dup(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
348 int __cdecl dup2(int _FileHandleSrc,int _FileHandleDst) __MINGW_ATTRIB_DEPRECATED_MSVC2005;322 int __cdecl dup2(int _FileHandleSrc,int _FileHandleDst) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
349 int __cdecl eof(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;323 int __cdecl eof(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
350 long __cdecl filelength(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;324 long __cdecl filelength(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
351 int __cdecl isatty(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;325 int __cdecl isatty(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
352 int __cdecl locking(int _FileHandle,int _LockMode,long _NumOfBytes) __MINGW_ATTRIB_DEPRECATED_MSVC2005;326 int __cdecl locking(int _FileHandle,int _LockMode,long _NumOfBytes) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
353 long __cdecl lseek(int _FileHandle,long _Offset,int _Origin) __MINGW_ATTRIB_DEPRECATED_MSVC2005;327 off_t __cdecl lseek(int _FileHandle,off_t _Offset,int _Origin)
328#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
329 __MINGW_ASM_CALL(lseek64)
330#endif
331 __MINGW_ATTRIB_DEPRECATED_MSVC2005;
354 char *__cdecl mktemp(char *_TemplateName) __MINGW_ATTRIB_DEPRECATED_MSVC2005;332 char *__cdecl mktemp(char *_TemplateName) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
355 int __cdecl open(const char *_Filename,int _OpenFlag,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;333 int __cdecl open(const char *_Filename,int _OpenFlag,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
334 int __cdecl open64(const char *_Filename,int _OpenFlag,...);
356 int __cdecl read(int _FileHandle,void *_DstBuf,unsigned int _MaxCharCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;335 int __cdecl read(int _FileHandle,void *_DstBuf,unsigned int _MaxCharCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
357 int __cdecl setmode(int _FileHandle,int _Mode) __MINGW_ATTRIB_DEPRECATED_MSVC2005;336 int __cdecl setmode(int _FileHandle,int _Mode) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
358 int __cdecl sopen(const char *_Filename,int _OpenFlag,int _ShareFlag,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;337 int __cdecl sopen(const char *_Filename,int _OpenFlag,int _ShareFlag,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
...@@ -361,13 +340,6 @@ _CRTIMP char* __cdecl _getcwd (char*, int);...@@ -361,13 +340,6 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
361 int __cdecl write(int _Filehandle,const void *_Buf,unsigned int _MaxCharCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;340 int __cdecl write(int _Filehandle,const void *_Buf,unsigned int _MaxCharCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
362#endif341#endif
363342
364#ifndef _FILE_OFFSET_BITS_SET_LSEEK
365#define _FILE_OFFSET_BITS_SET_LSEEK
366#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
367#define lseek lseek64
368#endif /* (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)) */
369#endif /* _FILE_OFFSET_BITS_SET_LSEEK */
370
371#ifdef _POSIX343#ifdef _POSIX
372344
373/* Misc stuff */345/* Misc stuff */
lib/libc/include/any-windows-any/iwscapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/iwscapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/iwscapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/locale.h+11-5
...@@ -86,18 +86,24 @@ extern "C" {...@@ -86,18 +86,24 @@ extern "C" {
8686
87#endif87#endif
8888
89 int __cdecl _configthreadlocale(int _Flag);89 _CRTIMP int __cdecl _configthreadlocale(int _Flag);
90 char *__cdecl setlocale(int _Category,const char *_Locale);90 _CRTIMP char *__cdecl setlocale(int _Category,const char *_Locale);
91 _CRTIMP struct lconv *__cdecl localeconv(void);91 _CRTIMP struct lconv *__cdecl localeconv(void);
92 _CRTIMP _locale_t __cdecl _get_current_locale(void);92 _CRTIMP _locale_t __cdecl _get_current_locale(void);
93 _CRTIMP _locale_t __cdecl _create_locale(int _Category,const char *_Locale);93 _CRTIMP _locale_t __cdecl _create_locale(int _Category,const char *_Locale);
94 _CRTIMP void __cdecl _free_locale(_locale_t _Locale);94 _CRTIMP void __cdecl _free_locale(_locale_t _Locale);
95 _locale_t __cdecl __get_current_locale(void);95 _CRTIMP _locale_t __cdecl __get_current_locale(void);
96 _locale_t __cdecl __create_locale(int _Category,const char *_Locale);96 _CRTIMP _locale_t __cdecl __create_locale(int _Category,const char *_Locale);
97 void __cdecl __free_locale(_locale_t _Locale);97 _CRTIMP void __cdecl __free_locale(_locale_t _Locale);
9898
99 _CRTIMP unsigned int __cdecl ___lc_codepage_func(void);99 _CRTIMP unsigned int __cdecl ___lc_codepage_func(void);
100100
101 /* Get the code page that the CRT currently uses for filenames. */
102 unsigned int __cdecl __mingw_filename_cp(void);
103
104 /* Variant of _isleadbyte_l() function which takes codepage (instead of locale_t). */
105 int __cdecl __mingw_isleadbyte_cp(int c, unsigned int cp);
106
101#ifndef _WLOCALE_DEFINED107#ifndef _WLOCALE_DEFINED
102#define _WLOCALE_DEFINED108#define _WLOCALE_DEFINED
103 _CRTIMP wchar_t *__cdecl _wsetlocale(int _Category,const wchar_t *_Locale);109 _CRTIMP wchar_t *__cdecl _wsetlocale(int _Category,const wchar_t *_Locale);
lib/libc/include/any-windows-any/locationapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/locationapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/locationapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/math.h+55-6
...@@ -168,6 +168,17 @@ extern "C" {...@@ -168,6 +168,17 @@ extern "C" {
168 #define __setusermatherr __mingw_setusermatherr168 #define __setusermatherr __mingw_setusermatherr
169#endif169#endif
170170
171#define MATH_ERRNO 1
172#define MATH_ERREXCEPT 2
173
174#if defined __FAST_MATH__ /* no error handling. */
175# define math_errhandling 0
176#elif defined __NO_MATH_ERRNO__ /* errno is not used; only exceptions. */
177# define math_errhandling MATH_ERREXCEPT
178#else
179# define math_errhandling (MATH_ERRNO | MATH_ERREXCEPT)
180#endif
181
171 double __cdecl sin(double _X);182 double __cdecl sin(double _X);
172 double __cdecl cos(double _X);183 double __cdecl cos(double _X);
173 double __cdecl tan(double _X);184 double __cdecl tan(double _X);
...@@ -484,13 +495,13 @@ __fin)))...@@ -484,13 +495,13 @@ __fin)))
484#define fpclassify(x) \495#define fpclassify(x) \
485__mingw_choose_expr ( \496__mingw_choose_expr ( \
486 __mingw_types_compatible_p (__typeof__ (x), double), \497 __mingw_types_compatible_p (__typeof__ (x), double), \
487 __fpclassify(x), \498 __fpclassify((double)(x)), \
488 __mingw_choose_expr ( \499 __mingw_choose_expr ( \
489 __mingw_types_compatible_p (__typeof__ (x), float), \500 __mingw_types_compatible_p (__typeof__ (x), float), \
490 __fpclassifyf(x), \501 __fpclassifyf((float)(x)), \
491 __mingw_choose_expr ( \502 __mingw_choose_expr ( \
492 __mingw_types_compatible_p (__typeof__ (x), long double), \503 __mingw_types_compatible_p (__typeof__ (x), long double), \
493 __fpclassifyl(x), \504 __fpclassifyl((long double)(x)), \
494 __dfp_expansion(__fpclassify,(__builtin_trap(),0),x))))505 __dfp_expansion(__fpclassify,(__builtin_trap(),0),x))))
495506
496507
...@@ -687,6 +698,44 @@ __mingw_choose_expr ( \...@@ -687,6 +698,44 @@ __mingw_choose_expr ( \
687#endif698#endif
688 extern long double __cdecl tanhl(long double);699 extern long double __cdecl tanhl(long double);
689700
701#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L) \
702 || defined(_CRTBLD)
703/* 7.12.4.8 */
704 double __cdecl acospi(double _X);
705 float __cdecl acospif(float _X);
706 long double __cdecl acospil(long double _X);
707
708/* 7.12.4.9 */
709 double __cdecl asinpi(double _X);
710 float __cdecl asinpif(float _X);
711 long double __cdecl asinpil(long double _X);
712
713/* 7.12.4.10 */
714 double __cdecl atanpi(double _X);
715 float __cdecl atanpif(float _X);
716 long double __cdecl atanpil(long double _X);
717
718/* 7.12.4.11 */
719 double __cdecl atan2pi(double _Y, double _X);
720 float __cdecl atan2pif(float _Y, float _X);
721 long double __cdecl atan2pil(long double _Y, long double _X);
722
723/* 7.12.4.12 */
724 double __cdecl cospi(double _X);
725 float __cdecl cospif(float _X);
726 long double __cdecl cospil(long double _X);
727
728/* 7.12.4.13 */
729 double __cdecl sinpi(double _X);
730 float __cdecl sinpif(float _X);
731 long double __cdecl sinpil(long double _X);
732
733/* 7.12.4.14 */
734 double __cdecl tanpi(double _X);
735 float __cdecl tanpif(float _X);
736 long double __cdecl tanpil(long double _X);
737#endif
738
690/* Inverse hyperbolic trig functions */ 739/* Inverse hyperbolic trig functions */
691/* 7.12.5.1 */740/* 7.12.5.1 */
692 extern double __cdecl acosh (double);741 extern double __cdecl acosh (double);
...@@ -1154,9 +1203,9 @@ _Decimal128 __cdecl atand128(_Decimal128 _X);...@@ -1154,9 +1203,9 @@ _Decimal128 __cdecl atand128(_Decimal128 _X);
1154_Decimal32 __cdecl atand32(_Decimal32 _X);1203_Decimal32 __cdecl atand32(_Decimal32 _X);
11551204
1156/* http://h21007.www2.hp.com/portal/download/files/unprot/fp/manpages/atan2d64.3m.htm */1205/* http://h21007.www2.hp.com/portal/download/files/unprot/fp/manpages/atan2d64.3m.htm */
1157_Decimal64 __cdecl atan2d64(_Decimal64 _X, _Decimal64 _Y);1206_Decimal64 __cdecl atan2d64(_Decimal64 _Y, _Decimal64 _X);
1158_Decimal128 __cdecl atan2d128(_Decimal128 _X, _Decimal128 _Y);1207_Decimal128 __cdecl atan2d128(_Decimal128 _Y, _Decimal128 _X);
1159_Decimal32 __cdecl atan2d32(_Decimal32 _X, _Decimal32 _Y);1208_Decimal32 __cdecl atan2d32(_Decimal32 _Y, _Decimal32 _X);
11601209
1161/*** hyperbolics ***/1210/*** hyperbolics ***/
1162/* http://h21007.www2.hp.com/portal/download/files/unprot/fp/manpages/coshd64.3m.htm */1211/* http://h21007.www2.hp.com/portal/download/files/unprot/fp/manpages/coshd64.3m.htm */
lib/libc/include/any-windows-any/mbctype.h+11-7
...@@ -23,12 +23,6 @@ extern "C" {...@@ -23,12 +23,6 @@ extern "C" {
23#define _mbcasemap (__p__mbcasemap())23#define _mbcasemap (__p__mbcasemap())
24#endif24#endif
2525
26 extern pthreadmbcinfo __ptmbcinfo;
27 extern int __globallocalestatus;
28 extern int __locale_changed;
29 extern struct threadmbcinfostruct __initialmbcinfo;
30 pthreadmbcinfo __cdecl __updatetmbcinfo(void);
31
32#define _MS 0x0126#define _MS 0x01
33#define _MP 0x0227#define _MP 0x02
34#define _M1 0x0428#define _M1 0x04
...@@ -48,22 +42,32 @@ extern "C" {...@@ -48,22 +42,32 @@ extern "C" {
48#define _MB_CP_OEM -242#define _MB_CP_OEM -2
49#define _MB_CP_ANSI -343#define _MB_CP_ANSI -3
50#define _MB_CP_LOCALE -444#define _MB_CP_LOCALE -4
45#ifdef _UCRT
46#define _MB_CP_UTF8 65001
47#endif
5148
52#ifndef _MBCTYPE_DEFINED49#ifndef _MBCTYPE_DEFINED
53#define _MBCTYPE_DEFINED50#define _MBCTYPE_DEFINED
5451#if __MSVCRT_VERSION__ >= 0x0200
55 _CRTIMP int __cdecl _setmbcp(int _CodePage);52 _CRTIMP int __cdecl _setmbcp(int _CodePage);
56 _CRTIMP int __cdecl _getmbcp(void);53 _CRTIMP int __cdecl _getmbcp(void);
54#endif
57 _CRTIMP int __cdecl _ismbbkalnum(unsigned int _C);55 _CRTIMP int __cdecl _ismbbkalnum(unsigned int _C);
58 _CRTIMP int __cdecl _ismbbkalnum_l(unsigned int _C,_locale_t _Locale);56 _CRTIMP int __cdecl _ismbbkalnum_l(unsigned int _C,_locale_t _Locale);
59 _CRTIMP int __cdecl _ismbbkana(unsigned int _C);57 _CRTIMP int __cdecl _ismbbkana(unsigned int _C);
60 _CRTIMP int __cdecl _ismbbkana_l(unsigned int _C,_locale_t _Locale);58 _CRTIMP int __cdecl _ismbbkana_l(unsigned int _C,_locale_t _Locale);
61 _CRTIMP int __cdecl _ismbbkpunct(unsigned int _C);59 _CRTIMP int __cdecl _ismbbkpunct(unsigned int _C);
62 _CRTIMP int __cdecl _ismbbkpunct_l(unsigned int _C,_locale_t _Locale);60 _CRTIMP int __cdecl _ismbbkpunct_l(unsigned int _C,_locale_t _Locale);
61#if __MSVCRT_VERSION__ >= 0x0200
63 _CRTIMP int __cdecl _ismbbkprint(unsigned int _C);62 _CRTIMP int __cdecl _ismbbkprint(unsigned int _C);
64 _CRTIMP int __cdecl _ismbbkprint_l(unsigned int _C,_locale_t _Locale);63 _CRTIMP int __cdecl _ismbbkprint_l(unsigned int _C,_locale_t _Locale);
64#endif
65 _CRTIMP int __cdecl _ismbbalpha(unsigned int _C);65 _CRTIMP int __cdecl _ismbbalpha(unsigned int _C);
66 _CRTIMP int __cdecl _ismbbalpha_l(unsigned int _C,_locale_t _Locale);66 _CRTIMP int __cdecl _ismbbalpha_l(unsigned int _C,_locale_t _Locale);
67#if __MSVCRT_VERSION__ >= 0x0C00
68 _CRTIMP int __cdecl _ismbbblank(unsigned int _C);
69 _CRTIMP int __cdecl _ismbbblank_l(unsigned int _C,_locale_t _Locale);
70#endif
67 _CRTIMP int __cdecl _ismbbpunct(unsigned int _C);71 _CRTIMP int __cdecl _ismbbpunct(unsigned int _C);
68 _CRTIMP int __cdecl _ismbbpunct_l(unsigned int _C,_locale_t _Locale);72 _CRTIMP int __cdecl _ismbbpunct_l(unsigned int _C,_locale_t _Locale);
69 _CRTIMP int __cdecl _ismbbalnum(unsigned int _C);73 _CRTIMP int __cdecl _ismbbalnum(unsigned int _C);
lib/libc/include/any-windows-any/mbstring.h+34-4
...@@ -16,6 +16,9 @@ extern "C" {...@@ -16,6 +16,9 @@ extern "C" {
1616
17#ifndef _FILE_DEFINED17#ifndef _FILE_DEFINED
18 struct _iobuf {18 struct _iobuf {
19#ifdef _UCRT
20 void *_Placeholder;
21#else
19 char *_ptr;22 char *_ptr;
20 int _cnt;23 int _cnt;
21 char *_base;24 char *_base;
...@@ -24,6 +27,7 @@ extern "C" {...@@ -24,6 +27,7 @@ extern "C" {
24 int _charbuf;27 int _charbuf;
25 int _bufsiz;28 int _bufsiz;
26 char *_tmpfname;29 char *_tmpfname;
30#endif
27 };31 };
28 typedef struct _iobuf FILE;32 typedef struct _iobuf FILE;
29#define _FILE_DEFINED33#define _FILE_DEFINED
...@@ -47,46 +51,58 @@ extern "C" {...@@ -47,46 +51,58 @@ extern "C" {
47 _CRTIMP unsigned int __cdecl _mbctombb_l(unsigned int _Ch,_locale_t _Locale);51 _CRTIMP unsigned int __cdecl _mbctombb_l(unsigned int _Ch,_locale_t _Locale);
48 _CRTIMP int __cdecl _mbsbtype(const unsigned char *_Str,size_t _Pos);52 _CRTIMP int __cdecl _mbsbtype(const unsigned char *_Str,size_t _Pos);
49 _CRTIMP int __cdecl _mbsbtype_l(const unsigned char *_Str,size_t _Pos,_locale_t _Locale);53 _CRTIMP int __cdecl _mbsbtype_l(const unsigned char *_Str,size_t _Pos,_locale_t _Locale);
54#if __MSVCRT_VERSION__ < 0x0800
50 _CRTIMP unsigned char *__cdecl _mbscat(unsigned char *_Dest,const unsigned char *_Source);55 _CRTIMP unsigned char *__cdecl _mbscat(unsigned char *_Dest,const unsigned char *_Source);
51 _CRTIMP unsigned char *_mbscat_l(unsigned char *_Dest,const unsigned char *_Source,_locale_t _Locale);56#endif
52 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbschr(const unsigned char *_Str,unsigned int _Ch);57 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbschr(const unsigned char *_Str,unsigned int _Ch);
53 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbschr_l(const unsigned char *_Str,unsigned int _Ch,_locale_t _Locale);58 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbschr_l(const unsigned char *_Str,unsigned int _Ch,_locale_t _Locale);
54 _CRTIMP int __cdecl _mbscmp(const unsigned char *_Str1,const unsigned char *_Str2);59 _CRTIMP int __cdecl _mbscmp(const unsigned char *_Str1,const unsigned char *_Str2);
55 _CRTIMP int __cdecl _mbscmp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);60 _CRTIMP int __cdecl _mbscmp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
61#if __MSVCRT_VERSION__ >= 0x0200
56 _CRTIMP int __cdecl _mbscoll(const unsigned char *_Str1,const unsigned char *_Str2);62 _CRTIMP int __cdecl _mbscoll(const unsigned char *_Str1,const unsigned char *_Str2);
57 _CRTIMP int __cdecl _mbscoll_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);63 _CRTIMP int __cdecl _mbscoll_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
64#endif
65#if __MSVCRT_VERSION__ < 0x0800
58 _CRTIMP unsigned char *__cdecl _mbscpy(unsigned char *_Dest,const unsigned char *_Source);66 _CRTIMP unsigned char *__cdecl _mbscpy(unsigned char *_Dest,const unsigned char *_Source);
59 _CRTIMP unsigned char *_mbscpy_l(unsigned char *_Dest,const unsigned char *_Source,_locale_t _Locale);67#endif
60 _CRTIMP size_t __cdecl _mbscspn(const unsigned char *_Str,const unsigned char *_Control);68 _CRTIMP size_t __cdecl _mbscspn(const unsigned char *_Str,const unsigned char *_Control);
61 _CRTIMP size_t __cdecl _mbscspn_l(const unsigned char *_Str,const unsigned char *_Control,_locale_t _Locale);69 _CRTIMP size_t __cdecl _mbscspn_l(const unsigned char *_Str,const unsigned char *_Control,_locale_t _Locale);
62 _CRTIMP unsigned char *__cdecl _mbsdec(const unsigned char *_Start,const unsigned char *_Pos);70 _CRTIMP unsigned char *__cdecl _mbsdec(const unsigned char *_Start,const unsigned char *_Pos);
63 _CRTIMP unsigned char *__cdecl _mbsdec_l(const unsigned char *_Start,const unsigned char *_Pos,_locale_t _Locale);71 _CRTIMP unsigned char *__cdecl _mbsdec_l(const unsigned char *_Start,const unsigned char *_Pos,_locale_t _Locale);
64 _CRTIMP int __cdecl _mbsicmp(const unsigned char *_Str1,const unsigned char *_Str2);72 _CRTIMP int __cdecl _mbsicmp(const unsigned char *_Str1,const unsigned char *_Str2);
65 _CRTIMP int __cdecl _mbsicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);73 _CRTIMP int __cdecl _mbsicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
74#if __MSVCRT_VERSION__ >= 0x0200
66 _CRTIMP int __cdecl _mbsicoll(const unsigned char *_Str1,const unsigned char *_Str2);75 _CRTIMP int __cdecl _mbsicoll(const unsigned char *_Str1,const unsigned char *_Str2);
67 _CRTIMP int __cdecl _mbsicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);76 _CRTIMP int __cdecl _mbsicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
77#endif
68 _CRTIMP unsigned char *__cdecl _mbsinc(const unsigned char *_Ptr);78 _CRTIMP unsigned char *__cdecl _mbsinc(const unsigned char *_Ptr);
69 _CRTIMP unsigned char *__cdecl _mbsinc_l(const unsigned char *_Ptr,_locale_t _Locale);79 _CRTIMP unsigned char *__cdecl _mbsinc_l(const unsigned char *_Ptr,_locale_t _Locale);
70 _CRTIMP size_t __cdecl _mbslen(const unsigned char *_Str);80 _CRTIMP size_t __cdecl _mbslen(const unsigned char *_Str);
71 _CRTIMP size_t __cdecl _mbslen_l(const unsigned char *_Str,_locale_t _Locale);81 _CRTIMP size_t __cdecl _mbslen_l(const unsigned char *_Str,_locale_t _Locale);
82#if __MSVCRT_VERSION__ >= 0x0800
72 _CRTIMP size_t __cdecl _mbsnlen(const unsigned char *_Str,size_t _MaxCount);83 _CRTIMP size_t __cdecl _mbsnlen(const unsigned char *_Str,size_t _MaxCount);
73 _CRTIMP size_t __cdecl _mbsnlen_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);84 _CRTIMP size_t __cdecl _mbsnlen_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
85#endif
74 _CRTIMP unsigned char *__cdecl _mbslwr(unsigned char *_String);86 _CRTIMP unsigned char *__cdecl _mbslwr(unsigned char *_String);
75 _CRTIMP unsigned char *_mbslwr_l(unsigned char *_String,_locale_t _Locale);87 _CRTIMP unsigned char *__cdecl _mbslwr_l(unsigned char *_String,_locale_t _Locale);
76 _CRTIMP unsigned char *__cdecl _mbsnbcat(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;88 _CRTIMP unsigned char *__cdecl _mbsnbcat(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
77 _CRTIMP unsigned char *__cdecl _mbsnbcat_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;89 _CRTIMP unsigned char *__cdecl _mbsnbcat_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
78 _CRTIMP int __cdecl _mbsnbcmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);90 _CRTIMP int __cdecl _mbsnbcmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
79 _CRTIMP int __cdecl _mbsnbcmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);91 _CRTIMP int __cdecl _mbsnbcmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
92#if __MSVCRT_VERSION__ >= 0x0200
80 _CRTIMP int __cdecl _mbsnbcoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);93 _CRTIMP int __cdecl _mbsnbcoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
81 _CRTIMP int __cdecl _mbsnbcoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);94 _CRTIMP int __cdecl _mbsnbcoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
95#endif
82 _CRTIMP size_t __cdecl _mbsnbcnt(const unsigned char *_Str,size_t _MaxCount);96 _CRTIMP size_t __cdecl _mbsnbcnt(const unsigned char *_Str,size_t _MaxCount);
83 _CRTIMP size_t __cdecl _mbsnbcnt_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);97 _CRTIMP size_t __cdecl _mbsnbcnt_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
84 _CRTIMP unsigned char *__cdecl _mbsnbcpy(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;98 _CRTIMP unsigned char *__cdecl _mbsnbcpy(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
85 _CRTIMP unsigned char *__cdecl _mbsnbcpy_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;99 _CRTIMP unsigned char *__cdecl _mbsnbcpy_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
86 _CRTIMP int __cdecl _mbsnbicmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);100 _CRTIMP int __cdecl _mbsnbicmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
87 _CRTIMP int __cdecl _mbsnbicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);101 _CRTIMP int __cdecl _mbsnbicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
102#if __MSVCRT_VERSION__ >= 0x0200
88 _CRTIMP int __cdecl _mbsnbicoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);103 _CRTIMP int __cdecl _mbsnbicoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
89 _CRTIMP int __cdecl _mbsnbicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);104 _CRTIMP int __cdecl _mbsnbicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
105#endif
90 _CRTIMP unsigned char *__cdecl _mbsnbset(unsigned char *_Str,unsigned int _Ch,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;106 _CRTIMP unsigned char *__cdecl _mbsnbset(unsigned char *_Str,unsigned int _Ch,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
91 _CRTIMP unsigned char *__cdecl _mbsnbset_l(unsigned char *_Str,unsigned int _Ch,size_t _MaxCount,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;107 _CRTIMP unsigned char *__cdecl _mbsnbset_l(unsigned char *_Str,unsigned int _Ch,size_t _MaxCount,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
92 _CRTIMP unsigned char *__cdecl _mbsncat(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;108 _CRTIMP unsigned char *__cdecl _mbsncat(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
...@@ -95,16 +111,20 @@ extern "C" {...@@ -95,16 +111,20 @@ extern "C" {
95 _CRTIMP size_t __cdecl _mbsnccnt_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);111 _CRTIMP size_t __cdecl _mbsnccnt_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
96 _CRTIMP int __cdecl _mbsncmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);112 _CRTIMP int __cdecl _mbsncmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
97 _CRTIMP int __cdecl _mbsncmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);113 _CRTIMP int __cdecl _mbsncmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
114#if __MSVCRT_VERSION__ >= 0x0200
98 _CRTIMP int __cdecl _mbsncoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);115 _CRTIMP int __cdecl _mbsncoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
99 _CRTIMP int __cdecl _mbsncoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);116 _CRTIMP int __cdecl _mbsncoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
117#endif
100 _CRTIMP unsigned char *__cdecl _mbsncpy(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;118 _CRTIMP unsigned char *__cdecl _mbsncpy(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
101 _CRTIMP unsigned char *__cdecl _mbsncpy_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;119 _CRTIMP unsigned char *__cdecl _mbsncpy_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
102 _CRTIMP unsigned int __cdecl _mbsnextc (const unsigned char *_Str);120 _CRTIMP unsigned int __cdecl _mbsnextc (const unsigned char *_Str);
103 _CRTIMP unsigned int __cdecl _mbsnextc_l(const unsigned char *_Str,_locale_t _Locale);121 _CRTIMP unsigned int __cdecl _mbsnextc_l(const unsigned char *_Str,_locale_t _Locale);
104 _CRTIMP int __cdecl _mbsnicmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);122 _CRTIMP int __cdecl _mbsnicmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
105 _CRTIMP int __cdecl _mbsnicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);123 _CRTIMP int __cdecl _mbsnicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
124#if __MSVCRT_VERSION__ >= 0x0200
106 _CRTIMP int __cdecl _mbsnicoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);125 _CRTIMP int __cdecl _mbsnicoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
107 _CRTIMP int __cdecl _mbsnicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);126 _CRTIMP int __cdecl _mbsnicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
127#endif
108 _CRTIMP unsigned char *__cdecl _mbsninc(const unsigned char *_Str,size_t _Count);128 _CRTIMP unsigned char *__cdecl _mbsninc(const unsigned char *_Str,size_t _Count);
109 _CRTIMP unsigned char *__cdecl _mbsninc_l(const unsigned char *_Str,size_t _Count,_locale_t _Locale);129 _CRTIMP unsigned char *__cdecl _mbsninc_l(const unsigned char *_Str,size_t _Count,_locale_t _Locale);
110 _CRTIMP unsigned char *__cdecl _mbsnset(unsigned char *_Dst,unsigned int _Val,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;130 _CRTIMP unsigned char *__cdecl _mbsnset(unsigned char *_Dst,unsigned int _Val,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
...@@ -126,7 +146,7 @@ extern "C" {...@@ -126,7 +146,7 @@ extern "C" {
126 _CRTIMP unsigned char *__cdecl _mbstok(unsigned char *_Str,const unsigned char *_Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;146 _CRTIMP unsigned char *__cdecl _mbstok(unsigned char *_Str,const unsigned char *_Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
127 _CRTIMP unsigned char *__cdecl _mbstok_l(unsigned char *_Str,const unsigned char *_Delim,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;147 _CRTIMP unsigned char *__cdecl _mbstok_l(unsigned char *_Str,const unsigned char *_Delim,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
128 _CRTIMP unsigned char *__cdecl _mbsupr(unsigned char *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;148 _CRTIMP unsigned char *__cdecl _mbsupr(unsigned char *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
129 _CRTIMP unsigned char *_mbsupr_l(unsigned char *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;149 _CRTIMP unsigned char *__cdecl _mbsupr_l(unsigned char *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
130 _CRTIMP size_t __cdecl _mbclen(const unsigned char *_Str);150 _CRTIMP size_t __cdecl _mbclen(const unsigned char *_Str);
131 _CRTIMP size_t __cdecl _mbclen_l(const unsigned char *_Str,_locale_t _Locale);151 _CRTIMP size_t __cdecl _mbclen_l(const unsigned char *_Str,_locale_t _Locale);
132 _CRTIMP void __cdecl _mbccpy(unsigned char *_Dst,const unsigned char *_Src) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;152 _CRTIMP void __cdecl _mbccpy(unsigned char *_Dst,const unsigned char *_Src) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
...@@ -149,22 +169,32 @@ extern "C" {...@@ -149,22 +169,32 @@ extern "C" {
149#endif169#endif
150#endif170#endif
151171
172#if __MSVCRT_VERSION__ >= 0x0200
152 _CRTIMP int __cdecl _ismbcalnum(unsigned int _Ch);173 _CRTIMP int __cdecl _ismbcalnum(unsigned int _Ch);
153 _CRTIMP int __cdecl _ismbcalnum_l(unsigned int _Ch,_locale_t _Locale);174 _CRTIMP int __cdecl _ismbcalnum_l(unsigned int _Ch,_locale_t _Locale);
175#endif
154 _CRTIMP int __cdecl _ismbcalpha(unsigned int _Ch);176 _CRTIMP int __cdecl _ismbcalpha(unsigned int _Ch);
155 _CRTIMP int __cdecl _ismbcalpha_l(unsigned int _Ch,_locale_t _Locale);177 _CRTIMP int __cdecl _ismbcalpha_l(unsigned int _Ch,_locale_t _Locale);
178#if __MSVCRT_VERSION__ >= 0x0C00
179 _CRTIMP int __cdecl _ismbcblank(unsigned int _Ch);
180 _CRTIMP int __cdecl _ismbcblank_l(unsigned int _Ch,_locale_t _Locale);
181#endif
156 _CRTIMP int __cdecl _ismbcdigit(unsigned int _Ch);182 _CRTIMP int __cdecl _ismbcdigit(unsigned int _Ch);
157 _CRTIMP int __cdecl _ismbcdigit_l(unsigned int _Ch,_locale_t _Locale);183 _CRTIMP int __cdecl _ismbcdigit_l(unsigned int _Ch,_locale_t _Locale);
184#if __MSVCRT_VERSION__ >= 0x0200
158 _CRTIMP int __cdecl _ismbcgraph(unsigned int _Ch);185 _CRTIMP int __cdecl _ismbcgraph(unsigned int _Ch);
159 _CRTIMP int __cdecl _ismbcgraph_l(unsigned int _Ch,_locale_t _Locale);186 _CRTIMP int __cdecl _ismbcgraph_l(unsigned int _Ch,_locale_t _Locale);
187#endif
160 _CRTIMP int __cdecl _ismbclegal(unsigned int _Ch);188 _CRTIMP int __cdecl _ismbclegal(unsigned int _Ch);
161 _CRTIMP int __cdecl _ismbclegal_l(unsigned int _Ch,_locale_t _Locale);189 _CRTIMP int __cdecl _ismbclegal_l(unsigned int _Ch,_locale_t _Locale);
162 _CRTIMP int __cdecl _ismbclower(unsigned int _Ch);190 _CRTIMP int __cdecl _ismbclower(unsigned int _Ch);
163 _CRTIMP int __cdecl _ismbclower_l(unsigned int _Ch,_locale_t _Locale);191 _CRTIMP int __cdecl _ismbclower_l(unsigned int _Ch,_locale_t _Locale);
164 _CRTIMP int __cdecl _ismbcprint(unsigned int _Ch);192 _CRTIMP int __cdecl _ismbcprint(unsigned int _Ch);
165 _CRTIMP int __cdecl _ismbcprint_l(unsigned int _Ch,_locale_t _Locale);193 _CRTIMP int __cdecl _ismbcprint_l(unsigned int _Ch,_locale_t _Locale);
194#if __MSVCRT_VERSION__ >= 0x0200
166 _CRTIMP int __cdecl _ismbcpunct(unsigned int _Ch);195 _CRTIMP int __cdecl _ismbcpunct(unsigned int _Ch);
167 _CRTIMP int __cdecl _ismbcpunct_l(unsigned int _Ch,_locale_t _Locale);196 _CRTIMP int __cdecl _ismbcpunct_l(unsigned int _Ch,_locale_t _Locale);
197#endif
168 _CRTIMP int __cdecl _ismbcspace(unsigned int _Ch);198 _CRTIMP int __cdecl _ismbcspace(unsigned int _Ch);
169 _CRTIMP int __cdecl _ismbcspace_l(unsigned int _Ch,_locale_t _Locale);199 _CRTIMP int __cdecl _ismbcspace_l(unsigned int _Ch,_locale_t _Locale);
170 _CRTIMP int __cdecl _ismbcupper(unsigned int _Ch);200 _CRTIMP int __cdecl _ismbcupper(unsigned int _Ch);
lib/libc/include/any-windows-any/mediaobj.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mediaobj.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mediaobj.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/medparam.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/medparam.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/medparam.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/memory.h+1-41
...@@ -6,46 +6,6 @@...@@ -6,46 +6,6 @@
6#ifndef _INC_MEMORY6#ifndef _INC_MEMORY
7#define _INC_MEMORY7#define _INC_MEMORY
88
9#include <crtdefs.h>9#include <corecrt_memory.h>
1010
11#if defined(__LIBMSVCRT__)
12/* When building mingw-w64, this should be blank. */
13#define _SECIMP
14#else
15#ifndef _SECIMP
16#define _SECIMP __declspec(dllimport)
17#endif /* _SECIMP */
18#endif /* defined(__LIBMSVCRT__) */
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
24#ifndef _CONST_RETURN
25#define _CONST_RETURN
26#endif
27
28#define _WConst_return _CONST_RETURN
29
30#ifndef _CRT_MEMORY_DEFINED
31#define _CRT_MEMORY_DEFINED
32 _CRTIMP void *__cdecl _memccpy(void *_Dst,const void *_Src,int _Val,size_t _MaxCount);
33 _CONST_RETURN void *__cdecl memchr(const void *_Buf ,int _Val,size_t _MaxCount);
34 _CRTIMP int __cdecl _memicmp(const void *_Buf1,const void *_Buf2,size_t _Size);
35 _CRTIMP int __cdecl _memicmp_l(const void *_Buf1,const void *_Buf2,size_t _Size,_locale_t _Locale);
36 int __cdecl memcmp(const void *_Buf1,const void *_Buf2,size_t _Size);
37 void * __cdecl memcpy(void * __restrict__ _Dst,const void * __restrict__ _Src,size_t _Size) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
38 _SECIMP errno_t __cdecl memcpy_s (void *_dest,size_t _numberOfElements,const void *_src,size_t _count);
39 void * __cdecl mempcpy (void *_Dst, const void *_Src, size_t _Size);
40 void * __cdecl memset(void *_Dst,int _Val,size_t _Size);
41
42#ifndef NO_OLDNAMES
43 void * __cdecl memccpy(void *_Dst,const void *_Src,int _Val,size_t _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
44 int __cdecl memicmp(const void *_Buf1,const void *_Buf2,size_t _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
45#endif
46#endif
47
48#ifdef __cplusplus
49}
50#endif
51#endif11#endif
lib/libc/include/any-windows-any/mfcaptureengine.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mfcaptureengine.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mfcaptureengine.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfd3d12.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mfd3d12.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mfd3d12.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfidl.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mfidl.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mfidl.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfmediacapture.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mfmediacapture.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mfmediacapture.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfmediaengine.h+1581-149
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mfmediaengine.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mfmediaengine.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -66,6 +66,46 @@ interface IMFMediaEngineClassFactory;...@@ -66,6 +66,46 @@ interface IMFMediaEngineClassFactory;
66#endif /* __cplusplus */66#endif /* __cplusplus */
67#endif67#endif
6868
69#ifndef __IMFMediaSourceExtensionNotify_FWD_DEFINED__
70#define __IMFMediaSourceExtensionNotify_FWD_DEFINED__
71typedef interface IMFMediaSourceExtensionNotify IMFMediaSourceExtensionNotify;
72#ifdef __cplusplus
73interface IMFMediaSourceExtensionNotify;
74#endif /* __cplusplus */
75#endif
76
77#ifndef __IMFSourceBufferNotify_FWD_DEFINED__
78#define __IMFSourceBufferNotify_FWD_DEFINED__
79typedef interface IMFSourceBufferNotify IMFSourceBufferNotify;
80#ifdef __cplusplus
81interface IMFSourceBufferNotify;
82#endif /* __cplusplus */
83#endif
84
85#ifndef __IMFSourceBuffer_FWD_DEFINED__
86#define __IMFSourceBuffer_FWD_DEFINED__
87typedef interface IMFSourceBuffer IMFSourceBuffer;
88#ifdef __cplusplus
89interface IMFSourceBuffer;
90#endif /* __cplusplus */
91#endif
92
93#ifndef __IMFSourceBufferList_FWD_DEFINED__
94#define __IMFSourceBufferList_FWD_DEFINED__
95typedef interface IMFSourceBufferList IMFSourceBufferList;
96#ifdef __cplusplus
97interface IMFSourceBufferList;
98#endif /* __cplusplus */
99#endif
100
101#ifndef __IMFMediaSourceExtension_FWD_DEFINED__
102#define __IMFMediaSourceExtension_FWD_DEFINED__
103typedef interface IMFMediaSourceExtension IMFMediaSourceExtension;
104#ifdef __cplusplus
105interface IMFMediaSourceExtension;
106#endif /* __cplusplus */
107#endif
108
69#ifndef __IMFMediaEngineNotify_FWD_DEFINED__109#ifndef __IMFMediaEngineNotify_FWD_DEFINED__
70#define __IMFMediaEngineNotify_FWD_DEFINED__110#define __IMFMediaEngineNotify_FWD_DEFINED__
71typedef interface IMFMediaEngineNotify IMFMediaEngineNotify;111typedef interface IMFMediaEngineNotify IMFMediaEngineNotify;
...@@ -90,6 +130,54 @@ interface IMFMediaEngineExtension;...@@ -90,6 +130,54 @@ interface IMFMediaEngineExtension;
90#endif /* __cplusplus */130#endif /* __cplusplus */
91#endif131#endif
92132
133#ifndef __IMFMediaKeySessionNotify_FWD_DEFINED__
134#define __IMFMediaKeySessionNotify_FWD_DEFINED__
135typedef interface IMFMediaKeySessionNotify IMFMediaKeySessionNotify;
136#ifdef __cplusplus
137interface IMFMediaKeySessionNotify;
138#endif /* __cplusplus */
139#endif
140
141#ifndef __IMFMediaKeySession_FWD_DEFINED__
142#define __IMFMediaKeySession_FWD_DEFINED__
143typedef interface IMFMediaKeySession IMFMediaKeySession;
144#ifdef __cplusplus
145interface IMFMediaKeySession;
146#endif /* __cplusplus */
147#endif
148
149#ifndef __IMFCdmSuspendNotify_FWD_DEFINED__
150#define __IMFCdmSuspendNotify_FWD_DEFINED__
151typedef interface IMFCdmSuspendNotify IMFCdmSuspendNotify;
152#ifdef __cplusplus
153interface IMFCdmSuspendNotify;
154#endif /* __cplusplus */
155#endif
156
157#ifndef __IMFMediaKeys_FWD_DEFINED__
158#define __IMFMediaKeys_FWD_DEFINED__
159typedef interface IMFMediaKeys IMFMediaKeys;
160#ifdef __cplusplus
161interface IMFMediaKeys;
162#endif /* __cplusplus */
163#endif
164
165#ifndef __IMFMediaEngineClassFactoryEx_FWD_DEFINED__
166#define __IMFMediaEngineClassFactoryEx_FWD_DEFINED__
167typedef interface IMFMediaEngineClassFactoryEx IMFMediaEngineClassFactoryEx;
168#ifdef __cplusplus
169interface IMFMediaEngineClassFactoryEx;
170#endif /* __cplusplus */
171#endif
172
173#ifndef __IMFMediaEngineClassFactory2_FWD_DEFINED__
174#define __IMFMediaEngineClassFactory2_FWD_DEFINED__
175typedef interface IMFMediaEngineClassFactory2 IMFMediaEngineClassFactory2;
176#ifdef __cplusplus
177interface IMFMediaEngineClassFactory2;
178#endif /* __cplusplus */
179#endif
180
93/* Headers for imported files */181/* Headers for imported files */
94182
95#include <mfidl.h>183#include <mfidl.h>
...@@ -2062,77 +2150,92 @@ static inline HRESULT IMFMediaEngineClassFactory_CreateError(IMFMediaEngineClass...@@ -2062,77 +2150,92 @@ static inline HRESULT IMFMediaEngineClassFactory_CreateError(IMFMediaEngineClass
2062#endif /* __IMFMediaEngineClassFactory_INTERFACE_DEFINED__ */2150#endif /* __IMFMediaEngineClassFactory_INTERFACE_DEFINED__ */
20632151
2064/*****************************************************************************2152/*****************************************************************************
2065 * IMFMediaEngineNotify interface2153 * IMFMediaSourceExtensionNotify interface
2066 */2154 */
2067#ifndef __IMFMediaEngineNotify_INTERFACE_DEFINED__2155#ifndef __IMFMediaSourceExtensionNotify_INTERFACE_DEFINED__
2068#define __IMFMediaEngineNotify_INTERFACE_DEFINED__2156#define __IMFMediaSourceExtensionNotify_INTERFACE_DEFINED__
20692157
2070DEFINE_GUID(IID_IMFMediaEngineNotify, 0xfee7c112, 0xe776, 0x42b5, 0x9b,0xbf, 0x00,0x48,0x52,0x4e,0x2b,0xd5);2158DEFINE_GUID(IID_IMFMediaSourceExtensionNotify, 0xa7901327, 0x05dd, 0x4469, 0xa7,0xb7, 0x0e,0x01,0x97,0x9e,0x36,0x1d);
2071#if defined(__cplusplus) && !defined(CINTERFACE)2159#if defined(__cplusplus) && !defined(CINTERFACE)
2072MIDL_INTERFACE("fee7c112-e776-42b5-9bbf-0048524e2bd5")2160MIDL_INTERFACE("a7901327-05dd-4469-a7b7-0e01979e361d")
2073IMFMediaEngineNotify : public IUnknown2161IMFMediaSourceExtensionNotify : public IUnknown
2074{2162{
2075 virtual HRESULT STDMETHODCALLTYPE EventNotify(2163 virtual void STDMETHODCALLTYPE OnSourceOpen(
2076 DWORD event,2164 ) = 0;
2077 DWORD_PTR param1,2165
2078 DWORD param2) = 0;2166 virtual void STDMETHODCALLTYPE OnSourceEnded(
2167 ) = 0;
2168
2169 virtual void STDMETHODCALLTYPE OnSourceClose(
2170 ) = 0;
20792171
2080};2172};
2081#ifdef __CRT_UUID_DECL2173#ifdef __CRT_UUID_DECL
2082__CRT_UUID_DECL(IMFMediaEngineNotify, 0xfee7c112, 0xe776, 0x42b5, 0x9b,0xbf, 0x00,0x48,0x52,0x4e,0x2b,0xd5)2174__CRT_UUID_DECL(IMFMediaSourceExtensionNotify, 0xa7901327, 0x05dd, 0x4469, 0xa7,0xb7, 0x0e,0x01,0x97,0x9e,0x36,0x1d)
2083#endif2175#endif
2084#else2176#else
2085typedef struct IMFMediaEngineNotifyVtbl {2177typedef struct IMFMediaSourceExtensionNotifyVtbl {
2086 BEGIN_INTERFACE2178 BEGIN_INTERFACE
20872179
2088 /*** IUnknown methods ***/2180 /*** IUnknown methods ***/
2089 HRESULT (STDMETHODCALLTYPE *QueryInterface)(2181 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2090 IMFMediaEngineNotify *This,2182 IMFMediaSourceExtensionNotify *This,
2091 REFIID riid,2183 REFIID riid,
2092 void **ppvObject);2184 void **ppvObject);
20932185
2094 ULONG (STDMETHODCALLTYPE *AddRef)(2186 ULONG (STDMETHODCALLTYPE *AddRef)(
2095 IMFMediaEngineNotify *This);2187 IMFMediaSourceExtensionNotify *This);
20962188
2097 ULONG (STDMETHODCALLTYPE *Release)(2189 ULONG (STDMETHODCALLTYPE *Release)(
2098 IMFMediaEngineNotify *This);2190 IMFMediaSourceExtensionNotify *This);
20992191
2100 /*** IMFMediaEngineNotify methods ***/2192 /*** IMFMediaSourceExtensionNotify methods ***/
2101 HRESULT (STDMETHODCALLTYPE *EventNotify)(2193 void (STDMETHODCALLTYPE *OnSourceOpen)(
2102 IMFMediaEngineNotify *This,2194 IMFMediaSourceExtensionNotify *This);
2103 DWORD event,2195
2104 DWORD_PTR param1,2196 void (STDMETHODCALLTYPE *OnSourceEnded)(
2105 DWORD param2);2197 IMFMediaSourceExtensionNotify *This);
2198
2199 void (STDMETHODCALLTYPE *OnSourceClose)(
2200 IMFMediaSourceExtensionNotify *This);
21062201
2107 END_INTERFACE2202 END_INTERFACE
2108} IMFMediaEngineNotifyVtbl;2203} IMFMediaSourceExtensionNotifyVtbl;
21092204
2110interface IMFMediaEngineNotify {2205interface IMFMediaSourceExtensionNotify {
2111 CONST_VTBL IMFMediaEngineNotifyVtbl* lpVtbl;2206 CONST_VTBL IMFMediaSourceExtensionNotifyVtbl* lpVtbl;
2112};2207};
21132208
2114#ifdef COBJMACROS2209#ifdef COBJMACROS
2115#ifndef WIDL_C_INLINE_WRAPPERS2210#ifndef WIDL_C_INLINE_WRAPPERS
2116/*** IUnknown methods ***/2211/*** IUnknown methods ***/
2117#define IMFMediaEngineNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)2212#define IMFMediaSourceExtensionNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2118#define IMFMediaEngineNotify_AddRef(This) (This)->lpVtbl->AddRef(This)2213#define IMFMediaSourceExtensionNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
2119#define IMFMediaEngineNotify_Release(This) (This)->lpVtbl->Release(This)2214#define IMFMediaSourceExtensionNotify_Release(This) (This)->lpVtbl->Release(This)
2120/*** IMFMediaEngineNotify methods ***/2215/*** IMFMediaSourceExtensionNotify methods ***/
2121#define IMFMediaEngineNotify_EventNotify(This,event,param1,param2) (This)->lpVtbl->EventNotify(This,event,param1,param2)2216#define IMFMediaSourceExtensionNotify_OnSourceOpen(This) (This)->lpVtbl->OnSourceOpen(This)
2217#define IMFMediaSourceExtensionNotify_OnSourceEnded(This) (This)->lpVtbl->OnSourceEnded(This)
2218#define IMFMediaSourceExtensionNotify_OnSourceClose(This) (This)->lpVtbl->OnSourceClose(This)
2122#else2219#else
2123/*** IUnknown methods ***/2220/*** IUnknown methods ***/
2124static inline HRESULT IMFMediaEngineNotify_QueryInterface(IMFMediaEngineNotify* This,REFIID riid,void **ppvObject) {2221static inline HRESULT IMFMediaSourceExtensionNotify_QueryInterface(IMFMediaSourceExtensionNotify* This,REFIID riid,void **ppvObject) {
2125 return This->lpVtbl->QueryInterface(This,riid,ppvObject);2222 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2126}2223}
2127static inline ULONG IMFMediaEngineNotify_AddRef(IMFMediaEngineNotify* This) {2224static inline ULONG IMFMediaSourceExtensionNotify_AddRef(IMFMediaSourceExtensionNotify* This) {
2128 return This->lpVtbl->AddRef(This);2225 return This->lpVtbl->AddRef(This);
2129}2226}
2130static inline ULONG IMFMediaEngineNotify_Release(IMFMediaEngineNotify* This) {2227static inline ULONG IMFMediaSourceExtensionNotify_Release(IMFMediaSourceExtensionNotify* This) {
2131 return This->lpVtbl->Release(This);2228 return This->lpVtbl->Release(This);
2132}2229}
2133/*** IMFMediaEngineNotify methods ***/2230/*** IMFMediaSourceExtensionNotify methods ***/
2134static inline HRESULT IMFMediaEngineNotify_EventNotify(IMFMediaEngineNotify* This,DWORD event,DWORD_PTR param1,DWORD param2) {2231static inline void IMFMediaSourceExtensionNotify_OnSourceOpen(IMFMediaSourceExtensionNotify* This) {
2135 return This->lpVtbl->EventNotify(This,event,param1,param2);2232 This->lpVtbl->OnSourceOpen(This);
2233}
2234static inline void IMFMediaSourceExtensionNotify_OnSourceEnded(IMFMediaSourceExtensionNotify* This) {
2235 This->lpVtbl->OnSourceEnded(This);
2236}
2237static inline void IMFMediaSourceExtensionNotify_OnSourceClose(IMFMediaSourceExtensionNotify* This) {
2238 This->lpVtbl->OnSourceClose(This);
2136}2239}
2137#endif2240#endif
2138#endif2241#endif
...@@ -2140,87 +2243,116 @@ static inline HRESULT IMFMediaEngineNotify_EventNotify(IMFMediaEngineNotify* Thi...@@ -2140,87 +2243,116 @@ static inline HRESULT IMFMediaEngineNotify_EventNotify(IMFMediaEngineNotify* Thi
2140#endif2243#endif
21412244
21422245
2143#endif /* __IMFMediaEngineNotify_INTERFACE_DEFINED__ */2246#endif /* __IMFMediaSourceExtensionNotify_INTERFACE_DEFINED__ */
21442247
2145/*****************************************************************************2248/*****************************************************************************
2146 * IMFMediaEngineAudioEndpointId interface2249 * IMFSourceBufferNotify interface
2147 */2250 */
2148#ifndef __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__2251#ifndef __IMFSourceBufferNotify_INTERFACE_DEFINED__
2149#define __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__2252#define __IMFSourceBufferNotify_INTERFACE_DEFINED__
21502253
2151DEFINE_GUID(IID_IMFMediaEngineAudioEndpointId, 0x7a3bac98, 0x0e76, 0x49fb, 0x8c,0x20, 0x8a,0x86,0xfd,0x98,0xea,0xf2);2254DEFINE_GUID(IID_IMFSourceBufferNotify, 0x87e47623, 0x2ceb, 0x45d6, 0x9b,0x88, 0xd8,0x52,0x0c,0x4d,0xcb,0xbc);
2152#if defined(__cplusplus) && !defined(CINTERFACE)2255#if defined(__cplusplus) && !defined(CINTERFACE)
2153MIDL_INTERFACE("7a3bac98-0e76-49fb-8c20-8a86fd98eaf2")2256MIDL_INTERFACE("87e47623-2ceb-45d6-9b88-d8520c4dcbbc")
2154IMFMediaEngineAudioEndpointId : public IUnknown2257IMFSourceBufferNotify : public IUnknown
2155{2258{
2156 virtual HRESULT STDMETHODCALLTYPE SetAudioEndpointId(2259 virtual void STDMETHODCALLTYPE OnUpdateStart(
2157 LPCWSTR id) = 0;2260 ) = 0;
21582261
2159 virtual HRESULT STDMETHODCALLTYPE GetAudioEndpointId(2262 virtual void STDMETHODCALLTYPE OnAbort(
2160 LPWSTR *id) = 0;2263 ) = 0;
2264
2265 virtual void STDMETHODCALLTYPE OnError(
2266 HRESULT hr) = 0;
2267
2268 virtual void STDMETHODCALLTYPE OnUpdate(
2269 ) = 0;
2270
2271 virtual void STDMETHODCALLTYPE OnUpdateEnd(
2272 ) = 0;
21612273
2162};2274};
2163#ifdef __CRT_UUID_DECL2275#ifdef __CRT_UUID_DECL
2164__CRT_UUID_DECL(IMFMediaEngineAudioEndpointId, 0x7a3bac98, 0x0e76, 0x49fb, 0x8c,0x20, 0x8a,0x86,0xfd,0x98,0xea,0xf2)2276__CRT_UUID_DECL(IMFSourceBufferNotify, 0x87e47623, 0x2ceb, 0x45d6, 0x9b,0x88, 0xd8,0x52,0x0c,0x4d,0xcb,0xbc)
2165#endif2277#endif
2166#else2278#else
2167typedef struct IMFMediaEngineAudioEndpointIdVtbl {2279typedef struct IMFSourceBufferNotifyVtbl {
2168 BEGIN_INTERFACE2280 BEGIN_INTERFACE
21692281
2170 /*** IUnknown methods ***/2282 /*** IUnknown methods ***/
2171 HRESULT (STDMETHODCALLTYPE *QueryInterface)(2283 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2172 IMFMediaEngineAudioEndpointId *This,2284 IMFSourceBufferNotify *This,
2173 REFIID riid,2285 REFIID riid,
2174 void **ppvObject);2286 void **ppvObject);
21752287
2176 ULONG (STDMETHODCALLTYPE *AddRef)(2288 ULONG (STDMETHODCALLTYPE *AddRef)(
2177 IMFMediaEngineAudioEndpointId *This);2289 IMFSourceBufferNotify *This);
21782290
2179 ULONG (STDMETHODCALLTYPE *Release)(2291 ULONG (STDMETHODCALLTYPE *Release)(
2180 IMFMediaEngineAudioEndpointId *This);2292 IMFSourceBufferNotify *This);
21812293
2182 /*** IMFMediaEngineAudioEndpointId methods ***/2294 /*** IMFSourceBufferNotify methods ***/
2183 HRESULT (STDMETHODCALLTYPE *SetAudioEndpointId)(2295 void (STDMETHODCALLTYPE *OnUpdateStart)(
2184 IMFMediaEngineAudioEndpointId *This,2296 IMFSourceBufferNotify *This);
2185 LPCWSTR id);
21862297
2187 HRESULT (STDMETHODCALLTYPE *GetAudioEndpointId)(2298 void (STDMETHODCALLTYPE *OnAbort)(
2188 IMFMediaEngineAudioEndpointId *This,2299 IMFSourceBufferNotify *This);
2189 LPWSTR *id);2300
2301 void (STDMETHODCALLTYPE *OnError)(
2302 IMFSourceBufferNotify *This,
2303 HRESULT hr);
2304
2305 void (STDMETHODCALLTYPE *OnUpdate)(
2306 IMFSourceBufferNotify *This);
2307
2308 void (STDMETHODCALLTYPE *OnUpdateEnd)(
2309 IMFSourceBufferNotify *This);
21902310
2191 END_INTERFACE2311 END_INTERFACE
2192} IMFMediaEngineAudioEndpointIdVtbl;2312} IMFSourceBufferNotifyVtbl;
21932313
2194interface IMFMediaEngineAudioEndpointId {2314interface IMFSourceBufferNotify {
2195 CONST_VTBL IMFMediaEngineAudioEndpointIdVtbl* lpVtbl;2315 CONST_VTBL IMFSourceBufferNotifyVtbl* lpVtbl;
2196};2316};
21972317
2198#ifdef COBJMACROS2318#ifdef COBJMACROS
2199#ifndef WIDL_C_INLINE_WRAPPERS2319#ifndef WIDL_C_INLINE_WRAPPERS
2200/*** IUnknown methods ***/2320/*** IUnknown methods ***/
2201#define IMFMediaEngineAudioEndpointId_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)2321#define IMFSourceBufferNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2202#define IMFMediaEngineAudioEndpointId_AddRef(This) (This)->lpVtbl->AddRef(This)2322#define IMFSourceBufferNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
2203#define IMFMediaEngineAudioEndpointId_Release(This) (This)->lpVtbl->Release(This)2323#define IMFSourceBufferNotify_Release(This) (This)->lpVtbl->Release(This)
2204/*** IMFMediaEngineAudioEndpointId methods ***/2324/*** IMFSourceBufferNotify methods ***/
2205#define IMFMediaEngineAudioEndpointId_SetAudioEndpointId(This,id) (This)->lpVtbl->SetAudioEndpointId(This,id)2325#define IMFSourceBufferNotify_OnUpdateStart(This) (This)->lpVtbl->OnUpdateStart(This)
2206#define IMFMediaEngineAudioEndpointId_GetAudioEndpointId(This,id) (This)->lpVtbl->GetAudioEndpointId(This,id)2326#define IMFSourceBufferNotify_OnAbort(This) (This)->lpVtbl->OnAbort(This)
2327#define IMFSourceBufferNotify_OnError(This,hr) (This)->lpVtbl->OnError(This,hr)
2328#define IMFSourceBufferNotify_OnUpdate(This) (This)->lpVtbl->OnUpdate(This)
2329#define IMFSourceBufferNotify_OnUpdateEnd(This) (This)->lpVtbl->OnUpdateEnd(This)
2207#else2330#else
2208/*** IUnknown methods ***/2331/*** IUnknown methods ***/
2209static inline HRESULT IMFMediaEngineAudioEndpointId_QueryInterface(IMFMediaEngineAudioEndpointId* This,REFIID riid,void **ppvObject) {2332static inline HRESULT IMFSourceBufferNotify_QueryInterface(IMFSourceBufferNotify* This,REFIID riid,void **ppvObject) {
2210 return This->lpVtbl->QueryInterface(This,riid,ppvObject);2333 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2211}2334}
2212static inline ULONG IMFMediaEngineAudioEndpointId_AddRef(IMFMediaEngineAudioEndpointId* This) {2335static inline ULONG IMFSourceBufferNotify_AddRef(IMFSourceBufferNotify* This) {
2213 return This->lpVtbl->AddRef(This);2336 return This->lpVtbl->AddRef(This);
2214}2337}
2215static inline ULONG IMFMediaEngineAudioEndpointId_Release(IMFMediaEngineAudioEndpointId* This) {2338static inline ULONG IMFSourceBufferNotify_Release(IMFSourceBufferNotify* This) {
2216 return This->lpVtbl->Release(This);2339 return This->lpVtbl->Release(This);
2217}2340}
2218/*** IMFMediaEngineAudioEndpointId methods ***/2341/*** IMFSourceBufferNotify methods ***/
2219static inline HRESULT IMFMediaEngineAudioEndpointId_SetAudioEndpointId(IMFMediaEngineAudioEndpointId* This,LPCWSTR id) {2342static inline void IMFSourceBufferNotify_OnUpdateStart(IMFSourceBufferNotify* This) {
2220 return This->lpVtbl->SetAudioEndpointId(This,id);2343 This->lpVtbl->OnUpdateStart(This);
2221}2344}
2222static inline HRESULT IMFMediaEngineAudioEndpointId_GetAudioEndpointId(IMFMediaEngineAudioEndpointId* This,LPWSTR *id) {2345static inline void IMFSourceBufferNotify_OnAbort(IMFSourceBufferNotify* This) {
2223 return This->lpVtbl->GetAudioEndpointId(This,id);2346 This->lpVtbl->OnAbort(This);
2347}
2348static inline void IMFSourceBufferNotify_OnError(IMFSourceBufferNotify* This,HRESULT hr) {
2349 This->lpVtbl->OnError(This,hr);
2350}
2351static inline void IMFSourceBufferNotify_OnUpdate(IMFSourceBufferNotify* This) {
2352 This->lpVtbl->OnUpdate(This);
2353}
2354static inline void IMFSourceBufferNotify_OnUpdateEnd(IMFSourceBufferNotify* This) {
2355 This->lpVtbl->OnUpdateEnd(This);
2224}2356}
2225#endif2357#endif
2226#endif2358#endif
...@@ -2228,125 +2360,198 @@ static inline HRESULT IMFMediaEngineAudioEndpointId_GetAudioEndpointId(IMFMediaE...@@ -2228,125 +2360,198 @@ static inline HRESULT IMFMediaEngineAudioEndpointId_GetAudioEndpointId(IMFMediaE
2228#endif2360#endif
22292361
22302362
2231#endif /* __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__ */2363#endif /* __IMFSourceBufferNotify_INTERFACE_DEFINED__ */
22322364
2233/*****************************************************************************2365/*****************************************************************************
2234 * IMFMediaEngineExtension interface2366 * IMFSourceBuffer interface
2235 */2367 */
2236#ifndef __IMFMediaEngineExtension_INTERFACE_DEFINED__2368#ifndef __IMFSourceBuffer_INTERFACE_DEFINED__
2237#define __IMFMediaEngineExtension_INTERFACE_DEFINED__2369#define __IMFSourceBuffer_INTERFACE_DEFINED__
22382370
2239DEFINE_GUID(IID_IMFMediaEngineExtension, 0x2f69d622, 0x20b5, 0x41e9, 0xaf,0xdf, 0x89,0xce,0xd1,0xdd,0xa0,0x4e);2371DEFINE_GUID(IID_IMFSourceBuffer, 0xe2cd3a4b, 0xaf25, 0x4d3d, 0x91,0x10, 0xda,0x0e,0x6f,0x8e,0xe8,0x77);
2240#if defined(__cplusplus) && !defined(CINTERFACE)2372#if defined(__cplusplus) && !defined(CINTERFACE)
2241MIDL_INTERFACE("2f69d622-20b5-41e9-afdf-89ced1dda04e")2373MIDL_INTERFACE("e2cd3a4b-af25-4d3d-9110-da0e6f8ee877")
2242IMFMediaEngineExtension : public IUnknown2374IMFSourceBuffer : public IUnknown
2243{2375{
2244 virtual HRESULT STDMETHODCALLTYPE CanPlayType(2376 virtual WINBOOL STDMETHODCALLTYPE GetUpdating(
2245 WINBOOL audio_only,2377 ) = 0;
2246 BSTR mime_type,
2247 MF_MEDIA_ENGINE_CANPLAY *answer) = 0;
22482378
2249 virtual HRESULT STDMETHODCALLTYPE BeginCreateObject(2379 virtual HRESULT STDMETHODCALLTYPE GetBuffered(
2250 BSTR url,2380 IMFMediaTimeRange **buffered) = 0;
2251 IMFByteStream *bytestream,
2252 MF_OBJECT_TYPE type,
2253 IUnknown **cancel_cookie,
2254 IMFAsyncCallback *callback,
2255 IUnknown *state) = 0;
22562381
2257 virtual HRESULT STDMETHODCALLTYPE CancelObjectCreation(2382 virtual double STDMETHODCALLTYPE GetTimeStampOffset(
2258 IUnknown *cancel_cookie) = 0;2383 ) = 0;
22592384
2260 virtual HRESULT STDMETHODCALLTYPE EndCreateObject(2385 virtual HRESULT STDMETHODCALLTYPE SetTimeStampOffset(
2261 IMFAsyncResult *result,2386 double offset) = 0;
2262 IUnknown **object) = 0;2387
2388 virtual double STDMETHODCALLTYPE GetAppendWindowStart(
2389 ) = 0;
2390
2391 virtual HRESULT STDMETHODCALLTYPE SetAppendWindowStart(
2392 double time) = 0;
2393
2394 virtual double STDMETHODCALLTYPE GetAppendWindowEnd(
2395 ) = 0;
2396
2397 virtual HRESULT STDMETHODCALLTYPE SetAppendWindowEnd(
2398 double time) = 0;
2399
2400 virtual HRESULT STDMETHODCALLTYPE Append(
2401 const BYTE *data,
2402 DWORD len) = 0;
2403
2404 virtual HRESULT STDMETHODCALLTYPE AppendByteStream(
2405 IMFByteStream *stream,
2406 DWORDLONG *max_len) = 0;
2407
2408 virtual HRESULT STDMETHODCALLTYPE Abort(
2409 ) = 0;
2410
2411 virtual HRESULT STDMETHODCALLTYPE Remove(
2412 double start,
2413 double end) = 0;
22632414
2264};2415};
2265#ifdef __CRT_UUID_DECL2416#ifdef __CRT_UUID_DECL
2266__CRT_UUID_DECL(IMFMediaEngineExtension, 0x2f69d622, 0x20b5, 0x41e9, 0xaf,0xdf, 0x89,0xce,0xd1,0xdd,0xa0,0x4e)2417__CRT_UUID_DECL(IMFSourceBuffer, 0xe2cd3a4b, 0xaf25, 0x4d3d, 0x91,0x10, 0xda,0x0e,0x6f,0x8e,0xe8,0x77)
2267#endif2418#endif
2268#else2419#else
2269typedef struct IMFMediaEngineExtensionVtbl {2420typedef struct IMFSourceBufferVtbl {
2270 BEGIN_INTERFACE2421 BEGIN_INTERFACE
22712422
2272 /*** IUnknown methods ***/2423 /*** IUnknown methods ***/
2273 HRESULT (STDMETHODCALLTYPE *QueryInterface)(2424 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2274 IMFMediaEngineExtension *This,2425 IMFSourceBuffer *This,
2275 REFIID riid,2426 REFIID riid,
2276 void **ppvObject);2427 void **ppvObject);
22772428
2278 ULONG (STDMETHODCALLTYPE *AddRef)(2429 ULONG (STDMETHODCALLTYPE *AddRef)(
2279 IMFMediaEngineExtension *This);2430 IMFSourceBuffer *This);
22802431
2281 ULONG (STDMETHODCALLTYPE *Release)(2432 ULONG (STDMETHODCALLTYPE *Release)(
2282 IMFMediaEngineExtension *This);2433 IMFSourceBuffer *This);
22832434
2284 /*** IMFMediaEngineExtension methods ***/2435 /*** IMFSourceBuffer methods ***/
2285 HRESULT (STDMETHODCALLTYPE *CanPlayType)(2436 WINBOOL (STDMETHODCALLTYPE *GetUpdating)(
2286 IMFMediaEngineExtension *This,2437 IMFSourceBuffer *This);
2287 WINBOOL audio_only,
2288 BSTR mime_type,
2289 MF_MEDIA_ENGINE_CANPLAY *answer);
22902438
2291 HRESULT (STDMETHODCALLTYPE *BeginCreateObject)(2439 HRESULT (STDMETHODCALLTYPE *GetBuffered)(
2292 IMFMediaEngineExtension *This,2440 IMFSourceBuffer *This,
2293 BSTR url,2441 IMFMediaTimeRange **buffered);
2294 IMFByteStream *bytestream,
2295 MF_OBJECT_TYPE type,
2296 IUnknown **cancel_cookie,
2297 IMFAsyncCallback *callback,
2298 IUnknown *state);
22992442
2300 HRESULT (STDMETHODCALLTYPE *CancelObjectCreation)(2443 double (STDMETHODCALLTYPE *GetTimeStampOffset)(
2301 IMFMediaEngineExtension *This,2444 IMFSourceBuffer *This);
2302 IUnknown *cancel_cookie);
23032445
2304 HRESULT (STDMETHODCALLTYPE *EndCreateObject)(2446 HRESULT (STDMETHODCALLTYPE *SetTimeStampOffset)(
2305 IMFMediaEngineExtension *This,2447 IMFSourceBuffer *This,
2306 IMFAsyncResult *result,2448 double offset);
2307 IUnknown **object);2449
2450 double (STDMETHODCALLTYPE *GetAppendWindowStart)(
2451 IMFSourceBuffer *This);
2452
2453 HRESULT (STDMETHODCALLTYPE *SetAppendWindowStart)(
2454 IMFSourceBuffer *This,
2455 double time);
2456
2457 double (STDMETHODCALLTYPE *GetAppendWindowEnd)(
2458 IMFSourceBuffer *This);
2459
2460 HRESULT (STDMETHODCALLTYPE *SetAppendWindowEnd)(
2461 IMFSourceBuffer *This,
2462 double time);
2463
2464 HRESULT (STDMETHODCALLTYPE *Append)(
2465 IMFSourceBuffer *This,
2466 const BYTE *data,
2467 DWORD len);
2468
2469 HRESULT (STDMETHODCALLTYPE *AppendByteStream)(
2470 IMFSourceBuffer *This,
2471 IMFByteStream *stream,
2472 DWORDLONG *max_len);
2473
2474 HRESULT (STDMETHODCALLTYPE *Abort)(
2475 IMFSourceBuffer *This);
2476
2477 HRESULT (STDMETHODCALLTYPE *Remove)(
2478 IMFSourceBuffer *This,
2479 double start,
2480 double end);
23082481
2309 END_INTERFACE2482 END_INTERFACE
2310} IMFMediaEngineExtensionVtbl;2483} IMFSourceBufferVtbl;
23112484
2312interface IMFMediaEngineExtension {2485interface IMFSourceBuffer {
2313 CONST_VTBL IMFMediaEngineExtensionVtbl* lpVtbl;2486 CONST_VTBL IMFSourceBufferVtbl* lpVtbl;
2314};2487};
23152488
2316#ifdef COBJMACROS2489#ifdef COBJMACROS
2317#ifndef WIDL_C_INLINE_WRAPPERS2490#ifndef WIDL_C_INLINE_WRAPPERS
2318/*** IUnknown methods ***/2491/*** IUnknown methods ***/
2319#define IMFMediaEngineExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)2492#define IMFSourceBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2320#define IMFMediaEngineExtension_AddRef(This) (This)->lpVtbl->AddRef(This)2493#define IMFSourceBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
2321#define IMFMediaEngineExtension_Release(This) (This)->lpVtbl->Release(This)2494#define IMFSourceBuffer_Release(This) (This)->lpVtbl->Release(This)
2322/*** IMFMediaEngineExtension methods ***/2495/*** IMFSourceBuffer methods ***/
2323#define IMFMediaEngineExtension_CanPlayType(This,audio_only,mime_type,answer) (This)->lpVtbl->CanPlayType(This,audio_only,mime_type,answer)2496#define IMFSourceBuffer_GetUpdating(This) (This)->lpVtbl->GetUpdating(This)
2324#define IMFMediaEngineExtension_BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state) (This)->lpVtbl->BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state)2497#define IMFSourceBuffer_GetBuffered(This,buffered) (This)->lpVtbl->GetBuffered(This,buffered)
2325#define IMFMediaEngineExtension_CancelObjectCreation(This,cancel_cookie) (This)->lpVtbl->CancelObjectCreation(This,cancel_cookie)2498#define IMFSourceBuffer_GetTimeStampOffset(This) (This)->lpVtbl->GetTimeStampOffset(This)
2326#define IMFMediaEngineExtension_EndCreateObject(This,result,object) (This)->lpVtbl->EndCreateObject(This,result,object)2499#define IMFSourceBuffer_SetTimeStampOffset(This,offset) (This)->lpVtbl->SetTimeStampOffset(This,offset)
2500#define IMFSourceBuffer_GetAppendWindowStart(This) (This)->lpVtbl->GetAppendWindowStart(This)
2501#define IMFSourceBuffer_SetAppendWindowStart(This,time) (This)->lpVtbl->SetAppendWindowStart(This,time)
2502#define IMFSourceBuffer_GetAppendWindowEnd(This) (This)->lpVtbl->GetAppendWindowEnd(This)
2503#define IMFSourceBuffer_SetAppendWindowEnd(This,time) (This)->lpVtbl->SetAppendWindowEnd(This,time)
2504#define IMFSourceBuffer_Append(This,data,len) (This)->lpVtbl->Append(This,data,len)
2505#define IMFSourceBuffer_AppendByteStream(This,stream,max_len) (This)->lpVtbl->AppendByteStream(This,stream,max_len)
2506#define IMFSourceBuffer_Abort(This) (This)->lpVtbl->Abort(This)
2507#define IMFSourceBuffer_Remove(This,start,end) (This)->lpVtbl->Remove(This,start,end)
2327#else2508#else
2328/*** IUnknown methods ***/2509/*** IUnknown methods ***/
2329static inline HRESULT IMFMediaEngineExtension_QueryInterface(IMFMediaEngineExtension* This,REFIID riid,void **ppvObject) {2510static inline HRESULT IMFSourceBuffer_QueryInterface(IMFSourceBuffer* This,REFIID riid,void **ppvObject) {
2330 return This->lpVtbl->QueryInterface(This,riid,ppvObject);2511 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2331}2512}
2332static inline ULONG IMFMediaEngineExtension_AddRef(IMFMediaEngineExtension* This) {2513static inline ULONG IMFSourceBuffer_AddRef(IMFSourceBuffer* This) {
2333 return This->lpVtbl->AddRef(This);2514 return This->lpVtbl->AddRef(This);
2334}2515}
2335static inline ULONG IMFMediaEngineExtension_Release(IMFMediaEngineExtension* This) {2516static inline ULONG IMFSourceBuffer_Release(IMFSourceBuffer* This) {
2336 return This->lpVtbl->Release(This);2517 return This->lpVtbl->Release(This);
2337}2518}
2338/*** IMFMediaEngineExtension methods ***/2519/*** IMFSourceBuffer methods ***/
2339static inline HRESULT IMFMediaEngineExtension_CanPlayType(IMFMediaEngineExtension* This,WINBOOL audio_only,BSTR mime_type,MF_MEDIA_ENGINE_CANPLAY *answer) {2520static inline WINBOOL IMFSourceBuffer_GetUpdating(IMFSourceBuffer* This) {
2340 return This->lpVtbl->CanPlayType(This,audio_only,mime_type,answer);2521 return This->lpVtbl->GetUpdating(This);
2341}2522}
2342static inline HRESULT IMFMediaEngineExtension_BeginCreateObject(IMFMediaEngineExtension* This,BSTR url,IMFByteStream *bytestream,MF_OBJECT_TYPE type,IUnknown **cancel_cookie,IMFAsyncCallback *callback,IUnknown *state) {2523static inline HRESULT IMFSourceBuffer_GetBuffered(IMFSourceBuffer* This,IMFMediaTimeRange **buffered) {
2343 return This->lpVtbl->BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state);2524 return This->lpVtbl->GetBuffered(This,buffered);
2344}2525}
2345static inline HRESULT IMFMediaEngineExtension_CancelObjectCreation(IMFMediaEngineExtension* This,IUnknown *cancel_cookie) {2526static inline double IMFSourceBuffer_GetTimeStampOffset(IMFSourceBuffer* This) {
2346 return This->lpVtbl->CancelObjectCreation(This,cancel_cookie);2527 return This->lpVtbl->GetTimeStampOffset(This);
2347}2528}
2348static inline HRESULT IMFMediaEngineExtension_EndCreateObject(IMFMediaEngineExtension* This,IMFAsyncResult *result,IUnknown **object) {2529static inline HRESULT IMFSourceBuffer_SetTimeStampOffset(IMFSourceBuffer* This,double offset) {
2349 return This->lpVtbl->EndCreateObject(This,result,object);2530 return This->lpVtbl->SetTimeStampOffset(This,offset);
2531}
2532static inline double IMFSourceBuffer_GetAppendWindowStart(IMFSourceBuffer* This) {
2533 return This->lpVtbl->GetAppendWindowStart(This);
2534}
2535static inline HRESULT IMFSourceBuffer_SetAppendWindowStart(IMFSourceBuffer* This,double time) {
2536 return This->lpVtbl->SetAppendWindowStart(This,time);
2537}
2538static inline double IMFSourceBuffer_GetAppendWindowEnd(IMFSourceBuffer* This) {
2539 return This->lpVtbl->GetAppendWindowEnd(This);
2540}
2541static inline HRESULT IMFSourceBuffer_SetAppendWindowEnd(IMFSourceBuffer* This,double time) {
2542 return This->lpVtbl->SetAppendWindowEnd(This,time);
2543}
2544static inline HRESULT IMFSourceBuffer_Append(IMFSourceBuffer* This,const BYTE *data,DWORD len) {
2545 return This->lpVtbl->Append(This,data,len);
2546}
2547static inline HRESULT IMFSourceBuffer_AppendByteStream(IMFSourceBuffer* This,IMFByteStream *stream,DWORDLONG *max_len) {
2548 return This->lpVtbl->AppendByteStream(This,stream,max_len);
2549}
2550static inline HRESULT IMFSourceBuffer_Abort(IMFSourceBuffer* This) {
2551 return This->lpVtbl->Abort(This);
2552}
2553static inline HRESULT IMFSourceBuffer_Remove(IMFSourceBuffer* This,double start,double end) {
2554 return This->lpVtbl->Remove(This,start,end);
2350}2555}
2351#endif2556#endif
2352#endif2557#endif
...@@ -2354,7 +2559,1234 @@ static inline HRESULT IMFMediaEngineExtension_EndCreateObject(IMFMediaEngineExte...@@ -2354,7 +2559,1234 @@ static inline HRESULT IMFMediaEngineExtension_EndCreateObject(IMFMediaEngineExte
2354#endif2559#endif
23552560
23562561
2357#endif /* __IMFMediaEngineExtension_INTERFACE_DEFINED__ */2562#endif /* __IMFSourceBuffer_INTERFACE_DEFINED__ */
2563
2564/*****************************************************************************
2565 * IMFSourceBufferList interface
2566 */
2567#ifndef __IMFSourceBufferList_INTERFACE_DEFINED__
2568#define __IMFSourceBufferList_INTERFACE_DEFINED__
2569
2570DEFINE_GUID(IID_IMFSourceBufferList, 0x249981f8, 0x8325, 0x41f3, 0xb8,0x0c, 0x3b,0x9e,0x3a,0xad,0x0c,0xbe);
2571#if defined(__cplusplus) && !defined(CINTERFACE)
2572MIDL_INTERFACE("249981f8-8325-41f3-b80c-3b9e3aad0cbe")
2573IMFSourceBufferList : public IUnknown
2574{
2575 virtual DWORD STDMETHODCALLTYPE GetLength(
2576 ) = 0;
2577
2578 virtual IMFSourceBuffer * STDMETHODCALLTYPE GetSourceBuffer(
2579 DWORD index) = 0;
2580
2581};
2582#ifdef __CRT_UUID_DECL
2583__CRT_UUID_DECL(IMFSourceBufferList, 0x249981f8, 0x8325, 0x41f3, 0xb8,0x0c, 0x3b,0x9e,0x3a,0xad,0x0c,0xbe)
2584#endif
2585#else
2586typedef struct IMFSourceBufferListVtbl {
2587 BEGIN_INTERFACE
2588
2589 /*** IUnknown methods ***/
2590 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2591 IMFSourceBufferList *This,
2592 REFIID riid,
2593 void **ppvObject);
2594
2595 ULONG (STDMETHODCALLTYPE *AddRef)(
2596 IMFSourceBufferList *This);
2597
2598 ULONG (STDMETHODCALLTYPE *Release)(
2599 IMFSourceBufferList *This);
2600
2601 /*** IMFSourceBufferList methods ***/
2602 DWORD (STDMETHODCALLTYPE *GetLength)(
2603 IMFSourceBufferList *This);
2604
2605 IMFSourceBuffer * (STDMETHODCALLTYPE *GetSourceBuffer)(
2606 IMFSourceBufferList *This,
2607 DWORD index);
2608
2609 END_INTERFACE
2610} IMFSourceBufferListVtbl;
2611
2612interface IMFSourceBufferList {
2613 CONST_VTBL IMFSourceBufferListVtbl* lpVtbl;
2614};
2615
2616#ifdef COBJMACROS
2617#ifndef WIDL_C_INLINE_WRAPPERS
2618/*** IUnknown methods ***/
2619#define IMFSourceBufferList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2620#define IMFSourceBufferList_AddRef(This) (This)->lpVtbl->AddRef(This)
2621#define IMFSourceBufferList_Release(This) (This)->lpVtbl->Release(This)
2622/*** IMFSourceBufferList methods ***/
2623#define IMFSourceBufferList_GetLength(This) (This)->lpVtbl->GetLength(This)
2624#define IMFSourceBufferList_GetSourceBuffer(This,index) (This)->lpVtbl->GetSourceBuffer(This,index)
2625#else
2626/*** IUnknown methods ***/
2627static inline HRESULT IMFSourceBufferList_QueryInterface(IMFSourceBufferList* This,REFIID riid,void **ppvObject) {
2628 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2629}
2630static inline ULONG IMFSourceBufferList_AddRef(IMFSourceBufferList* This) {
2631 return This->lpVtbl->AddRef(This);
2632}
2633static inline ULONG IMFSourceBufferList_Release(IMFSourceBufferList* This) {
2634 return This->lpVtbl->Release(This);
2635}
2636/*** IMFSourceBufferList methods ***/
2637static inline DWORD IMFSourceBufferList_GetLength(IMFSourceBufferList* This) {
2638 return This->lpVtbl->GetLength(This);
2639}
2640static inline IMFSourceBuffer * IMFSourceBufferList_GetSourceBuffer(IMFSourceBufferList* This,DWORD index) {
2641 return This->lpVtbl->GetSourceBuffer(This,index);
2642}
2643#endif
2644#endif
2645
2646#endif
2647
2648
2649#endif /* __IMFSourceBufferList_INTERFACE_DEFINED__ */
2650
2651typedef enum MF_MSE_READY {
2652 MF_MSE_READY_CLOSED = 1,
2653 MF_MSE_READY_OPEN = 2,
2654 MF_MSE_READY_ENDED = 3
2655} MF_MSE_READY;
2656typedef enum MF_MSE_ERROR {
2657 MF_MSE_ERROR_NOERROR = 0,
2658 MF_MSE_ERROR_NETWORK = 1,
2659 MF_MSE_ERROR_DECODE = 2,
2660 MF_MSE_ERROR_UNKNOWN_ERROR = 3
2661} MF_MSE_ERROR;
2662/*****************************************************************************
2663 * IMFMediaSourceExtension interface
2664 */
2665#ifndef __IMFMediaSourceExtension_INTERFACE_DEFINED__
2666#define __IMFMediaSourceExtension_INTERFACE_DEFINED__
2667
2668DEFINE_GUID(IID_IMFMediaSourceExtension, 0xe467b94e, 0xa713, 0x4562, 0xa8,0x02, 0x81,0x6a,0x42,0xe9,0x00,0x8a);
2669#if defined(__cplusplus) && !defined(CINTERFACE)
2670MIDL_INTERFACE("e467b94e-a713-4562-a802-816a42e9008a")
2671IMFMediaSourceExtension : public IUnknown
2672{
2673 virtual IMFSourceBufferList * STDMETHODCALLTYPE GetSourceBuffers(
2674 ) = 0;
2675
2676 virtual IMFSourceBufferList * STDMETHODCALLTYPE GetActiveSourceBuffers(
2677 ) = 0;
2678
2679 virtual MF_MSE_READY STDMETHODCALLTYPE GetReadyState(
2680 ) = 0;
2681
2682 virtual double STDMETHODCALLTYPE GetDuration(
2683 ) = 0;
2684
2685 virtual HRESULT STDMETHODCALLTYPE SetDuration(
2686 double duration) = 0;
2687
2688 virtual HRESULT STDMETHODCALLTYPE AddSourceBuffer(
2689 BSTR type,
2690 IMFSourceBufferNotify *notify,
2691 IMFSourceBuffer **source_buffer) = 0;
2692
2693 virtual HRESULT STDMETHODCALLTYPE RemoveSourceBuffer(
2694 IMFSourceBuffer *source_buffer) = 0;
2695
2696 virtual HRESULT STDMETHODCALLTYPE SetEndOfStream(
2697 MF_MSE_ERROR error) = 0;
2698
2699 virtual WINBOOL STDMETHODCALLTYPE IsTypeSupported(
2700 BSTR type) = 0;
2701
2702 virtual IMFSourceBuffer * STDMETHODCALLTYPE GetSourceBuffer(
2703 DWORD stream_index) = 0;
2704
2705};
2706#ifdef __CRT_UUID_DECL
2707__CRT_UUID_DECL(IMFMediaSourceExtension, 0xe467b94e, 0xa713, 0x4562, 0xa8,0x02, 0x81,0x6a,0x42,0xe9,0x00,0x8a)
2708#endif
2709#else
2710typedef struct IMFMediaSourceExtensionVtbl {
2711 BEGIN_INTERFACE
2712
2713 /*** IUnknown methods ***/
2714 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2715 IMFMediaSourceExtension *This,
2716 REFIID riid,
2717 void **ppvObject);
2718
2719 ULONG (STDMETHODCALLTYPE *AddRef)(
2720 IMFMediaSourceExtension *This);
2721
2722 ULONG (STDMETHODCALLTYPE *Release)(
2723 IMFMediaSourceExtension *This);
2724
2725 /*** IMFMediaSourceExtension methods ***/
2726 IMFSourceBufferList * (STDMETHODCALLTYPE *GetSourceBuffers)(
2727 IMFMediaSourceExtension *This);
2728
2729 IMFSourceBufferList * (STDMETHODCALLTYPE *GetActiveSourceBuffers)(
2730 IMFMediaSourceExtension *This);
2731
2732 MF_MSE_READY (STDMETHODCALLTYPE *GetReadyState)(
2733 IMFMediaSourceExtension *This);
2734
2735 double (STDMETHODCALLTYPE *GetDuration)(
2736 IMFMediaSourceExtension *This);
2737
2738 HRESULT (STDMETHODCALLTYPE *SetDuration)(
2739 IMFMediaSourceExtension *This,
2740 double duration);
2741
2742 HRESULT (STDMETHODCALLTYPE *AddSourceBuffer)(
2743 IMFMediaSourceExtension *This,
2744 BSTR type,
2745 IMFSourceBufferNotify *notify,
2746 IMFSourceBuffer **source_buffer);
2747
2748 HRESULT (STDMETHODCALLTYPE *RemoveSourceBuffer)(
2749 IMFMediaSourceExtension *This,
2750 IMFSourceBuffer *source_buffer);
2751
2752 HRESULT (STDMETHODCALLTYPE *SetEndOfStream)(
2753 IMFMediaSourceExtension *This,
2754 MF_MSE_ERROR error);
2755
2756 WINBOOL (STDMETHODCALLTYPE *IsTypeSupported)(
2757 IMFMediaSourceExtension *This,
2758 BSTR type);
2759
2760 IMFSourceBuffer * (STDMETHODCALLTYPE *GetSourceBuffer)(
2761 IMFMediaSourceExtension *This,
2762 DWORD stream_index);
2763
2764 END_INTERFACE
2765} IMFMediaSourceExtensionVtbl;
2766
2767interface IMFMediaSourceExtension {
2768 CONST_VTBL IMFMediaSourceExtensionVtbl* lpVtbl;
2769};
2770
2771#ifdef COBJMACROS
2772#ifndef WIDL_C_INLINE_WRAPPERS
2773/*** IUnknown methods ***/
2774#define IMFMediaSourceExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2775#define IMFMediaSourceExtension_AddRef(This) (This)->lpVtbl->AddRef(This)
2776#define IMFMediaSourceExtension_Release(This) (This)->lpVtbl->Release(This)
2777/*** IMFMediaSourceExtension methods ***/
2778#define IMFMediaSourceExtension_GetSourceBuffers(This) (This)->lpVtbl->GetSourceBuffers(This)
2779#define IMFMediaSourceExtension_GetActiveSourceBuffers(This) (This)->lpVtbl->GetActiveSourceBuffers(This)
2780#define IMFMediaSourceExtension_GetReadyState(This) (This)->lpVtbl->GetReadyState(This)
2781#define IMFMediaSourceExtension_GetDuration(This) (This)->lpVtbl->GetDuration(This)
2782#define IMFMediaSourceExtension_SetDuration(This,duration) (This)->lpVtbl->SetDuration(This,duration)
2783#define IMFMediaSourceExtension_AddSourceBuffer(This,type,notify,source_buffer) (This)->lpVtbl->AddSourceBuffer(This,type,notify,source_buffer)
2784#define IMFMediaSourceExtension_RemoveSourceBuffer(This,source_buffer) (This)->lpVtbl->RemoveSourceBuffer(This,source_buffer)
2785#define IMFMediaSourceExtension_SetEndOfStream(This,error) (This)->lpVtbl->SetEndOfStream(This,error)
2786#define IMFMediaSourceExtension_IsTypeSupported(This,type) (This)->lpVtbl->IsTypeSupported(This,type)
2787#define IMFMediaSourceExtension_GetSourceBuffer(This,stream_index) (This)->lpVtbl->GetSourceBuffer(This,stream_index)
2788#else
2789/*** IUnknown methods ***/
2790static inline HRESULT IMFMediaSourceExtension_QueryInterface(IMFMediaSourceExtension* This,REFIID riid,void **ppvObject) {
2791 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2792}
2793static inline ULONG IMFMediaSourceExtension_AddRef(IMFMediaSourceExtension* This) {
2794 return This->lpVtbl->AddRef(This);
2795}
2796static inline ULONG IMFMediaSourceExtension_Release(IMFMediaSourceExtension* This) {
2797 return This->lpVtbl->Release(This);
2798}
2799/*** IMFMediaSourceExtension methods ***/
2800static inline IMFSourceBufferList * IMFMediaSourceExtension_GetSourceBuffers(IMFMediaSourceExtension* This) {
2801 return This->lpVtbl->GetSourceBuffers(This);
2802}
2803static inline IMFSourceBufferList * IMFMediaSourceExtension_GetActiveSourceBuffers(IMFMediaSourceExtension* This) {
2804 return This->lpVtbl->GetActiveSourceBuffers(This);
2805}
2806static inline MF_MSE_READY IMFMediaSourceExtension_GetReadyState(IMFMediaSourceExtension* This) {
2807 return This->lpVtbl->GetReadyState(This);
2808}
2809static inline double IMFMediaSourceExtension_GetDuration(IMFMediaSourceExtension* This) {
2810 return This->lpVtbl->GetDuration(This);
2811}
2812static inline HRESULT IMFMediaSourceExtension_SetDuration(IMFMediaSourceExtension* This,double duration) {
2813 return This->lpVtbl->SetDuration(This,duration);
2814}
2815static inline HRESULT IMFMediaSourceExtension_AddSourceBuffer(IMFMediaSourceExtension* This,BSTR type,IMFSourceBufferNotify *notify,IMFSourceBuffer **source_buffer) {
2816 return This->lpVtbl->AddSourceBuffer(This,type,notify,source_buffer);
2817}
2818static inline HRESULT IMFMediaSourceExtension_RemoveSourceBuffer(IMFMediaSourceExtension* This,IMFSourceBuffer *source_buffer) {
2819 return This->lpVtbl->RemoveSourceBuffer(This,source_buffer);
2820}
2821static inline HRESULT IMFMediaSourceExtension_SetEndOfStream(IMFMediaSourceExtension* This,MF_MSE_ERROR error) {
2822 return This->lpVtbl->SetEndOfStream(This,error);
2823}
2824static inline WINBOOL IMFMediaSourceExtension_IsTypeSupported(IMFMediaSourceExtension* This,BSTR type) {
2825 return This->lpVtbl->IsTypeSupported(This,type);
2826}
2827static inline IMFSourceBuffer * IMFMediaSourceExtension_GetSourceBuffer(IMFMediaSourceExtension* This,DWORD stream_index) {
2828 return This->lpVtbl->GetSourceBuffer(This,stream_index);
2829}
2830#endif
2831#endif
2832
2833#endif
2834
2835
2836#endif /* __IMFMediaSourceExtension_INTERFACE_DEFINED__ */
2837
2838/*****************************************************************************
2839 * IMFMediaEngineNotify interface
2840 */
2841#ifndef __IMFMediaEngineNotify_INTERFACE_DEFINED__
2842#define __IMFMediaEngineNotify_INTERFACE_DEFINED__
2843
2844DEFINE_GUID(IID_IMFMediaEngineNotify, 0xfee7c112, 0xe776, 0x42b5, 0x9b,0xbf, 0x00,0x48,0x52,0x4e,0x2b,0xd5);
2845#if defined(__cplusplus) && !defined(CINTERFACE)
2846MIDL_INTERFACE("fee7c112-e776-42b5-9bbf-0048524e2bd5")
2847IMFMediaEngineNotify : public IUnknown
2848{
2849 virtual HRESULT STDMETHODCALLTYPE EventNotify(
2850 DWORD event,
2851 DWORD_PTR param1,
2852 DWORD param2) = 0;
2853
2854};
2855#ifdef __CRT_UUID_DECL
2856__CRT_UUID_DECL(IMFMediaEngineNotify, 0xfee7c112, 0xe776, 0x42b5, 0x9b,0xbf, 0x00,0x48,0x52,0x4e,0x2b,0xd5)
2857#endif
2858#else
2859typedef struct IMFMediaEngineNotifyVtbl {
2860 BEGIN_INTERFACE
2861
2862 /*** IUnknown methods ***/
2863 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2864 IMFMediaEngineNotify *This,
2865 REFIID riid,
2866 void **ppvObject);
2867
2868 ULONG (STDMETHODCALLTYPE *AddRef)(
2869 IMFMediaEngineNotify *This);
2870
2871 ULONG (STDMETHODCALLTYPE *Release)(
2872 IMFMediaEngineNotify *This);
2873
2874 /*** IMFMediaEngineNotify methods ***/
2875 HRESULT (STDMETHODCALLTYPE *EventNotify)(
2876 IMFMediaEngineNotify *This,
2877 DWORD event,
2878 DWORD_PTR param1,
2879 DWORD param2);
2880
2881 END_INTERFACE
2882} IMFMediaEngineNotifyVtbl;
2883
2884interface IMFMediaEngineNotify {
2885 CONST_VTBL IMFMediaEngineNotifyVtbl* lpVtbl;
2886};
2887
2888#ifdef COBJMACROS
2889#ifndef WIDL_C_INLINE_WRAPPERS
2890/*** IUnknown methods ***/
2891#define IMFMediaEngineNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2892#define IMFMediaEngineNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
2893#define IMFMediaEngineNotify_Release(This) (This)->lpVtbl->Release(This)
2894/*** IMFMediaEngineNotify methods ***/
2895#define IMFMediaEngineNotify_EventNotify(This,event,param1,param2) (This)->lpVtbl->EventNotify(This,event,param1,param2)
2896#else
2897/*** IUnknown methods ***/
2898static inline HRESULT IMFMediaEngineNotify_QueryInterface(IMFMediaEngineNotify* This,REFIID riid,void **ppvObject) {
2899 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2900}
2901static inline ULONG IMFMediaEngineNotify_AddRef(IMFMediaEngineNotify* This) {
2902 return This->lpVtbl->AddRef(This);
2903}
2904static inline ULONG IMFMediaEngineNotify_Release(IMFMediaEngineNotify* This) {
2905 return This->lpVtbl->Release(This);
2906}
2907/*** IMFMediaEngineNotify methods ***/
2908static inline HRESULT IMFMediaEngineNotify_EventNotify(IMFMediaEngineNotify* This,DWORD event,DWORD_PTR param1,DWORD param2) {
2909 return This->lpVtbl->EventNotify(This,event,param1,param2);
2910}
2911#endif
2912#endif
2913
2914#endif
2915
2916
2917#endif /* __IMFMediaEngineNotify_INTERFACE_DEFINED__ */
2918
2919/*****************************************************************************
2920 * IMFMediaEngineAudioEndpointId interface
2921 */
2922#ifndef __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__
2923#define __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__
2924
2925DEFINE_GUID(IID_IMFMediaEngineAudioEndpointId, 0x7a3bac98, 0x0e76, 0x49fb, 0x8c,0x20, 0x8a,0x86,0xfd,0x98,0xea,0xf2);
2926#if defined(__cplusplus) && !defined(CINTERFACE)
2927MIDL_INTERFACE("7a3bac98-0e76-49fb-8c20-8a86fd98eaf2")
2928IMFMediaEngineAudioEndpointId : public IUnknown
2929{
2930 virtual HRESULT STDMETHODCALLTYPE SetAudioEndpointId(
2931 LPCWSTR id) = 0;
2932
2933 virtual HRESULT STDMETHODCALLTYPE GetAudioEndpointId(
2934 LPWSTR *id) = 0;
2935
2936};
2937#ifdef __CRT_UUID_DECL
2938__CRT_UUID_DECL(IMFMediaEngineAudioEndpointId, 0x7a3bac98, 0x0e76, 0x49fb, 0x8c,0x20, 0x8a,0x86,0xfd,0x98,0xea,0xf2)
2939#endif
2940#else
2941typedef struct IMFMediaEngineAudioEndpointIdVtbl {
2942 BEGIN_INTERFACE
2943
2944 /*** IUnknown methods ***/
2945 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2946 IMFMediaEngineAudioEndpointId *This,
2947 REFIID riid,
2948 void **ppvObject);
2949
2950 ULONG (STDMETHODCALLTYPE *AddRef)(
2951 IMFMediaEngineAudioEndpointId *This);
2952
2953 ULONG (STDMETHODCALLTYPE *Release)(
2954 IMFMediaEngineAudioEndpointId *This);
2955
2956 /*** IMFMediaEngineAudioEndpointId methods ***/
2957 HRESULT (STDMETHODCALLTYPE *SetAudioEndpointId)(
2958 IMFMediaEngineAudioEndpointId *This,
2959 LPCWSTR id);
2960
2961 HRESULT (STDMETHODCALLTYPE *GetAudioEndpointId)(
2962 IMFMediaEngineAudioEndpointId *This,
2963 LPWSTR *id);
2964
2965 END_INTERFACE
2966} IMFMediaEngineAudioEndpointIdVtbl;
2967
2968interface IMFMediaEngineAudioEndpointId {
2969 CONST_VTBL IMFMediaEngineAudioEndpointIdVtbl* lpVtbl;
2970};
2971
2972#ifdef COBJMACROS
2973#ifndef WIDL_C_INLINE_WRAPPERS
2974/*** IUnknown methods ***/
2975#define IMFMediaEngineAudioEndpointId_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2976#define IMFMediaEngineAudioEndpointId_AddRef(This) (This)->lpVtbl->AddRef(This)
2977#define IMFMediaEngineAudioEndpointId_Release(This) (This)->lpVtbl->Release(This)
2978/*** IMFMediaEngineAudioEndpointId methods ***/
2979#define IMFMediaEngineAudioEndpointId_SetAudioEndpointId(This,id) (This)->lpVtbl->SetAudioEndpointId(This,id)
2980#define IMFMediaEngineAudioEndpointId_GetAudioEndpointId(This,id) (This)->lpVtbl->GetAudioEndpointId(This,id)
2981#else
2982/*** IUnknown methods ***/
2983static inline HRESULT IMFMediaEngineAudioEndpointId_QueryInterface(IMFMediaEngineAudioEndpointId* This,REFIID riid,void **ppvObject) {
2984 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2985}
2986static inline ULONG IMFMediaEngineAudioEndpointId_AddRef(IMFMediaEngineAudioEndpointId* This) {
2987 return This->lpVtbl->AddRef(This);
2988}
2989static inline ULONG IMFMediaEngineAudioEndpointId_Release(IMFMediaEngineAudioEndpointId* This) {
2990 return This->lpVtbl->Release(This);
2991}
2992/*** IMFMediaEngineAudioEndpointId methods ***/
2993static inline HRESULT IMFMediaEngineAudioEndpointId_SetAudioEndpointId(IMFMediaEngineAudioEndpointId* This,LPCWSTR id) {
2994 return This->lpVtbl->SetAudioEndpointId(This,id);
2995}
2996static inline HRESULT IMFMediaEngineAudioEndpointId_GetAudioEndpointId(IMFMediaEngineAudioEndpointId* This,LPWSTR *id) {
2997 return This->lpVtbl->GetAudioEndpointId(This,id);
2998}
2999#endif
3000#endif
3001
3002#endif
3003
3004
3005#endif /* __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__ */
3006
3007/*****************************************************************************
3008 * IMFMediaEngineExtension interface
3009 */
3010#ifndef __IMFMediaEngineExtension_INTERFACE_DEFINED__
3011#define __IMFMediaEngineExtension_INTERFACE_DEFINED__
3012
3013DEFINE_GUID(IID_IMFMediaEngineExtension, 0x2f69d622, 0x20b5, 0x41e9, 0xaf,0xdf, 0x89,0xce,0xd1,0xdd,0xa0,0x4e);
3014#if defined(__cplusplus) && !defined(CINTERFACE)
3015MIDL_INTERFACE("2f69d622-20b5-41e9-afdf-89ced1dda04e")
3016IMFMediaEngineExtension : public IUnknown
3017{
3018 virtual HRESULT STDMETHODCALLTYPE CanPlayType(
3019 WINBOOL audio_only,
3020 BSTR mime_type,
3021 MF_MEDIA_ENGINE_CANPLAY *answer) = 0;
3022
3023 virtual HRESULT STDMETHODCALLTYPE BeginCreateObject(
3024 BSTR url,
3025 IMFByteStream *bytestream,
3026 MF_OBJECT_TYPE type,
3027 IUnknown **cancel_cookie,
3028 IMFAsyncCallback *callback,
3029 IUnknown *state) = 0;
3030
3031 virtual HRESULT STDMETHODCALLTYPE CancelObjectCreation(
3032 IUnknown *cancel_cookie) = 0;
3033
3034 virtual HRESULT STDMETHODCALLTYPE EndCreateObject(
3035 IMFAsyncResult *result,
3036 IUnknown **object) = 0;
3037
3038};
3039#ifdef __CRT_UUID_DECL
3040__CRT_UUID_DECL(IMFMediaEngineExtension, 0x2f69d622, 0x20b5, 0x41e9, 0xaf,0xdf, 0x89,0xce,0xd1,0xdd,0xa0,0x4e)
3041#endif
3042#else
3043typedef struct IMFMediaEngineExtensionVtbl {
3044 BEGIN_INTERFACE
3045
3046 /*** IUnknown methods ***/
3047 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3048 IMFMediaEngineExtension *This,
3049 REFIID riid,
3050 void **ppvObject);
3051
3052 ULONG (STDMETHODCALLTYPE *AddRef)(
3053 IMFMediaEngineExtension *This);
3054
3055 ULONG (STDMETHODCALLTYPE *Release)(
3056 IMFMediaEngineExtension *This);
3057
3058 /*** IMFMediaEngineExtension methods ***/
3059 HRESULT (STDMETHODCALLTYPE *CanPlayType)(
3060 IMFMediaEngineExtension *This,
3061 WINBOOL audio_only,
3062 BSTR mime_type,
3063 MF_MEDIA_ENGINE_CANPLAY *answer);
3064
3065 HRESULT (STDMETHODCALLTYPE *BeginCreateObject)(
3066 IMFMediaEngineExtension *This,
3067 BSTR url,
3068 IMFByteStream *bytestream,
3069 MF_OBJECT_TYPE type,
3070 IUnknown **cancel_cookie,
3071 IMFAsyncCallback *callback,
3072 IUnknown *state);
3073
3074 HRESULT (STDMETHODCALLTYPE *CancelObjectCreation)(
3075 IMFMediaEngineExtension *This,
3076 IUnknown *cancel_cookie);
3077
3078 HRESULT (STDMETHODCALLTYPE *EndCreateObject)(
3079 IMFMediaEngineExtension *This,
3080 IMFAsyncResult *result,
3081 IUnknown **object);
3082
3083 END_INTERFACE
3084} IMFMediaEngineExtensionVtbl;
3085
3086interface IMFMediaEngineExtension {
3087 CONST_VTBL IMFMediaEngineExtensionVtbl* lpVtbl;
3088};
3089
3090#ifdef COBJMACROS
3091#ifndef WIDL_C_INLINE_WRAPPERS
3092/*** IUnknown methods ***/
3093#define IMFMediaEngineExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3094#define IMFMediaEngineExtension_AddRef(This) (This)->lpVtbl->AddRef(This)
3095#define IMFMediaEngineExtension_Release(This) (This)->lpVtbl->Release(This)
3096/*** IMFMediaEngineExtension methods ***/
3097#define IMFMediaEngineExtension_CanPlayType(This,audio_only,mime_type,answer) (This)->lpVtbl->CanPlayType(This,audio_only,mime_type,answer)
3098#define IMFMediaEngineExtension_BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state) (This)->lpVtbl->BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state)
3099#define IMFMediaEngineExtension_CancelObjectCreation(This,cancel_cookie) (This)->lpVtbl->CancelObjectCreation(This,cancel_cookie)
3100#define IMFMediaEngineExtension_EndCreateObject(This,result,object) (This)->lpVtbl->EndCreateObject(This,result,object)
3101#else
3102/*** IUnknown methods ***/
3103static inline HRESULT IMFMediaEngineExtension_QueryInterface(IMFMediaEngineExtension* This,REFIID riid,void **ppvObject) {
3104 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3105}
3106static inline ULONG IMFMediaEngineExtension_AddRef(IMFMediaEngineExtension* This) {
3107 return This->lpVtbl->AddRef(This);
3108}
3109static inline ULONG IMFMediaEngineExtension_Release(IMFMediaEngineExtension* This) {
3110 return This->lpVtbl->Release(This);
3111}
3112/*** IMFMediaEngineExtension methods ***/
3113static inline HRESULT IMFMediaEngineExtension_CanPlayType(IMFMediaEngineExtension* This,WINBOOL audio_only,BSTR mime_type,MF_MEDIA_ENGINE_CANPLAY *answer) {
3114 return This->lpVtbl->CanPlayType(This,audio_only,mime_type,answer);
3115}
3116static inline HRESULT IMFMediaEngineExtension_BeginCreateObject(IMFMediaEngineExtension* This,BSTR url,IMFByteStream *bytestream,MF_OBJECT_TYPE type,IUnknown **cancel_cookie,IMFAsyncCallback *callback,IUnknown *state) {
3117 return This->lpVtbl->BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state);
3118}
3119static inline HRESULT IMFMediaEngineExtension_CancelObjectCreation(IMFMediaEngineExtension* This,IUnknown *cancel_cookie) {
3120 return This->lpVtbl->CancelObjectCreation(This,cancel_cookie);
3121}
3122static inline HRESULT IMFMediaEngineExtension_EndCreateObject(IMFMediaEngineExtension* This,IMFAsyncResult *result,IUnknown **object) {
3123 return This->lpVtbl->EndCreateObject(This,result,object);
3124}
3125#endif
3126#endif
3127
3128#endif
3129
3130
3131#endif /* __IMFMediaEngineExtension_INTERFACE_DEFINED__ */
3132
3133/*****************************************************************************
3134 * IMFMediaKeySessionNotify interface
3135 */
3136#ifndef __IMFMediaKeySessionNotify_INTERFACE_DEFINED__
3137#define __IMFMediaKeySessionNotify_INTERFACE_DEFINED__
3138
3139DEFINE_GUID(IID_IMFMediaKeySessionNotify, 0x6a0083f9, 0x8947, 0x4c1d, 0x9c,0xe0, 0xcd,0xee,0x22,0xb2,0x31,0x35);
3140#if defined(__cplusplus) && !defined(CINTERFACE)
3141MIDL_INTERFACE("6a0083f9-8947-4c1d-9ce0-cdee22b23135")
3142IMFMediaKeySessionNotify : public IUnknown
3143{
3144 virtual void STDMETHODCALLTYPE KeyMessage(
3145 BSTR destination_url,
3146 const BYTE *message,
3147 DWORD message_len) = 0;
3148
3149 virtual void STDMETHODCALLTYPE KeyAdded(
3150 ) = 0;
3151
3152 virtual void STDMETHODCALLTYPE KeyError(
3153 USHORT code,
3154 DWORD system_code) = 0;
3155
3156};
3157#ifdef __CRT_UUID_DECL
3158__CRT_UUID_DECL(IMFMediaKeySessionNotify, 0x6a0083f9, 0x8947, 0x4c1d, 0x9c,0xe0, 0xcd,0xee,0x22,0xb2,0x31,0x35)
3159#endif
3160#else
3161typedef struct IMFMediaKeySessionNotifyVtbl {
3162 BEGIN_INTERFACE
3163
3164 /*** IUnknown methods ***/
3165 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3166 IMFMediaKeySessionNotify *This,
3167 REFIID riid,
3168 void **ppvObject);
3169
3170 ULONG (STDMETHODCALLTYPE *AddRef)(
3171 IMFMediaKeySessionNotify *This);
3172
3173 ULONG (STDMETHODCALLTYPE *Release)(
3174 IMFMediaKeySessionNotify *This);
3175
3176 /*** IMFMediaKeySessionNotify methods ***/
3177 void (STDMETHODCALLTYPE *KeyMessage)(
3178 IMFMediaKeySessionNotify *This,
3179 BSTR destination_url,
3180 const BYTE *message,
3181 DWORD message_len);
3182
3183 void (STDMETHODCALLTYPE *KeyAdded)(
3184 IMFMediaKeySessionNotify *This);
3185
3186 void (STDMETHODCALLTYPE *KeyError)(
3187 IMFMediaKeySessionNotify *This,
3188 USHORT code,
3189 DWORD system_code);
3190
3191 END_INTERFACE
3192} IMFMediaKeySessionNotifyVtbl;
3193
3194interface IMFMediaKeySessionNotify {
3195 CONST_VTBL IMFMediaKeySessionNotifyVtbl* lpVtbl;
3196};
3197
3198#ifdef COBJMACROS
3199#ifndef WIDL_C_INLINE_WRAPPERS
3200/*** IUnknown methods ***/
3201#define IMFMediaKeySessionNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3202#define IMFMediaKeySessionNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
3203#define IMFMediaKeySessionNotify_Release(This) (This)->lpVtbl->Release(This)
3204/*** IMFMediaKeySessionNotify methods ***/
3205#define IMFMediaKeySessionNotify_KeyMessage(This,destination_url,message,message_len) (This)->lpVtbl->KeyMessage(This,destination_url,message,message_len)
3206#define IMFMediaKeySessionNotify_KeyAdded(This) (This)->lpVtbl->KeyAdded(This)
3207#define IMFMediaKeySessionNotify_KeyError(This,code,system_code) (This)->lpVtbl->KeyError(This,code,system_code)
3208#else
3209/*** IUnknown methods ***/
3210static inline HRESULT IMFMediaKeySessionNotify_QueryInterface(IMFMediaKeySessionNotify* This,REFIID riid,void **ppvObject) {
3211 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3212}
3213static inline ULONG IMFMediaKeySessionNotify_AddRef(IMFMediaKeySessionNotify* This) {
3214 return This->lpVtbl->AddRef(This);
3215}
3216static inline ULONG IMFMediaKeySessionNotify_Release(IMFMediaKeySessionNotify* This) {
3217 return This->lpVtbl->Release(This);
3218}
3219/*** IMFMediaKeySessionNotify methods ***/
3220static inline void IMFMediaKeySessionNotify_KeyMessage(IMFMediaKeySessionNotify* This,BSTR destination_url,const BYTE *message,DWORD message_len) {
3221 This->lpVtbl->KeyMessage(This,destination_url,message,message_len);
3222}
3223static inline void IMFMediaKeySessionNotify_KeyAdded(IMFMediaKeySessionNotify* This) {
3224 This->lpVtbl->KeyAdded(This);
3225}
3226static inline void IMFMediaKeySessionNotify_KeyError(IMFMediaKeySessionNotify* This,USHORT code,DWORD system_code) {
3227 This->lpVtbl->KeyError(This,code,system_code);
3228}
3229#endif
3230#endif
3231
3232#endif
3233
3234
3235#endif /* __IMFMediaKeySessionNotify_INTERFACE_DEFINED__ */
3236
3237/*****************************************************************************
3238 * IMFMediaKeySession interface
3239 */
3240#ifndef __IMFMediaKeySession_INTERFACE_DEFINED__
3241#define __IMFMediaKeySession_INTERFACE_DEFINED__
3242
3243DEFINE_GUID(IID_IMFMediaKeySession, 0x24fa67d5, 0xd1d0, 0x4dc5, 0x99,0x5c, 0xc0,0xef,0xdc,0x19,0x1f,0xb5);
3244#if defined(__cplusplus) && !defined(CINTERFACE)
3245MIDL_INTERFACE("24fa67d5-d1d0-4dc5-995c-c0efdc191fb5")
3246IMFMediaKeySession : public IUnknown
3247{
3248 virtual HRESULT STDMETHODCALLTYPE GetError(
3249 USHORT *code,
3250 DWORD *system_code) = 0;
3251
3252 virtual HRESULT STDMETHODCALLTYPE get_KeySystem(
3253 BSTR *key_system) = 0;
3254
3255 virtual HRESULT STDMETHODCALLTYPE get_SessionId(
3256 BSTR *session_id) = 0;
3257
3258 virtual HRESULT STDMETHODCALLTYPE Update(
3259 const BYTE *key,
3260 DWORD key_len) = 0;
3261
3262 virtual HRESULT STDMETHODCALLTYPE Close(
3263 ) = 0;
3264
3265};
3266#ifdef __CRT_UUID_DECL
3267__CRT_UUID_DECL(IMFMediaKeySession, 0x24fa67d5, 0xd1d0, 0x4dc5, 0x99,0x5c, 0xc0,0xef,0xdc,0x19,0x1f,0xb5)
3268#endif
3269#else
3270typedef struct IMFMediaKeySessionVtbl {
3271 BEGIN_INTERFACE
3272
3273 /*** IUnknown methods ***/
3274 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3275 IMFMediaKeySession *This,
3276 REFIID riid,
3277 void **ppvObject);
3278
3279 ULONG (STDMETHODCALLTYPE *AddRef)(
3280 IMFMediaKeySession *This);
3281
3282 ULONG (STDMETHODCALLTYPE *Release)(
3283 IMFMediaKeySession *This);
3284
3285 /*** IMFMediaKeySession methods ***/
3286 HRESULT (STDMETHODCALLTYPE *GetError)(
3287 IMFMediaKeySession *This,
3288 USHORT *code,
3289 DWORD *system_code);
3290
3291 HRESULT (STDMETHODCALLTYPE *get_KeySystem)(
3292 IMFMediaKeySession *This,
3293 BSTR *key_system);
3294
3295 HRESULT (STDMETHODCALLTYPE *get_SessionId)(
3296 IMFMediaKeySession *This,
3297 BSTR *session_id);
3298
3299 HRESULT (STDMETHODCALLTYPE *Update)(
3300 IMFMediaKeySession *This,
3301 const BYTE *key,
3302 DWORD key_len);
3303
3304 HRESULT (STDMETHODCALLTYPE *Close)(
3305 IMFMediaKeySession *This);
3306
3307 END_INTERFACE
3308} IMFMediaKeySessionVtbl;
3309
3310interface IMFMediaKeySession {
3311 CONST_VTBL IMFMediaKeySessionVtbl* lpVtbl;
3312};
3313
3314#ifdef COBJMACROS
3315#ifndef WIDL_C_INLINE_WRAPPERS
3316/*** IUnknown methods ***/
3317#define IMFMediaKeySession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3318#define IMFMediaKeySession_AddRef(This) (This)->lpVtbl->AddRef(This)
3319#define IMFMediaKeySession_Release(This) (This)->lpVtbl->Release(This)
3320/*** IMFMediaKeySession methods ***/
3321#define IMFMediaKeySession_GetError(This,code,system_code) (This)->lpVtbl->GetError(This,code,system_code)
3322#define IMFMediaKeySession_get_KeySystem(This,key_system) (This)->lpVtbl->get_KeySystem(This,key_system)
3323#define IMFMediaKeySession_get_SessionId(This,session_id) (This)->lpVtbl->get_SessionId(This,session_id)
3324#define IMFMediaKeySession_Update(This,key,key_len) (This)->lpVtbl->Update(This,key,key_len)
3325#define IMFMediaKeySession_Close(This) (This)->lpVtbl->Close(This)
3326#else
3327/*** IUnknown methods ***/
3328static inline HRESULT IMFMediaKeySession_QueryInterface(IMFMediaKeySession* This,REFIID riid,void **ppvObject) {
3329 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3330}
3331static inline ULONG IMFMediaKeySession_AddRef(IMFMediaKeySession* This) {
3332 return This->lpVtbl->AddRef(This);
3333}
3334static inline ULONG IMFMediaKeySession_Release(IMFMediaKeySession* This) {
3335 return This->lpVtbl->Release(This);
3336}
3337/*** IMFMediaKeySession methods ***/
3338static inline HRESULT IMFMediaKeySession_GetError(IMFMediaKeySession* This,USHORT *code,DWORD *system_code) {
3339 return This->lpVtbl->GetError(This,code,system_code);
3340}
3341static inline HRESULT IMFMediaKeySession_get_KeySystem(IMFMediaKeySession* This,BSTR *key_system) {
3342 return This->lpVtbl->get_KeySystem(This,key_system);
3343}
3344static inline HRESULT IMFMediaKeySession_get_SessionId(IMFMediaKeySession* This,BSTR *session_id) {
3345 return This->lpVtbl->get_SessionId(This,session_id);
3346}
3347static inline HRESULT IMFMediaKeySession_Update(IMFMediaKeySession* This,const BYTE *key,DWORD key_len) {
3348 return This->lpVtbl->Update(This,key,key_len);
3349}
3350static inline HRESULT IMFMediaKeySession_Close(IMFMediaKeySession* This) {
3351 return This->lpVtbl->Close(This);
3352}
3353#endif
3354#endif
3355
3356#endif
3357
3358
3359#endif /* __IMFMediaKeySession_INTERFACE_DEFINED__ */
3360
3361/*****************************************************************************
3362 * IMFCdmSuspendNotify interface
3363 */
3364#ifndef __IMFCdmSuspendNotify_INTERFACE_DEFINED__
3365#define __IMFCdmSuspendNotify_INTERFACE_DEFINED__
3366
3367DEFINE_GUID(IID_IMFCdmSuspendNotify, 0x7a5645d2, 0x43bd, 0x47fd, 0x87,0xb7, 0xdc,0xd2,0x4c,0xc7,0xd6,0x92);
3368#if defined(__cplusplus) && !defined(CINTERFACE)
3369MIDL_INTERFACE("7a5645d2-43bd-47fd-87b7-dcd24cc7d692")
3370IMFCdmSuspendNotify : public IUnknown
3371{
3372 virtual HRESULT STDMETHODCALLTYPE Begin(
3373 ) = 0;
3374
3375 virtual HRESULT STDMETHODCALLTYPE End(
3376 ) = 0;
3377
3378};
3379#ifdef __CRT_UUID_DECL
3380__CRT_UUID_DECL(IMFCdmSuspendNotify, 0x7a5645d2, 0x43bd, 0x47fd, 0x87,0xb7, 0xdc,0xd2,0x4c,0xc7,0xd6,0x92)
3381#endif
3382#else
3383typedef struct IMFCdmSuspendNotifyVtbl {
3384 BEGIN_INTERFACE
3385
3386 /*** IUnknown methods ***/
3387 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3388 IMFCdmSuspendNotify *This,
3389 REFIID riid,
3390 void **ppvObject);
3391
3392 ULONG (STDMETHODCALLTYPE *AddRef)(
3393 IMFCdmSuspendNotify *This);
3394
3395 ULONG (STDMETHODCALLTYPE *Release)(
3396 IMFCdmSuspendNotify *This);
3397
3398 /*** IMFCdmSuspendNotify methods ***/
3399 HRESULT (STDMETHODCALLTYPE *Begin)(
3400 IMFCdmSuspendNotify *This);
3401
3402 HRESULT (STDMETHODCALLTYPE *End)(
3403 IMFCdmSuspendNotify *This);
3404
3405 END_INTERFACE
3406} IMFCdmSuspendNotifyVtbl;
3407
3408interface IMFCdmSuspendNotify {
3409 CONST_VTBL IMFCdmSuspendNotifyVtbl* lpVtbl;
3410};
3411
3412#ifdef COBJMACROS
3413#ifndef WIDL_C_INLINE_WRAPPERS
3414/*** IUnknown methods ***/
3415#define IMFCdmSuspendNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3416#define IMFCdmSuspendNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
3417#define IMFCdmSuspendNotify_Release(This) (This)->lpVtbl->Release(This)
3418/*** IMFCdmSuspendNotify methods ***/
3419#define IMFCdmSuspendNotify_Begin(This) (This)->lpVtbl->Begin(This)
3420#define IMFCdmSuspendNotify_End(This) (This)->lpVtbl->End(This)
3421#else
3422/*** IUnknown methods ***/
3423static inline HRESULT IMFCdmSuspendNotify_QueryInterface(IMFCdmSuspendNotify* This,REFIID riid,void **ppvObject) {
3424 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3425}
3426static inline ULONG IMFCdmSuspendNotify_AddRef(IMFCdmSuspendNotify* This) {
3427 return This->lpVtbl->AddRef(This);
3428}
3429static inline ULONG IMFCdmSuspendNotify_Release(IMFCdmSuspendNotify* This) {
3430 return This->lpVtbl->Release(This);
3431}
3432/*** IMFCdmSuspendNotify methods ***/
3433static inline HRESULT IMFCdmSuspendNotify_Begin(IMFCdmSuspendNotify* This) {
3434 return This->lpVtbl->Begin(This);
3435}
3436static inline HRESULT IMFCdmSuspendNotify_End(IMFCdmSuspendNotify* This) {
3437 return This->lpVtbl->End(This);
3438}
3439#endif
3440#endif
3441
3442#endif
3443
3444
3445#endif /* __IMFCdmSuspendNotify_INTERFACE_DEFINED__ */
3446
3447/*****************************************************************************
3448 * IMFMediaKeys interface
3449 */
3450#ifndef __IMFMediaKeys_INTERFACE_DEFINED__
3451#define __IMFMediaKeys_INTERFACE_DEFINED__
3452
3453DEFINE_GUID(IID_IMFMediaKeys, 0x5cb31c05, 0x61ff, 0x418f, 0xaf,0xda, 0xca,0xaf,0x41,0x42,0x1a,0x38);
3454#if defined(__cplusplus) && !defined(CINTERFACE)
3455MIDL_INTERFACE("5cb31c05-61ff-418f-afda-caaf41421a38")
3456IMFMediaKeys : public IUnknown
3457{
3458 virtual HRESULT STDMETHODCALLTYPE CreateSession(
3459 BSTR mime_type,
3460 const BYTE *init_data,
3461 DWORD init_data_len,
3462 const BYTE *custom_data,
3463 DWORD custom_data_len,
3464 IMFMediaKeySessionNotify *notify,
3465 IMFMediaKeySession **session) = 0;
3466
3467 virtual HRESULT STDMETHODCALLTYPE get_KeySystem(
3468 BSTR *key_system) = 0;
3469
3470 virtual HRESULT STDMETHODCALLTYPE Shutdown(
3471 ) = 0;
3472
3473 virtual HRESULT STDMETHODCALLTYPE GetSuspendNotify(
3474 IMFCdmSuspendNotify **notify) = 0;
3475
3476};
3477#ifdef __CRT_UUID_DECL
3478__CRT_UUID_DECL(IMFMediaKeys, 0x5cb31c05, 0x61ff, 0x418f, 0xaf,0xda, 0xca,0xaf,0x41,0x42,0x1a,0x38)
3479#endif
3480#else
3481typedef struct IMFMediaKeysVtbl {
3482 BEGIN_INTERFACE
3483
3484 /*** IUnknown methods ***/
3485 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3486 IMFMediaKeys *This,
3487 REFIID riid,
3488 void **ppvObject);
3489
3490 ULONG (STDMETHODCALLTYPE *AddRef)(
3491 IMFMediaKeys *This);
3492
3493 ULONG (STDMETHODCALLTYPE *Release)(
3494 IMFMediaKeys *This);
3495
3496 /*** IMFMediaKeys methods ***/
3497 HRESULT (STDMETHODCALLTYPE *CreateSession)(
3498 IMFMediaKeys *This,
3499 BSTR mime_type,
3500 const BYTE *init_data,
3501 DWORD init_data_len,
3502 const BYTE *custom_data,
3503 DWORD custom_data_len,
3504 IMFMediaKeySessionNotify *notify,
3505 IMFMediaKeySession **session);
3506
3507 HRESULT (STDMETHODCALLTYPE *get_KeySystem)(
3508 IMFMediaKeys *This,
3509 BSTR *key_system);
3510
3511 HRESULT (STDMETHODCALLTYPE *Shutdown)(
3512 IMFMediaKeys *This);
3513
3514 HRESULT (STDMETHODCALLTYPE *GetSuspendNotify)(
3515 IMFMediaKeys *This,
3516 IMFCdmSuspendNotify **notify);
3517
3518 END_INTERFACE
3519} IMFMediaKeysVtbl;
3520
3521interface IMFMediaKeys {
3522 CONST_VTBL IMFMediaKeysVtbl* lpVtbl;
3523};
3524
3525#ifdef COBJMACROS
3526#ifndef WIDL_C_INLINE_WRAPPERS
3527/*** IUnknown methods ***/
3528#define IMFMediaKeys_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3529#define IMFMediaKeys_AddRef(This) (This)->lpVtbl->AddRef(This)
3530#define IMFMediaKeys_Release(This) (This)->lpVtbl->Release(This)
3531/*** IMFMediaKeys methods ***/
3532#define IMFMediaKeys_CreateSession(This,mime_type,init_data,init_data_len,custom_data,custom_data_len,notify,session) (This)->lpVtbl->CreateSession(This,mime_type,init_data,init_data_len,custom_data,custom_data_len,notify,session)
3533#define IMFMediaKeys_get_KeySystem(This,key_system) (This)->lpVtbl->get_KeySystem(This,key_system)
3534#define IMFMediaKeys_Shutdown(This) (This)->lpVtbl->Shutdown(This)
3535#define IMFMediaKeys_GetSuspendNotify(This,notify) (This)->lpVtbl->GetSuspendNotify(This,notify)
3536#else
3537/*** IUnknown methods ***/
3538static inline HRESULT IMFMediaKeys_QueryInterface(IMFMediaKeys* This,REFIID riid,void **ppvObject) {
3539 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3540}
3541static inline ULONG IMFMediaKeys_AddRef(IMFMediaKeys* This) {
3542 return This->lpVtbl->AddRef(This);
3543}
3544static inline ULONG IMFMediaKeys_Release(IMFMediaKeys* This) {
3545 return This->lpVtbl->Release(This);
3546}
3547/*** IMFMediaKeys methods ***/
3548static inline HRESULT IMFMediaKeys_CreateSession(IMFMediaKeys* This,BSTR mime_type,const BYTE *init_data,DWORD init_data_len,const BYTE *custom_data,DWORD custom_data_len,IMFMediaKeySessionNotify *notify,IMFMediaKeySession **session) {
3549 return This->lpVtbl->CreateSession(This,mime_type,init_data,init_data_len,custom_data,custom_data_len,notify,session);
3550}
3551static inline HRESULT IMFMediaKeys_get_KeySystem(IMFMediaKeys* This,BSTR *key_system) {
3552 return This->lpVtbl->get_KeySystem(This,key_system);
3553}
3554static inline HRESULT IMFMediaKeys_Shutdown(IMFMediaKeys* This) {
3555 return This->lpVtbl->Shutdown(This);
3556}
3557static inline HRESULT IMFMediaKeys_GetSuspendNotify(IMFMediaKeys* This,IMFCdmSuspendNotify **notify) {
3558 return This->lpVtbl->GetSuspendNotify(This,notify);
3559}
3560#endif
3561#endif
3562
3563#endif
3564
3565
3566#endif /* __IMFMediaKeys_INTERFACE_DEFINED__ */
3567
3568/*****************************************************************************
3569 * IMFMediaEngineClassFactoryEx interface
3570 */
3571#ifndef __IMFMediaEngineClassFactoryEx_INTERFACE_DEFINED__
3572#define __IMFMediaEngineClassFactoryEx_INTERFACE_DEFINED__
3573
3574DEFINE_GUID(IID_IMFMediaEngineClassFactoryEx, 0xc56156c6, 0xea5b, 0x48a5, 0x9d,0xf8, 0xfb,0xe0,0x35,0xd0,0x92,0x9e);
3575#if defined(__cplusplus) && !defined(CINTERFACE)
3576MIDL_INTERFACE("c56156c6-ea5b-48a5-9df8-fbe035d0929e")
3577IMFMediaEngineClassFactoryEx : public IMFMediaEngineClassFactory
3578{
3579 virtual HRESULT STDMETHODCALLTYPE CreateMediaSourceExtension(
3580 DWORD flags,
3581 IMFAttributes *attr,
3582 IMFMediaSourceExtension **mse) = 0;
3583
3584 virtual HRESULT STDMETHODCALLTYPE CreateMediaKeys(
3585 BSTR key_system,
3586 BSTR cdm_store_path,
3587 IMFMediaKeys **keys) = 0;
3588
3589 virtual HRESULT STDMETHODCALLTYPE IsTypeSupported(
3590 BSTR type,
3591 BSTR key_system,
3592 WINBOOL *is_supported) = 0;
3593
3594};
3595#ifdef __CRT_UUID_DECL
3596__CRT_UUID_DECL(IMFMediaEngineClassFactoryEx, 0xc56156c6, 0xea5b, 0x48a5, 0x9d,0xf8, 0xfb,0xe0,0x35,0xd0,0x92,0x9e)
3597#endif
3598#else
3599typedef struct IMFMediaEngineClassFactoryExVtbl {
3600 BEGIN_INTERFACE
3601
3602 /*** IUnknown methods ***/
3603 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3604 IMFMediaEngineClassFactoryEx *This,
3605 REFIID riid,
3606 void **ppvObject);
3607
3608 ULONG (STDMETHODCALLTYPE *AddRef)(
3609 IMFMediaEngineClassFactoryEx *This);
3610
3611 ULONG (STDMETHODCALLTYPE *Release)(
3612 IMFMediaEngineClassFactoryEx *This);
3613
3614 /*** IMFMediaEngineClassFactory methods ***/
3615 HRESULT (STDMETHODCALLTYPE *CreateInstance)(
3616 IMFMediaEngineClassFactoryEx *This,
3617 DWORD flags,
3618 IMFAttributes *attributes,
3619 IMFMediaEngine **engine);
3620
3621 HRESULT (STDMETHODCALLTYPE *CreateTimeRange)(
3622 IMFMediaEngineClassFactoryEx *This,
3623 IMFMediaTimeRange **range);
3624
3625 HRESULT (STDMETHODCALLTYPE *CreateError)(
3626 IMFMediaEngineClassFactoryEx *This,
3627 IMFMediaError **error);
3628
3629 /*** IMFMediaEngineClassFactoryEx methods ***/
3630 HRESULT (STDMETHODCALLTYPE *CreateMediaSourceExtension)(
3631 IMFMediaEngineClassFactoryEx *This,
3632 DWORD flags,
3633 IMFAttributes *attr,
3634 IMFMediaSourceExtension **mse);
3635
3636 HRESULT (STDMETHODCALLTYPE *CreateMediaKeys)(
3637 IMFMediaEngineClassFactoryEx *This,
3638 BSTR key_system,
3639 BSTR cdm_store_path,
3640 IMFMediaKeys **keys);
3641
3642 HRESULT (STDMETHODCALLTYPE *IsTypeSupported)(
3643 IMFMediaEngineClassFactoryEx *This,
3644 BSTR type,
3645 BSTR key_system,
3646 WINBOOL *is_supported);
3647
3648 END_INTERFACE
3649} IMFMediaEngineClassFactoryExVtbl;
3650
3651interface IMFMediaEngineClassFactoryEx {
3652 CONST_VTBL IMFMediaEngineClassFactoryExVtbl* lpVtbl;
3653};
3654
3655#ifdef COBJMACROS
3656#ifndef WIDL_C_INLINE_WRAPPERS
3657/*** IUnknown methods ***/
3658#define IMFMediaEngineClassFactoryEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3659#define IMFMediaEngineClassFactoryEx_AddRef(This) (This)->lpVtbl->AddRef(This)
3660#define IMFMediaEngineClassFactoryEx_Release(This) (This)->lpVtbl->Release(This)
3661/*** IMFMediaEngineClassFactory methods ***/
3662#define IMFMediaEngineClassFactoryEx_CreateInstance(This,flags,attributes,engine) (This)->lpVtbl->CreateInstance(This,flags,attributes,engine)
3663#define IMFMediaEngineClassFactoryEx_CreateTimeRange(This,range) (This)->lpVtbl->CreateTimeRange(This,range)
3664#define IMFMediaEngineClassFactoryEx_CreateError(This,error) (This)->lpVtbl->CreateError(This,error)
3665/*** IMFMediaEngineClassFactoryEx methods ***/
3666#define IMFMediaEngineClassFactoryEx_CreateMediaSourceExtension(This,flags,attr,mse) (This)->lpVtbl->CreateMediaSourceExtension(This,flags,attr,mse)
3667#define IMFMediaEngineClassFactoryEx_CreateMediaKeys(This,key_system,cdm_store_path,keys) (This)->lpVtbl->CreateMediaKeys(This,key_system,cdm_store_path,keys)
3668#define IMFMediaEngineClassFactoryEx_IsTypeSupported(This,type,key_system,is_supported) (This)->lpVtbl->IsTypeSupported(This,type,key_system,is_supported)
3669#else
3670/*** IUnknown methods ***/
3671static inline HRESULT IMFMediaEngineClassFactoryEx_QueryInterface(IMFMediaEngineClassFactoryEx* This,REFIID riid,void **ppvObject) {
3672 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3673}
3674static inline ULONG IMFMediaEngineClassFactoryEx_AddRef(IMFMediaEngineClassFactoryEx* This) {
3675 return This->lpVtbl->AddRef(This);
3676}
3677static inline ULONG IMFMediaEngineClassFactoryEx_Release(IMFMediaEngineClassFactoryEx* This) {
3678 return This->lpVtbl->Release(This);
3679}
3680/*** IMFMediaEngineClassFactory methods ***/
3681static inline HRESULT IMFMediaEngineClassFactoryEx_CreateInstance(IMFMediaEngineClassFactoryEx* This,DWORD flags,IMFAttributes *attributes,IMFMediaEngine **engine) {
3682 return This->lpVtbl->CreateInstance(This,flags,attributes,engine);
3683}
3684static inline HRESULT IMFMediaEngineClassFactoryEx_CreateTimeRange(IMFMediaEngineClassFactoryEx* This,IMFMediaTimeRange **range) {
3685 return This->lpVtbl->CreateTimeRange(This,range);
3686}
3687static inline HRESULT IMFMediaEngineClassFactoryEx_CreateError(IMFMediaEngineClassFactoryEx* This,IMFMediaError **error) {
3688 return This->lpVtbl->CreateError(This,error);
3689}
3690/*** IMFMediaEngineClassFactoryEx methods ***/
3691static inline HRESULT IMFMediaEngineClassFactoryEx_CreateMediaSourceExtension(IMFMediaEngineClassFactoryEx* This,DWORD flags,IMFAttributes *attr,IMFMediaSourceExtension **mse) {
3692 return This->lpVtbl->CreateMediaSourceExtension(This,flags,attr,mse);
3693}
3694static inline HRESULT IMFMediaEngineClassFactoryEx_CreateMediaKeys(IMFMediaEngineClassFactoryEx* This,BSTR key_system,BSTR cdm_store_path,IMFMediaKeys **keys) {
3695 return This->lpVtbl->CreateMediaKeys(This,key_system,cdm_store_path,keys);
3696}
3697static inline HRESULT IMFMediaEngineClassFactoryEx_IsTypeSupported(IMFMediaEngineClassFactoryEx* This,BSTR type,BSTR key_system,WINBOOL *is_supported) {
3698 return This->lpVtbl->IsTypeSupported(This,type,key_system,is_supported);
3699}
3700#endif
3701#endif
3702
3703#endif
3704
3705
3706#endif /* __IMFMediaEngineClassFactoryEx_INTERFACE_DEFINED__ */
3707
3708/*****************************************************************************
3709 * IMFMediaEngineClassFactory2 interface
3710 */
3711#ifndef __IMFMediaEngineClassFactory2_INTERFACE_DEFINED__
3712#define __IMFMediaEngineClassFactory2_INTERFACE_DEFINED__
3713
3714DEFINE_GUID(IID_IMFMediaEngineClassFactory2, 0x09083cef, 0x867f, 0x4bf6, 0x87,0x76, 0xde,0xe3,0xa7,0xb4,0x2f,0xca);
3715#if defined(__cplusplus) && !defined(CINTERFACE)
3716MIDL_INTERFACE("09083cef-867f-4bf6-8776-dee3a7b42fca")
3717IMFMediaEngineClassFactory2 : public IUnknown
3718{
3719 virtual HRESULT STDMETHODCALLTYPE CreateMediaKeys2(
3720 BSTR key_system,
3721 BSTR default_cdm_store_path,
3722 BSTR inprivate_cdm_store_path,
3723 IMFMediaKeys **keys) = 0;
3724
3725};
3726#ifdef __CRT_UUID_DECL
3727__CRT_UUID_DECL(IMFMediaEngineClassFactory2, 0x09083cef, 0x867f, 0x4bf6, 0x87,0x76, 0xde,0xe3,0xa7,0xb4,0x2f,0xca)
3728#endif
3729#else
3730typedef struct IMFMediaEngineClassFactory2Vtbl {
3731 BEGIN_INTERFACE
3732
3733 /*** IUnknown methods ***/
3734 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3735 IMFMediaEngineClassFactory2 *This,
3736 REFIID riid,
3737 void **ppvObject);
3738
3739 ULONG (STDMETHODCALLTYPE *AddRef)(
3740 IMFMediaEngineClassFactory2 *This);
3741
3742 ULONG (STDMETHODCALLTYPE *Release)(
3743 IMFMediaEngineClassFactory2 *This);
3744
3745 /*** IMFMediaEngineClassFactory2 methods ***/
3746 HRESULT (STDMETHODCALLTYPE *CreateMediaKeys2)(
3747 IMFMediaEngineClassFactory2 *This,
3748 BSTR key_system,
3749 BSTR default_cdm_store_path,
3750 BSTR inprivate_cdm_store_path,
3751 IMFMediaKeys **keys);
3752
3753 END_INTERFACE
3754} IMFMediaEngineClassFactory2Vtbl;
3755
3756interface IMFMediaEngineClassFactory2 {
3757 CONST_VTBL IMFMediaEngineClassFactory2Vtbl* lpVtbl;
3758};
3759
3760#ifdef COBJMACROS
3761#ifndef WIDL_C_INLINE_WRAPPERS
3762/*** IUnknown methods ***/
3763#define IMFMediaEngineClassFactory2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3764#define IMFMediaEngineClassFactory2_AddRef(This) (This)->lpVtbl->AddRef(This)
3765#define IMFMediaEngineClassFactory2_Release(This) (This)->lpVtbl->Release(This)
3766/*** IMFMediaEngineClassFactory2 methods ***/
3767#define IMFMediaEngineClassFactory2_CreateMediaKeys2(This,key_system,default_cdm_store_path,inprivate_cdm_store_path,keys) (This)->lpVtbl->CreateMediaKeys2(This,key_system,default_cdm_store_path,inprivate_cdm_store_path,keys)
3768#else
3769/*** IUnknown methods ***/
3770static inline HRESULT IMFMediaEngineClassFactory2_QueryInterface(IMFMediaEngineClassFactory2* This,REFIID riid,void **ppvObject) {
3771 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3772}
3773static inline ULONG IMFMediaEngineClassFactory2_AddRef(IMFMediaEngineClassFactory2* This) {
3774 return This->lpVtbl->AddRef(This);
3775}
3776static inline ULONG IMFMediaEngineClassFactory2_Release(IMFMediaEngineClassFactory2* This) {
3777 return This->lpVtbl->Release(This);
3778}
3779/*** IMFMediaEngineClassFactory2 methods ***/
3780static inline HRESULT IMFMediaEngineClassFactory2_CreateMediaKeys2(IMFMediaEngineClassFactory2* This,BSTR key_system,BSTR default_cdm_store_path,BSTR inprivate_cdm_store_path,IMFMediaKeys **keys) {
3781 return This->lpVtbl->CreateMediaKeys2(This,key_system,default_cdm_store_path,inprivate_cdm_store_path,keys);
3782}
3783#endif
3784#endif
3785
3786#endif
3787
3788
3789#endif /* __IMFMediaEngineClassFactory2_INTERFACE_DEFINED__ */
23583790
2359/* Begin additional prototypes for all interfaces */3791/* Begin additional prototypes for all interfaces */
23603792
lib/libc/include/any-windows-any/mfobjects.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mfobjects.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mfobjects.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfplay.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mfplay.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mfplay.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfreadwrite.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mfreadwrite.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mfreadwrite.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mftransform.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mftransform.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mftransform.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mmdeviceapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mmdeviceapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mmdeviceapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mmstream.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mmstream.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mmstream.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mpeg2data.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mpeg2data.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mpeg2data.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mpeg2structs.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mpeg2structs.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mpeg2structs.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mscoree.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mscoree.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mscoree.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/msctf.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/msctf.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/msctf.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mshtmhst.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mshtmhst.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mshtmhst.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mshtml.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/mshtml.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/mshtml.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/msinkaut.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/msinkaut.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/msinkaut.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/msinkaut_i.c+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from msinkaut.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from msinkaut.idl - Do not edit ***/
22
3#include <rpc.h>3#include <rpc.h>
4#include <rpcndr.h>4#include <rpcndr.h>
lib/libc/include/any-windows-any/msopc.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/msopc.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/msopc.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mswsock.h+18
...@@ -36,6 +36,7 @@ extern "C" {...@@ -36,6 +36,7 @@ extern "C" {
36#define TCP_BSDURGENT 0x700036#define TCP_BSDURGENT 0x7000
3737
38#define SIO_UDP_CONNRESET _WSAIOW(IOC_VENDOR,12)38#define SIO_UDP_CONNRESET _WSAIOW(IOC_VENDOR,12)
39#define SIO_UDP_NETRESET _WSAIOW(IOC_VENDOR,15)
39#if (_WIN32_WINNT < 0x0600) && (_WIN32_WINNT >= 0x0501)40#if (_WIN32_WINNT < 0x0600) && (_WIN32_WINNT >= 0x0501)
40#define SIO_SOCKET_CLOSE_NOTIFY _WSAIOW(IOC_VENDOR,13)41#define SIO_SOCKET_CLOSE_NOTIFY _WSAIOW(IOC_VENDOR,13)
41#endif /* >= XP && < VISTA */42#endif /* >= XP && < VISTA */
...@@ -167,12 +168,20 @@ extern "C" {...@@ -167,12 +168,20 @@ extern "C" {
167 } data;168 } data;
168 } NLA_BLOB,*PNLA_BLOB,*LPNLA_BLOB;169 } NLA_BLOB,*PNLA_BLOB,*LPNLA_BLOB;
169170
171#if (_WIN32_WINNT >= 0x0600)
172#define _WSACMSGHDR cmsghdr
173#endif
174
170 typedef struct _WSACMSGHDR {175 typedef struct _WSACMSGHDR {
171 SIZE_T cmsg_len;176 SIZE_T cmsg_len;
172 INT cmsg_level;177 INT cmsg_level;
173 INT cmsg_type;178 INT cmsg_type;
174 } WSACMSGHDR,*PWSACMSGHDR,*LPWSACMSGHDR;179 } WSACMSGHDR,*PWSACMSGHDR,*LPWSACMSGHDR;
175180
181#if (_WIN32_WINNT >= 0x0600)
182typedef WSACMSGHDR CMSGHDR, *PCMSGHDR;
183#endif
184
176#define WSA_CMSGHDR_ALIGN(length) (((length) + TYPE_ALIGNMENT(WSACMSGHDR)-1) & (~(TYPE_ALIGNMENT(WSACMSGHDR)-1)))185#define WSA_CMSGHDR_ALIGN(length) (((length) + TYPE_ALIGNMENT(WSACMSGHDR)-1) & (~(TYPE_ALIGNMENT(WSACMSGHDR)-1)))
177#define WSA_CMSGDATA_ALIGN(length) (((length) + MAX_NATURAL_ALIGNMENT-1) & (~(MAX_NATURAL_ALIGNMENT-1)))186#define WSA_CMSGDATA_ALIGN(length) (((length) + MAX_NATURAL_ALIGNMENT-1) & (~(MAX_NATURAL_ALIGNMENT-1)))
178#define WSA_CMSG_FIRSTHDR(msg) (((msg)->Control.len >= sizeof(WSACMSGHDR)) ? (LPWSACMSGHDR)(msg)->Control.buf : (LPWSACMSGHDR)NULL)187#define WSA_CMSG_FIRSTHDR(msg) (((msg)->Control.len >= sizeof(WSACMSGHDR)) ? (LPWSACMSGHDR)(msg)->Control.buf : (LPWSACMSGHDR)NULL)
...@@ -181,6 +190,15 @@ extern "C" {...@@ -181,6 +190,15 @@ extern "C" {
181#define WSA_CMSG_SPACE(length) (WSA_CMSGDATA_ALIGN(sizeof(WSACMSGHDR) + WSA_CMSGHDR_ALIGN(length)))190#define WSA_CMSG_SPACE(length) (WSA_CMSGDATA_ALIGN(sizeof(WSACMSGHDR) + WSA_CMSGHDR_ALIGN(length)))
182#define WSA_CMSG_LEN(length) (WSA_CMSGDATA_ALIGN(sizeof(WSACMSGHDR)) + length)191#define WSA_CMSG_LEN(length) (WSA_CMSGDATA_ALIGN(sizeof(WSACMSGHDR)) + length)
183192
193#if (_WIN32_WINNT >= 0x0600)
194#define CMSGHDR_ALIGN WSA_CMSGHDR_ALIGN
195#define CMSGDATA_ALIGN WSA_CMSGDATA_ALIGN
196#define CMSG_FIRSTHDR WSA_CMSG_FIRSTHDR
197#define CMSG_NXTHDR WSA_CMSG_NXTHDR
198#define CMSG_SPACE WSA_CMSG_SPACE
199#define CMSG_LEN WSA_CMSG_LEN
200#endif
201
184#define MSG_TRUNC 0x0100202#define MSG_TRUNC 0x0100
185#define MSG_CTRUNC 0x0200203#define MSG_CTRUNC 0x0200
186#define MSG_BCAST 0x0400204#define MSG_BCAST 0x0400
lib/libc/include/any-windows-any/msxml.h+6-6
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/msxml.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/msxml.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -9211,7 +9211,7 @@ IXMLDocument : public IDispatch...@@ -9211,7 +9211,7 @@ IXMLDocument : public IDispatch
9211 virtual HRESULT STDMETHODCALLTYPE get_doctype(9211 virtual HRESULT STDMETHODCALLTYPE get_doctype(
9212 BSTR *p) = 0;9212 BSTR *p) = 0;
92139213
9214 virtual HRESULT STDMETHODCALLTYPE get_dtdURl(9214 virtual HRESULT STDMETHODCALLTYPE get_dtdURL(
9215 BSTR *p) = 0;9215 BSTR *p) = 0;
92169216
9217 virtual HRESULT STDMETHODCALLTYPE createElement(9217 virtual HRESULT STDMETHODCALLTYPE createElement(
...@@ -9318,7 +9318,7 @@ typedef struct IXMLDocumentVtbl {...@@ -9318,7 +9318,7 @@ typedef struct IXMLDocumentVtbl {
9318 IXMLDocument *This,9318 IXMLDocument *This,
9319 BSTR *p);9319 BSTR *p);
93209320
9321 HRESULT (STDMETHODCALLTYPE *get_dtdURl)(9321 HRESULT (STDMETHODCALLTYPE *get_dtdURL)(
9322 IXMLDocument *This,9322 IXMLDocument *This,
9323 BSTR *p);9323 BSTR *p);
93249324
...@@ -9359,7 +9359,7 @@ interface IXMLDocument {...@@ -9359,7 +9359,7 @@ interface IXMLDocument {
9359#define IXMLDocument_put_charset(This,p) (This)->lpVtbl->put_charset(This,p)9359#define IXMLDocument_put_charset(This,p) (This)->lpVtbl->put_charset(This,p)
9360#define IXMLDocument_get_version(This,p) (This)->lpVtbl->get_version(This,p)9360#define IXMLDocument_get_version(This,p) (This)->lpVtbl->get_version(This,p)
9361#define IXMLDocument_get_doctype(This,p) (This)->lpVtbl->get_doctype(This,p)9361#define IXMLDocument_get_doctype(This,p) (This)->lpVtbl->get_doctype(This,p)
9362#define IXMLDocument_get_dtdURl(This,p) (This)->lpVtbl->get_dtdURl(This,p)9362#define IXMLDocument_get_dtdURL(This,p) (This)->lpVtbl->get_dtdURL(This,p)
9363#define IXMLDocument_createElement(This,vType,var1,ppElem) (This)->lpVtbl->createElement(This,vType,var1,ppElem)9363#define IXMLDocument_createElement(This,vType,var1,ppElem) (This)->lpVtbl->createElement(This,vType,var1,ppElem)
9364#else9364#else
9365/*** IUnknown methods ***/9365/*** IUnknown methods ***/
...@@ -9422,8 +9422,8 @@ static inline HRESULT IXMLDocument_get_version(IXMLDocument* This,BSTR *p) {...@@ -9422,8 +9422,8 @@ static inline HRESULT IXMLDocument_get_version(IXMLDocument* This,BSTR *p) {
9422static inline HRESULT IXMLDocument_get_doctype(IXMLDocument* This,BSTR *p) {9422static inline HRESULT IXMLDocument_get_doctype(IXMLDocument* This,BSTR *p) {
9423 return This->lpVtbl->get_doctype(This,p);9423 return This->lpVtbl->get_doctype(This,p);
9424}9424}
9425static inline HRESULT IXMLDocument_get_dtdURl(IXMLDocument* This,BSTR *p) {9425static inline HRESULT IXMLDocument_get_dtdURL(IXMLDocument* This,BSTR *p) {
9426 return This->lpVtbl->get_dtdURl(This,p);9426 return This->lpVtbl->get_dtdURL(This,p);
9427}9427}
9428static inline HRESULT IXMLDocument_createElement(IXMLDocument* This,VARIANT vType,VARIANT var1,IXMLElement **ppElem) {9428static inline HRESULT IXMLDocument_createElement(IXMLDocument* This,VARIANT vType,VARIANT var1,IXMLElement **ppElem) {
9429 return This->lpVtbl->createElement(This,vType,var1,ppElem);9429 return This->lpVtbl->createElement(This,vType,var1,ppElem);
lib/libc/include/any-windows-any/msxml2.h+1-199
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/msxml2.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/msxml2.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -370,15 +370,6 @@ typedef struct FreeThreadedDOMDocument40 FreeThreadedDOMDocument40;...@@ -370,15 +370,6 @@ typedef struct FreeThreadedDOMDocument40 FreeThreadedDOMDocument40;
370#endif /* defined __cplusplus */370#endif /* defined __cplusplus */
371#endif /* defined __FreeThreadedDOMDocument40_FWD_DEFINED__ */371#endif /* defined __FreeThreadedDOMDocument40_FWD_DEFINED__ */
372372
373#ifndef __FreeThreadedDOMDocument60_FWD_DEFINED__
374#define __FreeThreadedDOMDocument60_FWD_DEFINED__
375#ifdef __cplusplus
376typedef class FreeThreadedDOMDocument60 FreeThreadedDOMDocument60;
377#else
378typedef struct FreeThreadedDOMDocument60 FreeThreadedDOMDocument60;
379#endif /* defined __cplusplus */
380#endif /* defined __FreeThreadedDOMDocument60_FWD_DEFINED__ */
381
382#ifndef __FreeThreadedDOMDocument_FWD_DEFINED__373#ifndef __FreeThreadedDOMDocument_FWD_DEFINED__
383#define __FreeThreadedDOMDocument_FWD_DEFINED__374#define __FreeThreadedDOMDocument_FWD_DEFINED__
384#ifdef __cplusplus375#ifdef __cplusplus
...@@ -415,15 +406,6 @@ typedef struct XMLHTTP40 XMLHTTP40;...@@ -415,15 +406,6 @@ typedef struct XMLHTTP40 XMLHTTP40;
415#endif /* defined __cplusplus */406#endif /* defined __cplusplus */
416#endif /* defined __XMLHTTP40_FWD_DEFINED__ */407#endif /* defined __XMLHTTP40_FWD_DEFINED__ */
417408
418#ifndef __XMLHTTP60_FWD_DEFINED__
419#define __XMLHTTP60_FWD_DEFINED__
420#ifdef __cplusplus
421typedef class XMLHTTP60 XMLHTTP60;
422#else
423typedef struct XMLHTTP60 XMLHTTP60;
424#endif /* defined __cplusplus */
425#endif /* defined __XMLHTTP60_FWD_DEFINED__ */
426
427#ifndef __XMLHTTP_FWD_DEFINED__409#ifndef __XMLHTTP_FWD_DEFINED__
428#define __XMLHTTP_FWD_DEFINED__410#define __XMLHTTP_FWD_DEFINED__
429#ifdef __cplusplus411#ifdef __cplusplus
...@@ -451,15 +433,6 @@ typedef struct ServerXMLHTTP40 ServerXMLHTTP40;...@@ -451,15 +433,6 @@ typedef struct ServerXMLHTTP40 ServerXMLHTTP40;
451#endif /* defined __cplusplus */433#endif /* defined __cplusplus */
452#endif /* defined __ServerXMLHTTP40_FWD_DEFINED__ */434#endif /* defined __ServerXMLHTTP40_FWD_DEFINED__ */
453435
454#ifndef __ServerXMLHTTP60_FWD_DEFINED__
455#define __ServerXMLHTTP60_FWD_DEFINED__
456#ifdef __cplusplus
457typedef class ServerXMLHTTP60 ServerXMLHTTP60;
458#else
459typedef struct ServerXMLHTTP60 ServerXMLHTTP60;
460#endif /* defined __cplusplus */
461#endif /* defined __ServerXMLHTTP60_FWD_DEFINED__ */
462
463#ifndef __ServerXMLHTTP_FWD_DEFINED__436#ifndef __ServerXMLHTTP_FWD_DEFINED__
464#define __ServerXMLHTTP_FWD_DEFINED__437#define __ServerXMLHTTP_FWD_DEFINED__
465#ifdef __cplusplus438#ifdef __cplusplus
...@@ -532,15 +505,6 @@ typedef struct XSLTemplate40 XSLTemplate40;...@@ -532,15 +505,6 @@ typedef struct XSLTemplate40 XSLTemplate40;
532#endif /* defined __cplusplus */505#endif /* defined __cplusplus */
533#endif /* defined __XSLTemplate40_FWD_DEFINED__ */506#endif /* defined __XSLTemplate40_FWD_DEFINED__ */
534507
535#ifndef __XSLTemplate60_FWD_DEFINED__
536#define __XSLTemplate60_FWD_DEFINED__
537#ifdef __cplusplus
538typedef class XSLTemplate60 XSLTemplate60;
539#else
540typedef struct XSLTemplate60 XSLTemplate60;
541#endif /* defined __cplusplus */
542#endif /* defined __XSLTemplate60_FWD_DEFINED__ */
543
544#ifndef __XSLTemplate_FWD_DEFINED__508#ifndef __XSLTemplate_FWD_DEFINED__
545#define __XSLTemplate_FWD_DEFINED__509#define __XSLTemplate_FWD_DEFINED__
546#ifdef __cplusplus510#ifdef __cplusplus
...@@ -904,15 +868,6 @@ typedef struct SAXXMLReader40 SAXXMLReader40;...@@ -904,15 +868,6 @@ typedef struct SAXXMLReader40 SAXXMLReader40;
904#endif /* defined __cplusplus */868#endif /* defined __cplusplus */
905#endif /* defined __SAXXMLReader40_FWD_DEFINED__ */869#endif /* defined __SAXXMLReader40_FWD_DEFINED__ */
906870
907#ifndef __SAXXMLReader60_FWD_DEFINED__
908#define __SAXXMLReader60_FWD_DEFINED__
909#ifdef __cplusplus
910typedef class SAXXMLReader60 SAXXMLReader60;
911#else
912typedef struct SAXXMLReader60 SAXXMLReader60;
913#endif /* defined __cplusplus */
914#endif /* defined __SAXXMLReader60_FWD_DEFINED__ */
915
916#ifndef __SAXXMLReader_FWD_DEFINED__871#ifndef __SAXXMLReader_FWD_DEFINED__
917#define __SAXXMLReader_FWD_DEFINED__872#define __SAXXMLReader_FWD_DEFINED__
918#ifdef __cplusplus873#ifdef __cplusplus
...@@ -949,15 +904,6 @@ typedef struct MXHTMLWriter40 MXHTMLWriter40;...@@ -949,15 +904,6 @@ typedef struct MXHTMLWriter40 MXHTMLWriter40;
949#endif /* defined __cplusplus */904#endif /* defined __cplusplus */
950#endif /* defined __MXHTMLWriter40_FWD_DEFINED__ */905#endif /* defined __MXHTMLWriter40_FWD_DEFINED__ */
951906
952#ifndef __MXHTMLWriter60_FWD_DEFINED__
953#define __MXHTMLWriter60_FWD_DEFINED__
954#ifdef __cplusplus
955typedef class MXHTMLWriter60 MXHTMLWriter60;
956#else
957typedef struct MXHTMLWriter60 MXHTMLWriter60;
958#endif /* defined __cplusplus */
959#endif /* defined __MXHTMLWriter60_FWD_DEFINED__ */
960
961#ifndef __MXXMLWriter30_FWD_DEFINED__907#ifndef __MXXMLWriter30_FWD_DEFINED__
962#define __MXXMLWriter30_FWD_DEFINED__908#define __MXXMLWriter30_FWD_DEFINED__
963#ifdef __cplusplus909#ifdef __cplusplus
...@@ -976,15 +922,6 @@ typedef struct MXXMLWriter40 MXXMLWriter40;...@@ -976,15 +922,6 @@ typedef struct MXXMLWriter40 MXXMLWriter40;
976#endif /* defined __cplusplus */922#endif /* defined __cplusplus */
977#endif /* defined __MXXMLWriter40_FWD_DEFINED__ */923#endif /* defined __MXXMLWriter40_FWD_DEFINED__ */
978924
979#ifndef __MXXMLWriter60_FWD_DEFINED__
980#define __MXXMLWriter60_FWD_DEFINED__
981#ifdef __cplusplus
982typedef class MXXMLWriter60 MXXMLWriter60;
983#else
984typedef struct MXXMLWriter60 MXXMLWriter60;
985#endif /* defined __cplusplus */
986#endif /* defined __MXXMLWriter60_FWD_DEFINED__ */
987
988#ifndef __MXXMLWriter_FWD_DEFINED__925#ifndef __MXXMLWriter_FWD_DEFINED__
989#define __MXXMLWriter_FWD_DEFINED__926#define __MXXMLWriter_FWD_DEFINED__
990#ifdef __cplusplus927#ifdef __cplusplus
...@@ -1012,15 +949,6 @@ typedef struct MXNamespaceManager40 MXNamespaceManager40;...@@ -1012,15 +949,6 @@ typedef struct MXNamespaceManager40 MXNamespaceManager40;
1012#endif /* defined __cplusplus */949#endif /* defined __cplusplus */
1013#endif /* defined __MXNamespaceManager40_FWD_DEFINED__ */950#endif /* defined __MXNamespaceManager40_FWD_DEFINED__ */
1014951
1015#ifndef __MXNamespaceManager60_FWD_DEFINED__
1016#define __MXNamespaceManager60_FWD_DEFINED__
1017#ifdef __cplusplus
1018typedef class MXNamespaceManager60 MXNamespaceManager60;
1019#else
1020typedef struct MXNamespaceManager60 MXNamespaceManager60;
1021#endif /* defined __cplusplus */
1022#endif /* defined __MXNamespaceManager60_FWD_DEFINED__ */
1023
1024#ifndef __SAXAttributes30_FWD_DEFINED__952#ifndef __SAXAttributes30_FWD_DEFINED__
1025#define __SAXAttributes30_FWD_DEFINED__953#define __SAXAttributes30_FWD_DEFINED__
1026#ifdef __cplusplus954#ifdef __cplusplus
...@@ -1039,15 +967,6 @@ typedef struct SAXAttributes40 SAXAttributes40;...@@ -1039,15 +967,6 @@ typedef struct SAXAttributes40 SAXAttributes40;
1039#endif /* defined __cplusplus */967#endif /* defined __cplusplus */
1040#endif /* defined __SAXAttributes40_FWD_DEFINED__ */968#endif /* defined __SAXAttributes40_FWD_DEFINED__ */
1041969
1042#ifndef __SAXAttributes60_FWD_DEFINED__
1043#define __SAXAttributes60_FWD_DEFINED__
1044#ifdef __cplusplus
1045typedef class SAXAttributes60 SAXAttributes60;
1046#else
1047typedef struct SAXAttributes60 SAXAttributes60;
1048#endif /* defined __cplusplus */
1049#endif /* defined __SAXAttributes60_FWD_DEFINED__ */
1050
1051#ifndef __SAXAttributes_FWD_DEFINED__970#ifndef __SAXAttributes_FWD_DEFINED__
1052#define __SAXAttributes_FWD_DEFINED__971#define __SAXAttributes_FWD_DEFINED__
1053#ifdef __cplusplus972#ifdef __cplusplus
...@@ -14665,19 +14584,6 @@ __CRT_UUID_DECL(FreeThreadedDOMDocument40, 0x88d969c1, 0xf192, 0x11d4, 0xa6,0x5f...@@ -14665,19 +14584,6 @@ __CRT_UUID_DECL(FreeThreadedDOMDocument40, 0x88d969c1, 0xf192, 0x11d4, 0xa6,0x5f
14665#endif14584#endif
14666#endif14585#endif
1466714586
14668/*****************************************************************************
14669 * FreeThreadedDOMDocument60 coclass
14670 */
14671
14672DEFINE_GUID(CLSID_FreeThreadedDOMDocument60, 0x88d96a06, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14673
14674#ifdef __cplusplus
14675class DECLSPEC_UUID("88d96a06-f192-11d4-a65f-0040963251e5") FreeThreadedDOMDocument60;
14676#ifdef __CRT_UUID_DECL
14677__CRT_UUID_DECL(FreeThreadedDOMDocument60, 0x88d96a06, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14678#endif
14679#endif
14680
14681/*****************************************************************************14587/*****************************************************************************
14682 * FreeThreadedDOMDocument coclass14588 * FreeThreadedDOMDocument coclass
14683 */14589 */
...@@ -14730,19 +14636,6 @@ __CRT_UUID_DECL(XMLHTTP40, 0x88d969c5, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96...@@ -14730,19 +14636,6 @@ __CRT_UUID_DECL(XMLHTTP40, 0x88d969c5, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96
14730#endif14636#endif
14731#endif14637#endif
1473214638
14733/*****************************************************************************
14734 * XMLHTTP60 coclass
14735 */
14736
14737DEFINE_GUID(CLSID_XMLHTTP60, 0x88d96a0a, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14738
14739#ifdef __cplusplus
14740class DECLSPEC_UUID("88d96a0a-f192-11d4-a65f-0040963251e5") XMLHTTP60;
14741#ifdef __CRT_UUID_DECL
14742__CRT_UUID_DECL(XMLHTTP60, 0x88d96a0a, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14743#endif
14744#endif
14745
14746/*****************************************************************************14639/*****************************************************************************
14747 * XMLHTTP coclass14640 * XMLHTTP coclass
14748 */14641 */
...@@ -14782,19 +14675,6 @@ __CRT_UUID_DECL(ServerXMLHTTP40, 0x88d969c6, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x4...@@ -14782,19 +14675,6 @@ __CRT_UUID_DECL(ServerXMLHTTP40, 0x88d969c6, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x4
14782#endif14675#endif
14783#endif14676#endif
1478414677
14785/*****************************************************************************
14786 * ServerXMLHTTP60 coclass
14787 */
14788
14789DEFINE_GUID(CLSID_ServerXMLHTTP60, 0x88d96a0b, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14790
14791#ifdef __cplusplus
14792class DECLSPEC_UUID("88d96a0b-f192-11d4-a65f-0040963251e5") ServerXMLHTTP60;
14793#ifdef __CRT_UUID_DECL
14794__CRT_UUID_DECL(ServerXMLHTTP60, 0x88d96a0b, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14795#endif
14796#endif
14797
14798/*****************************************************************************14678/*****************************************************************************
14799 * ServerXMLHTTP coclass14679 * ServerXMLHTTP coclass
14800 */14680 */
...@@ -14899,19 +14779,6 @@ __CRT_UUID_DECL(XSLTemplate40, 0x88d969c3, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,...@@ -14899,19 +14779,6 @@ __CRT_UUID_DECL(XSLTemplate40, 0x88d969c3, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,
14899#endif14779#endif
14900#endif14780#endif
1490114781
14902/*****************************************************************************
14903 * XSLTemplate60 coclass
14904 */
14905
14906DEFINE_GUID(CLSID_XSLTemplate60, 0x88d96a08, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
14907
14908#ifdef __cplusplus
14909class DECLSPEC_UUID("88d96a08-f192-11d4-a65f-0040963251e5") XSLTemplate60;
14910#ifdef __CRT_UUID_DECL
14911__CRT_UUID_DECL(XSLTemplate60, 0x88d96a08, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
14912#endif
14913#endif
14914
14915/*****************************************************************************14782/*****************************************************************************
14916 * XSLTemplate coclass14783 * XSLTemplate coclass
14917 */14784 */
...@@ -23605,19 +23472,6 @@ __CRT_UUID_DECL(SAXXMLReader40, 0x7c6e29bc, 0x8b8b, 0x4c3d, 0x85,0x9e, 0xaf,0x6c...@@ -23605,19 +23472,6 @@ __CRT_UUID_DECL(SAXXMLReader40, 0x7c6e29bc, 0x8b8b, 0x4c3d, 0x85,0x9e, 0xaf,0x6c
23605#endif23472#endif
23606#endif23473#endif
2360723474
23608/*****************************************************************************
23609 * SAXXMLReader60 coclass
23610 */
23611
23612DEFINE_GUID(CLSID_SAXXMLReader60, 0x88d96a0c, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23613
23614#ifdef __cplusplus
23615class DECLSPEC_UUID("88d96a0c-f192-11d4-a65f-0040963251e5") SAXXMLReader60;
23616#ifdef __CRT_UUID_DECL
23617__CRT_UUID_DECL(SAXXMLReader60, 0x88d96a0c, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23618#endif
23619#endif
23620
23621/*****************************************************************************23475/*****************************************************************************
23622 * SAXXMLReader coclass23476 * SAXXMLReader coclass
23623 */23477 */
...@@ -23670,19 +23524,6 @@ __CRT_UUID_DECL(MXHTMLWriter40, 0x88d969c9, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40...@@ -23670,19 +23524,6 @@ __CRT_UUID_DECL(MXHTMLWriter40, 0x88d969c9, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40
23670#endif23524#endif
23671#endif23525#endif
2367223526
23673/*****************************************************************************
23674 * MXHTMLWriter60 coclass
23675 */
23676
23677DEFINE_GUID(CLSID_MXHTMLWriter60, 0x88d96a10, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23678
23679#ifdef __cplusplus
23680class DECLSPEC_UUID("88d96a10-f192-11d4-a65f-0040963251e5") MXHTMLWriter60;
23681#ifdef __CRT_UUID_DECL
23682__CRT_UUID_DECL(MXHTMLWriter60, 0x88d96a10, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23683#endif
23684#endif
23685
23686/*****************************************************************************23527/*****************************************************************************
23687 * MXXMLWriter30 coclass23528 * MXXMLWriter30 coclass
23688 */23529 */
...@@ -23709,19 +23550,6 @@ __CRT_UUID_DECL(MXXMLWriter40, 0x88d969c8, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,...@@ -23709,19 +23550,6 @@ __CRT_UUID_DECL(MXXMLWriter40, 0x88d969c8, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,
23709#endif23550#endif
23710#endif23551#endif
2371123552
23712/*****************************************************************************
23713 * MXXMLWriter60 coclass
23714 */
23715
23716DEFINE_GUID(CLSID_MXXMLWriter60, 0x88d96a0f, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23717
23718#ifdef __cplusplus
23719class DECLSPEC_UUID("88d96a0f-f192-11d4-a65f-0040963251e5") MXXMLWriter60;
23720#ifdef __CRT_UUID_DECL
23721__CRT_UUID_DECL(MXXMLWriter60, 0x88d96a0f, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23722#endif
23723#endif
23724
23725/*****************************************************************************23553/*****************************************************************************
23726 * MXXMLWriter coclass23554 * MXXMLWriter coclass
23727 */23555 */
...@@ -23761,19 +23589,6 @@ __CRT_UUID_DECL(MXNamespaceManager40, 0x88d969d6, 0xf192, 0x11d4, 0xa6,0x5f, 0x0...@@ -23761,19 +23589,6 @@ __CRT_UUID_DECL(MXNamespaceManager40, 0x88d969d6, 0xf192, 0x11d4, 0xa6,0x5f, 0x0
23761#endif23589#endif
23762#endif23590#endif
2376323591
23764/*****************************************************************************
23765 * MXNamespaceManager60 coclass
23766 */
23767
23768DEFINE_GUID(CLSID_MXNamespaceManager60, 0x88d96a11, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23769
23770#ifdef __cplusplus
23771class DECLSPEC_UUID("88d96a11-f192-11d4-a65f-0040963251e5") MXNamespaceManager60;
23772#ifdef __CRT_UUID_DECL
23773__CRT_UUID_DECL(MXNamespaceManager60, 0x88d96a11, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23774#endif
23775#endif
23776
23777/*****************************************************************************23592/*****************************************************************************
23778 * SAXAttributes30 coclass23593 * SAXAttributes30 coclass
23779 */23594 */
...@@ -23800,19 +23615,6 @@ __CRT_UUID_DECL(SAXAttributes40, 0x88d969ca, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x4...@@ -23800,19 +23615,6 @@ __CRT_UUID_DECL(SAXAttributes40, 0x88d969ca, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x4
23800#endif23615#endif
23801#endif23616#endif
2380223617
23803/*****************************************************************************
23804 * SAXAttributes60 coclass
23805 */
23806
23807DEFINE_GUID(CLSID_SAXAttributes60, 0x88d96a0e, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5);
23808
23809#ifdef __cplusplus
23810class DECLSPEC_UUID("88d96a0e-f192-11d4-a65f-0040963251e5") SAXAttributes60;
23811#ifdef __CRT_UUID_DECL
23812__CRT_UUID_DECL(SAXAttributes60, 0x88d96a0e, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96,0x32,0x51,0xe5)
23813#endif
23814#endif
23815
23816/*****************************************************************************23618/*****************************************************************************
23817 * SAXAttributes coclass23619 * SAXAttributes coclass
23818 */23620 */
lib/libc/include/any-windows-any/msxml6.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/msxml6.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/msxml6.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napcertrelyingparty.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/napcertrelyingparty.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/napcertrelyingparty.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napcommon.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/napcommon.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/napcommon.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napenforcementclient.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/napenforcementclient.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/napenforcementclient.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napmanagement.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/napmanagement.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/napmanagement.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napprotocol.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/napprotocol.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/napprotocol.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napservermanagement.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/napservermanagement.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/napservermanagement.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napsystemhealthagent.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/napsystemhealthagent.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/napsystemhealthagent.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napsystemhealthvalidator.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/napsystemhealthvalidator.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/napsystemhealthvalidator.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/naptypes.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/naptypes.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/naptypes.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/netcfgn.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/netcfgn.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/netcfgn.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/netcfgx.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/netcfgx.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/netcfgx.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/netfw.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/netfw.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/netfw.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/netlistmgr.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/netlistmgr.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/netlistmgr.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/new.h+2
...@@ -13,6 +13,7 @@...@@ -13,6 +13,7 @@
13#include <crtdefs.h>13#include <crtdefs.h>
14#pragma push_macro("new")14#pragma push_macro("new")
15#undef new15#undef new
16extern "C" {
16#endif17#endif
1718
18#ifndef __NOTHROW_T_DEFINED19#ifndef __NOTHROW_T_DEFINED
...@@ -41,6 +42,7 @@ _CRTIMP _PNH __cdecl _set_new_handler(_PNH _NewHandler);...@@ -41,6 +42,7 @@ _CRTIMP _PNH __cdecl _set_new_handler(_PNH _NewHandler);
41#endif42#endif
4243
43#ifdef __cplusplus44#ifdef __cplusplus
45}
44#pragma pop_macro("new")46#pragma pop_macro("new")
45#endif47#endif
4648
lib/libc/include/any-windows-any/oaidl.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/oaidl.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/oaidl.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/objectarray.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/objectarray.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/objectarray.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/objidl.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/objidl.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/objidl.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/objidlbase.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/objidlbase.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/objidlbase.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ocidl.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/ocidl.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/ocidl.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/oleacc.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/oleacc.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/oleacc.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/oleidl.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/oleidl.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/oleidl.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/optary.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/optary.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/optary.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/pathcch.h+5
...@@ -3,6 +3,9 @@...@@ -3,6 +3,9 @@
3 * No warranty is given; refer to the file DISCLAIMER within this package.3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */4 */
55
6#ifndef __PATHCCH_H__
7#define __PATHCCH_H__
8
6#include <apiset.h>9#include <apiset.h>
7#include <apisetcconv.h>10#include <apisetcconv.h>
8#include <minwindef.h>11#include <minwindef.h>
...@@ -135,3 +138,5 @@ DEFINE_ENUM_FLAG_OPERATORS(PATHCCH_OPTIONS)...@@ -135,3 +138,5 @@ DEFINE_ENUM_FLAG_OPERATORS(PATHCCH_OPTIONS)
135}138}
136#endif139#endif
137#endif140#endif
141
142#endif
lib/libc/include/any-windows-any/pdhmsg.h+86-86
...@@ -11,91 +11,91 @@...@@ -11,91 +11,91 @@
11#define STATUS_SEVERITY_INFORMATIONAL 0x111#define STATUS_SEVERITY_INFORMATIONAL 0x1
12#define STATUS_SEVERITY_ERROR 0x312#define STATUS_SEVERITY_ERROR 0x3
1313
14#define PDH_CSTATUS_VALID_DATA ((DWORD)0x00000000)14#define PDH_CSTATUS_VALID_DATA __MSABI_LONG(0x00000000)
15#define PDH_CSTATUS_NEW_DATA ((DWORD)0x00000001)15#define PDH_CSTATUS_NEW_DATA __MSABI_LONG(0x00000001)
16#define PDH_CSTATUS_NO_MACHINE ((DWORD)0x800007D0)16#define PDH_CSTATUS_NO_MACHINE __MSABI_LONG(0x800007D0)
17#define PDH_CSTATUS_NO_INSTANCE ((DWORD)0x800007D1)17#define PDH_CSTATUS_NO_INSTANCE __MSABI_LONG(0x800007D1)
18#define PDH_MORE_DATA ((DWORD)0x800007D2)18#define PDH_MORE_DATA __MSABI_LONG(0x800007D2)
19#define PDH_CSTATUS_ITEM_NOT_VALIDATED ((DWORD)0x800007D3)19#define PDH_CSTATUS_ITEM_NOT_VALIDATED __MSABI_LONG(0x800007D3)
20#define PDH_RETRY ((DWORD)0x800007D4)20#define PDH_RETRY __MSABI_LONG(0x800007D4)
21#define PDH_NO_DATA ((DWORD)0x800007D5)21#define PDH_NO_DATA __MSABI_LONG(0x800007D5)
22#define PDH_CALC_NEGATIVE_DENOMINATOR ((DWORD)0x800007D6)22#define PDH_CALC_NEGATIVE_DENOMINATOR __MSABI_LONG(0x800007D6)
23#define PDH_CALC_NEGATIVE_TIMEBASE ((DWORD)0x800007D7)23#define PDH_CALC_NEGATIVE_TIMEBASE __MSABI_LONG(0x800007D7)
24#define PDH_CALC_NEGATIVE_VALUE ((DWORD)0x800007D8)24#define PDH_CALC_NEGATIVE_VALUE __MSABI_LONG(0x800007D8)
25#define PDH_DIALOG_CANCELLED ((DWORD)0x800007D9)25#define PDH_DIALOG_CANCELLED __MSABI_LONG(0x800007D9)
26#define PDH_END_OF_LOG_FILE ((DWORD)0x800007DA)26#define PDH_END_OF_LOG_FILE __MSABI_LONG(0x800007DA)
27#define PDH_ASYNC_QUERY_TIMEOUT ((DWORD)0x800007DB)27#define PDH_ASYNC_QUERY_TIMEOUT __MSABI_LONG(0x800007DB)
28#define PDH_CANNOT_SET_DEFAULT_REALTIME_DATASOURCE ((DWORD)0x800007DC)28#define PDH_CANNOT_SET_DEFAULT_REALTIME_DATASOURCE __MSABI_LONG(0x800007DC)
29#define PDH_CSTATUS_NO_OBJECT ((DWORD)0xC0000BB8)29#define PDH_CSTATUS_NO_OBJECT __MSABI_LONG(0xC0000BB8)
30#define PDH_CSTATUS_NO_COUNTER ((DWORD)0xC0000BB9)30#define PDH_CSTATUS_NO_COUNTER __MSABI_LONG(0xC0000BB9)
31#define PDH_CSTATUS_INVALID_DATA ((DWORD)0xC0000BBA)31#define PDH_CSTATUS_INVALID_DATA __MSABI_LONG(0xC0000BBA)
32#define PDH_MEMORY_ALLOCATION_FAILURE ((DWORD)0xC0000BBB)32#define PDH_MEMORY_ALLOCATION_FAILURE __MSABI_LONG(0xC0000BBB)
33#define PDH_INVALID_HANDLE ((DWORD)0xC0000BBC)33#define PDH_INVALID_HANDLE __MSABI_LONG(0xC0000BBC)
34#define PDH_INVALID_ARGUMENT ((DWORD)0xC0000BBD)34#define PDH_INVALID_ARGUMENT __MSABI_LONG(0xC0000BBD)
35#define PDH_FUNCTION_NOT_FOUND ((DWORD)0xC0000BBE)35#define PDH_FUNCTION_NOT_FOUND __MSABI_LONG(0xC0000BBE)
36#define PDH_CSTATUS_NO_COUNTERNAME ((DWORD)0xC0000BBF)36#define PDH_CSTATUS_NO_COUNTERNAME __MSABI_LONG(0xC0000BBF)
37#define PDH_CSTATUS_BAD_COUNTERNAME ((DWORD)0xC0000BC0)37#define PDH_CSTATUS_BAD_COUNTERNAME __MSABI_LONG(0xC0000BC0)
38#define PDH_INVALID_BUFFER ((DWORD)0xC0000BC1)38#define PDH_INVALID_BUFFER __MSABI_LONG(0xC0000BC1)
39#define PDH_INSUFFICIENT_BUFFER ((DWORD)0xC0000BC2)39#define PDH_INSUFFICIENT_BUFFER __MSABI_LONG(0xC0000BC2)
40#define PDH_CANNOT_CONNECT_MACHINE ((DWORD)0xC0000BC3)40#define PDH_CANNOT_CONNECT_MACHINE __MSABI_LONG(0xC0000BC3)
41#define PDH_INVALID_PATH ((DWORD)0xC0000BC4)41#define PDH_INVALID_PATH __MSABI_LONG(0xC0000BC4)
42#define PDH_INVALID_INSTANCE ((DWORD)0xC0000BC5)42#define PDH_INVALID_INSTANCE __MSABI_LONG(0xC0000BC5)
43#define PDH_INVALID_DATA ((DWORD)0xC0000BC6)43#define PDH_INVALID_DATA __MSABI_LONG(0xC0000BC6)
44#define PDH_NO_DIALOG_DATA ((DWORD)0xC0000BC7)44#define PDH_NO_DIALOG_DATA __MSABI_LONG(0xC0000BC7)
45#define PDH_CANNOT_READ_NAME_STRINGS ((DWORD)0xC0000BC8)45#define PDH_CANNOT_READ_NAME_STRINGS __MSABI_LONG(0xC0000BC8)
46#define PDH_LOG_FILE_CREATE_ERROR ((DWORD)0xC0000BC9)46#define PDH_LOG_FILE_CREATE_ERROR __MSABI_LONG(0xC0000BC9)
47#define PDH_LOG_FILE_OPEN_ERROR ((DWORD)0xC0000BCA)47#define PDH_LOG_FILE_OPEN_ERROR __MSABI_LONG(0xC0000BCA)
48#define PDH_LOG_TYPE_NOT_FOUND ((DWORD)0xC0000BCB)48#define PDH_LOG_TYPE_NOT_FOUND __MSABI_LONG(0xC0000BCB)
49#define PDH_NO_MORE_DATA ((DWORD)0xC0000BCC)49#define PDH_NO_MORE_DATA __MSABI_LONG(0xC0000BCC)
50#define PDH_ENTRY_NOT_IN_LOG_FILE ((DWORD)0xC0000BCD)50#define PDH_ENTRY_NOT_IN_LOG_FILE __MSABI_LONG(0xC0000BCD)
51#define PDH_DATA_SOURCE_IS_LOG_FILE ((DWORD)0xC0000BCE)51#define PDH_DATA_SOURCE_IS_LOG_FILE __MSABI_LONG(0xC0000BCE)
52#define PDH_DATA_SOURCE_IS_REAL_TIME ((DWORD)0xC0000BCF)52#define PDH_DATA_SOURCE_IS_REAL_TIME __MSABI_LONG(0xC0000BCF)
53#define PDH_UNABLE_READ_LOG_HEADER ((DWORD)0xC0000BD0)53#define PDH_UNABLE_READ_LOG_HEADER __MSABI_LONG(0xC0000BD0)
54#define PDH_FILE_NOT_FOUND ((DWORD)0xC0000BD1)54#define PDH_FILE_NOT_FOUND __MSABI_LONG(0xC0000BD1)
55#define PDH_FILE_ALREADY_EXISTS ((DWORD)0xC0000BD2)55#define PDH_FILE_ALREADY_EXISTS __MSABI_LONG(0xC0000BD2)
56#define PDH_NOT_IMPLEMENTED ((DWORD)0xC0000BD3)56#define PDH_NOT_IMPLEMENTED __MSABI_LONG(0xC0000BD3)
57#define PDH_STRING_NOT_FOUND ((DWORD)0xC0000BD4)57#define PDH_STRING_NOT_FOUND __MSABI_LONG(0xC0000BD4)
58#define PDH_UNABLE_MAP_NAME_FILES ((DWORD)0x80000BD5)58#define PDH_UNABLE_MAP_NAME_FILES __MSABI_LONG(0x80000BD5)
59#define PDH_UNKNOWN_LOG_FORMAT ((DWORD)0xC0000BD6)59#define PDH_UNKNOWN_LOG_FORMAT __MSABI_LONG(0xC0000BD6)
60#define PDH_UNKNOWN_LOGSVC_COMMAND ((DWORD)0xC0000BD7)60#define PDH_UNKNOWN_LOGSVC_COMMAND __MSABI_LONG(0xC0000BD7)
61#define PDH_LOGSVC_QUERY_NOT_FOUND ((DWORD)0xC0000BD8)61#define PDH_LOGSVC_QUERY_NOT_FOUND __MSABI_LONG(0xC0000BD8)
62#define PDH_LOGSVC_NOT_OPENED ((DWORD)0xC0000BD9)62#define PDH_LOGSVC_NOT_OPENED __MSABI_LONG(0xC0000BD9)
63#define PDH_WBEM_ERROR ((DWORD)0xC0000BDA)63#define PDH_WBEM_ERROR __MSABI_LONG(0xC0000BDA)
64#define PDH_ACCESS_DENIED ((DWORD)0xC0000BDB)64#define PDH_ACCESS_DENIED __MSABI_LONG(0xC0000BDB)
65#define PDH_LOG_FILE_TOO_SMALL ((DWORD)0xC0000BDC)65#define PDH_LOG_FILE_TOO_SMALL __MSABI_LONG(0xC0000BDC)
66#define PDH_INVALID_DATASOURCE ((DWORD)0xC0000BDD)66#define PDH_INVALID_DATASOURCE __MSABI_LONG(0xC0000BDD)
67#define PDH_INVALID_SQLDB ((DWORD)0xC0000BDE)67#define PDH_INVALID_SQLDB __MSABI_LONG(0xC0000BDE)
68#define PDH_NO_COUNTERS ((DWORD)0xC0000BDF)68#define PDH_NO_COUNTERS __MSABI_LONG(0xC0000BDF)
69#define PDH_SQL_ALLOC_FAILED ((DWORD)0xC0000BE0)69#define PDH_SQL_ALLOC_FAILED __MSABI_LONG(0xC0000BE0)
70#define PDH_SQL_ALLOCCON_FAILED ((DWORD)0xC0000BE1)70#define PDH_SQL_ALLOCCON_FAILED __MSABI_LONG(0xC0000BE1)
71#define PDH_SQL_EXEC_DIRECT_FAILED ((DWORD)0xC0000BE2)71#define PDH_SQL_EXEC_DIRECT_FAILED __MSABI_LONG(0xC0000BE2)
72#define PDH_SQL_FETCH_FAILED ((DWORD)0xC0000BE3)72#define PDH_SQL_FETCH_FAILED __MSABI_LONG(0xC0000BE3)
73#define PDH_SQL_ROWCOUNT_FAILED ((DWORD)0xC0000BE4)73#define PDH_SQL_ROWCOUNT_FAILED __MSABI_LONG(0xC0000BE4)
74#define PDH_SQL_MORE_RESULTS_FAILED ((DWORD)0xC0000BE5)74#define PDH_SQL_MORE_RESULTS_FAILED __MSABI_LONG(0xC0000BE5)
75#define PDH_SQL_CONNECT_FAILED ((DWORD)0xC0000BE6)75#define PDH_SQL_CONNECT_FAILED __MSABI_LONG(0xC0000BE6)
76#define PDH_SQL_BIND_FAILED ((DWORD)0xC0000BE7)76#define PDH_SQL_BIND_FAILED __MSABI_LONG(0xC0000BE7)
77#define PDH_CANNOT_CONNECT_WMI_SERVER ((DWORD)0xC0000BE8)77#define PDH_CANNOT_CONNECT_WMI_SERVER __MSABI_LONG(0xC0000BE8)
78#define PDH_PLA_COLLECTION_ALREADY_RUNNING ((DWORD)0xC0000BE9)78#define PDH_PLA_COLLECTION_ALREADY_RUNNING __MSABI_LONG(0xC0000BE9)
79#define PDH_PLA_ERROR_SCHEDULE_OVERLAP ((DWORD)0xC0000BEA)79#define PDH_PLA_ERROR_SCHEDULE_OVERLAP __MSABI_LONG(0xC0000BEA)
80#define PDH_PLA_COLLECTION_NOT_FOUND ((DWORD)0xC0000BEB)80#define PDH_PLA_COLLECTION_NOT_FOUND __MSABI_LONG(0xC0000BEB)
81#define PDH_PLA_ERROR_SCHEDULE_ELAPSED ((DWORD)0xC0000BEC)81#define PDH_PLA_ERROR_SCHEDULE_ELAPSED __MSABI_LONG(0xC0000BEC)
82#define PDH_PLA_ERROR_NOSTART ((DWORD)0xC0000BED)82#define PDH_PLA_ERROR_NOSTART __MSABI_LONG(0xC0000BED)
83#define PDH_PLA_ERROR_ALREADY_EXISTS ((DWORD)0xC0000BEE)83#define PDH_PLA_ERROR_ALREADY_EXISTS __MSABI_LONG(0xC0000BEE)
84#define PDH_PLA_ERROR_TYPE_MISMATCH ((DWORD)0xC0000BEF)84#define PDH_PLA_ERROR_TYPE_MISMATCH __MSABI_LONG(0xC0000BEF)
85#define PDH_PLA_ERROR_FILEPATH ((DWORD)0xC0000BF0)85#define PDH_PLA_ERROR_FILEPATH __MSABI_LONG(0xC0000BF0)
86#define PDH_PLA_SERVICE_ERROR ((DWORD)0xC0000BF1)86#define PDH_PLA_SERVICE_ERROR __MSABI_LONG(0xC0000BF1)
87#define PDH_PLA_VALIDATION_ERROR ((DWORD)0xC0000BF2)87#define PDH_PLA_VALIDATION_ERROR __MSABI_LONG(0xC0000BF2)
88#define PDH_PLA_VALIDATION_WARNING ((DWORD)0x80000BF3)88#define PDH_PLA_VALIDATION_WARNING __MSABI_LONG(0x80000BF3)
89#define PDH_PLA_ERROR_NAME_TOO_LONG ((DWORD)0xC0000BF4)89#define PDH_PLA_ERROR_NAME_TOO_LONG __MSABI_LONG(0xC0000BF4)
90#define PDH_INVALID_SQL_LOG_FORMAT ((DWORD)0xC0000BF5)90#define PDH_INVALID_SQL_LOG_FORMAT __MSABI_LONG(0xC0000BF5)
91#define PDH_COUNTER_ALREADY_IN_QUERY ((DWORD)0xC0000BF6)91#define PDH_COUNTER_ALREADY_IN_QUERY __MSABI_LONG(0xC0000BF6)
92#define PDH_BINARY_LOG_CORRUPT ((DWORD)0xC0000BF7)92#define PDH_BINARY_LOG_CORRUPT __MSABI_LONG(0xC0000BF7)
93#define PDH_LOG_SAMPLE_TOO_SMALL ((DWORD)0xC0000BF8)93#define PDH_LOG_SAMPLE_TOO_SMALL __MSABI_LONG(0xC0000BF8)
94#define PDH_OS_LATER_VERSION ((DWORD)0xC0000BF9)94#define PDH_OS_LATER_VERSION __MSABI_LONG(0xC0000BF9)
95#define PDH_OS_EARLIER_VERSION ((DWORD)0xC0000BFA)95#define PDH_OS_EARLIER_VERSION __MSABI_LONG(0xC0000BFA)
96#define PDH_INCORRECT_APPEND_TIME ((DWORD)0xC0000BFB)96#define PDH_INCORRECT_APPEND_TIME __MSABI_LONG(0xC0000BFB)
97#define PDH_UNMATCHED_APPEND_COUNTER ((DWORD)0xC0000BFC)97#define PDH_UNMATCHED_APPEND_COUNTER __MSABI_LONG(0xC0000BFC)
98#define PDH_SQL_ALTER_DETAIL_FAILED ((DWORD)0xC0000BFD)98#define PDH_SQL_ALTER_DETAIL_FAILED __MSABI_LONG(0xC0000BFD)
99#define PDH_QUERY_PERF_DATA_TIMEOUT ((DWORD)0xC0000BFE)99#define PDH_QUERY_PERF_DATA_TIMEOUT __MSABI_LONG(0xC0000BFE)
100100
101#endif101#endif
lib/libc/include/any-windows-any/portabledeviceapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/portabledeviceapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/portabledeviceapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/portabledevicetypes.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/portabledevicetypes.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/portabledevicetypes.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/proofofpossessioncookieinfo.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/proofofpossessioncookieinfo.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/proofofpossessioncookieinfo.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/propidl.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/propidl.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/propidl.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/propsys.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/propsys.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/propsys.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/propvarutil.h+11-1
...@@ -78,6 +78,14 @@ enum tagPROPVAR_COMPARE_FLAGS...@@ -78,6 +78,14 @@ enum tagPROPVAR_COMPARE_FLAGS
7878
79typedef int PROPVAR_COMPARE_FLAGS;79typedef int PROPVAR_COMPARE_FLAGS;
8080
81enum tagPSTIME_FLAGS
82{
83 PSTF_UTC = 0x00000000,
84 PSTF_LOCAL = 0x00000001,
85};
86
87typedef int PSTIME_FLAGS;
88
81PSSTDAPI PropVariantChangeType(PROPVARIANT *ppropvarDest, REFPROPVARIANT propvarSrc,89PSSTDAPI PropVariantChangeType(PROPVARIANT *ppropvarDest, REFPROPVARIANT propvarSrc,
82 PROPVAR_CHANGE_FLAGS flags, VARTYPE vt);90 PROPVAR_CHANGE_FLAGS flags, VARTYPE vt);
83PSSTDAPI InitPropVariantFromGUIDAsString(REFGUID guid, PROPVARIANT *ppropvar);91PSSTDAPI InitPropVariantFromGUIDAsString(REFGUID guid, PROPVARIANT *ppropvar);
...@@ -86,7 +94,6 @@ PSSTDAPI InitVariantFromGUIDAsString(REFGUID guid, VARIANT *pvar);...@@ -86,7 +94,6 @@ PSSTDAPI InitVariantFromGUIDAsString(REFGUID guid, VARIANT *pvar);
86PSSTDAPI InitPropVariantFromBuffer(const VOID *pv, UINT cb, PROPVARIANT *ppropvar);94PSSTDAPI InitPropVariantFromBuffer(const VOID *pv, UINT cb, PROPVARIANT *ppropvar);
87PSSTDAPI InitPropVariantFromCLSID(REFCLSID clsid, PROPVARIANT *ppropvar);95PSSTDAPI InitPropVariantFromCLSID(REFCLSID clsid, PROPVARIANT *ppropvar);
88PSSTDAPI InitVariantFromBuffer(const VOID *pv, UINT cb, VARIANT *pvar);96PSSTDAPI InitVariantFromBuffer(const VOID *pv, UINT cb, VARIANT *pvar);
89PSSTDAPI PropVariantToGUID(const PROPVARIANT *ppropvar, GUID *guid);
90PSSTDAPI VariantToGUID(const VARIANT *pvar, GUID *guid);97PSSTDAPI VariantToGUID(const VARIANT *pvar, GUID *guid);
91PSSTDAPI_(INT) PropVariantCompareEx(REFPROPVARIANT propvar1, REFPROPVARIANT propvar2,98PSSTDAPI_(INT) PropVariantCompareEx(REFPROPVARIANT propvar1, REFPROPVARIANT propvar2,
92 PROPVAR_COMPARE_UNIT uint, PROPVAR_COMPARE_FLAGS flags);99 PROPVAR_COMPARE_UNIT uint, PROPVAR_COMPARE_FLAGS flags);
...@@ -94,11 +101,14 @@ PSSTDAPI InitPropVariantFromFileTime(const FILETIME *pftIn, PROPVARIANT *ppropva...@@ -94,11 +101,14 @@ PSSTDAPI InitPropVariantFromFileTime(const FILETIME *pftIn, PROPVARIANT *ppropva
94PSSTDAPI InitPropVariantFromStringVector(PCWSTR *strs, ULONG count, PROPVARIANT *ppropvar);101PSSTDAPI InitPropVariantFromStringVector(PCWSTR *strs, ULONG count, PROPVARIANT *ppropvar);
95102
96PSSTDAPI PropVariantToDouble(REFPROPVARIANT propvarIn, double *ret);103PSSTDAPI PropVariantToDouble(REFPROPVARIANT propvarIn, double *ret);
104PSSTDAPI PropVariantToFileTime(REFPROPVARIANT propvar, PSTIME_FLAGS flags, FILETIME *out);
105PSSTDAPI PropVariantToGUID(REFPROPVARIANT ppropvar, GUID *guid);
97PSSTDAPI PropVariantToInt16(REFPROPVARIANT propvarIn, SHORT *ret);106PSSTDAPI PropVariantToInt16(REFPROPVARIANT propvarIn, SHORT *ret);
98PSSTDAPI PropVariantToInt32(REFPROPVARIANT propvarIn, LONG *ret);107PSSTDAPI PropVariantToInt32(REFPROPVARIANT propvarIn, LONG *ret);
99PSSTDAPI PropVariantToInt64(REFPROPVARIANT propvarIn, LONGLONG *ret);108PSSTDAPI PropVariantToInt64(REFPROPVARIANT propvarIn, LONGLONG *ret);
100PSSTDAPI PropVariantToUInt16(REFPROPVARIANT propvarIn, USHORT *ret);109PSSTDAPI PropVariantToUInt16(REFPROPVARIANT propvarIn, USHORT *ret);
101PSSTDAPI PropVariantToUInt32(REFPROPVARIANT propvarIn, ULONG *ret);110PSSTDAPI PropVariantToUInt32(REFPROPVARIANT propvarIn, ULONG *ret);
111PSSTDAPI PropVariantToUInt32Vector(REFPROPVARIANT propvar, ULONG *buffer, ULONG size, ULONG *count);
102PSSTDAPI_(ULONG) PropVariantToUInt32WithDefault(REFPROPVARIANT propvarIn, ULONG uLDefault);112PSSTDAPI_(ULONG) PropVariantToUInt32WithDefault(REFPROPVARIANT propvarIn, ULONG uLDefault);
103PSSTDAPI PropVariantToUInt64(REFPROPVARIANT propvarIn, ULONGLONG *ret);113PSSTDAPI PropVariantToUInt64(REFPROPVARIANT propvarIn, ULONGLONG *ret);
104PSSTDAPI PropVariantToBoolean(REFPROPVARIANT propvarIn, WINBOOL *ret);114PSSTDAPI PropVariantToBoolean(REFPROPVARIANT propvarIn, WINBOOL *ret);
lib/libc/include/any-windows-any/psdk_inc/_dbg_common.h+11
...@@ -612,6 +612,17 @@ GetModuleBaseRoutine,PTRANSLATE_ADDRESS_ROUTINE TranslateAddress);...@@ -612,6 +612,17 @@ GetModuleBaseRoutine,PTRANSLATE_ADDRESS_ROUTINE TranslateAddress);
612 DWORD Flags;612 DWORD Flags;
613 } IMAGEHLP_DEFERRED_SYMBOL_LOAD64,*PIMAGEHLP_DEFERRED_SYMBOL_LOAD64;613 } IMAGEHLP_DEFERRED_SYMBOL_LOAD64,*PIMAGEHLP_DEFERRED_SYMBOL_LOAD64;
614614
615 typedef struct _IMAGEHLP_DEFERRED_SYMBOL_LOADW64 {
616 DWORD SizeOfStruct;
617 DWORD64 BaseOfImage;
618 DWORD CheckSum;
619 DWORD TimeDateStamp;
620 WCHAR FileName[MAX_PATH + 1];
621 BOOLEAN Reparse;
622 HANDLE hFile;
623 DWORD Flags;
624 } IMAGEHLP_DEFERRED_SYMBOL_LOADW64,*PIMAGEHLP_DEFERRED_SYMBOL_LOADW64;
625
615#define DSLFLAG_MISMATCHED_PDB 0x1626#define DSLFLAG_MISMATCHED_PDB 0x1
616#define DSLFLAG_MISMATCHED_DBG 0x2627#define DSLFLAG_MISMATCHED_DBG 0x2
617628
lib/libc/include/any-windows-any/psdk_inc/intrin-impl.h+65-4
...@@ -230,9 +230,9 @@ Parameters: (FunctionName, DataType, Segment)...@@ -230,9 +230,9 @@ Parameters: (FunctionName, DataType, Segment)
230230
231#define __buildreadseg(x, y, z, a) y x(unsigned __LONG32 Offset) { \231#define __buildreadseg(x, y, z, a) y x(unsigned __LONG32 Offset) { \
232 y ret; \232 y ret; \
233 __asm__ ("mov{" a " %%" z ":(%[offset]), %[ret] | %[ret], " z ":[%[offset]] }" \233 __asm__ ("mov{" a " %%" z ":%a[offset], %[ret] | %[ret], " z ":[%[offset]] }" \
234 : [ret] "=r" (ret) \234 : [ret] "=r" (ret) \
235 : [offset] "r" (Offset) \235 : [offset] "ir" (Offset) \
236 : "memory"); \236 : "memory"); \
237 return ret; \237 return ret; \
238}238}
...@@ -248,9 +248,9 @@ Parameters: (FunctionName, DataType, Segment)...@@ -248,9 +248,9 @@ Parameters: (FunctionName, DataType, Segment)
248 */248 */
249249
250#define __buildwriteseg(x, y, z, a) void x(unsigned __LONG32 Offset, y Data) { \250#define __buildwriteseg(x, y, z, a) void x(unsigned __LONG32 Offset, y Data) { \
251 __asm__ volatile ("mov{" a " %[Data], %%" z ":(%[offset]) | " z ":[%[offset]], %[Data] }" \251 __asm__ volatile ("mov{" a " %[Data], %%" z ":%a[offset] | " z ":[%[offset]], %[Data] }" \
252 : \252 : \
253 : [offset] "r" (Offset), [Data] "r" (Data) \253 : [offset] "ir" (Offset), [Data] "r" (Data) \
254 : "memory"); \254 : "memory"); \
255}255}
256256
...@@ -1664,12 +1664,44 @@ short _InterlockedCompareExchange16(short volatile *Destination, short ExChange,...@@ -1664,12 +1664,44 @@ short _InterlockedCompareExchange16(short volatile *Destination, short ExChange,
1664#define __INTRINSIC_DEFINED__InterlockedCompareExchange161664#define __INTRINSIC_DEFINED__InterlockedCompareExchange16
1665#endif /* __INTRINSIC_PROLOG */1665#endif /* __INTRINSIC_PROLOG */
16661666
1667/* On i386, fall back to the kernel32 Interlocked exports because GCC
1668 cannot inline the __sync_* builtins (no CMPXCHG/XADD). __asm__
1669 labels avoid collisions with the winnt.h Interlocked macros.
1670 GCC prepends _ to __asm__ label strings on i386; Clang does not. */
1671#if defined(__i386__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
1672#ifdef __clang__
1673#define __MINGW_K32_ASM(name) __asm__("_" name)
1674#else
1675#define __MINGW_K32_ASM(name) __asm__(name)
1676#endif
1677__LONG32 __attribute__((__dllimport__, __stdcall__))
1678__mingw_k32_InterlockedExchangeAdd(__LONG32 volatile *, __LONG32)
1679 __MINGW_K32_ASM("InterlockedExchangeAdd@8");
1680__LONG32 __attribute__((__dllimport__, __stdcall__))
1681__mingw_k32_InterlockedCompareExchange(__LONG32 volatile *, __LONG32, __LONG32)
1682 __MINGW_K32_ASM("InterlockedCompareExchange@12");
1683__LONG32 __attribute__((__dllimport__, __stdcall__))
1684__mingw_k32_InterlockedIncrement(__LONG32 volatile *)
1685 __MINGW_K32_ASM("InterlockedIncrement@4");
1686__LONG32 __attribute__((__dllimport__, __stdcall__))
1687__mingw_k32_InterlockedDecrement(__LONG32 volatile *)
1688 __MINGW_K32_ASM("InterlockedDecrement@4");
1689__LONG32 __attribute__((__dllimport__, __stdcall__))
1690__mingw_k32_InterlockedExchange(__LONG32 volatile *, __LONG32)
1691 __MINGW_K32_ASM("InterlockedExchange@8");
1692#undef __MINGW_K32_ASM
1693#endif
1694
1667#if __INTRINSIC_PROLOG(_InterlockedExchangeAdd)1695#if __INTRINSIC_PROLOG(_InterlockedExchangeAdd)
1668__LONG32 _InterlockedExchangeAdd(__LONG32 volatile *Addend, __LONG32 Value);1696__LONG32 _InterlockedExchangeAdd(__LONG32 volatile *Addend, __LONG32 Value);
1669#if !__has_builtin(_InterlockedExchangeAdd)1697#if !__has_builtin(_InterlockedExchangeAdd)
1670__INTRINSICS_USEINLINE 1698__INTRINSICS_USEINLINE
1671__LONG32 _InterlockedExchangeAdd(__LONG32 volatile *Addend, __LONG32 Value) {1699__LONG32 _InterlockedExchangeAdd(__LONG32 volatile *Addend, __LONG32 Value) {
1700#if defined(__i386__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
1701 return __mingw_k32_InterlockedExchangeAdd(Addend, Value);
1702#else
1672 return __sync_fetch_and_add(Addend, Value);1703 return __sync_fetch_and_add(Addend, Value);
1704#endif
1673}1705}
1674#endif1706#endif
1675#define __INTRINSIC_DEFINED__InterlockedExchangeAdd1707#define __INTRINSIC_DEFINED__InterlockedExchangeAdd
...@@ -1680,7 +1712,11 @@ __LONG32 _InterlockedCompareExchange(__LONG32 volatile *Destination, __LONG32 Ex...@@ -1680,7 +1712,11 @@ __LONG32 _InterlockedCompareExchange(__LONG32 volatile *Destination, __LONG32 Ex
1680#if !__has_builtin(_InterlockedCompareExchange)1712#if !__has_builtin(_InterlockedCompareExchange)
1681__INTRINSICS_USEINLINE 1713__INTRINSICS_USEINLINE
1682__LONG32 _InterlockedCompareExchange(__LONG32 volatile *Destination, __LONG32 ExChange, __LONG32 Comperand) {1714__LONG32 _InterlockedCompareExchange(__LONG32 volatile *Destination, __LONG32 ExChange, __LONG32 Comperand) {
1715#if defined(__i386__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
1716 return __mingw_k32_InterlockedCompareExchange(Destination, ExChange, Comperand);
1717#else
1683 return __sync_val_compare_and_swap(Destination, Comperand, ExChange);1718 return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
1719#endif
1684}1720}
1685#endif1721#endif
1686#define __INTRINSIC_DEFINED__InterlockedCompareExchange1722#define __INTRINSIC_DEFINED__InterlockedCompareExchange
...@@ -1691,7 +1727,11 @@ __LONG32 _InterlockedIncrement(__LONG32 volatile *Addend);...@@ -1691,7 +1727,11 @@ __LONG32 _InterlockedIncrement(__LONG32 volatile *Addend);
1691#if !__has_builtin(_InterlockedIncrement)1727#if !__has_builtin(_InterlockedIncrement)
1692__INTRINSICS_USEINLINE 1728__INTRINSICS_USEINLINE
1693__LONG32 _InterlockedIncrement(__LONG32 volatile *Addend) {1729__LONG32 _InterlockedIncrement(__LONG32 volatile *Addend) {
1730#if defined(__i386__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
1731 return __mingw_k32_InterlockedIncrement(Addend);
1732#else
1694 return __sync_add_and_fetch(Addend, 1);1733 return __sync_add_and_fetch(Addend, 1);
1734#endif
1695}1735}
1696#endif1736#endif
1697#define __INTRINSIC_DEFINED__InterlockedIncrement1737#define __INTRINSIC_DEFINED__InterlockedIncrement
...@@ -1702,7 +1742,11 @@ __LONG32 _InterlockedDecrement(__LONG32 volatile *Addend);...@@ -1702,7 +1742,11 @@ __LONG32 _InterlockedDecrement(__LONG32 volatile *Addend);
1702#if !__has_builtin(_InterlockedDecrement)1742#if !__has_builtin(_InterlockedDecrement)
1703__INTRINSICS_USEINLINE 1743__INTRINSICS_USEINLINE
1704__LONG32 _InterlockedDecrement(__LONG32 volatile *Addend) {1744__LONG32 _InterlockedDecrement(__LONG32 volatile *Addend) {
1745#if defined(__i386__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
1746 return __mingw_k32_InterlockedDecrement(Addend);
1747#else
1705 return __sync_sub_and_fetch(Addend, 1);1748 return __sync_sub_and_fetch(Addend, 1);
1749#endif
1706}1750}
1707#endif1751#endif
1708#define __INTRINSIC_DEFINED__InterlockedDecrement1752#define __INTRINSIC_DEFINED__InterlockedDecrement
...@@ -1735,7 +1779,11 @@ __LONG32 _InterlockedExchange(__LONG32 volatile *Target, __LONG32 Value);...@@ -1735,7 +1779,11 @@ __LONG32 _InterlockedExchange(__LONG32 volatile *Target, __LONG32 Value);
1735#if !__has_builtin(_InterlockedExchange)1779#if !__has_builtin(_InterlockedExchange)
1736__INTRINSICS_USEINLINE 1780__INTRINSICS_USEINLINE
1737__LONG32 _InterlockedExchange(__LONG32 volatile *Target, __LONG32 Value) {1781__LONG32 _InterlockedExchange(__LONG32 volatile *Target, __LONG32 Value) {
1782#if defined(__i386__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
1783 return __mingw_k32_InterlockedExchange(Target, Value);
1784#else
1738 return __sync_lock_test_and_set(Target, Value);1785 return __sync_lock_test_and_set(Target, Value);
1786#endif
1739}1787}
1740#endif1788#endif
1741#define __INTRINSIC_DEFINED__InterlockedExchange1789#define __INTRINSIC_DEFINED__InterlockedExchange
...@@ -1757,7 +1805,14 @@ void *_InterlockedCompareExchangePointer(void * volatile *Destination, void *ExC...@@ -1757,7 +1805,14 @@ void *_InterlockedCompareExchangePointer(void * volatile *Destination, void *ExC
1757#if !__has_builtin(_InterlockedCompareExchangePointer)1805#if !__has_builtin(_InterlockedCompareExchangePointer)
1758__INTRINSICS_USEINLINE 1806__INTRINSICS_USEINLINE
1759void *_InterlockedCompareExchangePointer(void *volatile *Destination, void *ExChange, void *Comperand) {1807void *_InterlockedCompareExchangePointer(void *volatile *Destination, void *ExChange, void *Comperand) {
1808#if defined(__i386__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
1809 return (void *)(long)__mingw_k32_InterlockedCompareExchange(
1810 (__LONG32 volatile *)Destination,
1811 (__LONG32)(long)ExChange,
1812 (__LONG32)(long)Comperand);
1813#else
1760 return __sync_val_compare_and_swap(Destination, Comperand, ExChange);1814 return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
1815#endif
1761}1816}
1762#endif1817#endif
1763#define __INTRINSIC_DEFINED__InterlockedCompareExchangePointer1818#define __INTRINSIC_DEFINED__InterlockedCompareExchangePointer
...@@ -1768,7 +1823,13 @@ void *_InterlockedExchangePointer(void *volatile *Target,void *Value);...@@ -1768,7 +1823,13 @@ void *_InterlockedExchangePointer(void *volatile *Target,void *Value);
1768#if !__has_builtin(_InterlockedExchangePointer)1823#if !__has_builtin(_InterlockedExchangePointer)
1769__INTRINSICS_USEINLINE 1824__INTRINSICS_USEINLINE
1770void *_InterlockedExchangePointer(void *volatile *Target,void *Value) {1825void *_InterlockedExchangePointer(void *volatile *Target,void *Value) {
1826#if defined(__i386__) && !defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
1827 return (void *)(long)__mingw_k32_InterlockedExchange(
1828 (__LONG32 volatile *)Target,
1829 (__LONG32)(long)Value);
1830#else
1771 return __sync_lock_test_and_set(Target, Value);1831 return __sync_lock_test_and_set(Target, Value);
1832#endif
1772}1833}
1773#endif1834#endif
1774#define __INTRINSIC_DEFINED__InterlockedExchangePointer1835#define __INTRINSIC_DEFINED__InterlockedExchangePointer
lib/libc/include/any-windows-any/pthread_compat.h+76-20
...@@ -60,24 +60,31 @@...@@ -60,24 +60,31 @@
60#ifndef WIN_PTHREADS_PTHREAD_COMPAT_H60#ifndef WIN_PTHREADS_PTHREAD_COMPAT_H
61#define WIN_PTHREADS_PTHREAD_COMPAT_H61#define WIN_PTHREADS_PTHREAD_COMPAT_H
6262
63#if defined(_USE_32BIT_TIME_T) || (defined(_TIME_BITS) && _TIME_BITS == 32)63#if defined(__cplusplus) && __cplusplus >= 201103L
64#define WINPTHREADS_STATIC_ASSERT(expr, msg) static_assert ((expr), msg)
65#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
66#define WINPTHREADS_STATIC_ASSERT(expr, msg) static_assert ((expr), msg)
67#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
68#define WINPTHREADS_STATIC_ASSERT(expr, msg) _Static_assert ((expr), msg)
69#else
70#define WINPTHREADS_STATIC_ASSERT(expr, msg) extern int winpthreads_static_assert[((expr) ? 1 : -1)]
71#endif
72
73#if defined(_USE_32BIT_TIME_T)
64#define WINPTHREADS_TIME_BITS 3274#define WINPTHREADS_TIME_BITS 32
65#else75#else
66#define WINPTHREADS_TIME_BITS 6476#define WINPTHREADS_TIME_BITS 64
67#endif77#endif
6878
69#if defined(IN_WINPTHREAD)79#ifndef WINPTHREAD_API
70# if defined(DLL_EXPORT)80 /**
71# define WINPTHREAD_API __declspec(dllexport) /* building the DLL */81 * Allow `WINPTHREAD_STATIC` to override `WINPTHREADS_USE_DLLIMPORT`.
72# else82 */
73# define WINPTHREAD_API /* building the static library */83# if defined(WINPTHREADS_USE_DLLIMPORT) && !defined(WINPTHREAD_STATIC)
74# endif84# define WINPTHREAD_API __declspec(dllimport)
75#else85# else
76# if defined(WINPTHREADS_USE_DLLIMPORT)86# define WINPTHREAD_API
77# define WINPTHREAD_API __declspec(dllimport) /* user wants explicit `dllimport` */87# endif
78# else
79# define WINPTHREAD_API /* the default; auto imported in case of DLL */
80# endif
81#endif88#endif
8289
83#ifndef __clockid_t_defined90#ifndef __clockid_t_defined
...@@ -110,9 +117,24 @@ typedef unsigned short mode_t;...@@ -110,9 +117,24 @@ typedef unsigned short mode_t;
110117
111#elif _MSC_VER118#elif _MSC_VER
112119
120/**
121 * If package which includes this header file is using autoconf and calls
122 * AC_TYPE_PID_T macro, the check for pid_t will fail and it will define pid_t
123 * as a macro in config.h - this eventually results in compilation error.
124 *
125 * Luckily, it defines it to the same base type, so we can simply undefine it.
126 */
113#ifdef _WIN64127#ifdef _WIN64
128#ifdef pid_t
129WINPTHREADS_STATIC_ASSERT (sizeof (pid_t) == sizeof(__int64), "pid_t is defined as a macro with mismatching base type");
130#undef pid_t
131#endif
114typedef __int64 pid_t;132typedef __int64 pid_t;
115#else133#else
134#ifdef pid_t
135WINPTHREADS_STATIC_ASSERT (sizeof (pid_t) == sizeof(int), "pid_t is defined as a macro with mismatching base type");
136#undef pid_t
137#endif
116typedef int pid_t;138typedef int pid_t;
117#endif139#endif
118140
...@@ -124,25 +146,59 @@ typedef int pid_t;...@@ -124,25 +146,59 @@ typedef int pid_t;
124#endif146#endif
125147
126#ifndef WINPTHREAD_CLOCK_DECL148#ifndef WINPTHREAD_CLOCK_DECL
127#define WINPTHREAD_CLOCK_DECL static WINPTHREADS_ALWAYS_INLINE149# ifdef __cplusplus
150# define WINPTHREAD_CLOCK_DECL WINPTHREADS_ALWAYS_INLINE
151# else
152# define WINPTHREAD_CLOCK_DECL static WINPTHREADS_ALWAYS_INLINE
153# endif
128#endif154#endif
155
129#ifndef WINPTHREAD_COND_DECL156#ifndef WINPTHREAD_COND_DECL
130#define WINPTHREAD_COND_DECL static WINPTHREADS_ALWAYS_INLINE157# ifdef __cplusplus
158# define WINPTHREAD_COND_DECL WINPTHREADS_ALWAYS_INLINE
159# else
160# define WINPTHREAD_COND_DECL static WINPTHREADS_ALWAYS_INLINE
161# endif
131#endif162#endif
163
132#ifndef WINPTHREAD_MUTEX_DECL164#ifndef WINPTHREAD_MUTEX_DECL
133#define WINPTHREAD_MUTEX_DECL static WINPTHREADS_ALWAYS_INLINE165# ifdef __cplusplus
166# define WINPTHREAD_MUTEX_DECL WINPTHREADS_ALWAYS_INLINE
167# else
168# define WINPTHREAD_MUTEX_DECL static WINPTHREADS_ALWAYS_INLINE
169# endif
134#endif170#endif
171
135#ifndef WINPTHREAD_NANOSLEEP_DECL172#ifndef WINPTHREAD_NANOSLEEP_DECL
136#define WINPTHREAD_NANOSLEEP_DECL static WINPTHREADS_ALWAYS_INLINE173# ifdef __cplusplus
174# define WINPTHREAD_NANOSLEEP_DECL WINPTHREADS_ALWAYS_INLINE
175# else
176# define WINPTHREAD_NANOSLEEP_DECL static WINPTHREADS_ALWAYS_INLINE
177# endif
137#endif178#endif
179
138#ifndef WINPTHREAD_RWLOCK_DECL180#ifndef WINPTHREAD_RWLOCK_DECL
139#define WINPTHREAD_RWLOCK_DECL static WINPTHREADS_ALWAYS_INLINE181# ifdef __cplusplus
182# define WINPTHREAD_RWLOCK_DECL WINPTHREADS_ALWAYS_INLINE
183# else
184# define WINPTHREAD_RWLOCK_DECL static WINPTHREADS_ALWAYS_INLINE
185# endif
140#endif186#endif
187
141#ifndef WINPTHREAD_SEM_DECL188#ifndef WINPTHREAD_SEM_DECL
142#define WINPTHREAD_SEM_DECL static WINPTHREADS_ALWAYS_INLINE189# ifdef __cplusplus
190# define WINPTHREAD_SEM_DECL WINPTHREADS_ALWAYS_INLINE
191# else
192# define WINPTHREAD_SEM_DECL static WINPTHREADS_ALWAYS_INLINE
193# endif
143#endif194#endif
195
144#ifndef WINPTHREAD_THREAD_DECL196#ifndef WINPTHREAD_THREAD_DECL
145#define WINPTHREAD_THREAD_DECL static WINPTHREADS_ALWAYS_INLINE197# ifdef __cplusplus
198# define WINPTHREAD_THREAD_DECL WINPTHREADS_ALWAYS_INLINE
199# else
200# define WINPTHREAD_THREAD_DECL static WINPTHREADS_ALWAYS_INLINE
201# endif
146#endif202#endif
147203
148#endif204#endif
lib/libc/include/any-windows-any/qedit.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/qedit.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/qedit.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/qnetwork.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/qnetwork.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/qnetwork.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/rdpencomapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/rdpencomapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/rdpencomapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/regbag.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/regbag.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/regbag.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/relogger.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/relogger.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/relogger.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/robuffer.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/robuffer.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/robuffer.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/rtworkq.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/rtworkq.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/rtworkq.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sal.h+1
...@@ -570,6 +570,7 @@...@@ -570,6 +570,7 @@
570#define __deref_opt_out_bcount(x)570#define __deref_opt_out_bcount(x)
571#define __deref_out571#define __deref_out
572#define __deref_out_ecount(size)572#define __deref_out_ecount(size)
573#define __deref_out_ecount_full(size)
573#define __deref_out_opt574#define __deref_out_opt
574575
575#define __range(x,y)576#define __range(x,y)
lib/libc/include/any-windows-any/sapi51.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/sapi51.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/sapi51.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sapi53.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/sapi53.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/sapi53.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sapi54.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/sapi54.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/sapi54.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sdks/_mingw_ddk.h deleted-6
...@@ -1,6 +0,0 @@
1#ifndef MINGW_DDK_H
2#define MINGW_DDK_H
3#if 1
4#define MINGW_HAS_DDK_H 1
5#endif
6#endif
lib/libc/include/any-windows-any/sec_api/conio_s.h+11-16
...@@ -22,28 +22,23 @@...@@ -22,28 +22,23 @@
22extern "C" {22extern "C" {
23#endif23#endif
2424
25/**
26 * Functions to read/write strings from/to console.
27 */
28
25 _SECIMP errno_t __cdecl _cgets_s (char *_Buffer,size_t _Size,size_t *_SizeRead);29 _SECIMP errno_t __cdecl _cgets_s (char *_Buffer,size_t _Size,size_t *_SizeRead);
26 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _cgets_s, char, _Buffer, size_t*, _SizeRead)30 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _cgets_s, char, _Buffer, size_t*, _SizeRead)
2731
32/**
33 * Formatted console I/O functions.
34 */
35
28 _SECIMP int __cdecl _cprintf_s (const char *_Format,...);36 _SECIMP int __cdecl _cprintf_s (const char *_Format,...);
29 _CRTIMP int __cdecl _cscanf_s(const char *_Format,...);
30 _CRTIMP int __cdecl _cscanf_s_l(const char *_Format,_locale_t _Locale,...);
31 _SECIMP int __cdecl _vcprintf_s (const char *_Format,va_list _ArgList);
32 _SECIMP int __cdecl _cprintf_s_l (const char *_Format,_locale_t _Locale,...);37 _SECIMP int __cdecl _cprintf_s_l (const char *_Format,_locale_t _Locale,...);
38 _SECIMP int __cdecl _vcprintf_s (const char *_Format,va_list _ArgList);
33 _SECIMP int __cdecl _vcprintf_s_l (const char *_Format,_locale_t _Locale,va_list _ArgList);39 _SECIMP int __cdecl _vcprintf_s_l (const char *_Format,_locale_t _Locale,va_list _ArgList);
3440 _CRTIMP int __cdecl _cscanf_s(const char *_Format,...);
35#ifndef _WCONIO_S_DEFINED41 _CRTIMP int __cdecl _cscanf_s_l(const char *_Format,_locale_t _Locale,...);
36#define _WCONIO_S_DEFINED
37 _SECIMP errno_t __cdecl _cgetws_s (wchar_t *_Buffer,size_t _SizeInWords,size_t *_SizeRead);
38 __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _cgetws_s, wchar_t, _Buffer, size_t*, _SizeRead)
39
40 _SECIMP int __cdecl _cwprintf_s (const wchar_t *_Format,...);
41 _CRTIMP int __cdecl _cwscanf_s(const wchar_t *_Format,...);
42 _CRTIMP int __cdecl _cwscanf_s_l(const wchar_t *_Format,_locale_t _Locale,...);
43 _SECIMP int __cdecl _vcwprintf_s (const wchar_t *_Format,va_list _ArgList);
44 _SECIMP int __cdecl _cwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,...);
45 _SECIMP int __cdecl _vcwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
46#endif
4742
48#ifdef __cplusplus43#ifdef __cplusplus
49}44}
lib/libc/include/any-windows-any/sec_api/wchar_s.h-11
...@@ -27,17 +27,6 @@ extern "C" {...@@ -27,17 +27,6 @@ extern "C" {
27 _SECIMP errno_t __cdecl _wmktemp_s (wchar_t *_TemplateName,size_t _SizeInWords);27 _SECIMP errno_t __cdecl _wmktemp_s (wchar_t *_TemplateName,size_t _SizeInWords);
28#endif28#endif
2929
30#ifndef _WCONIO_S_DEFINED
31#define _WCONIO_S_DEFINED
32 _SECIMP errno_t __cdecl _cgetws_s (wchar_t *_Buffer,size_t _SizeInWords,size_t *_SizeRead);
33 _SECIMP int __cdecl _cwprintf_s (const wchar_t *_Format,...);
34 _CRTIMP int __cdecl _cwscanf_s(const wchar_t *_Format,...);
35 _CRTIMP int __cdecl _cwscanf_s_l(const wchar_t *_Format,_locale_t _Locale,...);
36 _SECIMP int __cdecl _vcwprintf_s (const wchar_t *_Format,va_list _ArgList);
37 _SECIMP int __cdecl _cwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,...);
38 _SECIMP int __cdecl _vcwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
39#endif
40
41#ifndef _WSTDIO_S_DEFINED30#ifndef _WSTDIO_S_DEFINED
42#define _WSTDIO_S_DEFINED31#define _WSTDIO_S_DEFINED
43 _CRTIMP wchar_t *__cdecl _getws_s(wchar_t *_Str,size_t _SizeInWords);32 _CRTIMP wchar_t *__cdecl _getws_s(wchar_t *_Str,size_t _SizeInWords);
lib/libc/include/any-windows-any/sec_api/wconio_s.h created+47
...@@ -0,0 +1,47 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef _INC_WCONIO_S
8#define _INC_WCONIO_S
9
10#include <corecrt_wconio.h>
11
12#if defined(__LIBMSVCRT__)
13/* When building mingw-w64, this should be blank. */
14#define _SECIMP
15#else
16#ifndef _SECIMP
17#define _SECIMP __declspec(dllimport)
18#endif /* _SECIMP */
19#endif /* defined(__LIBMSVCRT__) */
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25/**
26 * Functions to read/write strings from/to console.
27 */
28
29_SECIMP errno_t __cdecl _cgetws_s (wchar_t *_Buffer,size_t _SizeInWords,size_t *_SizeRead);
30__DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(errno_t, _cgetws_s, wchar_t, _Buffer, size_t*, _SizeRead)
31
32/**
33 * Formatted console I/O functions.
34 */
35
36_SECIMP int __cdecl _cwprintf_s (const wchar_t *_Format,...);
37_SECIMP int __cdecl _cwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,...);
38_SECIMP int __cdecl _vcwprintf_s (const wchar_t *_Format,va_list _ArgList);
39_SECIMP int __cdecl _vcwprintf_s_l (const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
40_CRTIMP int __cdecl _cwscanf_s(const wchar_t *_Format,...);
41_CRTIMP int __cdecl _cwscanf_s_l(const wchar_t *_Format,_locale_t _Locale,...);
42
43#ifdef __cplusplus
44}
45#endif
46
47#endif /* _INC_WCONIO_S */
lib/libc/include/any-windows-any/sensorsapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/sensorsapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/sensorsapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/servprov.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/servprov.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/servprov.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/setjmp.h+61-45
...@@ -26,7 +26,7 @@...@@ -26,7 +26,7 @@
26extern "C" {26extern "C" {
27#endif27#endif
2828
29#if (defined(_X86_) && !defined(__x86_64))29#if defined(__i386__)
3030
31#define _JBLEN 1631#define _JBLEN 16
32#define _JBTYPE int32#define _JBTYPE int
...@@ -40,6 +40,7 @@ extern "C" {...@@ -40,6 +40,7 @@ extern "C" {
40 unsigned long Eip;40 unsigned long Eip;
41 unsigned long Registration;41 unsigned long Registration;
42 unsigned long TryLevel;42 unsigned long TryLevel;
43 /* Following fields are only for new _setjmp3(), the are not for old _setjmp(). */
43 unsigned long Cookie;44 unsigned long Cookie;
44 unsigned long UnwindFunc;45 unsigned long UnwindFunc;
45 unsigned long UnwindData[6];46 unsigned long UnwindData[6];
...@@ -107,7 +108,7 @@ extern "C" {...@@ -107,7 +108,7 @@ extern "C" {
107108
108 } _JUMP_BUFFER;109 } _JUMP_BUFFER;
109110
110#elif defined(__x86_64)111#elif defined(__x86_64__)
111112
112 typedef _CRT_ALIGN(16) struct _SETJMP_FLOAT128 {113 typedef _CRT_ALIGN(16) struct _SETJMP_FLOAT128 {
113 __MINGW_EXTENSION unsigned __int64 Part[2];114 __MINGW_EXTENSION unsigned __int64 Part[2];
...@@ -202,68 +203,83 @@ extern "C" {...@@ -202,68 +203,83 @@ extern "C" {
202#define _JMP_BUF_DEFINED203#define _JMP_BUF_DEFINED
203#endif204#endif
204205
205_CRTIMP __MINGW_ATTRIB_NORETURN __attribute__ ((__nothrow__)) void __cdecl longjmp(jmp_buf _Buf,int _Value);206_CRTIMP __MINGW_ATTRIB_NORETURN __attribute__ ((__nothrow__)) void __cdecl longjmp(jmp_buf _Buf, int _Value); /* for setjmp.h and non-i386 setjmpex.h */
207#ifdef __i386__
208_CRTIMP __MINGW_ATTRIB_NORETURN __attribute__ ((__nothrow__)) void __cdecl _longjmpex(jmp_buf _Buf, int _Value); /* for i386 setjmpex.h */
209#endif
210
211#ifdef __i386__
212_CRTIMP int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmp(jmp_buf _Buf); /* old i386 crtdll setjmp.h */
213_CRTIMP int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmp3(jmp_buf _Buf, int _Count, ...); /* new i386 msvcrt20+ setjmp.h and setjmpex.h */
214#else
215#ifndef __aarch64__
216_CRTIMP int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmp(jmp_buf _Buf, void *_Frame); /* for non-i386 and non-aarch64 setjmp.h */
217#endif
218_CRTIMP int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf _Buf, void *_Frame); /* for non-i386 setjmpex.h and aarch64 setjmp.h */
219#endif
220
221#if defined(__arm__) || defined(__aarch64__)
222int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) __mingw_setjmp(jmp_buf _Buf);
223__MINGW_ATTRIB_NORETURN __attribute__ ((__nothrow__)) void __mingw_longjmp(jmp_buf _Buf, int _Value);
224#endif
206225
207void * __cdecl __attribute__ ((__nothrow__)) mingw_getsp (void);226void * __cdecl __attribute__ ((__nothrow__)) mingw_getsp (void);
208227
228#ifdef __cplusplus
229}
230#endif
231
232#pragma pack(pop)
233#endif /* _INC_SETJMP */
234
235/*
236 * Now outside of the _INC_SETJMP block, defines setjmp() and longjmp().
237 * It allows '#include <setjmpex.h>' to override the existing setjmp() and longjmp() definitions.
238 */
239
209#pragma push_macro("__has_builtin")240#pragma push_macro("__has_builtin")
210#ifndef __has_builtin241#ifndef __has_builtin
211 #define __has_builtin(x) 0242 #define __has_builtin(x) 0
212#endif243#endif
213244
214#ifdef _UCRT245#ifdef setjmp
215# ifdef _WIN64246# undef setjmp
216# define _setjmp __intrinsic_setjmpex247#endif
248#if defined(__i386__)
249# define setjmp(BUF) _setjmp3((BUF), 0)
250#elif !defined(_INC_SETJMPEX) && (!defined(__SEH__) || defined(__USE_MINGW_SETJMP_NON_SEH))
251# if defined(__arm__) || defined(__aarch64__)
252# define setjmp(BUF) __mingw_setjmp((BUF))
217# else253# else
218# define _setjmp __intrinsic_setjmp254# define setjmp(BUF) _setjmp((BUF), NULL)
219# endif255# endif
220#elif defined(__aarch64__)256#elif !defined(_INC_SETJMPEX) && !defined(__aarch64__)
221 /* ARM64 msvcrt.dll lacks _setjmp, only has _setjmpex. */257# if __has_builtin(__builtin_sponentry)
222# define _setjmp _setjmpex
223#endif
224#ifndef _INC_SETJMPEX
225# if defined(_X86_) || defined(__i386__)
226# define setjmp(BUF) _setjmp3((BUF), NULL)
227# elif !defined(__SEH__) || defined(__USE_MINGW_SETJMP_NON_SEH)
228# if defined(__arm__) || defined(__aarch64__)
229# define setjmp(BUF) __mingw_setjmp((BUF))
230# define longjmp __mingw_longjmp
231 int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) __mingw_setjmp(jmp_buf _Buf);
232 __MINGW_ATTRIB_NORETURN __attribute__ ((__nothrow__)) void __mingw_longjmp(jmp_buf _Buf,int _Value);
233# else
234# define setjmp(BUF) _setjmp((BUF), NULL)
235# endif
236# elif __has_builtin(__builtin_sponentry)
237# define setjmp(BUF) _setjmp((BUF), __builtin_sponentry())258# define setjmp(BUF) _setjmp((BUF), __builtin_sponentry())
238# elif (__MINGW_GCC_VERSION < 40702) && !defined(__clang__)259# elif (__MINGW_GCC_VERSION < 40702) && !defined(__clang__)
239# define setjmp(BUF) _setjmp((BUF), mingw_getsp())260# define setjmp(BUF) _setjmp((BUF), mingw_getsp())
240# else261# else
241# define setjmp(BUF) _setjmp((BUF), __builtin_frame_address (0))262# define setjmp(BUF) _setjmp((BUF), __builtin_frame_address(0))
242# endif263# endif
243 int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmp(jmp_buf _Buf, void *_Ctx);
244 int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmp3(jmp_buf _Buf, void *_Ctx);
245#else264#else
246# undef setjmp265# if __has_builtin(__builtin_sponentry)
247# ifdef __SEH__266# define setjmp(BUF) _setjmpex((BUF), __builtin_sponentry())
248# if (__MINGW_GCC_VERSION < 40702) && !defined(__clang__)267# elif (__MINGW_GCC_VERSION < 40702) && !defined(__clang__)
249# define setjmp(BUF) _setjmpex((BUF), mingw_getsp())268# define setjmp(BUF) _setjmpex((BUF), mingw_getsp())
250# define setjmpex(BUF) _setjmpex((BUF), mingw_getsp())
251# else
252# define setjmp(BUF) _setjmpex((BUF), __builtin_frame_address (0))
253# define setjmpex(BUF) _setjmpex((BUF), __builtin_frame_address (0))
254# endif
255# else269# else
256# define setjmp(BUF) _setjmpex((BUF), NULL)270# define setjmp(BUF) _setjmpex((BUF), __builtin_frame_address(0))
257# define setjmpex(BUF) _setjmpex((BUF), NULL)
258# endif271# endif
259 int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf _Buf,void *_Ctx);
260#endif272#endif
261273
262#pragma pop_macro("__has_builtin")274#ifdef longjmp
263275# undef longjmp
264#ifdef __cplusplus
265}
266#endif276#endif
267277#if defined(_INC_SETJMPEX) && defined(__i386__)
268#pragma pack(pop)278# define longjmp _longjmpex
279#elif !defined(_INC_SETJMPEX) && (!defined(__SEH__) || defined(__USE_MINGW_SETJMP_NON_SEH)) && (defined(__arm__) || defined(__aarch64__))
280# define longjmp __mingw_longjmp
281#else
282# define longjmp longjmp
269#endif283#endif
284
285#pragma pop_macro("__has_builtin")
lib/libc/include/any-windows-any/setjmpex.h+1-15
...@@ -4,21 +4,7 @@...@@ -4,21 +4,7 @@
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */5 */
6#ifndef _INC_SETJMPEX6#ifndef _INC_SETJMPEX
7/* setjmp.h defines setjmp() and longjmp() based on _INC_SETJMPEX */
7#define _INC_SETJMPEX8#define _INC_SETJMPEX
8
9#ifndef _WIN32
10#error Only Win32 target is supported!
11#endif
12
13#if (defined(_X86_) && !defined(__x86_64))
14#define setjmp _setjmp
15#define longjmp _longjmpex
16#else
17#ifdef setjmp
18#undef setjmp
19#endif
20#define setjmp _setjmpex
21#endif
22
23#include <setjmp.h>9#include <setjmp.h>
24#endif10#endif
lib/libc/include/any-windows-any/shldisp.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/shldisp.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/shldisp.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/shobjidl.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/shobjidl.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/shobjidl.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/shtypes.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/shtypes.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/shtypes.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/signal.h+1-1
...@@ -45,7 +45,7 @@ extern "C" {...@@ -45,7 +45,7 @@ extern "C" {
45#endif45#endif
46#endif46#endif
4747
48 typedef void (*__p_sig_fn_t)(int);48 typedef void (__cdecl *__p_sig_fn_t)(int);
4949
50#define SIG_DFL (__p_sig_fn_t)050#define SIG_DFL (__p_sig_fn_t)0
51#define SIG_IGN (__p_sig_fn_t)151#define SIG_IGN (__p_sig_fn_t)1
lib/libc/include/any-windows-any/spatialaudioclient.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/spatialaudioclient.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/spatialaudioclient.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/spellcheck.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/spellcheck.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/spellcheck.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sql.h+19
...@@ -24,6 +24,11 @@ extern "C" {...@@ -24,6 +24,11 @@ extern "C" {
24#if (ODBCVER >= 0x0300)24#if (ODBCVER >= 0x0300)
25#define SQL_NO_DATA 10025#define SQL_NO_DATA 100
26#endif26#endif
27
28#if (ODBCVER >= 0x0380)
29#define SQL_PARAM_DATA_AVAILABLE 101
30#endif
31
27#define SQL_ERROR (-1)32#define SQL_ERROR (-1)
28#define SQL_INVALID_HANDLE (-2)33#define SQL_INVALID_HANDLE (-2)
2934
...@@ -174,6 +179,10 @@ extern "C" {...@@ -174,6 +179,10 @@ extern "C" {
174#define SQL_ARD_TYPE (-99)179#define SQL_ARD_TYPE (-99)
175#endif180#endif
176181
182#if (ODBCVER >= 0x0380)
183#define SQL_APD_TYPE (-100)
184#endif
185
177#if (ODBCVER >= 0x0300)186#if (ODBCVER >= 0x0300)
178#define SQL_CODE_DATE 1187#define SQL_CODE_DATE 1
179#define SQL_CODE_TIME 2188#define SQL_CODE_TIME 2
...@@ -337,6 +346,10 @@ extern "C" {...@@ -337,6 +346,10 @@ extern "C" {
337#define SQL_API_SQLSTATISTICS 53346#define SQL_API_SQLSTATISTICS 53
338#define SQL_API_SQLTABLES 54347#define SQL_API_SQLTABLES 54
339#define SQL_API_SQLTRANSACT 23348#define SQL_API_SQLTRANSACT 23
349#if (ODBCVER >= 0x0380)
350#define SQL_API_SQLCANCELHANDLE 1550
351#define SQL_API_SQLCOMPLETEASYNC 1551
352#endif
340353
341#if (ODBCVER >= 0x0300)354#if (ODBCVER >= 0x0300)
342#define SQL_MAX_DRIVER_CONNECTIONS 0355#define SQL_MAX_DRIVER_CONNECTIONS 0
...@@ -491,6 +504,9 @@ extern "C" {...@@ -491,6 +504,9 @@ extern "C" {
491 SQLRETURN SQL_API SQLBindParam(SQLHSTMT StatementHandle,SQLUSMALLINT ParameterNumber,SQLSMALLINT ValueType,SQLSMALLINT ParameterType,SQLULEN LengthPrecision,SQLSMALLINT ParameterScale,SQLPOINTER ParameterValue,SQLLEN *StrLen_or_Ind);504 SQLRETURN SQL_API SQLBindParam(SQLHSTMT StatementHandle,SQLUSMALLINT ParameterNumber,SQLSMALLINT ValueType,SQLSMALLINT ParameterType,SQLULEN LengthPrecision,SQLSMALLINT ParameterScale,SQLPOINTER ParameterValue,SQLLEN *StrLen_or_Ind);
492#endif505#endif
493 SQLRETURN SQL_API SQLCancel(SQLHSTMT StatementHandle);506 SQLRETURN SQL_API SQLCancel(SQLHSTMT StatementHandle);
507#if (ODBCVER >= 0x0380)
508 SQLRETURN SQL_API SQLCancelHandle(SQLSMALLINT HandleType,SQLHANDLE InputHandle);
509#endif
494#if (ODBCVER >= 0x0300)510#if (ODBCVER >= 0x0300)
495 SQLRETURN SQL_API SQLCloseCursor(SQLHSTMT StatementHandle);511 SQLRETURN SQL_API SQLCloseCursor(SQLHSTMT StatementHandle);
496#ifdef _WIN64512#ifdef _WIN64
...@@ -500,6 +516,9 @@ extern "C" {...@@ -500,6 +516,9 @@ extern "C" {
500#endif516#endif
501#endif517#endif
502 SQLRETURN SQL_API SQLColumns(SQLHSTMT StatementHandle,SQLCHAR *CatalogName,SQLSMALLINT NameLength1,SQLCHAR *SchemaName,SQLSMALLINT NameLength2,SQLCHAR *TableName,SQLSMALLINT NameLength3,SQLCHAR *ColumnName,SQLSMALLINT NameLength4);518 SQLRETURN SQL_API SQLColumns(SQLHSTMT StatementHandle,SQLCHAR *CatalogName,SQLSMALLINT NameLength1,SQLCHAR *SchemaName,SQLSMALLINT NameLength2,SQLCHAR *TableName,SQLSMALLINT NameLength3,SQLCHAR *ColumnName,SQLSMALLINT NameLength4);
519#if (ODBCVER >= 0x0380)
520 SQLRETURN SQL_API SQLCompleteAsync(SQLSMALLINT HandleType,SQLHANDLE Handle,RETCODE *AsyncRetCodePtr);
521#endif
503 SQLRETURN SQL_API SQLConnect(SQLHDBC ConnectionHandle,SQLCHAR *ServerName,SQLSMALLINT NameLength1,SQLCHAR *UserName,SQLSMALLINT NameLength2,SQLCHAR *Authentication,SQLSMALLINT NameLength3);522 SQLRETURN SQL_API SQLConnect(SQLHDBC ConnectionHandle,SQLCHAR *ServerName,SQLSMALLINT NameLength1,SQLCHAR *UserName,SQLSMALLINT NameLength2,SQLCHAR *Authentication,SQLSMALLINT NameLength3);
504#if (ODBCVER >= 0x0300)523#if (ODBCVER >= 0x0300)
505 SQLRETURN SQL_API SQLCopyDesc(SQLHDESC SourceDescHandle,SQLHDESC TargetDescHandle);524 SQLRETURN SQL_API SQLCopyDesc(SQLHDESC SourceDescHandle,SQLHDESC TargetDescHandle);
lib/libc/include/any-windows-any/stddef.h+2-2
...@@ -17,8 +17,8 @@ extern "C" {...@@ -17,8 +17,8 @@ extern "C" {
17#define _CRT_ERRNO_DEFINED17#define _CRT_ERRNO_DEFINED
18 _CRTIMP extern int *__cdecl _errno(void);18 _CRTIMP extern int *__cdecl _errno(void);
19#define errno (*_errno())19#define errno (*_errno())
20 errno_t __cdecl _set_errno(int _Value);20 _CRTIMP errno_t __cdecl _set_errno(int _Value);
21 errno_t __cdecl _get_errno(int *_Value);21 _CRTIMP errno_t __cdecl _get_errno(int *_Value);
22#endif /* _CRT_ERRNO_DEFINED */22#endif /* _CRT_ERRNO_DEFINED */
2323
24 _CRTIMP extern unsigned long __cdecl __threadid(void);24 _CRTIMP extern unsigned long __cdecl __threadid(void);
lib/libc/include/any-windows-any/stdio.h+28-125
...@@ -569,62 +569,42 @@ int vsnprintf (char *__stream, size_t __n, const char *__format, __builtin_va_li...@@ -569,62 +569,42 @@ int vsnprintf (char *__stream, size_t __n, const char *__format, __builtin_va_li
569#endif569#endif
570 _CRTIMP int __cdecl _flushall(void);570 _CRTIMP int __cdecl _flushall(void);
571 FILE *__cdecl fopen(const char * __restrict__ _Filename,const char * __restrict__ _Mode) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;571 FILE *__cdecl fopen(const char * __restrict__ _Filename,const char * __restrict__ _Mode) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
572 FILE *fopen64(const char * __restrict__ filename,const char * __restrict__ mode);572 FILE *__cdecl fopen64(const char * __restrict__ filename,const char * __restrict__ mode);
573 int __cdecl fputc(int _Ch,FILE *_File);573 int __cdecl fputc(int _Ch,FILE *_File);
574 _CRTIMP int __cdecl _fputchar(int _Ch);574 _CRTIMP int __cdecl _fputchar(int _Ch);
575 int __cdecl fputs(const char * __restrict__ _Str,FILE * __restrict__ _File);575 int __cdecl fputs(const char * __restrict__ _Str,FILE * __restrict__ _File);
576 size_t __cdecl fread(void * __restrict__ _DstBuf,size_t _ElementSize,size_t _Count,FILE * __restrict__ _File);576 size_t __cdecl fread(void * __restrict__ _DstBuf,size_t _ElementSize,size_t _Count,FILE * __restrict__ _File);
577 FILE *__cdecl freopen(const char * __restrict__ _Filename,const char * __restrict__ _Mode,FILE * __restrict__ _File) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;577 FILE *__cdecl freopen(const char * __restrict__ _Filename,const char * __restrict__ _Mode,FILE * __restrict__ _File) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
578 FILE *__cdecl freopen64(const char * __restrict__ _Filename,const char * __restrict__ _Mode,FILE * __restrict__ _File);
578 int __cdecl fsetpos(FILE *_File,const fpos_t *_Pos);579 int __cdecl fsetpos(FILE *_File,const fpos_t *_Pos);
579 int __cdecl fsetpos64(FILE *_File,const fpos_t *_Pos); /* fsetpos already 64bit */580 int __cdecl fsetpos64(FILE *_File,const fpos_t *_Pos); /* fsetpos already 64bit */
580 int __cdecl fseek(FILE *_File,long _Offset,int _Origin);581 int __cdecl fseek(FILE *_File,long _Offset,int _Origin);
581 long __cdecl ftell(FILE *_File);582 long __cdecl ftell(FILE *_File);
582583
583 /* Shouldn't be any fseeko32 in glibc, 32bit to 64bit casting should be fine */
584 /* int fseeko32(FILE* stream, _off_t offset, int whence);*/ /* fseeko32 redirects to fseeko64 */
585 _CRTIMP int __cdecl _fseeki64(FILE *_File,__int64 _Offset,int _Origin);584 _CRTIMP int __cdecl _fseeki64(FILE *_File,__int64 _Offset,int _Origin);
586 _CRTIMP __int64 __cdecl _ftelli64(FILE *_File);585 _CRTIMP __int64 __cdecl _ftelli64(FILE *_File);
587#ifdef _UCRT586#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
588 __mingw_ovr int fseeko(FILE *_File, _off_t _Offset, int _Origin) {587 int __cdecl fseeko(FILE *_File, _off64_t _Offset, int _Origin) __MINGW_ASM_CALL(fseeko64);
589 return fseek(_File, _Offset, _Origin);
590 }
591 __mingw_ovr int fseeko64(FILE *_File, _off64_t _Offset, int _Origin) {
592 return _fseeki64(_File, _Offset, _Origin);
593 }
594 __mingw_ovr _off_t ftello(FILE *_File) {
595 return ftell(_File);
596 }
597 __mingw_ovr _off64_t ftello64(FILE *_File) {
598 return _ftelli64(_File);
599 }
600#else588#else
601 int fseeko64(FILE* stream, _off64_t offset, int whence);589 int __cdecl fseeko(FILE *_File, _off_t _Offset, int _Origin);
602 int fseeko(FILE* stream, _off_t offset, int whence);
603 /* Returns truncated 64bit off_t */
604 _off_t ftello(FILE * stream);
605 _off64_t ftello64(FILE * stream);
606#endif590#endif
607591 _CRTIMP int __cdecl fseeko64(FILE *_File, _off64_t _Offset, int _Origin);
608#ifndef _FILE_OFFSET_BITS_SET_FSEEKO
609#define _FILE_OFFSET_BITS_SET_FSEEKO
610#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
611#define fseeko fseeko64
612#endif /* (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)) */
613#endif /* _FILE_OFFSET_BITS_SET_FSEEKO */
614
615#ifndef _FILE_OFFSET_BITS_SET_FTELLO
616#define _FILE_OFFSET_BITS_SET_FTELLO
617#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))592#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
618#define ftello ftello64593 _off64_t __cdecl ftello(FILE *_File) __MINGW_ASM_CALL(ftello64);
619#endif /* (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)) */594#else
620#endif /* _FILE_OFFSET_BITS_SET_FTELLO */595 _off_t __cdecl ftello(FILE *_File);
596#endif
597 _CRTIMP _off64_t __cdecl ftello64(FILE *_File);
621598
622 size_t __cdecl fwrite(const void * __restrict__ _Str,size_t _Size,size_t _Count,FILE * __restrict__ _File);599 size_t __cdecl fwrite(const void * __restrict__ _Str,size_t _Size,size_t _Count,FILE * __restrict__ _File);
623 int __cdecl getc(FILE *_File);600 int __cdecl getc(FILE *_File);
624 int __cdecl getchar(void);601 int __cdecl getchar(void);
625 _CRTIMP int __cdecl _getmaxstdio(void);602 _CRTIMP int __cdecl _getmaxstdio(void);
626 char *__cdecl gets(char *_Buffer)603 char *__cdecl gets(char *_Buffer)
627 __attribute__((__warning__("Using gets() is always unsafe - use fgets() instead")));604#ifndef _CRTBLD
605 __attribute__((__warning__("Using gets() is always unsafe - use fgets() instead")))
606#endif
607;
628 int __cdecl _getw(FILE *_File);608 int __cdecl _getw(FILE *_File);
629#ifndef _CRT_PERROR_DEFINED609#ifndef _CRT_PERROR_DEFINED
630#define _CRT_PERROR_DEFINED610#define _CRT_PERROR_DEFINED
...@@ -675,6 +655,7 @@ int vsnprintf (char *__stream, size_t __n, const char *__format, __builtin_va_li...@@ -675,6 +655,7 @@ int vsnprintf (char *__stream, size_t __n, const char *__format, __builtin_va_li
675 __MINGW_MS_PRINTF(1, 0) __MINGW_ATTRIB_NONNULL(1)655 __MINGW_MS_PRINTF(1, 0) __MINGW_ATTRIB_NONNULL(1)
676 _CRTIMP int __cdecl _vscprintf(const char * __restrict__ _Format,va_list _ArgList);656 _CRTIMP int __cdecl _vscprintf(const char * __restrict__ _Format,va_list _ArgList);
677 FILE *__cdecl tmpfile(void) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;657 FILE *__cdecl tmpfile(void) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
658 FILE *__cdecl tmpfile64(void);
678 char *__cdecl tmpnam(char *_Buffer);659 char *__cdecl tmpnam(char *_Buffer);
679 int __cdecl ungetc(int _Ch,FILE *_File);660 int __cdecl ungetc(int _Ch,FILE *_File);
680661
...@@ -1096,48 +1077,33 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti...@@ -1096,48 +1077,33 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti
1096#endif /* __NO_ISOCEXT */1077#endif /* __NO_ISOCEXT */
10971078
1098#else /* !__USE_MINGW_ANSI_STDIO */1079#else /* !__USE_MINGW_ANSI_STDIO */
1099
1100#ifdef _UCRT
1101 __MINGW_ATTRIB_DEPRECATED_SEC_WARN1080 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
1102 int __cdecl fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);1081 int __cdecl fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
1082
1103 __MINGW_ATTRIB_DEPRECATED_SEC_WARN1083 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
1104 int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...);1084 int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...);
1085
1105 __MINGW_ATTRIB_DEPRECATED_SEC_WARN1086 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
1106 int __cdecl wscanf(const wchar_t * __restrict__ _Format,...);1087 int __cdecl wscanf(const wchar_t * __restrict__ _Format,...);
1107 __MINGW_ATTRIB_NONNULL(2)
1108 int vfwscanf (FILE *__stream, const wchar_t *__format, va_list __local_argv);
11091088
1110 __MINGW_ATTRIB_NONNULL(2)1089 __MINGW_ATTRIB_NONNULL(2)
1111 int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, va_list __local_argv);1090 int __cdecl vfwscanf(FILE *__stream, const wchar_t *__format, va_list __local_argv);
1112 __MINGW_ATTRIB_NONNULL(1)
1113 int vwscanf(const wchar_t *__format, va_list __local_argv);
11141091
1115 int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
1116 int __cdecl wprintf(const wchar_t * __restrict__ _Format,...);
1117 int __cdecl vfwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list _ArgList);
1118 int __cdecl vwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
1119#else
1120
1121 int __cdecl fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1122 int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1123 int __cdecl wscanf(const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1124#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
1125 __MINGW_ATTRIB_NONNULL(2)1092 __MINGW_ATTRIB_NONNULL(2)
1126 int vfwscanf (FILE *__stream, const wchar_t *__format, __builtin_va_list __local_argv);1093 int __cdecl vswscanf(const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, va_list __local_argv);
1127
1128 __MINGW_ATTRIB_NONNULL(2)
1129 int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, __builtin_va_list __local_argv);
11301094
1131 __MINGW_ATTRIB_NONNULL(1)1095 __MINGW_ATTRIB_NONNULL(1)
1132 int vwscanf(const wchar_t *__format, __builtin_va_list __local_argv);1096 int __cdecl vwscanf(const wchar_t *__format, va_list __local_argv);
1133
1134#endif /* __NO_ISOCEXT */
11351097
1136 int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);1098 int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
1137 int __cdecl wprintf(const wchar_t * __restrict__ _Format,...);1099 int __cdecl wprintf(const wchar_t * __restrict__ _Format,...);
1138 int __cdecl vfwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list _ArgList);1100 int __cdecl vfwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list _ArgList);
1139 int __cdecl vwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);1101 int __cdecl vwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
1140#endif /* _UCRT */1102
1103 int __cdecl swprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...);
1104 int __cdecl vswprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args);
1105 int __cdecl snwprintf(wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...);
1106 int __cdecl vsnwprintf(wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg);
1141#endif /* __USE_MINGW_ANSI_STDIO */1107#endif /* __USE_MINGW_ANSI_STDIO */
11421108
1143#ifndef WEOF1109#ifndef WEOF
...@@ -1164,73 +1130,17 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti...@@ -1164,73 +1130,17 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti
1164 _CRTIMP wchar_t *__cdecl _getws(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1130 _CRTIMP wchar_t *__cdecl _getws(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1165 _CRTIMP int __cdecl _putws(const wchar_t *_Str);1131 _CRTIMP int __cdecl _putws(const wchar_t *_Str);
11661132
1167#ifdef _UCRT
1168 __mingw_ovr
1169 int __cdecl _scwprintf(const wchar_t * __restrict__ _Format,...)
1170 {
1171 __builtin_va_list __ap;
1172 int __ret;
1173 __builtin_va_start(__ap, _Format);
1174 __ret = __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, _Format, NULL, __ap);
1175 __builtin_va_end(__ap);
1176 return __ret;
1177 }
1178 int __cdecl _snwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1179 int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1180
1181#if __USE_MINGW_ANSI_STDIO == 0
1182 int __cdecl swprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...);
1183 int __cdecl vswprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args);
1184
1185 int __cdecl snwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...);
1186 int __cdecl vsnwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg);
1187#endif
1188
1189 __mingw_ovr
1190 int __cdecl _swprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,...)
1191 {
1192 __builtin_va_list __ap;
1193 int __ret;
1194 __builtin_va_start(__ap, _Format);
1195 __ret = __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Dest, (size_t)-1, _Format, NULL, __ap);
1196 __builtin_va_end(__ap);
1197 return __ret;
1198 }
1199 __mingw_ovr
1200 int __cdecl _vswprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,va_list _Args)
1201 {
1202 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Dest, (size_t)-1, _Format, NULL, _Args);
1203 }
1204
1205 __mingw_ovr
1206 int __cdecl _vscwprintf(const wchar_t * __restrict__ _Format, va_list _ArgList)
1207 {
1208 int _Result = __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, _Format, NULL, _ArgList);
1209 return _Result < 0 ? -1 : _Result;
1210 }
1211#else
1212 _CRTIMP int __cdecl _scwprintf(const wchar_t * __restrict__ _Format,...);1133 _CRTIMP int __cdecl _scwprintf(const wchar_t * __restrict__ _Format,...);
1134#ifndef _UCRT
1213 _CRTIMP int __cdecl _swprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,...);1135 _CRTIMP int __cdecl _swprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,...);
1214 _CRTIMP int __cdecl _vswprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,va_list _ArgList);1136 _CRTIMP int __cdecl _vswprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,va_list _ArgList);
1137#endif /* _UCRT */
1215 _CRTIMP int __cdecl _snwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1138 _CRTIMP int __cdecl _snwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1216 _CRTIMP int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1139 _CRTIMP int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1217 _CRTIMP int __cdecl _vscwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);1140 _CRTIMP int __cdecl _vscwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
1218
1219#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
1220
1221#if __USE_MINGW_ANSI_STDIO == 0
1222 int __cdecl snwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...) __MINGW_ASM_CALL(__ms_snwprintf);
1223 int __cdecl vsnwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg) __MINGW_ASM_CALL(__ms_vsnwprintf);
1224#endif
1225
1226#endif /* ! __NO_ISOCEXT */
1227 _CRTIMP int __cdecl _swprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,...);1141 _CRTIMP int __cdecl _swprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,...);
1228 _CRTIMP int __cdecl _vswprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,va_list _Args);1142 _CRTIMP int __cdecl _vswprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,va_list _Args);
12291143
1230 int __cdecl swprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...);
1231 int __cdecl vswprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args);
1232#endif /* _UCRT */
1233
1234#ifndef RC_INVOKED1144#ifndef RC_INVOKED
1235#include <swprintf.inl>1145#include <swprintf.inl>
1236#endif1146#endif
...@@ -1293,17 +1203,10 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti...@@ -1293,17 +1203,10 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti
1293#define _STDIO_DEFINED1203#define _STDIO_DEFINED
1294#endif1204#endif
12951205
1296#ifdef _UCRT
1297 _CRTIMP int __cdecl _fgetc_nolock(FILE *_File);1206 _CRTIMP int __cdecl _fgetc_nolock(FILE *_File);
1298 _CRTIMP int __cdecl _fputc_nolock(int _Char, FILE *_File);1207 _CRTIMP int __cdecl _fputc_nolock(int _Char, FILE *_File);
1299 _CRTIMP int __cdecl _getc_nolock(FILE *_File);1208 _CRTIMP int __cdecl _getc_nolock(FILE *_File);
1300 _CRTIMP int __cdecl _putc_nolock(int _Char, FILE *_File);1209 _CRTIMP int __cdecl _putc_nolock(int _Char, FILE *_File);
1301#else
1302#define _fgetc_nolock(_stream) (--(_stream)->_cnt >= 0 ? 0xff & *(_stream)->_ptr++ : _filbuf(_stream))
1303#define _fputc_nolock(_c,_stream) (--(_stream)->_cnt >= 0 ? 0xff & (*(_stream)->_ptr++ = (char)(_c)) : _flsbuf((_c),(_stream)))
1304#define _getc_nolock(_stream) _fgetc_nolock(_stream)
1305#define _putc_nolock(_c,_stream) _fputc_nolock(_c,_stream)
1306#endif
1307#define _getchar_nolock() _getc_nolock(stdin)1210#define _getchar_nolock() _getc_nolock(stdin)
1308#define _putchar_nolock(_c) _putc_nolock((_c),stdout)1211#define _putchar_nolock(_c) _putc_nolock((_c),stdout)
1309#define _getwchar_nolock() _getwc_nolock(stdin)1212#define _getwchar_nolock() _getwc_nolock(stdin)
lib/libc/include/any-windows-any/stdlib.h+16-9
...@@ -145,8 +145,8 @@ _CRTIMP int __cdecl ___mb_cur_max_func(void);...@@ -145,8 +145,8 @@ _CRTIMP int __cdecl ___mb_cur_max_func(void);
145#define _CRT_ERRNO_DEFINED145#define _CRT_ERRNO_DEFINED
146 _CRTIMP extern int *__cdecl _errno(void);146 _CRTIMP extern int *__cdecl _errno(void);
147#define errno (*_errno())147#define errno (*_errno())
148 errno_t __cdecl _set_errno(int _Value);148 _CRTIMP errno_t __cdecl _set_errno(int _Value);
149 errno_t __cdecl _get_errno(int *_Value);149 _CRTIMP errno_t __cdecl _get_errno(int *_Value);
150#endif150#endif
151 _CRTIMP unsigned long *__cdecl __doserrno(void);151 _CRTIMP unsigned long *__cdecl __doserrno(void);
152#define _doserrno (*__doserrno())152#define _doserrno (*__doserrno())
...@@ -192,7 +192,7 @@ _CRTIMP int __cdecl ___mb_cur_max_func(void);...@@ -192,7 +192,7 @@ _CRTIMP int __cdecl ___mb_cur_max_func(void);
192#endif192#endif
193193
194#ifndef _POSIX_194#ifndef _POSIX_
195#if (defined(_ARM_) || defined(__arm__) || defined(_ARM64_) || defined(__aarch64__)) && !defined(_UCRT)195#if (defined(_ARM_) || defined(__arm__) || defined(_ARM64_) || defined(__aarch64__) || defined(_ARM64EC_) || defined(__arm64ec__)) && !defined(_UCRT)
196 /* The plain msvcrt.dll for arm/aarch64 lacks196 /* The plain msvcrt.dll for arm/aarch64 lacks
197 * _environ/_wenviron, but has these functions instead. */197 * _environ/_wenviron, but has these functions instead. */
198 _CRTIMP void __cdecl _get_environ(char ***);198 _CRTIMP void __cdecl _get_environ(char ***);
...@@ -342,17 +342,20 @@ _CRTIMP int __cdecl ___mb_cur_max_func(void);...@@ -342,17 +342,20 @@ _CRTIMP int __cdecl ___mb_cur_max_func(void);
342 __MINGW_EXTENSION _CRTIMP unsigned __int64 __cdecl _strtoui64_l(const char *_String,char **_EndPtr,int _Radix,_locale_t _Locale);342 __MINGW_EXTENSION _CRTIMP unsigned __int64 __cdecl _strtoui64_l(const char *_String,char **_EndPtr,int _Radix,_locale_t _Locale);
343 ldiv_t __cdecl ldiv(long _Numerator,long _Denominator);343 ldiv_t __cdecl ldiv(long _Numerator,long _Denominator);
344 _CRTIMP char *__cdecl _ltoa(long _Value,char *_Dest,int _Radix) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;344 _CRTIMP char *__cdecl _ltoa(long _Value,char *_Dest,int _Radix) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
345 int __cdecl mblen(const char *_Ch,size_t _MaxCount);345 _CRTIMP int __cdecl mblen(const char *_Ch,size_t _MaxCount);
346 _CRTIMP int __cdecl _mblen_l(const char *_Ch,size_t _MaxCount,_locale_t _Locale);346 _CRTIMP int __cdecl _mblen_l(const char *_Ch,size_t _MaxCount,_locale_t _Locale);
347 _CRTIMP size_t __cdecl _mbstrlen(const char *_Str);347 _CRTIMP size_t __cdecl _mbstrlen(const char *_Str);
348 _CRTIMP size_t __cdecl _mbstrlen_l(const char *_Str,_locale_t _Locale);348 _CRTIMP size_t __cdecl _mbstrlen_l(const char *_Str,_locale_t _Locale);
349#if __MSVCRT_VERSION__ >= 0x0800
349 _CRTIMP size_t __cdecl _mbstrnlen(const char *_Str,size_t _MaxCount);350 _CRTIMP size_t __cdecl _mbstrnlen(const char *_Str,size_t _MaxCount);
350 _CRTIMP size_t __cdecl _mbstrnlen_l(const char *_Str,size_t _MaxCount,_locale_t _Locale);351 _CRTIMP size_t __cdecl _mbstrnlen_l(const char *_Str,size_t _MaxCount,_locale_t _Locale);
351 int __cdecl mbtowc(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SrcSizeInBytes);352#endif
353 _CRTIMP int __cdecl mbtowc(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SrcSizeInBytes);
352 _CRTIMP int __cdecl _mbtowc_l(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SrcSizeInBytes,_locale_t _Locale);354 _CRTIMP int __cdecl _mbtowc_l(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SrcSizeInBytes,_locale_t _Locale);
353 size_t __cdecl mbstowcs(wchar_t * __restrict__ _Dest,const char * __restrict__ _Source,size_t _MaxCount);355 _CRTIMP size_t __cdecl mbstowcs(wchar_t * __restrict__ _Dest,const char * __restrict__ _Source,size_t _MaxCount);
354 _CRTIMP size_t __cdecl _mbstowcs_l(wchar_t * __restrict__ _Dest,const char * __restrict__ _Source,size_t _MaxCount,_locale_t _Locale);356 _CRTIMP size_t __cdecl _mbstowcs_l(wchar_t * __restrict__ _Dest,const char * __restrict__ _Source,size_t _MaxCount,_locale_t _Locale);
355 int __cdecl mkstemp(char *template_name);357 int __cdecl mkstemp(char *_TemplateName);
358 char *__cdecl mkdtemp(char *_TemplateName);
356 int __cdecl rand(void);359 int __cdecl rand(void);
357 _CRTIMP int __cdecl _set_error_mode(int _Mode);360 _CRTIMP int __cdecl _set_error_mode(int _Mode);
358 void __cdecl srand(unsigned int _Seed);361 void __cdecl srand(unsigned int _Seed);
...@@ -412,9 +415,9 @@ float __cdecl __MINGW_NOTHROW strtof(const char * __restrict__ _Str,char ** __re...@@ -412,9 +415,9 @@ float __cdecl __MINGW_NOTHROW strtof(const char * __restrict__ _Str,char ** __re
412 int __cdecl system(const char *_Command);415 int __cdecl system(const char *_Command);
413#endif416#endif
414 _CRTIMP char *__cdecl _ultoa(unsigned long _Value,char *_Dest,int _Radix) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;417 _CRTIMP char *__cdecl _ultoa(unsigned long _Value,char *_Dest,int _Radix) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
415 int __cdecl wctomb(char *_MbCh,wchar_t _WCh) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;418 _CRTIMP int __cdecl wctomb(char *_MbCh,wchar_t _WCh) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
416 _CRTIMP int __cdecl _wctomb_l(char *_MbCh,wchar_t _WCh,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;419 _CRTIMP int __cdecl _wctomb_l(char *_MbCh,wchar_t _WCh,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
417 size_t __cdecl wcstombs(char * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;420 _CRTIMP size_t __cdecl wcstombs(char * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
418 _CRTIMP size_t __cdecl _wcstombs_l(char * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _MaxCount,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;421 _CRTIMP size_t __cdecl _wcstombs_l(char * __restrict__ _Dest,const wchar_t * __restrict__ _Source,size_t _MaxCount,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
419422
420#ifndef _CRT_ALLOCATION_DEFINED423#ifndef _CRT_ALLOCATION_DEFINED
...@@ -463,6 +466,10 @@ float __cdecl __MINGW_NOTHROW strtof(const char * __restrict__ _Str,char ** __re...@@ -463,6 +466,10 @@ float __cdecl __MINGW_NOTHROW strtof(const char * __restrict__ _Str,char ** __re
463 _CRTIMP void *__cdecl _aligned_offset_recalloc(void *_Memory,size_t _Count,size_t _Size,size_t _Alignment,size_t _Offset);466 _CRTIMP void *__cdecl _aligned_offset_recalloc(void *_Memory,size_t _Count,size_t _Size,size_t _Alignment,size_t _Offset);
464 _CRTIMP size_t __cdecl _aligned_msize(void *_Memory,size_t _Alignment,size_t _Offset);467 _CRTIMP size_t __cdecl _aligned_msize(void *_Memory,size_t _Alignment,size_t _Offset);
465468
469#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
470 size_t __cdecl memalignment(const void *_Memory);
471#endif
472
466#if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)473#if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
467#pragma pop_macro("calloc")474#pragma pop_macro("calloc")
468#pragma pop_macro("free")475#pragma pop_macro("free")
lib/libc/include/any-windows-any/string.h+22-42
...@@ -7,15 +7,7 @@...@@ -7,15 +7,7 @@
7#define _INC_STRING7#define _INC_STRING
88
9#include <crtdefs.h>9#include <crtdefs.h>
1010#include <corecrt_memory.h>
11#if defined(__LIBMSVCRT__)
12/* When building mingw-w64, this should be blank. */
13#define _SECIMP
14#else
15#ifndef _SECIMP
16#define _SECIMP __declspec(dllimport)
17#endif /* _SECIMP */
18#endif /* defined(__LIBMSVCRT__) */
1911
20#ifdef __cplusplus12#ifdef __cplusplus
21extern "C" {13extern "C" {
...@@ -38,24 +30,6 @@ extern "C" {...@@ -38,24 +30,6 @@ extern "C" {
38#endif30#endif
39#endif31#endif
4032
41#define _WConst_return _CONST_RETURN
42
43#ifndef _CRT_MEMORY_DEFINED
44#define _CRT_MEMORY_DEFINED
45 _CRTIMP void *__cdecl _memccpy(void *_Dst,const void *_Src,int _Val,size_t _MaxCount);
46 _CONST_RETURN void *__cdecl memchr(const void *_Buf ,int _Val,size_t _MaxCount);
47 _CRTIMP int __cdecl _memicmp(const void *_Buf1,const void *_Buf2,size_t _Size);
48 _CRTIMP int __cdecl _memicmp_l(const void *_Buf1,const void *_Buf2,size_t _Size,_locale_t _Locale);
49 int __cdecl memcmp(const void *_Buf1,const void *_Buf2,size_t _Size);
50 void * __cdecl memcpy(void * __restrict__ _Dst,const void * __restrict__ _Src,size_t _Size) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
51 _SECIMP errno_t __cdecl memcpy_s (void *_dest,size_t _numberOfElements,const void *_src,size_t _count);
52 void * __cdecl mempcpy (void *_Dst, const void *_Src, size_t _Size);
53 void * __cdecl memset(void *_Dst,int _Val,size_t _Size);
54#ifndef NO_OLDNAMES
55 void * __cdecl memccpy(void *_Dst,const void *_Src,int _Val,size_t _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
56 int __cdecl memicmp(const void *_Buf1,const void *_Buf2,size_t _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
57#endif
58#endif
59 char * __cdecl _strset(char *_Str,int _Val) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;33 char * __cdecl _strset(char *_Str,int _Val) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
60 char * __cdecl _strset_l(char *_Str,int _Val,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;34 char * __cdecl _strset_l(char *_Str,int _Val,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
61 char * __cdecl strcpy(char * __restrict__ _Dest,const char * __restrict__ _Source);35 char * __cdecl strcpy(char * __restrict__ _Dest,const char * __restrict__ _Source);
...@@ -71,12 +45,25 @@ extern "C" {...@@ -71,12 +45,25 @@ extern "C" {
71 _CRTIMP char *__cdecl _strdup(const char *_Src);45 _CRTIMP char *__cdecl _strdup(const char *_Src);
72#if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)46#if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
73#pragma pop_macro("_strdup")47#pragma pop_macro("_strdup")
48#endif
49#if !defined(__STRICT_ANSI__) || defined(_GNU_SOURCE) || __STDC_VERSION__ + 0 >= 202311L || _POSIX_C_SOURCE + 0 >= 200809L || _XOPEN_SOURCE + 0 >= 600
50#if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
51#pragma push_macro("strdup")
52#undef strdup
53#endif
54 char *__cdecl strdup(const char *_Src);
55#if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
56#pragma pop_macro("strdup")
57#endif
58#endif
59#if !defined(__STRICT_ANSI__) || defined(_GNU_SOURCE) || __STDC_VERSION__ + 0 >= 202311L || _POSIX_C_SOURCE + 0 >= 200809L || _XOPEN_SOURCE + 0 >= 700
60 char *__cdecl strndup(const char *_Src,size_t _MaxCount);
74#endif61#endif
75 _CONST_RETURN char *__cdecl strchr(const char *_Str,int _Val);62 _CONST_RETURN char *__cdecl strchr(const char *_Str,int _Val);
76 _CRTIMP int __cdecl _stricmp(const char *_Str1,const char *_Str2);63 _CRTIMP int __cdecl _stricmp(const char *_Str1,const char *_Str2);
77 _CRTIMP int __cdecl _strcmpi(const char *_Str1,const char *_Str2);64 _CRTIMP int __cdecl _strcmpi(const char *_Str1,const char *_Str2);
78 _CRTIMP int __cdecl _stricmp_l(const char *_Str1,const char *_Str2,_locale_t _Locale);65 _CRTIMP int __cdecl _stricmp_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
79 int __cdecl strcoll(const char *_Str1,const char *_Str2);66 _CRTIMP int __cdecl strcoll(const char *_Str1,const char *_Str2);
80 _CRTIMP int __cdecl _strcoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);67 _CRTIMP int __cdecl _strcoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
81 _CRTIMP int __cdecl _stricoll(const char *_Str1,const char *_Str2);68 _CRTIMP int __cdecl _stricoll(const char *_Str1,const char *_Str2);
82 _CRTIMP int __cdecl _stricoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);69 _CRTIMP int __cdecl _stricoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
...@@ -86,7 +73,7 @@ extern "C" {...@@ -86,7 +73,7 @@ extern "C" {
86 _CRTIMP int __cdecl _strnicoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);73 _CRTIMP int __cdecl _strnicoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
87 size_t __cdecl strcspn(const char *_Str,const char *_Control);74 size_t __cdecl strcspn(const char *_Str,const char *_Control);
88 _CRTIMP char *__cdecl _strerror(const char *_ErrMsg) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;75 _CRTIMP char *__cdecl _strerror(const char *_ErrMsg) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
89 char *__cdecl strerror(int) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;76 _CRTIMP char *__cdecl strerror(int) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
90 _CRTIMP char *__cdecl _strlwr(char *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;77 _CRTIMP char *__cdecl _strlwr(char *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
91 char *strlwr_l(char *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;78 char *strlwr_l(char *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
92 char *__cdecl strncat(char * __restrict__ _Dest,const char * __restrict__ _Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;79 char *__cdecl strncat(char * __restrict__ _Dest,const char * __restrict__ _Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
...@@ -101,14 +88,14 @@ extern "C" {...@@ -101,14 +88,14 @@ extern "C" {
101 _CRTIMP char *__cdecl _strrev(char *_Str);88 _CRTIMP char *__cdecl _strrev(char *_Str);
102 size_t __cdecl strspn(const char *_Str,const char *_Control);89 size_t __cdecl strspn(const char *_Str,const char *_Control);
103 _CONST_RETURN char *__cdecl strstr(const char *_Str,const char *_SubStr);90 _CONST_RETURN char *__cdecl strstr(const char *_Str,const char *_SubStr);
104 char *__cdecl strtok(char * __restrict__ _Str,const char * __restrict__ _Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;91 _CRTIMP char *__cdecl strtok(char * __restrict__ _Str,const char * __restrict__ _Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
105#pragma push_macro("strtok_r")92#pragma push_macro("strtok_r")
106#undef strtok_r93#undef strtok_r
107 char *strtok_r(char * __restrict__ _Str, const char * __restrict__ _Delim, char ** __restrict__ __last);94 char *strtok_r(char * __restrict__ _Str, const char * __restrict__ _Delim, char ** __restrict__ __last);
108#pragma pop_macro("strtok_r")95#pragma pop_macro("strtok_r")
109 _CRTIMP char *__cdecl _strupr(char *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;96 _CRTIMP char *__cdecl _strupr(char *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
110 _CRTIMP char *_strupr_l(char *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;97 _CRTIMP char *_strupr_l(char *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
111 size_t __cdecl strxfrm(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount);98 _CRTIMP size_t __cdecl strxfrm(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount);
112 _CRTIMP size_t __cdecl _strxfrm_l(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);99 _CRTIMP size_t __cdecl _strxfrm_l(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);
113100
114#ifndef NO_OLDNAMES101#ifndef NO_OLDNAMES
...@@ -126,13 +113,6 @@ extern "C" {...@@ -126,13 +113,6 @@ extern "C" {
126 int __cdecl strnicmp(const char *_Str1,const char *_Str,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;113 int __cdecl strnicmp(const char *_Str1,const char *_Str,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
127 int __cdecl strncasecmp (const char *, const char *, size_t);114 int __cdecl strncasecmp (const char *, const char *, size_t);
128 int __cdecl strcasecmp (const char *, const char *);115 int __cdecl strcasecmp (const char *, const char *);
129#ifndef __CRT__NO_INLINE
130 __CRT_INLINE int __cdecl strncasecmp (const char *__sz1, const char *__sz2, size_t __sizeMaxCompare) { return _strnicmp (__sz1, __sz2, __sizeMaxCompare); }
131 __CRT_INLINE int __cdecl strcasecmp (const char *__sz1, const char *__sz2) { return _stricmp (__sz1, __sz2); }
132#else
133#define strncasecmp _strnicmp
134#define strcasecmp _stricmp
135#endif /* !__CRT__NO_INLINE */
136 char *__cdecl strnset(char *_Str,int _Val,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;116 char *__cdecl strnset(char *_Str,int _Val,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
137 char *__cdecl strrev(char *_Str) __MINGW_ATTRIB_DEPRECATED_MSVC2005;117 char *__cdecl strrev(char *_Str) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
138 char *__cdecl strset(char *_Str,int _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;118 char *__cdecl strset(char *_Str,int _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
...@@ -165,8 +145,8 @@ extern "C" {...@@ -165,8 +145,8 @@ extern "C" {
165 _CONST_RETURN wchar_t *__cdecl wcsrchr(const wchar_t *_Str,wchar_t _Ch);145 _CONST_RETURN wchar_t *__cdecl wcsrchr(const wchar_t *_Str,wchar_t _Ch);
166 size_t __cdecl wcsspn(const wchar_t *_Str,const wchar_t *_Control);146 size_t __cdecl wcsspn(const wchar_t *_Str,const wchar_t *_Control);
167 _CONST_RETURN wchar_t *__cdecl wcsstr(const wchar_t *_Str,const wchar_t *_SubStr);147 _CONST_RETURN wchar_t *__cdecl wcsstr(const wchar_t *_Str,const wchar_t *_SubStr);
168 wchar_t *__cdecl wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim,wchar_t ** __restrict__ _Ptr) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;148 _CRTIMP wchar_t *__cdecl wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim,wchar_t ** __restrict__ _Ptr) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
169 wchar_t *__cdecl _wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;149 _CRTIMP wchar_t *__cdecl _wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
170#if defined(_CRT_NON_CONFORMING_WCSTOK) && !defined(__cplusplus)150#if defined(_CRT_NON_CONFORMING_WCSTOK) && !defined(__cplusplus)
171 #define wcstok _wcstok151 #define wcstok _wcstok
172#endif152#endif
...@@ -186,9 +166,9 @@ extern "C" {...@@ -186,9 +166,9 @@ extern "C" {
186 _CRTIMP wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;166 _CRTIMP wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
187 _CRTIMP wchar_t *__cdecl _wcsupr(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;167 _CRTIMP wchar_t *__cdecl _wcsupr(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
188 _CRTIMP wchar_t *_wcsupr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;168 _CRTIMP wchar_t *_wcsupr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
189 size_t __cdecl wcsxfrm(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount);169 _CRTIMP size_t __cdecl wcsxfrm(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount);
190 _CRTIMP size_t __cdecl _wcsxfrm_l(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);170 _CRTIMP size_t __cdecl _wcsxfrm_l(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);
191 int __cdecl wcscoll(const wchar_t *_Str1,const wchar_t *_Str2);171 _CRTIMP int __cdecl wcscoll(const wchar_t *_Str1,const wchar_t *_Str2);
192 _CRTIMP int __cdecl _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);172 _CRTIMP int __cdecl _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
193 _CRTIMP int __cdecl _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);173 _CRTIMP int __cdecl _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);
194 _CRTIMP int __cdecl _wcsicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);174 _CRTIMP int __cdecl _wcsicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
lib/libc/include/any-windows-any/strmif.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/strmif.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/strmif.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/structuredquerycondition.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/structuredquerycondition.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/structuredquerycondition.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/swprintf.inl+2-23
...@@ -7,36 +7,15 @@...@@ -7,36 +7,15 @@
7#ifndef _INC_SWPRINTF_INL7#ifndef _INC_SWPRINTF_INL
8#define _INC_SWPRINTF_INL8#define _INC_SWPRINTF_INL
99
10#include <vadefs.h>
11
12#ifdef __cplusplus10#ifdef __cplusplus
1311
14extern "C++" {12extern "C++" {
1513
16__mingw_ovr
17/* __attribute__((__format__ (gnu_wprintf, 2, 0))) */ __MINGW_ATTRIB_NONNULL(2)14/* __attribute__((__format__ (gnu_wprintf, 2, 0))) */ __MINGW_ATTRIB_NONNULL(2)
18int vswprintf (wchar_t *__stream, const wchar_t *__format, __builtin_va_list __local_argv)15int vswprintf (wchar_t *__stream, const wchar_t *__format, __builtin_va_list __local_argv) __MINGW_ASM_CALL(_vswprintf);
19{
20 return _vswprintf( __stream, __format, __local_argv );
21}
2216
23__mingw_ovr
24/* __attribute__((__format__ (gnu_wprintf, 2, 3))) */ __MINGW_ATTRIB_NONNULL(2)17/* __attribute__((__format__ (gnu_wprintf, 2, 3))) */ __MINGW_ATTRIB_NONNULL(2)
25int swprintf (wchar_t *__stream, const wchar_t *__format, ...)18int swprintf (wchar_t *__stream, const wchar_t *__format, ...) __MINGW_ASM_CALL(_swprintf);
26{
27#ifdef __clang__
28 /* clang does not support __builtin_va_arg_pack(), so forward swprintf() to vswprintf() */
29 int __retval;
30 __builtin_va_list __local_argv;
31
32 __builtin_va_start( __local_argv, __format );
33 __retval = vswprintf( __stream, __format, __local_argv );
34 __builtin_va_end( __local_argv );
35 return __retval;
36#else
37 return _swprintf( __stream, __format, __builtin_va_arg_pack() );
38#endif
39}
4019
41}20}
4221
lib/libc/include/any-windows-any/sys/stat.h+4-4
...@@ -149,21 +149,21 @@ struct stat {...@@ -149,21 +149,21 @@ struct stat {
149};149};
150#if defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)150#if defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)
151#ifdef _USE_32BIT_TIME_T151#ifdef _USE_32BIT_TIME_T
152int __cdecl fstat(int _Desc, struct stat *_Stat) __MINGW_ASM_CALL(_fstat32i64);152int __cdecl fstat(int _Desc, struct stat *_Stat) __MINGW_ASM_CALL(fstat32i64);
153int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat32i64);153int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat32i64);
154int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat32i64);154int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat32i64);
155#else155#else
156int __cdecl fstat(int _Desc, struct stat *_Stat) __MINGW_ASM_CALL(_fstat64);156int __cdecl fstat(int _Desc, struct stat *_Stat) __MINGW_ASM_CALL(fstat64);
157int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat64);157int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat64);
158int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat64);158int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat64);
159#endif159#endif
160#else160#else
161#ifdef _USE_32BIT_TIME_T161#ifdef _USE_32BIT_TIME_T
162int __cdecl fstat(int _Desc, struct stat *_Stat) __MINGW_ASM_CALL(_fstat32);162int __cdecl fstat(int _Desc, struct stat *_Stat) __MINGW_ASM_CALL(fstat32);
163int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat32);163int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat32);
164int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat32);164int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat32);
165#else165#else
166int __cdecl fstat(int _Desc, struct stat *_Stat) __MINGW_ASM_CALL(_fstat64i32);166int __cdecl fstat(int _Desc, struct stat *_Stat) __MINGW_ASM_CALL(fstat64i32);
167int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat64i32);167int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat64i32);
168int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat64i32);168int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat64i32);
169#endif169#endif
lib/libc/include/any-windows-any/sys/timeb.h+14-2
...@@ -78,6 +78,11 @@ extern "C" {...@@ -78,6 +78,11 @@ extern "C" {
78 _CRTIMP void __cdecl _ftime64(struct __timeb64 *_Time);78 _CRTIMP void __cdecl _ftime64(struct __timeb64 *_Time);
79 _CRTIMP void __cdecl _ftime32(struct __timeb32 *_Time);79 _CRTIMP void __cdecl _ftime32(struct __timeb32 *_Time);
8080
81/*
82 * To prevent ABI issues, the mingw-w64 runtime should not call the
83 * _timeb and _ftime functions. Instead it should call the fixed-size variants.
84 */
85#ifndef _CRTBLD
81#ifndef _USE_32BIT_TIME_T86#ifndef _USE_32BIT_TIME_T
82#define _timeb __timeb6487#define _timeb __timeb64
83#define _ftime _ftime6488#define _ftime _ftime64
...@@ -85,6 +90,7 @@ extern "C" {...@@ -85,6 +90,7 @@ extern "C" {
85#define _timeb __timeb3290#define _timeb __timeb32
86#define _ftime _ftime3291#define _ftime _ftime32
87#endif92#endif
93#endif /* _CRTBLD */
8894
89struct _timespec32 {95struct _timespec32 {
90 __time32_t tv_sec;96 __time32_t tv_sec;
...@@ -109,13 +115,19 @@ struct itimerspec {...@@ -109,13 +115,19 @@ struct itimerspec {
109};115};
110#endif116#endif
111117
118/*
119 * To prevent ABI issues, the mingw-w64 runtime should not call the
120 * ftime function. Instead it should call the fixed-size variants.
121 */
122#ifndef _CRTBLD
112#if !defined (RC_INVOKED) && !defined (NO_OLDNAMES)123#if !defined (RC_INVOKED) && !defined (NO_OLDNAMES)
113#ifndef _USE_32BIT_TIME_T124#ifndef _USE_32BIT_TIME_T
114 void __cdecl ftime (struct timeb *) __MINGW_ASM_CALL(_ftime64);125 int __cdecl ftime (struct timeb *) __MINGW_ASM_CALL(ftime64);
115#else126#else
116 void __cdecl ftime (struct timeb *) __MINGW_ASM_CALL(_ftime32);127 int __cdecl ftime (struct timeb *) __MINGW_ASM_CALL(ftime32);
117#endif /* _USE_32BIT_TIME_T */128#endif /* _USE_32BIT_TIME_T */
118#endif129#endif
130#endif /* _CRTBLD */
119131
120#ifdef __cplusplus132#ifdef __cplusplus
121}133}
lib/libc/include/any-windows-any/sys/utime.h+19-32
...@@ -91,43 +91,30 @@ extern "C" {...@@ -91,43 +91,30 @@ extern "C" {
91 _CRTIMP int __cdecl _wutime64(const wchar_t *_Filename,struct __utimbuf64 *_Time);91 _CRTIMP int __cdecl _wutime64(const wchar_t *_Filename,struct __utimbuf64 *_Time);
9292
93#ifndef RC_INVOKED93#ifndef RC_INVOKED
94int __cdecl _utime(const char *,struct _utimbuf *);94
95int __cdecl _futime(int,struct _utimbuf *);95/*
96int __cdecl _wutime(const wchar_t *,struct _utimbuf *);96 * To prevent ABI issues, the mingw-w64 runtime should not call these
97#ifndef __CRT__NO_INLINE97 * functions. Instead it should call the fixed-size variants.
98 */
99#ifndef _CRTBLD
98#ifdef _USE_32BIT_TIME_T100#ifdef _USE_32BIT_TIME_T
99__CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) {101 int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_utime32);
100 return _utime32(_Filename,(struct __utimbuf32 *)_Utimbuf);102 int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_futime32);
101}103 int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_wutime32);
102__CRT_INLINE int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) {
103 return _futime32(_Desc,(struct __utimbuf32 *)_Utimbuf);
104}
105__CRT_INLINE int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) {
106 return _wutime32(_Filename,(struct __utimbuf32 *)_Utimbuf);
107}
108#else104#else
109__CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) {105 int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_utime64);
110 return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);106 int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_futime64);
111}107 int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_wutime64);
112__CRT_INLINE int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) {
113 return _futime64(_Desc,(struct __utimbuf64 *)_Utimbuf);
114}
115__CRT_INLINE int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) {
116 return _wutime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
117}
118#endif108#endif
119#endif /* !__CRT__NO_INLINE */
120
121#ifndef NO_OLDNAMES109#ifndef NO_OLDNAMES
122 int __cdecl utime(const char *, struct utimbuf *);110#ifdef _USE_32BIT_TIME_T
123#ifndef __CRT__NO_INLINE111 int __cdecl utime(const char *, struct utimbuf *) __MINGW_ASM_CALL(_utime32);
124#ifndef _USE_32BIT_TIME_T112#else
125__CRT_INLINE int __cdecl utime(const char *_Filename,struct utimbuf *_Utimbuf) {113 int __cdecl utime(const char *, struct utimbuf *) __MINGW_ASM_CALL(_utime64);
126 return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);114#endif
127}
128#endif /* !_USE_32BIT_TIME_T */
129#endif /* !__CRT__NO_INLINE */
130#endif115#endif
116#endif /* _CRTBLD */
117
131#endif118#endif
132119
133#ifdef __cplusplus120#ifdef __cplusplus
lib/libc/include/any-windows-any/systemmediatransportcontrolsinterop.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/systemmediatransportcontrolsinterop.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/systemmediatransportcontrolsinterop.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/taskschd.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/taskschd.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/taskschd.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/textstor.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/textstor.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/textstor.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/thumbcache.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/thumbcache.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/thumbcache.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/time.h+6
...@@ -227,6 +227,11 @@ extern "C" {...@@ -227,6 +227,11 @@ extern "C" {
227227
228#ifndef RC_INVOKED228#ifndef RC_INVOKED
229229
230/*
231 * To prevent ABI issues, the mingw-w64 runtime should not call these
232 * functions. Instead it should call the fixed-size variants.
233 */
234#ifndef _CRTBLD
230#ifdef _USE_32BIT_TIME_T235#ifdef _USE_32BIT_TIME_T
231time_t __CRTDECL time(time_t *_Time) __MINGW_ASM_CALL(_time32);236time_t __CRTDECL time(time_t *_Time) __MINGW_ASM_CALL(_time32);
232#ifdef _UCRT237#ifdef _UCRT
...@@ -256,6 +261,7 @@ errno_t __CRTDECL ctime_s(char *_Buf,size_t _SizeInBytes,const time_t *_Time) __...@@ -256,6 +261,7 @@ errno_t __CRTDECL ctime_s(char *_Buf,size_t _SizeInBytes,const time_t *_Time) __
256time_t __CRTDECL mktime(struct tm *_Tm) __MINGW_ASM_CALL(_mktime64);261time_t __CRTDECL mktime(struct tm *_Tm) __MINGW_ASM_CALL(_mktime64);
257time_t __CRTDECL _mkgmtime(struct tm *_Tm) __MINGW_ASM_CALL(_mkgmtime64);262time_t __CRTDECL _mkgmtime(struct tm *_Tm) __MINGW_ASM_CALL(_mkgmtime64);
258#endif263#endif
264#endif /* _CRTBLD */
259265
260#endif /* !RC_INVOKED */266#endif /* !RC_INVOKED */
261267
lib/libc/include/any-windows-any/tlbref.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/tlbref.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/tlbref.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/tlogstg.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/tlogstg.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/tlogstg.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/tpcshrd.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/tpcshrd.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/tpcshrd.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/tsvirtualchannels.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/tsvirtualchannels.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/tsvirtualchannels.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/tuner.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/tuner.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/tuner.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/uchar.h+4-19
...@@ -48,25 +48,10 @@ extern "C" {...@@ -48,25 +48,10 @@ extern "C" {
48#endif48#endif
4949
50#ifdef _UCRT50#ifdef _UCRT
5151_CRTIMP size_t mbrtoc16 (char16_t *__restrict__ _Pc16, const char *__restrict__ _S, size_t _N, mbstate_t *__restrict__ _Ps);
52size_t mbrtoc16 (char16_t *__restrict__ pc16,52_CRTIMP size_t c16rtomb (char *__restrict__ _S, char16_t _C16, mbstate_t *__restrict__ _Ps);
53 const char *__restrict__ s,53_CRTIMP size_t mbrtoc32 (char32_t *__restrict__ _Pc32, const char *__restrict__ s, size_t n, mbstate_t *__restrict__ _Ps);
54 size_t n,54_CRTIMP size_t c32rtomb (char *__restrict__ _S, char32_t _C32, mbstate_t *__restrict__ _Ps);
55 mbstate_t *__restrict__ ps);
56
57size_t c16rtomb (char *__restrict__ s,
58 char16_t c16,
59 mbstate_t *__restrict__ ps);
60
61size_t mbrtoc32 (char32_t *__restrict__ pc32,
62 const char *__restrict__ s,
63 size_t n,
64 mbstate_t *__restrict__ ps);
65
66size_t c32rtomb (char *__restrict__ s,
67 char32_t c32,
68 mbstate_t *__restrict__ ps);
69
70#endif /* _UCRT */55#endif /* _UCRT */
7156
72#ifdef __cplusplus57#ifdef __cplusplus
lib/libc/include/any-windows-any/uianimation.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/uianimation.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/uianimation.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/uiautomationclient.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/uiautomationclient.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/uiautomationclient.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/uiautomationcore.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/uiautomationcore.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/uiautomationcore.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/uiviewsettingsinterop.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/uiviewsettingsinterop.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/uiviewsettingsinterop.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/unistd.h+10-28
...@@ -56,38 +56,20 @@ int __cdecl __MINGW_NOTHROW usleep(useconds_t);...@@ -56,38 +56,20 @@ int __cdecl __MINGW_NOTHROW usleep(useconds_t);
56#define FTRUNCATE_DEFINED56#define FTRUNCATE_DEFINED
57/* This is defined as a real library function to allow autoconf57/* This is defined as a real library function to allow autoconf
58 to verify its existence. */58 to verify its existence. */
59#if !defined(NO_OLDNAMES) || defined(_POSIX)59int ftruncate(int, off_t)
60int ftruncate(int, off32_t);60#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
61int ftruncate64(int, off64_t);61__MINGW_ASM_CALL(ftruncate64)
62int truncate(const char *, off32_t);62#endif
63int truncate64(const char *, off64_t);63;
64#ifndef __CRT__NO_INLINE
65__CRT_INLINE int ftruncate(int __fd, off32_t __length)
66{
67 return _chsize (__fd, __length);
68}
69#endif /* !__CRT__NO_INLINE */
70#else
71int ftruncate(int, _off_t);
72int ftruncate64(int, _off64_t);64int ftruncate64(int, _off64_t);
73int truncate(const char *, _off_t);65int truncate(const char *, off_t)
74int truncate64(const char *, _off64_t);66#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
75#ifndef __CRT__NO_INLINE67__MINGW_ASM_CALL(truncate64)
76__CRT_INLINE int ftruncate(int __fd, _off_t __length)
77{
78 return _chsize (__fd, __length);
79}
80#endif /* !__CRT__NO_INLINE */
81#endif68#endif
69;
70int truncate64(const char *, _off64_t);
82#endif /* FTRUNCATE_DEFINED */71#endif /* FTRUNCATE_DEFINED */
8372
84#ifndef _FILE_OFFSET_BITS_SET_FTRUNCATE
85#define _FILE_OFFSET_BITS_SET_FTRUNCATE
86#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
87#define ftruncate ftruncate64
88#endif /* _FILE_OFFSET_BITS_SET_FTRUNCATE */
89#endif /* _FILE_OFFSET_BITS_SET_FTRUNCATE */
90
91#ifndef _CRT_SWAB_DEFINED73#ifndef _CRT_SWAB_DEFINED
92#define _CRT_SWAB_DEFINED /* Also in stdlib.h */74#define _CRT_SWAB_DEFINED /* Also in stdlib.h */
93 void __cdecl swab(char *_Buf1,char *_Buf2,int _SizeInBytes) __MINGW_ATTRIB_DEPRECATED_MSVC2005;75 void __cdecl swab(char *_Buf1,char *_Buf2,int _SizeInBytes) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
lib/libc/include/any-windows-any/unknwn.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/unknwn.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/unknwn.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/unknwnbase.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/unknwnbase.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/unknwnbase.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/urlhist.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/urlhist.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/urlhist.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/urlmon.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/urlmon.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/urlmon.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vdslun.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vdslun.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vdslun.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vidcap.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vidcap.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vidcap.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vmr9.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vmr9.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vmr9.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vsadmin.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vsadmin.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vsadmin.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vsbackup.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vsbackup.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vsbackup.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vsmgmt.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vsmgmt.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vsmgmt.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vsprov.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vsprov.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vsprov.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vss.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vss.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vss.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vswriter.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/vswriter.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/vswriter.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemads.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wbemads.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wbemads.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemcli.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wbemcli.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wbemcli.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemdisp.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wbemdisp.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wbemdisp.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemprov.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wbemprov.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wbemprov.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemtran.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wbemtran.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wbemtran.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wchar.h+50-141
...@@ -8,6 +8,7 @@...@@ -8,6 +8,7 @@
88
9#include <corecrt.h>9#include <corecrt.h>
10#include <corecrt_stdio_config.h>10#include <corecrt_stdio_config.h>
11#include <corecrt_wconio.h>
11#include <corecrt_wstdlib.h>12#include <corecrt_wstdlib.h>
12#include <corecrt_wctype.h>13#include <corecrt_wctype.h>
1314
...@@ -41,6 +42,9 @@ extern "C" {...@@ -41,6 +42,9 @@ extern "C" {
4142
42#ifndef _FILE_DEFINED43#ifndef _FILE_DEFINED
43 struct _iobuf {44 struct _iobuf {
45#ifdef _UCRT
46 void *_Placeholder;
47#else
44 char *_ptr;48 char *_ptr;
45 int _cnt;49 int _cnt;
46 char *_base;50 char *_base;
...@@ -49,6 +53,7 @@ extern "C" {...@@ -49,6 +53,7 @@ extern "C" {
49 int _charbuf;53 int _charbuf;
50 int _bufsiz;54 int _bufsiz;
51 char *_tmpfname;55 char *_tmpfname;
56#endif
52 };57 };
53 typedef struct _iobuf FILE;58 typedef struct _iobuf FILE;
54#define _FILE_DEFINED59#define _FILE_DEFINED
...@@ -110,6 +115,11 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);...@@ -110,6 +115,11 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);
110 };115 };
111/* #endif */116/* #endif */
112117
118/*
119 * To prevent ABI issues, the mingw-w64 runtime should not call these
120 * functions. Instead it should call the fixed-size variants.
121 */
122#ifndef _CRTBLD
113#ifdef _USE_32BIT_TIME_T123#ifdef _USE_32BIT_TIME_T
114#define _wfinddata_t _wfinddata32_t124#define _wfinddata_t _wfinddata32_t
115#define _wfinddatai64_t _wfinddata32i64_t125#define _wfinddatai64_t _wfinddata32i64_t
...@@ -127,6 +137,7 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);...@@ -127,6 +137,7 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);
127#define _wfindfirsti64 _wfindfirst64137#define _wfindfirsti64 _wfindfirst64
128#define _wfindnexti64 _wfindnext64138#define _wfindnexti64 _wfindnext64
129#endif139#endif
140#endif /* _CRTBLD */
130141
131#define _WFINDDATA_T_DEFINED142#define _WFINDDATA_T_DEFINED
132#endif143#endif
...@@ -187,10 +198,10 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);...@@ -187,10 +198,10 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);
187 _CRTIMP int __cdecl _wrename(const wchar_t *_OldFilename,const wchar_t *_NewFilename);198 _CRTIMP int __cdecl _wrename(const wchar_t *_OldFilename,const wchar_t *_NewFilename);
188 _CRTIMP wchar_t *__cdecl _wmktemp(wchar_t *_TemplateName) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;199 _CRTIMP wchar_t *__cdecl _wmktemp(wchar_t *_TemplateName) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
189 _CRTIMP intptr_t __cdecl _wfindfirst32i64(const wchar_t *_Filename,struct _wfinddata32i64_t *_FindData);200 _CRTIMP intptr_t __cdecl _wfindfirst32i64(const wchar_t *_Filename,struct _wfinddata32i64_t *_FindData);
190 intptr_t __cdecl _wfindfirst64i32(const wchar_t *_Filename,struct _wfinddata64i32_t *_FindData);201 _CRTIMP intptr_t __cdecl _wfindfirst64i32(const wchar_t *_Filename,struct _wfinddata64i32_t *_FindData);
191 _CRTIMP intptr_t __cdecl _wfindfirst64(const wchar_t *_Filename,struct _wfinddata64_t *_FindData);202 _CRTIMP intptr_t __cdecl _wfindfirst64(const wchar_t *_Filename,struct _wfinddata64_t *_FindData);
192 _CRTIMP int __cdecl _wfindnext32i64(intptr_t _FindHandle,struct _wfinddata32i64_t *_FindData);203 _CRTIMP int __cdecl _wfindnext32i64(intptr_t _FindHandle,struct _wfinddata32i64_t *_FindData);
193 int __cdecl _wfindnext64i32(intptr_t _FindHandle,struct _wfinddata64i32_t *_FindData);204 _CRTIMP int __cdecl _wfindnext64i32(intptr_t _FindHandle,struct _wfinddata64i32_t *_FindData);
194 _CRTIMP int __cdecl _wfindnext64(intptr_t _FindHandle,struct _wfinddata64_t *_FindData);205 _CRTIMP int __cdecl _wfindnext64(intptr_t _FindHandle,struct _wfinddata64_t *_FindData);
195 _CRTIMP errno_t __cdecl _wsopen_s(int *_FileHandle,const wchar_t *_Filename,int _OpenFlag,int _ShareFlag,int _PermissionFlag);206 _CRTIMP errno_t __cdecl _wsopen_s(int *_FileHandle,const wchar_t *_Filename,int _OpenFlag,int _ShareFlag,int _PermissionFlag);
196 _CRTIMP int __cdecl _wopen(const wchar_t *_Filename,int _OpenFlag,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;207 _CRTIMP int __cdecl _wopen(const wchar_t *_Filename,int _OpenFlag,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
...@@ -267,38 +278,6 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);...@@ -267,38 +278,6 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);
267#endif278#endif
268#endif279#endif
269280
270#ifndef _WCONIO_DEFINED
271#define _WCONIO_DEFINED
272
273#ifndef WEOF
274#define WEOF (wint_t)(0xFFFF)
275#endif
276
277 _CRTIMP wchar_t *_cgetws(wchar_t *_Buffer) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
278 _CRTIMP wint_t __cdecl _getwch(void);
279 _CRTIMP wint_t __cdecl _getwche(void);
280 _CRTIMP wint_t __cdecl _putwch(wchar_t _WCh);
281 _CRTIMP wint_t __cdecl _ungetwch(wint_t _WCh);
282 _CRTIMP int __cdecl _cputws(const wchar_t *_String);
283 _CRTIMP int __cdecl _cwprintf(const wchar_t * __restrict__ _Format,...);
284 _CRTIMP int __cdecl _cwscanf(const wchar_t * __restrict__ _Format,...);
285 _CRTIMP int __cdecl _cwscanf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...);
286 _CRTIMP int __cdecl _vcwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
287 _CRTIMP int __cdecl _cwprintf_p(const wchar_t * __restrict__ _Format,...);
288 _CRTIMP int __cdecl _vcwprintf_p(const wchar_t * __restrict__ _Format,va_list _ArgList);
289
290 _CRTIMP int __cdecl _cwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...);
291 _CRTIMP int __cdecl _vcwprintf_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
292 _CRTIMP int __cdecl _cwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,...);
293 _CRTIMP int __cdecl _vcwprintf_p_l(const wchar_t * __restrict__ _Format,_locale_t _Locale,va_list _ArgList);
294#if __MSVCRT_VERSION__ >= 0x800
295 wint_t __cdecl _putwch_nolock(wchar_t _WCh);
296 wint_t __cdecl _getwch_nolock(void);
297 wint_t __cdecl _getwche_nolock(void);
298 wint_t __cdecl _ungetwch_nolock(wint_t _WCh);
299#endif
300#endif
301
302#ifdef _UCRT281#ifdef _UCRT
303 int __cdecl __stdio_common_vswprintf_p(unsigned __int64 _Options, wchar_t *_Str, size_t _Len, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);282 int __cdecl __stdio_common_vswprintf_p(unsigned __int64 _Options, wchar_t *_Str, size_t _Len, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
304 int __cdecl __stdio_common_vfwprintf_p(unsigned __int64 _Options, FILE *_File, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);283 int __cdecl __stdio_common_vfwprintf_p(unsigned __int64 _Options, FILE *_File, const wchar_t *_Format, _locale_t _Locale, va_list _ArgList);
...@@ -460,53 +439,30 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -460,53 +439,30 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
460#endif /* __NO_ISOCEXT */439#endif /* __NO_ISOCEXT */
461440
462#else /* !__USE_MINGW_ANSI_STDIO */441#else /* !__USE_MINGW_ANSI_STDIO */
463
464#ifdef _UCRT
465 __MINGW_ATTRIB_DEPRECATED_SEC_WARN442 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
466 int __cdecl fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);443 int __cdecl fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
444
467 __MINGW_ATTRIB_DEPRECATED_SEC_WARN445 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
468 int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...);446 int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...);
447
469 __MINGW_ATTRIB_DEPRECATED_SEC_WARN448 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
470 int __cdecl wscanf(const wchar_t * __restrict__ _Format,...);449 int __cdecl wscanf(const wchar_t * __restrict__ _Format,...);
471 __MINGW_ATTRIB_NONNULL(2)
472 int vfwscanf (FILE *__stream, const wchar_t *__format, va_list __local_argv);
473
474 __MINGW_ATTRIB_NONNULL(2)
475 int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, va_list __local_argv);
476 __MINGW_ATTRIB_NONNULL(1)
477 int vwscanf(const wchar_t *__format, va_list __local_argv);
478
479 int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
480 int __cdecl wprintf(const wchar_t * __restrict__ _Format,...);
481 int __cdecl vfwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list _ArgList);
482 int __cdecl vwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
483450
484 int __cdecl swprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...);
485 int __cdecl vswprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args);
486#else
487
488 int __cdecl fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
489 int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
490 int __cdecl wscanf(const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
491#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
492 __MINGW_ATTRIB_NONNULL(2)451 __MINGW_ATTRIB_NONNULL(2)
493 int vfwscanf (FILE *__stream, const wchar_t *__format, __builtin_va_list __local_argv);452 int __cdecl vfwscanf(FILE *__stream, const wchar_t *__format, va_list __local_argv);
494453
495 __MINGW_ATTRIB_NONNULL(2)454 __MINGW_ATTRIB_NONNULL(2)
496 int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, __builtin_va_list __local_argv);455 int __cdecl vswscanf(const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, va_list __local_argv);
497456
498 __MINGW_ATTRIB_NONNULL(1)457 __MINGW_ATTRIB_NONNULL(1)
499 int vwscanf(const wchar_t *__format, __builtin_va_list __local_argv);458 int __cdecl vwscanf(const wchar_t *__format, va_list __local_argv);
500#endif /* __NO_ISOCEXT */
501459
502 int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);460 int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
503 int __cdecl wprintf(const wchar_t * __restrict__ _Format,...);461 int __cdecl wprintf(const wchar_t * __restrict__ _Format,...);
504 int __cdecl vfwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list _ArgList);462 int __cdecl vfwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list _ArgList);
505 int __cdecl vwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);463 int __cdecl vwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
506
507 int __cdecl swprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...);464 int __cdecl swprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...);
508 int __cdecl vswprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args);465 int __cdecl vswprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args);
509#endif /* _UCRT */
510#endif /* __USE_MINGW_ANSI_STDIO */466#endif /* __USE_MINGW_ANSI_STDIO */
511467
512468
...@@ -534,34 +490,14 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -534,34 +490,14 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
534 _CRTIMP wchar_t *__cdecl _getws(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;490 _CRTIMP wchar_t *__cdecl _getws(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
535 _CRTIMP int __cdecl _putws(const wchar_t *_Str);491 _CRTIMP int __cdecl _putws(const wchar_t *_Str);
536492
537#ifdef _UCRT
538 __mingw_ovr
539 int __cdecl _scwprintf(const wchar_t * __restrict__ _Format,...)
540 {
541 __builtin_va_list __ap;
542 int __ret;
543 __builtin_va_start(__ap, _Format);
544 __ret = __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, _Format, NULL, __ap);
545 __builtin_va_end(__ap);
546 return __ret;
547 }
548 int __cdecl _snwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
549 __mingw_ovr __MINGW_ATTRIB_DEPRECATED_SEC_WARN
550 int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args)
551 {
552 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION, _Dest, _Count, _Format, NULL, _Args);
553 }
554
555#if __USE_MINGW_ANSI_STDIO == 0
556 int snwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...);
557 int __cdecl vsnwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg);
558#endif
559
560#else
561 _CRTIMP int __cdecl _scwprintf(const wchar_t * __restrict__ _Format,...);493 _CRTIMP int __cdecl _scwprintf(const wchar_t * __restrict__ _Format,...);
494
495#ifndef _UCRT
562 _CRTIMP int __cdecl _swprintf_l(wchar_t * __restrict__ ,size_t _SizeInWords,const wchar_t * __restrict__ _Format,_locale_t _Locale,... ) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;496 _CRTIMP int __cdecl _swprintf_l(wchar_t * __restrict__ ,size_t _SizeInWords,const wchar_t * __restrict__ _Format,_locale_t _Locale,... ) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
563 _CRTIMP int __cdecl _swprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,...);497 _CRTIMP int __cdecl _swprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,...);
564 _CRTIMP int __cdecl _vswprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,va_list _ArgList);498 _CRTIMP int __cdecl _vswprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,va_list _ArgList);
499#endif
500
565 _CRTIMP int __cdecl _snwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;501 _CRTIMP int __cdecl _snwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
566 _CRTIMP int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;502 _CRTIMP int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
567503
...@@ -572,15 +508,13 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -572,15 +508,13 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
572#pragma push_macro("vsnwprintf")508#pragma push_macro("vsnwprintf")
573# undef snwprintf509# undef snwprintf
574# undef vsnwprintf510# undef vsnwprintf
575 int __cdecl snwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...) __MINGW_ASM_CALL(__ms_snwprintf);511 int __cdecl snwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...);
576 int __cdecl vsnwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg) __MINGW_ASM_CALL(__ms_vsnwprintf);512 int __cdecl vsnwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg);
577#pragma pop_macro ("vsnwprintf")513#pragma pop_macro ("vsnwprintf")
578#pragma pop_macro ("snwprintf")514#pragma pop_macro ("snwprintf")
579#endif515#endif
580516
581#endif /* _UCRT */517#endif /* __NO_ISOCEXT */
582
583#endif /* _WSTDIO_DEFINED */
584518
585519
586#ifdef _UCRT520#ifdef _UCRT
...@@ -802,10 +736,9 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -802,10 +736,9 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
802 {736 {
803 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, _Format, _Locale, _ArgList);737 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, _Format, _Locale, _ArgList);
804 }738 }
805 __mingw_ovr int __cdecl _vscwprintf(const wchar_t *_Format, va_list _ArgList)739
806 {740 _CRTIMP int __cdecl _vscwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
807 return _vscwprintf_l(_Format, NULL, _ArgList);741
808 }
809 __mingw_ovr int __cdecl _scwprintf_l(const wchar_t *_Format, _locale_t _Locale, ...)742 __mingw_ovr int __cdecl _scwprintf_l(const wchar_t *_Format, _locale_t _Locale, ...)
810 {743 {
811 __builtin_va_list _ArgList;744 __builtin_va_list _ArgList;
...@@ -828,10 +761,7 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -828,10 +761,7 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
828 {761 {
829 return _vswprintf_c_l(_DstBuf, _MaxCount, _Format, _Locale, _ArgList);762 return _vswprintf_c_l(_DstBuf, _MaxCount, _Format, _Locale, _ArgList);
830 }763 }
831 __mingw_ovr int __cdecl _vswprintf(wchar_t *_DstBuf, const wchar_t *_Format, va_list _ArgList)764 _CRTIMP int __cdecl _vswprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,va_list _Args);
832 {
833 return _vswprintf_c_l(_DstBuf, (size_t)-1, _Format, NULL, _ArgList);
834 }
835 __mingw_ovr int __cdecl _swprintf_c_l(wchar_t *_DstBuf, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, ...)765 __mingw_ovr int __cdecl _swprintf_c_l(wchar_t *_DstBuf, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, ...)
836 {766 {
837 __builtin_va_list _ArgList;767 __builtin_va_list _ArgList;
...@@ -850,15 +780,7 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -850,15 +780,7 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
850 __builtin_va_end(_ArgList);780 __builtin_va_end(_ArgList);
851 return _Ret;781 return _Ret;
852 }782 }
853 __mingw_ovr int __cdecl _swprintf(wchar_t *_DstBuf, const wchar_t *_Format, ...)783 _CRTIMP int __cdecl _swprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,...);
854 {
855 __builtin_va_list _ArgList;
856 int _Ret;
857 __builtin_va_start(_ArgList, _Format);
858 _Ret = _vswprintf_c_l(_DstBuf, (size_t)-1, _Format, NULL, _ArgList);
859 __builtin_va_end(_ArgList);
860 return _Ret;
861 }
862#else /* _UCRT */784#else /* _UCRT */
863 _CRTIMP int __cdecl _fwprintf_p(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);785 _CRTIMP int __cdecl _fwprintf_p(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
864 _CRTIMP int __cdecl _wprintf_p(const wchar_t * __restrict__ _Format,...);786 _CRTIMP int __cdecl _wprintf_p(const wchar_t * __restrict__ _Format,...);
...@@ -957,7 +879,8 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -957,7 +879,8 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
957#define _putwc_nolock(_c,_stm) _fputwc_nolock(_c,_stm)879#define _putwc_nolock(_c,_stm) _fputwc_nolock(_c,_stm)
958#define _getwc_nolock(_c) _fgetwc_nolock(_c)880#define _getwc_nolock(_c) _fgetwc_nolock(_c)
959#endif881#endif
960#endif882
883#endif /* _WSTDIO_DEFINED */
961884
962#ifndef _WSTDLIB_DEFINED885#ifndef _WSTDLIB_DEFINED
963#define _WSTDLIB_DEFINED886#define _WSTDLIB_DEFINED
...@@ -1061,8 +984,8 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -1061,8 +984,8 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
1061 _CONST_RETURN wchar_t *__cdecl wcsrchr(const wchar_t *_Str,wchar_t _Ch);984 _CONST_RETURN wchar_t *__cdecl wcsrchr(const wchar_t *_Str,wchar_t _Ch);
1062 size_t __cdecl wcsspn(const wchar_t *_Str,const wchar_t *_Control);985 size_t __cdecl wcsspn(const wchar_t *_Str,const wchar_t *_Control);
1063 _CONST_RETURN wchar_t *__cdecl wcsstr(const wchar_t *_Str,const wchar_t *_SubStr);986 _CONST_RETURN wchar_t *__cdecl wcsstr(const wchar_t *_Str,const wchar_t *_SubStr);
1064 wchar_t *__cdecl wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim,wchar_t ** __restrict__ _Ptr) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;987 _CRTIMP wchar_t *__cdecl wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim,wchar_t ** __restrict__ _Ptr) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1065 wchar_t *__cdecl _wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;988 _CRTIMP wchar_t *__cdecl _wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1066#if defined(_CRT_NON_CONFORMING_WCSTOK) && !defined(__cplusplus)989#if defined(_CRT_NON_CONFORMING_WCSTOK) && !defined(__cplusplus)
1067 #define wcstok _wcstok990 #define wcstok _wcstok
1068#endif991#endif
...@@ -1082,9 +1005,9 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -1082,9 +1005,9 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
1082 _CRTIMP wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1005 _CRTIMP wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1083 _CRTIMP wchar_t *__cdecl _wcsupr(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1006 _CRTIMP wchar_t *__cdecl _wcsupr(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1084 _CRTIMP wchar_t *_wcsupr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1007 _CRTIMP wchar_t *_wcsupr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1085 size_t __cdecl wcsxfrm(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount);1008 _CRTIMP size_t __cdecl wcsxfrm(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount);
1086 _CRTIMP size_t __cdecl _wcsxfrm_l(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);1009 _CRTIMP size_t __cdecl _wcsxfrm_l(wchar_t * __restrict__ _Dst,const wchar_t * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);
1087 int __cdecl wcscoll(const wchar_t *_Str1,const wchar_t *_Str2);1010 _CRTIMP int __cdecl wcscoll(const wchar_t *_Str1,const wchar_t *_Str2);
1088 _CRTIMP int __cdecl _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);1011 _CRTIMP int __cdecl _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
1089 _CRTIMP int __cdecl _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);1012 _CRTIMP int __cdecl _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);
1090 _CRTIMP int __cdecl _wcsicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);1013 _CRTIMP int __cdecl _wcsicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
...@@ -1147,27 +1070,21 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -1147,27 +1070,21 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
11471070
1148#if !defined (RC_INVOKED) && !defined (_INC_WTIME_INL)1071#if !defined (RC_INVOKED) && !defined (_INC_WTIME_INL)
1149#define _INC_WTIME_INL1072#define _INC_WTIME_INL
1150 wchar_t *__cdecl _wctime(const time_t *_Time) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1151#ifndef __CRT__NO_INLINE
1152#ifndef _USE_32BIT_TIME_T1073#ifndef _USE_32BIT_TIME_T
1153 __CRT_INLINE wchar_t *__cdecl _wctime(const time_t *_Time) { return _wctime64(_Time); }1074 wchar_t *__cdecl _wctime(const time_t *_Time) __MINGW_ASM_CALL(_wctime64) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1154#else1075#else
1155 __CRT_INLINE wchar_t *__cdecl _wctime(const time_t *_Time) { return _wctime32(_Time); }1076 wchar_t *__cdecl _wctime(const time_t *_Time) __MINGW_ASM_CALL(_wctime32) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1156#endif1077#endif
1157#endif /* __CRT__NO_INLINE */
1158#endif1078#endif
11591079
1160#if !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL)1080#if !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL)
1161#define _INC_WTIME_S_INL1081#define _INC_WTIME_S_INL
1162 errno_t __cdecl _wctime_s(wchar_t *, size_t, const time_t *);
1163#ifndef __CRT__NO_INLINE
1164#ifndef _USE_32BIT_TIME_T1082#ifndef _USE_32BIT_TIME_T
1165 __CRT_INLINE errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime64_s (_Buffer,_SizeInWords,_Time); }1083 errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) __MINGW_ASM_CALL(_wctime64_s);
1166#else1084#else
1167 __CRT_INLINE errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime32_s (_Buffer,_SizeInWords,_Time); }1085 errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) __MINGW_ASM_CALL(_wctime32_s);
1168#endif /* _USE_32BIT_TIME_T */1086#endif
1169#endif /* __CRT__NO_INLINE */1087#endif
1170#endif /* !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL) */
11711088
1172#endif1089#endif
11731090
...@@ -1182,13 +1099,14 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -1182,13 +1099,14 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
1182#endif1099#endif
1183 typedef wchar_t _Wint_t;1100 typedef wchar_t _Wint_t;
11841101
1185 wint_t __cdecl btowc(int);1102 _CRTIMP wint_t __cdecl btowc(int);
1186 size_t __cdecl mbrlen(const char * __restrict__ _Ch,size_t _SizeInBytes,mbstate_t * __restrict__ _State);1103 int __cdecl mbsinit(const mbstate_t *ps);
1187 size_t __cdecl mbrtowc(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SizeInBytes,mbstate_t * __restrict__ _State);1104 _CRTIMP size_t __cdecl mbrlen(const char * __restrict__ _Ch,size_t _SizeInBytes,mbstate_t * __restrict__ _State);
1188 size_t __cdecl mbsrtowcs(wchar_t * __restrict__ _Dest,const char ** __restrict__ _PSrc,size_t _Count,mbstate_t * __restrict__ _State) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1105 _CRTIMP size_t __cdecl mbrtowc(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SizeInBytes,mbstate_t * __restrict__ _State);
1189 size_t __cdecl wcrtomb(char * __restrict__ _Dest,wchar_t _Source,mbstate_t * __restrict__ _State) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1106 _CRTIMP size_t __cdecl mbsrtowcs(wchar_t * __restrict__ _Dest,const char ** __restrict__ _PSrc,size_t _Count,mbstate_t * __restrict__ _State) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1190 size_t __cdecl wcsrtombs(char * __restrict__ _Dest,const wchar_t ** __restrict__ _PSource,size_t _Count,mbstate_t * __restrict__ _State) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1107 _CRTIMP size_t __cdecl wcrtomb(char * __restrict__ _Dest,wchar_t _Source,mbstate_t * __restrict__ _State) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1191 int __cdecl wctob(wint_t _WCh);1108 _CRTIMP size_t __cdecl wcsrtombs(char * __restrict__ _Dest,const wchar_t ** __restrict__ _PSource,size_t _Count,mbstate_t * __restrict__ _State) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1109 _CRTIMP int __cdecl wctob(wint_t _WCh);
11921110
1193#ifndef __NO_ISOCEXT /* these need static lib libmingwex.a */1111#ifndef __NO_ISOCEXT /* these need static lib libmingwex.a */
1194 wchar_t *__cdecl wmemset(wchar_t *s, wchar_t c, size_t n);1112 wchar_t *__cdecl wmemset(wchar_t *s, wchar_t c, size_t n);
...@@ -1198,12 +1116,6 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -1198,12 +1116,6 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
1198 wchar_t * __cdecl wmempcpy (wchar_t *_Dst, const wchar_t *_Src, size_t _Size);1116 wchar_t * __cdecl wmempcpy (wchar_t *_Dst, const wchar_t *_Src, size_t _Size);
1199 wchar_t *__cdecl wmemmove(wchar_t *s1, const wchar_t *s2, size_t n) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1117 wchar_t *__cdecl wmemmove(wchar_t *s1, const wchar_t *s2, size_t n) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1200 int __cdecl fwide(FILE *stream,int mode);1118 int __cdecl fwide(FILE *stream,int mode);
1201#if defined(_UCRT) || defined(__LARGE_MBSTATE_T)
1202 /* With UCRT, mbsinit is only available as inline. */
1203 __mingw_ovr int __cdecl mbsinit(const mbstate_t *_P) { return (!_P || _P->_Wchar == 0); }
1204#else
1205 int __cdecl mbsinit(const mbstate_t *ps);
1206#endif
1207 __MINGW_EXTENSION long long __cdecl wcstoll(const wchar_t * __restrict__ nptr,wchar_t ** __restrict__ endptr, int base);1119 __MINGW_EXTENSION long long __cdecl wcstoll(const wchar_t * __restrict__ nptr,wchar_t ** __restrict__ endptr, int base);
1208 __MINGW_EXTENSION unsigned long long __cdecl wcstoull(const wchar_t * __restrict__ nptr,wchar_t ** __restrict__ endptr, int base);1120 __MINGW_EXTENSION unsigned long long __cdecl wcstoull(const wchar_t * __restrict__ nptr,wchar_t ** __restrict__ endptr, int base);
1209#endif /* __NO_ISOCEXT */1121#endif /* __NO_ISOCEXT */
...@@ -1212,9 +1124,6 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);...@@ -1212,9 +1124,6 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
1212 void *__cdecl memcpy(void * __restrict__ _Dst,const void * __restrict__ _Src,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;1124 void *__cdecl memcpy(void * __restrict__ _Dst,const void * __restrict__ _Src,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1213#ifndef __CRT__NO_INLINE1125#ifndef __CRT__NO_INLINE
1214 __CRT_INLINE int __cdecl fwide(FILE *_F,int _M) { (void)_F; return (_M); }1126 __CRT_INLINE int __cdecl fwide(FILE *_F,int _M) { (void)_F; return (_M); }
1215#if !defined(_UCRT) && !defined(__LARGE_MBSTATE_T)
1216 __CRT_INLINE int __cdecl mbsinit(const mbstate_t *_P) { return (!_P || *_P==0); }
1217#endif
1218 __CRT_INLINE _CONST_RETURN wchar_t *__cdecl wmemchr(const wchar_t *_S,wchar_t _C,size_t _N) {1127 __CRT_INLINE _CONST_RETURN wchar_t *__cdecl wmemchr(const wchar_t *_S,wchar_t _C,size_t _N) {
1219 if (_S) {1128 if (_S) {
1220 for ( ; 0 < _N; ++_S, --_N)1129 for ( ; 0 < _N; ++_S, --_N)
lib/libc/include/any-windows-any/wctype.h+3-3
...@@ -13,9 +13,9 @@ extern "C" {...@@ -13,9 +13,9 @@ extern "C" {
13#endif13#endif
1414
15 typedef wchar_t wctrans_t;15 typedef wchar_t wctrans_t;
16 wint_t __cdecl towctrans(wint_t,wctrans_t);16 _CRTIMP wint_t __cdecl towctrans(wint_t,wctrans_t);
17 wctrans_t __cdecl wctrans(const char *);17 _CRTIMP wctrans_t __cdecl wctrans(const char *);
18 wctype_t __cdecl wctype(const char *);18 _CRTIMP wctype_t __cdecl wctype(const char *);
1919
20#ifdef __cplusplus20#ifdef __cplusplus
21}21}
lib/libc/include/any-windows-any/wdstptmgmt.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wdstptmgmt.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wdstptmgmt.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/weakreference.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/weakreference.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/weakreference.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/webservices.h+7-7
...@@ -406,8 +406,8 @@ typedef struct _WS_INT32_DESCRIPTION {...@@ -406,8 +406,8 @@ typedef struct _WS_INT32_DESCRIPTION {
406} WS_INT32_DESCRIPTION;406} WS_INT32_DESCRIPTION;
407407
408typedef struct _WS_INT64_DESCRIPTION {408typedef struct _WS_INT64_DESCRIPTION {
409 __int64 DECLSPEC_ALIGN(8) minValue;409 INT64 minValue;
410 __int64 DECLSPEC_ALIGN(8) maxValue;410 INT64 maxValue;
411} WS_INT64_DESCRIPTION;411} WS_INT64_DESCRIPTION;
412412
413typedef struct _WS_UINT8_DESCRIPTION {413typedef struct _WS_UINT8_DESCRIPTION {
...@@ -426,8 +426,8 @@ typedef struct _WS_UINT32_DESCRIPTION {...@@ -426,8 +426,8 @@ typedef struct _WS_UINT32_DESCRIPTION {
426} WS_UINT32_DESCRIPTION;426} WS_UINT32_DESCRIPTION;
427427
428typedef struct _WS_UINT64_DESCRIPTION {428typedef struct _WS_UINT64_DESCRIPTION {
429 unsigned __int64 DECLSPEC_ALIGN(8) minValue;429 UINT64 minValue;
430 unsigned __int64 DECLSPEC_ALIGN(8) maxValue;430 UINT64 maxValue;
431} WS_UINT64_DESCRIPTION;431} WS_UINT64_DESCRIPTION;
432432
433typedef struct _WS_WSZ_DESCRIPTION {433typedef struct _WS_WSZ_DESCRIPTION {
...@@ -673,12 +673,12 @@ typedef struct _WS_XML_INT32_TEXT {...@@ -673,12 +673,12 @@ typedef struct _WS_XML_INT32_TEXT {
673673
674typedef struct _WS_XML_INT64_TEXT {674typedef struct _WS_XML_INT64_TEXT {
675 WS_XML_TEXT text;675 WS_XML_TEXT text;
676 __int64 DECLSPEC_ALIGN(8) value;676 INT64 value;
677} WS_XML_INT64_TEXT;677} WS_XML_INT64_TEXT;
678678
679typedef struct _WS_XML_UINT64_TEXT {679typedef struct _WS_XML_UINT64_TEXT {
680 WS_XML_TEXT text;680 WS_XML_TEXT text;
681 unsigned __int64 DECLSPEC_ALIGN(8) value;681 UINT64 value;
682} WS_XML_UINT64_TEXT;682} WS_XML_UINT64_TEXT;
683683
684typedef struct _WS_XML_FLOAT_TEXT {684typedef struct _WS_XML_FLOAT_TEXT {
...@@ -1232,7 +1232,7 @@ typedef enum {...@@ -1232,7 +1232,7 @@ typedef enum {
1232} WS_DATETIME_FORMAT;1232} WS_DATETIME_FORMAT;
12331233
1234struct _WS_DATETIME {1234struct _WS_DATETIME {
1235 unsigned __int64 DECLSPEC_ALIGN(8) ticks;1235 UINT64 ticks;
1236 WS_DATETIME_FORMAT format;1236 WS_DATETIME_FORMAT format;
1237};1237};
12381238
lib/libc/include/any-windows-any/wia_lh.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wia_lh.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wia_lh.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wia_xp.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wia_xp.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wia_xp.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/winapifamily.h+34-9
...@@ -6,19 +6,44 @@...@@ -6,19 +6,44 @@
6#ifndef _INC_WINAPIFAMILY6#ifndef _INC_WINAPIFAMILY
7#define _INC_WINAPIFAMILY7#define _INC_WINAPIFAMILY
88
9#define WINAPI_PARTITION_DESKTOP 0x19#define WINAPI_FAMILY_PC_APP 2
10#define WINAPI_PARTITION_APP 0x2 10#define WINAPI_FAMILY_PHONE_APP 3
11#define WINAPI_FAMILY_SYSTEM 4
12#define WINAPI_FAMILY_SERVER 5
13#define WINAPI_FAMILY_DESKTOP_APP 100
1114
12#define WINAPI_FAMILY_APP WINAPI_PARTITION_APP15#define WINAPI_FAMILY_APP WINAPI_FAMILY_PC_APP
13#define WINAPI_FAMILY_DESKTOP_APP (WINAPI_PARTITION_DESKTOP \
14 | WINAPI_PARTITION_APP)
1516
16/* WINAPI_FAMILY can be either desktop + App, or App. */
17#ifndef WINAPI_FAMILY17#ifndef WINAPI_FAMILY
18#define WINAPI_FAMILY WINAPI_FAMILY_DESKTOP_APP18#define WINAPI_FAMILY WINAPI_FAMILY_DESKTOP_APP
19#endif19#endif
2020
21#define WINAPI_FAMILY_PARTITION(v) ((WINAPI_FAMILY & v) == v)21#ifndef WINAPI_PARTITION_DESKTOP
22#define WINAPI_FAMILY_ONE_PARTITION(vset, v) ((WINAPI_FAMILY & vset) == v)22#define WINAPI_PARTITION_DESKTOP (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP)
23#endif
24
25#ifndef WINAPI_PARTITION_APP
26#define WINAPI_PARTITION_APP (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP || \
27 WINAPI_FAMILY == WINAPI_FAMILY_PC_APP || \
28 WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
29#endif
30
31#ifndef WINAPI_PARTITION_PC_APP
32#define WINAPI_PARTITION_PC_APP (WINAPI_FAMILY == WINAPI_FAMILY_DESKTOP_APP || \
33 WINAPI_FAMILY == WINAPI_FAMILY_PC_APP)
34#endif
35
36#ifndef WINAPI_PARTITION_PHONE_APP
37#define WINAPI_PARTITION_PHONE_APP (WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP)
38#endif
39
40#ifndef WINAPI_PARTITION_SYSTEM
41#define WINAPI_PARTITION_SYSTEM (WINAPI_FAMILY == WINAPI_FAMILY_SYSTEM || \
42 WINAPI_FAMILY == WINAPI_FAMILY_SERVER)
43#endif
44
45#define WINAPI_PARTITION_PHONE WINAPI_PARTITION_PHONE_APP
46
47#define WINAPI_FAMILY_PARTITION(x) x
2348
24#endif 49#endif /* _INC_WINAPIFAMILY */
lib/libc/include/any-windows-any/wincodec.h+1-88
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wincodec.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wincodec.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -274,14 +274,6 @@ interface IWICDdsFrameDecode;...@@ -274,14 +274,6 @@ interface IWICDdsFrameDecode;
274#endif /* __cplusplus */274#endif /* __cplusplus */
275#endif275#endif
276276
277#ifndef __IWICWineDecoder_FWD_DEFINED__
278#define __IWICWineDecoder_FWD_DEFINED__
279typedef interface IWICWineDecoder IWICWineDecoder;
280#ifdef __cplusplus
281interface IWICWineDecoder;
282#endif /* __cplusplus */
283#endif
284
285/* Headers for imported files */277/* Headers for imported files */
286278
287#include <wtypes.h>279#include <wtypes.h>
...@@ -6207,85 +6199,6 @@ static inline HRESULT IWICDdsFrameDecode_CopyBlocks(IWICDdsFrameDecode* This,con...@@ -6207,85 +6199,6 @@ static inline HRESULT IWICDdsFrameDecode_CopyBlocks(IWICDdsFrameDecode* This,con
62076199
6208#endif /* __IWICDdsFrameDecode_INTERFACE_DEFINED__ */6200#endif /* __IWICDdsFrameDecode_INTERFACE_DEFINED__ */
62096201
6210/*****************************************************************************
6211 * IWICWineDecoder interface
6212 */
6213#ifndef __IWICWineDecoder_INTERFACE_DEFINED__
6214#define __IWICWineDecoder_INTERFACE_DEFINED__
6215
6216DEFINE_GUID(IID_IWICWineDecoder, 0xb9bd430d, 0x28a8, 0x41d3, 0xa1,0xf5, 0xf3,0x6e,0xe0,0x28,0x40,0xbf);
6217#if defined(__cplusplus) && !defined(CINTERFACE)
6218MIDL_INTERFACE("b9bd430d-28a8-41d3-a1f5-f36ee02840bf")
6219IWICWineDecoder : public IUnknown
6220{
6221 virtual HRESULT STDMETHODCALLTYPE Initialize(
6222 IStream *stream,
6223 WICDecodeOptions options) = 0;
6224
6225};
6226#ifdef __CRT_UUID_DECL
6227__CRT_UUID_DECL(IWICWineDecoder, 0xb9bd430d, 0x28a8, 0x41d3, 0xa1,0xf5, 0xf3,0x6e,0xe0,0x28,0x40,0xbf)
6228#endif
6229#else
6230typedef struct IWICWineDecoderVtbl {
6231 BEGIN_INTERFACE
6232
6233 /*** IUnknown methods ***/
6234 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6235 IWICWineDecoder *This,
6236 REFIID riid,
6237 void **ppvObject);
6238
6239 ULONG (STDMETHODCALLTYPE *AddRef)(
6240 IWICWineDecoder *This);
6241
6242 ULONG (STDMETHODCALLTYPE *Release)(
6243 IWICWineDecoder *This);
6244
6245 /*** IWICWineDecoder methods ***/
6246 HRESULT (STDMETHODCALLTYPE *Initialize)(
6247 IWICWineDecoder *This,
6248 IStream *stream,
6249 WICDecodeOptions options);
6250
6251 END_INTERFACE
6252} IWICWineDecoderVtbl;
6253
6254interface IWICWineDecoder {
6255 CONST_VTBL IWICWineDecoderVtbl* lpVtbl;
6256};
6257
6258#ifdef COBJMACROS
6259#ifndef WIDL_C_INLINE_WRAPPERS
6260/*** IUnknown methods ***/
6261#define IWICWineDecoder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6262#define IWICWineDecoder_AddRef(This) (This)->lpVtbl->AddRef(This)
6263#define IWICWineDecoder_Release(This) (This)->lpVtbl->Release(This)
6264/*** IWICWineDecoder methods ***/
6265#define IWICWineDecoder_Initialize(This,stream,options) (This)->lpVtbl->Initialize(This,stream,options)
6266#else
6267/*** IUnknown methods ***/
6268static inline HRESULT IWICWineDecoder_QueryInterface(IWICWineDecoder* This,REFIID riid,void **ppvObject) {
6269 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6270}
6271static inline ULONG IWICWineDecoder_AddRef(IWICWineDecoder* This) {
6272 return This->lpVtbl->AddRef(This);
6273}
6274static inline ULONG IWICWineDecoder_Release(IWICWineDecoder* This) {
6275 return This->lpVtbl->Release(This);
6276}
6277/*** IWICWineDecoder methods ***/
6278static inline HRESULT IWICWineDecoder_Initialize(IWICWineDecoder* This,IStream *stream,WICDecodeOptions options) {
6279 return This->lpVtbl->Initialize(This,stream,options);
6280}
6281#endif
6282#endif
6283
6284#endif
6285
6286
6287#endif /* __IWICWineDecoder_INTERFACE_DEFINED__ */
6288
6289HRESULT WINAPI WICConvertBitmapSource(REFWICPixelFormatGUID dstFormat, IWICBitmapSource *pISrc, IWICBitmapSource **ppIDst);6202HRESULT WINAPI WICConvertBitmapSource(REFWICPixelFormatGUID dstFormat, IWICBitmapSource *pISrc, IWICBitmapSource **ppIDst);
6290HRESULT WINAPI WICCreateBitmapFromSection(UINT width, UINT height, REFWICPixelFormatGUID format, HANDLE section, UINT stride, UINT offset, IWICBitmap **bitmap);6203HRESULT WINAPI WICCreateBitmapFromSection(UINT width, UINT height, REFWICPixelFormatGUID format, HANDLE section, UINT stride, UINT offset, IWICBitmap **bitmap);
6291HRESULT WINAPI WICCreateBitmapFromSectionEx(UINT width, UINT height, REFWICPixelFormatGUID format, HANDLE section, UINT stride, UINT offset, WICSectionAccessLevel access, IWICBitmap **bitmap);6204HRESULT WINAPI WICCreateBitmapFromSectionEx(UINT width, UINT height, REFWICPixelFormatGUID format, HANDLE section, UINT stride, UINT offset, WICSectionAccessLevel access, IWICBitmap **bitmap);
lib/libc/include/any-windows-any/wincodecsdk.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wincodecsdk.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wincodecsdk.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/winerror.h+9
...@@ -4919,6 +4919,15 @@ __CRT_INLINE HRESULT HRESULT_FROM_WIN32(__LONG32 x) { return x <= 0 ? (HRESULT)x...@@ -4919,6 +4919,15 @@ __CRT_INLINE HRESULT HRESULT_FROM_WIN32(__LONG32 x) { return x <= 0 ? (HRESULT)x
4919#define DWRITE_E_DOWNLOADFAILED _HRESULT_TYPEDEF_(0x8898500FL)4919#define DWRITE_E_DOWNLOADFAILED _HRESULT_TYPEDEF_(0x8898500FL)
4920#define DWRITE_E_TOOMANYDOWNLOADS _HRESULT_TYPEDEF_(0x88985010L)4920#define DWRITE_E_TOOMANYDOWNLOADS _HRESULT_TYPEDEF_(0x88985010L)
49214921
4922#define IORING_E_REQUIRED_FLAG_NOT_SUPPORTED _HRESULT_TYPEDEF_(0x80460001)
4923#define IORING_E_SUBMISSION_QUEUE_FULL _HRESULT_TYPEDEF_(0x80460002)
4924#define IORING_E_VERSION_NOT_SUPPORTED _HRESULT_TYPEDEF_(0x80460003)
4925#define IORING_E_SUBMISSION_QUEUE_TOO_BIG _HRESULT_TYPEDEF_(0x80460004)
4926#define IORING_E_COMPLETION_QUEUE_TOO_BIG _HRESULT_TYPEDEF_(0x80460005)
4927#define IORING_E_SUBMIT_IN_PROGRESS _HRESULT_TYPEDEF_(0x80460006)
4928#define IORING_E_CORRUPT _HRESULT_TYPEDEF_(0x80460007)
4929#define IORING_E_COMPLETION_QUEUE_TOO_FULL _HRESULT_TYPEDEF_(0x80460008)
4930
4922#include <fltwinerror.h>4931#include <fltwinerror.h>
49234932
4924#undef __IN__WINERROR_4933#undef __IN__WINERROR_
lib/libc/include/any-windows-any/winhttp.h+19-3
...@@ -55,7 +55,8 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;...@@ -55,7 +55,8 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
55#define ICU_REJECT_USERPWD 0x0000400055#define ICU_REJECT_USERPWD 0x00004000
5656
57/* flags for WinHttpOpen */57/* flags for WinHttpOpen */
58#define WINHTTP_FLAG_ASYNC 0x1000000058#define WINHTTP_FLAG_ASYNC 0x10000000
59#define WINHTTP_FLAG_SECURE_DEFAULTS 0x30000000
5960
60/* flags for WinHttpOpenRequest */61/* flags for WinHttpOpenRequest */
61#define WINHTTP_FLAG_ESCAPE_PERCENT 0x0000000462#define WINHTTP_FLAG_ESCAPE_PERCENT 0x00000004
...@@ -64,6 +65,7 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;...@@ -64,6 +65,7 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
64#define WINHTTP_FLAG_ESCAPE_DISABLE_QUERY 0x0000008065#define WINHTTP_FLAG_ESCAPE_DISABLE_QUERY 0x00000080
65#define WINHTTP_FLAG_BYPASS_PROXY_CACHE 0x0000010066#define WINHTTP_FLAG_BYPASS_PROXY_CACHE 0x00000100
66#define WINHTTP_FLAG_REFRESH WINHTTP_FLAG_BYPASS_PROXY_CACHE67#define WINHTTP_FLAG_REFRESH WINHTTP_FLAG_BYPASS_PROXY_CACHE
68#define WINHTTP_FLAG_AUTOMATIC_CHUNKING 0x00000200
67#define WINHTTP_FLAG_SECURE 0x0080000069#define WINHTTP_FLAG_SECURE 0x00800000
6870
69#define WINHTTP_ACCESS_TYPE_DEFAULT_PROXY 071#define WINHTTP_ACCESS_TYPE_DEFAULT_PROXY 0
...@@ -168,6 +170,7 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;...@@ -168,6 +170,7 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
168#define WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL 133170#define WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL 133
169#define WINHTTP_OPTION_HTTP_PROTOCOL_USED 134171#define WINHTTP_OPTION_HTTP_PROTOCOL_USED 134
170#define WINHTTP_OPTION_KDC_PROXY_SETTINGS 136172#define WINHTTP_OPTION_KDC_PROXY_SETTINGS 136
173#define WINHTTP_OPTION_PROXY_DISABLE_SERVICE_CALLS 137
171#define WINHTTP_OPTION_ENCODE_EXTRA 138174#define WINHTTP_OPTION_ENCODE_EXTRA 138
172#define WINHTTP_OPTION_DISABLE_STREAM_QUEUE 139175#define WINHTTP_OPTION_DISABLE_STREAM_QUEUE 139
173#define WINHTTP_OPTION_IPV6_FAST_FALLBACK 140176#define WINHTTP_OPTION_IPV6_FAST_FALLBACK 140
...@@ -330,7 +333,11 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;...@@ -330,7 +333,11 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
330#define ERROR_WINHTTP_SECURE_FAILURE_PROXY (WINHTTP_ERROR_BASE + 188)333#define ERROR_WINHTTP_SECURE_FAILURE_PROXY (WINHTTP_ERROR_BASE + 188)
331#define ERROR_WINHTTP_RESERVED_189 (WINHTTP_ERROR_BASE + 189)334#define ERROR_WINHTTP_RESERVED_189 (WINHTTP_ERROR_BASE + 189)
332#define ERROR_WINHTTP_HTTP_PROTOCOL_MISMATCH (WINHTTP_ERROR_BASE + 190)335#define ERROR_WINHTTP_HTTP_PROTOCOL_MISMATCH (WINHTTP_ERROR_BASE + 190)
333#define WINHTTP_ERROR_LAST (WINHTTP_ERROR_BASE + 188)336#define ERROR_WINHTTP_GLOBAL_CALLBACK_FAILED (WINHTTP_ERROR_BASE + 191)
337#define ERROR_WINHTTP_FEATURE_DISABLED (WINHTTP_ERROR_BASE + 192)
338#define ERROR_WINHTTP_FAST_FORWARDING_NOT_SUPPORTED (WINHTTP_ERROR_BASE + 193)
339
340#define WINHTTP_ERROR_LAST (WINHTTP_ERROR_BASE + 193)
334341
335#define WINHTTP_RESET_STATE 0x00000001342#define WINHTTP_RESET_STATE 0x00000001
336#define WINHTTP_RESET_SWPAD_CURRENT_NETWORK 0x00000002343#define WINHTTP_RESET_SWPAD_CURRENT_NETWORK 0x00000002
...@@ -511,8 +518,10 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;...@@ -511,8 +518,10 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
511#define WINHTTP_CALLBACK_STATUS_GETPROXYFORURL_COMPLETE 0x01000000518#define WINHTTP_CALLBACK_STATUS_GETPROXYFORURL_COMPLETE 0x01000000
512#define WINHTTP_CALLBACK_STATUS_CLOSE_COMPLETE 0x02000000519#define WINHTTP_CALLBACK_STATUS_CLOSE_COMPLETE 0x02000000
513#define WINHTTP_CALLBACK_STATUS_SHUTDOWN_COMPLETE 0x04000000520#define WINHTTP_CALLBACK_STATUS_SHUTDOWN_COMPLETE 0x04000000
521#define WINHTTP_CALLBACK_STATUS_GETPROXYSETTINGS_COMPLETE 0x08000000
514#define WINHTTP_CALLBACK_STATUS_SETTINGS_WRITE_COMPLETE 0x10000000522#define WINHTTP_CALLBACK_STATUS_SETTINGS_WRITE_COMPLETE 0x10000000
515#define WINHTTP_CALLBACK_STATUS_SETTINGS_READ_COMPLETE 0x20000000523#define WINHTTP_CALLBACK_STATUS_SETTINGS_READ_COMPLETE 0x20000000
524
516#define WINHTTP_CALLBACK_FLAG_RESOLVE_NAME (WINHTTP_CALLBACK_STATUS_RESOLVING_NAME | WINHTTP_CALLBACK_STATUS_NAME_RESOLVED)525#define WINHTTP_CALLBACK_FLAG_RESOLVE_NAME (WINHTTP_CALLBACK_STATUS_RESOLVING_NAME | WINHTTP_CALLBACK_STATUS_NAME_RESOLVED)
517#define WINHTTP_CALLBACK_FLAG_CONNECT_TO_SERVER (WINHTTP_CALLBACK_STATUS_CONNECTING_TO_SERVER | WINHTTP_CALLBACK_STATUS_CONNECTED_TO_SERVER)526#define WINHTTP_CALLBACK_FLAG_CONNECT_TO_SERVER (WINHTTP_CALLBACK_STATUS_CONNECTING_TO_SERVER | WINHTTP_CALLBACK_STATUS_CONNECTED_TO_SERVER)
518#define WINHTTP_CALLBACK_FLAG_SEND_REQUEST (WINHTTP_CALLBACK_STATUS_SENDING_REQUEST | WINHTTP_CALLBACK_STATUS_REQUEST_SENT)527#define WINHTTP_CALLBACK_FLAG_SEND_REQUEST (WINHTTP_CALLBACK_STATUS_SENDING_REQUEST | WINHTTP_CALLBACK_STATUS_REQUEST_SENT)
...@@ -530,10 +539,14 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;...@@ -530,10 +539,14 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
530#define WINHTTP_CALLBACK_FLAG_WRITE_COMPLETE WINHTTP_CALLBACK_STATUS_WRITE_COMPLETE539#define WINHTTP_CALLBACK_FLAG_WRITE_COMPLETE WINHTTP_CALLBACK_STATUS_WRITE_COMPLETE
531#define WINHTTP_CALLBACK_FLAG_REQUEST_ERROR WINHTTP_CALLBACK_STATUS_REQUEST_ERROR540#define WINHTTP_CALLBACK_FLAG_REQUEST_ERROR WINHTTP_CALLBACK_STATUS_REQUEST_ERROR
532#define WINHTTP_CALLBACK_FLAG_GETPROXYFORURL_COMPLETE WINHTTP_CALLBACK_STATUS_GETPROXYFORURL_COMPLETE541#define WINHTTP_CALLBACK_FLAG_GETPROXYFORURL_COMPLETE WINHTTP_CALLBACK_STATUS_GETPROXYFORURL_COMPLETE
542#define WINHTTP_CALLBACK_FLAG_GETPROXYSETTINGS_COMPLETE WINHTTP_CALLBACK_STATUS_GETPROXYSETTINGS_COMPLETE
543
533#define WINHTTP_CALLBACK_FLAG_ALL_COMPLETIONS (WINHTTP_CALLBACK_STATUS_SENDREQUEST_COMPLETE | WINHTTP_CALLBACK_STATUS_HEADERS_AVAILABLE \544#define WINHTTP_CALLBACK_FLAG_ALL_COMPLETIONS (WINHTTP_CALLBACK_STATUS_SENDREQUEST_COMPLETE | WINHTTP_CALLBACK_STATUS_HEADERS_AVAILABLE \
534 | WINHTTP_CALLBACK_STATUS_DATA_AVAILABLE | WINHTTP_CALLBACK_STATUS_READ_COMPLETE \545 | WINHTTP_CALLBACK_STATUS_DATA_AVAILABLE | WINHTTP_CALLBACK_STATUS_READ_COMPLETE \
535 | WINHTTP_CALLBACK_STATUS_WRITE_COMPLETE | WINHTTP_CALLBACK_STATUS_REQUEST_ERROR \546 | WINHTTP_CALLBACK_STATUS_WRITE_COMPLETE | WINHTTP_CALLBACK_STATUS_REQUEST_ERROR \
536 | WINHTTP_CALLBACK_STATUS_GETPROXYFORURL_COMPLETE)547 | WINHTTP_CALLBACK_STATUS_GETPROXYFORURL_COMPLETE \
548 | WINHTTP_CALLBACK_STATUS_GETPROXYSETTINGS_COMPLETE)
549
537#define WINHTTP_CALLBACK_FLAG_ALL_NOTIFICATIONS 0xffffffff550#define WINHTTP_CALLBACK_FLAG_ALL_NOTIFICATIONS 0xffffffff
538#define WINHTTP_INVALID_STATUS_CALLBACK ((WINHTTP_STATUS_CALLBACK)(-1))551#define WINHTTP_INVALID_STATUS_CALLBACK ((WINHTTP_STATUS_CALLBACK)(-1))
539552
...@@ -547,6 +560,9 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;...@@ -547,6 +560,9 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
547#define WINHTTP_HANDLE_TYPE_SESSION 1560#define WINHTTP_HANDLE_TYPE_SESSION 1
548#define WINHTTP_HANDLE_TYPE_CONNECT 2561#define WINHTTP_HANDLE_TYPE_CONNECT 2
549#define WINHTTP_HANDLE_TYPE_REQUEST 3562#define WINHTTP_HANDLE_TYPE_REQUEST 3
563#define WINHTTP_HANDLE_TYPE_PROXY_RESOLVER 4
564#define WINHTTP_HANDLE_TYPE_WEBSOCKET 5
565#define WINHTTP_HANDLE_TYPE_PROTOCOL 6
550566
551#define WINHTTP_CALLBACK_STATUS_FLAG_CERT_REV_FAILED 0x00000001567#define WINHTTP_CALLBACK_STATUS_FLAG_CERT_REV_FAILED 0x00000001
552#define WINHTTP_CALLBACK_STATUS_FLAG_INVALID_CERT 0x00000002568#define WINHTTP_CALLBACK_STATUS_FLAG_INVALID_CERT 0x00000002
lib/libc/include/any-windows-any/winioctl.h+16
...@@ -3108,6 +3108,22 @@ typedef struct _CSV_NAMESPACE_INFO {...@@ -3108,6 +3108,22 @@ typedef struct _CSV_NAMESPACE_INFO {
3108#define FSCTL_GET_REFS_VOLUME_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 182, METHOD_BUFFERED, FILE_ANY_ACCESS)3108#define FSCTL_GET_REFS_VOLUME_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 182, METHOD_BUFFERED, FILE_ANY_ACCESS)
3109#define FSCTL_CSV_H_BREAKING_SYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 185, METHOD_BUFFERED, FILE_ANY_ACCESS)3109#define FSCTL_CSV_H_BREAKING_SYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 185, METHOD_BUFFERED, FILE_ANY_ACCESS)
3110#define FSCTL_SHUFFLE_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 208, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)3110#define FSCTL_SHUFFLE_FILE CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 208, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS)
3111
3112typedef struct _FILE_LEVEL_TRIM_RANGE {
3113 DWORDLONG Offset;
3114 DWORDLONG Length;
3115} FILE_LEVEL_TRIM_RANGE, *PFILE_LEVEL_TRIM_RANGE;
3116
3117typedef struct _FILE_LEVEL_TRIM {
3118 DWORD Key;
3119 DWORD NumRanges;
3120 FILE_LEVEL_TRIM_RANGE Ranges[1];
3121} FILE_LEVEL_TRIM, *PFILE_LEVEL_TRIM;
3122
3123typedef struct _FILE_LEVEL_TRIM_OUTPUT {
3124 DWORD NumRangesProcessed;
3125} FILE_LEVEL_TRIM_OUTPUT, *PFILE_LEVEL_TRIM_OUTPUT;
3126
3111#endif /*_WIN32_WINNT >= _WIN32_WINNT_WIN8 */3127#endif /*_WIN32_WINNT >= _WIN32_WINNT_WIN8 */
31123128
3113#if (_WIN32_WINNT >= _WIN32_WINNT_WINBLUE)3129#if (_WIN32_WINNT >= _WIN32_WINNT_WINBLUE)
lib/libc/include/any-windows-any/winnt.h+47-5
...@@ -268,6 +268,14 @@ extern "C" {...@@ -268,6 +268,14 @@ extern "C" {
268#endif268#endif
269#endif269#endif
270270
271#ifndef DECLSPEC_CHPE_PATCHABLE
272#ifdef __arm64ec__
273#define DECLSPEC_CHPE_PATCHABLE __declspec(hybrid_patchable)
274#else
275#define DECLSPEC_CHPE_PATCHABLE
276#endif
277#endif
278
271#define DECLSPEC_DEPRECATED_DDK279#define DECLSPEC_DEPRECATED_DDK
272#define PRAGMA_DEPRECATED_DDK 0280#define PRAGMA_DEPRECATED_DDK 0
273281
...@@ -3213,6 +3221,12 @@ __buildmemorybarrier()...@@ -3213,6 +3221,12 @@ __buildmemorybarrier()
3213#define SID_RECOMMENDED_SUB_AUTHORITIES (1)3221#define SID_RECOMMENDED_SUB_AUTHORITIES (1)
3214#ifndef __WIDL__3222#ifndef __WIDL__
3215#define SECURITY_MAX_SID_SIZE (sizeof (SID) - sizeof (DWORD) + (SID_MAX_SUB_AUTHORITIES *sizeof (DWORD)))3223#define SECURITY_MAX_SID_SIZE (sizeof (SID) - sizeof (DWORD) + (SID_MAX_SUB_AUTHORITIES *sizeof (DWORD)))
3224
3225 typedef union _SE_SID {
3226 SID Sid;
3227 BYTE Buffer[SECURITY_MAX_SID_SIZE];
3228 } SE_SID, *PSE_SID;
3229
3216#endif3230#endif
32173231
3218#define SID_HASH_SIZE 323232#define SID_HASH_SIZE 32
...@@ -5722,6 +5736,34 @@ DEFINE_ENUM_FLAG_OPERATORS(JOB_OBJECT_IO_RATE_CONTROL_FLAGS)...@@ -5722,6 +5736,34 @@ DEFINE_ENUM_FLAG_OPERATORS(JOB_OBJECT_IO_RATE_CONTROL_FLAGS)
5722#define PF_ARM_SVE_F32MM_INSTRUCTIONS_AVAILABLE 585736#define PF_ARM_SVE_F32MM_INSTRUCTIONS_AVAILABLE 58
5723#define PF_ARM_SVE_F64MM_INSTRUCTIONS_AVAILABLE 595737#define PF_ARM_SVE_F64MM_INSTRUCTIONS_AVAILABLE 59
5724#define PF_BMI2_INSTRUCTIONS_AVAILABLE 605738#define PF_BMI2_INSTRUCTIONS_AVAILABLE 60
5739#define PF_MOVDIR64B_INSTRUCTION_AVAILABLE 61
5740#define PF_ARM_LSE2_AVAILABLE 62
5741#define PF_RESERVED_FEATURE 63
5742#define PF_ARM_SHA3_INSTRUCTIONS_AVAILABLE 64
5743#define PF_ARM_SHA512_INSTRUCTIONS_AVAILABLE 65
5744#define PF_ARM_V82_I8MM_INSTRUCTIONS_AVAILABLE 66
5745#define PF_ARM_V82_FP16_INSTRUCTIONS_AVAILABLE 67
5746#define PF_ARM_V86_BF16_INSTRUCTIONS_AVAILABLE 68
5747#define PF_ARM_V86_EBF16_INSTRUCTIONS_AVAILABLE 69
5748#define PF_ARM_SME_INSTRUCTIONS_AVAILABLE 70
5749#define PF_ARM_SME2_INSTRUCTIONS_AVAILABLE 71
5750#define PF_ARM_SME2_1_INSTRUCTIONS_AVAILABLE 72
5751#define PF_ARM_SME2_2_INSTRUCTIONS_AVAILABLE 73
5752#define PF_ARM_SME_AES_INSTRUCTIONS_AVAILABLE 74
5753#define PF_ARM_SME_SBITPERM_INSTRUCTIONS_AVAILABLE 75
5754#define PF_ARM_SME_SF8MM4_INSTRUCTIONS_AVAILABLE 76
5755#define PF_ARM_SME_SF8MM8_INSTRUCTIONS_AVAILABLE 77
5756#define PF_ARM_SME_SF8DP2_INSTRUCTIONS_AVAILABLE 78
5757#define PF_ARM_SME_SF8DP4_INSTRUCTIONS_AVAILABLE 79
5758#define PF_ARM_SME_SF8FMA_INSTRUCTIONS_AVAILABLE 80
5759#define PF_ARM_SME_F8F32_INSTRUCTIONS_AVAILABLE 81
5760#define PF_ARM_SME_F8F16_INSTRUCTIONS_AVAILABLE 82
5761#define PF_ARM_SME_F16F16_INSTRUCTIONS_AVAILABLE 83
5762#define PF_ARM_SME_B16B16_INSTRUCTIONS_AVAILABLE 84
5763#define PF_ARM_SME_F64F64_INSTRUCTIONS_AVAILABLE 85
5764#define PF_ARM_SME_I16I64_INSTRUCTIONS_AVAILABLE 86
5765#define PF_ARM_SME_LUTv2_INSTRUCTIONS_AVAILABLE 87
5766#define PF_ARM_SME_FA64_INSTRUCTIONS_AVAILABLE 88
57255767
5726#define XSTATE_LEGACY_FLOATING_POINT (0)5768#define XSTATE_LEGACY_FLOATING_POINT (0)
5727#define XSTATE_LEGACY_SSE (1)5769#define XSTATE_LEGACY_SSE (1)
...@@ -9140,27 +9182,27 @@ DEFINE_ENUM_FLAG_OPERATORS(JOB_OBJECT_IO_RATE_CONTROL_FLAGS)...@@ -9140,27 +9182,27 @@ DEFINE_ENUM_FLAG_OPERATORS(JOB_OBJECT_IO_RATE_CONTROL_FLAGS)
9140#endif9182#endif
91419183
9142#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)9184#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
9143 NTSYSAPI VOID NTAPI __MINGW_ATTRIB_NORETURN RtlUnwind (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue);9185 NTSYSAPI VOID NTAPI RtlUnwind (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue);
9144 NTSYSAPI PVOID NTAPI RtlPcToFileHeader (PVOID PcValue, PVOID *BaseOfImage);9186 NTSYSAPI PVOID NTAPI RtlPcToFileHeader (PVOID PcValue, PVOID *BaseOfImage);
9145#if defined (__x86_64__)9187#if defined (__x86_64__)
9146 NTSYSAPI PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry (DWORD64 ControlPc, PDWORD64 ImageBase, PUNWIND_HISTORY_TABLE HistoryTable);9188 NTSYSAPI PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry (DWORD64 ControlPc, PDWORD64 ImageBase, PUNWIND_HISTORY_TABLE HistoryTable);
9147 NTSYSAPI VOID NTAPI __MINGW_ATTRIB_NORETURN RtlUnwindEx (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);9189 NTSYSAPI VOID NTAPI RtlUnwindEx (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);
9148 NTSYSAPI PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind (DWORD HandlerType, DWORD64 ImageBase, DWORD64 ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD64 EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);9190 NTSYSAPI PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind (DWORD HandlerType, DWORD64 ImageBase, DWORD64 ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD64 EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);
9149 NTSYSAPI BOOLEAN NTAPI RtlIsEcCode(DWORD64 CodePointer);9191 NTSYSAPI BOOLEAN NTAPI RtlIsEcCode(DWORD64 CodePointer);
9150#endif9192#endif
9151#if defined (__arm__)9193#if defined (__arm__)
9152 NTSYSAPI PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry (ULONG_PTR ControlPc, PDWORD ImageBase, PUNWIND_HISTORY_TABLE HistoryTable);9194 NTSYSAPI PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry (ULONG_PTR ControlPc, PDWORD ImageBase, PUNWIND_HISTORY_TABLE HistoryTable);
9153 NTSYSAPI VOID NTAPI __MINGW_ATTRIB_NORETURN RtlUnwindEx (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);9195 NTSYSAPI VOID NTAPI RtlUnwindEx (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);
9154 NTSYSAPI PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind (DWORD HandlerType, DWORD ImageBase, DWORD ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);9196 NTSYSAPI PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind (DWORD HandlerType, DWORD ImageBase, DWORD ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);
9155#endif9197#endif
9156#if defined (__aarch64__)9198#if defined (__aarch64__)
9157 NTSYSAPI PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry (ULONG_PTR ControlPc, PULONG_PTR ImageBase, PUNWIND_HISTORY_TABLE HistoryTable);9199 NTSYSAPI PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry (ULONG_PTR ControlPc, PULONG_PTR ImageBase, PUNWIND_HISTORY_TABLE HistoryTable);
9158 NTSYSAPI VOID NTAPI __MINGW_ATTRIB_NORETURN RtlUnwindEx (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);9200 NTSYSAPI VOID NTAPI RtlUnwindEx (PVOID TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);
9159 NTSYSAPI PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind (DWORD HandlerType, ULONG_PTR ImageBase, ULONG_PTR ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PULONG_PTR EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);9201 NTSYSAPI PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind (DWORD HandlerType, ULONG_PTR ImageBase, ULONG_PTR ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PULONG_PTR EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);
9160#endif9202#endif
9161#if defined (__ia64__)9203#if defined (__ia64__)
9162 NTSYSAPI PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry (ULONGLONG ControlPc, PULONGLONG ImageBase, PULONGLONG TargetGp);9204 NTSYSAPI PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry (ULONGLONG ControlPc, PULONGLONG ImageBase, PULONGLONG TargetGp);
9163 NTSYSAPI VOID NTAPI __MINGW_ATTRIB_NORETURN RtlUnwindEx (FRAME_POINTERS TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);9205 NTSYSAPI VOID NTAPI RtlUnwindEx (FRAME_POINTERS TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord, PUNWIND_HISTORY_TABLE HistoryTable);
9164 NTSYSAPI ULONGLONG NTAPI RtlVirtualUnwind (ULONGLONG ImageBase, ULONGLONG ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PBOOLEAN InFunction, PFRAME_POINTERS EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);9206 NTSYSAPI ULONGLONG NTAPI RtlVirtualUnwind (ULONGLONG ImageBase, ULONGLONG ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PBOOLEAN InFunction, PFRAME_POINTERS EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);
9165#endif9207#endif
9166#endif9208#endif
lib/libc/include/any-windows-any/wintrust.h+61
...@@ -34,6 +34,7 @@ extern "C"...@@ -34,6 +34,7 @@ extern "C"
34#define WTD_CHOICE_BLOB 334#define WTD_CHOICE_BLOB 3
35#define WTD_CHOICE_SIGNER 435#define WTD_CHOICE_SIGNER 4
36#define WTD_CHOICE_CERT 536#define WTD_CHOICE_CERT 5
37#define WTD_CHOICE_DETACHED_SIG 6
3738
38#define WTD_STATEACTION_IGNORE 0x0000000039#define WTD_STATEACTION_IGNORE 0x00000000
39#define WTD_STATEACTION_VERIFY 0x0000000140#define WTD_STATEACTION_VERIFY 0x00000001
...@@ -45,6 +46,7 @@ extern "C"...@@ -45,6 +46,7 @@ extern "C"
45#define WTD_USE_IE4_TRUST_FLAG 0x0000000146#define WTD_USE_IE4_TRUST_FLAG 0x00000001
46#define WTD_NO_IE4_CHAIN_FLAG 0x0000000247#define WTD_NO_IE4_CHAIN_FLAG 0x00000002
47#define WTD_NO_POLICY_USAGE_FLAG 0x0000000448#define WTD_NO_POLICY_USAGE_FLAG 0x00000004
49#define WTD_USE_LOCAL_MACHINE_CERTS 0x00000008
48#define WTD_REVOCATION_CHECK_NONE 0x0000001050#define WTD_REVOCATION_CHECK_NONE 0x00000010
49#define WTD_REVOCATION_CHECK_END_CERT 0x0000002051#define WTD_REVOCATION_CHECK_END_CERT 0x00000020
50#define WTD_REVOCATION_CHECK_CHAIN 0x0000004052#define WTD_REVOCATION_CHECK_CHAIN 0x00000040
...@@ -54,6 +56,9 @@ extern "C"...@@ -54,6 +56,9 @@ extern "C"
54#define WTD_USE_DEFAULT_OSVER_CHECK 0x0000040056#define WTD_USE_DEFAULT_OSVER_CHECK 0x00000400
55#define WTD_LIFETIME_SIGNING_FLAG 0x0000080057#define WTD_LIFETIME_SIGNING_FLAG 0x00000800
56#define WTD_CACHE_ONLY_URL_RETRIEVAL 0x0000100058#define WTD_CACHE_ONLY_URL_RETRIEVAL 0x00001000
59#define WTD_DISABLE_MD2_MD4 0x00002000
60#define WTD_MOTW 0x00004000
61#define WTD_CODE_INTEGRITY_DRIVER_MODE 0x00008000
5762
58#define WTD_UICONTEXT_EXECUTE 063#define WTD_UICONTEXT_EXECUTE 0
59#define WTD_UICONTEXT_INSTALL 164#define WTD_UICONTEXT_INSTALL 1
...@@ -71,14 +76,41 @@ extern "C"...@@ -71,14 +76,41 @@ extern "C"
71 struct WINTRUST_BLOB_INFO_ *pBlob;76 struct WINTRUST_BLOB_INFO_ *pBlob;
72 struct WINTRUST_SGNR_INFO_ *pSgnr;77 struct WINTRUST_SGNR_INFO_ *pSgnr;
73 struct WINTRUST_CERT_INFO_ *pCert;78 struct WINTRUST_CERT_INFO_ *pCert;
79 struct WINTRUST_DETACHED_SIG_INFO_ *pDetachedSig;
74 };80 };
75 DWORD dwStateAction;81 DWORD dwStateAction;
76 HANDLE hWVTStateData;82 HANDLE hWVTStateData;
77 WCHAR *pwszURLReference;83 WCHAR *pwszURLReference;
78 DWORD dwProvFlags;84 DWORD dwProvFlags;
79 DWORD dwUIContext;85 DWORD dwUIContext;
86#if (NTDDI_VERSION >= NTDDI_WIN8)
87 struct WINTRUST_SIGNATURE_SETTINGS_ *pSignatureSettings;
88#endif
80 } WINTRUST_DATA,*PWINTRUST_DATA;89 } WINTRUST_DATA,*PWINTRUST_DATA;
8190
91#if (NTDDI_VERSION >= NTDDI_WIN8)
92 typedef struct WINTRUST_SIGNATURE_SETTINGS_ {
93 DWORD cbStruct;
94 DWORD dwIndex;
95 DWORD dwFlags;
96 DWORD cSecondarySigs;
97 DWORD dwVerifiedSigIndex;
98 PCERT_STRONG_SIGN_PARA pCryptoPolicy;
99 } WINTRUST_SIGNATURE_SETTINGS,*PWINTRUST_SIGNATURE_SETTINGS;
100
101#define WSS_VERIFY_SPECIFIC 0x00000001
102#define WSS_GET_SECONDARY_SIG_COUNT 0x00000002
103
104#if (NTDDI_VERSION >= NTDDI_WINBLUE)
105#define WSS_VERIFY_SEALING 0x00000004
106#define WSS_INPUT_FLAG_MASK 0x00000007
107#define WSS_OUT_SEALING_STATUS_VERIFIED 0x80000000
108#define WSS_OUT_HAS_SEALING_INTENT 0x40000000
109#define WSS_OUT_FILE_SUPPORTS_SEAL 0x20000000
110#define WSS_OUTPUT_FLAG_MASK 0xe0000000
111#endif /* (NTDDI_VERSION >= NTDDI_WINBLUE) */
112#endif /* (NTDDI_VERSION >= NTDDI_WIN8) */
113
82 typedef struct WINTRUST_FILE_INFO_ {114 typedef struct WINTRUST_FILE_INFO_ {
83 DWORD cbStruct;115 DWORD cbStruct;
84 LPCWSTR pcwszFilePath;116 LPCWSTR pcwszFilePath;
...@@ -86,6 +118,30 @@ extern "C"...@@ -86,6 +118,30 @@ extern "C"
86 GUID *pgKnownSubject;118 GUID *pgKnownSubject;
87 } WINTRUST_FILE_INFO,*PWINTRUST_FILE_INFO;119 } WINTRUST_FILE_INFO,*PWINTRUST_FILE_INFO;
88120
121 typedef struct WINTRUST_DETACHED_SIG_HANDLES_ {
122 HANDLE hContentFile;
123 HANDLE hSignatureFile;
124 } WINTRUST_DETACHED_SIG_FILE_HANDLES,*PWINTRUST_DETACHED_SIG_FILE_HANDLES;
125
126 typedef struct WINTRUST_DETACHED_SIG_BLOBS_ {
127 LARGE_INTEGER cbContentObject;
128 BYTE *pbContentObject;
129 DWORD cbSignatureObject;
130 BYTE *pbSignatureObject;
131 } WINTRUST_DETACHED_SIG_BLOBS,*PWINTRUST_DETACHED_SIG_BLOBS;
132
133#define WINTRUST_DETACHED_SIG_CHOICE_HANDLE 1
134#define WINTRUST_DETACHED_SIG_CHOICE_BLOB 2
135
136 typedef struct WINTRUST_DETACHED_SIG_INFO_ {
137 DWORD cbStruct;
138 DWORD dwUnionChoice;
139 __C89_NAMELESS union {
140 struct WINTRUST_DETACHED_SIG_HANDLES_ *pDetachedSigHandles;
141 struct WINTRUST_DETACHED_SIG_BLOBS_ *pDetachedSigBlobs;
142 };
143 } WINTRUST_DETACHED_SIG_INFO,*PWINTRUST_DETACHED_SIG_INFO;
144
89 typedef HANDLE HCATADMIN;145 typedef HANDLE HCATADMIN;
90146
91 typedef struct WINTRUST_CATALOG_INFO_ {147 typedef struct WINTRUST_CATALOG_INFO_ {
...@@ -184,6 +240,11 @@ extern "C"...@@ -184,6 +240,11 @@ extern "C"
184240
185#define TRUSTERROR_MAX_STEPS 38241#define TRUSTERROR_MAX_STEPS 38
186242
243 struct _CRYPT_PROVIDER_DATA;
244 struct _CRYPT_PROVIDER_SGNR;
245 struct _CRYPT_PROVIDER_PRIVDATA;
246 struct _CRYPT_PROVIDER_DEFUSAGE;
247
187 typedef void *(*PFN_CPD_MEM_ALLOC)(DWORD cbSize);248 typedef void *(*PFN_CPD_MEM_ALLOC)(DWORD cbSize);
188 typedef void (*PFN_CPD_MEM_FREE)(void *pvMem2Free);249 typedef void (*PFN_CPD_MEM_FREE)(void *pvMem2Free);
189 typedef WINBOOL (*PFN_CPD_ADD_STORE)(struct _CRYPT_PROVIDER_DATA *pProvData,HCERTSTORE hStore2Add);250 typedef WINBOOL (*PFN_CPD_ADD_STORE)(struct _CRYPT_PROVIDER_DATA *pProvData,HCERTSTORE hStore2Add);
lib/libc/include/any-windows-any/winuser.h+1-1
...@@ -6792,7 +6792,7 @@ typedef struct tagINPUT_TRANSFORM {...@@ -6792,7 +6792,7 @@ typedef struct tagINPUT_TRANSFORM {
6792} INPUT_TRANSFORM;6792} INPUT_TRANSFORM;
67936793
6794/* Do these functions belong here? */6794/* Do these functions belong here? */
6795WINUSERAPI WINBOOL WINAPI GetPointerInputTransform(UINT32 pointerId, UINT32 historyCount, UINT32 *inputTransform);6795WINUSERAPI WINBOOL WINAPI GetPointerInputTransform(UINT32 pointerId, UINT32 historyCount, INPUT_TRANSFORM *inputTransform);
6796WINUSERAPI WINBOOL WINAPI IsMousePointerEnabled(void);6796WINUSERAPI WINBOOL WINAPI IsMousePointerEnabled(void);
6797#endif /*(_WIN32_WINNT >= 0x0602)*/6797#endif /*(_WIN32_WINNT >= 0x0602)*/
6798#endif6798#endif
lib/libc/include/any-windows-any/wmcodecdsp.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmcodecdsp.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmcodecdsp.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmcontainer.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmcontainer.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmcontainer.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmdrmsdk.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmdrmsdk.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmdrmsdk.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmp.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmp.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmp.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmprealestate.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmprealestate.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmprealestate.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmpservices.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmpservices.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmpservices.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmsbuffer.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmsbuffer.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmsbuffer.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmsdkidl.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmsdkidl.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmsdkidl.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmsecure.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wmsecure.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wmsecure.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wpcapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wpcapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wpcapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdattachment.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wsdattachment.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wsdattachment.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdbase.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wsdbase.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wsdbase.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdclient.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wsdclient.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wsdclient.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsddisco.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wsddisco.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wsddisco.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdhost.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wsdhost.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wsdhost.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdxml.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wsdxml.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wsdxml.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsmandisp.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wsmandisp.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wsmandisp.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wtypes.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wtypes.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wtypes.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wtypesbase.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wtypesbase.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wtypesbase.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wuapi.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/wuapi.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/wuapi.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xamlom.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xamlom.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xamlom.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xapo.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xapo.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xapo.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xaudio2.h+2-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xaudio2.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xaudio2.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
...@@ -1858,6 +1858,7 @@ inline static float XAudio2RadiansToCutoffFrequency(float radians, float sampler...@@ -1858,6 +1858,7 @@ inline static float XAudio2RadiansToCutoffFrequency(float radians, float sampler
1858#endif1858#endif
1859#pragma pack(pop)1859#pragma pack(pop)
1860HRESULT WINAPI XAudio2Create(IXAudio2** pxaudio2, UINT32 flags, XAUDIO2_PROCESSOR processor);1860HRESULT WINAPI XAudio2Create(IXAudio2** pxaudio2, UINT32 flags, XAUDIO2_PROCESSOR processor);
1861HRESULT WINAPI XAudio2CreateWithVersionInfo(IXAudio2** pxaudio2, UINT32 flags, XAUDIO2_PROCESSOR processor, DWORD version);
1861/* Begin additional prototypes for all interfaces */1862/* Begin additional prototypes for all interfaces */
18621863
18631864
lib/libc/include/any-windows-any/xaudio2fx.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xaudio2fx.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xaudio2fx.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xmllite.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xmllite.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xmllite.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsdigitalsignature.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xpsdigitalsignature.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xpsdigitalsignature.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsobjectmodel.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xpsobjectmodel.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xpsobjectmodel.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsobjectmodel_1.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xpsobjectmodel_1.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xpsobjectmodel_1.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsprint.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xpsprint.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xpsprint.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsrassvc.h+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1/*** Autogenerated by WIDL 10.4 from include/xpsrassvc.idl - Do not edit ***/1/*** Autogenerated by WIDL 11.6 from include/xpsrassvc.idl - Do not edit ***/
22
3#ifdef _WIN323#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__4#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/mingw/crt/crt_handler.c+40-197
...@@ -13,9 +13,14 @@...@@ -13,9 +13,14 @@
13#include <signal.h>13#include <signal.h>
14#include <stdio.h>14#include <stdio.h>
1515
16EXCEPTION_DISPOSITION __cdecl __mingw_SEH_error_handler(struct _EXCEPTION_RECORD *, void *, struct _CONTEXT *, void *);
17
18#if defined(__x86_64__) && !defined(_MSC_VER) && !defined(__SEH__)
19
16#pragma pack(push,1)20#pragma pack(push,1)
17typedef struct _UNWIND_INFO {21typedef struct _UNWIND_INFO {
18 BYTE VersionAndFlags;22 BYTE Version:3;
23 BYTE Flags:5;
19 BYTE PrologSize;24 BYTE PrologSize;
20 BYTE CountOfUnwindCodes;25 BYTE CountOfUnwindCodes;
21 BYTE FrameRegisterAndOffset;26 BYTE FrameRegisterAndOffset;
...@@ -27,16 +32,11 @@ PIMAGE_SECTION_HEADER _FindPESectionByName (const char *);...@@ -27,16 +32,11 @@ PIMAGE_SECTION_HEADER _FindPESectionByName (const char *);
27PIMAGE_SECTION_HEADER _FindPESectionExec (size_t);32PIMAGE_SECTION_HEADER _FindPESectionExec (size_t);
28PBYTE _GetPEImageBase (void);33PBYTE _GetPEImageBase (void);
2934
30int __mingw_init_ehandler (void);
31extern void _fpreset (void);
32
33#if defined(__x86_64__) && !defined(_MSC_VER) && !defined(__SEH__)
34EXCEPTION_DISPOSITION __mingw_SEH_error_handler(struct _EXCEPTION_RECORD *, void *, struct _CONTEXT *, void *);
35
36#define MAX_PDATA_ENTRIES 3235#define MAX_PDATA_ENTRIES 32
37static RUNTIME_FUNCTION emu_pdata[MAX_PDATA_ENTRIES];36static RUNTIME_FUNCTION emu_pdata[MAX_PDATA_ENTRIES];
38static UNWIND_INFO emu_xdata[MAX_PDATA_ENTRIES];37static UNWIND_INFO emu_xdata[MAX_PDATA_ENTRIES];
3938
39int __mingw_init_ehandler (void);
40int40int
41__mingw_init_ehandler (void)41__mingw_init_ehandler (void)
42{42{
...@@ -55,7 +55,8 @@ __mingw_init_ehandler (void)...@@ -55,7 +55,8 @@ __mingw_init_ehandler (void)
55 /* Fill tables and entries. */55 /* Fill tables and entries. */
56 while (e < MAX_PDATA_ENTRIES && (pSec = _FindPESectionExec (e)) != NULL)56 while (e < MAX_PDATA_ENTRIES && (pSec = _FindPESectionExec (e)) != NULL)
57 {57 {
58 emu_xdata[e].VersionAndFlags = 9; /* UNW_FLAG_EHANDLER | UNW_VERSION */58 emu_xdata[e].Version = 1;
59 emu_xdata[e].Flags = UNW_FLAG_EHANDLER;
59 emu_xdata[e].AddressOfExceptionHandler =60 emu_xdata[e].AddressOfExceptionHandler =
60 (DWORD)(size_t) ((LPBYTE)__mingw_SEH_error_handler - _ImageBase);61 (DWORD)(size_t) ((LPBYTE)__mingw_SEH_error_handler - _ImageBase);
61 emu_pdata[e].BeginAddress = pSec->VirtualAddress;62 emu_pdata[e].BeginAddress = pSec->VirtualAddress;
...@@ -74,203 +75,45 @@ __mingw_init_ehandler (void)...@@ -74,203 +75,45 @@ __mingw_init_ehandler (void)
74 return 1;75 return 1;
75}76}
7677
77extern void _fpreset (void);78#endif
7879
79EXCEPTION_DISPOSITION80#if defined(__i386__)
81/* We need to make sure that we align the stack to 16 bytes for the sake of SSE */
82__attribute__((force_align_arg_pointer))
83#endif
84EXCEPTION_DISPOSITION __cdecl
80__mingw_SEH_error_handler (struct _EXCEPTION_RECORD* ExceptionRecord,85__mingw_SEH_error_handler (struct _EXCEPTION_RECORD* ExceptionRecord,
81 void *EstablisherFrame __attribute__ ((unused)),86 void *EstablisherFrame __attribute__ ((unused)),
82 struct _CONTEXT* ContextRecord __attribute__ ((unused)),87 struct _CONTEXT* ContextRecord,
83 void *DispatcherContext __attribute__ ((unused)))88 void *DispatcherContext __attribute__ ((unused)))
84{89{
85 EXCEPTION_DISPOSITION action = ExceptionContinueSearch; /* EXCEPTION_CONTINUE_SEARCH; */90 long action;
86 void (*old_handler) (int);91
87 int reset_fpu = 0;92 if (ExceptionRecord->ExceptionFlags & EXCEPTION_UNWINDING)
8893 return ExceptionContinueSearch;
89 switch (ExceptionRecord->ExceptionCode)94
95 /* Despite that the CRT _XcptFilter() function is SEH __except filter function,
96 * it directly executes the handler registered by CRT signal() function. Normally
97 * the SEH __except handler is called based on the SEH __except filter result.
98 *
99 * If the CRT signal handler function (called by _XcptFilter() function) returns
100 * then the CRT _XcptFilter() returns back to us and the action is set to:
101 * EXCEPTION_CONTINUE_EXECUTION - execution of the process should continue
102 * EXCEPTION_EXECUTE_HANDLER - execution of the process should be aborted
103 * EXCEPTION_CONTINUE_SEARCH - parent SEH handler should be called
104 */
105 action = _XcptFilter(ExceptionRecord->ExceptionCode, &(EXCEPTION_POINTERS){.ExceptionRecord = ExceptionRecord, .ContextRecord = ContextRecord});
106 switch (action)
90 {107 {
91 case EXCEPTION_ACCESS_VIOLATION:108 case EXCEPTION_CONTINUE_SEARCH:
92 /* test if the user has set SIGSEGV */109 return ExceptionContinueSearch;
93 old_handler = signal (SIGSEGV, SIG_DFL);
94 if (old_handler == SIG_IGN)
95 {
96 /* this is undefined if the signal was raised by anything other
97 than raise (). */
98 signal (SIGSEGV, SIG_IGN);
99 action = 0; //EXCEPTION_CONTINUE_EXECUTION;
100 }
101 else if (old_handler != SIG_DFL)
102 {
103 /* This means 'old' is a user defined function. Call it */
104 (*old_handler) (SIGSEGV);
105 action = 0; // EXCEPTION_CONTINUE_EXECUTION;
106 }
107 else
108 action = 4; /* EXCEPTION_EXECUTE_HANDLER; */
109 break;
110 case EXCEPTION_ILLEGAL_INSTRUCTION:
111 case EXCEPTION_PRIV_INSTRUCTION:
112 /* test if the user has set SIGILL */
113 old_handler = signal (SIGILL, SIG_DFL);
114 if (old_handler == SIG_IGN)
115 {
116 /* this is undefined if the signal was raised by anything other
117 than raise (). */
118 signal (SIGILL, SIG_IGN);
119 action = 0; // EXCEPTION_CONTINUE_EXECUTION;
120 }
121 else if (old_handler != SIG_DFL)
122 {
123 /* This means 'old' is a user defined function. Call it */
124 (*old_handler) (SIGILL);
125 action = 0; // EXCEPTION_CONTINUE_EXECUTION;
126 }
127 else
128 action = 4; /* EXCEPTION_EXECUTE_HANDLER;*/
129 break;
130 case EXCEPTION_FLT_INVALID_OPERATION:
131 case EXCEPTION_FLT_DIVIDE_BY_ZERO:
132 case EXCEPTION_FLT_DENORMAL_OPERAND:
133 case EXCEPTION_FLT_OVERFLOW:
134 case EXCEPTION_FLT_UNDERFLOW:
135 case EXCEPTION_FLT_INEXACT_RESULT:
136 reset_fpu = 1;
137 /* fall through. */
138
139 case EXCEPTION_INT_DIVIDE_BY_ZERO:
140 /* test if the user has set SIGFPE */
141 old_handler = signal (SIGFPE, SIG_DFL);
142 if (old_handler == SIG_IGN)
143 {
144 signal (SIGFPE, SIG_IGN);
145 if (reset_fpu)
146 _fpreset ();
147 action = 0; // EXCEPTION_CONTINUE_EXECUTION;
148 }
149 else if (old_handler != SIG_DFL)
150 {
151 /* This means 'old' is a user defined function. Call it */
152 (*old_handler) (SIGFPE);
153 action = 0; // EXCEPTION_CONTINUE_EXECUTION;
154 }
155 break;
156 case EXCEPTION_DATATYPE_MISALIGNMENT:
157 case EXCEPTION_ARRAY_BOUNDS_EXCEEDED:
158 case EXCEPTION_FLT_STACK_CHECK:
159 case EXCEPTION_INT_OVERFLOW:
160 case EXCEPTION_INVALID_HANDLE:
161 /*case EXCEPTION_POSSIBLE_DEADLOCK: */
162 action = 0; // EXCEPTION_CONTINUE_EXECUTION;
163 break;
164 default:
165 break;
166 }
167 return action;
168}
169110
170#endif111 case EXCEPTION_CONTINUE_EXECUTION:
112 return ExceptionContinueExecution;
171113
172LPTOP_LEVEL_EXCEPTION_FILTER __mingw_oldexcpt_handler = NULL;114 case EXCEPTION_EXECUTE_HANDLER:
173
174long CALLBACK
175_gnu_exception_handler (EXCEPTION_POINTERS *exception_data);
176
177#define GCC_MAGIC (('G' << 16) | ('C' << 8) | 'C' | (1U << 29))
178
179long CALLBACK
180_gnu_exception_handler (EXCEPTION_POINTERS *exception_data)
181{
182 void (*old_handler) (int);
183 long action = EXCEPTION_CONTINUE_SEARCH;
184 int reset_fpu = 0;
185
186#ifdef __SEH__
187 if ((exception_data->ExceptionRecord->ExceptionCode & 0x20ffffff) == GCC_MAGIC)
188 {
189 if ((exception_data->ExceptionRecord->ExceptionFlags & EXCEPTION_NONCONTINUABLE) == 0)
190 return EXCEPTION_CONTINUE_EXECUTION;
191 }
192#endif
193
194 switch (exception_data->ExceptionRecord->ExceptionCode)
195 {
196 case EXCEPTION_ACCESS_VIOLATION:
197 /* test if the user has set SIGSEGV */
198 old_handler = signal (SIGSEGV, SIG_DFL);
199 if (old_handler == SIG_IGN)
200 {
201 /* this is undefined if the signal was raised by anything other
202 than raise (). */
203 signal (SIGSEGV, SIG_IGN);
204 action = EXCEPTION_CONTINUE_EXECUTION;
205 }
206 else if (old_handler != SIG_DFL)
207 {
208 /* This means 'old' is a user defined function. Call it */
209 (*old_handler) (SIGSEGV);
210 action = EXCEPTION_CONTINUE_EXECUTION;
211 }
212 break;
213
214 case EXCEPTION_ILLEGAL_INSTRUCTION:
215 case EXCEPTION_PRIV_INSTRUCTION:
216 /* test if the user has set SIGILL */
217 old_handler = signal (SIGILL, SIG_DFL);
218 if (old_handler == SIG_IGN)
219 {
220 /* this is undefined if the signal was raised by anything other
221 than raise (). */
222 signal (SIGILL, SIG_IGN);
223 action = EXCEPTION_CONTINUE_EXECUTION;
224 }
225 else if (old_handler != SIG_DFL)
226 {
227 /* This means 'old' is a user defined function. Call it */
228 (*old_handler) (SIGILL);
229 action = EXCEPTION_CONTINUE_EXECUTION;
230 }
231 break;
232
233 case EXCEPTION_FLT_INVALID_OPERATION:
234 case EXCEPTION_FLT_DIVIDE_BY_ZERO:
235 case EXCEPTION_FLT_DENORMAL_OPERAND:
236 case EXCEPTION_FLT_OVERFLOW:
237 case EXCEPTION_FLT_UNDERFLOW:
238 case EXCEPTION_FLT_INEXACT_RESULT:
239 reset_fpu = 1;
240 /* fall through. */
241
242 case EXCEPTION_INT_DIVIDE_BY_ZERO:
243 /* test if the user has set SIGFPE */
244 old_handler = signal (SIGFPE, SIG_DFL);
245 if (old_handler == SIG_IGN)
246 {
247 signal (SIGFPE, SIG_IGN);
248 if (reset_fpu)
249 _fpreset ();
250 action = EXCEPTION_CONTINUE_EXECUTION;
251 }
252 else if (old_handler != SIG_DFL)
253 {
254 /* This means 'old' is a user defined function. Call it */
255 (*old_handler) (SIGFPE);
256 action = EXCEPTION_CONTINUE_EXECUTION;
257 }
258 break;
259#ifdef _WIN64
260 case EXCEPTION_DATATYPE_MISALIGNMENT:
261 case EXCEPTION_ARRAY_BOUNDS_EXCEEDED:
262 case EXCEPTION_FLT_STACK_CHECK:
263 case EXCEPTION_INT_OVERFLOW:
264 case EXCEPTION_INVALID_HANDLE:
265 /*case EXCEPTION_POSSIBLE_DEADLOCK: */
266 action = EXCEPTION_CONTINUE_EXECUTION;
267 break;
268#endif
269 default:115 default:
270 break;116 /* msvc CRT EXE exception handler just exit process with exception code */
117 _exit(ExceptionRecord->ExceptionCode);
271 }118 }
272
273 if (action == EXCEPTION_CONTINUE_SEARCH && __mingw_oldexcpt_handler)
274 action = (*__mingw_oldexcpt_handler)(exception_data);
275 return action;
276}119}
lib/libc/mingw/crt/crtdll.c+3-2
...@@ -4,7 +4,6 @@...@@ -4,7 +4,6 @@
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */5 */
66
7#include <oscalls.h>
8#include <internal.h>7#include <internal.h>
9#include <stdlib.h>8#include <stdlib.h>
10#include <windows.h>9#include <windows.h>
...@@ -147,7 +146,9 @@ DllMainCRTStartup (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)...@@ -147,7 +146,9 @@ DllMainCRTStartup (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
147{146{
148 WINBOOL retcode = TRUE;147 WINBOOL retcode = TRUE;
149148
150 __mingw_app_type = 0;149 if (dwReason == DLL_PROCESS_ATTACH)
150 __mingw_app_type = 0;
151
151 __native_dllmain_reason = dwReason;152 __native_dllmain_reason = dwReason;
152 if (dwReason == DLL_PROCESS_DETACH && __proc_attached <= 0)153 if (dwReason == DLL_PROCESS_DETACH && __proc_attached <= 0)
153 {154 {
lib/libc/mingw/crt/crtexe.c+144-121
...@@ -4,25 +4,37 @@...@@ -4,25 +4,37 @@
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */5 */
66
7#include <oscalls.h>
8#include <internal.h>7#include <internal.h>
8#include <excpt.h>
9#include <process.h>9#include <process.h>
10#include <signal.h>10#include <signal.h>
11#include <math.h>11#include <math.h>
12#include <stdlib.h>12#include <stdlib.h>
13#include <stdio.h>
13#include <tchar.h>14#include <tchar.h>
14#include <sect_attribs.h>15#include <sect_attribs.h>
15#include <locale.h>16#include <locale.h>
17#include <float.h>
16#include <corecrt_startup.h>18#include <corecrt_startup.h>
1719
18#if defined(__SEH__) && (!defined(__clang__) || __clang_major__ >= 7)20#if defined(__SEH__) && (!defined(__clang__) || __clang_major__ >= 7)
19#define SEH_INLINE_ASM21#define SEH_INLINE_ASM
22#ifdef __arm__
23#define ASM_SEH_EXCEPT "%%except"
24#else
25#define ASM_SEH_EXCEPT "@except"
26#endif
27#ifdef __arm64ec__
28#define ASM_SEH_PREFIX "\"#"
29#define ASM_SEH_SUFFIX "\""
30#else
31#define ASM_SEH_PREFIX ""
32#define ASM_SEH_SUFFIX ""
33#endif
20#endif34#endif
2135
22extern IMAGE_DOS_HEADER __ImageBase;36extern IMAGE_DOS_HEADER __ImageBase;
2337
24extern void _fpreset (void);
25
26int *__cdecl __p__commode(void);38int *__cdecl __p__commode(void);
2739
28#undef _fmode40#undef _fmode
...@@ -30,8 +42,7 @@ extern int _fmode;...@@ -30,8 +42,7 @@ extern int _fmode;
30#undef _commode42#undef _commode
31extern int _commode;43extern int _commode;
32extern int _dowildcard;44extern int _dowildcard;
3345extern int __globallocalestatus;
34extern _CRTIMP void __cdecl _initterm(_PVFV *, _PVFV *);
3546
36static int __cdecl check_managed_app (void);47static int __cdecl check_managed_app (void);
3748
...@@ -51,19 +62,15 @@ extern void __main(void);...@@ -51,19 +62,15 @@ extern void __main(void);
51static _TCHAR **argv;62static _TCHAR **argv;
52static _TCHAR **envp;63static _TCHAR **envp;
5364
54static int mainret=0;
55static int managedapp;65static int managedapp;
56static int has_cctor = 0;66static int has_cctor = 0;
57extern LPTOP_LEVEL_EXCEPTION_FILTER __mingw_oldexcpt_handler;
5867
59extern void _pei386_runtime_relocator (void);68extern void _pei386_runtime_relocator (void);
60long CALLBACK _gnu_exception_handler (EXCEPTION_POINTERS * exception_data);69EXCEPTION_DISPOSITION __cdecl __mingw_SEH_error_handler (struct _EXCEPTION_RECORD *, void *, struct _CONTEXT *, void *);
61static void duplicate_ppstrings (int ac, _TCHAR ***av);70#if defined(__x86_64__) && !defined(SEH_INLINE_ASM)
6271int __mingw_init_ehandler (void);
63static int __cdecl pre_c_init (void);72#endif
64static void __cdecl pre_cpp_init (void);73static int duplicate_ppstrings (int ac, _TCHAR ***av);
65_CRTALLOC(".CRT$XIAA") _PIFV __mingw_pcinit = pre_c_init;
66_CRTALLOC(".CRT$XCAA") _PVFV __mingw_pcppinit = pre_cpp_init;
6774
68extern int _MINGW_INSTALL_DEBUG_MATHERR;75extern int _MINGW_INSTALL_DEBUG_MATHERR;
6976
...@@ -85,112 +92,58 @@ __mingw_invalidParameterHandler (const wchar_t * __UNUSED_PARAM_1(expression),...@@ -85,112 +92,58 @@ __mingw_invalidParameterHandler (const wchar_t * __UNUSED_PARAM_1(expression),
85#endif92#endif
86}93}
8794
88static int __cdecl95#define GCC_MAGIC (('G' << 16) | ('C' << 8) | 'C' | (1U << 29))
89pre_c_init (void)
90{
91 int ret;
92 managedapp = check_managed_app ();
93 if (__mingw_app_type)
94 __set_app_type(_GUI_APP);
95 else
96 __set_app_type (_CONSOLE_APP);
97
98 * __p__fmode() = _fmode;
99 * __p__commode() = _commode;
10096
101#ifdef _UNICODE97#if defined(__i386__) || defined(_X86_)
102 ret = _wsetargv();98/* We need to make sure that we align the stack to 16 bytes for the sake of SSE */
103#else99__attribute__((force_align_arg_pointer))
104 ret = _setargv();
105#endif100#endif
106 if (ret < 0)101static LONG WINAPI
107 _amsg_exit(8); /* _RT_SPACEARG */102cpp_unhandled_exception_filter (EXCEPTION_POINTERS *exception_data)
108 if (_MINGW_INSTALL_DEBUG_MATHERR == 1)103{
109 {104 /* C++ gcc SEH exception is thrown by the libgcc __cxa_throw() function
110 __setusermatherr (_matherr);105 * (which calls _Unwind_RaiseException()) or _Unwind_ForcedUnwind() function
111 }106 * as a normal continuable SEH exception with the STATUS_GCC_THROW (0x20474343)
112107 * or STATUS_GCC_FORCED (0x22474343) exception code via the WinAPI RaiseException()
113 if (__globallocalestatus == -1)108 * call. Both _Unwind_RaiseException() and _Unwind_ForcedUnwind() are expected
114 {109 * to return back to the caller (for example __cxa_throw()) if the exception
115 }110 * was not handled. So if the gcc SEH exception reaches the application
116 return 0;111 * top-level exception handler then handler needs to return execution back to
112 * the place which called the RaiseException(). This is done by returning the
113 * EXCEPTION_CONTINUE_EXECUTION value from the handler itself.
114 * This is needed for proper propagation of unhandled C++ gcc exceptions
115 * into the std::terminate() call or into the application handler
116 * registered by the std::set_terminate() call.
117 */
118 if ((exception_data->ExceptionRecord->ExceptionCode & 0x20ffffff) == GCC_MAGIC &&
119 !(exception_data->ExceptionRecord->ExceptionFlags & EXCEPTION_NONCONTINUABLE))
120 return EXCEPTION_CONTINUE_EXECUTION;
121
122 return EXCEPTION_CONTINUE_SEARCH;
117}123}
118124
119static void __cdecl125static void
120pre_cpp_init (void)126safe_flush (void)
121{127{
122 _startupinfo startinfo;128 fflush (NULL);
123 int argret;
124
125 startinfo.newmode = _newmode;
126
127#ifdef _UNICODE
128 argret = __wgetmainargs(&argc,&argv,&envp,_dowildcard,&startinfo);
129#else
130 argret = __getmainargs(&argc,&argv,&envp,_dowildcard,&startinfo);
131#endif
132 if (argret < 0)
133 _amsg_exit(8); /* _RT_SPACEARG */
134}129}
135130
136static int __tmainCRTStartup (void);131static int __tmainCRTStartup (void);
137132
138int WinMainCRTStartup (void);133int WinMainCRTStartup (void);
139
140__attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30300 */134__attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30300 */
141int WinMainCRTStartup (void)135int WinMainCRTStartup (void)
142{136{
143 int ret = 255;
144#ifdef SEH_INLINE_ASM
145 asm ("\t.l_startw:\n");
146#endif
147 __mingw_app_type = 1;137 __mingw_app_type = 1;
148 ret = __tmainCRTStartup ();138 return __tmainCRTStartup ();
149#ifdef SEH_INLINE_ASM
150 asm ("\tnop\n"
151 "\t.l_endw: nop\n"
152#ifdef __arm__
153 "\t.seh_handler __C_specific_handler, %except\n"
154#else
155 "\t.seh_handler __C_specific_handler, @except\n"
156#endif
157 "\t.seh_handlerdata\n"
158 "\t.long 1\n"
159 "\t.rva .l_startw, .l_endw, _gnu_exception_handler ,.l_endw\n"
160 "\t.text");
161#endif
162 return ret;
163}139}
164140
165int mainCRTStartup (void);141int mainCRTStartup (void);
166
167#if defined(__x86_64__) && !defined(__SEH__)
168int __mingw_init_ehandler (void);
169#endif
170
171__attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30300 */142__attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30300 */
172int mainCRTStartup (void)143int mainCRTStartup (void)
173{144{
174 int ret = 255;
175#ifdef SEH_INLINE_ASM
176 asm ("\t.l_start:\n");
177#endif
178 __mingw_app_type = 0;145 __mingw_app_type = 0;
179 ret = __tmainCRTStartup ();146 return __tmainCRTStartup ();
180#ifdef SEH_INLINE_ASM
181 asm ("\tnop\n"
182 "\t.l_end: nop\n"
183#ifdef __arm__
184 "\t.seh_handler __C_specific_handler, %except\n"
185#else
186 "\t.seh_handler __C_specific_handler, @except\n"
187#endif
188 "\t.seh_handlerdata\n"
189 "\t.long 1\n"
190 "\t.rva .l_start, .l_end, _gnu_exception_handler ,.l_end\n"
191 "\t.text");
192#endif
193 return ret;
194}147}
195148
196static149static
...@@ -202,9 +155,27 @@ __attribute__((force_align_arg_pointer))...@@ -202,9 +155,27 @@ __attribute__((force_align_arg_pointer))
202__declspec(noinline) int155__declspec(noinline) int
203__tmainCRTStartup (void)156__tmainCRTStartup (void)
204{157{
158 /* Registration of SEH error handler __mingw_SEH_error_handler used for
159 * delivering SEH exceptions to registered CRT signal handlers. */
160#if defined(__i386__)
161 EXCEPTION_REGISTRATION_RECORD exception_record = {
162 .Next = (EXCEPTION_REGISTRATION_RECORD *)__readfsdword (0),
163 .Handler = (PEXCEPTION_ROUTINE)(INT_PTR)__mingw_SEH_error_handler,
164 };
165 __writefsdword (0, (DWORD)&exception_record); /* dynamically register SEH error handler, it is active until manually unregistered */
166#elif defined(SEH_INLINE_ASM)
167 asm volatile (".seh_handler " ASM_SEH_PREFIX "%c0" ASM_SEH_SUFFIX ", " ASM_SEH_EXCEPT :: "i" (__mingw_SEH_error_handler)); /* statically register SEH error handler, it is active only in the current function */
168#elif defined(__x86_64__)
169 __mingw_init_ehandler (); /* dynamically register SEH error handler for all functions, it is active until program terminates */
170#else
171#error unsupported platform
172#endif
173
205 void *lock_free = NULL;174 void *lock_free = NULL;
206 void *fiberid = ((PNT_TIB)NtCurrentTeb())->StackBase;175 void *fiberid = ((PNT_TIB)NtCurrentTeb())->StackBase;
207 BOOL nested = FALSE;176 BOOL nested = FALSE;
177 _startupinfo startinfo;
178 int ret = 0;
208 while((lock_free = InterlockedCompareExchangePointer (&__native_startup_lock,179 while((lock_free = InterlockedCompareExchangePointer (&__native_startup_lock,
209 fiberid, NULL)) != 0)180 fiberid, NULL)) != 0)
210 {181 {
...@@ -222,48 +193,97 @@ __tmainCRTStartup (void)...@@ -222,48 +193,97 @@ __tmainCRTStartup (void)
222 else if (__native_startup_state == __uninitialized)193 else if (__native_startup_state == __uninitialized)
223 {194 {
224 __native_startup_state = __initializing;195 __native_startup_state = __initializing;
196
197 /* Before the UCRT stderr could be opened in full buffering
198 * mode, for example when output goes to a pipe.
199 *
200 * The C standard disallows full buffering on stderr. Note
201 * that line buffering is the same as full buffering in the
202 * Windows CRT, so we have to disable buffering altogether.
203 */
204 setvbuf (stderr, NULL, _IONBF, 0);
205
206 /* The C RunTime library flushes stdio streams in response to
207 * DLL_PROCESS_DETACH. This is not entirely safe; other DLLs
208 * may cause instant termination during process shutdown.
209 * Here we add an exit handler to flush streams safely.
210 */
211 if (atexit (safe_flush) != 0)
212 abort ();
213
214 _pei386_runtime_relocator ();
215 _set_invalid_parameter_handler (__mingw_invalidParameterHandler);
216 _fpreset ();
217
218 managedapp = check_managed_app ();
219 if (__mingw_app_type)
220 __set_app_type (_GUI_APP);
221 else
222 __set_app_type (_CONSOLE_APP);
223
224 *__p__fmode () = _fmode;
225 *__p__commode () = _commode;
226
227#ifdef _UNICODE
228 ret = _wsetargv ();
229#else
230 ret = _setargv ();
231#endif
232 if (ret < 0)
233 _amsg_exit (8); /* _RT_SPACEARG */
234
235 if (_MINGW_INSTALL_DEBUG_MATHERR == 1)
236 __setusermatherr (_matherr);
237
238 if (__globallocalestatus == -1)
239 _configthreadlocale (-1);
240
225 if (_initterm_e (__xi_a, __xi_z) != 0)241 if (_initterm_e (__xi_a, __xi_z) != 0)
226 return 255;242 _amsg_exit (10); /* _RT_ABORT */
227 }
228 else
229 has_cctor = 1;
230243
231 if (__native_startup_state == __initializing)244 startinfo.newmode = _newmode;
232 {245#ifdef _UNICODE
246 ret = __wgetmainargs (&argc, &argv, &envp, _dowildcard, &startinfo);
247#else
248 ret = __getmainargs (&argc, &argv, &envp, _dowildcard, &startinfo);
249#endif
250 if (ret < 0)
251 _amsg_exit (8); /* _RT_SPACEARG */
252
253 ret = duplicate_ppstrings (argc, &argv);
254 if (ret != 0)
255 _amsg_exit (8); /* _RT_SPACEARG */
256
257 SetUnhandledExceptionFilter (cpp_unhandled_exception_filter);
233 _initterm (__xc_a, __xc_z);258 _initterm (__xc_a, __xc_z);
259 __main (); /* C++ initialization. */
260
234 __native_startup_state = __initialized;261 __native_startup_state = __initialized;
235 }262 }
236 _ASSERTE(__native_startup_state == __initialized);263 else
264 has_cctor = 1;
237 if (! nested)265 if (! nested)
238 (VOID)InterlockedExchangePointer (&__native_startup_lock, NULL);266 (VOID)InterlockedExchangePointer (&__native_startup_lock, NULL);
239 267
240 if (__dyn_tls_init_callback != NULL)268 if (__dyn_tls_init_callback != NULL)
241 __dyn_tls_init_callback (NULL, DLL_THREAD_ATTACH, NULL);269 __dyn_tls_init_callback (NULL, DLL_THREAD_ATTACH, NULL);
242
243 _pei386_runtime_relocator ();
244 __mingw_oldexcpt_handler = SetUnhandledExceptionFilter (_gnu_exception_handler);
245#if defined(__x86_64__) && !defined(__SEH__)
246 __mingw_init_ehandler ();
247#endif
248 _set_invalid_parameter_handler (__mingw_invalidParameterHandler);
249
250 _fpreset ();
251270
252 duplicate_ppstrings (argc, &argv);
253 __main (); /* C++ initialization. */
254#ifdef _UNICODE271#ifdef _UNICODE
255 __winitenv = envp;272 __winitenv = envp;
256#else273#else
257 __initenv = envp;274 __initenv = envp;
258#endif275#endif
259 mainret = _tmain (argc, argv, envp);276 ret = _tmain (argc, argv, envp);
260 if (!managedapp)277 if (!managedapp)
261 exit (mainret);278 exit (ret);
262279
263 if (has_cctor == 0)280 if (has_cctor == 0)
264 _cexit ();281 _cexit ();
265282
266 return mainret;283#if defined(__i386__)
284 __writefsdword (0, (DWORD)exception_record.Next); /* dynamically unregister SEH error handler */
285#endif
286 return ret;
267}287}
268288
269extern int __mingw_initltsdrot_force;289extern int __mingw_initltsdrot_force;
...@@ -307,21 +327,24 @@ check_managed_app (void)...@@ -307,21 +327,24 @@ check_managed_app (void)
307 return 0;327 return 0;
308}328}
309329
310static void duplicate_ppstrings (int ac, _TCHAR ***av)330static int duplicate_ppstrings (int ac, _TCHAR ***av)
311{331{
312 _TCHAR **avl;332 _TCHAR **avl;
313 int i;333 int i;
314 _TCHAR **n = (_TCHAR **) malloc (sizeof (_TCHAR *) * (ac + 1));334 _TCHAR **n = (_TCHAR **) malloc (sizeof (_TCHAR *) * (ac + 1));
335 if (!n) return 1;
315 336
316 avl=*av;337 avl=*av;
317 for (i=0; i < ac; i++)338 for (i=0; i < ac; i++)
318 {339 {
319 size_t l = sizeof (_TCHAR) * (_tcslen (avl[i]) + 1);340 size_t l = sizeof (_TCHAR) * (_tcslen (avl[i]) + 1);
320 n[i] = (_TCHAR *) malloc (l);341 n[i] = (_TCHAR *) malloc (l);
342 if (!n[i]) return 1;
321 memcpy (n[i], avl[i], l);343 memcpy (n[i], avl[i], l);
322 }344 }
323 n[i] = NULL;345 n[i] = NULL;
324 *av = n;346 *av = n;
347 return 0;
325}348}
326349
327int __cdecl atexit (_PVFV func)350int __cdecl atexit (_PVFV func)
lib/libc/mingw/crt/crtexewin.c+1-5
...@@ -7,10 +7,6 @@...@@ -7,10 +7,6 @@
7#include <tchar.h>7#include <tchar.h>
8#include <corecrt_startup.h>8#include <corecrt_startup.h>
99
10#ifndef _UNICODE
11#include <mbctype.h>
12#endif
13
14#define SPACECHAR _T(' ')10#define SPACECHAR _T(' ')
15#define DQUOTECHAR _T('\"')11#define DQUOTECHAR _T('\"')
1612
...@@ -40,7 +36,7 @@ int _tmain (int __UNUSED_PARAM(argc),...@@ -40,7 +36,7 @@ int _tmain (int __UNUSED_PARAM(argc),
40 if (*lpCmdLine == DQUOTECHAR)36 if (*lpCmdLine == DQUOTECHAR)
41 inDoubleQuote = !inDoubleQuote;37 inDoubleQuote = !inDoubleQuote;
42#ifndef _UNICODE38#ifndef _UNICODE
43 if (_ismbblead (*lpCmdLine))39 if (IsDBCSLeadByte (*lpCmdLine))
44 {40 {
45 if (lpCmdLine[1])41 if (lpCmdLine[1])
46 ++lpCmdLine;42 ++lpCmdLine;
lib/libc/mingw/crt/gccmain.c+1
...@@ -49,6 +49,7 @@ __do_global_ctors (void)...@@ -49,6 +49,7 @@ __do_global_ctors (void)
4949
50static int initialized = 0;50static int initialized = 0;
5151
52__attribute__((used)) /* required for gcc -flto -Ofast */
52void53void
53__main (void)54__main (void)
54{55{
lib/libc/mingw/crt/pseudo-reloc.c+2-6
...@@ -141,8 +141,7 @@ __report_error (const char *msg, ...)...@@ -141,8 +141,7 @@ __report_error (const char *msg, ...)
141 cygwin_internal (CW_EXIT_PROCESS,141 cygwin_internal (CW_EXIT_PROCESS,
142 STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION,142 STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION,
143 1);143 1);
144 /* not reached, but silences noreturn warning */144 __builtin_unreachable ();
145 abort ();
146#else145#else
147 va_list argp;146 va_list argp;
148 va_start (argp, msg);147 va_start (argp, msg);
...@@ -196,7 +195,6 @@ mark_section_writable (LPVOID addr)...@@ -196,7 +195,6 @@ mark_section_writable (LPVOID addr)
196 if (!h)195 if (!h)
197 {196 {
198 __report_error ("Address %p has no image-section", addr);197 __report_error ("Address %p has no image-section", addr);
199 return;
200 }198 }
201 the_secs[i].hash = h;199 the_secs[i].hash = h;
202 the_secs[i].old_protect = 0;200 the_secs[i].old_protect = 0;
...@@ -206,7 +204,6 @@ mark_section_writable (LPVOID addr)...@@ -206,7 +204,6 @@ mark_section_writable (LPVOID addr)
206 {204 {
207 __report_error (" VirtualQuery failed for %d bytes at address %p",205 __report_error (" VirtualQuery failed for %d bytes at address %p",
208 (int) h->Misc.VirtualSize, the_secs[i].sec_start);206 (int) h->Misc.VirtualSize, the_secs[i].sec_start);
209 return;
210 }207 }
211208
212 if (b.Protect != PAGE_EXECUTE_READWRITE && b.Protect != PAGE_READWRITE209 if (b.Protect != PAGE_EXECUTE_READWRITE && b.Protect != PAGE_READWRITE
...@@ -380,7 +377,6 @@ do_pseudo_reloc (void * start, void * end, void * base)...@@ -380,7 +377,6 @@ do_pseudo_reloc (void * start, void * end, void * base)
380 {377 {
381 __report_error (" Unknown pseudo relocation protocol version %d.\n",378 __report_error (" Unknown pseudo relocation protocol version %d.\n",
382 (int) v2_hdr->version);379 (int) v2_hdr->version);
383 return;
384 }380 }
385381
386 /*************************382 /*************************
...@@ -480,7 +476,7 @@ do_pseudo_reloc (void * start, void * end, void * base)...@@ -480,7 +476,7 @@ do_pseudo_reloc (void * start, void * end, void * base)
480 }476 }
481}477}
482478
483__attribute__((used)) /* required due to bug in gcc / ld */479__attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30343 */
484void480void
485_pei386_runtime_relocator (void)481_pei386_runtime_relocator (void)
486{482{
lib/libc/mingw/ctype/_iscsym_l.c created+22
...@@ -0,0 +1,22 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#undef __MSVCRT_VERSION__
8#define __MSVCRT_VERSION__ 0x0800
9
10#define _CTYPE_DISABLE_MACROS
11#include <ctype.h>
12
13/**
14 * See ctype.h for rationale.
15 *
16 * Note that import symbol __MINGW_IMP_SYMBOL(_iscsym_l) is not provided on
17 * purpose.
18 */
19
20int __cdecl _iscsym_l (wint_t _C, _locale_t _Locale) {
21 return (_isalnum_l (_C, _Locale) || _C == '_');
22}
lib/libc/mingw/ctype/_iscsymf_l.c created+22
...@@ -0,0 +1,22 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#undef __MSVCRT_VERSION__
8#define __MSVCRT_VERSION__ 0x0800
9
10#define _CTYPE_DISABLE_MACROS
11#include <ctype.h>
12
13/**
14 * See ctype.h for rationale.
15 *
16 * Note that import symbol __MINGW_IMP_SYMBOL(_iscsymf_l) is not provided on
17 * purpose.
18 */
19
20int __cdecl _iscsymf_l (wint_t _C, _locale_t _Locale) {
21 return (_isalpha_l (_C, _Locale) || _C == '_');
22}
lib/libc/mingw/ctype/iswctype.c created+43
...@@ -0,0 +1,43 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#define _CTYPE_DISABLE_MACROS
8#include <wctype.h>
9
10/**
11 * CRT's `iswctype` has inconsistent behavior for TAB character when used with
12 * `wctype_t` objects returned by `wctype` function which contain `_BLANK` bit.
13 *
14 * In all CRTs up to msvcrt.dll version 6.1, it returns zero in "C" locale
15 * and non-zero otherwise.
16 *
17 * Since msvcr70.dll up to msvcr110.dll it always returns non-zero;
18 * OS-specific versions of msvcrt.dll follow this behavior.
19 *
20 * In msvcr120.dll and UCRT it always returns zero.
21 *
22 * This behavior affects both `iswblank` and `iswprint` functions;
23 * either or both of them have non-conforming behavior.
24 */
25
26/**
27 * This is CRT's `iswctype` renamed to `__msvcrt_iswctype`.
28 */
29extern int (__cdecl *__MINGW_IMP_SYMBOL(__msvcrt_iswctype)) (wint_t, wctype_t);
30
31int iswctype (wint_t _C, wctype_t _Type) {
32 /**
33 * `wctype_t` object returned for "print" character class contains _BLANK;
34 * make sure TAB is handled correctly.
35 */
36 if (_C == L'\t' && (_Type & _BLANK)) {
37 return (_Type == _BLANK ? _BLANK : 0);
38 }
39
40 return __MINGW_IMP_SYMBOL (__msvcrt_iswctype) (_C, _Type);
41}
42
43int (__cdecl *__MINGW_IMP_SYMBOL (iswctype)) (wint_t, wctype_t) = iswctype;
lib/libc/mingw/ctype/towctrans.c created+33
...@@ -0,0 +1,33 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#define _CTYPE_DISABLE_MACROS
8#include <wctype.h>
9
10/**
11 * Both `wctrans` and `towctrans` functions were added in msvcr120.dll.
12 *
13 * CRT's `towctrans` does not properly handle case when second argument is
14 * `(wctrans_t)0`.
15 */
16
17/**
18 * This is CRT's `towctrans` renamed to `__msvcrt_towctrans`.
19 */
20extern wint_t (__cdecl *__MINGW_IMP_SYMBOL (__msvcrt_towctrans)) (wint_t, wctrans_t);
21
22wint_t __cdecl towctrans (wint_t _C, wctrans_t _Type) {
23 /**
24 * POSIX requires that if `_Type` is zero, `_C` is returned unchanged.
25 */
26 if (_Type == (wctrans_t) 0) {
27 return _C;
28 }
29
30 return __MINGW_IMP_SYMBOL (__msvcrt_towctrans) (_C, _Type);
31}
32
33wint_t (__cdecl *__MINGW_IMP_SYMBOL (towctrans)) (wint_t, wctrans_t) = towctrans;
lib/libc/mingw/def-include/crt-aliases.def.in+45-18
...@@ -64,20 +64,13 @@ ADD_UNDERSCORE(filelength)...@@ -64,20 +64,13 @@ ADD_UNDERSCORE(filelength)
64ADD_UNDERSCORE(fileno)64ADD_UNDERSCORE(fileno)
65; ADD_UNDERSCORE(flushall)65; ADD_UNDERSCORE(flushall)
66ADD_UNDERSCORE(fputchar)66ADD_UNDERSCORE(fputchar)
67#ifdef FIXED_SIZE_SYMBOLS67#if defined(UCRTBASE)
68#ifndef CRTDLL
69ADD_UNDERSCORE(fstat)
70#endif
71#else
72F32(fstat == _fstat32)68F32(fstat == _fstat32)
73F64(fstat == _fstat64i32)69F64(fstat == _fstat64i32)
74#endif
75#ifdef FIXED_SIZE_SYMBOLS
76ADD_UNDERSCORE(ftime)
77#else70#else
78F32(ftime == _ftime32)71; fstat for non-UCRT is provided by mingw to workaround S_IFDIR issue in _fstat
79F64(ftime == _ftime64)
80#endif72#endif
73; ftime is provided in misc/ftime32.c or misc/ftime64.c as MS _ftime is not ABI compatible with POSIX ftime
81#if defined(UCRTBASE)74#if defined(UCRTBASE)
82; HUGE alias and _HUGE variable are provided by math/_huge.c75; HUGE alias and _HUGE variable are provided by math/_huge.c
83#elif defined(CRTDLL)76#elif defined(CRTDLL)
...@@ -232,7 +225,7 @@ ADD_UNDERSCORE(wcsupr)...@@ -232,7 +225,7 @@ ADD_UNDERSCORE(wcsupr)
232#ifdef UCRTBASE225#ifdef UCRTBASE
233; hypot is natively exported from UCRT226; hypot is natively exported from UCRT
234#else227#else
235ADD_UNDERSCORE(hypot)228; hypot is provided by math/hypot.c as a wrapper around _hypot
236#endif229#endif
237ADD_UNDERSCORE(j0)230ADD_UNDERSCORE(j0)
238ADD_UNDERSCORE(j1)231ADD_UNDERSCORE(j1)
...@@ -248,9 +241,6 @@ getwchar == _fgetwchar...@@ -248,9 +241,6 @@ getwchar == _fgetwchar
248putwc == fputwc241putwc == fputwc
249putwchar == _fputwchar242putwchar == _fputwchar
250#endif243#endif
251#ifdef USE_WCSTOK_S_FOR_WCSTOK
252wcstok == wcstok_s
253#endif
254244
255; This is list of symbol aliases for C99 functions245; This is list of symbol aliases for C99 functions
256; ADD_UNDERSCORE(logb)246; ADD_UNDERSCORE(logb)
...@@ -292,29 +282,46 @@ ADD_DOUBLE_UNDERSCORE(toascii)...@@ -292,29 +282,46 @@ ADD_DOUBLE_UNDERSCORE(toascii)
292ADD_UNDERSCORE(pclose)282ADD_UNDERSCORE(pclose)
293ADD_UNDERSCORE(popen)283ADD_UNDERSCORE(popen)
294#endif284#endif
285fseeko == fseek
286ftello == ftell
287ftruncate == _chsize
295; ADD_UNDERSCORE(scalb)288; ADD_UNDERSCORE(scalb)
296289
297; This is list of symbol aliases for Large File Specification (extension to Single UNIX Specification)290; This is list of symbol aliases for Large File Specification (extension to Single UNIX Specification)
291; https://unix.org/version2/whatsnew/lfs20mar.html#3.1 section 3.1 Transitional Extensions
292creat64 == _creat
293open64 == _open
294fopen64 == fopen
295freopen64 == freopen
296#ifndef NO_TMPFILE_ALIAS
297tmpfile64 == tmpfile
298#endif
298#ifndef NO_FPOS64_ALIASES299#ifndef NO_FPOS64_ALIASES
299; fgetpos and fsetpos are already 64-bit300; fgetpos and fsetpos are already 64-bit
300fgetpos64 == fgetpos301fgetpos64 == fgetpos
301fsetpos64 == fsetpos302fsetpos64 == fsetpos
303lseek64 == _lseeki64
302#endif304#endif
303#ifdef UCRTBASE305#ifdef UCRTBASE
306fstat32 == _fstat32
307fstat32i64 == _fstat32i64
308fstat64 == _fstat64
309fstat64i32 == _fstat64i32
304stat32 == _stat32310stat32 == _stat32
305stat32i64 == _stat32i64311stat32i64 == _stat32i64
306stat64 == _stat64312stat64 == _stat64
307stat64i32 == _stat64i32313stat64i32 == _stat64i32
308#else314#else
315; fstat for non-UCRT is provided by mingw to workaround S_IFDIR issue in _fstat
309; stat for non-UCRT is provided by mingw to workaround trailing slash issue in _stat316; stat for non-UCRT is provided by mingw to workaround trailing slash issue in _stat
310#endif317#endif
311#ifdef FIXED_SIZE_SYMBOLS318#ifdef FIXED_SIZE_SYMBOLS
312// NO_FIXED_SIZE_64_ALIAS means that DLL provides the native _fstat64 symbol319#ifdef WITH_FSEEKO64_ALIAS
313#if defined(NO_FIXED_SIZE_64_ALIAS) && !defined(NO_FSTAT64_ALIAS)320fseeko64 == _fseeki64
314fstat64 == _fstat64
315#endif321#endif
316#else322#else
317fstat64 == _fstat64323fseeko64 == _fseeki64
324ftello64 == _ftelli64
318#endif325#endif
319326
320; This is list of symbol aliases for GNU functions which are not part of POSIX or ISO C327; This is list of symbol aliases for GNU functions which are not part of POSIX or ISO C
...@@ -325,6 +332,25 @@ strncasecmp == _strnicmp...@@ -325,6 +332,25 @@ strncasecmp == _strnicmp
325; Some symbols in some version of CRT library were added and some other symbols were removed or renamed332; Some symbols in some version of CRT library were added and some other symbols were removed or renamed
326; This list provides some level of backward and forward compatibility333; This list provides some level of backward and forward compatibility
327334
335#ifdef WITH_SETJMP3_ALIAS
336; crtdll.dll and msvcrt10.dll have only old _setjmp function which does not take
337; additional variadic arguments and uses smaller jmpbuf structure.
338; mingw-w64 calls _setjmp3 only with zero additional arguments and because number
339; of additional arguments is passed on the stack which is cleanup by the caller,
340; it means that the mingw-w64 usage of _setjmp3 is ABI compatible with the old
341; _setjmp function which is available also in crtdll.dll and msvcrt10.dll libs.
342; It heavily depends on the mingw-w64-headers/crt/setjmp.h implementation.
343; So this definition allows crtdll.dll and msvcrt10.dll applications to call
344; setjmp() macro from setjmp.h, which expands to _setjmp3() function call and
345; which is aliased to _setjmp symbol for crtdll.dll and msvcrt10.dll libraries.
346F_I386(_setjmp3 == _setjmp)
347#endif
348
349#ifdef UCRTBASE
350F_NON_ARM64(_setjmp == __intrinsic_setjmp)
351F64(_setjmpex == __intrinsic_setjmpex)
352#endif
353
328#ifndef NO_STRCMPI_ALIAS354#ifndef NO_STRCMPI_ALIAS
329_strcmpi == _stricmp355_strcmpi == _stricmp
330#endif356#endif
...@@ -551,6 +577,7 @@ __p__daylight == __daylight...@@ -551,6 +577,7 @@ __p__daylight == __daylight
551__p__dstbias == __dstbias577__p__dstbias == __dstbias
552__p__timezone == __timezone578__p__timezone == __timezone
553__p__tzname == __tzname579__p__tzname == __tzname
580_XcptFilter == _seh_filter_exe
554#endif581#endif
555582
556; This is list of printf/scanf symbol aliases with __ms_ prefix583; This is list of printf/scanf symbol aliases with __ms_ prefix
lib/libc/mingw/def-include/func.def.in+16-4
...@@ -16,29 +16,35 @@...@@ -16,29 +16,35 @@
16#define F64(x) x16#define F64(x) x
17#define F_X64(x) x17#define F_X64(x) x
18#define F_X86_ANY(x) x18#define F_X86_ANY(x) x
19#define F_X86_NATIVE(x) x
19#define F_NON_I386(x) x20#define F_NON_I386(x) x
20#define F_NON_ARM64(x) x21#define F_NON_ARM64(x) x
22#if defined(__arm64ec__)
23#define F_ARM_ANY(x) x
24#undef F_X86_NATIVE
25#endif
21#elif defined(__i386__)26#elif defined(__i386__)
22#define F32(x) x27#define F32(x) x
23#define F_I386(x) x28#define F_I386(x) x
24#define F_X86_ANY(x) x29#define F_X86_ANY(x) x
30#define F_X86_NATIVE(x) x
25#define F_NON_X64(x) x31#define F_NON_X64(x) x
26#define F_NON_ARM64(x) x32#define F_NON_ARM64(x) x
27#elif defined(__arm__)33#elif defined(__arm__)
28#define F32(x) x34#define F32(x) x
29#define F_ARM32(x) x35#define F_ARM32(x) x
30#define F_ARM_ANY(x) x36#define F_ARM_NATIVE(x) x
31#define F_NON_I386(x) x37#define F_NON_I386(x) x
32#define F_NON_X64(x) x38#define F_NON_X64(x) x
33#define F_NON_ARM64(x) x39#define F_NON_ARM64(x) x
34#elif defined(__aarch64__)40#elif defined(__aarch64__)
35#define F64(x) x41#define F64(x) x
36#define F_ARM64(x) x42#define F_ARM64(x) x
37#define F_ARM_ANY(x) x43#define F_ARM_NATIVE(x) x
38#define F_NON_I386(x) x44#define F_NON_I386(x) x
39#define F_NON_X64(x) x45#define F_NON_X64(x) x
40#else46#else
41#error No DEF_<ARCH> is defined47#error Unrecognized architecture
42#endif48#endif
4349
44#ifndef F3250#ifndef F32
...@@ -50,14 +56,20 @@...@@ -50,14 +56,20 @@
50#ifndef F_X86_ANY56#ifndef F_X86_ANY
51#define F_X86_ANY(x)57#define F_X86_ANY(x)
52#endif58#endif
59#ifndef F_X86_NATIVE(x)
60#define F_X86_NATIVE(x)
61#endif
53#ifndef F_I38662#ifndef F_I386
54#define F_I386(x)63#define F_I386(x)
55#endif64#endif
56#ifndef F_X6465#ifndef F_X64
57#define F_X64(x)66#define F_X64(x)
58#endif67#endif
68#ifndef F_ARM_NATIVE
69#define F_ARM_NATIVE(x)
70#endif
59#ifndef F_ARM_ANY71#ifndef F_ARM_ANY
60#define F_ARM_ANY(x)72#define F_ARM_ANY(x) F_ARM_NATIVE(x)
61#endif73#endif
62#ifndef F_ARM3274#ifndef F_ARM32
63#define F_ARM32(x)75#define F_ARM32(x)
lib/libc/mingw/gdtoa/dtoa.c+1-1
...@@ -109,7 +109,7 @@ char *__dtoa (double d0, int mode, int ndigits, int *decpt, int *sign, char **rv...@@ -109,7 +109,7 @@ char *__dtoa (double d0, int mode, int ndigits, int *decpt, int *sign, char **rv
109 */109 */
110110
111 int bbits, b2, b5, be, dig, i, ieps, ilim, ilim0, ilim1,111 int bbits, b2, b5, be, dig, i, ieps, ilim, ilim0, ilim1,
112 j, j2, k, k0, k_check, leftright, m2, m5, s2, s5,112 j, j2 = 0, k, k0, k_check, leftright, m2, m5, s2, s5,
113 spec_case, try_quick;113 spec_case, try_quick;
114 Long L;114 Long L;
115#ifndef Sudden_Underflow115#ifndef Sudden_Underflow
lib/libc/mingw/gdtoa/g__fmt.c+1-1
...@@ -172,7 +172,7 @@ __add_nanbits_D2A(char *b, size_t blen, ULong *bits, int nb)...@@ -172,7 +172,7 @@ __add_nanbits_D2A(char *b, size_t blen, ULong *bits, int nb)
172 char *rv;172 char *rv;
173 int i, j;173 int i, j;
174 size_t L;174 size_t L;
175 static char Hexdig[16] = "0123456789abcdef";175 static char Hexdig[17] = "0123456789abcdef";
176176
177 while(!bits[--nb])177 while(!bits[--nb])
178 if (!nb)178 if (!nb)
lib/libc/mingw/include/oscalls.h deleted-60
...@@ -1,60 +0,0 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef _INC_OSCALLS
8#define _INC_OSCALLS
9
10#ifndef _CRTBLD
11#error ERROR: Use of C runtime library internal header file.
12#endif
13
14#include <crtdefs.h>
15
16#ifdef NULL
17#undef NULL
18#endif
19
20#define NOMINMAX
21
22#define _WIN32_FUSION 0x0100
23#include <windows.h>
24
25#ifndef NULL
26#ifdef __cplusplus
27#define NULL 0
28#else
29#define NULL ((void *)0)
30#endif
31#endif
32
33#ifdef _MSC_VER
34#pragma warning(push)
35#pragma warning(disable:4214)
36#endif
37
38typedef struct _FTIME
39{
40 unsigned short twosecs : 5;
41 unsigned short minutes : 6;
42 unsigned short hours : 5;
43} FTIME;
44
45typedef FTIME *PFTIME;
46
47typedef struct _FDATE
48{
49 unsigned short day : 5;
50 unsigned short month : 4;
51 unsigned short year : 7;
52} FDATE;
53
54#ifdef _MSC_VER
55#pragma warning(pop)
56#endif
57
58typedef FDATE *PFDATE;
59
60#endif
lib/libc/mingw/include/sect_attribs.h+43-50
...@@ -6,60 +6,54 @@...@@ -6,60 +6,54 @@
66
7#if defined(_MSC_VER)7#if defined(_MSC_VER)
88
9#if defined(_M_IA64) || defined(_M_AMD64)
10#define _ATTRIBUTES
11#else
12#define _ATTRIBUTES shared
13#endif
14
15/* Reference list of existing section for msvcrt. */9/* Reference list of existing section for msvcrt. */
16#pragma section(".CRTMP$XCA",long,_ATTRIBUTES)10#pragma section(".CRTMP$XCA", long, read)
17#pragma section(".CRTMP$XCZ",long,_ATTRIBUTES)11#pragma section(".CRTMP$XCZ", long, read)
18#pragma section(".CRTMP$XIA",long,_ATTRIBUTES)12#pragma section(".CRTMP$XIA", long, read)
19#pragma section(".CRTMP$XIZ",long,_ATTRIBUTES)13#pragma section(".CRTMP$XIZ", long, read)
2014
21#pragma section(".CRTMA$XCA",long,_ATTRIBUTES)15#pragma section(".CRTMA$XCA", long, read)
22#pragma section(".CRTMA$XCZ",long,_ATTRIBUTES)16#pragma section(".CRTMA$XCZ", long, read)
23#pragma section(".CRTMA$XIA",long,_ATTRIBUTES)17#pragma section(".CRTMA$XIA", long, read)
24#pragma section(".CRTMA$XIZ",long,_ATTRIBUTES)18#pragma section(".CRTMA$XIZ", long, read)
2519
26#pragma section(".CRTVT$XCA",long,_ATTRIBUTES)20#pragma section(".CRTVT$XCA", long, read)
27#pragma section(".CRTVT$XCZ",long,_ATTRIBUTES)21#pragma section(".CRTVT$XCZ", long, read)
2822
29#pragma section(".CRT$XCA",long,_ATTRIBUTES)23#pragma section(".CRT$XCA", long, read)
30#pragma section(".CRT$XCAA",long,_ATTRIBUTES)24#pragma section(".CRT$XCAA", long, read)
31#pragma section(".CRT$XCC",long,_ATTRIBUTES)25#pragma section(".CRT$XCC", long, read)
32#pragma section(".CRT$XCZ",long,_ATTRIBUTES)26#pragma section(".CRT$XCZ", long, read)
33#pragma section(".CRT$XDA",long,_ATTRIBUTES)27#pragma section(".CRT$XDA", long, read)
34#pragma section(".CRT$XDC",long,_ATTRIBUTES)28#pragma section(".CRT$XDC", long, read)
35#pragma section(".CRT$XDZ",long,_ATTRIBUTES)29#pragma section(".CRT$XDZ", long, read)
36#pragma section(".CRT$XIA",long,_ATTRIBUTES)30#pragma section(".CRT$XIA", long, read)
37#pragma section(".CRT$XIAA",long,_ATTRIBUTES)31#pragma section(".CRT$XIAA", long, read)
38#pragma section(".CRT$XIC",long,_ATTRIBUTES)32#pragma section(".CRT$XIC", long, read)
39#pragma section(".CRT$XID",long,_ATTRIBUTES)33#pragma section(".CRT$XID", long, read)
40#pragma section(".CRT$XIY",long,_ATTRIBUTES)34#pragma section(".CRT$XIY", long, read)
41#pragma section(".CRT$XIZ",long,_ATTRIBUTES)35#pragma section(".CRT$XIZ", long, read)
42#pragma section(".CRT$XLA",long,_ATTRIBUTES)36#pragma section(".CRT$XLA", long, read)
43#pragma section(".CRT$XLC",long,_ATTRIBUTES)37#pragma section(".CRT$XLC", long, read)
44#pragma section(".CRT$XLD",long,_ATTRIBUTES)38#pragma section(".CRT$XLD", long, read)
45#pragma section(".CRT$XLZ",long,_ATTRIBUTES)39#pragma section(".CRT$XLZ", long, read)
46#pragma section(".CRT$XPA",long,_ATTRIBUTES)40#pragma section(".CRT$XPA", long, read)
47#pragma section(".CRT$XPX",long,_ATTRIBUTES)41#pragma section(".CRT$XPX", long, read)
48#pragma section(".CRT$XPXA",long,_ATTRIBUTES)42#pragma section(".CRT$XPXA", long, read)
49#pragma section(".CRT$XPZ",long,_ATTRIBUTES)43#pragma section(".CRT$XPZ", long, read)
50#pragma section(".CRT$XTA",long,_ATTRIBUTES)44#pragma section(".CRT$XTA", long, read)
51#pragma section(".CRT$XTB",long,_ATTRIBUTES)45#pragma section(".CRT$XTB", long, read)
52#pragma section(".CRT$XTX",long,_ATTRIBUTES)46#pragma section(".CRT$XTX", long, read)
53#pragma section(".CRT$XTZ",long,_ATTRIBUTES)47#pragma section(".CRT$XTZ", long, read)
54#pragma section(".rdata$T",long,read)48#pragma section(".rdata$T", long, read)
55#pragma section(".rtc$IAA",long,read)49#pragma section(".rtc$IAA", long, read)
56#pragma section(".rtc$IZZ",long,read)50#pragma section(".rtc$IZZ", long, read)
57#pragma section(".rtc$TAA",long,read)51#pragma section(".rtc$TAA", long, read)
58#pragma section(".rtc$TZZ",long,read)52#pragma section(".rtc$TZZ", long, read)
59/* for tlssup.c: */53/* for tlssup.c: */
60#pragma section(".tls",long,read,write)54#pragma section(".tls", long)
61#pragma section(".tls$AAA",long,read,write)55#pragma section(".tls$AAA", long)
62#pragma section(".tls$ZZZ",long,read,write)56#pragma section(".tls$ZZZ", long)
63#endif /* _MSC_VER */57#endif /* _MSC_VER */
6458
65#if defined(_MSC_VER)59#if defined(_MSC_VER)
...@@ -69,4 +63,3 @@...@@ -69,4 +63,3 @@
69#else63#else
70#error Your compiler is not supported.64#error Your compiler is not supported.
71#endif65#endif
72
lib/libc/mingw/lib-common/api-ms-win-crt-convert-l1-1-0.def.in+2-2
...@@ -93,7 +93,7 @@ atof...@@ -93,7 +93,7 @@ atof
93atoi93atoi
94atol94atol
95atoll95atoll
96btowc96; btowc ; replaced for consistency with wctob
97c16rtomb97c16rtomb
98c32rtomb98c32rtomb
99mbrtoc1699mbrtoc16
...@@ -128,7 +128,7 @@ wcstombs_s...@@ -128,7 +128,7 @@ wcstombs_s
128wcstoul128wcstoul
129wcstoull129wcstoull
130wcstoumax130wcstoumax
131wctob131; wctob ; replaced, CRT version may sign-extend its return value
132wctomb132wctomb
133wctomb_s133wctomb_s
134wctrans134wctrans
lib/libc/mingw/lib-common/api-ms-win-crt-filesystem-l1-1-0.def.in+3
...@@ -37,10 +37,13 @@ F64(_fstat == _fstat64i32)...@@ -37,10 +37,13 @@ F64(_fstat == _fstat64i32)
37F32(_fstati64 == _fstat32i64)37F32(_fstati64 == _fstat32i64)
38F64(_fstati64 == _fstat64)38F64(_fstati64 == _fstat64)
39_fstat3239_fstat32
40fstat32 == _fstat32
40_fstat32i6441_fstat32i64
42fstat32i64 == _fstat32i64
41_fstat6443_fstat64
42fstat64 == _fstat6444fstat64 == _fstat64
43_fstat64i3245_fstat64i32
46fstat64i32 == _fstat64i32
44_fullpath47_fullpath
45_getdiskfree48_getdiskfree
46_getdrive49_getdrive
lib/libc/mingw/lib-common/api-ms-win-crt-math-l1-1-0.def.in+1-1
...@@ -266,7 +266,7 @@ expm1...@@ -266,7 +266,7 @@ expm1
266expm1f266expm1f
267F_LD64(expm1l) ; Can't use long double functions from the CRT on x86267F_LD64(expm1l) ; Can't use long double functions from the CRT on x86
268fabs268fabs
269F_ARM_ANY(fabsf)269F_ARM_NATIVE(fabsf)
270fdim270fdim
271fdimf271fdimf
272F_LD64(fdiml) ; Can't use long double functions from the CRT on x86272F_LD64(fdiml) ; Can't use long double functions from the CRT on x86
lib/libc/mingw/lib-common/api-ms-win-crt-private-l1-1-0.def.in+4-2
...@@ -12,8 +12,8 @@ _FindAndUnlinkFrame...@@ -12,8 +12,8 @@ _FindAndUnlinkFrame
12F_X64(_GetImageBase)12F_X64(_GetImageBase)
13F_X64(_GetThrowImageBase)13F_X64(_GetThrowImageBase)
14_IsExceptionObjectToBeDestroyed14_IsExceptionObjectToBeDestroyed
15F_I386(_NLG_Dispatch2@4)15F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4)
16F_I386(_NLG_Return@12)16F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12)
17F_I386(_NLG_Return2)17F_I386(_NLG_Return2)
18F_X64(_SetImageBase)18F_X64(_SetImageBase)
19F_X64(_SetThrowImageBase)19F_X64(_SetThrowImageBase)
...@@ -46,7 +46,9 @@ __dcrt_get_wide_environment_from_os...@@ -46,7 +46,9 @@ __dcrt_get_wide_environment_from_os
46__dcrt_initial_narrow_environment DATA46__dcrt_initial_narrow_environment DATA
47F_I386(__intrinsic_abnormal_termination)47F_I386(__intrinsic_abnormal_termination)
48F_NON_ARM64(__intrinsic_setjmp)48F_NON_ARM64(__intrinsic_setjmp)
49F_NON_ARM64(_setjmp == __intrinsic_setjmp)
49F64(__intrinsic_setjmpex)50F64(__intrinsic_setjmpex)
51F64(_setjmpex == __intrinsic_setjmpex)
50__processing_throw52__processing_throw
51__report_gsfailure53__report_gsfailure
52__std_exception_copy54__std_exception_copy
lib/libc/mingw/lib-common/api-ms-win-crt-runtime-l1-1-0.def.in+2-1
...@@ -24,7 +24,7 @@ __threadid...@@ -24,7 +24,7 @@ __threadid
24__wcserror24__wcserror
25__wcserror_s25__wcserror_s
26; DATA set manually26; DATA set manually
27_assert27__msvcrt_assert DATA == _assert ; mingw-w64 provides _assert() function as wrapper around renamed __msvcrt_assert symbol
28_beginthread28_beginthread
29_beginthreadex29_beginthreadex
30_c_exit30_c_exit
...@@ -73,6 +73,7 @@ _register_thread_local_exe_atexit_callback...@@ -73,6 +73,7 @@ _register_thread_local_exe_atexit_callback
73_resetstkoflw73_resetstkoflw
74_seh_filter_dll74_seh_filter_dll
75_seh_filter_exe75_seh_filter_exe
76_XcptFilter == _seh_filter_exe
76_set_abort_behavior77_set_abort_behavior
77_set_app_type78_set_app_type
78__set_app_type == _set_app_type79__set_app_type == _set_app_type
lib/libc/mingw/lib-common/api-ms-win-crt-stdio-l1-1-0.def+11
...@@ -25,12 +25,14 @@ __stdio_common_vswprintf_s...@@ -25,12 +25,14 @@ __stdio_common_vswprintf_s
25__stdio_common_vswscanf25__stdio_common_vswscanf
26_chsize26_chsize
27chsize == _chsize27chsize == _chsize
28ftruncate == _chsize
28_chsize_s29_chsize_s
29_close30_close
30close == _close31close == _close
31_commit32_commit
32_creat33_creat
33creat == _creat34creat == _creat
35creat64 == _creat
34_dup36_dup
35dup == _dup37dup == _dup
36_dup238_dup2
...@@ -63,10 +65,12 @@ _fread_nolock...@@ -63,10 +65,12 @@ _fread_nolock
63_fread_nolock_s65_fread_nolock_s
64_fseek_nolock66_fseek_nolock
65_fseeki6467_fseeki64
68fseeko64 == _fseeki64
66_fseeki64_nolock69_fseeki64_nolock
67_fsopen70_fsopen
68_ftell_nolock71_ftell_nolock
69_ftelli6472_ftelli64
73ftello64 == _ftelli64
70_ftelli64_nolock74_ftelli64_nolock
71_fwrite_nolock75_fwrite_nolock
72_get_fmode76_get_fmode
...@@ -91,11 +95,13 @@ _locking...@@ -91,11 +95,13 @@ _locking
91_lseek95_lseek
92lseek == _lseek96lseek == _lseek
93_lseeki6497_lseeki64
98lseek64 == _lseeki64
94_mktemp99_mktemp
95mktemp == _mktemp100mktemp == _mktemp
96_mktemp_s101_mktemp_s
97_open102_open
98open == _open103open == _open
104open64 == _open
99_open_osfhandle105_open_osfhandle
100_pclose106_pclose
101pclose == _pclose107pclose == _pclose
...@@ -160,6 +166,7 @@ fgets...@@ -160,6 +166,7 @@ fgets
160fgetwc166fgetwc
161fgetws167fgetws
162fopen168fopen
169fopen64 == fopen
163fopen_s170fopen_s
164fputc171fputc
165fputs172fputs
...@@ -168,11 +175,14 @@ fputws...@@ -168,11 +175,14 @@ fputws
168fread175fread
169fread_s176fread_s
170freopen177freopen
178freopen64 == freopen
171freopen_s179freopen_s
172fseek180fseek
181fseeko == fseek
173fsetpos182fsetpos
174fsetpos64 == fsetpos183fsetpos64 == fsetpos
175ftell184ftell
185ftello == ftell
176fwrite186fwrite
177getc187getc
178getchar188getchar
...@@ -189,6 +199,7 @@ rewind...@@ -189,6 +199,7 @@ rewind
189setbuf199setbuf
190setvbuf200setvbuf
191tmpfile201tmpfile
202tmpfile64 == tmpfile
192tmpfile_s203tmpfile_s
193tmpnam204tmpnam
194tmpnam_s205tmpnam_s
lib/libc/mingw/lib-common/api-ms-win-crt-string-l1-1-0.def+2-2
...@@ -147,7 +147,7 @@ iswalpha...@@ -147,7 +147,7 @@ iswalpha
147iswascii147iswascii
148iswblank148iswblank
149iswcntrl149iswcntrl
150iswctype150__msvcrt_iswctype DATA == iswctype ; mingw-w64 provides real iswctype as a wrapper around renamed __msvcrt_iswctype
151iswdigit151iswdigit
152iswgraph152iswgraph
153iswlower153iswlower
...@@ -183,7 +183,7 @@ strtok_s...@@ -183,7 +183,7 @@ strtok_s
183strxfrm183strxfrm
184tolower184tolower
185toupper185toupper
186towctrans186__msvcrt_towctrans DATA == towctrans ; mingw-w64 provides real towctrans as a wrapper around renamed __msvcrt_towctrans
187towlower187towlower
188towupper188towupper
189wcscat189wcscat
lib/libc/mingw/lib-common/kernel32.def.in+7
...@@ -203,6 +203,8 @@ CreateActCtxWWorker...@@ -203,6 +203,8 @@ CreateActCtxWWorker
203CreateBoundaryDescriptorA203CreateBoundaryDescriptorA
204CreateBoundaryDescriptorW204CreateBoundaryDescriptorW
205CreateConsoleScreenBuffer205CreateConsoleScreenBuffer
206CreateDirectory2A
207CreateDirectory2W
206CreateDirectoryA208CreateDirectoryA
207CreateDirectoryExA209CreateDirectoryExA
208CreateDirectoryExW210CreateDirectoryExW
...@@ -217,6 +219,7 @@ CreateEventW...@@ -217,6 +219,7 @@ CreateEventW
217CreateFiber219CreateFiber
218CreateFiberEx220CreateFiberEx
219CreateFile2221CreateFile2
222CreateFile3
220CreateFileA223CreateFileA
221CreateFileMappingA224CreateFileMappingA
222CreateFileMappingFromApp225CreateFileMappingFromApp
...@@ -302,6 +305,8 @@ DeleteAtom...@@ -302,6 +305,8 @@ DeleteAtom
302DeleteBoundaryDescriptor305DeleteBoundaryDescriptor
303DeleteCriticalSection306DeleteCriticalSection
304DeleteFiber307DeleteFiber
308DeleteFile2A
309DeleteFile2W
305DeleteFileA310DeleteFileA
306DeleteFileTransactedA311DeleteFileTransactedA
307DeleteFileTransactedW312DeleteFileTransactedW
...@@ -1290,6 +1295,8 @@ ReleaseSRWLockExclusive...@@ -1290,6 +1295,8 @@ ReleaseSRWLockExclusive
1290ReleaseSRWLockShared1295ReleaseSRWLockShared
1291ReleaseSemaphore1296ReleaseSemaphore
1292ReleaseSemaphoreWhenCallbackReturns1297ReleaseSemaphoreWhenCallbackReturns
1298RemoveDirectory2A
1299RemoveDirectory2W
1293RemoveDirectoryA1300RemoveDirectoryA
1294RemoveDirectoryTransactedA1301RemoveDirectoryTransactedA
1295RemoveDirectoryTransactedW1302RemoveDirectoryTransactedW
lib/libc/mingw/lib-common/ntdll.def.in+7-7
...@@ -228,7 +228,7 @@ LdrSetMUICacheType...@@ -228,7 +228,7 @@ LdrSetMUICacheType
228LdrShutdownProcess228LdrShutdownProcess
229LdrShutdownThread229LdrShutdownThread
230LdrStandardizeSystemPath230LdrStandardizeSystemPath
231LdrSystemDllInitBlock F_ARM_ANY(DATA)231LdrSystemDllInitBlock DATA
232LdrUnloadAlternateResourceModule232LdrUnloadAlternateResourceModule
233LdrUnloadAlternateResourceModuleEx233LdrUnloadAlternateResourceModuleEx
234LdrUnloadDll234LdrUnloadDll
...@@ -455,7 +455,7 @@ NtLoadDriver...@@ -455,7 +455,7 @@ NtLoadDriver
455NtLoadEnclaveData455NtLoadEnclaveData
456NtLoadKey456NtLoadKey
457NtLoadKey2457NtLoadKey2
458F_ARM_ANY(NtLoadKey3)458NtLoadKey3
459NtLoadKeyEx459NtLoadKeyEx
460NtLockFile460NtLockFile
461NtLockProductActivationKeys461NtLockProductActivationKeys
...@@ -1643,8 +1643,8 @@ F_X86_ANY(RtlUTF8StringToUnicodeString)...@@ -1643,8 +1643,8 @@ F_X86_ANY(RtlUTF8StringToUnicodeString)
1643RtlUTF8ToUnicodeN1643RtlUTF8ToUnicodeN
1644RtlUdiv1281644RtlUdiv128
1645F_X64(RtlUmsThreadYield)1645F_X64(RtlUmsThreadYield)
1646F_ARM_ANY(RtlUlongByteSwap)1646F_ARM_NATIVE(RtlUlongByteSwap)
1647F_ARM_ANY(RtlUlonglongByteSwap)1647F_ARM_NATIVE(RtlUlonglongByteSwap)
1648RtlUnhandledExceptionFilter1648RtlUnhandledExceptionFilter
1649RtlUnhandledExceptionFilter21649RtlUnhandledExceptionFilter2
1650RtlUnicodeStringToAnsiSize1650RtlUnicodeStringToAnsiSize
...@@ -1690,7 +1690,7 @@ RtlUpperString...@@ -1690,7 +1690,7 @@ RtlUpperString
1690F_X86_ANY(RtlUsageHeap)1690F_X86_ANY(RtlUsageHeap)
1691RtlUserFiberStart1691RtlUserFiberStart
1692RtlUserThreadStart1692RtlUserThreadStart
1693F_ARM_ANY(RtlUshortByteSwap)1693F_ARM_NATIVE(RtlUshortByteSwap)
1694RtlValidAcl1694RtlValidAcl
1695RtlValidProcessProtection1695RtlValidProcessProtection
1696RtlValidRelativeSecurityDescriptor1696RtlValidRelativeSecurityDescriptor
...@@ -1758,7 +1758,7 @@ RtlpConvertRelativeToAbsoluteSecurityAttribute...@@ -1758,7 +1758,7 @@ RtlpConvertRelativeToAbsoluteSecurityAttribute
1758RtlpCreateProcessRegistryInfo1758RtlpCreateProcessRegistryInfo
1759RtlpEnsureBufferSize1759RtlpEnsureBufferSize
1760F_X64(RtlpExecuteUmsThread)1760F_X64(RtlpExecuteUmsThread)
1761RtlpFreezeTimeBias F_ARM_ANY(DATA)1761RtlpFreezeTimeBias DATA
1762RtlpGetDeviceFamilyInfoEnum1762RtlpGetDeviceFamilyInfoEnum
1763RtlpGetLCIDFromLangInfoNode1763RtlpGetLCIDFromLangInfoNode
1764RtlpGetNameFromLangInfoNode1764RtlpGetNameFromLangInfoNode
...@@ -2114,7 +2114,7 @@ ZwLoadDriver...@@ -2114,7 +2114,7 @@ ZwLoadDriver
2114ZwLoadEnclaveData2114ZwLoadEnclaveData
2115ZwLoadKey2115ZwLoadKey
2116ZwLoadKey22116ZwLoadKey2
2117F_ARM_ANY(ZwLoadKey3)2117ZwLoadKey3
2118ZwLoadKeyEx2118ZwLoadKeyEx
2119ZwLockFile2119ZwLockFile
2120ZwLockProductActivationKeys2120ZwLockProductActivationKeys
lib/libc/mingw/lib-common/ntdllcrt.def.in+168-140
...@@ -1,225 +1,253 @@...@@ -1,225 +1,253 @@
1#include "func.def.in"1#include "func.def.in"
22
3LIBRARY "ntdll.dll"3LIBRARY "NTDLL.dll"
4EXPORTS4EXPORTS
5#ifdef __i386__5
6_CIcos6; This is list of symbols available since Windows NT 3.5
7_CIlog7; Windows NT 3.1, Win32s and Win9x versions do not contain any CRT symbol
8_CIpow8F_I386(_CIpow)
9_CIsin9; _abnormal_termination ; removed in Windows NT 3.51
10_CIsqrt10; F_I386(_chkstk)
11#endif11; _except_handler2 ; removed in Windows NT 3.51
12F_NON_I386(__C_specific_handler)
13F_NON_I386(;__chkstk)
14__isascii
15__iscsym
16__iscsymf
17F_X64(__misaligned_access)
18F_ARM32(__jump_unwind)
19__toascii
20#ifdef __i386__
21_alldiv
22_alldvrm@16
23_allmul@16
24_alloca_probe
25_alloca_probe_16
26_alloca_probe_8
27_allrem@16
28_allshl
29_allshr
30#endif
31_atoi64
32#ifdef __i386__
33_aulldiv@16
34_aulldvrm@16
35_aullrem@16
36_aullshr
37;_chkstk
38#endif
39_errno
40F_I386(_except_handler4_common)
41_fltused DATA12_fltused DATA
42#ifdef __i386__13F_I386(_ftol)
43_ftol14; _global_unwind2 ; removed in Windows NT 3.51
44_ftol2
45_ftol2_sse
46#endif
47_i64toa
48_i64toa_s
49_i64tow
50_i64tow_s
51_itoa15_itoa
52_itoa_s16; _local_unwind2 ; removed in Windows NT 3.51
53_itow
54_itow_s
55_lfind
56F64(_local_unwind)
57F_I386(_local_unwind4)
58_ltoa17_ltoa
59_ltoa_s
60_ltow
61_ltow_s
62_makepath_s
63_memccpy18_memccpy
64_memicmp19_memicmp
65F_X64(_setjmp)
66F_ARM32(_setjmp)
67F_NON_I386(_setjmpex)
68_snprintf20_snprintf
69_snprintf_s
70_snscanf_s
71_snwprintf21_snwprintf
72_snwprintf_s
73_snwscanf_s
74_splitpath22_splitpath
75_splitpath_s
76_strcmpi23_strcmpi
77_stricmp24_stricmp
78_strlwr25_strlwr
79strlwr == _strlwr26strlwr == _strlwr ; manual alias
80_strlwr_s
81_strnicmp27_strnicmp
82_strnset_s
83_strset_s
84_strupr28_strupr
85_strupr_s
86_swprintf
87F_X86_ANY(_tolower)
88F_X86_ANY(_toupper)
89_ui64toa
90_ui64toa_s
91_ui64tow
92_ui64tow_s
93_ultoa29_ultoa
94_ultoa_s
95_ultow
96_ultow_s
97_vscprintf
98_vscwprintf
99_vsnprintf30_vsnprintf
100_vsnprintf_s
101_vsnwprintf
102_vsnwprintf_s
103_vswprintf
104_wcsicmp31_wcsicmp
105_wcslwr32_wcslwr
106wcslwr == _wcslwr33wcslwr == _wcslwr ; manual alias
107_wcslwr_s
108_wcsnicmp34_wcsnicmp
109_wcsnset_s
110_wcsset_s
111_wcstoi64
112_wcstoui64
113_wcsupr35_wcsupr
114_wcsupr_s
115_wmakepath_s
116_wsplitpath_s
117_wtoi
118_wtoi64
119_wtol
120abs36abs
121atan F_X86_ANY(DATA)37atan F_X86_ANY(DATA) ; replaced by emu
122atan2
123atoi38atoi
124atol39atol
125bsearch
126bsearch_s
127ceil40ceil
128cos F_X86_ANY(DATA)41cos F_X86_ANY(DATA) ; replaced by emu
129fabs F_X86_ANY(DATA)42fabs F_X86_ANY(DATA) ; replaced by emu
130floor F_X86_ANY(DATA)43floor F_X86_ANY(DATA) ; replaced by emu
131isalnum
132isalpha44isalpha
133iscntrl
134isdigit45isdigit
135isgraph
136islower46islower
137isprint47isprint
138ispunct
139isspace48isspace
140isupper49isupper
141iswalnum
142iswalpha50iswalpha
143iswascii
144iswctype51iswctype
145iswdigit
146iswgraph
147iswlower
148iswprint
149iswspace
150iswxdigit
151isxdigit52isxdigit
152labs53labs
153log54log
154F_NON_I386(longjmp)
155mbstowcs55mbstowcs
156memchr56memchr
157memcmp57memcmp
158memcpy58memcpy
159memcpy_s
160memmove59memmove
161memmove_s
162memset60memset
163pow61pow
164qsort62qsort
165qsort_s
166sin63sin
167sprintf64sprintf
168sprintf_s
169sqrt65sqrt
170sscanf66sscanf
171sscanf_s
172strcat67strcat
173strcat_s
174strchr68strchr
175strcmp69strcmp
176strcpy70strcpy
177strcpy_s
178strcspn71strcspn
179strlen72strlen
180strncat73strncat
181strncat_s
182strncmp74strncmp
183strncpy75strncpy
184strncpy_s
185strnlen
186strpbrk76strpbrk
187strrchr77strrchr
188strspn78strspn
189strstr79strstr
190strtok_s
191strtol
192strtoul
193swprintf80swprintf
194swprintf_s
195swscanf_s
196tan81tan
197tolower82tolower
198toupper83toupper
199towlower84towlower
200towupper85towupper
201vsprintf86vsprintf
202vsprintf_s
203vswprintf_s
204wcscat87wcscat
205wcscat_s
206wcschr88wcschr
207wcscmp89wcscmp
208wcscpy90wcscpy
209wcscpy_s
210wcscspn91wcscspn
211wcslen92wcslen
212wcsncat93wcsncat
213wcsncat_s
214wcsncmp94wcsncmp
215wcsncpy95wcsncpy
216wcsncpy_s
217wcsnlen
218wcspbrk96wcspbrk
219wcsrchr97wcsrchr
220wcsspn98wcsspn
221wcsstr99wcsstr
222wcstok_s100; wcstok ; removed in Windows NT 4.0
223wcstol101wcstol
224wcstombs102wcstombs
225wcstoul103wcstoul
104
105; This is list of symbols added in Windows NT 3.51
106F_I386(_alloca_probe)
107
108; This is list of symbols added in Windows NT 4.0
109__isascii
110__iscsym
111__iscsymf
112__toascii
113F_I386(_alldiv@16) ; stdcall
114F_I386(_allmul@16) ; stdcall
115F_I386(_allrem@16) ; stdcall
116F_I386(_allshl)
117F_I386(_allshr)
118_atoi64
119F_I386(_aulldiv@16) ; stdcall
120F_I386(_aullrem@16) ; stdcall
121F_I386(_aullshr)
122_i64toa
123_i64tow
124_itow
125_ltow
126F_X86_ANY(_tolower) ; removed in Windows Vista
127F_X86_ANY(_toupper) ; removed in Windows Vista
128_ultow
129_wtoi
130_wtoi64
131_wtol
132isalnum
133iscntrl
134isgraph
135ispunct
136strtol
137strtoul
138
139; This is list of symbols added in Windows 2000
140_ui64toa
141iswdigit
142iswlower
143iswspace
144iswxdigit
145
146; This is list of symbols added in Windows XP
147F_I386(_CIcos)
148F_I386(_CIlog)
149F_I386(_CIsin)
150F_I386(_CIsqrt)
151F_I386(_alldvrm@16) ; stdcall
152F_I386(_aulldvrm@16) ; stdcall
153_lfind
154_ui64tow
155_vsnwprintf
156bsearch
157
158; This is list of symbols added in Windows Server 2003
159_vscwprintf
160_wcstoui64
161
162; This is list of symbols added in Windows Server 2003 SP1 / Windows XP x64 SP1
163F_NON_I386(__C_specific_handler)
164; F_NON_I386(__chkstk)
165F_X64(__misaligned_access)
166F64(_local_unwind)
167F_NON_I386(F_NON_ARM64(_setjmp))
168F_NON_I386(_setjmpex)
169F_NON_I386(longjmp)
170
171; This is list of symbols added in Windows Vista
172F_I386(_alloca_probe_16)
173F_I386(_alloca_probe_8)
174_swprintf
175_vswprintf
176
177; This is list of symbols added in Windows 7
178_i64toa_s
179_i64tow_s
180_itoa_s
181_itow_s
182_ltoa_s
183_ltow_s
184_makepath_s
185_snprintf_s
186_snscanf_s
187_snwprintf_s
188_snwscanf_s
189_splitpath_s
190_strnset_s
191_strset_s
192_ui64toa_s
193_ui64tow_s
194_ultoa_s
195_ultow_s
196_vsnprintf_s
197_vsnwprintf_s
198_wcsnset_s
199_wcsset_s
200_wmakepath_s
201_wsplitpath_s
202memcpy_s
203memmove_s
204sprintf_s
205sscanf_s
206strcat_s
207strcpy_s
208strncat_s
209strncpy_s
210strnlen
211strtok_s
212swprintf_s
213swscanf_s
214vsprintf_s
215vswprintf_s
216wcscat_s
217wcscpy_s
218wcsncat_s
219wcsncpy_s
220wcsnlen
221
222; This is list of symbols added in Windows 8
223F_ARM32(__jump_unwind)
224_errno
225F_I386(_except_handler4_common)
226F_I386(_ftol2)
227F_I386(_ftol2_sse)
228F_I386(_local_unwind4)
229_strlwr_s
230_strupr_s
231_wcslwr_s
232_wcstoi64
233_wcsupr_s
234iswalnum
235iswascii
236iswgraph
237iswprint
238qsort_s
239wcstok_s
240
241; This is list of symbols added in Windows 10 (Threshold / 1507)
242atan2
243
244; This is list of symbols added in Windows 10 Creators Update (Redstone 2 / 1703)
245bsearch_s
246
247; This is list of symbols added in Windows 10 Fall Creators Update (Redstone 3 / 1709)
248_vscprintf
249
250; This is list of symbols added in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version)
251; _libm_sse2_cos_precise
252; _libm_sse2_sin_precise
253; _libm_sse2_sqrt_precise
lib/libc/mingw/lib-common/oleacc.def+10-5
...@@ -1,10 +1,13 @@...@@ -1,10 +1,13 @@
1;1;
2; Definition file of OLEACC.dll2; Definition file of OLEACC.dll
3; Automatic generated by gendef3; Automatic generated by gendef 1.1
4; written by Kai Tietz 2008-20144; written by Kai Tietz 2008
5; The def file has to be processed by --kill-at (-k) option of dlltool or ld
5;6;
6LIBRARY "OLEACC.dll"7LIBRARY "OLEACC.dll"
7EXPORTS8EXPORTS
9;DllRegisterServer
10;DllUnregisterServer
8AccGetRunningUtilityState11AccGetRunningUtilityState
9AccNotifyTouchInteraction12AccNotifyTouchInteraction
10AccSetRunningUtilityState13AccSetRunningUtilityState
...@@ -16,15 +19,17 @@ AccessibleObjectFromWindowTimeout...@@ -16,15 +19,17 @@ AccessibleObjectFromWindowTimeout
16CreateStdAccessibleObject19CreateStdAccessibleObject
17CreateStdAccessibleProxyA20CreateStdAccessibleProxyA
18CreateStdAccessibleProxyW21CreateStdAccessibleProxyW
22;DllCanUnloadNow
23;DllGetClassObject
19GetOleaccVersionInfo24GetOleaccVersionInfo
20GetProcessHandleFromHwnd25GetProcessHandleFromHwnd
21GetRoleTextA26GetRoleTextA
22GetRoleTextW27GetRoleTextW
23GetStateTextA28GetStateTextA
24GetStateTextW29GetStateTextW
25IID_IAccessible30;IID_IAccessible DATA
26IID_IAccessibleHandler31;IID_IAccessibleHandler DATA
27LIBID_Accessibility32;LIBID_Accessibility DATA
28LresultFromObject33LresultFromObject
29ObjectFromLresult34ObjectFromLresult
30PropMgrClient_LookupProp35PropMgrClient_LookupProp
lib/libc/mingw/lib-common/ucrtbase-common.def.in+9-9
...@@ -75,8 +75,8 @@ _IsExceptionObjectToBeDestroyed...@@ -75,8 +75,8 @@ _IsExceptionObjectToBeDestroyed
75_LCbuild75_LCbuild
76_LCmulcc76_LCmulcc
77_LCmulcr77_LCmulcr
78F_I386(_NLG_Dispatch2@4)78F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4)
79F_I386(_NLG_Return@12)79F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12)
80F_I386(_NLG_Return2)80F_I386(_NLG_Return2)
81F_X64(_SetImageBase)81F_X64(_SetImageBase)
82F_X64(_SetThrowImageBase)82F_X64(_SetThrowImageBase)
...@@ -246,7 +246,7 @@ _aligned_realloc...@@ -246,7 +246,7 @@ _aligned_realloc
246F_DEBUG(_aligned_realloc_dbg)246F_DEBUG(_aligned_realloc_dbg)
247_aligned_recalloc247_aligned_recalloc
248F_DEBUG(_aligned_recalloc_dbg)248F_DEBUG(_aligned_recalloc_dbg)
249_assert249__msvcrt_assert DATA == _assert ; mingw-w64 provides _assert() function as wrapper around renamed __msvcrt_assert symbol
250_atodbl250_atodbl
251_atodbl_l251_atodbl_l
252_atof_l252_atof_l
...@@ -1656,7 +1656,7 @@ _o_exp2f...@@ -1656,7 +1656,7 @@ _o_exp2f
1656F_LD64(_o_exp2l) ; Can't use long double functions from the CRT on x861656F_LD64(_o_exp2l) ; Can't use long double functions from the CRT on x86
1657F_NON_I386(_o_expf)1657F_NON_I386(_o_expf)
1658_o_fabs1658_o_fabs
1659F_ARM_ANY(_o_fabsf)1659F_ARM_NATIVE(_o_fabsf)
1660_o_fclose1660_o_fclose
1661_o_feof1661_o_feof
1662_o_ferror1662_o_ferror
...@@ -2233,7 +2233,7 @@ atol...@@ -2233,7 +2233,7 @@ atol
2233atoll2233atoll
2234bsearch2234bsearch
2235bsearch_s2235bsearch_s
2236btowc2236; btowc ; replaced for consistency with wctob
2237c16rtomb2237c16rtomb
2238c32rtomb2238c32rtomb
2239cabs2239cabs
...@@ -2338,7 +2338,7 @@ expm1...@@ -2338,7 +2338,7 @@ expm1
2338expm1f2338expm1f
2339F_LD64(expm1l) ; Can't use long double functions from the CRT on x862339F_LD64(expm1l) ; Can't use long double functions from the CRT on x86
2340fabs2340fabs
2341F_ARM_ANY(fabsf)2341F_ARM_NATIVE(fabsf)
2342fclose2342fclose
2343fdim2343fdim
2344fdimf2344fdimf
...@@ -2424,7 +2424,7 @@ iswalpha...@@ -2424,7 +2424,7 @@ iswalpha
2424iswascii2424iswascii
2425iswblank2425iswblank
2426iswcntrl2426iswcntrl
2427iswctype2427__msvcrt_iswctype DATA == iswctype ; mingw-w64 provides real iswctype as a wrapper around renamed __msvcrt_iswctype
2428iswdigit2428iswdigit
2429iswgraph2429iswgraph
2430iswlower2430iswlower
...@@ -2609,7 +2609,7 @@ tmpnam...@@ -2609,7 +2609,7 @@ tmpnam
2609tmpnam_s2609tmpnam_s
2610tolower2610tolower
2611toupper2611toupper
2612towctrans2612__msvcrt_towctrans DATA == towctrans ; mingw-w64 provides real towctrans as a wrapper around renamed __msvcrt_towctrans
2613towlower2613towlower
2614towupper2614towupper
2615trunc2615trunc
...@@ -2656,7 +2656,7 @@ wcstoul...@@ -2656,7 +2656,7 @@ wcstoul
2656wcstoull2656wcstoull
2657wcstoumax2657wcstoumax
2658wcsxfrm2658wcsxfrm
2659wctob2659; wctob ; replaced, CRT version may sign-extend its return value
2660wctomb2660wctomb
2661wctomb_s2661wctomb_s
2662wctrans2662wctrans
lib/libc/mingw/lib-common/vcruntime140-common.def.in+2-2
...@@ -4,8 +4,8 @@ F_NON_I386(_CxxThrowException)...@@ -4,8 +4,8 @@ F_NON_I386(_CxxThrowException)
4F_I386(_EH_prolog)4F_I386(_EH_prolog)
5_FindAndUnlinkFrame5_FindAndUnlinkFrame
6_IsExceptionObjectToBeDestroyed6_IsExceptionObjectToBeDestroyed
7F_I386(_NLG_Dispatch2@4)7F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4)
8F_I386(_NLG_Return@12)8F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12)
9F_I386(_NLG_Return2)9F_I386(_NLG_Return2)
10_SetWinRTOutOfMemoryExceptionCallback10_SetWinRTOutOfMemoryExceptionCallback
11__AdjustPointer11__AdjustPointer
lib/libc/mingw/lib32/advapi32.def+843-653
...@@ -1,369 +1,80 @@...@@ -1,369 +1,80 @@
1;
2; Definition file of ADVAPI32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ADVAPI32.dll"1LIBRARY "ADVAPI32.dll"
7EXPORTS2EXPORTS
8ord_1000@8 @10003
9I_ScGetCurrentGroupStateW@124; This file is a comprehensive documentation for 32-bit x86 advapi32.dll symbols.
10A_SHAFinal@85; It covers all 3 platforms (Win32s, Win9x and WinNT) and contains information
11A_SHAInit@46; from native advapi32.dll libraries on 32-bit Windows systems and also from
12A_SHAUpdate@127; 32-bit WoW64 advapi32.dll libraries on 64-bit Windows systems. Symbols in this
8; file are ordered by increasing Windows version in which they were introduced.
9; First are Win32s versions, then followed by Win9x versions and then WinNT
10; because logically Win32s symbols are a subset of Win9x symbols which are a
11; subset of WinNT symbols. Comments contains additional information with exceptions.
12;
13; BEWARE that this file contains only information about symbol availability and
14; whether it is possible to load an application or library which references these
15; symbols. It does not contain information if the particular Windows version
16; supports or implements corresponding API functions. Lots of -W functions are
17; unimplemented on Win32s and Win9x platforms and simply signal
18; ERROR_CALL_NOT_IMPLEMENTED.
19
20; This is list of symbols available in all Windows versions (Win32s since Win32s 1.1;
21; Win9x since Windows 95; WinNT since Windows NT 3.1)
13AbortSystemShutdownA@422AbortSystemShutdownA@4
14AbortSystemShutdownW@423AbortSystemShutdownW@4
15AccessCheck@3224AccessCheck@32
16AccessCheckAndAuditAlarmA@4425AccessCheckAndAuditAlarmA@44
17AccessCheckAndAuditAlarmW@4426AccessCheckAndAuditAlarmW@44
18AccessCheckByType@44
19AccessCheckByTypeAndAuditAlarmA@64
20AccessCheckByTypeAndAuditAlarmW@64
21AccessCheckByTypeResultList@44
22AccessCheckByTypeResultListAndAuditAlarmA@64
23AccessCheckByTypeResultListAndAuditAlarmByHandleA@68
24AccessCheckByTypeResultListAndAuditAlarmByHandleW@68
25AccessCheckByTypeResultListAndAuditAlarmW@64
26AddAccessAllowedAce@1627AddAccessAllowedAce@16
27AddAccessAllowedAceEx@20
28AddAccessAllowedObjectAce@28
29AddAccessDeniedAce@1628AddAccessDeniedAce@16
30AddAccessDeniedAceEx@20
31AddAccessDeniedObjectAce@28
32AddAce@2029AddAce@20
33AddAuditAccessAce@2430AddAuditAccessAce@24
34AddAuditAccessAceEx@28
35AddAuditAccessObjectAce@36
36AddConditionalAce@32
37AddMandatoryAce@20
38AddUsersToEncryptedFile@8
39AddUsersToEncryptedFileEx@16
40AdjustTokenGroups@2431AdjustTokenGroups@24
41AdjustTokenPrivileges@2432AdjustTokenPrivileges@24
42AllocateAndInitializeSid@4433AllocateAndInitializeSid@44
43AllocateLocallyUniqueId@434AllocateLocallyUniqueId@4
44AreAllAccessesGranted@835AreAllAccessesGranted@8
45AreAnyAccessesGranted@836AreAnyAccessesGranted@8
46AuditComputeEffectivePolicyBySid@16
47AuditComputeEffectivePolicyByToken@16
48AuditEnumerateCategories@8
49AuditEnumeratePerUserPolicy@4
50AuditEnumerateSubCategories@16
51AuditFree@4
52AuditLookupCategoryGuidFromCategoryId@8
53AuditLookupCategoryIdFromCategoryGuid@8
54AuditLookupCategoryNameA@8
55AuditLookupCategoryNameW@8
56AuditLookupSubCategoryNameA@8
57AuditLookupSubCategoryNameW@8
58AuditQueryGlobalSaclA@8
59AuditQueryGlobalSaclW@8
60AuditQueryPerUserPolicy@16
61AuditQuerySecurity@8
62AuditQuerySystemPolicy@12
63AuditSetGlobalSaclA@8
64AuditSetGlobalSaclW@8
65AuditSetPerUserPolicy@12
66AuditSetSecurity@8
67AuditSetSystemPolicy@8
68BackupEventLogA@837BackupEventLogA@8
69BackupEventLogW@838BackupEventLogW@8
70BaseRegCloseKey@4
71BaseRegCreateKey@32
72BaseRegDeleteKeyEx@16
73BaseRegDeleteValue@8
74BaseRegFlushKey@4
75BaseRegGetVersion@8
76BaseRegLoadKey@12
77BaseRegOpenKey@20
78BaseRegRestoreKey@12
79BaseRegSaveKeyEx@16
80BaseRegSetKeySecurity@12
81BaseRegSetValue@20
82BaseRegUnLoadKey@8
83BuildExplicitAccessWithNameA@20
84BuildExplicitAccessWithNameW@20
85BuildImpersonateExplicitAccessWithNameA@24
86BuildImpersonateExplicitAccessWithNameW@24
87BuildImpersonateTrusteeA@8
88BuildImpersonateTrusteeW@8
89BuildSecurityDescriptorA@36
90BuildSecurityDescriptorW@36
91BuildTrusteeWithNameA@8
92BuildTrusteeWithNameW@8
93BuildTrusteeWithObjectsAndNameA@24
94BuildTrusteeWithObjectsAndNameW@24
95BuildTrusteeWithObjectsAndSidA@20
96BuildTrusteeWithObjectsAndSidW@20
97BuildTrusteeWithSidA@8
98BuildTrusteeWithSidW@8
99CancelOverlappedAccess@4
100ChangeServiceConfig2A@12
101ChangeServiceConfig2W@12
102ChangeServiceConfigA@4439ChangeServiceConfigA@44
103ChangeServiceConfigW@4440ChangeServiceConfigW@44
104CheckForHiberboot@8
105CheckTokenMembership@12
106ClearEventLogA@841ClearEventLogA@8
107ClearEventLogW@842ClearEventLogW@8
108CloseCodeAuthzLevel@4
109CloseEncryptedFileRaw@4
110CloseEventLog@443CloseEventLog@4
111CloseServiceHandle@444CloseServiceHandle@4
112CloseThreadWaitChainSession@4
113CloseTrace@8
114CommandLineFromMsiDescriptor@12
115ComputeAccessTokenFromCodeAuthzLevel@20
116ControlService@1245ControlService@12
117ControlServiceExA@16
118ControlServiceExW@16
119ControlTraceA@20
120ControlTraceW@20
121ConvertAccessToSecurityDescriptorA@20
122ConvertAccessToSecurityDescriptorW@20
123ConvertSDToStringSDDomainW@28
124ConvertSDToStringSDRootDomainA@24
125ConvertSDToStringSDRootDomainW@24
126ConvertSecurityDescriptorToAccessA@28
127ConvertSecurityDescriptorToAccessNamedA@28
128ConvertSecurityDescriptorToAccessNamedW@28
129ConvertSecurityDescriptorToAccessW@28
130ConvertSecurityDescriptorToStringSecurityDescriptorA@20
131ConvertSecurityDescriptorToStringSecurityDescriptorW@20
132ConvertSidToStringSidA@8
133ConvertSidToStringSidW@8
134ConvertStringSDToSDDomainA@24
135ConvertStringSDToSDDomainW@24
136ConvertStringSDToSDRootDomainA@20
137ConvertStringSDToSDRootDomainW@20
138ConvertStringSecurityDescriptorToSecurityDescriptorA@16
139ConvertStringSecurityDescriptorToSecurityDescriptorW@16
140ConvertStringSidToSidA@8
141ConvertStringSidToSidW@8
142ConvertToAutoInheritPrivateObjectSecurity@24
143CopySid@1246CopySid@12
144CreateCodeAuthzLevel@20
145CreatePrivateObjectSecurity@2447CreatePrivateObjectSecurity@24
146CreatePrivateObjectSecurityEx@32
147CreatePrivateObjectSecurityWithMultipleInheritance@36
148CreateProcessAsUserA@44
149CreateProcessAsUserW@44
150CreateProcessWithLogonW@44
151CreateProcessWithTokenW@36
152CreateRestrictedToken@36
153CreateServiceA@5248CreateServiceA@52
154CreateServiceW@5249CreateServiceW@52
155CreateTraceInstanceId@8
156CreateWellKnownSid@16
157CredBackupCredentials@20
158CredDeleteA@12
159CredDeleteW@12
160CredEncryptAndMarshalBinaryBlob@12
161CredEnumerateA@16
162CredEnumerateW@16
163CredFindBestCredentialA@16
164CredFindBestCredentialW@16
165CredFree@4
166CredGetSessionTypes@8
167CredGetTargetInfoA@12
168CredGetTargetInfoW@12
169CredIsMarshaledCredentialA@4
170CredIsMarshaledCredentialW@4
171CredIsProtectedA@8
172CredIsProtectedW@8
173CredMarshalCredentialA@12
174CredMarshalCredentialW@12
175CredProfileLoaded@0
176CredProfileUnloaded@0
177CredProtectA@24
178CredProtectW@24
179CredReadA@16
180CredReadByTokenHandle@20
181CredReadDomainCredentialsA@16
182CredReadDomainCredentialsW@16
183CredReadW@16
184CredRenameA@16
185CredRenameW@16
186CredRestoreCredentials@16
187CredUnmarshalCredentialA@12
188CredUnmarshalCredentialW@12
189CredUnprotectA@20
190CredUnprotectW@20
191CredWriteA@8
192CredWriteDomainCredentialsA@12
193CredWriteDomainCredentialsW@12
194CredWriteW@8
195CredpConvertCredential@16
196CredpConvertOneCredentialSize@8
197CredpConvertTargetInfo@16
198CredpDecodeCredential@4
199CredpEncodeCredential@4
200CredpEncodeSecret@20
201CryptAcquireContextA@20
202CryptAcquireContextW@20
203CryptContextAddRef@12
204CryptCreateHash@20
205CryptDecrypt@24
206CryptDeriveKey@20
207CryptDestroyHash@4
208CryptDestroyKey@4
209CryptDuplicateHash@16
210CryptDuplicateKey@16
211CryptEncrypt@28
212CryptEnumProviderTypesA@24
213CryptEnumProviderTypesW@24
214CryptEnumProvidersA@24
215CryptEnumProvidersW@24
216CryptExportKey@24
217CryptGenKey@16
218CryptGenRandom@12
219CryptGetDefaultProviderA@20
220CryptGetDefaultProviderW@20
221CryptGetHashParam@20
222CryptGetKeyParam@20
223CryptGetProvParam@20
224CryptGetUserKey@12
225CryptHashData@16
226CryptHashSessionKey@12
227CryptImportKey@24
228CryptReleaseContext@8
229CryptSetHashParam@16
230CryptSetKeyParam@16
231CryptSetProvParam@16
232CryptSetProviderA@8
233CryptSetProviderExA@16
234CryptSetProviderExW@16
235CryptSetProviderW@8
236CryptSignHashA@24
237CryptSignHashW@24
238CryptVerifySignatureA@24
239CryptVerifySignatureW@24
240CveEventWrite@8
241DecryptFileA@8
242DecryptFileW@8
243DeleteAce@850DeleteAce@8
244DeleteService@451DeleteService@4
245DeregisterEventSource@452DeregisterEventSource@4
246DestroyPrivateObjectSecurity@453DestroyPrivateObjectSecurity@4
247DuplicateEncryptionInfoFile@20
248DuplicateToken@1254DuplicateToken@12
249DuplicateTokenEx@24
250ElfBackupEventLogFileA@8
251ElfBackupEventLogFileW@8
252ElfChangeNotify@8
253ElfClearEventLogFileA@8
254ElfClearEventLogFileW@8
255ElfCloseEventLog@4
256ElfDeregisterEventSource@4
257ElfFlushEventLog@4
258ElfNumberOfRecords@8
259ElfOldestRecord@8
260ElfOpenBackupEventLogA@12
261ElfOpenBackupEventLogW@12
262ElfOpenEventLogA@12
263ElfOpenEventLogW@12
264ElfReadEventLogA@28
265ElfReadEventLogW@28
266ElfRegisterEventSourceA@12
267ElfRegisterEventSourceW@12
268ElfReportEventA@48
269ElfReportEventAndSourceW@60
270ElfReportEventW@48
271EnableTrace@24
272EnableTraceEx2@44
273EnableTraceEx@48
274EncryptFileA@4
275EncryptFileW@4
276EncryptedFileKeyInfo@12
277EncryptionDisable@8
278EnumDependentServicesA@2455EnumDependentServicesA@24
279EnumDependentServicesW@2456EnumDependentServicesW@24
280EnumDynamicTimeZoneInformation@8
281EnumServiceGroupW@36
282EnumServicesStatusA@3257EnumServicesStatusA@32
283EnumServicesStatusExA@40
284EnumServicesStatusExW@40
285EnumServicesStatusW@3258EnumServicesStatusW@32
286EnumerateTraceGuids@12
287EnumerateTraceGuidsEx@24
288EqualDomainSid@12
289EqualPrefixSid@859EqualPrefixSid@8
290EqualSid@860EqualSid@8
291EventAccessControl@20
292EventAccessQuery@12
293EventAccessRemove@4
294EventActivityIdControl@8
295EventEnabled@12
296EventProviderEnabled@20
297EventRegister@16
298EventSetInformation@20
299EventUnregister@8
300EventWrite@20
301EventWriteEndScenario@20
302EventWriteEx@40
303EventWriteStartScenario@20
304EventWriteString@24
305EventWriteTransfer@28
306FileEncryptionStatusA@8
307FileEncryptionStatusW@8
308FindFirstFreeAce@861FindFirstFreeAce@8
309FlushEfsCache@4
310FlushTraceA@16
311FlushTraceW@16
312FreeEncryptedFileKeyInfo@4
313FreeEncryptedFileMetadata@4
314FreeEncryptionCertificateHashList@4
315FreeInheritedFromArray@12
316FreeSid@462FreeSid@4
317GetAccessPermissionsForObjectA@36
318GetAccessPermissionsForObjectW@36
319GetAce@1263GetAce@12
320GetAclInformation@1664GetAclInformation@16
321GetAuditedPermissionsFromAclA@16
322GetAuditedPermissionsFromAclW@16
323GetCurrentHwProfileA@4
324GetCurrentHwProfileW@4
325GetDynamicTimeZoneInformationEffectiveYears@12
326GetEffectiveRightsFromAclA@12
327GetEffectiveRightsFromAclW@12
328GetEncryptedFileMetadata@12
329GetEventLogInformation@20
330GetExplicitEntriesFromAclA@12
331GetExplicitEntriesFromAclW@12
332GetFileSecurityA@2065GetFileSecurityA@20
333GetFileSecurityW@2066GetFileSecurityW@20
334GetInformationCodeAuthzLevelW@20
335GetInformationCodeAuthzPolicyW@24
336GetInheritanceSourceA@40
337GetInheritanceSourceW@40
338GetKernelObjectSecurity@2067GetKernelObjectSecurity@20
339GetLengthSid@468GetLengthSid@4
340GetLocalManagedApplicationData@12
341GetLocalManagedApplications@12
342GetManagedApplicationCategories@8
343GetManagedApplications@20
344GetMangledSiteSid@12
345GetMultipleTrusteeA@4
346GetMultipleTrusteeOperationA@4
347GetMultipleTrusteeOperationW@4
348GetMultipleTrusteeW@4
349GetNamedSecurityInfoA@32
350GetNamedSecurityInfoExA@36
351GetNamedSecurityInfoExW@36
352GetNamedSecurityInfoW@32
353GetNumberOfEventLogRecords@869GetNumberOfEventLogRecords@8
354GetOldestEventLogRecord@870GetOldestEventLogRecord@8
355GetOverlappedAccessResults@16
356GetPrivateObjectSecurity@2071GetPrivateObjectSecurity@20
357GetSecurityDescriptorControl@1272GetSecurityDescriptorControl@12
358GetSecurityDescriptorDacl@1673GetSecurityDescriptorDacl@16
359GetSecurityDescriptorGroup@1274GetSecurityDescriptorGroup@12
360GetSecurityDescriptorLength@475GetSecurityDescriptorLength@4
361GetSecurityDescriptorOwner@1276GetSecurityDescriptorOwner@12
362GetSecurityDescriptorRMControl@8
363GetSecurityDescriptorSacl@1677GetSecurityDescriptorSacl@16
364GetSecurityInfo@32
365GetSecurityInfoExA@36
366GetSecurityInfoExW@36
367GetServiceDisplayNameA@1678GetServiceDisplayNameA@16
368GetServiceDisplayNameW@1679GetServiceDisplayNameW@16
369GetServiceKeyNameA@1680GetServiceKeyNameA@16
...@@ -372,65 +83,20 @@ GetSidIdentifierAuthority@4...@@ -372,65 +83,20 @@ GetSidIdentifierAuthority@4
372GetSidLengthRequired@483GetSidLengthRequired@4
373GetSidSubAuthority@884GetSidSubAuthority@8
374GetSidSubAuthorityCount@485GetSidSubAuthorityCount@4
375GetStringConditionFromBinary@16
376GetSiteDirectoryA@12
377GetSiteDirectoryW@12
378GetSiteNameFromSid@8
379GetSiteSidFromToken@4
380GetSiteSidFromUrl@4
381GetThreadWaitChain@28
382GetTokenInformation@2086GetTokenInformation@20
383GetTraceEnableFlags@8
384GetTraceEnableLevel@8
385GetTraceLoggerHandle@4
386GetTrusteeFormA@4
387GetTrusteeFormW@4
388GetTrusteeNameA@4
389GetTrusteeNameW@4
390GetTrusteeTypeA@4
391GetTrusteeTypeW@4
392GetUserNameA@887GetUserNameA@8
393GetUserNameW@888GetUserNameW@8
394GetWindowsAccountDomainSid@12
395I_QueryTagInformation@12
396I_ScIsSecurityProcess@0
397I_ScPnPGetServiceName@12
398I_ScQueryServiceConfig@12
399I_ScSendPnPMessage@24
400I_ScSendTSMessage@16
401I_ScSetServiceBitsA@20
402I_ScSetServiceBitsW@20
403I_ScValidatePnPService@12
404IdentifyCodeAuthzLevelW@16
405ImpersonateAnonymousToken@4
406ImpersonateLoggedOnUser@4
407ImpersonateNamedPipeClient@489ImpersonateNamedPipeClient@4
408ImpersonateSelf@490ImpersonateSelf@4
409InitializeAcl@1291InitializeAcl@12
410InitializeSecurityDescriptor@892InitializeSecurityDescriptor@8
411InitializeSid@1293InitializeSid@12
412InitiateShutdownA@20
413InitiateShutdownW@20
414InitiateSystemShutdownA@2094InitiateSystemShutdownA@20
415InitiateSystemShutdownExA@24
416InitiateSystemShutdownExW@24
417InitiateSystemShutdownW@2095InitiateSystemShutdownW@20
418InstallApplication@4
419IsProcessRestricted@0
420IsTextUnicode@12
421IsTokenRestricted@4
422IsTokenUntrusted@4
423IsValidAcl@496IsValidAcl@4
424IsValidRelativeSecurityDescriptor@12
425IsValidSecurityDescriptor@497IsValidSecurityDescriptor@4
426IsValidSid@498IsValidSid@4
427IsWellKnownSid@8
428LockServiceDatabase@499LockServiceDatabase@4
429LogonUserA@24
430LogonUserExA@40
431LogonUserExExW@44
432LogonUserExW@40
433LogonUserW@24
434LookupAccountNameA@28100LookupAccountNameA@28
435LookupAccountNameW@28101LookupAccountNameW@28
436LookupAccountSidA@28102LookupAccountSidA@28
...@@ -441,115 +107,18 @@ LookupPrivilegeNameA@16...@@ -441,115 +107,18 @@ LookupPrivilegeNameA@16
441LookupPrivilegeNameW@16107LookupPrivilegeNameW@16
442LookupPrivilegeValueA@12108LookupPrivilegeValueA@12
443LookupPrivilegeValueW@12109LookupPrivilegeValueW@12
444LookupSecurityDescriptorPartsA@28
445LookupSecurityDescriptorPartsW@28
446LsaAddAccountRights@16
447LsaAddPrivilegesToAccount@8
448LsaClearAuditLog@4
449LsaClose@4
450LsaConfigureAutoLogonCredentials@0
451LsaCreateAccount@16
452LsaCreateSecret@16
453LsaCreateTrustedDomain@16
454LsaCreateTrustedDomainEx@20
455LsaDelete@4
456LsaDeleteTrustedDomain@8
457LsaDisableUserArso@4
458LsaEnableUserArso@4
459LsaEnumerateAccountRights@16
460LsaEnumerateAccounts@20
461LsaEnumerateAccountsWithUserRight@16
462LsaEnumeratePrivileges@20
463LsaEnumeratePrivilegesOfAccount@8
464LsaEnumerateTrustedDomains@20
465LsaEnumerateTrustedDomainsEx@20
466LsaFreeMemory@4
467LsaGetAppliedCAPIDs@12
468LsaGetDeviceRegistrationInfo@4
469LsaGetQuotasForAccount@8
470LsaGetRemoteUserName@12
471LsaGetSystemAccessAccount@8
472LsaGetUserName@8
473LsaICLookupNames@40
474LsaICLookupNamesWithCreds@48
475LsaICLookupSids@36
476LsaICLookupSidsWithCreds@48
477LsaInvokeTrustScanner@16
478LsaIsUserArsoAllowed@4
479LsaIsUserArsoEnabled@8
480LsaLookupNames2@24
481LsaLookupNames@20
482LsaLookupPrivilegeDisplayName@16
483LsaLookupPrivilegeName@12
484LsaLookupPrivilegeValue@12
485LsaLookupSids2@24
486LsaLookupSids@20
487LsaManageSidNameMapping@12
488LsaNtStatusToWinError@4
489LsaOpenAccount@16
490LsaOpenPolicy@16
491LsaOpenPolicySce@16
492LsaOpenSecret@16
493LsaOpenTrustedDomain@16
494LsaOpenTrustedDomainByName@16
495LsaProfileDeleted@4
496LsaQueryCAPs@16
497LsaQueryDomainInformationPolicy@12
498LsaQueryForestTrustInformation2@16
499LsaQueryForestTrustInformation@12
500LsaQueryInfoTrustedDomain@12
501LsaQueryInformationPolicy@12
502LsaQuerySecret@20
503LsaQuerySecurityObject@12
504LsaQueryTrustedDomainInfo@16
505LsaQueryTrustedDomainInfoByName@16
506LsaRemoveAccountRights@20
507LsaRemovePrivilegesFromAccount@12
508LsaRetrievePrivateData@12
509LsaSetCAPs@12
510LsaSetDomainInformationPolicy@12
511LsaSetForestTrustInformation2@24
512LsaSetForestTrustInformation@20
513LsaSetInformationPolicy@12
514LsaSetInformationTrustedDomain@12
515LsaSetQuotasForAccount@8
516LsaSetSecret@12
517LsaSetSecurityObject@12
518LsaSetSystemAccessAccount@8
519LsaSetTrustedDomainInfoByName@16
520LsaSetTrustedDomainInformation@16
521LsaStorePrivateData@12
522LsaValidateProcUniqueLuid@4
523MD4Final@4
524MD4Init@4
525MD4Update@12
526MD5Final@4
527MD5Init@4
528MD5Update@12
529MSChapSrvChangePassword2@28
530MSChapSrvChangePassword@28
531MakeAbsoluteSD2@8
532MakeAbsoluteSD@44110MakeAbsoluteSD@44
533MakeSelfRelativeSD@12111MakeSelfRelativeSD@12
534MapGenericMask@8112MapGenericMask@8
535NotifyBootConfigStatus@4113NotifyBootConfigStatus@4
536NotifyChangeEventLog@8
537NotifyServiceStatusChange@12
538NotifyServiceStatusChangeA@12
539NotifyServiceStatusChangeW@12
540NpGetUserName@12
541ObjectCloseAuditAlarmA@12114ObjectCloseAuditAlarmA@12
542ObjectCloseAuditAlarmW@12115ObjectCloseAuditAlarmW@12
543ObjectDeleteAuditAlarmA@12
544ObjectDeleteAuditAlarmW@12
545ObjectOpenAuditAlarmA@48116ObjectOpenAuditAlarmA@48
546ObjectOpenAuditAlarmW@48117ObjectOpenAuditAlarmW@48
547ObjectPrivilegeAuditAlarmA@24118ObjectPrivilegeAuditAlarmA@24
548ObjectPrivilegeAuditAlarmW@24119ObjectPrivilegeAuditAlarmW@24
549OpenBackupEventLogA@8120OpenBackupEventLogA@8
550OpenBackupEventLogW@8121OpenBackupEventLogW@8
551OpenEncryptedFileRawA@12
552OpenEncryptedFileRawW@12
553OpenEventLogA@8122OpenEventLogA@8
554OpenEventLogW@8123OpenEventLogW@8
555OpenProcessToken@12124OpenProcessToken@12
...@@ -558,97 +127,28 @@ OpenSCManagerW@12...@@ -558,97 +127,28 @@ OpenSCManagerW@12
558OpenServiceA@12127OpenServiceA@12
559OpenServiceW@12128OpenServiceW@12
560OpenThreadToken@16129OpenThreadToken@16
561OpenThreadWaitChainSession@8
562OpenTraceA@4
563OpenTraceW@4
564OperationEnd@4
565OperationStart@4
566PerfAddCounters@12
567PerfCloseQueryHandle@4
568PerfCreateInstance@16
569PerfDecrementULongCounterValue@16
570PerfDecrementULongLongCounterValue@20
571PerfDeleteCounters@12
572PerfDeleteInstance@8
573PerfEnumerateCounterSet@16
574PerfEnumerateCounterSetInstances@20
575PerfIncrementULongCounterValue@16
576PerfIncrementULongLongCounterValue@20
577PerfOpenQueryHandle@8
578PerfQueryCounterData@16
579PerfQueryCounterInfo@16
580PerfQueryCounterSetRegistrationInfo@28
581PerfQueryInstance@16
582PerfRegCloseKey@4
583PerfRegEnumKey@24
584PerfRegEnumValue@32
585PerfRegQueryInfoKey@44
586PerfRegQueryValue@28
587PerfRegSetValue@24
588PerfSetCounterRefValue@16
589PerfSetCounterSetInfo@12
590PerfSetULongCounterValue@16
591PerfSetULongLongCounterValue@20
592PerfStartProvider@12
593PerfStartProviderEx@12
594PerfStopProvider@4
595PrivilegeCheck@12130PrivilegeCheck@12
596PrivilegedServiceAuditAlarmA@20131PrivilegedServiceAuditAlarmA@20
597PrivilegedServiceAuditAlarmW@20132PrivilegedServiceAuditAlarmW@20
598ProcessIdleTasks@0
599ProcessIdleTasksW@16
600ProcessTrace@16
601QueryAllTracesA@12
602QueryAllTracesW@12
603QueryRecoveryAgentsOnEncryptedFile@8
604QuerySecurityAccessMask@8
605QueryServiceConfig2A@20
606QueryServiceConfig2W@20
607QueryServiceConfigA@16133QueryServiceConfigA@16
608QueryServiceConfigW@16134QueryServiceConfigW@16
609QueryServiceDynamicInformation@12
610QueryServiceLockStatusA@16135QueryServiceLockStatusA@16
611QueryServiceLockStatusW@16136QueryServiceLockStatusW@16
612QueryServiceObjectSecurity@20137QueryServiceObjectSecurity@20
613QueryServiceStatus@8138QueryServiceStatus@8
614QueryServiceStatusEx@20
615QueryTraceA@16
616QueryTraceProcessingHandle@32
617QueryTraceW@16
618QueryUsersOnEncryptedFile@8
619QueryWindows31FilesMigration@4
620ReadEncryptedFileRaw@12
621ReadEventLogA@28139ReadEventLogA@28
622ReadEventLogW@28140ReadEventLogW@28
623RegCloseKey@4141RegCloseKey@4
624RegConnectRegistryA@12142RegConnectRegistryA@12
625RegConnectRegistryExA@16
626RegConnectRegistryExW@16
627RegConnectRegistryW@12143RegConnectRegistryW@12
628RegCopyTreeA@12
629RegCopyTreeW@12
630RegCreateKeyA@12144RegCreateKeyA@12
631RegCreateKeyExA@36145RegCreateKeyExA@36
632RegCreateKeyExW@36146RegCreateKeyExW@36
633RegCreateKeyTransactedA@44
634RegCreateKeyTransactedW@44
635RegCreateKeyW@12147RegCreateKeyW@12
636RegDeleteKeyA@8148RegDeleteKeyA@8
637RegDeleteKeyW@8149RegDeleteKeyW@8
638RegDeleteKeyExA@16
639RegDeleteKeyExW@16
640RegDeleteKeyTransactedA@24
641RegDeleteKeyTransactedW@24
642RegDeleteKeyValueA@12
643RegDeleteKeyValueW@12
644RegDeleteTreeA@8
645RegDeleteTreeW@8
646RegDeleteValueA@8150RegDeleteValueA@8
647RegDeleteValueW@8151RegDeleteValueW@8
648RegDisablePredefinedCache@0
649RegDisablePredefinedCacheEx@0
650RegDisableReflectionKey@4
651RegEnableReflectionKey@4
652RegEnumKeyA@16152RegEnumKeyA@16
653RegEnumKeyExA@32153RegEnumKeyExA@32
654RegEnumKeyExW@32154RegEnumKeyExW@32
...@@ -657,45 +157,26 @@ RegEnumValueA@32...@@ -657,45 +157,26 @@ RegEnumValueA@32
657RegEnumValueW@32157RegEnumValueW@32
658RegFlushKey@4158RegFlushKey@4
659RegGetKeySecurity@16159RegGetKeySecurity@16
660RegGetValueA@28
661RegGetValueW@28
662RegLoadAppKeyA@20
663RegLoadAppKeyW@20
664RegLoadKeyA@12160RegLoadKeyA@12
665RegLoadKeyW@12161RegLoadKeyW@12
666RegLoadMUIStringA@28
667RegLoadMUIStringW@28
668RegNotifyChangeKeyValue@20162RegNotifyChangeKeyValue@20
669RegOpenCurrentUser@8
670RegOpenKeyA@12163RegOpenKeyA@12
671RegOpenKeyExA@20164RegOpenKeyExA@20
672RegOpenKeyExW@20165RegOpenKeyExW@20
673RegOpenKeyTransactedA@28
674RegOpenKeyTransactedW@28
675RegOpenKeyW@12166RegOpenKeyW@12
676RegOpenUserClassesRoot@16
677RegOverridePredefKey@8
678RegQueryInfoKeyA@48167RegQueryInfoKeyA@48
679RegQueryInfoKeyW@48168RegQueryInfoKeyW@48
680RegQueryMultipleValuesA@20
681RegQueryMultipleValuesW@20
682RegQueryReflectionKey@8
683RegQueryValueA@16169RegQueryValueA@16
684RegQueryValueExA@24170RegQueryValueExA@24
685RegQueryValueExW@24171RegQueryValueExW@24
686RegQueryValueW@16172RegQueryValueW@16
687RegRenameKey@12
688RegReplaceKeyA@16173RegReplaceKeyA@16
689RegReplaceKeyW@16174RegReplaceKeyW@16
690RegRestoreKeyA@12175RegRestoreKeyA@12
691RegRestoreKeyW@12176RegRestoreKeyW@12
692RegSaveKeyA@12177RegSaveKeyA@12
693RegSaveKeyExA@16
694RegSaveKeyExW@16
695RegSaveKeyW@12178RegSaveKeyW@12
696RegSetKeySecurity@12179RegSetKeySecurity@12
697RegSetKeyValueA@24
698RegSetKeyValueW@24
699RegSetValueA@20180RegSetValueA@20
700RegSetValueExA@24181RegSetValueExA@24
701RegSetValueExW@24182RegSetValueExW@24
...@@ -704,88 +185,92 @@ RegUnLoadKeyA@8...@@ -704,88 +185,92 @@ RegUnLoadKeyA@8
704RegUnLoadKeyW@8185RegUnLoadKeyW@8
705RegisterEventSourceA@8186RegisterEventSourceA@8
706RegisterEventSourceW@8187RegisterEventSourceW@8
707RegisterIdleTask@16
708RegisterServiceCtrlHandlerA@8188RegisterServiceCtrlHandlerA@8
709RegisterServiceCtrlHandlerExA@12
710RegisterServiceCtrlHandlerExW@12
711RegisterServiceCtrlHandlerW@8189RegisterServiceCtrlHandlerW@8
712RegisterTraceGuidsA@32
713RegisterTraceGuidsW@32
714RegisterWaitChainCOMCallback@8
715RemoteRegEnumKeyWrapper@20
716RemoteRegEnumValueWrapper@28
717RemoteRegQueryInfoKeyWrapper@40
718RemoteRegQueryMultipleValues2Wrapper@24
719RemoteRegQueryMultipleValuesWrapper@20
720RemoteRegQueryValueWrapper@24
721RemoveTraceCallback@4
722RemoveUsersFromEncryptedFile@8
723ReportEventA@36190ReportEventA@36
724ReportEventW@36191ReportEventW@36
725RevertToSelf@0192RevertToSelf@0
726SafeBaseRegGetKeySecurity@16
727SaferCloseLevel@4
728SaferComputeTokenFromLevel@20
729SaferCreateLevel@20
730SaferGetLevelInformation@20
731SaferGetPolicyInformation@24
732SaferIdentifyLevel@16
733SaferRecordEventLogEntry@12
734SaferSetLevelInformation@16
735SaferSetPolicyInformation@20
736SaferiChangeRegistryScope@8
737SaferiCompareTokenLevels@12
738SaferiIsDllAllowed@12
739SaferiIsExecutableFileType@8
740SaferiPopulateDefaultsInRegistry@8
741SaferiRecordEventLogEntry@12
742SaferiSearchMatchingHashRules@24
743SetAclInformation@16193SetAclInformation@16
744SetEncryptedFileMetadata@24
745SetEntriesInAccessListA@24
746SetEntriesInAccessListW@24
747SetEntriesInAclA@16
748SetEntriesInAclW@16
749SetEntriesInAuditListA@24
750SetEntriesInAuditListW@24
751SetFileSecurityA@12194SetFileSecurityA@12
752SetFileSecurityW@12195SetFileSecurityW@12
753SetInformationCodeAuthzLevelW@16
754SetInformationCodeAuthzPolicyW@20
755SetKernelObjectSecurity@12196SetKernelObjectSecurity@12
756SetNamedSecurityInfoA@28
757SetNamedSecurityInfoExA@36
758SetNamedSecurityInfoExW@36
759SetNamedSecurityInfoW@28
760SetPrivateObjectSecurity@20197SetPrivateObjectSecurity@20
761SetPrivateObjectSecurityEx@24
762SetSecurityAccessMask@8
763SetSecurityDescriptorControl@12
764SetSecurityDescriptorDacl@16198SetSecurityDescriptorDacl@16
765SetSecurityDescriptorGroup@12199SetSecurityDescriptorGroup@12
766SetSecurityDescriptorOwner@12200SetSecurityDescriptorOwner@12
767SetSecurityDescriptorRMControl@8
768SetSecurityDescriptorSacl@16201SetSecurityDescriptorSacl@16
769SetSecurityInfo@28
770SetSecurityInfoExA@36
771SetSecurityInfoExW@36
772SetServiceBits@16
773SetServiceObjectSecurity@12202SetServiceObjectSecurity@12
774SetServiceStatus@8203SetServiceStatus@8
775SetThreadToken@8
776SetTokenInformation@16204SetTokenInformation@16
777SetTraceCallback@8
778SetUserFileEncryptionKey@4
779SetUserFileEncryptionKeyEx@16
780StartServiceA@12205StartServiceA@12
781StartServiceCtrlDispatcherA@4206StartServiceCtrlDispatcherA@4
782StartServiceCtrlDispatcherW@4207StartServiceCtrlDispatcherW@4
783StartServiceW@12208StartServiceW@12
784StartTraceA@12209UnlockServiceDatabase@4
785StartTraceW@12210
786SynchronizeWindows31FilesAndWindowsNTRegistry@16211; This is list of symbols added in Win32s 1.20 and available in all Win9x and WinNT versions
787StopTraceA@16212SetThreadToken@8
788StopTraceW@16213
214; This is list of symbols added in Win32s 1.20 and available in all WinNT versions, but not in Win9x
215ElfBackupEventLogFileA@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
216ElfBackupEventLogFileW@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
217ElfChangeNotify@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
218ElfClearEventLogFileA@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
219ElfClearEventLogFileW@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
220ElfCloseEventLog@4 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
221ElfDeregisterEventSource@4 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
222ElfNumberOfRecords@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
223ElfOldestRecord@8 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
224ElfOpenBackupEventLogA@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
225ElfOpenBackupEventLogW@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
226ElfOpenEventLogA@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
227ElfOpenEventLogW@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
228ElfReadEventLogA@28 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
229ElfReadEventLogW@28 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
230ElfRegisterEventSourceA@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
231ElfRegisterEventSourceW@12 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
232ElfReportEventA@48 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
233ElfReportEventW@48 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
234I_ScSetServiceBitsA@20
235I_ScSetServiceBitsW@20
236LsaAddPrivilegesToAccount@8
237LsaClearAuditLog@4
238LsaClose@4
239LsaCreateAccount@16
240LsaCreateSecret@16
241LsaCreateTrustedDomain@16
242LsaDelete@4
243LsaEnumerateAccounts@20
244LsaEnumeratePrivileges@20
245LsaEnumeratePrivilegesOfAccount@8
246LsaEnumerateTrustedDomains@20
247LsaFreeMemory@4
248LsaGetQuotasForAccount@8
249LsaGetSystemAccessAccount@8
250LsaICLookupNames@40 ; Win32s has ABI "LsaICLookupNames@40", Windows NT 3.1-4.0 has ABI "LsaICLookupNames@28", Windows 2000 has ABI "LsaICLookupNames@32", Windows XP and new has ABI "LsaICLookupNames@40"
251LsaICLookupSids@36 ; Win32s has ABI "LsaICLookupSids@36", Windows NT 3.1-4.0 has ABI "LsaICLookupSids@28", Windows 2000 has ABI "LsaICLookupSids@32", Windows XP and new has ABI "LsaICLookupSids@36"
252LsaLookupNames@20
253LsaLookupPrivilegeDisplayName@16
254LsaLookupPrivilegeName@12
255LsaLookupPrivilegeValue@12
256LsaLookupSids@20
257LsaOpenAccount@16
258LsaOpenPolicy@16
259LsaOpenSecret@16
260LsaOpenTrustedDomain@16
261LsaQueryInfoTrustedDomain@12
262LsaQueryInformationPolicy@12
263LsaQuerySecret@20
264LsaQuerySecurityObject@12
265LsaRemovePrivilegesFromAccount@12
266LsaSetInformationPolicy@12
267LsaSetInformationTrustedDomain@12
268LsaSetQuotasForAccount@8
269LsaSetSecret@12
270LsaSetSecurityObject@12
271LsaSetSystemAccessAccount@8
272QueryWindows31FilesMigration@4 ; removed in Windows Server 2003
273SynchronizeWindows31FilesAndWindowsNTRegistry@16 ; removed in Windows Server 2003
789SystemFunction001@12274SystemFunction001@12
790SystemFunction002@12275SystemFunction002@12
791SystemFunction003@8276SystemFunction003@8
...@@ -817,61 +302,766 @@ SystemFunction028@8...@@ -817,61 +302,766 @@ SystemFunction028@8
817SystemFunction029@8302SystemFunction029@8
818SystemFunction030@8303SystemFunction030@8
819SystemFunction031@8304SystemFunction031@8
305
306; This is list of symbols added in Win32s 1.20, available in all Win9x versions and since Windows NT 3.5
307IsTextUnicode@12
308NotifyChangeEventLog@8
309SetServiceBits@16
310
311; This is list of symbols added in Win32s 1.20, available since Windows NT 3.5, but not available in Win9x
820SystemFunction032@8312SystemFunction032@8
821SystemFunction033@8313SystemFunction033@8
822SystemFunction034@12314
823SystemFunction035@4315; This is list of symbols added in Win32s 1.25, available in all Win9x versions and since Windows NT 3.51
824SystemFunction036@8316CreateProcessAsUserA@44
825SystemFunction040@12317CreateProcessAsUserW@44
826SystemFunction041@12318ImpersonateLoggedOnUser@4
827TraceEvent@12319LogonUserA@24
828TraceEventInstance@20320LogonUserW@24
829TraceMessage321
830TraceMessageVa@24322; This is list of symbols added in Win32s 1.25, available since Windows NT 3.51, but not available in Win9x
831TraceQueryInformation@24323LsaAddAccountRights@16
832TraceSetInformation@20324LsaDeleteTrustedDomain@8
833TreeResetNamedSecurityInfoA@44325LsaEnumerateAccountRights@16
834TreeResetNamedSecurityInfoW@44326LsaEnumerateAccountsWithUserRight@16
835TreeSetNamedSecurityInfoA@44327LsaQueryTrustedDomainInfo@16
836TreeSetNamedSecurityInfoW@44328LsaRemoveAccountRights@20
329LsaRetrievePrivateData@12
330LsaSetTrustedDomainInformation@16
331LsaStorePrivateData@12
332
333; This is list of symbols added in Win32s 1.30, available in all Win9x versions and since Windows NT 3.51
334RegQueryMultipleValuesA@20
335RegQueryMultipleValuesW@20
336
337; This is list of symbols added in Win32s 1.30, available since Windows NT 3.51, but not available in Win9x
338LsaNtStatusToWinError@4
339
340;; This is end of Win32s symbols ;;
341
342; This is list of symbols available in all Win9x versions, but not available in Win32s and WinNT
343; RegRemapPreDefKey@8
344
345; This is list of symbols added in Windows 95 OSR2 and also since Windows NT 4.0, but not available in Win32s
346CryptAcquireContextA@20
347CryptCreateHash@20
348CryptDecrypt@24
349CryptDeriveKey@20
350CryptDestroyHash@4
351CryptDestroyKey@4
352CryptEncrypt@28
353CryptExportKey@24
354CryptGenKey@16
355CryptGenRandom@12
356CryptGetHashParam@20
357CryptGetKeyParam@20
358CryptGetProvParam@20
359CryptGetUserKey@12
360CryptHashData@16
361CryptHashSessionKey@12
362CryptImportKey@24
363CryptReleaseContext@8
364CryptSetHashParam@16
365CryptSetKeyParam@16
366CryptSetProvParam@16
367CryptSetProviderA@8
368CryptSignHashA@24
369CryptVerifySignatureA@24
370
371; This is list of symbols added in Windows 98 and also since Windows NT 4.0, but not available in Win32s
372BuildExplicitAccessWithNameA@20
373BuildExplicitAccessWithNameW@20
374BuildImpersonateExplicitAccessWithNameA@24
375BuildImpersonateExplicitAccessWithNameW@24
376BuildImpersonateTrusteeA@8
377BuildImpersonateTrusteeW@8
378BuildSecurityDescriptorA@36
379BuildSecurityDescriptorW@36
380BuildTrusteeWithNameA@8
381BuildTrusteeWithNameW@8
382BuildTrusteeWithSidA@8
383BuildTrusteeWithSidW@8
384CryptAcquireContextW@20
385CryptSetProviderW@8
386CryptSignHashW@24
387CryptVerifySignatureW@24
388DuplicateTokenEx@24
389GetAuditedPermissionsFromAclA@16
390GetAuditedPermissionsFromAclW@16
391GetCurrentHwProfileA@4
392GetCurrentHwProfileW@4
393GetEffectiveRightsFromAclA@12
394GetEffectiveRightsFromAclW@12
395GetExplicitEntriesFromAclA@12
396GetExplicitEntriesFromAclW@12
397GetMultipleTrusteeA@4
398GetMultipleTrusteeOperationA@4
399GetMultipleTrusteeOperationW@4
400GetMultipleTrusteeW@4
401GetNamedSecurityInfoA@32
402GetNamedSecurityInfoW@32
403GetSecurityInfo@32
404GetTrusteeNameA@4
405GetTrusteeNameW@4
406GetTrusteeTypeA@4
407GetTrusteeTypeW@4
408LookupSecurityDescriptorPartsA@28
409LookupSecurityDescriptorPartsW@28
410ObjectDeleteAuditAlarmA@12
411ObjectDeleteAuditAlarmW@12
412SetEntriesInAclA@16
413SetEntriesInAclW@16
414SetNamedSecurityInfoA@28
415SetNamedSecurityInfoW@28
416SetSecurityInfo@28
417
418; This is list of symbols added in Windows 98 and also since Windows NT 4.0 SP4, but not available in Win32s
419CancelOverlappedAccess@4
420ConvertAccessToSecurityDescriptorA@20
421ConvertAccessToSecurityDescriptorW@20
422ConvertSecurityDescriptorToAccessA@28
423ConvertSecurityDescriptorToAccessNamedA@28
424ConvertSecurityDescriptorToAccessNamedW@28
425ConvertSecurityDescriptorToAccessW@28
426GetAccessPermissionsForObjectA@36
427GetAccessPermissionsForObjectW@36
428GetNamedSecurityInfoExA@36
429GetNamedSecurityInfoExW@36
430GetOverlappedAccessResults@16
431GetSecurityInfoExA@36
432GetSecurityInfoExW@36
433SetEntriesInAccessListA@24
434SetEntriesInAccessListW@24
435SetEntriesInAuditListA@24
436SetEntriesInAuditListW@24
437SetNamedSecurityInfoExA@36
438SetNamedSecurityInfoExW@36
439SetSecurityInfoExA@36
440SetSecurityInfoExW@36
837TrusteeAccessToObjectA@24441TrusteeAccessToObjectA@24
838TrusteeAccessToObjectW@24442TrusteeAccessToObjectW@24
839UninstallApplication@8443
840UnlockServiceDatabase@4444; This is list of symbols added in Windows 98 and also since Windows 2000, but not available in Win32s
841UnregisterIdleTask@12445CryptContextAddRef@12
842UnregisterTraceGuids@8446CryptDuplicateHash@16
843UpdateTraceA@16447CryptDuplicateKey@16
844UpdateTraceW@16448CryptEnumProviderTypesA@24
845UsePinForEncryptedFilesA@12449CryptEnumProviderTypesW@24
846UsePinForEncryptedFilesW@12450CryptEnumProvidersA@24
847WaitServiceState@16451CryptEnumProvidersW@24
848WmiCloseBlock@4452CryptGetDefaultProviderA@20
849WmiDevInstToInstanceNameA@16453CryptGetDefaultProviderW@20
850WmiDevInstToInstanceNameW@16454CryptSetProviderExA@16
851WmiEnumerateGuids@8455CryptSetProviderExW@16
852WmiExecuteMethodA@28456
853WmiExecuteMethodW@28457; This is list of symbols added in Windows ME, but not available in Win32s and WinNT
854WmiFileHandleToInstanceNameA@16458; CryptGetLocalKeyLimits@16
855WmiFileHandleToInstanceNameW@16459
856WmiFreeBuffer@4460;; This is end of Win9x symbols ;;
857WmiMofEnumerateResourcesA@12461
858WmiMofEnumerateResourcesW@12462; This is list of symbols (not mentioned in previous sections) added in Windows NT 4.0, but not available in Win32s and Win9x
859WmiNotificationRegistrationA@20463; BuildAccessRequestA@12 ; removed in Windows NT 4.0 SP4
860WmiNotificationRegistrationW@20464; BuildAccessRequestW@12 ; removed in Windows NT 4.0 SP4
861WmiOpenBlock@12465; DenyAccessRightsA@16 ; removed in Windows NT 4.0 SP4
862WmiQueryAllDataA@12466; DenyAccessRightsW@16 ; removed in Windows NT 4.0 SP4
863WmiQueryAllDataMultipleA@16467EnumServiceGroupW@36
864WmiQueryAllDataMultipleW@16468; GetAuditedPermissionsFromSDA@16 ; removed in Windows NT 4.0 SP4
865WmiQueryAllDataW@12469; GetAuditedPermissionsFromSDW@16 ; removed in Windows NT 4.0 SP4
866WmiQueryGuidInformation@8470; GetEffectiveAccessRightsA@16 ; removed in Windows NT 4.0 SP4
867WmiQuerySingleInstanceA@16471; GetEffectiveAccessRightsW@16 ; removed in Windows NT 4.0 SP4
868WmiQuerySingleInstanceMultipleA@20472; GetEffectiveRightsFromSDA@12 ; removed in Windows NT 4.0 SP4
869WmiQuerySingleInstanceMultipleW@20473; GetEffectiveRightsFromSDW@12 ; removed in Windows NT 4.0 SP4
870WmiQuerySingleInstanceW@16474; GetExplicitAccessRightsA@16 ; removed in Windows NT 4.0 SP4
871WmiReceiveNotificationsA@16475; GetExplicitAccessRightsW@16 ; removed in Windows NT 4.0 SP4
872WmiReceiveNotificationsW@16476; GrantAccessRightsA@16 ; removed in Windows NT 4.0 SP4
873WmiSetSingleInstanceA@20477; GrantAccessRightsW@16 ; removed in Windows NT 4.0 SP4
874WmiSetSingleInstanceW@20478I_ScGetCurrentGroupStateW@12
875WmiSetSingleItemA@24479; IsAccessPermittedA@20 ; removed in Windows NT 4.0 SP4
876WmiSetSingleItemW@24480; IsAccessPermittedW@20 ; removed in Windows NT 4.0 SP4
877WriteEncryptedFileRaw@12481LsaGetUserName@8
482; NTAccessMaskToProvAccessRights@12 ; removed in Windows NT 4.0 SP4
483; ProvAccessRightsToNTAccessMask@8 ; removed in Windows NT 4.0 SP4
484; ReplaceAllAccessRightsA@16 ; removed in Windows NT 4.0 SP4
485; ReplaceAllAccessRightsW@16 ; removed in Windows NT 4.0 SP4
486; RevokeExplicitAccessRightsA@16 ; removed in Windows NT 4.0 SP4
487; RevokeExplicitAccessRightsW@16 ; removed in Windows NT 4.0 SP4
488; SetAccessRightsA@16 ; removed in Windows NT 4.0 SP4
489; SetAccessRightsW@16 ; removed in Windows NT 4.0 SP4
490
491; This is list of symbols (not mentioned in previous sections) added in Windows NT 4.0 SP4, but not available in Win32s and Win9x
492EnumServicesStatusExA@40
493EnumServicesStatusExW@40
494LsaGetRemoteUserName@12
495QueryServiceStatusEx@20
496
497; This is list of symbols added in Windows 2000
498AccessCheckByType@44
499AccessCheckByTypeAndAuditAlarmA@64
500AccessCheckByTypeAndAuditAlarmW@64
501AccessCheckByTypeResultList@44
502AccessCheckByTypeResultListAndAuditAlarmA@64
503AccessCheckByTypeResultListAndAuditAlarmByHandleA@68
504AccessCheckByTypeResultListAndAuditAlarmByHandleW@68
505AccessCheckByTypeResultListAndAuditAlarmW@64
506AddAccessAllowedAceEx@20
507AddAccessAllowedObjectAce@28
508AddAccessDeniedAceEx@20
509AddAccessDeniedObjectAce@28
510AddAuditAccessAceEx@28
511AddAuditAccessObjectAce@36
512AddUsersToEncryptedFile@8
513BuildTrusteeWithObjectsAndNameA@24
514BuildTrusteeWithObjectsAndNameW@24
515BuildTrusteeWithObjectsAndSidA@20
516BuildTrusteeWithObjectsAndSidW@20
517ChangeServiceConfig2A@12
518ChangeServiceConfig2W@12
519CheckTokenMembership@12
520CloseEncryptedFileRaw@4
521CloseTrace@8
522CommandLineFromMsiDescriptor@12
523ControlTraceA@20
524ControlTraceW@20
525ConvertSDToStringSDRootDomainA@24
526ConvertSDToStringSDRootDomainW@24
527ConvertSecurityDescriptorToStringSecurityDescriptorA@20
528ConvertSecurityDescriptorToStringSecurityDescriptorW@20
529ConvertSidToStringSidA@8
530ConvertSidToStringSidW@8
531ConvertStringSDToSDRootDomainA@20
532ConvertStringSDToSDRootDomainW@20
533ConvertStringSecurityDescriptorToSecurityDescriptorA@16
534ConvertStringSecurityDescriptorToSecurityDescriptorW@16
535ConvertStringSidToSidA@8
536ConvertStringSidToSidW@8
537ConvertToAutoInheritPrivateObjectSecurity@24
538CreatePrivateObjectSecurityEx@32
539CreateProcessWithLogonW@44
540CreateRestrictedToken@36
541CreateTraceInstanceId@8
542DecryptFileA@8
543DecryptFileW@8
544DuplicateEncryptionInfoFile@20 ; Windows 2000 has ABI "DuplicateEncryptionInfoFile@8", Windows XP and new has ABI "DuplicateEncryptionInfoFile@20"
545EnableTrace@24
546EncryptFileA@4
547EncryptFileW@4
548EncryptionDisable@8
549FileEncryptionStatusA@8
550FileEncryptionStatusW@8
551FreeEncryptionCertificateHashList@4
552GetEventLogInformation@20
553GetLocalManagedApplications@12
554GetManagedApplications@20
555GetMangledSiteSid@12 ; removed in Windows XP
556GetSecurityDescriptorRMControl@8
557GetSiteDirectoryA@12 ; removed in Windows XP
558GetSiteDirectoryW@12 ; removed in Windows XP
559GetSiteNameFromSid@8 ; removed in Windows XP
560GetSiteSidFromToken@4 ; removed in Windows XP
561GetSiteSidFromUrl@4 ; removed in Windows XP
562GetTraceEnableFlags@8
563GetTraceEnableLevel@8
564GetTraceLoggerHandle@4
565GetTrusteeFormA@4
566GetTrusteeFormW@4
567I_ScIsSecurityProcess@0
568I_ScPnPGetServiceName@12
569ImpersonateAnonymousToken@4
570InitiateSystemShutdownExA@24
571InitiateSystemShutdownExW@24
572InstallApplication@4
573; IsInSandbox@0 ; removed in Windows XP
574IsProcessRestricted@0 ; removed in Windows XP
575IsTokenRestricted@4
576LsaCreateTrustedDomainEx@20
577LsaEnumerateTrustedDomainsEx@20
578LsaOpenTrustedDomainByName@16
579LsaQueryDomainInformationPolicy@12
580LsaQueryTrustedDomainInfoByName@16
581LsaSetDomainInformationPolicy@12
582LsaSetTrustedDomainInfoByName@16
583MakeAbsoluteSD2@8
584OpenEncryptedFileRawA@12
585OpenEncryptedFileRawW@12
586OpenTraceA@4
587OpenTraceW@4
588ProcessTrace@16
589QueryAllTracesA@12
590QueryAllTracesW@12
591QueryRecoveryAgentsOnEncryptedFile@8
592QueryServiceConfig2A@20
593QueryServiceConfig2W@20
594QueryUsersOnEncryptedFile@8
595ReadEncryptedFileRaw@12
596RegDisablePredefinedCache@0
597RegOpenCurrentUser@8
598RegOpenUserClassesRoot@16
599RegOverridePredefKey@8
600RegisterServiceCtrlHandlerExA@12
601RegisterServiceCtrlHandlerExW@12
602RegisterTraceGuidsA@32
603RegisterTraceGuidsW@32
604RemoveTraceCallback@4
605RemoveUsersFromEncryptedFile@8
606SetPrivateObjectSecurityEx@24
607SetSecurityDescriptorControl@12
608SetSecurityDescriptorRMControl@8
609SetTraceCallback@8
610SetUserFileEncryptionKey@4
611StartTraceA@12
612StartTraceW@12
613SystemFunction034@12
614SystemFunction035@4
615TraceEvent@12
616TraceEventInstance@20
617UninstallApplication@8 ; Windows 2000 has ABI "UninstallApplication@4", Windows XP and new has ABI "UninstallApplication@8"
618UnregisterTraceGuids@8
619WmiCloseBlock@4
620WmiDevInstToInstanceNameA@16
621WmiDevInstToInstanceNameW@16
622WmiEnumerateGuids@8
623WmiExecuteMethodA@28
624WmiExecuteMethodW@28
625WmiFileHandleToInstanceNameA@16
626WmiFileHandleToInstanceNameW@16
627WmiFreeBuffer@4
628WmiMofEnumerateResourcesA@12
629WmiMofEnumerateResourcesW@12
630WmiNotificationRegistrationA@20
631WmiNotificationRegistrationW@20
632WmiOpenBlock@12
633WmiQueryAllDataA@12
634WmiQueryAllDataW@12
635WmiQueryGuidInformation@8
636WmiQuerySingleInstanceA@16
637WmiQuerySingleInstanceW@16
638WmiSetSingleInstanceA@20
639WmiSetSingleInstanceW@20
640WmiSetSingleItemA@24
641WmiSetSingleItemW@24
642WriteEncryptedFileRaw@12
643
644; In Windows 2000 SP1 there was no new symbol
645
646; This is list of symbols added in Windows 2000 SP2
647EqualDomainSid@12
648
649; This is list of symbols added in Windows 2000 SP3
650CreateWellKnownSid@16
651GetWindowsAccountDomainSid@12
652IsWellKnownSid@8
653LsaOpenPolicySce@16
654SystemFunction040@12
655SystemFunction041@12
656
657; This is list of symbols added in Windows 2000 SP4 and Windows XP SP2 (not available in Windows XP and Windows XP SP1)
658; CreateProcessAsUserSecure@0 ; removed in Windows Server 2003
659ElfFlushEventLog@4 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
660
661; This is list of symbols added in Windows XP
662A_SHAFinal@8
663A_SHAInit@4
664A_SHAUpdate@12
665CloseCodeAuthzLevel@4
666ComputeAccessTokenFromCodeAuthzLevel@20
667ConvertStringSDToSDDomainA@24
668ConvertStringSDToSDDomainW@24
669CreateCodeAuthzLevel@20
670CreatePrivateObjectSecurityWithMultipleInheritance@36
671CredDeleteA@12
672CredDeleteW@12
673CredEnumerateA@16
674CredEnumerateW@16
675CredFree@4
676CredGetSessionTypes@8
677CredGetTargetInfoA@12
678CredGetTargetInfoW@12
679CredIsMarshaledCredentialA@4
680CredIsMarshaledCredentialW@4
681CredMarshalCredentialA@12
682CredMarshalCredentialW@12
683CredProfileLoaded@0
684CredReadA@16
685CredReadDomainCredentialsA@16
686CredReadDomainCredentialsW@16
687CredReadW@16
688CredRenameA@16
689CredRenameW@16
690CredUnmarshalCredentialA@12
691CredUnmarshalCredentialW@12
692CredWriteA@8
693CredWriteDomainCredentialsA@12
694CredWriteDomainCredentialsW@12
695CredWriteW@8
696CredpConvertCredential@16
697CredpConvertTargetInfo@16
698CredpDecodeCredential@4
699CredpEncodeCredential@4
700EncryptedFileKeyInfo@12
701EnumerateTraceGuids@12
702FlushTraceA@16
703FlushTraceW@16
704FreeEncryptedFileKeyInfo@4
705FreeInheritedFromArray@12
706GetInformationCodeAuthzLevelW@20
707GetInformationCodeAuthzPolicyW@24
708GetInheritanceSourceA@40
709GetInheritanceSourceW@40
710GetLocalManagedApplicationData@12
711GetManagedApplicationCategories@8
712I_ScSendTSMessage@16
713IdentifyCodeAuthzLevelW@16
714IsTokenUntrusted@4
715LogonUserExA@40
716LogonUserExW@40
717LsaICLookupNamesWithCreds@48
718LsaICLookupSidsWithCreds@48
719LsaLookupNames2@24
720LsaQueryForestTrustInformation@12
721LsaSetForestTrustInformation@20
722MD4Final@4
723MD4Init@4
724MD4Update@12
725MD5Final@4
726MD5Init@4
727MD5Update@12
728MSChapSrvChangePassword2@28
729MSChapSrvChangePassword@28
730ProcessIdleTasks@0
731QueryTraceA@16
732QueryTraceW@16
733RegSaveKeyExA@16
734RegSaveKeyExW@16
735RegisterIdleTask@16
736SaferCloseLevel@4
737SaferComputeTokenFromLevel@20
738SaferCreateLevel@20
739SaferGetLevelInformation@20
740SaferGetPolicyInformation@24
741SaferIdentifyLevel@16
742SaferRecordEventLogEntry@12
743SaferSetLevelInformation@16
744SaferSetPolicyInformation@20
745SaferiChangeRegistryScope@8
746SaferiCompareTokenLevels@12
747SaferiIsExecutableFileType@8
748SaferiPopulateDefaultsInRegistry@8
749SaferiRecordEventLogEntry@12
750; SaferiReplaceProcessThreadTokens@12 ; removed in Windows 7
751SaferiSearchMatchingHashRules@24
752SetInformationCodeAuthzLevelW@16
753SetInformationCodeAuthzPolicyW@20
754StopTraceA@16
755StopTraceW@16
756SystemFunction036@8
757TraceMessage ; cdecl
758TraceMessageVa@24
759TreeResetNamedSecurityInfoA@44
760TreeResetNamedSecurityInfoW@44
761UnregisterIdleTask@12
762UpdateTraceA@16
763UpdateTraceW@16
764; WdmWmiServiceMain@8 ; removed in Windows Vista
765; WmiGetFirstTraceOffset@4 ; removed in Windows Vista
766; WmiGetTraceHeader@12 ; removed in Windows Vista
767; WmiParseTraceEvent@20 ; removed in Windows Vista
768WmiQueryAllDataMultipleA@16
769WmiQueryAllDataMultipleW@16
770WmiQuerySingleInstanceMultipleA@20
771WmiQuerySingleInstanceMultipleW@20
772WmiReceiveNotificationsA@16
773WmiReceiveNotificationsW@16
774; Wow64Win32ApiEntry@12 ; removed in Windows 7
775
776; This is list of symbols added in Windows XP SP1
777; WmiCloseTraceWithCursor@4 ; removed in Windows Vista
778; WmiConvertTimestamp@12 ; removed in Windows Vista
779; WmiGetNextEvent@4 ; removed in Windows Vista
780; WmiOpenTraceWithCursor@4 ; removed in Windows Vista
781
782; In Windows XP SP2 there was no new symbol
783
784; This is list of symbols added in Windows XP SP3 and Windows Vista (not available in any version of Windows Server 2003)
785RegDisablePredefinedCacheEx@0
786
787; This is list of symbols added in Windows Server 2003
788CreateProcessWithTokenW@36
789
790; This is list of symbols added in Windows Server 2003 SP1 and Windows XP x64 SP1 (WoW64 version)
791ElfReportEventAndSourceW@60 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
792I_QueryTagInformation@12
793RegConnectRegistryExA@16
794RegConnectRegistryExW@16
795RegDeleteKeyExA@16
796RegDeleteKeyExW@16
797RegDisableReflectionKey@4
798RegEnableReflectionKey@4
799RegGetValueA@28
800RegGetValueW@28
801RegQueryReflectionKey@8
802
803; In Windows Server 2003 SP2 and Windows XP x64 SP2 (WoW64 version) there was no new symbol
804
805; This is list of symbols added in Windows Vista
806AddMandatoryAce@20
807AddUsersToEncryptedFileEx@16
808AuditComputeEffectivePolicyBySid@16
809AuditComputeEffectivePolicyByToken@16
810AuditEnumerateCategories@8
811AuditEnumeratePerUserPolicy@4
812AuditEnumerateSubCategories@16
813AuditFree@4
814AuditLookupCategoryGuidFromCategoryId@8
815AuditLookupCategoryIdFromCategoryGuid@8
816AuditLookupCategoryNameA@8
817AuditLookupCategoryNameW@8
818AuditLookupSubCategoryNameA@8
819AuditLookupSubCategoryNameW@8
820AuditQueryPerUserPolicy@16
821AuditQuerySecurity@8
822AuditQuerySystemPolicy@12
823AuditSetPerUserPolicy@12
824AuditSetSecurity@8
825AuditSetSystemPolicy@8
826; CheckAppInitBlockedServiceIdentity@4 ; removed in Windows 7
827CloseThreadWaitChainSession@4
828ControlServiceExA@16
829ControlServiceExW@16
830CredBackupCredentials@20
831CredEncryptAndMarshalBinaryBlob@12
832CredFindBestCredentialA@16
833CredFindBestCredentialW@16
834CredIsProtectedA@8
835CredIsProtectedW@8
836CredProfileUnloaded@0
837CredProtectA@24
838CredProtectW@24
839CredReadByTokenHandle@20
840CredRestoreCredentials@16
841CredUnprotectA@20
842CredUnprotectW@20
843CredpConvertOneCredentialSize@8
844CredpEncodeSecret@20
845EnableTraceEx@48
846EnumerateTraceGuidsEx@24
847EventAccessControl@20
848EventAccessQuery@12
849EventAccessRemove@4
850EventActivityIdControl@8
851EventEnabled@12
852EventProviderEnabled@20
853EventRegister@16
854EventUnregister@8
855EventWrite@20
856EventWriteEndScenario@20
857EventWriteStartScenario@20
858EventWriteString@24
859EventWriteTransfer@28
860FlushEfsCache@4
861FreeEncryptedFileMetadata@4
862GetEncryptedFileMetadata@12
863GetThreadWaitChain@28
864I_ScQueryServiceConfig@12
865I_ScSendPnPMessage@24
866I_ScValidatePnPService@12
867InitiateShutdownA@20
868InitiateShutdownW@20
869IsValidRelativeSecurityDescriptor@12
870LogonUserExExW@44
871LsaManageSidNameMapping@12
872NotifyServiceStatusChange@12
873NotifyServiceStatusChangeA@12
874NotifyServiceStatusChangeW@12
875OpenThreadWaitChainSession@8
876PerfAddCounters@12
877PerfCloseQueryHandle@4
878PerfCreateInstance@16
879PerfDecrementULongCounterValue@16
880PerfDecrementULongLongCounterValue@20
881PerfDeleteCounters@12
882PerfDeleteInstance@8
883PerfEnumerateCounterSet@16
884PerfEnumerateCounterSetInstances@20
885PerfIncrementULongCounterValue@16
886PerfIncrementULongLongCounterValue@20
887PerfOpenQueryHandle@8
888PerfQueryCounterData@16
889PerfQueryCounterInfo@16
890PerfQueryCounterSetRegistrationInfo@28
891PerfQueryInstance@16
892PerfSetCounterRefValue@16
893PerfSetCounterSetInfo@12
894PerfSetULongCounterValue@16
895PerfSetULongLongCounterValue@20
896PerfStartProvider@12
897PerfStartProviderEx@12
898PerfStopProvider@4
899ProcessIdleTasksW@16
900QuerySecurityAccessMask@8
901RegCopyTreeA@12
902RegCopyTreeW@12
903RegCreateKeyTransactedA@44
904RegCreateKeyTransactedW@44
905RegDeleteKeyTransactedA@24
906RegDeleteKeyTransactedW@24
907RegDeleteKeyValueA@12
908RegDeleteKeyValueW@12
909RegDeleteTreeA@8
910RegDeleteTreeW@8
911RegLoadAppKeyA@20
912RegLoadAppKeyW@20
913RegLoadMUIStringA@28
914RegLoadMUIStringW@28
915RegOpenKeyTransactedA@28
916RegOpenKeyTransactedW@28
917RegRenameKey@12
918RegSetKeyValueA@24
919RegSetKeyValueW@24
920RegisterWaitChainCOMCallback@8
921SetEncryptedFileMetadata@24
922SetSecurityAccessMask@8
923SetUserFileEncryptionKeyEx@16
924TreeSetNamedSecurityInfoA@44
925TreeSetNamedSecurityInfoW@44
926UsePinForEncryptedFilesA@12
927UsePinForEncryptedFilesW@12
928
929; In Windows Vista SP1 there was no new symbol
930
931; In Windows Vista SP2 there was no new symbol
932
933; This is list of symbols added in Windows 7
934AddConditionalAce@32
935AuditQueryGlobalSaclA@8
936AuditQueryGlobalSaclW@8
937AuditSetGlobalSaclA@8
938AuditSetGlobalSaclW@8
939EnableTraceEx2@44
940EventWriteEx@40
941SaferiIsDllAllowed@8 ; Windows 7 has ABI "SaferiIsDllAllowed@12", Windows 8 and new has ABI "SaferiIsDllAllowed@8"
942TraceSetInformation@20
943
944; This is list of ordinal-only symbols added in Windows 7
945; Symbol names are taken from:
946; https://www.geoffchappell.com/studies/windows/win32/advapi32/history/ords61.htm
947SaferiRegisterExtensionDll@8 @1000 NONAME
948
949; In Windows 7 SP1 there was no new symbol
950
951; This is list of symbols added in Windows 8
952BaseRegCloseKey@4
953BaseRegCreateKey@32
954BaseRegDeleteKeyEx@16
955BaseRegDeleteValue@8
956BaseRegFlushKey@4
957BaseRegGetVersion@8
958BaseRegLoadKey@12
959BaseRegOpenKey@20
960BaseRegRestoreKey@12
961BaseRegSaveKeyEx@16
962BaseRegSetKeySecurity@12
963BaseRegSetValue@20
964BaseRegUnLoadKey@8
965CheckForHiberboot@8
966ConvertSDToStringSDDomainW@28
967; CredProfileLoadedEx@4
968EnumDynamicTimeZoneInformation@8
969; EtwLogSysConfigExtension@8 ; removed in Windows 10 Anniversary Update (Redstone / 1607)
970EventSetInformation@20
971GetDynamicTimeZoneInformationEffectiveYears@12
972GetStringConditionFromBinary@16
973; I_ScRegisterPreshutdownRestart@8
974LsaGetAppliedCAPIDs@12
975LsaLookupSids2@24
976LsaQueryCAPs@16
977LsaSetCAPs@12
978; MIDL_user_free_Ext@4
979OperationEnd@4
980OperationStart@4
981PerfRegCloseKey@4
982PerfRegEnumKey@24
983PerfRegEnumValue@32
984PerfRegQueryInfoKey@44
985PerfRegQueryValue@28
986PerfRegSetValue@24
987; PsmActivateApplication@12 ; removed in Windows 8.1
988; PsmAdjustActivationToken@24 ; removed in Windows 8.1
989; PsmQueryBackgroundActivationType@8 ; removed in Windows 8.1
990; PsmRegisterApplicationProcess@8 ; removed in Windows 8.1
991QueryServiceDynamicInformation@12
992RemoteRegEnumKeyWrapper@20
993RemoteRegEnumValueWrapper@28
994RemoteRegQueryInfoKeyWrapper@40
995RemoteRegQueryValueWrapper@24
996SafeBaseRegGetKeySecurity@16
997TraceQueryInformation@24
998WaitServiceState@16
999
1000; In Windows 8.1 there was no new symbol
1001
1002; This is list of symbols added in Windows 10 (Threshold / 1507)
1003NpGetUserName@12
1004
1005; This is list of symbols added in Windows 10 November Update (Threshold 2 / 1511)
1006; I_ScReparseServiceDatabase@4
1007; QueryLocalUserServiceName@12
1008; QueryUserServiceName@20
1009
1010; This is list of symbols added in Windows 10 Anniversary Update (Redstone / 1607)
1011CveEventWrite@8
1012
1013; This is list of symbols added in Windows 10 Creators Update (Redstone 2 / 1703)
1014; QueryUserServiceNameForContext@20
1015
1016; This is list of symbols added in Windows 10 Fall Creators Update (Redstone 3 / 1709)
1017; CreateServiceEx@56
1018QueryTraceProcessingHandle@32
1019RemoteRegQueryMultipleValues2Wrapper@24
1020RemoteRegQueryMultipleValuesWrapper@20
1021
1022; In Windows 10 April 2018 Update (Redstone 4 / 1803) there was no new symbol
1023
1024; In Windows 10 October 2018 Update (Redstone 5 / 1809) there was no new symbl
1025
1026; In Windows 10 May 2019 Update (19H1 / 1903) there was no new symbol
1027
1028; In Windows 10 November 2019 Update (19H2 /1909) there was no new symbol
1029
1030; In Windows 10 May 2020 Update (20H1 / 2004) there was no new symbol
1031
1032; In Windows 10 October 2020 Update (20H2) there was no new symbol
1033
1034; In Windows 10 May 2021 Update (21H1) there was no new symbol
1035
1036; In Windows 10 November 2021 Update (21H2) there was no new symbol
1037
1038; This is list of symbols added in Windows 10 2022 Update (22H2) and Windows 11 2022 Update (Sun Valley 2 / 22H2) (WoW64 version) (not available in Windows 11 (Sun Valley / 21H2))
1039LsaInvokeTrustScanner@16
1040LsaQueryForestTrustInformation2@16
1041LsaSetForestTrustInformation2@24
1042
1043; This is list of symbols added in Windows 11 (Sun Valley / 21H2) (WoW64 version)
1044LsaConfigureAutoLogonCredentials@0
1045; LsaDisablePasswordLessCurrentUser@0 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
1046LsaDisableUserArso@4
1047; LsaEnablePasswordLessCurrentUser@0 ; removed in Windows 11 2022 Update (Sun Valley 2 / 22H2)
1048LsaEnableUserArso@4
1049LsaGetDeviceRegistrationInfo@4
1050LsaIsUserArsoAllowed@4
1051LsaIsUserArsoEnabled@8
1052LsaProfileDeleted@4
1053LsaValidateProcUniqueLuid@4
1054
1055; In Windows 11 2022 Update (Sun Valley 2 / 22H2) (WoW64 version) there was no new symbol
1056
1057; In Windows 11 2023 Update (Sun Valley 3 / 23H2) (WoW64 version) there was no new symbol
1058
1059; This is list of symbols added in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version)
1060; LsaIOpenPolicyWithCreds@24 ; removed in Windows 11 2025 Update (Hudson Valley 2 / 25H2)
1061
1062; This is list of symbols added in Windows 11 2025 Update (Hudson Valley 2 / 25H2) (WoW64 version)
1063; LogonSecondaryUserIntoSessionW@20
1064; LsaPurgeLocalSystemAccessTable@0
1065LsaQueryLocalSystemAccess@8
1066LsaQueryLocalSystemAccessAll@4
1067LsaSetLocalSystemAccess@4
lib/libc/mingw/lib32/kernel32.def+1768-1234
...@@ -1,391 +1,100 @@...@@ -1,391 +1,100 @@
1;
2; Definition file of KERNEL32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "KERNEL32.dll"1LIBRARY "KERNEL32.dll"
7EXPORTS2EXPORTS
8BaseThreadInitThunk@43
9InterlockedPushListSList@84; This file is a comprehensive documentation for 32-bit x86 kernel32.dll symbols.
10AcquireSRWLockExclusive@45; It covers all 3 platforms Win32s, Win9x and WinNT and contains information
11AcquireSRWLockShared@46; from native kernel32.dll libraries on 32-bit Windows systems and also from
12ActivateActCtx@87; 32-bit WoW64 kernel32.dll libraries on 64-bit Windows systems. Symbols in this
13ActivateActCtxWorker@88; file are ordered by increasing Windows version in which they were introduced.
14ActivatePackageVirtualizationContext@89; For example symbols added in Windows 98 (which is version 4.10) are after
10; Windows NT 4.0 symbols. Note that some symbols are available in Windows NT 3.1,
11; missing in Windows 98 (4.10), but are again available in Windows 2000 (5.0).
12; This is always mentioned in the header of section which lists symbols.
13;
14; BEWARE that this file contains only information about symbol availability and
15; whether it is possible to load application or library which references symbol.
16; It does not contain information if the particular Windows version supports and
17; implements corresponding API function. Lot of -W functions are unimplemented
18; on Win32s and Win9x platforms and simply signals ERROR_CALL_NOT_IMPLEMENTED.
19
20; This is list of symbols available in all Windows versions (Win32s since Win32s 1.1; Win9x since Windows 95; WinNT since Windows NT 3.1)
15AddAtomA@421AddAtomA@4
16AddAtomW@422AddAtomW@4
17AddConsoleAliasA@12
18AddConsoleAliasW@12
19AddDllDirectory@4
20AddIntegrityLabelToBoundaryDescriptor@8
21AddLocalAlternateComputerNameA@8
22AddLocalAlternateComputerNameW@8
23AddRefActCtx@4
24AddRefActCtxWorker@4
25AddResourceAttributeAce@28
26AddSIDToBoundaryDescriptor@8
27AddScopedPolicyIDAce@20
28AddSecureMemoryCacheCallback@4
29AddVectoredContinueHandler@8
30AddVectoredExceptionHandler@8
31AdjustCalendarDate@12
32AllocConsole@023AllocConsole@0
33AllocConsoleWithOptions@8
34AllocateUserPhysicalPages@12
35AllocateUserPhysicalPagesNuma@16
36AppPolicyGetClrCompat@8
37AppPolicyGetCreateFileAccess@8
38AppPolicyGetLifecycleManagement@8
39AppPolicyGetMediaFoundationCodecLoading@8
40AppPolicyGetProcessTerminationMethod@8
41AppPolicyGetShowDeveloperDiagnostic@8
42AppPolicyGetThreadInitializationType@8
43AppPolicyGetWindowingModel@8
44AppXGetOSMaxVersionTested@8
45ApplicationRecoveryFinished@4
46ApplicationRecoveryInProgress@4
47AreFileApisANSI@0
48AreShortNamesEnabled@8
49AssignProcessToJobObject@8
50AttachConsole@4
51BackupRead@2824BackupRead@28
52BackupSeek@2425BackupSeek@24
53BackupWrite@2826BackupWrite@28
54BaseAttachCompleteThunk@0
55BaseCheckAppcompatCache@16
56BaseCheckAppcompatCacheEx@24
57BaseCheckAppcompatCacheExWorker@36
58BaseCheckAppcompatCacheWorker@16
59BaseCheckElevation@48
60BaseCheckRunApp@52
61BaseCleanupAppcompatCacheSupport@4
62BaseDllReadWriteIniFile@32
63BaseDumpAppcompatCache@0
64BaseDumpAppcompatCacheWorker@0
65BaseElevationPostProcessing@12
66BaseFlushAppcompatCache@0
67BaseFlushAppcompatCacheWorker@0
68BaseFormatObjectAttributes@16
69BaseFormatTimeOut@8
70BaseFreeAppCompatDataForProcessWorker@4
71BaseGenerateAppCompatData@24
72BaseGetNamedObjectDirectory@4
73BaseInitAppcompatCacheSupport@0
74BaseInitAppcompatCacheSupportWorker@0
75BaseIsAppcompatInfrastructureDisabled@0
76BaseIsAppcompatInfrastructureDisabledWorker@0
77BaseIsDosApplication@8
78BaseQueryModuleData@28
79BaseReadAppCompatDataForProcessWorker@12
80BaseSetLastNTError@4
81BaseUpdateAppcompatCache@12
82BaseUpdateAppcompatCacheWorker@12
83BaseUpdateVDMEntry@16
84BaseVerifyUnicodeString@4
85BaseWriteErrorElevationRequiredEvent@0
86Basep8BitStringToDynamicUnicodeString@8
87BasepAllocateActivationContextActivationBlock@16
88BasepAnsiStringToDynamicUnicodeString@8
89BasepAppContainerEnvironmentExtension@12
90BasepAppXExtension@24
91BasepCheckAppCompat@16
92BasepCheckBadapp@56
93BasepCheckWebBladeHashes@4
94BasepCheckWinSaferRestrictions@28
95BasepConstructSxsCreateProcessMessage@80
96BasepCopyEncryption@12
97BasepFreeActivationContextActivationBlock@4
98BasepFreeAppCompatData@12
99BasepGetAppCompatData@60
100BasepGetComputerNameFromNtPath@16
101BasepGetExeArchType@12
102BasepInitAppCompatData@12
103BasepIsProcessAllowed@4
104BasepMapModuleHandle@8
105BasepNotifyLoadStringResource@16
106BasepPostSuccessAppXExtension@8
107BasepProcessInvalidImage@84
108BasepQueryAppCompat@72
109BasepQueryModuleChpeSettings@40
110BasepReleaseAppXContext@4
111BasepReleaseSxsCreateProcessUtilityStruct@4
112BasepReportFault@8
113BasepSetFileEncryptionCompression@32
114Beep@827Beep@8
115BeginUpdateResourceA@828BeginUpdateResourceA@8
116BeginUpdateResourceW@829BeginUpdateResourceW@8
117BindIoCompletionCallback@12
118BuildCommDCBA@830BuildCommDCBA@8
119BuildCommDCBAndTimeoutsA@1231BuildCommDCBAndTimeoutsA@12
120BuildCommDCBAndTimeoutsW@1232BuildCommDCBAndTimeoutsW@12
121BuildCommDCBW@833BuildCommDCBW@8
122BuildIoRingCancelRequest@20
123BuildIoRingFlushFile@24
124BuildIoRingReadFile@44
125BuildIoRingReadFileScatter@40
126BuildIoRingRegisterBuffers@16
127BuildIoRingRegisterFileHandles@16
128BuildIoRingWriteFile@48
129BuildIoRingWriteFileGather@44
130CallNamedPipeA@2834CallNamedPipeA@28
131CallNamedPipeW@2835CallNamedPipeW@28
132CallbackMayRunLong@4
133CancelDeviceWakeupRequest@4
134CancelIo@4
135CancelIoEx@8
136CancelSynchronousIo@4
137CancelThreadpoolIo@4
138CancelTimerQueueTimer@8
139CancelWaitableTimer@4
140CeipIsOptedIn@0
141ChangeTimerQueueTimer@16
142CheckAllowDecryptedRemoteDestinationPolicy@0
143CheckElevation@20
144CheckElevationEnabled@4
145CheckForReadOnlyResource@8
146CheckForReadOnlyResourceFilter@4
147CheckNameLegalDOS8Dot3A@20
148CheckNameLegalDOS8Dot3W@20
149CheckRemoteDebuggerPresent@8
150CheckTokenCapability@12
151CheckTokenMembershipEx@16
152ClearCommBreak@436ClearCommBreak@4
153ClearCommError@1237ClearCommError@12
154CloseConsoleHandle@4
155CloseHandle@438CloseHandle@4
156CloseIoRing@4
157ClosePackageInfo@4
158ClosePrivateNamespace@8
159CloseProfileUserMapping@039CloseProfileUserMapping@0
160ClosePseudoConsole@4
161CloseState@4
162CloseThreadpool@4
163CloseThreadpoolCleanupGroup@4
164CloseThreadpoolCleanupGroupMembers@12
165CloseThreadpoolIo@4
166CloseThreadpoolTimer@4
167CloseThreadpoolWait@4
168CloseThreadpoolWork@4
169CmdBatNotification@4
170CommConfigDialogA@12
171CommConfigDialogW@12
172CompareCalendarDates@12
173CompareFileTime@840CompareFileTime@8
174CompareStringA@24
175CompareStringEx@36
176CompareStringOrdinal@20
177CompareStringW@2441CompareStringW@24
178ConnectNamedPipe@842ConnectNamedPipe@8
179ConsoleIMERoutine@4
180ConsoleMenuControl@12
181ContinueDebugEvent@1243ContinueDebugEvent@12
182ConvertCalDateTimeToSystemTime@8
183ConvertDefaultLocale@4
184ConvertFiberToThread@0
185ConvertNLSDayOfWeekToWin32DayOfWeek@4
186ConvertSystemTimeToCalDateTime@12
187ConvertThreadToFiber@4
188ConvertThreadToFiberEx@8
189ConvertToGlobalHandle@4
190CopyContext@12
191CopyFile2@12
192CopyFileA@1244CopyFileA@12
193CopyFileExA@24
194CopyFileExW@24
195CopyFileTransactedA@28
196CopyFileTransactedW@28
197CopyFileW@1245CopyFileW@12
198CopyLZFile@8
199CreateActCtxA@4
200CreateActCtxW@4
201CreateActCtxWWorker@4
202CreateBoundaryDescriptorA@8
203CreateBoundaryDescriptorW@8
204CreateConsoleScreenBuffer@2046CreateConsoleScreenBuffer@20
205CreateDirectoryA@847CreateDirectoryA@8
206CreateDirectoryExA@1248CreateDirectoryExA@12
207CreateDirectoryExW@1249CreateDirectoryExW@12
208CreateDirectoryTransactedA@16
209CreateDirectoryTransactedW@16
210CreateDirectoryW@850CreateDirectoryW@8
211CreateEnclave@32
212CreateEventA@1651CreateEventA@16
213CreateEventExA@16
214CreateEventExW@16
215CreateEventW@1652CreateEventW@16
216CreateFiber@12
217CreateFiberEx@20
218CreateFile2@20
219CreateFileA@2853CreateFileA@28
220CreateFileMappingA@2454CreateFileMappingA@24
221CreateFileMappingFromApp@24
222CreateFileMappingNumaA@28
223CreateFileMappingNumaW@28
224CreateFileMappingW@2455CreateFileMappingW@24
225CreateFileTransactedA@40
226CreateFileTransactedW@40
227CreateFileW@2856CreateFileW@28
228CreateHardLinkA@12
229CreateHardLinkTransactedA@16
230CreateHardLinkTransactedW@16
231CreateHardLinkW@12
232CreateIoCompletionPort@16
233CreateIoRing@24
234CreateJobObjectA@8
235CreateJobObjectW@8
236CreateJobSet@12
237CreateMailslotA@1657CreateMailslotA@16
238CreateMailslotW@1658CreateMailslotW@16
239CreateMemoryResourceNotification@4
240CreateMutexA@1259CreateMutexA@12
241CreateMutexExA@16
242CreateMutexExW@16
243CreateMutexW@1260CreateMutexW@12
244CreateNamedPipeA@3261CreateNamedPipeA@32
245CreateNamedPipeW@3262CreateNamedPipeW@32
246CreatePackageVirtualizationContext@8
247CreatePipe@1663CreatePipe@16
248CreatePrivateNamespaceA@12
249CreatePrivateNamespaceW@12
250CreateProcessA@4064CreateProcessA@40
251; MSDN says these are exported from ADVAPI32.DLL.
252; CreateProcessAsUserA@44
253; CreateProcessAsUserW@44
254CreateProcessInternalA@48
255CreateProcessInternalW@48
256CreateProcessW@4065CreateProcessW@40
257CreatePseudoConsole@20
258CreateRemoteThread@2866CreateRemoteThread@28
259CreateRemoteThreadEx@32
260CreateSemaphoreA@1667CreateSemaphoreA@16
261CreateSemaphoreExA@24
262CreateSemaphoreExW@24
263CreateSemaphoreW@1668CreateSemaphoreW@16
264CreateSocketHandle@0
265CreateSymbolicLinkA@12
266CreateSymbolicLinkTransactedA@16
267CreateSymbolicLinkTransactedW@16
268CreateSymbolicLinkW@12
269CreateTapePartition@1669CreateTapePartition@16
270CreateThread@2470CreateThread@24
271CreateThreadpool@4
272CreateThreadpoolCleanupGroup@0
273CreateThreadpoolIo@16
274CreateThreadpoolTimer@12
275CreateThreadpoolWait@12
276CreateThreadpoolWork@12
277CreateTimerQueue@0
278CreateTimerQueueTimer@28
279CreateToolhelp32Snapshot@8
280CreateVirtualBuffer@12
281CreateWaitableTimerA@12
282CreateWaitableTimerExA@16
283CreateWaitableTimerExW@16
284CreateWaitableTimerW@12
285CtrlRoutine@4
286DeactivateActCtx@8
287DeactivateActCtxWorker@8
288DeactivatePackageVirtualizationContext@4
289DebugActiveProcess@471DebugActiveProcess@4
290DebugActiveProcessStop@4
291DebugBreak@072DebugBreak@0
292DebugBreakProcess@4
293DebugSetProcessKillOnExit@4
294DecodePointer@4
295DecodeSystemPointer@4
296DefineDosDeviceA@1273DefineDosDeviceA@12
297DefineDosDeviceW@1274DefineDosDeviceW@12
298DelayLoadFailureHook@8
299DeleteAtom@475DeleteAtom@4
300DeleteBoundaryDescriptor@4
301DeleteCriticalSection@476DeleteCriticalSection@4
302DeleteFiber@4
303DeleteFileA@477DeleteFileA@4
304DeleteFileTransactedA@8
305DeleteFileTransactedW@8
306DeleteFileW@478DeleteFileW@4
307DeleteProcThreadAttributeList@4
308DeleteSynchronizationBarrier@4
309DeleteTimerQueue@4
310DeleteTimerQueueEx@8
311DeleteTimerQueueTimer@12
312DeleteVolumeMountPointA@4
313DeleteVolumeMountPointW@4
314DeviceIoControl@3279DeviceIoControl@32
315DisableThreadLibraryCalls@4
316DisableThreadProfiling@4
317DisassociateCurrentThreadFromCallback@4
318DiscardVirtualMemory@8
319DisconnectNamedPipe@480DisconnectNamedPipe@4
320DnsHostnameToComputerNameA@12
321DnsHostnameToComputerNameExW@12
322DnsHostnameToComputerNameW@12
323DosDateTimeToFileTime@1281DosDateTimeToFileTime@12
324DosPathToSessionPathA@12
325DosPathToSessionPathW@12
326DuplicateConsoleHandle@16
327DuplicateEncryptionInfoFileExt@20
328DuplicateHandle@2882DuplicateHandle@28
329DuplicatePackageVirtualizationContext@8
330EnableProcessOptionalXStateFeatures@8
331EnableThreadProfiling@20
332EncodePointer@4
333EncodeSystemPointer@4
334EndUpdateResourceA@883EndUpdateResourceA@8
335EndUpdateResourceW@884EndUpdateResourceW@8
336EnterCriticalSection@485EnterCriticalSection@4
337EnterSynchronizationBarrier@8
338EnumCalendarInfoA@16
339EnumCalendarInfoExA@16
340EnumCalendarInfoExEx@24
341EnumCalendarInfoExW@16
342EnumCalendarInfoW@16
343EnumDateFormatsA@12
344EnumDateFormatsExA@12
345EnumDateFormatsExEx@16
346EnumDateFormatsExW@12
347EnumDateFormatsW@12
348EnumLanguageGroupLocalesA@16
349EnumLanguageGroupLocalesW@16
350EnumResourceLanguagesA@2086EnumResourceLanguagesA@20
351EnumResourceLanguagesExA@28
352EnumResourceLanguagesExW@28
353EnumResourceLanguagesW@2087EnumResourceLanguagesW@20
354EnumResourceNamesA@1688EnumResourceNamesA@16
355EnumResourceNamesExA@24
356EnumResourceNamesExW@24
357EnumResourceNamesW@1689EnumResourceNamesW@16
358EnumResourceTypesA@1290EnumResourceTypesA@12
359EnumResourceTypesExA@20
360EnumResourceTypesExW@20
361EnumResourceTypesW@1291EnumResourceTypesW@12
362EnumSystemCodePagesA@8
363EnumSystemCodePagesW@8
364EnumSystemFirmwareTables@12
365EnumSystemGeoID@12
366EnumSystemGeoNames@12
367EnumSystemLanguageGroupsA@12
368EnumSystemLanguageGroupsW@12
369EnumSystemLocalesA@8
370EnumSystemLocalesEx@16
371EnumSystemLocalesW@8
372EnumTimeFormatsA@12
373EnumTimeFormatsEx@16
374EnumTimeFormatsW@12
375EnumUILanguagesA@12
376EnumUILanguagesW@12
377EnumerateLocalComputerNamesA@16
378EnumerateLocalComputerNamesW@16
379EraseTape@1292EraseTape@12
380EscapeCommFunction@893EscapeCommFunction@8
381ExitProcess@494ExitProcess@4
382ExitThread@495ExitThread@4
383ExitVDM@8
384ExpandEnvironmentStringsA@1296ExpandEnvironmentStringsA@12
385ExpandEnvironmentStringsW@1297ExpandEnvironmentStringsW@12
386ExpungeConsoleCommandHistoryA@4
387ExpungeConsoleCommandHistoryW@4
388ExtendVirtualBuffer@8
389FatalAppExitA@898FatalAppExitA@8
390FatalAppExitW@899FatalAppExitW@8
391FatalExit@4100FatalExit@4
...@@ -395,11 +104,6 @@ FileTimeToSystemTime@8...@@ -395,11 +104,6 @@ FileTimeToSystemTime@8
395FillConsoleOutputAttribute@20104FillConsoleOutputAttribute@20
396FillConsoleOutputCharacterA@20105FillConsoleOutputCharacterA@20
397FillConsoleOutputCharacterW@20106FillConsoleOutputCharacterW@20
398FindActCtxSectionGuid@20
399FindActCtxSectionGuidWorker@20
400FindActCtxSectionStringA@20
401FindActCtxSectionStringW@20
402FindActCtxSectionStringWWorker@20
403FindAtomA@4107FindAtomA@4
404FindAtomW@4108FindAtomW@4
405FindClose@4109FindClose@4
...@@ -407,96 +111,29 @@ FindCloseChangeNotification@4...@@ -407,96 +111,29 @@ FindCloseChangeNotification@4
407FindFirstChangeNotificationA@12111FindFirstChangeNotificationA@12
408FindFirstChangeNotificationW@12112FindFirstChangeNotificationW@12
409FindFirstFileA@8113FindFirstFileA@8
410FindFirstFileExA@24
411FindFirstFileExW@24
412FindFirstFileNameTransactedW@20
413FindFirstFileNameW@16
414FindFirstFileTransactedA@28
415FindFirstFileTransactedW@28
416FindFirstFileW@8114FindFirstFileW@8
417FindFirstStreamTransactedW@20
418FindFirstStreamW@16
419FindFirstVolumeA@8
420FindFirstVolumeMountPointA@12
421FindFirstVolumeMountPointW@12
422FindFirstVolumeW@8
423FindNLSString@28
424FindNLSStringEx@40
425FindNextChangeNotification@4115FindNextChangeNotification@4
426FindNextFileA@8116FindNextFileA@8
427FindNextFileNameW@12
428FindNextFileW@8117FindNextFileW@8
429FindNextStreamW@8
430FindNextVolumeA@12
431FindNextVolumeMountPointA@12
432FindNextVolumeMountPointW@12
433FindNextVolumeW@12
434FindPackagesByPackageFamily@28
435FindResourceA@12118FindResourceA@12
436FindResourceExA@16119FindResourceExA@16
437FindResourceExW@16120FindResourceExW@16
438FindResourceW@12121FindResourceW@12
439FindStringOrdinal@24
440FindVolumeClose@4
441FindVolumeMountPointClose@4
442FlsAlloc@4
443FlsFree@4
444FlsGetValue2@4
445FlsGetValue@4
446FlsSetValue@8
447FlushConsoleInputBuffer@4122FlushConsoleInputBuffer@4
448FlushFileBuffers@4123FlushFileBuffers@4
449FlushInstructionCache@12124FlushInstructionCache@12
450FlushProcessWriteBuffers@0
451FlushViewOfFile@8125FlushViewOfFile@8
452FoldStringA@20
453FoldStringW@20126FoldStringW@20
454FormatApplicationUserModelId@16
455FormatMessageA@28127FormatMessageA@28
456FormatMessageW@28128FormatMessageW@28
457FreeConsole@0129FreeConsole@0
458FreeEnvironmentStringsA@4
459FreeEnvironmentStringsW@4
460FreeLibrary@4130FreeLibrary@4
461FreeLibraryAndExitThread@8
462FreeLibraryWhenCallbackReturns@8
463FreeMemoryJobObject@4
464FreeResource@4131FreeResource@4
465FreeUserPhysicalPages@12
466FreeVirtualBuffer@4
467GenerateConsoleCtrlEvent@8132GenerateConsoleCtrlEvent@8
468GetACP@0133GetACP@0
469GetActiveProcessorCount@4
470GetActiveProcessorGroupCount@0
471GetAppContainerAce@16
472GetAppContainerNamedObjectPath@20
473GetApplicationRecoveryCallback@20
474GetApplicationRecoveryCallbackWorker@20
475GetApplicationRestartSettings@16
476GetApplicationRestartSettingsWorker@16
477GetApplicationUserModelId@12
478GetAtomNameA@12134GetAtomNameA@12
479GetAtomNameW@12135GetAtomNameW@12
480GetBinaryType@8
481GetBinaryTypeA@8
482GetBinaryTypeW@8
483GetCPFileNameFromRegistry@12
484GetCPInfo@8136GetCPInfo@8
485GetCPInfoExA@12
486GetCPInfoExW@12
487GetCachedSigningLevel@24
488GetCalendarDateFormat@24
489GetCalendarDateFormatEx@24
490GetCalendarDaysInMonth@16
491GetCalendarDifferenceInDays@12
492GetCalendarInfoA@24
493GetCalendarInfoEx@28
494GetCalendarInfoW@24
495GetCalendarMonthsInYear@12
496GetCalendarSupportedDateRange@12
497GetCalendarWeekNumber@16
498GetComPlusPackageInstallStatus@0
499GetCommConfig@12
500GetCommMask@8137GetCommMask@8
501GetCommModemStatus@8138GetCommModemStatus@8
502GetCommProperties@8139GetCommProperties@8
...@@ -504,295 +141,85 @@ GetCommState@8...@@ -504,295 +141,85 @@ GetCommState@8
504GetCommTimeouts@8141GetCommTimeouts@8
505GetCommandLineA@0142GetCommandLineA@0
506GetCommandLineW@0143GetCommandLineW@0
507GetCompressedFileSizeA@8
508GetCompressedFileSizeTransactedA@12
509GetCompressedFileSizeTransactedW@12
510GetCompressedFileSizeW@8
511GetComputerNameA@8144GetComputerNameA@8
512GetComputerNameExA@12
513GetComputerNameExW@12
514GetComputerNameW@8145GetComputerNameW@8
515GetConsoleAliasA@16
516GetConsoleAliasExesA@8
517GetConsoleAliasExesLengthA@0
518GetConsoleAliasExesLengthW@0
519GetConsoleAliasExesW@8
520GetConsoleAliasW@16
521GetConsoleAliasesA@12
522GetConsoleAliasesLengthA@4
523GetConsoleAliasesLengthW@4
524GetConsoleAliasesW@12
525GetConsoleCP@0146GetConsoleCP@0
526GetConsoleCharType@12
527GetConsoleCommandHistoryA@12
528GetConsoleCommandHistoryLengthA@4
529GetConsoleCommandHistoryLengthW@4
530GetConsoleCommandHistoryW@12
531GetConsoleCursorInfo@8147GetConsoleCursorInfo@8
532GetConsoleCursorMode@12
533GetConsoleDisplayMode@4
534GetConsoleFontInfo@16
535GetConsoleFontSize@8
536GetConsoleHardwareState@12
537GetConsoleHistoryInfo@4
538GetConsoleInputExeNameA@8
539GetConsoleInputExeNameW@8
540GetConsoleInputWaitHandle@0
541GetConsoleKeyboardLayoutNameA@4
542GetConsoleKeyboardLayoutNameW@4
543GetConsoleMode@8148GetConsoleMode@8
544GetConsoleNlsMode@8
545GetConsoleOriginalTitleA@8
546GetConsoleOriginalTitleW@8
547GetConsoleOutputCP@0149GetConsoleOutputCP@0
548GetConsoleProcessList@8
549GetConsoleScreenBufferInfo@8150GetConsoleScreenBufferInfo@8
550GetConsoleScreenBufferInfoEx@8
551GetConsoleSelectionInfo@4
552GetConsoleTitleA@8151GetConsoleTitleA@8
553GetConsoleTitleW@8152GetConsoleTitleW@8
554GetConsoleWindow@0
555GetCurrencyFormatA@24
556GetCurrencyFormatEx@24
557GetCurrencyFormatW@24
558GetCurrentActCtx@4
559GetCurrentActCtxWorker@4
560GetCurrentApplicationUserModelId@8
561GetCurrentConsoleFont@12
562GetCurrentConsoleFontEx@12
563GetCurrentDirectoryA@8153GetCurrentDirectoryA@8
564GetCurrentDirectoryW@8154GetCurrentDirectoryW@8
565GetCurrentPackageFamilyName@8
566GetCurrentPackageFullName@8
567GetCurrentPackageId@8
568GetCurrentPackageInfo@16
569GetCurrentPackagePath@8
570GetCurrentPackageVirtualizationContext@0
571GetCurrentProcess@0155GetCurrentProcess@0
572GetCurrentProcessId@0156GetCurrentProcessId@0
573GetCurrentProcessorNumber@0
574GetCurrentProcessorNumberEx@4
575GetCurrentThread@0157GetCurrentThread@0
576GetCurrentThreadId@0158GetCurrentThreadId@0
577GetCurrentThreadStackLimits@8
578GetDateFormatA@24
579GetDateFormatAWorker@28
580GetDateFormatEx@28
581GetDateFormatW@24159GetDateFormatW@24
582GetDateFormatWWorker@28
583GetDefaultCommConfigA@12
584GetDefaultCommConfigW@12
585GetDevicePowerState@8
586GetDiskFreeSpaceA@20160GetDiskFreeSpaceA@20
587GetDiskFreeSpaceExA@16
588GetDiskFreeSpaceExW@16
589GetDiskFreeSpaceW@20161GetDiskFreeSpaceW@20
590GetDiskSpaceInformationA@8
591GetDiskSpaceInformationW@8
592GetDllDirectoryA@8
593GetDllDirectoryW@8
594GetDriveTypeA@4162GetDriveTypeA@4
595GetDriveTypeW@4163GetDriveTypeW@4
596GetDurationFormat@32
597GetDurationFormatEx@32
598GetDynamicTimeZoneInformation@4
599GetEnabledXStateFeatures@0
600GetEncryptedFileVersionExt@8
601GetEnvironmentStrings@0164GetEnvironmentStrings@0
602GetEnvironmentStringsA@0
603GetEnvironmentStringsW@0
604GetEnvironmentVariableA@12165GetEnvironmentVariableA@12
605GetEnvironmentVariableW@12166GetEnvironmentVariableW@12
606GetEraNameCountedString@16
607GetErrorMode@0
608GetExitCodeProcess@8167GetExitCodeProcess@8
609GetExitCodeThread@8168GetExitCodeThread@8
610GetExpandedNameA@8
611GetExpandedNameW@8
612GetFileAttributesA@4169GetFileAttributesA@4
613GetFileAttributesExA@12
614GetFileAttributesExW@12
615GetFileAttributesTransactedA@16
616GetFileAttributesTransactedW@16
617GetFileAttributesW@4170GetFileAttributesW@4
618GetFileBandwidthReservation@24
619GetFileInformationByHandle@8171GetFileInformationByHandle@8
620GetFileInformationByHandleEx@16
621GetFileInformationByName@16
622GetFileMUIInfo@16
623GetFileMUIPath@28
624GetFileSize@8172GetFileSize@8
625GetFileSizeEx@8
626GetFileTime@16173GetFileTime@16
627GetFileType@4174GetFileType@4
628GetFinalPathNameByHandleA@16
629GetFinalPathNameByHandleW@16
630GetFirmwareEnvironmentVariableA@16
631GetFirmwareEnvironmentVariableExA@20
632GetFirmwareEnvironmentVariableExW@20
633GetFirmwareEnvironmentVariableW@16
634GetFirmwareType@4
635GetFullPathNameA@16175GetFullPathNameA@16
636GetFullPathNameTransactedA@20
637GetFullPathNameTransactedW@20
638GetFullPathNameW@16176GetFullPathNameW@16
639GetGeoInfoA@20
640GetGeoInfoEx@16
641GetGeoInfoW@20
642GetHandleContext@4
643GetHandleInformation@8
644GetIoRingInfo@8
645GetLargePageMinimum@0
646GetLargestConsoleWindowSize@4177GetLargestConsoleWindowSize@4
647GetLastError@0178GetLastError@0
648GetLocalTime@4179GetLocalTime@4
649GetLocaleInfoA@16
650GetLocaleInfoEx@16
651GetLocaleInfoW@16180GetLocaleInfoW@16
652GetLogicalDriveStringsA@8181GetLogicalDriveStringsA@8
653GetLogicalDriveStringsW@8182GetLogicalDriveStringsW@8
654GetLogicalDrives@0183GetLogicalDrives@0
655GetLogicalProcessorInformation@8
656GetLogicalProcessorInformationEx@12
657GetLongPathNameA@12
658GetLongPathNameTransactedA@16
659GetLongPathNameTransactedW@16
660GetLongPathNameW@12
661GetMachineTypeAttributes@8
662GetMailslotInfo@20184GetMailslotInfo@20
663GetMaximumProcessorCount@4
664GetMaximumProcessorGroupCount@0
665GetMemoryErrorHandlingCapabilities@4
666GetModuleFileNameA@12185GetModuleFileNameA@12
667GetModuleFileNameW@12186GetModuleFileNameW@12
668GetModuleHandleA@4187GetModuleHandleA@4
669GetModuleHandleExA@12
670GetModuleHandleExW@12
671GetModuleHandleW@4188GetModuleHandleW@4
672GetNLSVersion@12
673GetNLSVersionEx@12
674GetNamedPipeAttribute@20
675GetNamedPipeClientComputerNameA@12
676GetNamedPipeClientComputerNameW@12
677GetNamedPipeClientProcessId@8
678GetNamedPipeClientSessionId@8
679GetNamedPipeHandleStateA@28189GetNamedPipeHandleStateA@28
680GetNamedPipeHandleStateW@28190GetNamedPipeHandleStateW@28
681GetNamedPipeInfo@20191GetNamedPipeInfo@20
682GetNamedPipeServerProcessId@8
683GetNamedPipeServerSessionId@8
684GetNativeSystemInfo@4
685GetNextVDMCommand@4
686GetNumaAvailableMemoryNode@8
687GetNumaAvailableMemoryNodeEx@8
688GetNumaHighestNodeNumber@4
689GetNumaNodeNumberFromHandle@8
690GetNumaNodeProcessorMask2@16
691GetNumaNodeProcessorMask@8
692GetNumaNodeProcessorMaskEx@8
693GetNumaProcessorNode@8
694GetNumaProcessorNodeEx@8
695GetNumaProximityNode@8
696GetNumaProximityNodeEx@8
697GetNumberFormatA@24
698GetNumberFormatEx@24
699GetNumberFormatW@24
700GetNumberOfConsoleFonts@0
701GetNumberOfConsoleInputEvents@8192GetNumberOfConsoleInputEvents@8
702GetNumberOfConsoleMouseButtons@4193GetNumberOfConsoleMouseButtons@4
703GetOEMCP@0194GetOEMCP@0
704GetOverlappedResult@16195GetOverlappedResult@16
705GetOverlappedResultEx@20
706GetPackageApplicationIds@16
707GetPackageFamilyName@12
708GetPackageFullName@12
709GetPackageId@12
710GetPackageInfo@20
711GetPackagePath@16
712GetPackagePathByFullName@12
713GetPackagesByPackageFamily@20
714GetPhysicallyInstalledSystemMemory@4
715GetPriorityClass@4196GetPriorityClass@4
716GetPrivateProfileIntA@16197GetPrivateProfileIntA@16
717GetPrivateProfileIntW@16198GetPrivateProfileIntW@16
718GetPrivateProfileSectionA@16199GetPrivateProfileSectionA@16
719GetPrivateProfileSectionNamesA@12
720GetPrivateProfileSectionNamesW@12
721GetPrivateProfileSectionW@16200GetPrivateProfileSectionW@16
722GetPrivateProfileStringA@24201GetPrivateProfileStringA@24
723GetPrivateProfileStringW@24202GetPrivateProfileStringW@24
724GetPrivateProfileStructA@20
725GetPrivateProfileStructW@20
726GetProcAddress@8203GetProcAddress@8
727GetProcessAffinityMask@12
728GetProcessDEPPolicy@12
729GetProcessDefaultCpuSetMasks@16
730GetProcessDefaultCpuSets@16
731GetProcessGroupAffinity@12
732GetProcessHandleCount@8
733GetProcessHeap@0204GetProcessHeap@0
734GetProcessHeaps@8
735GetProcessId@4
736GetProcessIdOfThread@4
737GetProcessInformation@16
738GetProcessIoCounters@8
739GetProcessMitigationPolicy@16
740GetProcessPreferredUILanguages@16
741GetProcessPriorityBoost@8
742GetProcessShutdownParameters@8205GetProcessShutdownParameters@8
743GetProcessTimes@20206GetProcessTimes@20
744GetProcessUserModeExceptionPolicy@4
745GetProcessVersion@4
746GetProcessWorkingSetSize@12
747GetProcessWorkingSetSizeEx@16
748GetProcessesInVirtualizationContext@12
749GetProcessorSystemCycleTime@12
750GetProductInfo@20
751GetProductName@8
752GetProfileIntA@12207GetProfileIntA@12
753GetProfileIntW@12208GetProfileIntW@12
754GetProfileSectionA@12209GetProfileSectionA@12
755GetProfileSectionW@12210GetProfileSectionW@12
756GetProfileStringA@20211GetProfileStringA@20
757GetProfileStringW@20212GetProfileStringW@20
758GetQueuedCompletionStatus@20
759GetQueuedCompletionStatusEx@24
760GetShortPathNameA@12
761GetShortPathNameW@12
762GetStagedPackagePathByFullName@12
763GetStartupInfoA@4213GetStartupInfoA@4
764GetStartupInfoW@4214GetStartupInfoW@4
765GetStateFolder@16
766GetStdHandle@4215GetStdHandle@4
767GetStringScripts@20
768GetStringTypeA@20
769GetStringTypeExA@20
770GetStringTypeExW@20
771GetStringTypeW@16216GetStringTypeW@16
772GetSystemAppDataKey@16
773GetSystemCpuSetInformation@20
774GetSystemDEPPolicy@0
775GetSystemDefaultLCID@0217GetSystemDefaultLCID@0
776GetSystemDefaultLangID@0218GetSystemDefaultLangID@0
777GetSystemDefaultLocaleName@8
778GetSystemDefaultUILanguage@0
779GetSystemDirectoryA@8219GetSystemDirectoryA@8
780GetSystemDirectoryW@8220GetSystemDirectoryW@8
781GetSystemFileCacheSize@12
782GetSystemFirmwareTable@16
783GetSystemInfo@4221GetSystemInfo@4
784GetSystemPowerStatus@4
785GetSystemPreferredUILanguages@16
786GetSystemRegistryQuota@8
787GetSystemTime@4222GetSystemTime@4
788GetSystemTimeAdjustment@12
789GetSystemTimeAsFileTime@4
790GetSystemTimePreciseAsFileTime@4
791GetSystemTimes@12
792GetSystemWindowsDirectoryA@8
793GetSystemWindowsDirectoryW@8
794GetSystemWow64DirectoryA@8
795GetSystemWow64DirectoryW@8
796GetTapeParameters@16223GetTapeParameters@16
797GetTapePosition@20224GetTapePosition@20
798GetTapeStatus@4225GetTapeStatus@4
...@@ -800,63 +227,22 @@ GetTempFileNameA@16...@@ -800,63 +227,22 @@ GetTempFileNameA@16
800GetTempFileNameW@16227GetTempFileNameW@16
801GetTempPathA@8228GetTempPathA@8
802GetTempPathW@8229GetTempPathW@8
803GetTempPath2A@8230GetTickCount@0
804GetTempPath2W@8
805GetThreadContext@8231GetThreadContext@8
806GetThreadDescription@8
807GetThreadEnabledXStateFeatures@0
808GetThreadErrorMode@0
809GetThreadGroupAffinity@8
810GetThreadIOPendingFlag@8
811GetThreadId@4
812GetThreadIdealProcessorEx@8
813GetThreadInformation@16
814GetThreadLocale@0232GetThreadLocale@0
815GetThreadPreferredUILanguages@16
816GetThreadPriority@4233GetThreadPriority@4
817GetThreadPriorityBoost@8
818GetThreadSelectedCpuSetMasks@16
819GetThreadSelectedCpuSets@16
820GetThreadSelectorEntry@12234GetThreadSelectorEntry@12
821GetThreadTimes@20235GetThreadTimes@20
822GetThreadUILanguage@0
823GetTickCount64@0
824GetTickCount@0
825GetTimeFormatA@24
826GetTimeFormatAWorker@28
827GetTimeFormatEx@24
828GetTimeFormatW@24236GetTimeFormatW@24
829GetTimeFormatWWorker@24
830GetTimeZoneInformation@4237GetTimeZoneInformation@4
831GetTimeZoneInformationForYear@12
832GetUILanguageInfo@20
833GetUserDefaultGeoName@8
834GetUserDefaultLCID@0238GetUserDefaultLCID@0
835GetUserDefaultLangID@0239GetUserDefaultLangID@0
836GetUserDefaultLocaleName@8
837GetUserDefaultUILanguage@0
838GetUserGeoID@4
839GetUserPreferredUILanguages@16
840GetVDMCurrentDirectories@8
841GetVersion@0240GetVersion@0
842GetVersionExA@4
843GetVersionExW@4
844GetVolumeInformationA@32241GetVolumeInformationA@32
845GetVolumeInformationByHandleW@32
846GetVolumeInformationW@32242GetVolumeInformationW@32
847GetVolumeNameForVolumeMountPointA@12
848GetVolumeNameForVolumeMountPointW@12
849GetVolumePathNameA@12
850GetVolumePathNameW@12
851GetVolumePathNamesForVolumeNameA@16
852GetVolumePathNamesForVolumeNameW@16
853GetWindowsDirectoryA@8243GetWindowsDirectoryA@8
854GetWindowsDirectoryW@8244GetWindowsDirectoryW@8
855GetWriteWatch@24
856GetXStateFeaturesMask@8
857GlobalAddAtomA@4245GlobalAddAtomA@4
858GlobalAddAtomExA@8
859GlobalAddAtomExW@8
860GlobalAddAtomW@4246GlobalAddAtomW@4
861GlobalAlloc@8247GlobalAlloc@8
862GlobalCompact@4248GlobalCompact@4
...@@ -871,67 +257,23 @@ GlobalGetAtomNameW@12...@@ -871,67 +257,23 @@ GlobalGetAtomNameW@12
871GlobalHandle@4257GlobalHandle@4
872GlobalLock@4258GlobalLock@4
873GlobalMemoryStatus@4259GlobalMemoryStatus@4
874GlobalMemoryStatusEx@4
875GlobalMemoryStatusVlm@4
876GlobalReAlloc@12260GlobalReAlloc@12
877GlobalSize@4261GlobalSize@4
878GlobalUnWire@4262GlobalUnWire@4
879GlobalUnfix@4263GlobalUnfix@4
880GlobalUnlock@4264GlobalUnlock@4
881GlobalWire@4265GlobalWire@4
882Heap32First@12
883Heap32ListFirst@8
884Heap32ListNext@8
885Heap32Next@4
886HeapAlloc@12266HeapAlloc@12
887HeapCompact@8
888HeapCreate@12267HeapCreate@12
889HeapCreateTagsW@16
890HeapDestroy@4268HeapDestroy@4
891HeapExtend@16
892HeapFree@12269HeapFree@12
893HeapLock@4
894HeapQueryInformation@20
895HeapQueryTagW@20
896HeapReAlloc@16270HeapReAlloc@16
897HeapSetInformation@16
898HeapSize@12271HeapSize@12
899HeapSummary@12
900HeapUnlock@4
901HeapUsage@20
902HeapValidate@12
903HeapWalk@8
904IdnToAscii@20
905IdnToNameprepUnicode@20
906IdnToUnicode@20
907InitAtomTable@4272InitAtomTable@4
908InitializeCriticalSection@4273InitializeCriticalSection@4
909InitOnceBeginInitialize@16274InterlockedDecrement@4 DATA ; FIXME: why is decorated stdcall function symbol disabled?
910InitOnceComplete@12275InterlockedExchange@8 DATA ; FIXME: why is decorated stdcall function symbol disabled?
911InitOnceExecuteOnce@16276InterlockedIncrement@4 DATA ; FIXME: why is decorated stdcall function symbol disabled?
912InitOnceInitialize@4
913InitializeConditionVariable@4
914InitializeContext2@24
915InitializeContext@16
916InitializeCriticalSectionAndSpinCount@8
917InitializeCriticalSectionEx@12
918InitializeEnclave@20
919InitializeProcThreadAttributeList@16
920InitializeSListHead@4
921InitializeSRWLock@4
922InitializeSynchronizationBarrier@12
923InstallELAMCertificateInfo@4
924InterlockedCompareExchange64@20 DATA ; FIXME: this is for Vista+. forwards to NTDLL.RtlInterlockedCompareExchange64@20
925InterlockedCompareExchange@12 DATA
926InterlockedDecrement@4 DATA
927InterlockedExchange@8 DATA
928InterlockedExchangeAdd@8 DATA
929InterlockedFlushSList@4
930InterlockedIncrement@4 DATA
931InterlockedPopEntrySList@4
932InterlockedPushEntrySList@8
933InterlockedPushListSListEx@16
934InvalidateConsoleDIBits@8
935IsBadCodePtr@4277IsBadCodePtr@4
936IsBadHugeReadPtr@8278IsBadHugeReadPtr@8
937IsBadHugeWritePtr@8279IsBadHugeWritePtr@8
...@@ -939,93 +281,19 @@ IsBadReadPtr@8...@@ -939,93 +281,19 @@ IsBadReadPtr@8
939IsBadStringPtrA@8281IsBadStringPtrA@8
940IsBadStringPtrW@8282IsBadStringPtrW@8
941IsBadWritePtr@8283IsBadWritePtr@8
942IsCalendarLeapDay@20
943IsCalendarLeapMonth@16
944IsCalendarLeapYear@12
945IsDBCSLeadByte@4284IsDBCSLeadByte@4
946IsDBCSLeadByteEx@8
947IsDebuggerPresent@0
948IsEnclaveTypeSupported@4
949IsIoRingOpSupported@8
950IsNLSDefinedString@20
951IsNativeVhdBoot@4
952IsNormalizedString@12
953IsProcessCritical@8
954IsProcessInJob@12
955IsProcessorFeaturePresent@4
956IsSystemResumeAutomatic@0
957IsThreadAFiber@0
958IsThreadpoolTimerSet@4
959IsTimeZoneRedirectionEnabled@0
960IsUserCetAvailableInEnvironment@4
961IsValidCalDateTime@8
962IsValidCodePage@4285IsValidCodePage@4
963IsValidLanguageGroup@8
964IsValidLocale@8
965IsValidLocaleName@4
966IsValidNLSVersion@12
967IsWow64GuestMachineSupported@8
968IsWow64Process2@12
969IsWow64Process@8
970K32EmptyWorkingSet@4
971K32EnumDeviceDrivers@12
972K32EnumPageFilesA@8
973K32EnumPageFilesW@8
974K32EnumProcessModules@16
975K32EnumProcessModulesEx@20
976K32EnumProcesses@12
977K32GetDeviceDriverBaseNameA@12
978K32GetDeviceDriverBaseNameW@12
979K32GetDeviceDriverFileNameA@12
980K32GetDeviceDriverFileNameW@12
981K32GetMappedFileNameA@16
982K32GetMappedFileNameW@16
983K32GetModuleBaseNameA@16
984K32GetModuleBaseNameW@16
985K32GetModuleFileNameExA@16
986K32GetModuleFileNameExW@16
987K32GetModuleInformation@16
988K32GetPerformanceInfo@8
989K32GetProcessImageFileNameA@12
990K32GetProcessImageFileNameW@12
991K32GetProcessMemoryInfo@12
992K32GetWsChanges@12
993K32GetWsChangesEx@12
994K32InitializeProcessForWsWatch@4
995K32QueryWorkingSet@12
996K32QueryWorkingSetEx@12
997LCIDToLocaleName@16
998LCMapStringA@24
999LCMapStringEx@36
1000LCMapStringW@24286LCMapStringW@24
1001LZClose@4
1002LZCloseFile@4
1003LZCopy@8
1004LZCreateFileW@20
1005LZDone@0
1006LZInit@4
1007LZOpenFileA@12
1008LZOpenFileW@12
1009LZRead@12
1010LZSeek@12
1011LZStart@0
1012LeaveCriticalSection@4287LeaveCriticalSection@4
1013LeaveCriticalSectionWhenCallbackReturns@8
1014LoadAppInitDlls@0
1015LoadEnclaveData@36
1016LoadLibraryA@4288LoadLibraryA@4
1017LoadLibraryExA@12289LoadLibraryExA@12
1018LoadLibraryExW@12290LoadLibraryExW@12
1019LoadLibraryW@4291LoadLibraryW@4
1020LoadModule@8292LoadModule@8
1021LoadPackagedLibrary@8
1022LoadResource@8293LoadResource@8
1023LoadStringBaseExW@20
1024LoadStringBaseW@16
1025LocalAlloc@8294LocalAlloc@8
1026LocalCompact@4295LocalCompact@4
1027LocalFileTimeToFileTime@8296LocalFileTimeToFileTime@8
1028LocalFileTimeToLocalSystemTime@12
1029LocalFlags@4297LocalFlags@4
1030LocalFree@4298LocalFree@4
1031LocalHandle@4299LocalHandle@4
...@@ -1033,164 +301,44 @@ LocalLock@4...@@ -1033,164 +301,44 @@ LocalLock@4
1033LocalReAlloc@12301LocalReAlloc@12
1034LocalShrink@8302LocalShrink@8
1035LocalSize@4303LocalSize@4
1036LocalSystemTimeToLocalFileTime@12
1037LocalUnlock@4304LocalUnlock@4
1038LocaleNameToLCID@8
1039LocateXStateFeature@12
1040LockFile@20305LockFile@20
1041LockFileEx@24306LockFileEx@24
1042LockResource@4307LockResource@4
1043MapUserPhysicalPages@12
1044MapUserPhysicalPagesScatter@12
1045MapViewOfFile@20308MapViewOfFile@20
1046MapViewOfFileEx@24309MapViewOfFileEx@24
1047MapViewOfFileExNuma@28
1048MapViewOfFileVlm@28
1049MapViewOfFileFromApp@20
1050Module32First@8
1051Module32FirstW@8
1052Module32Next@8
1053Module32NextW@8
1054MoveFileA@8310MoveFileA@8
1055MoveFileExA@12311MoveFileExA@12
1056MoveFileExW@12312MoveFileExW@12
1057MoveFileTransactedA@24
1058MoveFileTransactedW@24
1059MoveFileW@8313MoveFileW@8
1060MoveFileWithProgressA@20
1061MoveFileWithProgressW@20
1062MulDiv@12314MulDiv@12
1063MultiByteToWideChar@24315MultiByteToWideChar@24
1064NeedCurrentDirectoryForExePathA@4
1065NeedCurrentDirectoryForExePathW@4
1066NlsCheckPolicy@8
1067NlsConvertIntegerToString@20
1068NlsEventDataDescCreate@16
1069NlsGetCacheUpdateCount@0
1070NlsUpdateLocale@8
1071NlsUpdateSystemLocale@8
1072NlsWriteEtwEvent@20
1073NormalizeString@20
1074NotifyMountMgr@12
1075NotifyUILanguageChange@20
1076NtVdm64CreateProcessInternalW@48
1077OOBEComplete@4
1078OfferVirtualMemory@12
1079OpenConsoleW@16
1080OpenConsoleWStub@16
1081OpenEventA@12316OpenEventA@12
1082OpenEventW@12317OpenEventW@12
1083OpenFile@12318OpenFile@12
1084OpenFileById@24
1085OpenFileMappingA@12319OpenFileMappingA@12
1086OpenFileMappingW@12320OpenFileMappingW@12
1087OpenJobObjectA@12
1088OpenJobObjectW@12
1089OpenMutexA@12321OpenMutexA@12
1090OpenMutexW@12322OpenMutexW@12
1091OpenPackageInfoByFullName@12
1092OpenPrivateNamespaceA@8
1093OpenPrivateNamespaceW@8
1094OpenProcess@12323OpenProcess@12
1095; MSDN says OpenProcessToken is from Advapi32.dll, not Kernel32.dll
1096; OpenProcessToken@12
1097OpenProfileUserMapping@0324OpenProfileUserMapping@0
1098OpenSemaphoreA@12325OpenSemaphoreA@12
1099OpenSemaphoreW@12326OpenSemaphoreW@12
1100OpenState@0
1101OpenStateExplicit@8
1102OpenThread@12
1103; MSDN says this is exported from ADVAPI32.DLL.
1104; OpenThreadToken@16
1105OpenWaitableTimerA@12
1106OpenWaitableTimerW@12
1107OutputDebugStringA@4327OutputDebugStringA@4
1108OutputDebugStringW@4328OutputDebugStringW@4
1109PackageFamilyNameFromFullName@12
1110PackageFamilyNameFromId@12
1111PackageFullNameFromId@12
1112PackageIdFromFullName@16
1113PackageNameAndPublisherIdFromFamilyName@20
1114ParseApplicationUserModelId@20
1115PeekConsoleInputA@16329PeekConsoleInputA@16
1116PeekConsoleInputW@16330PeekConsoleInputW@16
1117PeekNamedPipe@24331PeekNamedPipe@24
1118PopIoRingCompletion@8
1119PostQueuedCompletionStatus@16
1120PowerClearRequest@8
1121PowerCreateRequest@4
1122PowerSetRequest@8
1123PrefetchVirtualMemory@16
1124PrepareTape@12332PrepareTape@12
1125PrivCopyFileExW@24
1126PrivMoveFileIdentityW@12
1127Process32First@8
1128Process32FirstW@8
1129Process32Next@8
1130Process32NextW@8
1131ProcessIdToSessionId@8
1132PssCaptureSnapshot@16
1133PssDuplicateSnapshot@20
1134PssFreeSnapshot@8
1135PssQuerySnapshot@16
1136PssWalkMarkerCreate@8
1137PssWalkMarkerFree@4
1138PssWalkMarkerGetPosition@8
1139PssWalkMarkerRewind@4
1140PssWalkMarkerSeek@8
1141PssWalkMarkerSeekToBeginning@4
1142PssWalkMarkerSetPosition@8
1143PssWalkMarkerTell@8
1144PssWalkSnapshot@20
1145PulseEvent@4333PulseEvent@4
1146PurgeComm@8334PurgeComm@8
1147QueryActCtxSettingsW@28
1148QueryActCtxSettingsWWorker@28
1149QueryActCtxW@28
1150QueryActCtxWWorker@28
1151QueryDepthSList@4
1152QueryDosDeviceA@12335QueryDosDeviceA@12
1153QueryDosDeviceW@12336QueryDosDeviceW@12
1154QueryFullProcessImageNameA@16
1155QueryFullProcessImageNameW@16
1156QueryIdleProcessorCycleTime@8
1157QueryIdleProcessorCycleTimeEx@12
1158QueryInformationJobObject@20
1159QueryIoRateControlInformationJobObject@16
1160QueryIoRingCapabilities@4
1161QueryMemoryResourceNotification@8
1162QueryPerformanceCounter@4337QueryPerformanceCounter@4
1163QueryPerformanceFrequency@4338QueryPerformanceFrequency@4
1164QueryProcessAffinityUpdateMode@8
1165QueryProcessCycleTime@8
1166QueryProtectedPolicy@8
1167QueryThreadCycleTime@8
1168QueryThreadProfiling@8
1169QueryThreadpoolStackInformation@8
1170QueryUnbiasedInterruptTime@4
1171QueueUserAPC2@16
1172QueueUserAPC@12
1173QueueUserWorkItem@12
1174QueryWin31IniFilesMappedToRegistry@16
1175QuirkGetData2Worker@8
1176QuirkGetDataWorker@8
1177QuirkIsEnabled2Worker@12
1178QuirkIsEnabled3Worker@8
1179QuirkIsEnabledForPackage2Worker@24
1180QuirkIsEnabledForPackage3Worker@20
1181QuirkIsEnabledForPackage4Worker@20
1182QuirkIsEnabledForPackageWorker@16
1183QuirkIsEnabledForProcessWorker@12
1184QuirkIsEnabledWorker@4
1185RaiseException@16339RaiseException@16
1186RaiseFailFastException@12
1187RaiseInvalid16BitExeError@4
1188ReOpenFile@16
1189ReclaimVirtualMemory@8
1190ReadConsoleA@20340ReadConsoleA@20
1191ReadConsoleInputA@16341ReadConsoleInputA@16
1192ReadConsoleInputExA@20
1193ReadConsoleInputExW@20
1194ReadConsoleInputW@16342ReadConsoleInputW@16
1195ReadConsoleOutputA@20343ReadConsoleOutputA@20
1196ReadConsoleOutputAttribute@20344ReadConsoleOutputAttribute@20
...@@ -1198,447 +346,112 @@ ReadConsoleOutputCharacterA@20...@@ -1198,447 +346,112 @@ ReadConsoleOutputCharacterA@20
1198ReadConsoleOutputCharacterW@20346ReadConsoleOutputCharacterW@20
1199ReadConsoleOutputW@20347ReadConsoleOutputW@20
1200ReadConsoleW@20348ReadConsoleW@20
1201ReadDirectoryChangesExW@36
1202ReadDirectoryChangesW@32
1203ReadFile@20349ReadFile@20
1204ReadFileEx@20350ReadFileEx@20
1205ReadFileScatter@20
1206ReadFileVlm@20
1207ReadProcessMemory@20351ReadProcessMemory@20
1208ReadThreadProfilingData@12
1209;
1210; MSDN says these functions are exported
1211; from advapi32.dll. Commented out for
1212; compatibility with older versions of
1213; Windows.
1214;
1215; RegKrnGetGlobalState and RegKrnInitialize
1216; are known exceptions.
1217;
1218;RegCloseKey@4
1219;RegCopyTreeW@12
1220;RegCreateKeyExA@36
1221;RegCreateKeyExW@36
1222;RegDeleteKeyExA@16
1223;RegDeleteKeyExW@16
1224;RegDeleteTreeA@8
1225;RegDeleteTreeW@8
1226;RegDeleteValueA@8
1227;RegDeleteValueW@8
1228;RegDisablePredefinedCacheEx@0
1229;RegEnumKeyExA@32
1230;RegEnumKeyExW@32
1231;RegEnumValueA@32
1232;RegEnumValueW@32
1233;RegFlushKey@4
1234;RegGetKeySecurity@16
1235;RegGetValueA@28
1236;RegGetValueW@28
1237;RegLoadKeyA@12
1238;RegLoadKeyW@12
1239;RegLoadMUIStringA@28
1240;RegLoadMUIStringW@28
1241;RegNotifyChangeKeyValue@20
1242;RegOpenCurrentUser@8
1243;RegOpenKeyExA@20
1244;RegOpenKeyExW@20
1245;RegOpenUserClassesRoot@16
1246;RegQueryInfoKeyA@48
1247;RegQueryInfoKeyW@48
1248;RegQueryValueExA@24
1249;RegQueryValueExW@24
1250;RegRestoreKeyA@12
1251;RegRestoreKeyW@12
1252;RegSaveKeyExA@16
1253;RegSaveKeyExW@16
1254;RegSetKeySecurity@12
1255;RegSetValueExA@24
1256;RegSetValueExW@24
1257;RegUnLoadKeyA@8
1258;RegUnLoadKeyW@8
1259RegisterApplicationRecoveryCallback@16
1260RegisterApplicationRestart@8
1261RegisterBadMemoryNotification@4
1262RegisterConsoleIME@8
1263RegisterConsoleOS2@4
1264RegisterConsoleVDM@44
1265RegisterWaitForInputIdle@4
1266RegisterWaitForSingleObject@24
1267RegisterWaitForSingleObjectEx@20
1268RegisterWaitUntilOOBECompleted@12
1269RegisterWowBaseHandlers@4
1270RegisterWowExec@4
1271ReleaseActCtx@4
1272ReleaseActCtxWorker@4
1273ReleaseMutex@4352ReleaseMutex@4
1274ReleaseMutexWhenCallbackReturns@8
1275ReleasePackageVirtualizationContext@4
1276ReleasePseudoConsole@4
1277ReleaseSRWLockExclusive@4
1278ReleaseSRWLockShared@4
1279ReleaseSemaphore@12353ReleaseSemaphore@12
1280ReleaseSemaphoreWhenCallbackReturns@12
1281ResolveLocaleName@12
1282RemoveDirectoryA@4354RemoveDirectoryA@4
1283RemoveDirectoryTransactedA@8
1284RemoveDirectoryTransactedW@8
1285RemoveDirectoryW@4355RemoveDirectoryW@4
1286RemoveDllDirectory@4
1287RemoveLocalAlternateComputerNameA@8
1288RemoveLocalAlternateComputerNameW@8
1289RemoveSecureMemoryCacheCallback@4
1290RemoveVectoredContinueHandler@4
1291RemoveVectoredExceptionHandler@4
1292ReplaceFile@24
1293ReplaceFileA@24
1294ReplaceFileW@24
1295ReplacePartitionUnit@12
1296RequestDeviceWakeup@4
1297RequestWakeupLatency@4
1298ResetEvent@4356ResetEvent@4
1299ResetWriteWatch@8
1300ResizePseudoConsole@8
1301ResolveDelayLoadedAPI@24
1302ResolveDelayLoadsFromDll@12
1303RestoreLastError@4
1304ResumeThread@4357ResumeThread@4
1305RtlCaptureContext@4
1306RtlCaptureStackBackTrace@16
1307RtlFillMemory@12
1308RtlMoveMemory@12358RtlMoveMemory@12
1309RtlPcToFileHeader@8
1310RtlUnwind@16359RtlUnwind@16
1311RtlZeroMemory@8360RtlZeroMemory@8
1312ScrollConsoleScreenBufferA@20361ScrollConsoleScreenBufferA@20
1313ScrollConsoleScreenBufferW@20362ScrollConsoleScreenBufferW@20
1314SearchPathA@24363SearchPathA@24
1315SearchPathW@24364SearchPathW@24
1316SetCachedSigningLevel@16
1317SetCalendarInfoA@16
1318SetCalendarInfoW@16
1319SetClientTimeZoneInformation@4
1320SetComPlusPackageInstallStatus@4
1321SetCommBreak@4365SetCommBreak@4
1322SetCommConfig@12
1323SetCommMask@8366SetCommMask@8
1324SetCommState@8367SetCommState@8
1325SetCommTimeouts@8368SetCommTimeouts@8
1326SetComputerNameA@4369SetComputerNameA@4
1327SetComputerNameEx2W@12
1328SetComputerNameExA@8
1329SetComputerNameExW@8
1330SetComputerNameW@4370SetComputerNameW@4
1331SetConsoleActiveScreenBuffer@4371SetConsoleActiveScreenBuffer@4
1332SetConsoleCP@4372SetConsoleCP@4
1333SetConsoleCommandHistoryMode@4
1334SetConsoleCtrlHandler@8373SetConsoleCtrlHandler@8
1335SetConsoleCursor@8
1336SetConsoleCursorInfo@8374SetConsoleCursorInfo@8
1337SetConsoleCursorMode@12
1338SetConsoleCursorPosition@8375SetConsoleCursorPosition@8
1339SetConsoleDisplayMode@12
1340SetConsoleFont@8
1341SetConsoleHardwareState@12
1342SetConsoleHistoryInfo@4
1343SetConsoleIcon@4
1344SetConsoleInputExeNameA@4
1345SetConsoleInputExeNameW@4
1346SetConsoleKeyShortcuts@16
1347SetConsoleLocalEUDC@16
1348SetConsoleMaximumWindowSize@8
1349SetConsoleMenuClose@4
1350SetConsoleMode@8376SetConsoleMode@8
1351SetConsoleNlsMode@8
1352SetConsoleNumberOfCommandsA@8
1353SetConsoleNumberOfCommandsW@8
1354SetConsoleOS2OemFormat@4
1355SetConsoleOutputCP@4377SetConsoleOutputCP@4
1356SetConsolePalette@12
1357SetConsoleScreenBufferInfoEx@8
1358SetConsoleScreenBufferSize@8378SetConsoleScreenBufferSize@8
1359SetConsoleTextAttribute@8379SetConsoleTextAttribute@8
1360SetConsoleTitleA@4380SetConsoleTitleA@4
1361SetConsoleTitleW@4381SetConsoleTitleW@4
1362SetConsoleWindowInfo@12382SetConsoleWindowInfo@12
1363SetCriticalSectionSpinCount@8
1364SetCurrentConsoleFontEx@12
1365SetCurrentDirectoryA@4383SetCurrentDirectoryA@4
1366SetCurrentDirectoryW@4384SetCurrentDirectoryW@4
1367SetDefaultCommConfigA@12
1368SetDefaultCommConfigW@12
1369SetDefaultDllDirectories@4
1370SetDllDirectoryA@4
1371SetDllDirectoryW@4
1372SetDynamicTimeZoneInformation@4
1373SetEndOfFile@4385SetEndOfFile@4
1374SetEnvironmentStringsA@4
1375SetEnvironmentStringsW@4
1376SetEnvironmentVariableA@8386SetEnvironmentVariableA@8
1377SetEnvironmentVariableW@8387SetEnvironmentVariableW@8
1378SetErrorMode@4388SetErrorMode@4
1379SetEvent@4389SetEvent@4
1380SetEventWhenCallbackReturns@8
1381SetFileApisToANSI@0
1382SetFileApisToOEM@0390SetFileApisToOEM@0
1383SetFileAttributesA@8391SetFileAttributesA@8
1384SetFileAttributesTransactedA@12
1385SetFileAttributesTransactedW@12
1386SetFileAttributesW@8392SetFileAttributesW@8
1387SetFileBandwidthReservation@24
1388SetFileCompletionNotificationModes@8
1389SetFileInformationByHandle@16
1390SetFileIoOverlappedRange@12
1391SetFilePointer@16393SetFilePointer@16
1392SetFilePointerEx@20
1393SetFileShortNameA@8
1394SetFileShortNameW@8
1395SetFileTime@16394SetFileTime@16
1396SetFileValidData@12
1397SetFirmwareEnvironmentVariableA@16
1398SetFirmwareEnvironmentVariableExA@20
1399SetFirmwareEnvironmentVariableExW@20
1400SetFirmwareEnvironmentVariableW@16
1401SetHandleContext@8
1402SetHandleCount@4395SetHandleCount@4
1403SetHandleInformation@12
1404SetInformationJobObject@16
1405SetIoRateControlInformationJobObject@8
1406SetIoRingCompletionEvent@8
1407SetLastConsoleEventActive@0
1408SetLastError@4396SetLastError@4
1409SetLocalPrimaryComputerNameA@8
1410SetLocalPrimaryComputerNameW@8
1411SetLocalTime@4397SetLocalTime@4
1412SetLocaleInfoA@12
1413SetLocaleInfoW@12
1414SetMailslotInfo@8398SetMailslotInfo@8
1415SetMessageWaitingIndicator@8
1416SetNamedPipeAttribute@20
1417SetNamedPipeHandleState@16399SetNamedPipeHandleState@16
1418SetPriorityClass@8400SetPriorityClass@8
1419SetProcessAffinityMask@8
1420SetProcessAffinityUpdateMode@8
1421SetProcessDEPPolicy@4
1422SetProcessDefaultCpuSetMasks@12
1423SetProcessDefaultCpuSets@12
1424SetProcessDynamicEHContinuationTargets@12
1425SetProcessDynamicEnforcedCetCompatibleRanges@12
1426SetProcessInformation@16
1427SetProcessMitigationPolicy@12
1428SetProcessPreferredUILanguages@12
1429SetProcessPriorityBoost@8
1430SetProcessShutdownParameters@8401SetProcessShutdownParameters@8
1431SetProcessUserModeExceptionPolicy@4
1432SetProcessWorkingSetSize@12
1433SetProcessWorkingSetSizeEx@16
1434SetProtectedPolicy@12
1435SetSearchPathMode@4
1436SetStdHandle@8402SetStdHandle@8
1437SetStdHandleEx@12
1438SetSystemFileCacheSize@12
1439SetSystemPowerState@8
1440SetSystemTime@4403SetSystemTime@4
1441SetSystemTimeAdjustment@8
1442SetTapeParameters@12404SetTapeParameters@12
1443SetTapePosition@24405SetTapePosition@24
1444SetTermsrvAppInstallMode@4
1445SetThreadAffinityMask@8
1446SetThreadContext@8406SetThreadContext@8
1447SetThreadDescription@8
1448SetThreadErrorMode@8
1449SetThreadExecutionState@4
1450SetThreadGroupAffinity@12
1451SetThreadIdealProcessor@8
1452SetThreadIdealProcessorEx@12
1453SetThreadInformation@16
1454SetThreadLocale@4407SetThreadLocale@4
1455SetThreadPreferredUILanguages@12
1456SetThreadPriority@8408SetThreadPriority@8
1457SetThreadPriorityBoost@8
1458SetThreadSelectedCpuSetMasks@12
1459SetThreadSelectedCpuSets@12
1460SetThreadStackGuarantee@4
1461; MSDN says this is exported from ADVAPI32.DLL.
1462; SetThreadToken@8
1463SetThreadUILanguage@4
1464SetThreadpoolStackInformation@8
1465SetThreadpoolThreadMaximum@8
1466SetThreadpoolThreadMinimum@8
1467SetThreadpoolTimer@16
1468SetThreadpoolTimerEx@16
1469SetThreadpoolWait@12
1470SetThreadpoolWaitEx@16
1471SetTimeZoneInformation@4409SetTimeZoneInformation@4
1472SetTimerQueueTimer@24
1473SetUnhandledExceptionFilter@4410SetUnhandledExceptionFilter@4
1474SetUserGeoID@4
1475SetUserGeoName@4
1476SetVDMCurrentDirectories@8
1477SetVolumeLabelA@8411SetVolumeLabelA@8
1478SetVolumeLabelW@8412SetVolumeLabelW@8
1479SetVolumeMountPointA@8
1480SetVolumeMountPointW@8
1481SetVolumeMountPointWStub@8
1482SetWaitableTimer@24
1483SetWaitableTimerEx@28
1484SetXStateFeaturesMask@12
1485SetupComm@12413SetupComm@12
1486ShowConsoleCursor@8
1487SignalObjectAndWait@16
1488SizeofResource@8414SizeofResource@8
1489Sleep@4415Sleep@4
1490SleepConditionVariableCS@12
1491SleepConditionVariableSRW@16
1492SleepEx@8416SleepEx@8
1493SortCloseHandle@4
1494SortGetHandle@12
1495StartThreadpoolIo@4
1496SubmitIoRing@16
1497SubmitThreadpoolWork@4
1498SuspendThread@4417SuspendThread@4
1499SwitchToFiber@4
1500SwitchToThread@0
1501SystemTimeToFileTime@8418SystemTimeToFileTime@8
1502SystemTimeToTzSpecificLocalTime@12
1503SystemTimeToTzSpecificLocalTimeEx@12
1504TerminateJobObject@8
1505TerminateProcess@8419TerminateProcess@8
1506TerminateThread@8420TerminateThread@8
1507TermsrvAppInstallMode@0
1508TermsrvConvertSysRootToUserDir@8
1509TermsrvCreateRegEntry@20
1510TermsrvDeleteKey@4
1511TermsrvDeleteValue@8
1512TermsrvGetPreSetValue@16
1513TermsrvGetWindowsDirectoryA@8
1514TermsrvGetWindowsDirectoryW@8
1515TermsrvOpenRegEntry@12
1516TermsrvOpenUserClasses@8
1517TermsrvRestoreKey@12
1518TermsrvSetKeySecurity@12
1519TermsrvSetValueKey@24
1520TermsrvSyncUserIniFileExt@4
1521Thread32First@8
1522Thread32Next@8
1523TlsAlloc@0421TlsAlloc@0
1524TlsFree@4422TlsFree@4
1525TlsGetValue2@4
1526TlsGetValue@4423TlsGetValue@4
1527TlsSetValue@8424TlsSetValue@8
1528Toolhelp32ReadProcessMemory@20
1529TransactNamedPipe@28425TransactNamedPipe@28
1530TransmitCommChar@8426TransmitCommChar@8
1531TrimVirtualBuffer@4
1532TryAcquireSRWLockExclusive@4
1533TryAcquireSRWLockShared@4
1534TryEnterCriticalSection@4
1535TrySubmitThreadpoolCallback@12
1536TzSpecificLocalTimeToSystemTime@12
1537TzSpecificLocalTimeToSystemTimeEx@12
1538UTRegister@28
1539UTUnRegister@4
1540UnhandledExceptionFilter@4427UnhandledExceptionFilter@4
1541UnlockFile@20428UnlockFile@20
1542UnlockFileEx@20429UnlockFileEx@20
1543UnmapViewOfFile@4430UnmapViewOfFile@4
1544UnmapViewOfFileEx@8
1545UnmapViewOfFileVlm@4
1546UnregisterApplicationRecoveryCallback@0
1547UnregisterApplicationRestart@0
1548UnregisterBadMemoryNotification@4
1549UnregisterConsoleIME@0
1550UnregisterWait@4
1551UnregisterWaitEx@8
1552UnregisterWaitUntilOOBECompleted@4
1553UpdateCalendarDayOfWeek@4
1554UpdateProcThreadAttribute@28
1555UpdateResourceA@24431UpdateResourceA@24
1556UpdateResourceW@24432UpdateResourceW@24
1557VDMConsoleOperation@8
1558VDMOperationStarted@4
1559VerLanguageNameA@12433VerLanguageNameA@12
1560VerLanguageNameW@12434VerLanguageNameW@12
1561VerSetConditionMask@16
1562VerifyConsoleIoHandle@4
1563VerifyScripts@20
1564VerifyVersionInfoA@16
1565VerifyVersionInfoW@16
1566VirtualAlloc@16435VirtualAlloc@16
1567VirtualAllocEx@20
1568VirtualAllocExNuma@24
1569VirtualAllocVlm@24
1570VirtualBufferExceptionHandler@12
1571VirtualFree@12436VirtualFree@12
1572VirtualFreeEx@16
1573VirtualFreeVlm@20
1574VirtualLock@8437VirtualLock@8
1575VirtualProtect@16438VirtualProtect@16
1576VirtualProtectEx@20439VirtualProtectEx@20
1577VirtualProtectVlm@24
1578VirtualQuery@12440VirtualQuery@12
1579VirtualQueryEx@16441VirtualQueryEx@16
1580VirtualQueryVlm@16
1581VirtualUnlock@8442VirtualUnlock@8
1582WTSGetActiveConsoleSessionId@0
1583WaitCommEvent@12443WaitCommEvent@12
1584WaitForDebugEvent@8444WaitForDebugEvent@8
1585WaitForDebugEventEx@8
1586WaitForMultipleObjects@16445WaitForMultipleObjects@16
1587WaitForMultipleObjectsEx@20446WaitForMultipleObjectsEx@20
1588WaitForSingleObject@8447WaitForSingleObject@8
1589WaitForSingleObjectEx@12448WaitForSingleObjectEx@12
1590WaitForThreadpoolIoCallbacks@8
1591WaitForThreadpoolTimerCallbacks@8
1592WaitForThreadpoolWaitCallbacks@8
1593WaitForThreadpoolWorkCallbacks@8
1594WaitNamedPipeA@8449WaitNamedPipeA@8
1595WaitNamedPipeW@8450WaitNamedPipeW@8
1596WakeAllConditionVariable@4
1597WakeConditionVariable@4
1598WerGetFlags@8
1599WerGetFlagsWorker@8
1600WerRegisterAdditionalProcess@8
1601WerRegisterAppLocalDump@4
1602WerRegisterCustomMetadata@8
1603WerRegisterExcludedMemoryBlock@8
1604WerRegisterFile@12
1605WerRegisterFileWorker@12
1606WerRegisterMemoryBlock@8
1607WerRegisterMemoryBlockWorker@8
1608WerRegisterRuntimeExceptionModule@8
1609WerRegisterRuntimeExceptionModuleWorker@8
1610WerSetFlags@4
1611WerSetFlagsWorker@4
1612WerUnregisterAdditionalProcess@4
1613WerUnregisterAppLocalDump@0
1614WerUnregisterCustomMetadata@4
1615WerUnregisterExcludedMemoryBlock@4
1616WerUnregisterFile@4
1617WerUnregisterFileWorker@4
1618WerUnregisterMemoryBlock@4
1619WerUnregisterMemoryBlockWorker@4
1620WerUnregisterRuntimeExceptionModule@8
1621WerUnregisterRuntimeExceptionModuleWorker@8
1622WerpCleanupMessageMapping@0
1623WerpGetDebugger@8
1624WerpInitiateRemoteRecovery@4
1625WerpNotifyLoadStringResource@16
1626WerpNotifyLoadStringResourceEx@20
1627WerpNotifyUseStringResource@4
1628WerpStringLookup@8
1629WideCharToMultiByte@32451WideCharToMultiByte@32
1630WinExec@8452WinExec@8
1631Wow64DisableWow64FsRedirection@4
1632Wow64EnableWow64FsRedirection@4
1633Wow64GetThreadContext@8
1634Wow64GetThreadSelectorEntry@12
1635Wow64RevertWow64FsRedirection@4
1636Wow64SetThreadContext@8
1637Wow64SuspendThread@4
1638WriteConsoleA@20453WriteConsoleA@20
1639WriteConsoleInputA@16454WriteConsoleInputA@16
1640WriteConsoleInputVDMA@16
1641WriteConsoleInputVDMW@16
1642WriteConsoleInputW@16455WriteConsoleInputW@16
1643WriteConsoleOutputA@20456WriteConsoleOutputA@20
1644WriteConsoleOutputAttribute@20457WriteConsoleOutputAttribute@20
...@@ -1648,23 +461,16 @@ WriteConsoleOutputW@20...@@ -1648,23 +461,16 @@ WriteConsoleOutputW@20
1648WriteConsoleW@20461WriteConsoleW@20
1649WriteFile@20462WriteFile@20
1650WriteFileEx@20463WriteFileEx@20
1651WriteFileGather@20
1652WriteFileVlm@20
1653WritePrivateProfileSectionA@12464WritePrivateProfileSectionA@12
1654WritePrivateProfileSectionW@12465WritePrivateProfileSectionW@12
1655WritePrivateProfileStringA@16466WritePrivateProfileStringA@16
1656WritePrivateProfileStringW@16467WritePrivateProfileStringW@16
1657WritePrivateProfileStructA@20
1658WritePrivateProfileStructW@20
1659WriteProcessMemory@20468WriteProcessMemory@20
1660WriteProcessMemoryVlm@20
1661WriteProfileSectionA@8469WriteProfileSectionA@8
1662WriteProfileSectionW@8470WriteProfileSectionW@8
1663WriteProfileStringA@12471WriteProfileStringA@12
1664WriteProfileStringW@12472WriteProfileStringW@12
1665WriteTapemark@16473WriteTapemark@16
1666ZombifyActCtx@4
1667ZombifyActCtxWorker@4
1668_hread@12474_hread@12
1669_hwrite@12475_hwrite@12
1670_lclose@4476_lclose@4
...@@ -1673,32 +479,1760 @@ _llseek@12...@@ -1673,32 +479,1760 @@ _llseek@12
1673_lopen@8479_lopen@8
1674_lread@12480_lread@12
1675_lwrite@12481_lwrite@12
1676lstrcat@8
1677lstrcatA@8482lstrcatA@8
1678lstrcatW@8483lstrcatW@8
1679lstrcmp@8
1680lstrcmpA@8484lstrcmpA@8
1681lstrcmpW@8485lstrcmpW@8
1682lstrcmpi@8
1683lstrcmpiA@8486lstrcmpiA@8
1684lstrcmpiW@8487lstrcmpiW@8
1685lstrcpy@8
1686lstrcpyA@8488lstrcpyA@8
1687lstrcpyW@8489lstrcpyW@8
1688lstrcpyn@12490lstrlenA@4
491lstrlenW@4
492
493; This is list of symbols available only in Win32s (not available in Win9x and WinNT)
494; BaseRtlAllocateHandle@4
495; BaseRtlDestroyHandleTable@4
496; BaseRtlFreeHandle@8
497; BaseRtlInitializeHandleTable@8
498; Free32bDLLCbEntries@8
499; Get16DLLAddress@8
500; GetDOSFileHandle@4
501; GetUserNameA@8 ; MSDN says this is exported from advapi32.dll
502; GetUserNameW@8 ; MSDN says this is exported from advapi32.dll
503; OpenThread@4 ; Win32s OpenThread takes one DWORD threadid argument, Windows ME and Windows 2000+ contain "OpenThread" symbol but ABI is "OpenThread@12"
504; PrivateFreeLibrary@4
505; PrivateLoadLibrary@4
506; RtlCreateHeap@24 ; MSDN says this is exported from ntdll.dll
507; RtlDestroyHeap@4 ; MSDN says this is exported from ntdll.dll
508; RtlExAllocateHeap@12 ; MSDN says this is exported from ntdll.dll
509; RtlExFreeHeap@12 ; MSDN says this is exported from ntdll.dll
510; RtlExReAllocateHeap@16 ; MSDN says this is exported from ntdll.dll
511; RtlExSizeHeap@12 ; MSDN says this is exported from ntdll.dll
512; SetLastErrorEx@8 ; MSDN says this is exported from user32.dll
513
514; This is list of symbols available in all Win32s and Win9x versions and since Windows 2000
515UTRegister@28
516UTUnRegister@4
517
518; This is list of symbols added in Win32s 1.15, available in all Win9x versions and since Windows NT 3.5
519; Note that Win32s 1.15 and all later versions merged advapi32.dll, gdi32.dll,
520; kernel32.dll, ntdll.dll, user32.dll (and Win32s 1.25a and later also mpr.dll)
521; libraries into one big w32scomb.dll library and made those libraries as alias
522; to w32scomb.dll, which effectively means that every symbol from every library
523; is available also from kernel32.dll (aliased to w32scomb.dll). Below are only
524; those Win32s symbols which are available in some Win9x or WinNT version of
525; kernel32.dll or logically belongs to kernel32.dll.
526CompareStringA@24
527ConvertDefaultLocale@4
528EnumCalendarInfoA@16
529EnumCalendarInfoW@16
530EnumDateFormatsA@12
531EnumDateFormatsW@12
532EnumSystemCodePagesA@8
533EnumSystemCodePagesW@8
534EnumSystemLocalesA@8
535EnumSystemLocalesW@8
536EnumTimeFormatsA@12
537EnumTimeFormatsW@12
538GetCurrencyFormatA@24
539GetCurrencyFormatW@24
540GetDateFormatA@24
541GetLocaleInfoA@16
542GetNumberFormatA@24
543GetNumberFormatW@24
544GetTimeFormatA@24
545GetVersionExA@4
546GetVersionExW@4
547HeapValidate@12
548IsValidLocale@8
549LCMapStringA@24
550SetLocaleInfoA@12
551SetLocaleInfoW@12
1689lstrcpynA@12552lstrcpynA@12
1690lstrcpynW@12553lstrcpynW@12
554
555; This is list of symbols added in Win32s 1.15 and available only in Win32s (not available in Win9x and WinNT)
556; Insert16hInWin32s@4
557; PrivateGetModuleUsage@4
558
559; This is list of symbols added in Win32s 1.20, available in all Win9x versions and since Windows NT 3.1
560GetBinaryType@8
561RtlFillMemory@12
562lstrcat@8
563lstrcmp@8
564lstrcmpi@8
565lstrcpy@8
1691lstrlen@4566lstrlen@4
1692lstrlenA@4567
1693lstrlenW@4568; This is list of symbols added in Win32s 1.20, available since Windows NT 3.1, but not available in Win9x
1694;569AddConsoleAliasW@12
1695; MSDN says these functions are exported570BaseAttachCompleteThunk@0 ; FIXME: All WinNT versions have ABI "BaseAttachCompleteThunk@16", removed in Windows XP
1696; from winmm.dll. Commented out for571; BasepDebugDump@4 ; removed in Windows NT 3.51
1697; compatibility with older versions of572CloseConsoleHandle@4
1698; Windows.573CmdBatNotification@4
1699;574ConsoleMenuControl@12
1700;timeBeginPeriod@4575; ConsoleSubst@16 ; removed in Windows NT 3.51
1701;timeEndPeriod@4576CreateVirtualBuffer@12 ; removed in Windows Server 2003 SP1
1702;timeGetDevCaps@8577DuplicateConsoleHandle@16
1703;timeGetSystemTime@8578ExitVDM@8
1704;timeGetTime@0579ExpungeConsoleCommandHistoryA@4
580ExpungeConsoleCommandHistoryW@4
581ExtendVirtualBuffer@8 ; removed in Windows Server 2003 SP1
582FreeVirtualBuffer@4 ; removed in Windows Server 2003 SP1
583GetConsoleAliasA@16
584GetConsoleAliasExesA@8
585GetConsoleAliasExesLengthA@0
586GetConsoleAliasExesLengthW@0
587GetConsoleAliasExesW@8
588GetConsoleAliasW@16
589GetConsoleAliasesA@12
590GetConsoleAliasesLengthA@4
591GetConsoleAliasesLengthW@4
592GetConsoleAliasesW@12
593GetConsoleCommandHistoryA@12
594GetConsoleCommandHistoryLengthA@4
595GetConsoleCommandHistoryLengthW@4
596GetConsoleCommandHistoryW@12
597GetConsoleDisplayMode@4
598GetConsoleFontInfo@16
599GetConsoleFontSize@8
600GetConsoleHardwareState@12
601GetConsoleInputWaitHandle@0
602GetCurrentConsoleFont@12
603GetNextVDMCommand@4
604GetNumberOfConsoleFonts@0
605GetVDMCurrentDirectories@8
606InvalidateConsoleDIBits@8
607OpenConsoleW@16
608QueryWin31IniFilesMappedToRegistry@16 ; removed in Windows Server 2003
609RegisterConsoleVDM@44
610RegisterWaitForInputIdle@4
611SetConsoleCommandHistoryMode@4 ; removed in Windows Vista
612SetConsoleCursor@8
613SetConsoleDisplayMode@12
614SetConsoleFont@8
615SetConsoleHardwareState@12
616SetConsoleKeyShortcuts@16
617SetConsoleMaximumWindowSize@8
618SetConsoleMenuClose@4
619SetConsoleNumberOfCommandsA@8
620SetConsoleNumberOfCommandsW@8
621SetConsolePalette@12
622SetLastConsoleEventActive@0
623SetVDMCurrentDirectories@8
624ShowConsoleCursor@8
625TrimVirtualBuffer@4 ; removed in Windows Server 2003 SP1
626VDMConsoleOperation@8
627VDMOperationStarted@4
628VerifyConsoleIoHandle@4
629VirtualBufferExceptionHandler@12 ; removed in Windows Server 2003 SP1
630WriteConsoleInputVDMA@16
631WriteConsoleInputVDMW@16
632
633; This is list of symbols added in Win32s 1.20, available in all Win9x versions and since Windows NT 3.5
634CommConfigDialogA@12
635CommConfigDialogW@12
636CreateIoCompletionPort@16
637DisableThreadLibraryCalls@4
638FoldStringA@20
639FreeEnvironmentStringsA@4
640FreeEnvironmentStringsW@4
641FreeLibraryAndExitThread@8
642GetBinaryTypeA@8
643GetBinaryTypeW@8
644GetCommConfig@12
645GetCompressedFileSizeA@8
646GetCompressedFileSizeW@8
647GetDefaultCommConfigA@12
648GetDefaultCommConfigW@12
649GetEnvironmentStringsA@0
650GetEnvironmentStringsW@0
651GetHandleInformation@8
652GetProcessAffinityMask@12
653GetProcessWorkingSetSize@12
654GetQueuedCompletionStatus@20
655GetShortPathNameA@12
656GetShortPathNameW@12
657GetStringTypeA@20
658GetStringTypeExA@20
659GetStringTypeExW@20
660GetSystemTimeAdjustment@12
661IsDBCSLeadByteEx@8
662SetCommConfig@12
663SetDefaultCommConfigA@12
664SetDefaultCommConfigW@12
665SetHandleInformation@12
666SetProcessWorkingSetSize@12
667SetSystemTimeAdjustment@8
668SetThreadAffinityMask@8
669SystemTimeToTzSpecificLocalTime@12
670lstrcpyn@12
671
672; This is list of symbols added in Win32s 1.20, available since Windows NT 3.5, but not available in Win9x
673RegisterWowBaseHandlers@4
674RegisterWowExec@4
675
676; This is list of symbols added in Win32s 1.25, available in all Win9x versions and since Windows NT 3.5
677AreFileApisANSI@0
678GetProcessHeaps@8
679SetFileApisToANSI@0
680
681; This is list of symbols added in Win32s 1.25, available in all Win9x versions and since Windows NT 3.51
682GetPrivateProfileSectionNamesA@12
683GetPrivateProfileSectionNamesW@12
684GetPrivateProfileStructA@20
685GetPrivateProfileStructW@20
686GetSystemPowerStatus@4
687
688; This is list of symbols added in Win32s 1.25, available since Windows NT 3.1, but not available in Win9x
689AddConsoleAliasA@12
690
691; This is list of symbols added in Win32s 1.25, available since Windows 2000, but not available in Win9x
692GetConsoleCharType@12
693GetConsoleCursorMode@12
694GetConsoleNlsMode@8
695SetConsoleCursorMode@12
696SetConsoleLocalEUDC@16
697SetConsoleNlsMode@8
698
699; This is list of symbols added in Win32s 1.25 and available only in Win32s (not available in Win9x and WinNT)
700; TlsCleanEntries@4
701
702; This is list of symbols added in Win32s 1.30, available in all Win9x versions and since Windows NT 3.5
703HeapCompact@8
704HeapLock@4
705HeapUnlock@4
706HeapWalk@8
707
708; This is list of symbols added in Win32s 1.30, available in all Win9x versions and since Windows NT 3.51
709GetProcessVersion@4
710GetSystemTimeAsFileTime@4
711PostQueuedCompletionStatus@16
712SetSystemPowerState@8
713WritePrivateProfileStructA@20
714WritePrivateProfileStructW@20
715
716; This is list of symbols added in Win32s 1.30, available since Windows 98 and since Windows NT 3.51
717IsDebuggerPresent@0
718
719; This is list of symbols added in Win32s 1.30, available since Windows NT 3.51, but not available in Win9x
720HeapCreateTagsW@16 ; removed in Windows Vista
721HeapExtend@16 ; removed in Windows Vista
722HeapQueryTagW@20 ; removed in Windows Vista
723HeapSummary@12
724HeapUsage@20 ; removed in Windows Vista
725
726;; This is end of Win32s symbols ;;
727
728
729; This is list of symbols available only in Windows NT 3.1, not available in Win32s and Win9x
730; ValidateLCID@8 ; removed in Windows NT 3.5
731
732;; This is end of Windows NT 3.1 symbols ;;
733
734
735; This is list of symbols added in Windows NT 3.51 SP3 and Windows 98, but not available in Win32s
736ConvertThreadToFiber@4
737CreateFiber@12
738DeleteFiber@4
739ReadDirectoryChangesW@32
740SwitchToFiber@4
741
742;; This is end of Windows NT 3.51 symbols ;;
743
744
745; This is list of symbols added in Windows NT 4.0 and available also in all Win9x versions, but not available in Win32s
746QueueUserAPC@12
747
748; This is list of symbols added in Windows NT 4.0 and Windows 95 OSR2, but not available in Win32s
749GetDiskFreeSpaceExA@16
750GetDiskFreeSpaceExW@16
751
752; This is list of symbols added in Windows NT 4.0 and Windows 98, but not available in Win32s
753CancelIo@4
754CancelWaitableTimer@4
755CopyFileExA@24
756CopyFileExW@24
757CreateWaitableTimerA@12
758CreateWaitableTimerW@12
759FindFirstFileExA@24
760FindFirstFileExW@24
761GetFileAttributesExA@12
762GetFileAttributesExW@12
763GetProcessPriorityBoost@8
764GetThreadPriorityBoost@8
765InterlockedCompareExchange@12 DATA ; FIXME: why is decorated stdcall function symbol disabled?
766InterlockedExchangeAdd@8 DATA ; FIXME: why is decorated stdcall function symbol disabled?
767IsProcessorFeaturePresent@4
768OpenWaitableTimerA@12
769OpenWaitableTimerW@12
770SetProcessAffinityMask@8
771SetProcessPriorityBoost@8
772SetThreadIdealProcessor@8
773SetThreadPriorityBoost@8
774SetWaitableTimer@24
775SignalObjectAndWait@16
776SwitchToThread@0
777TryEnterCriticalSection@4
778VirtualAllocEx@20
779VirtualFreeEx@16
780
781; This is list of symbols added in Windows NT 4.0, but not available in Win9x and Win32s
782GetConsoleInputExeNameA@8
783GetConsoleInputExeNameW@8
784GetConsoleKeyboardLayoutNameA@4
785GetConsoleKeyboardLayoutNameW@4
786ReadConsoleInputExA@20
787ReadConsoleInputExW@20
788SetConsoleIcon@4
789SetConsoleInputExeNameA@4
790SetConsoleInputExeNameW@4
791
792; This is list of symbols added in Windows NT 4.0 SP2 and Windows 98, but not available in Win32s
793ReadFileScatter@20
794WriteFileGather@20
795
796; This is list of symbols added in Windows NT 4.0 SP3 and Windows 98, but not available in Win32s
797InitializeCriticalSectionAndSpinCount@8
798SetCriticalSectionSpinCount@8
799
800; This is list of symbols added in Windows NT 4.0 SP4, but not available in Win32s and Win9x
801VerifyVersionInfoA@16
802VerifyVersionInfoW@16
803
804;; This is end of Windows NT 4.0 symbols ;;
805
806
807; This is list of symbols available in all Win9x versions and also since Windows 2000, but not available in Win32s
808CreateToolhelp32Snapshot@8
809Heap32First@12
810Heap32ListFirst@8
811Heap32ListNext@8
812Heap32Next@4
813Module32First@8
814Module32Next@8
815Process32First@8
816Process32Next@8
817Thread32First@8
818Thread32Next@8
819Toolhelp32ReadProcessMemory@20
820
821; This is list of symbols available in all Win9x versions and also since Windows XP, but not available in Win32s
822CreateSocketHandle@0
823GetHandleContext@4
824SetHandleContext@8
825
826; This is list of symbols available in all Win9x versions and also since Windows Vista, but not available in Win32s
827GetErrorMode@0
828
829; This is list of ordinal-only symbols available in all Win9x versions, but not available in Win32s and WinNT
830; Symbol names are taken from:
831; https://www.geoffchappell.com/studies/windows/win32/kernel32/history/ords40.htm
832; VxDCall0@4 @1 NONAME ; stdcall+regs
833; VxDCall1@8 @2 NONAME ; stdcall+regs
834; VxDCall2@12 @3 NONAME ; stdcall+regs
835; VxDCall3@16 @4 NONAME ; stdcall+regs
836; VxDCall4@20 @5 NONAME ; stdcall+regs
837; VxDCall5@24 @6 NONAME ; stdcall+regs
838; VxDCall6@28 @7 NONAME ; stdcall+regs
839; VxDCall7@32 @8 NONAME ; stdcall+regs
840; VxDCall8@36 @9 NONAME ; stdcall+regs
841; k32CharToOemA@8 @10 NONAME
842; k32CharToOemBuffA@12 @11 NONAME
843; k32OemToCharA@8 @12 NONAME
844; k32OemToCharBuffA@12 @13 NONAME
845; k32LoadStringA@16 @14 NONAME
846; k32wsprintfA @15 NONAME ; cdecl/varargs
847; k32wvsprintfA@12 @16 NONAME
848; CommonUnimpStub @17 NONAME ; regs
849; GetProcessDword@8 @18 NONAME
850; ThunkTheTemplateHandle@4 @19 NONAME
851; DosFileHandleToWin32Handle@4 @20 NONAME
852; Win32HandleToDosFileHandle@4 @21 NONAME
853; DisposeLZ32Handle@4 @22 NONAME
854; GDIReallyCares@4 @23 NONAME
855; GlobalAlloc16@8 @24 NONAME
856; GlobalLock16@4 @25 NONAME
857; GlobalUnlock16@4 @26 NONAME
858; GlobalFix16@4 @27 NONAME
859; GlobalUnfix16@4 @28 NONAME
860; GlobalWire16@4 @29 NONAME
861; GlobalUnWire16@4 @30 NONAME
862; GlobalFree16@4 @31 NONAME
863; GlobalSize16@4 @32 NONAME
864; HouseCleanLogicallyDeadHandles@0 @33 NONAME
865; GetWin16DOSEnv@0 @34 NONAME
866; LoadLibrary16@4 @35 NONAME
867; FreeLibrary16@4 @36 NONAME
868; GetProcAddress16@8 @37 NONAME
869; AllocMappedBuffer @38 NONAME ; regs
870; FreeMappedBuffer @39 NONAME ; regs
871; OT_32ThkLSF @40 NONAME ; regs
872; ThunkInitLSF@20 @41 NONAME
873; LogApiThkLSF@4 @42 NONAME
874; ThunkInitLS@20 @43 NONAME
875; LogApiThkSL@4 @44 NONAME
876; Common32ThkLS @45 NONAME ; regs+stack
877; ThunkInitSL@20 @46 NONAME
878; LogCBThkSL@4 @47 NONAME
879; ReleaseThunkLock@4 @48 NONAME
880; RestoreThunkLock@4 @49 NONAME
881; AddAtomA@4 @50 ; Ordinal 50 is exported also with symbol name AddAtomA
882; W32S_BackTo32 @51 NONAME ; regs+stack
883; GetThunkBuff@0 @52 NONAME
884; GetThunkStuff@8 @53 NONAME
885; WOWCallback16@8 @54 NONAME ; MSDN says this is exported from wow32.dll
886; WOWCallback16Ex@20 @55 NONAME ; MSDN says this is exported from wow32.dll
887; WOWGetVDMPointer@12 @56 NONAME ; MSDN says this is exported from wow32.dll
888; WOWHandle32@8 @57 NONAME ; MSDN says this is exported from wow32.dll
889; WOWHandle16@8 @58 NONAME ; MSDN says this is exported from wow32.dll
890; WOWGlobalAlloc16@8 @59 NONAME ; MSDN says this is exported from wow32.dll
891; WOWGlobalLock16@4 @60 NONAME ; MSDN says this is exported from wow32.dll
892; WOWGlobalUnlock16@4 @61 NONAME ; MSDN says this is exported from wow32.dll
893; WOWGlobalFree16@4 @62 NONAME ; MSDN says this is exported from wow32.dll
894; WOWGlobalAllocLock16@12 @63 NONAME ; MSDN says this is exported from wow32.dll
895; WOWGlobalUnlockFree16@4 @64 NONAME ; MSDN says this is exported from wow32.dll
896; WOWGlobalLockSize16@8 @65 NONAME ; MSDN says this is exported from wow32.dll
897; WOWYield16@0 @66 NONAME ; MSDN says this is exported from wow32.dll
898; WOWDirectedYield16@4 @67 NONAME ; MSDN says this is exported from wow32.dll
899; WOWGetVDMPointerFix@12 @68 NONAME ; MSDN says this is exported from wow32.dll
900; WOWGetVDMPointerUnfix@4 @69 NONAME ; MSDN says this is exported from wow32.dll
901; WOWGetDescriptor@8 @70 NONAME ; MSDN says this is exported from wow32.dll
902; IsThreadId@4 @71 NONAME
903; RtlLargeIntegerAdd@16 @72 NONAME ; MSDN says this is exported from ntdll.dll
904; RtlEnlargedIntegerMultiply@8 @73 NONAME ; MSDN says this is exported from ntdll.dll
905; RtlEnlargedUnsignedMultiply@8 @74 NONAME ; MSDN says this is exported from ntdll.dll
906; RtlEnlargedUnsignedDivide@16 @75 NONAME ; MSDN says this is exported from ntdll.dll
907; RtlEnlargedIntegerDivide@16 @76 NONAME ; MSDN says this is exported from ntdll.dll
908; RtlExtendedMagicDivide@20 @77 NONAME ; MSDN says this is exported from ntdll.dll
909; RtlExtendedIntegerMultiply@12 @78 NONAME ; MSDN says this is exported from ntdll.dll
910; RtlLargeIntegerShiftLeft@12 @79 NONAME ; MSDN says this is exported from ntdll.dll
911; RtlLargeIntegerShiftRight@12 @80 NONAME ; MSDN says this is exported from ntdll.dll
912; RtlLargeIntegerArithmeticShift@12 @81 NONAME ; MSDN says this is exported from ntdll.dll
913; RtlLargeIntegerNegate@8 @82 NONAME ; MSDN says this is exported from ntdll.dll
914; RtlLargeIntegerSubtract@16 @83 NONAME ; MSDN says this is exported from ntdll.dll
915; RtlConvertLongToLargeInteger@4 @84 NONAME ; MSDN says this is exported from ntdll.dll
916; RtlConvertUlongToLargeInteger@4 @85 NONAME ; MSDN says this is exported from ntdll.dll
917; _LeaveSysLevel_NoThk@4 @86 NONAME
918; SSOnBigStack@0 @87 NONAME
919; SSCall @88 NONAME ; cdecl/varargs
920; FT_PrologPrime @89 NONAME ; regs+stack
921; QT_ThunkPrime @90 NONAME ; regs+stack
922; PK16FNF@4 @91 NONAME
923; GetPK16SysVar@0 @92 NONAME
924; GetpWin16Lock@4 @93 NONAME
925; _CheckNotSysLevel@4 @94 NONAME
926; _ConfirmSysLevel@4 @95 NONAME
927; _ConfirmWin16Lock@0 @96 NONAME
928; _EnterSysLevel@4 @97 NONAME ; really stdcall @4; gendef detects it incorrectly
929; _LeaveSysLevel@4 @98 NONAME
930; RefreshDaylightInformation@4 @99 NONAME
931; TerminateThreadEx@12 @100 NONAME
932; BoostFileCache@4 @101 NONAME
933
934; This is list of symbols available in all Win9x versions, but not available in Win32s and WinNT
935; AllocLSCallback@8
936; AllocSLCallback@8
937; Callback12@12
938; Callback16@16
939; Callback20@20
940; Callback24@24
941; Callback28@28
942; Callback32@32
943; Callback36@36
944; Callback40@40
945; Callback44@44
946; Callback48@48
947; Callback4@4
948; Callback52@52
949; Callback56@56
950; Callback60@60
951; Callback64@64
952; Callback8@8
953; CloseSystemHandle@4
954; ConvertToGlobalHandle@4
955; CreateKernelThread@24
956; FT_Exit0 ; no stdcall decoration in msvc thunk32.lib
957; FT_Exit12 ; no stdcall decoration in msvc thunk32.lib
958; FT_Exit16 ; no stdcall decoration in msvc thunk32.lib
959; FT_Exit20 ; no stdcall decoration in msvc thunk32.lib
960; FT_Exit24 ; no stdcall decoration in msvc thunk32.lib
961; FT_Exit28 ; no stdcall decoration in msvc thunk32.lib
962; FT_Exit32 ; no stdcall decoration in msvc thunk32.lib
963; FT_Exit36 ; no stdcall decoration in msvc thunk32.lib
964; FT_Exit4 ; no stdcall decoration in msvc thunk32.lib
965; FT_Exit40 ; no stdcall decoration in msvc thunk32.lib
966; FT_Exit44 ; no stdcall decoration in msvc thunk32.lib
967; FT_Exit48 ; no stdcall decoration in msvc thunk32.lib
968; FT_Exit52 ; no stdcall decoration in msvc thunk32.lib
969; FT_Exit56 ; no stdcall decoration in msvc thunk32.lib
970; FT_Exit8 ; no stdcall decoration in msvc thunk32.lib
971; FT_Prolog ; no stdcall decoration in msvc thunk32.lib
972; FT_Thunk ; no stdcall decoration in msvc thunk32.lib
973; FreeLSCallback@4
974; FreeSLCallback@4
975; GetDaylightFlag@0
976; GetLSCallbackTarget@4
977; GetLSCallbackTemplate@4
978; GetProcessFlags@4
979; GetProductName@8
980; GetSLCallbackTarget@4
981; GetSLCallbackTemplate@4
982; HeapSetFlags@8
983; InvalidateNLSCache@0
984; IsLSCallback@4
985; IsSLCallback@4
986; K32Thk1632Epilog@0
987; K32Thk1632Prolog@0
988; MakeCriticalSectionGlobal@4
989; MapHInstLS ; no stdcall decoration in msvc thunk32.lib
990; MapHInstLS_PN ; no stdcall decoration in msvc thunk32.lib
991; MapHInstSL ; no stdcall decoration in msvc thunk32.lib
992; MapHInstSL_PN ; no stdcall decoration in msvc thunk32.lib
993; MapHModuleLS@4
994; MapHModuleSL@4
995; MapLS@4
996; MapSL@4
997; MapSLFix@4
998; NotifyNLSUserCache@12
999; OpenVxDHandle@4
1000; QT_Thunk ; no stdcall decoration in msvc thunk32.lib
1001; QueryNumberOfEventLogRecords@8
1002; QueryOldestEventLogRecord@8
1003; RegisterServiceProcess@8
1004; ReinitializeCriticalSection@4
1005; SMapLS ; no stdcall decoration in msvc thunk32.lib
1006; SMapLS_IP_EBP_12 ; no stdcall decoration in msvc thunk32.lib
1007; SMapLS_IP_EBP_16 ; no stdcall decoration in msvc thunk32.lib
1008; SMapLS_IP_EBP_20 ; no stdcall decoration in msvc thunk32.lib
1009; SMapLS_IP_EBP_24 ; no stdcall decoration in msvc thunk32.lib
1010; SMapLS_IP_EBP_28 ; no stdcall decoration in msvc thunk32.lib
1011; SMapLS_IP_EBP_32 ; no stdcall decoration in msvc thunk32.lib
1012; SMapLS_IP_EBP_36 ; no stdcall decoration in msvc thunk32.lib
1013; SMapLS_IP_EBP_40 ; no stdcall decoration in msvc thunk32.lib
1014; SMapLS_IP_EBP_8 ; no stdcall decoration in msvc thunk32.lib
1015; SUnMapLS ; no stdcall decoration in msvc thunk32.lib
1016; SUnMapLS_IP_EBP_12 ; no stdcall decoration in msvc thunk32.lib
1017; SUnMapLS_IP_EBP_16 ; no stdcall decoration in msvc thunk32.lib
1018; SUnMapLS_IP_EBP_20 ; no stdcall decoration in msvc thunk32.lib
1019; SUnMapLS_IP_EBP_24 ; no stdcall decoration in msvc thunk32.lib
1020; SUnMapLS_IP_EBP_28 ; no stdcall decoration in msvc thunk32.lib
1021; SUnMapLS_IP_EBP_32 ; no stdcall decoration in msvc thunk32.lib
1022; SUnMapLS_IP_EBP_36 ; no stdcall decoration in msvc thunk32.lib
1023; SUnMapLS_IP_EBP_40 ; no stdcall decoration in msvc thunk32.lib
1024; SUnMapLS_IP_EBP_8 ; no stdcall decoration in msvc thunk32.lib
1025; SetDaylightFlag@4
1026; ThunkConnect32@24
1027; TlsAllocInternal@0
1028; TlsFreeInternal@4
1029; UnMapLS@4
1030; UnMapSLFixArray@8
1031; UninitializeCriticalSection@4
1032; _DebugOut
1033; _DebugPrintf
1034; dprintf
1035
1036; This is list of ordinal-only symbols added in Windows 98, but not available in Win32s and WinNT
1037; Symbol names are taken from:
1038; https://www.geoffchappell.com/studies/windows/win32/kernel32/history/ords410.htm
1039; TlsAllocGlobal@0 @102 NONAME
1040; TlsFreeGlobal@4 @103 NONAME
1041; RPCHACKORAMA@0 @104 NONAME
1042; lstrtolW@12 @105 NONAME
1043; k32wcsicmp@8 @106 NONAME
1044; k32wcsupr@4 @107 NONAME
1045; lstrchrA@8 @108 NONAME
1046; lstrcspnA@8 @109 NONAME
1047; lstrncpyA@12 @110 NONAME
1048; lstrrchrA@8 @111 NONAME
1049; lstrstrA@8 @112 NONAME
1050; lstrchrW@8 @113 NONAME
1051; k32wcscmp@8 @114 NONAME
1052; k32wcsncmp@12 @115 NONAME
1053; lstrncpyW@12 @116 NONAME
1054; k32iswctype@8 @117 NONAME
1055; AddAtomW@4 @118 ; Ordinal 118 is exported also with symbol name AddAtomW, Windows 95 exports AddAtomW with ordinal 102
1056; k32towupper@4 @119 NONAME
1057; GetCryptApiExponentValue@0 @120 NONAME
1058; ThunkConnect32NonLocking@24 @121 NONAME
1059; SetTaskmonControl@8 @122 NONAME
1060
1061; This is list of symbols added in Windows 98, but not available in Win32s and WinNT
1062; K32_NtCreateFile@44
1063; K32_RtlNtStatusToDosError@4
1064; RegisterSysMsgHandler@20
1065; ResetNLSUserInfoCache@0
1066; SignalSysMsgHandlers@16
1067
1068; This is list of symbols added in Windows 98 and also since Windows 2000, but not available in Win32s
1069CancelDeviceWakeupRequest@4
1070EnumCalendarInfoExA@16
1071EnumCalendarInfoExW@16
1072EnumDateFormatsExA@12
1073EnumDateFormatsExW@12
1074GetCPInfoExA@12
1075GetCPInfoExW@12
1076GetCalendarInfoA@24
1077GetCalendarInfoW@24
1078GetDevicePowerState@8
1079GetLongPathNameA@12
1080GetLongPathNameW@12
1081GetWriteWatch@24
1082IsSystemResumeAutomatic@0
1083RequestDeviceWakeup@4
1084RequestWakeupLatency@4
1085ResetWriteWatch@8
1086SetCalendarInfoA@16
1087SetCalendarInfoW@16
1088SetMessageWaitingIndicator@8
1089SetThreadExecutionState@4
1090
1091; This is list of ordinal-only symbols added in Windows ME, but not available in Win32s and WinNT
1092; Symbol names are taken from:
1093; https://www.geoffchappell.com/studies/windows/win32/kernel32/history/ords490.htm
1094; GetModuleNameFromProc@16 @123 NONAME
1095
1096; This is list of symbols added in Windows ME and also since Windows 2000, but not available in Win32s
1097EnumLanguageGroupLocalesA@16
1098EnumLanguageGroupLocalesW@16
1099EnumSystemLanguageGroupsA@12
1100EnumSystemLanguageGroupsW@12
1101EnumUILanguagesA@12
1102EnumUILanguagesW@12
1103GetSystemDefaultUILanguage@0
1104GetUserDefaultUILanguage@0
1105IsValidLanguageGroup@8
1106OpenThread@12 ; Win32s contains "OpenThread" symbol but ABI is "OpenThread@4"
1107
1108; This is list of symbols added in Windows ME and also since Windows XP, but not available in Win32s
1109EnumSystemGeoID@12
1110GetGeoInfoA@20
1111GetGeoInfoW@20
1112GetUserGeoID@4
1113SetUserGeoID@4
1114
1115;; This is end of Win9x symbols ;;
1116
1117
1118; This is list of symbols added in Windows 2000
1119AllocateUserPhysicalPages@12
1120AssignProcessToJobObject@8
1121BindIoCompletionCallback@12
1122CancelTimerQueueTimer@8
1123ChangeTimerQueueTimer@16
1124CreateHardLinkA@12
1125CreateHardLinkW@12
1126CreateJobObjectA@8
1127CreateJobObjectW@8
1128CreateTimerQueue@0
1129CreateTimerQueueTimer@28
1130DelayLoadFailureHook@8
1131DeleteTimerQueue@4
1132DeleteTimerQueueEx@8
1133DeleteTimerQueueTimer@12
1134DeleteVolumeMountPointA@4
1135DeleteVolumeMountPointW@4
1136DnsHostnameToComputerNameA@12
1137DnsHostnameToComputerNameW@12
1138DosPathToSessionPathA@12
1139DosPathToSessionPathW@12
1140FindFirstVolumeA@8
1141FindFirstVolumeMountPointA@12
1142FindFirstVolumeMountPointW@12
1143FindFirstVolumeW@8
1144FindNextVolumeA@12
1145FindNextVolumeMountPointA@12
1146FindNextVolumeMountPointW@12
1147FindNextVolumeW@12
1148FindVolumeClose@4
1149FindVolumeMountPointClose@4
1150FreeUserPhysicalPages@12
1151GetComputerNameExA@12
1152GetComputerNameExW@12
1153GetConsoleWindow@0
1154; GetDefaultSortkeySize@4 ; removed in Windows Vista
1155GetFileSizeEx@8
1156; GetLinguistLangSize@4 ; removed in Windows Vista
1157; GetNlsSectionName@24 ; FIXME: Windows 2000 and Windows XP prior SP1 has ABI "GetNlsSectionName@20", Windows XP SP1 and new has ABI "GetNlsSectionName@24", removed in Windows Vista
1158GetProcessIoCounters@8
1159GetSystemWindowsDirectoryA@8
1160GetSystemWindowsDirectoryW@8
1161GetVolumeNameForVolumeMountPointA@12
1162GetVolumeNameForVolumeMountPointW@12
1163GetVolumePathNameA@12
1164GetVolumePathNameW@12
1165GlobalMemoryStatusEx@4
1166MapUserPhysicalPages@12
1167MapUserPhysicalPagesScatter@12
1168Module32FirstW@8
1169Module32NextW@8
1170MoveFileWithProgressA@20
1171MoveFileWithProgressW@20
1172NlsConvertIntegerToString@20 ; removed in Windows 7
1173NlsGetCacheUpdateCount@0
1174; NlsResetProcessLocale@0 ; removed in Windows Vista
1175; OpenDataFile@8 ; removed in Windows Vista
1176OpenJobObjectA@12
1177OpenJobObjectW@12
1178PrivCopyFileExW@24
1179PrivMoveFileIdentityW@12
1180Process32FirstW@8
1181Process32NextW@8
1182ProcessIdToSessionId@8
1183QueryInformationJobObject@20
1184QueueUserWorkItem@12
1185RegisterConsoleIME@8
1186RegisterConsoleOS2@4
1187RegisterWaitForSingleObject@24
1188RegisterWaitForSingleObjectEx@20
1189ReplaceFile@24
1190ReplaceFileA@24
1191ReplaceFileW@24
1192; SetCPGlobal@4 ; removed in Windows Vista
1193SetComputerNameExA@8
1194SetComputerNameExW@8
1195SetConsoleOS2OemFormat@4
1196SetFilePointerEx@20
1197SetInformationJobObject@16
1198SetTermsrvAppInstallMode@4
1199SetTimerQueueTimer@24
1200SetVolumeMountPointA@8
1201SetVolumeMountPointW@8
1202TerminateJobObject@8
1203TermsrvAppInstallMode@0
1204UnregisterConsoleIME@0
1205UnregisterWait@4
1206UnregisterWaitEx@8
1207; ValidateLCType@16 ; removed in Windows Vista
1208; ValidateLocale@4 ; removed in Windows Vista
1209VerSetConditionMask@16
1210
1211; In Windows 2000 SP1 was not added any new symbol
1212
1213; In Windows 2000 SP2 was not added any new symbol
1214
1215; This is list of symbols added in Windows 2000 SP3
1216CreateFiberEx@20
1217CreateProcessInternalA@48 ; FIXME: Windows 2000 SP3 and SP4 has ABI "CreateProcessInternalA@44", Windows XP and new has ABI "CreateProcessInternalA@48"
1218CreateProcessInternalW@48 ; FIXME: Windows 2000 SP3 and SP4 has ABI "CreateProcessInternalW@44", Windows XP and new has ABI "CreateProcessInternalW@48"
1219
1220; This is list of symbols added in Windows 2000 SP4
1221; CreateProcessInternalWSecure@0 ; CreateProcessInternalWSecure is not available in Windows XP prior SP2, removed in Windows Server 2003
1222
1223; This is list of symbols added in Windows XP
1224ActivateActCtx@8
1225AddLocalAlternateComputerNameA@8
1226AddLocalAlternateComputerNameW@8
1227AddRefActCtx@4
1228AddVectoredExceptionHandler@8
1229AttachConsole@4
1230BaseCheckAppcompatCache@16
1231; BaseCleanupAppcompatCache@0 ; removed in Windows Server 2003
1232BaseCleanupAppcompatCacheSupport@4
1233BaseDumpAppcompatCache@0
1234BaseFlushAppcompatCache@0
1235; BaseInitAppcompatCache@0 ; removed in Windows Server 2003
1236BaseInitAppcompatCacheSupport@0
1237; BaseProcessInitPostImport@0 ; removed in Windows Vista
1238BaseUpdateAppcompatCache@12
1239ConvertFiberToThread@0
1240; CopyLZFile@8 ; MSDN says this is exported from lz32.dll
1241CreateActCtxA@4
1242CreateActCtxW@4
1243CreateJobSet@12
1244CreateMemoryResourceNotification@4
1245DeactivateActCtx@8
1246DebugActiveProcessStop@4
1247DebugBreakProcess@4
1248DebugSetProcessKillOnExit@4
1249EnumerateLocalComputerNamesA@16
1250EnumerateLocalComputerNamesW@16
1251FindActCtxSectionGuid@20
1252FindActCtxSectionStringA@20
1253FindActCtxSectionStringW@20
1254GetComPlusPackageInstallStatus@0
1255GetConsoleProcessList@8
1256GetConsoleSelectionInfo@4
1257GetCurrentActCtx@4
1258; GetExpandedNameA@8 ; MSDN says this is exported from lz32.dll
1259; GetExpandedNameW@8 ; MSDN says this is exported from lz32.dll
1260GetFirmwareEnvironmentVariableA@16
1261GetFirmwareEnvironmentVariableW@16
1262GetModuleHandleExA@12
1263GetModuleHandleExW@12
1264GetNativeSystemInfo@4
1265; GetNumaAvailableMemory@12 ; removed in Windows Server 2003
1266GetNumaAvailableMemoryNode@8
1267GetNumaHighestNodeNumber@4
1268GetNumaNodeProcessorMask@8
1269; GetNumaProcessorMap@12 ; removed in Windows Server 2003
1270GetNumaProcessorNode@8
1271GetSystemWow64DirectoryA@8
1272GetSystemWow64DirectoryW@8
1273GetVolumePathNamesForVolumeNameA@16
1274GetVolumePathNamesForVolumeNameW@16
1275HeapQueryInformation@20
1276HeapSetInformation@16
1277InitializeSListHead@4
1278InterlockedFlushSList@4
1279InterlockedPopEntrySList@4
1280InterlockedPushEntrySList@8
1281IsProcessInJob@12
1282; IsValidUILanguage@4 ; removed in Windows Vista
1283IsWow64Process@8
1284; LZClose@4 ; MSDN says this is exported from lz32.dll
1285; LZCloseFile@4 ; MSDN says this is exported from lz32.dll
1286; LZCopy@8 ; MSDN says this is exported from lz32.dll
1287; LZCreateFileW@20 ; MSDN says this is exported from lz32.dll
1288; LZDone@0 ; MSDN says this is exported from lz32.dll
1289; LZInit@4 ; MSDN says this is exported from lz32.dll
1290; LZOpenFileA@12 ; MSDN says this is exported from lz32.dll
1291; LZOpenFileW@12 ; MSDN says this is exported from lz32.dll
1292; LZRead@12 ; MSDN says this is exported from lz32.dll
1293; LZSeek@12 ; MSDN says this is exported from lz32.dll
1294; LZStart@0 ; MSDN says this is exported from lz32.dll
1295; NumaVirtualQueryNode@16 ; removed in Windows Server 2003
1296QueryActCtxW@28
1297QueryDepthSList@4
1298QueryMemoryResourceNotification@8
1299ReleaseActCtx@4
1300RemoveLocalAlternateComputerNameA@8
1301RemoveLocalAlternateComputerNameW@8
1302RemoveVectoredExceptionHandler@4
1303RestoreLastError@4
1304RtlCaptureContext@4
1305RtlCaptureStackBackTrace@16
1306SetClientTimeZoneInformation@4 ; removed in Windows 8
1307SetComPlusPackageInstallStatus@4
1308SetFileShortNameA@8
1309SetFileShortNameW@8
1310SetFileValidData@12
1311SetFirmwareEnvironmentVariableA@16
1312SetFirmwareEnvironmentVariableW@16
1313SetLocalPrimaryComputerNameA@8
1314SetLocalPrimaryComputerNameW@8
1315SetThreadUILanguage@4
1316TzSpecificLocalTimeToSystemTime@12
1317WTSGetActiveConsoleSessionId@0
1318ZombifyActCtx@4
1319
1320; This is list of symbols added in Windows XP SP1
1321CheckNameLegalDOS8Dot3A@20
1322CheckNameLegalDOS8Dot3W@20
1323CheckRemoteDebuggerPresent@8
1324; CreateNlsSecurityDescriptor@12 ; removed in Windows Vista
1325GetCPFileNameFromRegistry@12 ; removed in Windows 7
1326GetDllDirectoryA@8
1327GetDllDirectoryW@8
1328GetProcessHandleCount@8
1329GetProcessId@4
1330GetSystemRegistryQuota@8
1331GetSystemTimes@12
1332GetThreadIOPendingFlag@8
1333SetDllDirectoryA@4
1334SetDllDirectoryW@4
1335
1336; This is list of symbols added in Windows XP SP2 and Windows Server 2003 SP1 (not available in Server 2003 without SP1)
1337BaseQueryModuleData@28 ; FIXME: Windows XP and Server 2003 has ABI "BaseQueryModuleData@20", Windows Vista and new has ABI "BaseQueryModuleData@28"
1338BasepCheckWinSaferRestrictions@28 ; FIXME: Windows XP and Server 2003 has ABI "BasepCheckWinSaferRestrictions@24", Windows Vista has ABI "BasepCheckWinSaferRestrictions@28", Windows 7 has ABI "BasepCheckWinSaferRestrictions@12", Windows 8 and new has ABI "BasepCheckWinSaferRestrictions@16"
1339DecodePointer@4
1340DecodeSystemPointer@4
1341EncodePointer@4
1342EncodeSystemPointer@4
1343
1344; This is list of symbols added in Windows XP SP3
1345GetLogicalProcessorInformation@8
1346
1347; This is list of symbols added in Windows XP SP3 and Windows Vista SP1 (not available in any version of Windows Server 2003, not available in Windows Vista without SP1)
1348GetProcessDEPPolicy@12
1349GetSystemDEPPolicy@0
1350SetProcessDEPPolicy@4
1351
1352; This is list of symbols added in Windows Server 2003
1353BaseIsAppcompatInfrastructureDisabled@0
1354ConvertThreadToFiberEx@8
1355FindFirstStreamW@16
1356FindNextStreamW@8
1357FlsAlloc@4
1358FlsFree@4
1359FlsGetValue@4
1360FlsSetValue@8
1361GetCurrentProcessorNumber@0
1362GetLargePageMinimum@0
1363GetNLSVersion@12
1364GetProcessIdOfThread@4
1365GetProcessWorkingSetSizeEx@16
1366GetThreadId@4
1367InterlockedCompareExchange64@20 DATA ; FIXME: why is decorated stdcall function symbol disabled?
1368IsNLSDefinedString@20
1369IsTimeZoneRedirectionEnabled@0 ; removed in Windows 8
1370NeedCurrentDirectoryForExePathA@4
1371NeedCurrentDirectoryForExePathW@4
1372ReOpenFile@16
1373SetEnvironmentStringsA@4
1374SetEnvironmentStringsW@4
1375SetProcessWorkingSetSizeEx@16
1376Wow64EnableWow64FsRedirection@4
1377
1378; This is list of symbols added in Windows Server 2003 SP1 and Windows XP x64 SP1 (WoW64 version)
1379AddVectoredContinueHandler@8
1380BaseCheckRunApp@52 ; FIXME: Windows Server 2003 has ABI "BaseCheckRunApp@40", Windows Vista and 7 has ABI "BaseCheckRunApp@52", Windows 8 has ABI "BaseCheckRunApp@56", Windows 8.1 has ABI "BaseCheckRunApp@60", removed in Windows 10
1381; BaseProcessStartThunk@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows Vista
1382; BaseThreadStartThunk@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows Vista
1383BasepCheckBadapp@56 ; FIXME: Windows Server 2003 has ABI "BasepCheckBadapp@36", Windows Vista has ABI "BasepCheckBadapp@56", Windows 7 has ABI "BasepCheckBadapp@60", Windows 8 and Windows 8.1 has ABI "BasepCheckBadapp@72", removed in Windows 10
1384BasepFreeAppCompatData@12 ; FIXME: Windows Server 2003 has ABI "BasepFreeAppCompatData@8", Windows Vista and new has ABI "BasepFreeAppCompatData@12"
1385ConsoleIMERoutine@4 ; available only in 32-bit WoW64 version on 64-bit system
1386CtrlRoutine@4 ; available only in 32-bit WoW64 version on 64-bit system, since Windows 7 available also on 32-bit system
1387EnumSystemFirmwareTables@12
1388GetSystemFileCacheSize@12
1389GetSystemFirmwareTable@16
1390RemoveVectoredContinueHandler@4
1391SetSystemFileCacheSize@12
1392SetThreadStackGuarantee@4
1393Wow64DisableWow64FsRedirection@4
1394Wow64RevertWow64FsRedirection@4
1395
1396; This is list of symbols added in Windows Server 2003 SP2 and Windows XP x64 SP2 (WoW64 version)
1397SetFileCompletionNotificationModes@8
1398
1399; This is list of symbols added in Windows Vista
1400AcquireSRWLockExclusive@4
1401AcquireSRWLockShared@4
1402AddSIDToBoundaryDescriptor@8
1403AdjustCalendarDate@12
1404AllocateUserPhysicalPagesNuma@16
1405ApplicationRecoveryFinished@4
1406ApplicationRecoveryInProgress@4
1407BaseGenerateAppCompatData@24
1408BaseThreadInitThunk@4 ; FIXME: Windows Vista has ABI "BaseThreadInitThunk@8", Windows Vista WoW64 has ABI "BaseThreadInitThunk@4", Windows Vista SP1 has ABI "BaseThreadInitThunk@16", Windows Vista SP2 has ABI "BaseThreadInitThunk@20", Windows 7 has ABI "BaseThreadInitThunk@8", Windows 8 and new has ABI "BaseThreadInitThunk@4"
1409CallbackMayRunLong@4
1410CancelIoEx@8
1411CancelSynchronousIo@4
1412CancelThreadpoolIo@4
1413CheckElevation@20
1414CheckElevationEnabled@4
1415CheckForReadOnlyResource@8
1416ClosePrivateNamespace@8
1417CloseThreadpool@4
1418CloseThreadpoolCleanupGroup@4
1419CloseThreadpoolCleanupGroupMembers@12
1420CloseThreadpoolIo@4
1421CloseThreadpoolTimer@4
1422CloseThreadpoolWait@4
1423CloseThreadpoolWork@4
1424CompareCalendarDates@12
1425CompareStringEx@36
1426CompareStringOrdinal@20
1427ConvertCalDateTimeToSystemTime@8
1428ConvertNLSDayOfWeekToWin32DayOfWeek@4
1429ConvertSystemTimeToCalDateTime@12
1430CopyFileTransactedA@28
1431CopyFileTransactedW@28
1432CreateBoundaryDescriptorA@8
1433CreateBoundaryDescriptorW@8
1434CreateDirectoryTransactedA@16
1435CreateDirectoryTransactedW@16
1436CreateEventExA@16
1437CreateEventExW@16
1438CreateFileMappingNumaA@28
1439CreateFileMappingNumaW@28
1440CreateFileTransactedA@40
1441CreateFileTransactedW@40
1442CreateHardLinkTransactedA@16
1443CreateHardLinkTransactedW@16
1444CreateMutexExA@16
1445CreateMutexExW@16
1446CreatePrivateNamespaceA@12
1447CreatePrivateNamespaceW@12
1448CreateSemaphoreExA@24
1449CreateSemaphoreExW@24
1450CreateSymbolicLinkA@12
1451CreateSymbolicLinkTransactedA@16
1452CreateSymbolicLinkTransactedW@16
1453CreateSymbolicLinkW@12
1454CreateThreadpool@4
1455CreateThreadpoolCleanupGroup@0
1456CreateThreadpoolIo@16
1457CreateThreadpoolTimer@12
1458CreateThreadpoolWait@12
1459CreateThreadpoolWork@12
1460CreateWaitableTimerExA@16
1461CreateWaitableTimerExW@16
1462DeleteBoundaryDescriptor@4
1463DeleteFileTransactedA@8
1464DeleteFileTransactedW@8
1465DeleteProcThreadAttributeList@4
1466DisassociateCurrentThreadFromCallback@4
1467EnumCalendarInfoExEx@24
1468EnumDateFormatsExEx@16
1469EnumResourceLanguagesExA@28
1470EnumResourceLanguagesExW@28
1471EnumResourceNamesExA@24
1472EnumResourceNamesExW@24
1473EnumResourceTypesExA@20
1474EnumResourceTypesExW@20
1475EnumSystemLocalesEx@16
1476EnumTimeFormatsEx@16
1477FindFirstFileNameTransactedW@20
1478FindFirstFileNameW@16
1479FindFirstFileTransactedA@28
1480FindFirstFileTransactedW@28
1481FindFirstStreamTransactedW@20
1482FindNLSString@28
1483FindNLSStringEx@40
1484FindNextFileNameW@12
1485FlushProcessWriteBuffers@0
1486FreeLibraryWhenCallbackReturns@8
1487GetApplicationRecoveryCallback@20
1488GetApplicationRestartSettings@16
1489GetCalendarDateFormat@24
1490GetCalendarDateFormatEx@24
1491GetCalendarDaysInMonth@16
1492GetCalendarDifferenceInDays@12
1493GetCalendarInfoEx@28
1494GetCalendarMonthsInYear@12
1495GetCalendarSupportedDateRange@12
1496GetCalendarWeekNumber@16
1497GetCompressedFileSizeTransactedA@12
1498GetCompressedFileSizeTransactedW@12
1499GetConsoleHistoryInfo@4
1500GetConsoleOriginalTitleA@8
1501GetConsoleOriginalTitleW@8
1502GetConsoleScreenBufferInfoEx@8
1503GetCurrencyFormatEx@24
1504GetCurrentConsoleFontEx@12
1505GetDateFormatEx@28
1506GetDurationFormat@32
1507GetDurationFormatEx@32
1508GetDynamicTimeZoneInformation@4
1509GetFileAttributesTransactedA@16
1510GetFileAttributesTransactedW@16
1511GetFileBandwidthReservation@24
1512GetFileInformationByHandleEx@16
1513GetFileMUIInfo@16
1514GetFileMUIPath@28
1515GetFinalPathNameByHandleA@16
1516GetFinalPathNameByHandleW@16
1517GetFullPathNameTransactedA@20
1518GetFullPathNameTransactedW@20
1519GetLocaleInfoEx@16
1520GetLongPathNameTransactedA@16
1521GetLongPathNameTransactedW@16
1522GetNLSVersionEx@12
1523GetNamedPipeAttribute@20
1524GetNamedPipeClientComputerNameA@12
1525GetNamedPipeClientComputerNameW@12
1526GetNamedPipeClientProcessId@8
1527GetNamedPipeClientSessionId@8
1528GetNamedPipeServerProcessId@8
1529GetNamedPipeServerSessionId@8
1530GetNumaProximityNode@8
1531GetNumberFormatEx@24
1532GetProductInfo@20
1533GetQueuedCompletionStatusEx@24
1534GetStringScripts@20
1535GetSystemDefaultLocaleName@8
1536GetSystemPreferredUILanguages@16
1537GetThreadPreferredUILanguages@16
1538GetThreadUILanguage@0
1539GetTickCount64@0
1540GetTimeFormatEx@24
1541GetUILanguageInfo@20
1542GetUserDefaultLocaleName@8
1543GetUserPreferredUILanguages@16
1544GetVolumeInformationByHandleW@32
1545IdnToAscii@20
1546IdnToNameprepUnicode@20
1547IdnToUnicode@20
1548InitOnceBeginInitialize@16
1549InitOnceComplete@12
1550InitOnceExecuteOnce@16
1551InitOnceInitialize@4
1552InitializeConditionVariable@4
1553InitializeCriticalSectionEx@12
1554InitializeProcThreadAttributeList@16
1555InitializeSRWLock@4
1556@InterlockedPushListSList@16 ; really fastcall calling convention
1557IsCalendarLeapDay@20
1558IsCalendarLeapMonth@16
1559IsCalendarLeapYear@12
1560IsNormalizedString@12
1561IsThreadAFiber@0
1562IsThreadpoolTimerSet@4
1563IsValidCalDateTime@8
1564IsValidLocaleName@4
1565LCIDToLocaleName@16
1566LCMapStringEx@36
1567LeaveCriticalSectionWhenCallbackReturns@8
1568LoadStringBaseExW@20
1569LoadStringBaseW@16
1570LocaleNameToLCID@8
1571MapViewOfFileExNuma@28
1572MoveFileTransactedA@24
1573MoveFileTransactedW@24
1574NlsCheckPolicy@8
1575NlsEventDataDescCreate@16 ; removed in Windows 10 May 2020 Update (20H1)
1576NlsUpdateLocale@8
1577NlsUpdateSystemLocale@8
1578NlsWriteEtwEvent@20 ; removed in Windows 10 May 2020 Update (20H1)
1579NormalizeString@20
1580NotifyUILanguageChange@20
1581OpenFileById@24
1582OpenPrivateNamespaceA@8
1583OpenPrivateNamespaceW@8
1584QueryActCtxSettingsW@28
1585QueryFullProcessImageNameA@16
1586QueryFullProcessImageNameW@16
1587QueryIdleProcessorCycleTime@8
1588QueryProcessCycleTime@8
1589QueryThreadCycleTime@8
1590RegisterApplicationRecoveryCallback@16
1591RegisterApplicationRestart@8
1592ReleaseMutexWhenCallbackReturns@8
1593ReleaseSRWLockExclusive@4
1594ReleaseSRWLockShared@4
1595ReleaseSemaphoreWhenCallbackReturns@12
1596RemoveDirectoryTransactedA@8
1597RemoveDirectoryTransactedW@8
1598SetConsoleHistoryInfo@4
1599SetConsoleScreenBufferInfoEx@8
1600SetCurrentConsoleFontEx@12
1601SetDynamicTimeZoneInformation@4
1602SetEventWhenCallbackReturns@8
1603SetFileAttributesTransactedA@12
1604SetFileAttributesTransactedW@12
1605SetFileBandwidthReservation@24
1606SetFileInformationByHandle@16
1607SetFileIoOverlappedRange@12
1608SetNamedPipeAttribute@20
1609SetStdHandleEx@12
1610SetThreadPreferredUILanguages@12
1611SetThreadpoolThreadMaximum@8
1612SetThreadpoolThreadMinimum@8
1613SetThreadpoolTimer@16
1614SetThreadpoolWait@12
1615SleepConditionVariableCS@12
1616SleepConditionVariableSRW@16
1617StartThreadpoolIo@4
1618SubmitThreadpoolWork@4
1619TrySubmitThreadpoolCallback@12
1620UnregisterApplicationRecoveryCallback@0
1621UnregisterApplicationRestart@0
1622UpdateCalendarDayOfWeek@4
1623UpdateProcThreadAttribute@28
1624VerifyScripts@20
1625VirtualAllocExNuma@24
1626WaitForThreadpoolIoCallbacks@8
1627WaitForThreadpoolTimerCallbacks@8
1628WaitForThreadpoolWaitCallbacks@8
1629WaitForThreadpoolWorkCallbacks@8
1630WakeAllConditionVariable@4
1631WakeConditionVariable@4
1632WerGetFlags@8
1633WerRegisterFile@12
1634WerRegisterMemoryBlock@8
1635WerSetFlags@4
1636WerUnregisterFile@4
1637WerUnregisterMemoryBlock@4
1638WerpCleanupMessageMapping@0 ; removed in Windows 10 Fall Creators Update (Redstone 3)
1639WerpInitiateRemoteRecovery@4
1640WerpNotifyLoadStringResource@16 ; removed in Windows 10 Fall Creators Update (Redstone 3)
1641WerpNotifyLoadStringResourceEx@20 ; removed in Windows 10 Fall Creators Update (Redstone 3)
1642WerpNotifyUseStringResource@4 ; removed in Windows 10 Fall Creators Update (Redstone 3)
1643WerpStringLookup@8 ; removed in Windows 10 Fall Creators Update (Redstone 3)
1644Wow64GetThreadContext@8
1645Wow64SetThreadContext@8
1646Wow64SuspendThread@4
1647
1648; This is list of symbols added in Windows Vista SP1
1649AddSecureMemoryCacheCallback@4
1650GetPhysicallyInstalledSystemMemory@4
1651GetTimeZoneInformationForYear@12
1652QueryProcessAffinityUpdateMode@8
1653RemoveSecureMemoryCacheCallback@4
1654ReplacePartitionUnit@12
1655SetProcessAffinityUpdateMode@8
1656
1657; This is list of symbols added in Windows Vista SP2
1658SetSearchPathMode@4
1659
1660; This is list of symbols added in Windows 7
1661AddIntegrityLabelToBoundaryDescriptor@8
1662BaseCheckAppcompatCacheEx@24 ; FIXME: Windows 7 has ABI "BaseCheckAppcompatCacheEx@24", Windows 8 has ABI "BaseCheckAppcompatCacheEx@32"
1663BaseDllReadWriteIniFile@32
1664BaseFormatObjectAttributes@16
1665BaseFormatTimeOut@8
1666BaseGetNamedObjectDirectory@4
1667BaseSetLastNTError@4
1668BaseVerifyUnicodeString@4 ; removed in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version)
1669Basep8BitStringToDynamicUnicodeString@8
1670BasepAllocateActivationContextActivationBlock@16
1671BasepAnsiStringToDynamicUnicodeString@8
1672BasepCheckAppCompat@16
1673BasepFreeActivationContextActivationBlock@4
1674BasepMapModuleHandle@8
1675; CopyExtendedContext@12 ; removed in Windows 7 SP1
1676; CreateProcessAsUserW@44 ; MSDN says this is exported from advapi32.dll
1677CreateRemoteThreadEx@32
1678DisableThreadProfiling@4
1679EnableThreadProfiling@20
1680FindStringOrdinal@24
1681GetActiveProcessorCount@4
1682GetActiveProcessorGroupCount@0
1683GetCurrentProcessorNumberEx@4
1684; GetEnabledExtendedFeatures@8 ; removed in Windows 7 SP1
1685GetEraNameCountedString@16
1686; GetExtendedContextLength@8 ; removed in Windows 7 SP1
1687; GetExtendedFeaturesMask@4 ; removed in Windows 7 SP1
1688GetLogicalProcessorInformationEx@12
1689GetMaximumProcessorCount@4
1690GetMaximumProcessorGroupCount@0
1691GetNumaAvailableMemoryNodeEx@8
1692GetNumaNodeNumberFromHandle@8
1693GetNumaNodeProcessorMaskEx@8
1694GetNumaProcessorNodeEx@8
1695GetNumaProximityNodeEx@8
1696GetProcessGroupAffinity@12
1697GetProcessPreferredUILanguages@16
1698GetProcessorSystemCycleTime@12
1699GetThreadErrorMode@0
1700GetThreadGroupAffinity@8
1701GetThreadIdealProcessorEx@8
1702; InitializeExtendedContext@12 ; removed in Windows 7 SP1
1703K32EmptyWorkingSet@4
1704K32EnumDeviceDrivers@12
1705K32EnumPageFilesA@8
1706K32EnumPageFilesW@8
1707K32EnumProcessModules@16
1708K32EnumProcessModulesEx@20
1709K32EnumProcesses@12
1710K32GetDeviceDriverBaseNameA@12
1711K32GetDeviceDriverBaseNameW@12
1712K32GetDeviceDriverFileNameA@12
1713K32GetDeviceDriverFileNameW@12
1714K32GetMappedFileNameA@16
1715K32GetMappedFileNameW@16
1716K32GetModuleBaseNameA@16
1717K32GetModuleBaseNameW@16
1718K32GetModuleFileNameExA@16
1719K32GetModuleFileNameExW@16
1720K32GetModuleInformation@16
1721K32GetPerformanceInfo@8
1722K32GetProcessImageFileNameA@12
1723K32GetProcessImageFileNameW@12
1724K32GetProcessMemoryInfo@12
1725K32GetWsChanges@12
1726K32GetWsChangesEx@12
1727K32InitializeProcessForWsWatch@4
1728K32QueryWorkingSet@12
1729K32QueryWorkingSetEx@12
1730LoadAppInitDlls@0
1731; LocateExtendedFeature@12 ; removed in Windows 7 SP1
1732; LocateLegacyContext@8 ; removed in Windows 7 SP1
1733NotifyMountMgr@12
1734; OpenProcessToken@12 ; MSDN says this is exported from advapi32.dll
1735; OpenThreadToken@16 ; MSDN says this is exported from advapi32.dll
1736PowerClearRequest@8
1737PowerCreateRequest@4
1738PowerSetRequest@8
1739QueryIdleProcessorCycleTimeEx@12
1740QueryThreadProfiling@8
1741QueryThreadpoolStackInformation@8
1742QueryUnbiasedInterruptTime@4
1743RaiseFailFastException@12
1744ReadThreadProfilingData@12
1745; RegCloseKey@4 ; MSDN says this is exported from advapi32.dll
1746; RegCreateKeyExA@36 ; MSDN says this is exported from advapi32.dll
1747; RegCreateKeyExW@36 ; MSDN says this is exported from advapi32.dll
1748; RegDeleteKeyExA@16 ; MSDN says this is exported from advapi32.dll
1749; RegDeleteKeyExW@16 ; MSDN says this is exported from advapi32.dll
1750; RegDeleteTreeA@8 ; MSDN says this is exported from advapi32.dll
1751; RegDeleteTreeW@8 ; MSDN says this is exported from advapi32.dll
1752; RegDeleteValueA@8 ; MSDN says this is exported from advapi32.dll
1753; RegDeleteValueW@8 ; MSDN says this is exported from advapi32.dll
1754; RegDisablePredefinedCacheEx@0 ; MSDN says this is exported from advapi32.dll
1755; RegEnumKeyExA@32 ; MSDN says this is exported from advapi32.dll
1756; RegEnumKeyExW@32 ; MSDN says this is exported from advapi32.dll
1757; RegEnumValueA@32 ; MSDN says this is exported from advapi32.dll
1758; RegEnumValueW@32 ; MSDN says this is exported from advapi32.dll
1759; RegFlushKey@4 ; MSDN says this is exported from advapi32.dll
1760; RegGetKeySecurity@16 ; MSDN says this is exported from advapi32.dll
1761; RegGetValueA@28 ; MSDN says this is exported from advapi32.dll
1762; RegGetValueW@28 ; MSDN says this is exported from advapi32.dll
1763; RegKrnGetGlobalState@0 ; removed in Windows 8
1764; RegKrnInitialize@12 ; removed in Windows 8
1765; RegLoadKeyA@12 ; MSDN says this is exported from advapi32.dll
1766; RegLoadKeyW@12 ; MSDN says this is exported from advapi32.dll
1767; RegLoadMUIStringA@28 ; MSDN says this is exported from advapi32.dll
1768; RegLoadMUIStringW@28 ; MSDN says this is exported from advapi32.dll
1769; RegNotifyChangeKeyValue@20 ; MSDN says this is exported from advapi32.dll
1770; RegOpenCurrentUser@8 ; MSDN says this is exported from advapi32.dll
1771; RegOpenKeyExA@20 ; MSDN says this is exported from advapi32.dll
1772; RegOpenKeyExW@20 ; MSDN says this is exported from advapi32.dll
1773; RegOpenUserClassesRoot@16 ; MSDN says this is exported from advapi32.dll
1774; RegQueryInfoKeyA@48 ; MSDN says this is exported from advapi32.dll
1775; RegQueryInfoKeyW@48 ; MSDN says this is exported from advapi32.dll
1776; RegQueryValueExA@24 ; MSDN says this is exported from advapi32.dll
1777; RegQueryValueExW@24 ; MSDN says this is exported from advapi32.dll
1778; RegRestoreKeyA@12 ; MSDN says this is exported from advapi32.dll
1779; RegRestoreKeyW@12 ; MSDN says this is exported from advapi32.dll
1780; RegSaveKeyExA@16 ; MSDN says this is exported from advapi32.dll
1781; RegSaveKeyExW@16 ; MSDN says this is exported from advapi32.dll
1782; RegSetKeySecurity@12 ; MSDN says this is exported from advapi32.dll
1783; RegSetValueExA@24 ; MSDN says this is exported from advapi32.dll
1784; RegSetValueExW@24 ; MSDN says this is exported from advapi32.dll
1785; RegUnLoadKeyA@8 ; MSDN says this is exported from advapi32.dll
1786; RegUnLoadKeyW@8 ; MSDN says this is exported from advapi32.dll
1787ResolveLocaleName@12
1788; SetExtendedFeaturesMask@12 ; removed in Windows 7 SP1
1789SetProcessPreferredUILanguages@12
1790SetThreadErrorMode@8
1791SetThreadGroupAffinity@12
1792SetThreadIdealProcessorEx@12
1793; SetThreadToken@8 ; MSDN says this is exported from advapi32.dll
1794SetThreadpoolStackInformation@8
1795SetWaitableTimerEx@28
1796SortCloseHandle@4
1797SortGetHandle@12
1798TryAcquireSRWLockExclusive@4
1799TryAcquireSRWLockShared@4
1800WerRegisterRuntimeExceptionModule@8
1801WerUnregisterRuntimeExceptionModule@8
1802Wow64GetThreadSelectorEntry@12
1803
1804; This is list of symbols added in Windows 7 SP1
1805CopyContext@12
1806GetEnabledXStateFeatures@0
1807GetProcessUserModeExceptionPolicy@4 ; removed in Windows 8
1808GetXStateFeaturesMask@8
1809InitializeContext@16
1810LocateXStateFeature@12
1811SetProcessUserModeExceptionPolicy@4 ; removed in Windows 8
1812SetXStateFeaturesMask@12
1813
1814; This is list of symbols added in Windows 8
1815; AcquireStateLock@12 ; removed in Windows 8.1
1816ActivateActCtxWorker@8
1817AddDllDirectory@4
1818AddRefActCtxWorker@4
1819AddResourceAttributeAce@28
1820AddScopedPolicyIDAce@20
1821; AppContainerDeriveSidFromMoniker@8 ; removed in Windows 8.1
1822; AppContainerFreeMemory@4 ; removed in Windows 8.1
1823; AppContainerLookupDisplayNameMrtReference@8 ; removed in Windows 8.1
1824; AppContainerLookupMoniker@8 ; removed in Windows 8.1
1825; AppContainerRegisterSid@12 ; removed in Windows 8.1
1826; AppContainerUnregisterSid@4 ; removed in Windows 8.1
1827; AppXFreeMemory@4 ; removed in Windows 8.1
1828; AppXGetApplicationData@32 ; removed in Windows 8.1
1829; AppXGetDevelopmentMode@8 ; removed in Windows 8.1
1830AppXGetOSMaxVersionTested@8
1831; AppXGetOSMinVersion@8 ; removed in Windows 8.1
1832; AppXGetPackageCapabilities@16 ; removed in Windows 8.1
1833; AppXGetPackageSid@8 ; removed in Windows 8.1
1834; AppXGetPackageState@8 ; removed in Windows 8.1
1835; AppXLookupDisplayName@8 ; removed in Windows 8.1
1836; AppXLookupMoniker@8 ; removed in Windows 8.1
1837; AppXSetPackageState@12 ; removed in Windows 8.1
1838BaseCheckAppcompatCacheExWorker@36 ; FIXME: Windows 8 and Windows 8.1 has ABI "BaseCheckAppcompatCacheExWorker@32", Windows 10 has ABI "BaseCheckAppcompatCacheExWorker@36"
1839BaseCheckAppcompatCacheWorker@16
1840BaseCheckElevation@48
1841; BaseCleanupAppcompatCacheSupportWorker@4
1842; BaseDestroyVDMEnvironment@8
1843BaseDumpAppcompatCacheWorker@0
1844BaseElevationPostProcessing@12
1845BaseFlushAppcompatCacheWorker@0
1846BaseInitAppcompatCacheSupportWorker@0
1847BaseIsAppcompatInfrastructureDisabledWorker@0
1848BaseIsDosApplication@8
1849BaseUpdateAppcompatCacheWorker@12
1850BaseUpdateVDMEntry@16
1851BaseWriteErrorElevationRequiredEvent@0
1852; BasepAppCompatHookDLL@8 ; removed in Windows 8.1
1853BasepAppContainerEnvironmentExtension@12
1854BasepAppXExtension@24
1855BasepCheckWebBladeHashes@4
1856BasepConstructSxsCreateProcessMessage@80 ; FIXME: Windows 8 has ABI "BasepConstructSxsCreateProcessMessage@80", Windows 8.1 and Windows 10 has ABI "BasepConstructSxsCreateProcessMessage@84", Windows 10 Creators Update (Redstone 2) has ABI "BasepConstructSxsCreateProcessMessage@80"
1857BasepCopyEncryption@12 ; FIXME: Windows 8, Windows 8.1 and Windows 10 has ABI "BasepCopyEncryption@56", Windows 10 November Update (Threshold 2) has ABI "BasepCopyEncryption@12"
1858BasepGetAppCompatData@60 ; FIXME: Windows 8 and Windows 8.1 has ABI "BasepGetAppCompatData@80", Windows 10 has ABI "BasepGetAppCompatData@84", Windows 10 Creators Update (Redstone 2) has ABI "BasepGetAppCompatData@56", Windows 10 May 2019 Update (19H1) has ABI "BasepGetAppCompatData@60"
1859BasepGetComputerNameFromNtPath@16
1860BasepGetExeArchType@12
1861BasepIsProcessAllowed@4
1862BasepNotifyLoadStringResource@16
1863BasepPostSuccessAppXExtension@8
1864BasepProcessInvalidImage@84
1865BasepQueryAppCompat@72 ; FIXME: Windows 8 and Windows 8.1 has ABI BasepQueryAppCompat@80, Windows 10 has ABI "BasepQueryAppCompat@84", Windows 10 Creators Update (Redstone 2) has ABI "BasepQueryAppCompat@72"
1866BasepReleaseAppXContext@4
1867BasepReleaseSxsCreateProcessUtilityStruct@4
1868BasepReportFault@8
1869BasepSetFileEncryptionCompression@32 ; FIXME: Windows 8 has ABI "BasepSetFileEncryptionCompression@28", Windows 8.1 has ABI "BasepSetFileEncryptionCompression@32"
1870CeipIsOptedIn@0
1871CheckAllowDecryptedRemoteDestinationPolicy@0
1872CheckForReadOnlyResourceFilter@4
1873CheckTokenCapability@12
1874CheckTokenMembershipEx@16
1875ClosePackageInfo@4
1876CloseState@4
1877; CloseStateAtom@4 ; removed in Windows 8.1
1878; CloseStateChangeNotification@4 ; removed in Windows 8.1
1879; CloseStateContainer@4 ; removed in Windows 8.1
1880; CloseStateLock@4 ; removed in Windows 8.1
1881; CommitStateAtom@12 ; removed in Windows 8.1
1882CopyFile2@12
1883CreateActCtxWWorker@4
1884CreateFile2@20
1885CreateFileMappingFromApp@24
1886; CreateStateAtom@0 ; removed in Windows 8.1
1887; CreateStateChangeNotification@4 ; removed in Windows 8.1
1888; CreateStateContainer@16 ; removed in Windows 8.1
1889; CreateStateLock@4 ; removed in Windows 8.1
1890; CreateStateSubcontainer@12 ; removed in Windows 8.1
1891DeactivateActCtxWorker@8
1892; DeleteStateAtomValue@8 ; removed in Windows 8.1
1893; DeleteStateContainer@8 ; removed in Windows 8.1
1894; DeleteStateContainerValue@8 ; removed in Windows 8.1
1895DuplicateEncryptionInfoFileExt@20
1896; DuplicateStateContainerHandle@4 ; removed in Windows 8.1
1897; EnumerateStateAtomValues@12 ; removed in Windows 8.1
1898; EnumerateStateContainerItems@16 ; removed in Windows 8.1
1899FindActCtxSectionGuidWorker@20
1900FindActCtxSectionStringWWorker@20
1901GetAppContainerAce@16
1902GetAppContainerNamedObjectPath@20
1903GetApplicationRecoveryCallbackWorker@20
1904GetApplicationRestartSettingsWorker@16
1905GetApplicationUserModelId@12
1906GetCachedSigningLevel@24
1907GetCurrentActCtxWorker@4
1908GetCurrentApplicationUserModelId@8
1909GetCurrentPackageFamilyName@8
1910GetCurrentPackageFullName@8
1911GetCurrentPackageId@8
1912GetCurrentPackageInfo@16
1913GetCurrentPackagePath@8
1914GetCurrentThreadStackLimits@8
1915GetDateFormatAWorker@28
1916GetDateFormatWWorker@28
1917GetFirmwareEnvironmentVariableExA@20
1918GetFirmwareEnvironmentVariableExW@20
1919GetFirmwareType@4
1920; GetHivePath@16 ; removed in Windows 8.1
1921GetMemoryErrorHandlingCapabilities@4
1922GetOverlappedResultEx@20
1923GetPackageFamilyName@12
1924GetPackageFullName@12
1925GetPackageId@12
1926GetPackageInfo@20
1927GetPackagePath@16
1928GetPackagesByPackageFamily@20
1929GetProcessInformation@16
1930GetProcessMitigationPolicy@16
1931; GetRoamingLastObservedChangeTime@8 ; removed in Windows 8.1
1932; GetSerializedAtomBytes@12 ; removed in Windows 8.1
1933; GetStateContainerDepth@8 ; removed in Windows 8.1
1934GetStateFolder@16
1935; GetStateRootFolder@12 ; removed in Windows 8.1
1936; GetStateSettingsFolder@12 ; removed in Windows 8.1
1937; GetStateVersion@12 ; removed in Windows 8.1
1938; GetSystemAppDataFolder@12 ; removed in Windows 8.1
1939GetSystemAppDataKey@16
1940GetSystemTimePreciseAsFileTime@4
1941GetThreadInformation@16
1942GetTimeFormatAWorker@28
1943GetTimeFormatWWorker@24
1944GlobalAddAtomExA@8
1945GlobalAddAtomExW@8
1946InterlockedPushListSListEx@16
1947IsNativeVhdBoot@4
1948IsValidNLSVersion@12
1949LoadPackagedLibrary@8
1950MapViewOfFileFromApp@20
1951NtVdm64CreateProcessInternalW@48
1952OpenConsoleWStub@16
1953OpenPackageInfoByFullName@12
1954OpenState@0
1955; OpenStateAtom@8 ; removed in Windows 8.1
1956OpenStateExplicit@8
1957; OverrideRoamingDataModificationTimesInRange@16 ; removed in Windows 8.1
1958PackageFamilyNameFromFullName@12
1959PackageFamilyNameFromId@12
1960PackageFullNameFromId@12
1961PackageIdFromFullName@16
1962PackageNameAndPublisherIdFromFamilyName@20
1963PrefetchVirtualMemory@16
1964; PublishStateChangeNotification@4 ; removed in Windows 8.1
1965QueryActCtxSettingsWWorker@28
1966QueryActCtxWWorker@28
1967; QueryStateAtomValueInfo@12 ; removed in Windows 8.1
1968; QueryStateContainerItemInfo@12 ; removed in Windows 8.1
1969RaiseInvalid16BitExeError@4
1970; ReadStateAtomValue@20 ; removed in Windows 8.1
1971; ReadStateContainerValue@20 ; removed in Windows 8.1
1972; RegCopyTreeW@12 ; MSDN says this function is exported from advapi32.dll
1973RegisterBadMemoryNotification@4
1974; RegisterStateChangeNotification@8 ; removed in Windows 8.1
1975; RegisterStateLock@4 ; removed in Windows 8.1
1976ReleaseActCtxWorker@4
1977; ReleaseStateLock@4 ; removed in Windows 8.1
1978RemoveDllDirectory@4
1979; ResetState@4 ; removed in Windows 8.1
1980ResolveDelayLoadedAPI@24
1981ResolveDelayLoadsFromDll@12
1982SetCachedSigningLevel@16
1983SetDefaultDllDirectories@4
1984SetFirmwareEnvironmentVariableExA@20
1985SetFirmwareEnvironmentVariableExW@20
1986SetProcessInformation@16
1987SetProcessMitigationPolicy@12
1988; SetRoamingLastObservedChangeTime@8 ; removed in Windows 8.1
1989; SetStateVersion@8 ; removed in Windows 8.1
1990SetThreadInformation@16
1991SetThreadpoolTimerEx@16
1992SetThreadpoolWaitEx@16
1993SetVolumeMountPointWStub@8
1994; SubscribeStateChangeNotification@12 ; removed in Windows 8.1
1995SystemTimeToTzSpecificLocalTimeEx@12
1996TermsrvConvertSysRootToUserDir@8
1997TermsrvCreateRegEntry@20
1998TermsrvDeleteKey@4
1999TermsrvDeleteValue@8
2000TermsrvGetPreSetValue@16
2001TermsrvGetWindowsDirectoryA@8
2002TermsrvGetWindowsDirectoryW@8
2003TermsrvOpenRegEntry@12
2004TermsrvOpenUserClasses@8
2005TermsrvRestoreKey@12
2006TermsrvSetKeySecurity@12
2007TermsrvSetValueKey@24
2008TermsrvSyncUserIniFileExt@4
2009TzSpecificLocalTimeToSystemTimeEx@12
2010UnmapViewOfFileEx@8
2011UnregisterBadMemoryNotification@4
2012; UnregisterStateChangeNotification@4 ; removed in Windows 8.1
2013; UnregisterStateLock@8 ; removed in Windows 8.1
2014; UnsubscribeStateChangeNotification@4 ; removed in Windows 8.1
2015WerRegisterFileWorker@12
2016WerRegisterMemoryBlockWorker@8
2017WerRegisterRuntimeExceptionModuleWorker@8
2018WerUnregisterFileWorker@4
2019WerUnregisterMemoryBlockWorker@4
2020WerUnregisterRuntimeExceptionModuleWorker@8
2021WerpGetDebugger@8 ; FIXME: Windows 8 and Windows 8.1 has ABI "WerpGetDebugger@20", Windows 10 has ABI "WerpGetDebugger@8"
2022; WerpLaunchAeDebug@24
2023; WerpNotifyLoadStringResourceWorker@16
2024; WerpNotifyUseStringResourceWorker@4
2025; WriteStateAtomValue@20 ; removed in Windows 8.1
2026; WriteStateContainerValue@24 ; removed in Windows 8.1
2027ZombifyActCtxWorker@4
2028; timeBeginPeriod@4 ; MSDN says this is exported from winmm.dll
2029; timeEndPeriod@4 ; MSDN says this is exported from winmm.dll
2030; timeGetDevCaps@8 ; MSDN says this is exported from winmm.dll
2031; timeGetSystemTime@8 ; MSDN says this is exported from winmm.dll
2032; timeGetTime@0 ; MSDN says this is exported from winmm.dll
2033
2034; This is list of symbols added in Windows 8.1
2035BaseFreeAppCompatDataForProcessWorker@4
2036BaseReadAppCompatDataForProcessWorker@12
2037; CalloutOnFiberStack@12 ; removed in Windows 10 November Update (Threshold 2)
2038DeleteSynchronizationBarrier@4
2039DnsHostnameToComputerNameExW@12
2040EnterSynchronizationBarrier@8
2041FindPackagesByPackageFamily@28
2042FormatApplicationUserModelId@16
2043GetEncryptedFileVersionExt@8
2044GetPackageApplicationIds@16
2045GetPackagePathByFullName@12
2046GetStagedPackagePathByFullName@12
2047InitializeSynchronizationBarrier@12
2048InstallELAMCertificateInfo@4
2049IsProcessCritical@8
2050OOBEComplete@4
2051ParseApplicationUserModelId@20
2052PssCaptureSnapshot@16
2053PssDuplicateSnapshot@20
2054PssFreeSnapshot@8
2055PssQuerySnapshot@16
2056PssWalkMarkerCreate@8
2057PssWalkMarkerFree@4
2058PssWalkMarkerGetPosition@8
2059PssWalkMarkerRewind@4
2060PssWalkMarkerSeek@8
2061PssWalkMarkerSeekToBeginning@4
2062PssWalkMarkerSetPosition@8
2063PssWalkMarkerTell@8
2064PssWalkSnapshot@20
2065QuirkGetData2Worker@8
2066QuirkGetDataWorker@8
2067QuirkIsEnabled2Worker@12
2068QuirkIsEnabled3Worker@8
2069QuirkIsEnabledForPackage2Worker@24
2070QuirkIsEnabledForPackageWorker@16
2071QuirkIsEnabledForProcessWorker@12
2072QuirkIsEnabledWorker@4
2073RegisterWaitUntilOOBECompleted@12
2074SetComputerNameEx2W@12
2075UnregisterWaitUntilOOBECompleted@4
2076
2077; This is list of symbols added in Windows 10 (Threshold / 1507)
2078; CreateProcessAsUserA@44 ; MSDN says this is exported from advapi32.dll
2079DiscardVirtualMemory@8
2080FreeMemoryJobObject@4
2081GetProcessDefaultCpuSets@16
2082GetSystemCpuSetInformation@20
2083GetThreadSelectedCpuSets@16
2084OfferVirtualMemory@12
2085QueryIoRateControlInformationJobObject@16
2086QueryProtectedPolicy@8
2087QuirkIsEnabledForPackage3Worker@20
2088QuirkIsEnabledForPackage4Worker@20
2089ReclaimVirtualMemory@8
2090RtlPcToFileHeader@8
2091SetIoRateControlInformationJobObject@8
2092SetProcessDefaultCpuSets@12
2093SetProtectedPolicy@12
2094SetThreadSelectedCpuSets@12
2095WaitForDebugEventEx@8
2096WerGetFlagsWorker@8
2097WerSetFlagsWorker@4
2098
2099; This is list of symbols added in Windows 10 November Update (Threshold 2 / 1511)
2100CreateEnclave@32
2101InitializeEnclave@20
2102IsEnclaveTypeSupported@4
2103LoadEnclaveData@36
2104
2105; This is list of symbols added in Windows 10 Anniversary Update (Redstone / 1607)
2106AppPolicyGetClrCompat@8
2107AppPolicyGetCreateFileAccess@8
2108AppPolicyGetLifecycleManagement@8
2109AppPolicyGetMediaFoundationCodecLoading@8
2110AppPolicyGetProcessTerminationMethod@8
2111AppPolicyGetShowDeveloperDiagnostic@8
2112AppPolicyGetThreadInitializationType@8
2113AppPolicyGetWindowingModel@8
2114; Wow64Transition DATA ; available only in 32-bit WoW64 version on 64-bit system
2115
2116; This is list of symbols added in Windows 10 Creators Update (Redstone 2 / 1703)
2117BasepInitAppCompatData@12
2118GetThreadDescription@8
2119SetThreadDescription@8
2120WerRegisterAdditionalProcess@8
2121WerRegisterCustomMetadata@8
2122WerRegisterExcludedMemoryBlock@8
2123WerUnregisterAdditionalProcess@4
2124WerUnregisterCustomMetadata@4
2125WerUnregisterExcludedMemoryBlock@4
2126
2127; This is list of symbols added in Windows 10 Fall Creators Update (Redstone 3 / 1709)
2128BasepQueryModuleChpeSettings@40 ; FIXME: Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version) changed ABI to "BasepQueryModuleChpeSettings@44"
2129EnumSystemGeoNames@12
2130GetGeoInfoEx@16
2131GetUserDefaultGeoName@8
2132IsWow64GuestMachineSupported@8
2133IsWow64Process2@12
2134ReadDirectoryChangesExW@36
2135SetUserGeoName@4
2136WerRegisterAppLocalDump@4
2137WerUnregisterAppLocalDump@0
2138
2139; In Windows 10 April 2018 Update (Redstone 4 / 1803) was not added any new symbol
2140
2141; This is list of symbols added in Windows 10 October 2018 Update (Redstone 5 / 1809)
2142ClosePseudoConsole@4
2143CreatePseudoConsole@20
2144GetDiskSpaceInformationA@8
2145GetDiskSpaceInformationW@8
2146InitializeContext2@24
2147LocalFileTimeToLocalSystemTime@12
2148LocalSystemTimeToLocalFileTime@12
2149ResizePseudoConsole@8
2150
2151; In Windows 10 May 2019 Update (19H1 / 1903) was not added any new symbol
2152
2153; In Windows 10 November 2019 Update (19H2 /1909) was not added any new symbol
2154
2155; This is list of symbols added in Windows 10 May 2020 Update (20H1 / 2004)
2156; BasepFinishPackageActivationForSxS@24
2157; BasepGetPackageActivationTokenForSxS@12
2158IsUserCetAvailableInEnvironment@4
2159SetProcessDynamicEHContinuationTargets@12
2160
2161; In Windows 10 October 2020 Update (20H2) was not added any new symbol
2162
2163; This is list of symbols added in Windows 10 May 2021 Update (21H1)
2164; CheckIsMSIXPackage@8 ; removed in Windows 11 (Sun Valley / 21H2) (WoW64 version)
2165SetProcessDynamicEnforcedCetCompatibleRanges@12
2166
2167; In Windows 10 November 2021 Update (21H2) was not added any new symbol
2168
2169; In Windows 10 2022 Update (22H2) was not added any new symbol
2170
2171; This is list of symbols added in Windows 11 (Sun Valley / 21H2) (WoW64 version)
2172ActivatePackageVirtualizationContext@8
2173AreShortNamesEnabled@8
2174; BasepFinishPackageActivation@28
2175; BasepGetPackageActivationTokenForFilePath@12
2176; BasepGetPackagedAppInfoForFile@16
2177; BasepReleasePackagedAppInfo@4
2178CreatePackageVirtualizationContext@8
2179DeactivatePackageVirtualizationContext@4
2180DuplicatePackageVirtualizationContext@8
2181EnableProcessOptionalXStateFeatures@8
2182GetCurrentPackageVirtualizationContext@0
2183GetMachineTypeAttributes@8
2184GetNumaNodeProcessorMask2@16
2185GetProcessDefaultCpuSetMasks@16
2186GetProcessesInVirtualizationContext@12
2187GetTempPath2A@8
2188GetTempPath2W@8
2189GetThreadEnabledXStateFeatures@0
2190GetThreadSelectedCpuSetMasks@16
2191QueueUserAPC2@16
2192ReleasePackageVirtualizationContext@4
2193SetProcessDefaultCpuSetMasks@12
2194SetThreadSelectedCpuSetMasks@12
2195
2196; This is list of symbols added in Windows 11 2022 Update (Sun Valley 2 / 22H2) (WoW64 version)
2197BuildIoRingCancelRequest@20
2198BuildIoRingFlushFile@24
2199BuildIoRingReadFile@44
2200BuildIoRingRegisterBuffers@16
2201BuildIoRingRegisterFileHandles@16
2202BuildIoRingWriteFile@48
2203CloseIoRing@4
2204CreateIoRing@24
2205GetIoRingInfo@8
2206IsIoRingOpSupported@8
2207PopIoRingCompletion@8
2208QueryIoRingCapabilities@4
2209SetIoRingCompletionEvent@8
2210SubmitIoRing@16
2211
2212; In Windows 11 2023 Update (Sun Valley 3 / 23H2) (WoW64 version) was not added any new symbol
2213
2214; This is list of symbols added in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version)
2215AllocConsoleWithOptions@8
2216; BackupReadEx@24
2217; BackupWriteEx@24
2218; BasepCheckPplSupport@8
2219; BasepFreeActivationTokenInfo@4
2220; BasepGetPackageActivationTokenForFilePath2@12
2221; BasepGetPackageActivationTokenForSxS2@12
2222BuildIoRingReadFileScatter@40
2223BuildIoRingWriteFileGather@44
2224FlsGetValue2@4
2225GetFileInformationByName@16
2226; LogUnexpectedCodepath@4
2227ReleasePseudoConsole@4
2228TlsGetValue2@4
2229
2230; This is list of symbols added in Windows 11 2025 Update (Hudson Valley 2 / 25H2) (WoW64 version)
2231; BasepGetPackageActivationTokenForSxS3@16
2232CreateDirectory2A@20
2233CreateDirectory2W@20
2234CreateFile3@20
2235DeleteFile2A@8
2236DeleteFile2W@8
2237RemoveDirectory2A@8
2238RemoveDirectory2W@8
lib/libc/mingw/lib32/ntdll.def+2344-1757
...@@ -1,1013 +1,433 @@...@@ -1,1013 +1,433 @@
1;1LIBRARY "NTDLL.dll"
2; Definition file of ntdll.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ntdll.dll"
7EXPORTS2EXPORTS
8RtlDispatchAPC@123
9RtlActivateActivationContextUnsafeFast@04; This file is a comprehensive documentation for 32-bit x86 ntdll.dll symbols.
10RtlDeactivateActivationContextUnsafeFast@05; It covers all 3 platforms Win32s, Win9x and WinNT and contains information
11RtlInterlockedPushListSList@86; from native ntdll.dll libraries on 32-bit Windows systems and also from
12@RtlUlongByteSwap@47; 32-bit WoW64 ntdll.dll libraries on 64-bit Windows systems. Symbols in this
13@RtlUlonglongByteSwap@88; file are ordered by increasing Windows version in which they were introduced.
14@RtlUshortByteSwap@49; First are Win32s versions, then followed by Win9x versions and then WinNT
15ExpInterlockedPopEntrySListEnd@010; because logically Win32s symbols are subset of Win9x symbols which is subset
16ExpInterlockedPopEntrySListFault@011; of WinNT symbols. Comments contains additional information with exceptions.
17ExpInterlockedPopEntrySListResume@012
18RtlpInterlockedPopEntrySeqSListEnd@013; This is list of symbols available in all Windows versions (Win32s since Win32s 1.1; Win9x since Windows 95; WinNT since Windows NT 3.1)
19RtlpInterlockedPopEntrySeqSListFault@014DbgBreakPoint@0
20RtlpInterlockedPopEntrySeqSListResume@015DbgPrint ; cdecl
21A_SHAFinal@816DbgPrompt@12
22A_SHAInit@417NtCurrentTeb@0
23A_SHAUpdate@1218NtQueryEaFile@36
24AlpcAdjustCompletionListConcurrencyCount@819NtQueryPerformanceCounter@8
25AlpcFreeCompletionListMessage@820NtSetEaFile@16
26AlpcGetCompletionListLastMessageInformation@1221RtlCreateHeap@24
27AlpcGetCompletionListMessageAttributes@822RtlEnlargedIntegerMultiply@8
28AlpcGetHeaderSize@423RtlExtendedIntegerMultiply@12
29AlpcGetMessageAttribute@824RtlExtendedLargeIntegerDivide@16
30AlpcGetMessageFromCompletionList@825RtlImageDirectoryEntryToData@16
31AlpcGetOutstandingCompletionListMessageCount@426RtlImageNtHeader@4
32AlpcInitializeMessageAttribute@1627RtlLargeIntegerSubtract@16
33AlpcMaxAllowedMessageLength@028RtlUnwind@16
34AlpcRegisterCompletionList@2029RtlValidateHeap@12 ; Win32s, Win9x and Windows NT 3.1 has ABI "RtlValidateHeap@4", Windows NT 3.5 and new has ABI "RtlValidateHeap@12"
35AlpcRegisterCompletionListWorkerThread@430
36AlpcRundownCompletionList@431; This is list of symbols available only in Win32s (not available in Win9x and WinNT)
37AlpcUnregisterCompletionList@432; RtlProcessHeap@0
38AlpcUnregisterCompletionListWorkerThread@433
39ApiSetQueryApiSetPresence@834; This is list of symbols available in Win32s and Win9x but not in WinNT
40ApiSetQueryApiSetPresenceEx@1235; RtlExFreeHeap@12
41CsrAllocateCaptureBuffer@836; RtlExReAllocateHeap@16
37; RtlExSizeHeap@12
38
39; This is list of symbols added in Win32s 1.15 and available in all Win9x and WinNT versions
40; Note that Win32s 1.15 and all later versions merged advapi32.dll, gdi32.dll,
41; kernel32.dll, ntdll.dll, user32.dll (and Win32s 1.25a and later also mpr.dll)
42; libraries into one big w32scomb.dll library and made those libraries as alias
43; to w32scomb.dll, which effectively means that every symbol from every library
44; is available also from ntdll.dll (aliased to w32scomb.dll). Below are only
45; those Win32s symbols which are available in some Win9x or WinNT version of
46; ntdll.dll or logically belongs to ntdll.dll.
47RtlAnsiStringToUnicodeString@12
48RtlDestroyHeap@4
49
50; This is list of symbols added in Win32s 1.15 and available only in Win32s (not available in Win9x and WinNT)
51; _RtlCopyMemory@12
52; _RtlMultiByteToUnicodeN@20 ; WinNT has this symbol without leading underline
53; _RtlUnicodeToMultiByteN@20 ; WinNT has this symbol without leading underline
54
55; This is list of symbols added in Win32s 1.15 and available in all Win9x version, but not in WinNT
56; RtlExAllocateHeap@12
57
58; This is list of symbols added in Win32s 1.15 and available in all WinNT version, but not in Win9x
59NtCreateSection@28
60NtMapViewOfSection@40
61NtOpenDirectoryObject@12
62NtUnmapViewOfSection@8
63RtlInitAnsiString@8
64RtlInitUnicodeString@8
65RtlMoveMemory@12
66RtlZeroMemory@8
67
68; This is list of symbols added in Win32s 1.15a and available in all Win9x and WinNT versions
69RtlUnicodeStringToAnsiString@12
70
71; This is list of symbols added in Win32s 1.15a and available in all WinNT version, but not in Win9x
72RtlAnsiStringToUnicodeSize@4
73RtlInitString@8
74RtlIntegerToUnicodeString@12
75RtlUnicodeStringToAnsiSize@4
76RtlUnicodeStringToInteger@12
77
78; This is list of symbols added in Win32s 1.20 and available in all WinNT version, but not in Win9x
79NtClose@4
80NtCreateSemaphore@20 ; Win32s has ABI "NtCreateSemaphore@36", WinNT has ABI "NtCreateSemaphore@20"
81NtReleaseSemaphore@12
82NtWaitForSingleObject@12
83RtlCreateSecurityDescriptor@8
84RtlFillMemory@12
85RtlSetDaclSecurityDescriptor@16
86
87;; This is end of Win32s symbols ;;
88
89
90; This is list of symbols available in all Win9x and WinNT versions, but not available in Win32s
91RtlAllocateHeap@12 ; Win9x has ABI "RtlAllocateHeap@8", WinNT has ABI "RtlAllocateHeap@12"
92RtlConvertLongToLargeInteger@4
93RtlConvertUlongToLargeInteger@4
94RtlEnlargedUnsignedDivide@16 ; removed in Windows 8
95RtlEnlargedUnsignedMultiply@8
96RtlExtendedMagicDivide@20
97RtlFreeHeap@12 ; Win9x has ABI "RtlFreeHeap@8", WinNT has ABI "RtlFreeHeap@12"
98RtlLargeIntegerAdd@16
99RtlLargeIntegerArithmeticShift@12
100RtlLargeIntegerDivide@20
101RtlLargeIntegerNegate@8
102RtlLargeIntegerShiftLeft@12
103RtlLargeIntegerShiftRight@12
104RtlMultiByteToUnicodeN@20 ; Win9x has ABI "RtlMultiByteToUnicodeN@16", WinNT has ABI "RtlMultiByteToUnicodeN@20"
105RtlReAllocateHeap@16 ; Win9x has ABI "RtlReAllocateHeap@12", WinNT has ABI "RtlReAllocateHeap@16"
106RtlSizeHeap@12 ; Win9x has ABI "RtlSizeHeap@8", WinNT has ABI "RtlSizeHeap@12"
107RtlUnicodeToMultiByteN@20 ; Win9x has ABI "RtlUnicodeToMultiByteN@16", WinNT has ABI "RtlUnicodeToMultiByteN@20"
108
109; This is list of symbols available in all Win9x versions, in Windows NT 3.1, but not available in Win32s, Windows NT 3.5 and new
110; RtlGetHandleValueHeap@8 ; Win9x ABI
111; RtlGetHandleValueHeap@12 ; Windows NT 3.1 ABI
112; RtlSetHandleValueHeap@12 ; Win9x ABI
113; RtlSetHandleValueHeap@16 ; Windows NT 3.1 ABI
114
115; This is list of symbols available in all Win9x versions, but not available in Win32s and WinNT
116; RtlGrowHeap@8
117
118; This is list of symbols added in Windows 98, available also in all WinNT versions, but not available in Win32s
119NtCreateFile@44
120RtlNtStatusToDosError@4
121
122; This is list of symbols added in Windows 98, but not available in Win32s and WinNT
123; IoUnregisterDeviceInterface@4
124; NtGetDevnodeFromFileHandle@8
125
126; This is list of symbols added in Windows 98 and also since Windows NT 3.51, but not available in Win32s
127NtSetSystemPowerState@12
128
129; This is list of symbols added in Windows 98 and also since Windows 2000, but not available in Win32s
130NtInitiatePowerAction@16
131NtPowerInformation@20
132NtRequestWakeupLatency@4 ; removed in Windows 7
133
134;; This is end of Win9x symbols ;;
135
136
137; This is list of symbols available since Windows NT 3.1
138CsrAllocateCaptureBuffer@8 ; Windows NT 3.1-4.0 has ABI "CsrAllocateCaptureBuffer@12", Windows 2000 and new has ABI "CsrAllocateCaptureBuffer@8"
139; CsrAllocateCapturePointer@12 ; removed in Windows 2000
42CsrAllocateMessagePointer@12140CsrAllocateMessagePointer@12
43CsrCaptureMessageBuffer@16141CsrCaptureMessageBuffer@16
44CsrCaptureMessageMultiUnicodeStringsInPlace@12
45CsrCaptureMessageString@20142CsrCaptureMessageString@20
46CsrCaptureTimeout@8143CsrCaptureTimeout@8
47CsrClientCallServer@16144CsrClientCallServer@16
48CsrClientConnectToServer@20145CsrClientConnectToServer@20 ; Windows NT 3.1-2000 has ABI "CsrClientConnectToServer@24", Windows XP and new has ABI "CsrClientConnectToServer@20"
146; CsrClientMaxMessage@0 ; removed in Windows NT 4.0
147; CsrClientSendMessage@0 ; removed in Windows NT 4.0
148; CsrClientThreadConnect@0 ; removed in Windows NT 4.0
149; CsrDumpProfile@0 ; removed in Windows NT 3.5
49CsrFreeCaptureBuffer@4150CsrFreeCaptureBuffer@4
50CsrGetProcessId@0
51CsrIdentifyAlertableThread@0151CsrIdentifyAlertableThread@0
52CsrNewThread@0152CsrNewThread@0 ; removed in Windows Vista SP1
53CsrProbeForRead@12153CsrProbeForRead@12 ; removed in Windows Vista
54CsrProbeForWrite@12154CsrProbeForWrite@12 ; removed in Windows Vista
55CsrSetPriorityClass@8155CsrSetPriorityClass@8
56CsrVerifyRegion@8156; CsrStartProfile@0 ; removed in Windows NT 3.5
57DbgBreakPoint@0157; CsrStopDumpProfile@0 ; removed in Windows NT 3.5
58DbgPrint158; CsrStopProfile@0 ; removed in Windows NT 3.5
59DbgPrintEx159; CsrpProcessCallbackRequest@4 ; removed in Windows NT 4.0
60DbgPrintReturnControlC160DbgSsHandleKmApiMsg@8 ; removed in Windows XP
61DbgPrompt@12161DbgSsInitialize@16 ; removed in Windows XP
62DbgQueryDebugFilterState@8
63DbgSetDebugFilterState@12
64DbgSsHandleKmApiMsg@8
65DbgSsInitialize@16
66DbgUiConnectToDbg@0162DbgUiConnectToDbg@0
67DbgUiContinue@8163DbgUiContinue@8
68DbgUiConvertStateChangeStructure@8
69DbgUiConvertStateChangeStructureEx@8
70DbgUiDebugActiveProcess@4
71DbgUiGetThreadDebugObject@0
72DbgUiIssueRemoteBreakin@4
73DbgUiRemoteBreakin@4
74DbgUiSetThreadDebugObject@4
75DbgUiStopDebugging@4
76DbgUiWaitStateChange@8164DbgUiWaitStateChange@8
77DbgUserBreakPoint@0165DbgUserBreakPoint@0
78EtwCheckCoverage@4166KiUserApcDispatcher@20 ; really stdcall @20, gendef detects it incorrectly
79EtwCreateTraceInstanceId@8
80EtwDeliverDataBlock@4
81EtwEnumerateProcessRegGuids@12
82EtwEventActivityIdControl@8
83EtwEventEnabled@12
84EtwEventProviderEnabled@20
85EtwEventRegister@16
86EtwEventSetInformation@20
87EtwEventUnregister@8
88EtwEventWrite@20
89EtwEventWriteEndScenario@20
90EtwEventWriteEx@40
91EtwEventWriteFull@32
92EtwEventWriteNoRegistration@16
93EtwEventWriteStartScenario@20
94EtwEventWriteString@24
95EtwEventWriteTransfer@28
96EtwGetTraceEnableFlags@8
97EtwGetTraceEnableLevel@8
98EtwGetTraceLoggerHandle@4
99EtwLogTraceEvent@12
100EtwNotificationRegister@20
101EtwNotificationUnregister@12
102EtwProcessPrivateLoggerRequest@4
103EtwRegisterSecurityProvider@0
104EtwRegisterTraceGuidsA@32
105EtwRegisterTraceGuidsW@32
106EtwReplyNotification@4
107EtwSendNotification@20
108EtwSetMark@16
109EtwTraceEventInstance@20
110EtwTraceMessage
111EtwTraceMessageVa@24
112EtwUnregisterTraceGuids@8
113EtwWriteUMSecurityEvent@16
114EtwpCreateEtwThread@8
115EtwpGetCpuSpeed@8
116;EtwpNotificationThread
117EvtIntReportAuthzEventAndSourceAsync@44
118EvtIntReportEventAndSourceAsync@44
119KiFastSystemCall@0
120KiFastSystemCallRet@0
121KiIntSystemCall@0
122KiRaiseUserExceptionDispatcher@0
123KiUserApcDispatcher@20
124KiUserCallbackDispatcher@12
125KiUserExceptionDispatcher@8167KiUserExceptionDispatcher@8
126LdrAccessResource@16168LdrAccessResource@16
127LdrAddDllDirectory@8
128LdrAddLoadAsDataTable@16; Check!!! gendef says @20
129LdrAddRefDll@8
130LdrAlternateResourcesEnabled@0
131LdrAppxHandleIntegrityFailure@4
132LdrCallEnclave@12
133LdrControlFlowGuardEnforced@0
134LdrCreateEnclave@36
135LdrDeleteEnclave@4
136LdrDisableThreadCalloutsForDll@4
137LdrEnumResources@20
138LdrEnumerateLoadedModules@12
139LdrFastFailInLoaderCallout@0
140LdrFindEntryForAddress@8169LdrFindEntryForAddress@8
141LdrFindResourceDirectory_U@16170LdrFindResourceDirectory_U@16
142LdrFindResourceEx_U@20
143LdrFindResource_U@16171LdrFindResource_U@16
144LdrFlushAlternateResourceModules@0
145LdrGetDllDirectory@4
146LdrGetDllFullName@8
147LdrGetDllHandle@16172LdrGetDllHandle@16
148LdrGetDllHandleByMapping@8
149LdrGetDllHandleByName@12
150LdrGetDllHandleEx@20
151LdrGetDllPath@16
152LdrGetFailureData@0
153LdrGetFileNameFromLoadAsDataTable@8
154LdrGetProcedureAddress@16173LdrGetProcedureAddress@16
155LdrGetProcedureAddressEx@20174LdrInitializeThunk@16 ; really stdcall @16, gendef detects it incorrectly
156LdrGetProcedureAddressForCaller@24
157LdrHotPatchRoutine@0
158LdrInitShimEngineDynamic@4
159LdrInitializeEnclave@20
160LdrInitializeThunk@16
161LdrIsModuleSxsRedirected@4
162LdrLoadAlternateResourceModule@16
163LdrLoadAlternateResourceModuleEx@20
164LdrLoadDll@16175LdrLoadDll@16
165LdrLoadEnclaveModule@12
166LdrLockLoaderLock@12
167LdrOpenImageFileOptionsKey@12
168LdrParentInterlockedPopEntrySList@0
169LdrParentRtlInitializeNtUserPfn@0
170LdrParentRtlResetNtUserPfn@0
171LdrParentRtlRetrieveNtUserPfn@0
172LdrProcessRelocationBlock@16176LdrProcessRelocationBlock@16
173LdrProcessRelocationBlockEx@20
174LdrQueryImageFileExecutionOptions@24177LdrQueryImageFileExecutionOptions@24
175LdrQueryImageFileExecutionOptionsEx@28
176LdrQueryImageFileKeyOption@24
177LdrQueryModuleServiceTags@12
178LdrQueryOptionalDelayLoadedAPI@16
179LdrQueryProcessModuleInformation@12178LdrQueryProcessModuleInformation@12
180LdrRegisterDllNotification@16
181LdrRemoveDllDirectory@4
182LdrRemoveLoadAsDataTable@16
183LdrResFindResource@36
184LdrResFindResourceDirectory@28
185LdrResGetRCConfig@20
186LdrResRelease@12
187LdrResSearchResource@32
188LdrResolveDelayLoadedAPI@24
189LdrResolveDelayLoadsFromDll@12
190LdrRscIsTypeExist@16
191LdrSetAppCompatDllRedirectionCallback@12
192LdrSetDefaultDllDirectories@4
193LdrSetDllDirectory@4
194LdrSetDllManifestProber@4
195LdrSetImplicitPathOptions@8
196LdrSetMUICacheType@4
197LdrShutdownProcess@0179LdrShutdownProcess@0
198LdrShutdownThread@0180LdrShutdownThread@0
199LdrStandardizeSystemPath@4
200LdrSystemDllInitBlock@0
201LdrUnloadAlternateResourceModule@4
202LdrUnloadAlternateResourceModuleEx@8
203LdrUnloadDll@4181LdrUnloadDll@4
204LdrUnlockLoaderLock@8182LdrVerifyImageMatchesChecksum@16 ; Windows NT 3.1-3.51 has ABI "LdrVerifyImageMatchesChecksum@4", Windows NT 4.0 and new has ABI "LdrVerifyImageMatchesChecksum@16"
205LdrUnregisterDllNotification@4
206LdrUpdatePackageSearchPath@4
207LdrVerifyImageMatchesChecksum@16
208LdrVerifyImageMatchesChecksumEx@8
209LdrpChildNtdll@0
210LdrpResGetMappingSize@16
211LdrpResGetRCConfig@20
212LdrpResGetResourceDirectory@20
213LdrWx86FormatVirtualImage@12
214MD4Final@4
215MD4Init@4
216MD4Update@12
217MD5Final@4
218MD5Init@4
219MD5Update@12
220NlsAnsiCodePage DATA
221NlsMbCodePageTag DATA
222NlsMbOemCodePageTag DATA
223NtAcceptConnectPort@24183NtAcceptConnectPort@24
224NtAccessCheck@32184NtAccessCheck@32
225NtAccessCheckAndAuditAlarm@44185NtAccessCheckAndAuditAlarm@44
226NtAccessCheckByType@44
227NtAccessCheckByTypeAndAuditAlarm@64
228NtAccessCheckByTypeResultList@44
229NtAccessCheckByTypeResultListAndAuditAlarm@64
230NtAccessCheckByTypeResultListAndAuditAlarmByHandle@68
231NtAcquireCrossVmMutant@8
232NtAcquireProcessActivityReference@12
233NtAcquireCMFViewOwnership@12
234NtAddAtom@12
235NtAddAtomEx@16
236NtAddBootEntry@8
237NtAddDriverEntry@8
238NtAdjustGroupsToken@24186NtAdjustGroupsToken@24
239NtAdjustPrivilegesToken@24187NtAdjustPrivilegesToken@24
240NtAdjustTokenClaimsAndDeviceGroups@64
241NtAlertResumeThread@8188NtAlertResumeThread@8
242NtAlertThread@4189NtAlertThread@4
243NtAlertThreadByThreadId@4
244NtAllocateLocallyUniqueId@4190NtAllocateLocallyUniqueId@4
245NtAllocateReserveObject@12
246NtAllocateUserPhysicalPages@12
247NtAllocateUserPhysicalPagesEx@20
248NtAllocateUuids@16
249NtAllocateVirtualMemory@24191NtAllocateVirtualMemory@24
250NtAllocateVirtualMemoryEx@28
251NtAlpcAcceptConnectPort@36
252NtAlpcCancelMessage@12
253NtAlpcConnectPort@44
254NtAlpcConnectPortEx@44
255NtAlpcCreatePort@12
256NtAlpcCreatePortSection@24
257NtAlpcCreateResourceReserve@16
258NtAlpcCreateSectionView@12
259NtAlpcCreateSecurityContext@12
260NtAlpcDeletePortSection@12
261NtAlpcDeleteResourceReserve@12
262NtAlpcDeleteSectionView@12
263NtAlpcDeleteSecurityContext@12
264NtAlpcDisconnectPort@8
265NtAlpcImpersonateClientContainerOfPort@12
266NtAlpcImpersonateClientOfPort@12
267NtAlpcOpenSenderProcess@24
268NtAlpcOpenSenderThread@24
269NtAlpcQueryInformation@20
270NtAlpcQueryInformationMessage@24
271NtAlpcRevokeSecurityContext@12
272NtAlpcSendWaitReceivePort@32
273NtAlpcSetInformation@16
274NtApphelpCacheControl@8
275NtAreMappedFilesTheSame@8
276NtAssignProcessToJobObject@8
277NtAssociateWaitCompletionPacket@32
278NtCallEnclave@16
279NtCallbackReturn@12
280NtCancelDeviceWakeupRequest@4
281NtCancelIoFile@8192NtCancelIoFile@8
282NtCancelIoFileEx@12
283NtCancelSynchronousIoFile@12
284NtCancelTimer2@8
285NtCancelTimer@8193NtCancelTimer@8
286NtCancelWaitCompletionPacket@8
287NtChangeProcessState@24
288NtChangeThreadState@24
289NtClearEvent@4
290NtClose@4
291NtCloseObjectAuditAlarm@12194NtCloseObjectAuditAlarm@12
292NtCommitComplete@8
293NtCommitEnlistment@8
294NtCommitRegistryTransaction@8
295NtCommitTransaction@8
296NtCompactKeys@8
297NtCompareObjects@8
298NtCompareSigningLevels@8
299NtCompareTokens@12
300NtCompleteConnectPort@4195NtCompleteConnectPort@4
301NtCompressKey@4
302NtConnectPort@32196NtConnectPort@32
303NtContinue@8197NtContinue@8
304NtContinueEx@8
305NtConvertBetweenAuxiliaryCounterAndPerformanceCounter@16
306NtCreateCrossVmEvent@24
307NtCreateCrossVmMutant@24
308NtCreateDebugObject@16
309NtCreateDirectoryObject@12198NtCreateDirectoryObject@12
310NtCreateDirectoryObjectEx@20
311NtCreateEnclave@36
312NtCreateEnlistment@32
313NtCreateEvent@20199NtCreateEvent@20
314NtCreateEventPair@12200NtCreateEventPair@12
315NtCreateFile@44
316NtCreateIRTimer@12
317NtCreateIoCompletion@16
318NtCreateIoRing@20
319NtCreateJobObject@12
320NtCreateJobSet@12
321NtCreateKey@28201NtCreateKey@28
322NtCreateKeyTransacted@32
323NtCreateKeyedEvent@16
324NtCreateLowBoxToken@36
325NtCreateMailslotFile@32202NtCreateMailslotFile@32
326NtCreateMutant@16203NtCreateMutant@16
327NtCreateNamedPipeFile@56204NtCreateNamedPipeFile@56
328NtCreatePagingFile@16205NtCreatePagingFile@16
329NtCreatePartition@16
330NtCreatePort@20206NtCreatePort@20
331NtCreatePrivateNamespace@16
332NtCreateProcess@32207NtCreateProcess@32
333NtCreateProcessEx@36208NtCreateProfile@36 ; Windows NT 3.1-3.5 has ABI "NtCreateProfile@28", Windows NT 3.51 and new has ABI "NtCreateProfile@36"
334NtCreateProcessStateChange@20
335NtCreateProfile@36
336NtCreateProfileEx@40
337NtCreateRegistryTransaction@16
338NtCreateResourceManager@28
339NtCreateSection@28
340NtCreateSectionEx@36
341NtCreateSemaphore@20
342NtCreateSymbolicLinkObject@16209NtCreateSymbolicLinkObject@16
343NtCreateThread@32210NtCreateThread@32
344NtCreateThreadEx@44211NtCreateTimer@16 ; Windows NT 3.1-3.51 has ABI "NtCreateTimer@12", Windows NT 4.0 and new has ABI "NtCreateTimer@16"
345NtCreateThreadStateChange@20
346NtCreateTimer2@20
347NtCreateTimer@16
348NtCreateToken@52212NtCreateToken@52
349NtCreateTokenEx@68
350NtCreateTransaction@40
351NtCreateTransactionManager@24
352NtCreateUserProcess@44
353NtCreateWaitCompletionPacket@12
354NtCreateWaitablePort@20
355NtCreateWnfStateName@28
356NtCreateWorkerFactory@40
357NtCurrentTeb@0
358NtDebugActiveProcess@8
359NtDebugContinue@12
360NtDelayExecution@8213NtDelayExecution@8
361NtDeleteAtom@4
362NtDeleteBootEntry@4
363NtDeleteDriverEntry@4
364NtDeleteFile@4
365NtDeleteKey@4214NtDeleteKey@4
366NtDeleteObjectAuditAlarm@12
367NtDeletePrivateNamespace@4
368NtDeleteValueKey@8215NtDeleteValueKey@8
369NtDeleteWnfStateData@8
370NtDeleteWnfStateName@4
371NtDeviceIoControlFile@40216NtDeviceIoControlFile@40
372NtDirectGraphicsCall@20
373NtDisableLastKnownGood@0
374NtDisplayString@4217NtDisplayString@4
375NtDrawText@4
376NtDuplicateObject@28218NtDuplicateObject@28
377NtDuplicateToken@24219NtDuplicateToken@24
378NtEnableLastKnownGood@0
379NtEnumerateBootEntries@8
380NtEnumerateDriverEntries@8
381NtEnumerateKey@24220NtEnumerateKey@24
382NtEnumerateSystemEnvironmentValuesEx@12
383NtEnumerateTransactionObject@20
384NtEnumerateValueKey@24221NtEnumerateValueKey@24
385NtExtendSection@8222NtExtendSection@8
386NtFilterBootOption@20
387NtFilterToken@24
388NtFilterTokenEx@56
389NtFindAtom@12
390NtFlushBuffersFile@8223NtFlushBuffersFile@8
391NtFlushBuffersFileEx@20
392NtFlushInstallUILanguage@8
393NtFlushInstructionCache@12224NtFlushInstructionCache@12
394NtFlushKey@4225NtFlushKey@4
395NtFlushProcessWriteBuffers@0
396NtFlushVirtualMemory@16226NtFlushVirtualMemory@16
397NtFlushWriteBuffer@0227NtFlushWriteBuffer@0
398NtFreeUserPhysicalPages@12
399NtFreeVirtualMemory@16228NtFreeVirtualMemory@16
400NtFreezeRegistry@4
401NtFreezeTransactions@8
402NtFsControlFile@40229NtFsControlFile@40
403NtGetCachedSigningLevel@24
404NtGetCompleteWnfStateSubscription@24
405NtGetContextThread@8230NtGetContextThread@8
406NtGetCurrentProcessorNumber@0231; NtGetTickCount@0 ; removed in Windows XP
407NtGetCurrentProcessorNumberEx@4
408NtGetDevicePowerState@8
409NtGetMUIRegistryInfo@12
410NtGetNextProcess@20
411NtGetNextThread@24
412NtGetNlsSectionPtr@20
413NtGetNotificationResourceManager@28
414NtGetPlugPlayEvent@16
415NtGetTickCount@0
416NtGetWriteWatch@28
417NtImpersonateAnonymousToken@4
418NtImpersonateClientOfPort@8232NtImpersonateClientOfPort@8
419NtImpersonateThread@12233NtImpersonateThread@12
420NtInitializeEnclave@20
421NtInitializeNlsFiles@16 ;Check!!! gendef says 12
422NtInitializeRegistry@4234NtInitializeRegistry@4
423NtInitiatePowerAction@16235; NtInitializeVDM@0 ; removed in Windows NT 3.5
424NtIsProcessInJob@8
425NtIsSystemResumeAutomatic@0
426NtIsUILanguageComitted@0
427NtListenPort@8236NtListenPort@8
428NtLoadDriver@4237NtLoadDriver@4
429NtLoadEnclaveData@36
430NtLoadKey2@12
431NtLoadKey3@32
432NtLoadKey@8238NtLoadKey@8
433NtLoadKeyEx@32
434NtLockFile@40239NtLockFile@40
435NtLockProductActivationKeys@8
436NtLockRegistryKey@4
437NtLockVirtualMemory@16240NtLockVirtualMemory@16
438NtMakePermanentObject@4
439NtMakeTemporaryObject@4241NtMakeTemporaryObject@4
440NtManageHotPatch@16
441NtManagePartition@20
442NtMapCMFModule@24
443NtMapUserPhysicalPages@12
444NtMapUserPhysicalPagesScatter@12
445NtMapViewOfSection@40
446NtMapViewOfSectionEx@36
447NtModifyBootEntry@4
448NtModifyDriverEntry@4
449NtNotifyChangeDirectoryFile@36242NtNotifyChangeDirectoryFile@36
450NtNotifyChangeDirectoryFileEx@40
451NtNotifyChangeKey@40243NtNotifyChangeKey@40
452NtNotifyChangeMultipleKeys@48
453NtNotifyChangeSession@32
454NtOpenDirectoryObject@12
455NtOpenEnlistment@20
456NtOpenEvent@12244NtOpenEvent@12
457NtOpenEventPair@12245NtOpenEventPair@12
458NtOpenFile@24246NtOpenFile@24
459NtOpenIoCompletion@12
460NtOpenJobObject@12
461NtOpenKey@12247NtOpenKey@12
462NtOpenKeyEx@16
463NtOpenKeyTransacted@16
464NtOpenKeyTransactedEx@20
465NtOpenKeyedEvent@12
466NtOpenMutant@12248NtOpenMutant@12
467NtOpenObjectAuditAlarm@48249NtOpenObjectAuditAlarm@48
468NtOpenPartition@12
469NtOpenPrivateNamespace@16
470NtOpenProcess@16250NtOpenProcess@16
471NtOpenProcessToken@12251NtOpenProcessToken@12
472NtOpenProcessTokenEx@16
473NtOpenRegistryTransaction@12
474NtOpenResourceManager@20
475NtOpenSection@12252NtOpenSection@12
476NtOpenSemaphore@12253NtOpenSemaphore@12
477NtOpenSession@12
478NtOpenSymbolicLinkObject@12254NtOpenSymbolicLinkObject@12
479NtOpenThread@16255NtOpenThread@16
480NtOpenThreadToken@16256NtOpenThreadToken@16
481NtOpenThreadTokenEx@20
482NtOpenTimer@12257NtOpenTimer@12
483NtOpenTransaction@20
484NtOpenTransactionManager@24
485NtPlugPlayControl@12
486NtPowerInformation@20
487NtPrePrepareComplete@8
488NtPrePrepareEnlistment@8
489NtPrepareComplete@8
490NtPrepareEnlistment@8
491NtPrivilegeCheck@12258NtPrivilegeCheck@12
492NtPrivilegeObjectAuditAlarm@24259NtPrivilegeObjectAuditAlarm@24
493NtPrivilegedServiceAuditAlarm@20260NtPrivilegedServiceAuditAlarm@20
494NtPropagationComplete@16
495NtPropagationFailed@12
496NtProtectVirtualMemory@20261NtProtectVirtualMemory@20
497NtPssCaptureVaSpaceBulk@20
498NtPulseEvent@8262NtPulseEvent@8
499NtQueryAttributesFile@8
500NtQueryAuxiliaryCounterFrequency@4
501NtQueryBootEntryOrder@8
502NtQueryBootOptions@8
503NtQueryDebugFilterState@8
504NtQueryDefaultLocale@8263NtQueryDefaultLocale@8
505NtQueryDefaultUILanguage@4
506NtQueryDirectoryFile@44264NtQueryDirectoryFile@44
507NtQueryDirectoryFileEx@40
508NtQueryDirectoryObject@28265NtQueryDirectoryObject@28
509NtQueryDriverEntryOrder@8
510NtQueryEaFile@36
511NtQueryEvent@20266NtQueryEvent@20
512NtQueryFullAttributesFile@8
513NtQueryInformationAtom@20
514NtQueryInformationByName@20
515NtQueryInformationEnlistment@20
516NtQueryInformationFile@20267NtQueryInformationFile@20
517NtQueryInformationJobObject@20
518NtQueryInformationPort@20268NtQueryInformationPort@20
519NtQueryInformationProcess@20269NtQueryInformationProcess@20
520NtQueryInformationResourceManager@20
521NtQueryInformationThread@20270NtQueryInformationThread@20
522NtQueryInformationToken@20271NtQueryInformationToken@20
523NtQueryInformationTransaction@20272NtQueryIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "NtQueryIntervalProfile@4", Windows NT 3.51 and new has ABI "NtQueryIntervalProfile@8"
524NtQueryInformationTransactionManager@20
525NtQueryInformationWorkerFactory@20
526NtQueryInstallUILanguage@4
527NtQueryIntervalProfile@8
528NtQueryIoCompletion@20
529NtQueryIoRingCapabilities@8
530NtQueryKey@20273NtQueryKey@20
531NtQueryLicenseValue@20
532NtQueryMultipleValueKey@24
533NtQueryMutant@20274NtQueryMutant@20
534NtQueryObject@20275NtQueryObject@20
535NtQueryOpenSubKeys@8
536NtQueryOpenSubKeysEx@16
537NtQueryPerformanceCounter@8
538NtQueryPortInformationProcess@0
539NtQueryQuotaInformationFile@36
540NtQuerySection@20276NtQuerySection@20
541NtQuerySecurityAttributesToken@24
542NtQuerySecurityObject@20277NtQuerySecurityObject@20
543NtQuerySecurityPolicy@24
544NtQuerySemaphore@20278NtQuerySemaphore@20
545NtQuerySymbolicLinkObject@12279NtQuerySymbolicLinkObject@12
546NtQuerySystemEnvironmentValue@16280NtQuerySystemEnvironmentValue@16
547NtQuerySystemEnvironmentValueEx@20
548NtQuerySystemInformation@16281NtQuerySystemInformation@16
549NtQuerySystemInformationEx@24
550NtQuerySystemTime@4282NtQuerySystemTime@4
551NtQueryTimer@20283NtQueryTimer@20
552NtQueryTimerResolution@12
553NtQueryValueKey@24284NtQueryValueKey@24
554NtQueryVirtualMemory@24285NtQueryVirtualMemory@24
555NtQueryVolumeInformationFile@20286NtQueryVolumeInformationFile@20
556NtQueryWnfStateData@24
557NtQueryWnfStateNameInformation@20
558NtQueueApcThread@20
559NtQueueApcThreadEx2@28
560NtQueueApcThreadEx@24
561NtRaiseException@12287NtRaiseException@12
562NtRaiseHardError@24288NtRaiseHardError@24
563NtReadFile@36289NtReadFile@36
564NtReadFileScatter@36
565NtReadOnlyEnlistment@8
566NtReadRequestData@24290NtReadRequestData@24
567NtReadVirtualMemory@20291NtReadVirtualMemory@20
568NtReadVirtualMemoryEx@24
569NtRecoverEnlistment@8
570NtRecoverResourceManager@4
571NtRecoverTransactionManager@4
572NtRegisterProtocolAddressInformation@20
573NtRegisterThreadTerminatePort@4292NtRegisterThreadTerminatePort@4
574NtReleaseCMFViewOwnership@0
575NtReleaseKeyedEvent@16
576NtReleaseMutant@8293NtReleaseMutant@8
577NtReleaseSemaphore@12294; NtReleaseProcessMutant@0 ; removed in Windows NT 4.0
578NtReleaseWorkerFactoryWorker@4295; NtRenameValueKey@16 ; removed in Windows NT 3.5
579NtRemoveIoCompletion@20
580NtRemoveIoCompletionEx@24
581NtRemoveProcessDebug@8
582NtRenameKey@8
583NtRenameTransactionManager@8
584NtReplaceKey@12296NtReplaceKey@12
585NtReplacePartitionUnit@12
586NtReplyPort@8297NtReplyPort@8
587NtReplyWaitReceivePort@16298NtReplyWaitReceivePort@16
588NtReplyWaitReceivePortEx@20
589NtReplyWaitReplyPort@8299NtReplyWaitReplyPort@8
590NtRequestDeviceWakeup@4
591NtRequestPort@8300NtRequestPort@8
592NtRequestWaitReplyPort@12301NtRequestWaitReplyPort@12
593NtRequestWakeupLatency@4
594NtResetEvent@8302NtResetEvent@8
595NtResetWriteWatch@12
596NtRestoreKey@12303NtRestoreKey@12
597NtResumeProcess@4
598NtResumeThread@8304NtResumeThread@8
599NtRevertContainerImpersonation@0
600NtRollbackComplete@8
601NtRollbackEnlistment@8
602NtRollbackRegistryTransaction@8
603NtRollbackTransaction@8
604NtRollforwardTransactionManager@8
605NtSaveKey@8305NtSaveKey@8
606NtSaveKeyEx@12
607NtSaveMergedKeys@12
608NtSecureConnectPort@36
609NtSerializeBoot@0
610NtSetBootEntryOrder@8
611NtSetBootOptions@8
612NtSetCachedSigningLevel2@24
613NtSetCachedSigningLevel@20
614NtSetContextThread@8306NtSetContextThread@8
615NtSetDebugFilterState@12
616NtSetDefaultHardErrorPort@4307NtSetDefaultHardErrorPort@4
617NtSetDefaultLocale@8308NtSetDefaultLocale@8
618NtSetDefaultUILanguage@4
619NtSetDriverEntryOrder@8
620NtSetEaFile@16
621NtSetEvent@8309NtSetEvent@8
622NtSetEventBoostPriority@4
623NtSetHighEventPair@4310NtSetHighEventPair@4
624NtSetHighWaitLowEventPair@4311NtSetHighWaitLowEventPair@4
625NtSetIRTimer@8312; NtSetHighWaitLowThread@0 ; removed in Windows 2000
626NtSetInformationDebugObject@20
627NtSetInformationEnlistment@16
628NtSetInformationFile@20313NtSetInformationFile@20
629NtSetInformationIoRing@16
630NtSetInformationJobObject@16
631NtSetInformationKey@16314NtSetInformationKey@16
632NtSetInformationObject@16
633NtSetInformationProcess@16315NtSetInformationProcess@16
634NtSetInformationResourceManager@16
635NtSetInformationSymbolicLink@16
636NtSetInformationThread@16316NtSetInformationThread@16
637NtSetInformationToken@16317NtSetInformationToken@16
638NtSetInformationTransaction@16318NtSetIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "NtSetIntervalProfile@4", Windows NT 3.51 and new has ABI "NtSetIntervalProfile@8"
639NtSetInformationTransactionManager@16
640NtSetInformationVirtualMemory@24
641NtSetInformationWorkerFactory@16
642NtSetIntervalProfile@8
643NtSetIoCompletion@20
644NtSetIoCompletionEx@24
645NtSetLdtEntries@24319NtSetLdtEntries@24
646NtSetLowEventPair@4320NtSetLowEventPair@4
647NtSetLowWaitHighEventPair@4321NtSetLowWaitHighEventPair@4
648NtSetQuotaInformationFile@16322; NtSetLowWaitHighThread@0 ; removed in Windows 2000
649NtSetSecurityObject@12323NtSetSecurityObject@12
650NtSetSystemEnvironmentValue@8324NtSetSystemEnvironmentValue@8
651NtSetSystemEnvironmentValueEx@20
652NtSetSystemInformation@12
653NtSetSystemPowerState@12
654NtSetSystemTime@8325NtSetSystemTime@8
655NtSetThreadExecutionState@8326NtSetTimer@28 ; Windows NT 3.1-3.5 has ABI "NtSetTimer@20", Windows NT 3.51 has ABI "NtSetTimer@24", Windows NT 4.0 and new has ABI NtSetTimer@28
656NtSetTimer2@16
657NtSetTimer@28
658NtSetTimerEx@16
659NtSetTimerResolution@12
660NtSetUuidSeed@4
661NtSetValueKey@24327NtSetValueKey@24
662NtSetVolumeInformationFile@20328NtSetVolumeInformationFile@20
663NtSetWnfProcessNotificationEvent@4
664NtShutdownSystem@4329NtShutdownSystem@4
665NtShutdownWorkerFactory@8
666NtSignalAndWaitForSingleObject@16
667NtSinglePhaseReject@8
668NtStartProfile@4330NtStartProfile@4
669NtStopProfile@4331NtStopProfile@4
670NtSubmitIoRing@16
671NtSubscribeWnfStateChange@16
672NtSuspendProcess@4
673NtSuspendThread@8332NtSuspendThread@8
674NtSystemDebugControl@24333NtSystemDebugControl@24
675NtTerminateEnclave@8
676NtTerminateJobObject@8
677NtTerminateProcess@8334NtTerminateProcess@8
678NtTerminateThread@8335NtTerminateThread@8
679NtTestAlert@0336NtTestAlert@0
680NtThawRegistry@0
681NtThawTransactions@0
682NtTraceControl@24
683NtTraceEvent@16
684NtTranslateFilePath@16
685NtUmsThreadYield@4
686NtUnloadDriver@4337NtUnloadDriver@4
687NtUnloadKey2@8
688NtUnloadKey@4338NtUnloadKey@4
689NtUnloadKeyEx@8
690NtUnlockFile@20339NtUnlockFile@20
691NtUnlockVirtualMemory@16340NtUnlockVirtualMemory@16
692NtUnmapViewOfSection@8341NtVdmControl@8 ; Windows NT 3.1 has ABI "NtVdmControl@16", Windows NT 3.5 and new has ABI "NtVdmControl@8"
693NtUnmapViewOfSectionEx@12342; NtVdmStartExecution@0 ; removed in Windows NT 3.5
694NtUnsubscribeWnfStateChange@4
695NtUpdateWnfStateData@28
696NtVdmControl@8
697NtWaitForAlertByThreadId@8
698NtWaitForDebugEvent@16
699NtWaitForKeyedEvent@16
700NtWaitForMultipleObjects32@20
701NtWaitForMultipleObjects@20343NtWaitForMultipleObjects@20
702NtWaitForSingleObject@12344; NtWaitForProcessMutant@0 ; removed in Windows NT 4.0
703NtWaitForWorkViaWorkerFactory@8
704NtWaitHighEventPair@4345NtWaitHighEventPair@4
705NtWaitLowEventPair@4346NtWaitLowEventPair@4
706NtWorkerFactoryWorkerReady@4
707NtWow64CallFunction64@28
708NtWow64CsrAllocateCaptureBuffer@8
709NtWow64CsrAllocateMessagePointer@12
710NtWow64CsrCaptureMessageBuffer@16
711NtWow64CsrCaptureMessageString@20
712NtWow64CsrClientCallServer@16
713NtWow64CsrClientConnectToServer@20
714NtWow64CsrFreeCaptureBuffer@4
715NtWow64CsrGetProcessId@0
716NtWow64CsrIdentifyAlertableThread@0
717NtWow64CsrVerifyRegion@8
718NtWow64DebuggerCall@20
719NtWow64GetCurrentProcessorNumberEx@4
720NtWow64GetNativeSystemInformation@16
721NtWow64InterlockedPopEntrySList@4
722NtWow64QueryInformationProcess64@20
723NtWow64QueryVirtualMemory64@32
724NtWow64ReadVirtualMemory64@28
725NtWow64WriteVirtualMemory64@28
726NtWriteFile@36347NtWriteFile@36
727NtWriteFileGather@36
728NtWriteRequestData@24348NtWriteRequestData@24
729NtWriteVirtualMemory@20349NtWriteVirtualMemory@20
730NtYieldExecution@0
731; Not sure, but we assume here standard DefWindowProc arguments
732NtdllDefWindowProc_A@16
733NtdllDefWindowProc_W@16
734; Not sure, but we assume here standard DefDlgProc arguments
735NtdllDialogWndProc_A@16
736NtdllDialogWndProc_W@16
737PfxFindPrefix@8350PfxFindPrefix@8
738PfxInitialize@4351PfxInitialize@4
739PfxInsertPrefix@12352PfxInsertPrefix@12
740PfxRemovePrefix@8353PfxRemovePrefix@8
741PssNtCaptureSnapshot@16
742PssNtDuplicateSnapshot@20
743PssNtFreeRemoteSnapshot@8
744PssNtFreeSnapshot@4
745PssNtFreeWalkMarker@4
746PssNtQuerySnapshot@16
747PssNtValidateDescriptor@8
748PssNtWalkSnapshot@20
749RtlAbortRXact@4354RtlAbortRXact@4
750RtlAbsoluteToSelfRelativeSD@12355RtlAbsoluteToSelfRelativeSD@12
751RtlAcquirePebLock@0356RtlAcquirePebLock@0
752RtlAcquirePrivilege@16
753RtlAcquireReleaseSRWLockExclusive@4
754RtlAcquireResourceExclusive@8357RtlAcquireResourceExclusive@8
755RtlAcquireResourceShared@8358RtlAcquireResourceShared@8
756RtlAcquireSRWLockExclusive@4
757RtlAcquireSRWLockShared@4
758RtlActivateActivationContext@12
759RtlActivateActivationContextEx@16
760RtlAddAccessAllowedAce@16359RtlAddAccessAllowedAce@16
761RtlAddAccessAllowedAceEx@20
762RtlAddAccessAllowedObjectAce@28
763RtlAddAccessDeniedAce@16360RtlAddAccessDeniedAce@16
764RtlAddAccessDeniedAceEx@20
765RtlAddAccessDeniedObjectAce@28
766RtlAddAccessFilterAce@32
767RtlAddAce@20361RtlAddAce@20
768RtlAddActionToRXact@24362RtlAddActionToRXact@24
769RtlAddAtomToAtomTable@12
770RtlAddAttributeActionToRXact@32363RtlAddAttributeActionToRXact@32
771RtlAddAuditAccessAce@24364RtlAddAuditAccessAce@24
772RtlAddAuditAccessAceEx@28
773RtlAddAuditAccessObjectAce@36
774RtlAddCompoundAce@24
775RtlAddIntegrityLabelToBoundaryDescriptor@8
776RtlAddMandatoryAce@24
777RtlAddProcessTrustLabelAce@24
778RtlAddRefActivationContext@4
779RtlAddRange@36
780RtlAddRefMemoryStream@4
781RtlAddResourceAttributeAce@28
782RtlAddSIDToBoundaryDescriptor@8
783RtlAddScopedPolicyIDAce@20
784RtlAddVectoredContinueHandler@8
785RtlAddVectoredExceptionHandler@8
786RtlAddressInSectionTable@12
787RtlAdjustPrivilege@16365RtlAdjustPrivilege@16
788RtlAllocateActivationContextStack@4
789RtlAllocateAndInitializeSid@44366RtlAllocateAndInitializeSid@44
790RtlAllocateAndInitializeSidEx@16367; RtlAnalyzeProfile@0 ; removed in Windows NT 3.5
791RtlAllocateHandle@8
792RtlAllocateHeap@12
793RtlAllocateMemoryBlockLookaside@12
794RtlAllocateMemoryZone@12
795RtlAllocateWnfSerializationGroup@0
796RtlAnsiCharToUnicodeChar@4368RtlAnsiCharToUnicodeChar@4
797RtlAnsiStringToUnicodeSize@4
798RtlAnsiStringToUnicodeString@12
799RtlAppendAsciizToString@8369RtlAppendAsciizToString@8
800RtlAppendPathElement@12
801RtlAppendStringToString@8370RtlAppendStringToString@8
802RtlAppendUnicodeStringToString@8371RtlAppendUnicodeStringToString@8
803RtlAppendUnicodeToString@8372RtlAppendUnicodeToString@8
804RtlApplicationVerifierStop@40
805RtlApplyRXact@4373RtlApplyRXact@4
806RtlApplyRXactNoFlush@4374RtlApplyRXactNoFlush@4
807RtlAppxIsFileOwnedByTrustedInstaller@8
808RtlAreAllAccessesGranted@8375RtlAreAllAccessesGranted@8
809RtlAreAnyAccessesGranted@8376RtlAreAnyAccessesGranted@8
810RtlAreBitsClear@12377RtlAreBitsClear@12
811RtlAreBitsSet@12378RtlAreBitsSet@12
812RtlAreLongPathsEnabled@0
813RtlAssert@16379RtlAssert@16
814RtlAvlInsertNodeEx@16
815RtlAvlRemoveNode@8
816RtlBarrier@8
817RtlBarrierForDelete@8
818RtlCallbackLpcClient@12
819RtlCancelTimer@8
820RtlCanonicalizeDomainName@12
821RtlCapabilityCheck@12
822RtlCapabilityCheckForSingleSessionSku@12
823RtlCaptureContext@4
824RtlCaptureStackBackTrace@16380RtlCaptureStackBackTrace@16
825RtlCaptureStackContext@12
826RtlCharToInteger@12381RtlCharToInteger@12
827RtlCheckBootStatusIntegrity@8
828RtlCheckForOrphanedCriticalSections@4
829RtlCheckPortableOperatingSystem@4
830RtlCheckRegistryKey@8382RtlCheckRegistryKey@8
831RtlCheckSandboxedToken@8
832RtlCheckSystemBootStatusIntegrity@4
833RtlCheckTokenCapability@12
834RtlCheckTokenMembership@12
835RtlCheckTokenMembershipEx@16
836RtlCleanUpTEBLangLists@0
837RtlClearAllBits@4383RtlClearAllBits@4
838RtlClearBit@8
839RtlClearBits@12384RtlClearBits@12
840RtlClearThreadWorkOnBehalfTicket@0
841RtlCloneMemoryStream@8
842RtlCloneUserProcess@20
843RtlCmDecodeMemIoResource@8
844RtlCmEncodeMemIoResource@24
845RtlCommitDebugInfo@8
846RtlCommitMemoryStream@8
847RtlCompactHeap@8385RtlCompactHeap@8
848RtlCompareAltitudes@8
849RtlCompareExchangePointerMapping@16
850RtlCompareExchangePropertyStore@16
851RtlCompareMemory@12386RtlCompareMemory@12
852RtlCompareMemoryUlong@12387RtlCompareMemoryUlong@12
853RtlCompareString@12388RtlCompareString@12
854RtlCompareUnicodeString@12389RtlCompareUnicodeString@12
855RtlCompareUnicodeStrings@20
856RtlCompressBuffer@32
857RtlComputeCrc32@12
858RtlComputeImportTableHash@12
859RtlComputePrivatizedDllName_U@12
860RtlConnectToSm@16
861RtlConsoleMultiByteToUnicodeN@24390RtlConsoleMultiByteToUnicodeN@24
862RtlConstructCrossVmEventPath@12
863RtlConstructCrossVmMutexPath@12
864RtlContractHashTable@4
865RtlConvertDeviceFamilyInfoToString@16
866RtlConvertExclusiveToShared@4391RtlConvertExclusiveToShared@4
867RtlConvertLCIDToString@20
868RtlConvertLongToLargeInteger@4
869RtlConvertSRWLockExclusiveToShared@4
870RtlConvertSharedToExclusive@4392RtlConvertSharedToExclusive@4
871RtlConvertSidToUnicodeString@12393RtlConvertSidToUnicodeString@12
872RtlConvertToAutoInheritSecurityObject@24394RtlConvertUiListToApiList@12 ; removed in Windows 8.1
873RtlConvertUiListToApiList@12
874RtlConvertUlongToLargeInteger@4
875RtlCopyBitMap@12
876RtlCopyContext@12
877RtlCopyExtendedContext@12
878RtlCopyLuid@8395RtlCopyLuid@8
879RtlCopyLuidAndAttributesArray@12396RtlCopyLuidAndAttributesArray@12
880RtlCopyMappedMemory@12
881RtlCopyMemoryStreamTo@24
882RtlCopyOutOfProcessMemoryStreamTo@24
883RtlCopyRangeList@8
884RtlCopySecurityDescriptor@8397RtlCopySecurityDescriptor@8
885RtlCopySid@12398RtlCopySid@12
886RtlCopySidAndAttributesArray@28399RtlCopySidAndAttributesArray@28
887RtlCopyString@8400RtlCopyString@8
888RtlCopyUnicodeString@8401RtlCopyUnicodeString@8
889RtlCrc32@12
890RtlCrc64@16
891RtlCreateAcl@12402RtlCreateAcl@12
892RtlCreateActivationContext@24
893RtlCreateAndSetSD@20403RtlCreateAndSetSD@20
894RtlCreateAtomTable@8
895RtlCreateBootStatusDataFile@4
896RtlCreateBoundaryDescriptor@8
897RtlCreateEnvironment@8404RtlCreateEnvironment@8
898RtlCreateEnvironmentEx@12
899RtlCreateHashTable@12
900RtlCreateHashTableEx@16
901RtlCreateHeap@24
902RtlCreateLpcServer@24
903RtlCreateMemoryBlockLookaside@20
904RtlCreateMemoryZone@12
905RtlCreateProcessParameters@40405RtlCreateProcessParameters@40
906RtlCreateProcessParametersEx@44
907RtlCreateProcessParametersWithTemplate@12
908RtlCreateProcessReflection@24
909RtlCreateQueryDebugBuffer@8
910RtlCreateRegistryKey@8406RtlCreateRegistryKey@8
911RtlCreateSecurityDescriptor@8
912RtlCreateServiceSid@12
913RtlCreateSystemVolumeInformationFolder@4
914RtlCreateTagHeap@16
915RtlCreateTimer@28
916RtlCreateTimerQueue@4
917RtlCreateUnicodeString@8407RtlCreateUnicodeString@8
918RtlCreateUnicodeStringFromAsciiz@8408RtlCreateUnicodeStringFromAsciiz@8
919RtlCreateUserProcess@40409RtlCreateUserProcess@40
920RtlCreateUserProcessEx@20
921RtlCreateUserSecurityObject@28410RtlCreateUserSecurityObject@28
922RtlCreateUserStack@24
923RtlCreateUserThread@40411RtlCreateUserThread@40
924RtlCreateVirtualAccountSid@16
925RtlCultureNameToLCID@8
926RtlCustomCPToUnicodeN@24412RtlCustomCPToUnicodeN@24
927RtlCutoverTimeToSystemTime@16
928RtlDeCommitDebugInfo@12
929RtlDeNormalizeProcessParams@4413RtlDeNormalizeProcessParams@4
930RtlDeactivateActivationContext@8
931RtlDebugPrintTimes@0
932RtlDecodePointer@4
933RtlDecodeRemotePointer@12
934RtlDecodeSystemPointer@4
935RtlDecompressBuffer@24
936RtlDecompressBufferEx@28
937RtlDecompressFragment@32
938RtlDefaultNpAcl@4
939RtlDelayExecution@8
940RtlDelete@4414RtlDelete@4
941RtlDeleteAce@8415RtlDeleteAce@8
942RtlDeleteAtomFromAtomTable@8
943RtlDeleteBarrier@4
944RtlDeleteBoundaryDescriptor@4
945RtlDeleteCriticalSection@4416RtlDeleteCriticalSection@4
946RtlDeleteElementGenericTable@8417RtlDeleteElementGenericTable@8
947RtlDeleteElementGenericTableAvl@8
948RtlDeleteElementGenericTableAvlEx@8
949RtlDeleteHashTable@4
950RtlDeleteNoSplay@8
951RtlDeleteOwnersRanges@8
952RtlDeleteRange@24
953RtlDeleteRegistryValue@12418RtlDeleteRegistryValue@12
954RtlDeleteResource@4419RtlDeleteResource@4
955RtlDeleteSecurityObject@4420RtlDeleteSecurityObject@4
956RtlDeleteTimer@12
957RtlDeleteTimerQueue@4
958RtlDeleteTimerQueueEx@8
959RtlDeregisterSecureMemoryCacheCallback@4
960RtlDeregisterWait@4
961RtlDeregisterWaitEx@8
962RtlDeriveCapabilitySidsFromName@12
963RtlDestroyAtomTable@4
964RtlDestroyEnvironment@4421RtlDestroyEnvironment@4
965RtlDestroyHandleTable@4
966RtlDestroyHeap@4
967RtlDestroyMemoryBlockLookaside@4
968RtlDestroyMemoryZone@4
969RtlDestroyProcessParameters@4422RtlDestroyProcessParameters@4
970RtlDestroyQueryDebugBuffer@4
971RtlDetectHeapLeaks@0
972RtlDetermineDosPathNameType_U@4423RtlDetermineDosPathNameType_U@4
973RtlDisableThreadProfiling@4
974RtlDllShutdownInProgress@0
975RtlDnsHostNameToComputerName@12
976RtlDoesFileExists_U@4424RtlDoesFileExists_U@4
977RtlDoesNameContainWildCards@4
978RtlDosApplyFileIsolationRedirection_Ustr@36
979RtlDosLongPathNameToNtPathName_U_WithStatus@16
980RtlDosLongPathNameToRelativeNtPathName_U_WithStatus@16
981RtlDosPathNameToNtPathName_U@16425RtlDosPathNameToNtPathName_U@16
982RtlDosPathNameToNtPathName_U_WithStatus@16
983RtlDosPathNameToRelativeNtPathName_U@16
984RtlDosPathNameToRelativeNtPathName_U_WithStatus@16
985RtlDosSearchPath_U@24426RtlDosSearchPath_U@24
986RtlDosSearchPath_Ustr@36
987RtlDowncaseUnicodeChar@4
988RtlDowncaseUnicodeString@12
989RtlDumpResource@4427RtlDumpResource@4
990RtlDuplicateUnicodeString@12
991RtlEmptyAtomTable@8
992RtlEnableEarlyCriticalSectionEventCreation@0
993RtlEnableThreadProfiling@20
994RtlEncodePointer@4
995RtlEncodeRemotePointer@12
996RtlEncodeSystemPointer@4
997RtlEndEnumerationHashTable@8
998RtlEndStrongEnumerationHashTable@8
999RtlEndWeakEnumerationHashTable@8
1000RtlEnlargedIntegerMultiply@8
1001RtlEnlargedUnsignedDivide@16
1002RtlEnlargedUnsignedMultiply@8
1003RtlEnterCriticalSection@4428RtlEnterCriticalSection@4
1004RtlEnumProcessHeaps@8
1005RtlEnumerateEntryHashTable@8
1006RtlEnumerateGenericTable@8429RtlEnumerateGenericTable@8
1007RtlEnumerateGenericTableAvl@8
1008RtlEnumerateGenericTableLikeADirectory@28
1009RtlEnumerateGenericTableWithoutSplaying@8430RtlEnumerateGenericTableWithoutSplaying@8
1010RtlEnumerateGenericTableWithoutSplayingAvl@8
1011RtlEqualComputerName@8431RtlEqualComputerName@8
1012RtlEqualDomainName@8432RtlEqualDomainName@8
1013RtlEqualLuid@8433RtlEqualLuid@8
...@@ -1015,600 +435,141 @@ RtlEqualPrefixSid@8...@@ -1015,600 +435,141 @@ RtlEqualPrefixSid@8
1015RtlEqualSid@8435RtlEqualSid@8
1016RtlEqualString@12436RtlEqualString@12
1017RtlEqualUnicodeString@12437RtlEqualUnicodeString@12
1018RtlEqualWnfChangeStamps@8
1019RtlEraseUnicodeString@4438RtlEraseUnicodeString@4
1020RtlEthernetAddressToStringA@8439; RtlExpandEnvironmentStrings@16 ; removed in Windows NT 3.5
1021RtlEthernetAddressToStringW@8
1022RtlEthernetStringToAddressA@12
1023RtlEthernetStringToAddressW@12
1024RtlExitUserProcess@4
1025RtlExitUserThread@4 ; Not sure, but we assume @4
1026RtlExpandEnvironmentStrings@24
1027RtlExpandEnvironmentStrings_U@16440RtlExpandEnvironmentStrings_U@16
1028RtlExpandHashTable@4
1029RtlExtendCorrelationVector@4
1030RtlExtendMemoryBlockLookaside@8
1031RtlExtendMemoryZone@8
1032RtlExtendedIntegerMultiply@12
1033RtlExtendedLargeIntegerDivide@16
1034RtlExtendedMagicDivide@20
1035RtlExtractBitMap@16
1036RtlExtendHeap@16
1037RtlFillMemory@12
1038RtlFillMemoryUlong@12441RtlFillMemoryUlong@12
1039RtlFillMemoryUlonglong@16
1040RtlFinalReleaseOutOfProcessMemoryStream@4
1041RtlFindAceByType@12
1042RtlFindActivationContextSectionGuid@20
1043RtlFindActivationContextSectionString@20
1044RtlFindCharInUnicodeString@16
1045RtlFindClearBits@12442RtlFindClearBits@12
1046RtlFindClearBitsAndSet@12443RtlFindClearBitsAndSet@12
1047RtlFindClearRuns@16
1048RtlFindClosestEncodableLength@12
1049RtlFindExportedRoutineByName@8
1050RtlFindLastBackwardRunClear@12
1051RtlFindLeastSignificantBit@8
1052RtlFindLongestRunClear@8444RtlFindLongestRunClear@8
1053RtlFindLongestRunSet@8445RtlFindLongestRunSet@8 ; removed in Windows 2000
1054RtlFindMessage@20446RtlFindMessage@20
1055RtlFindMostSignificantBit@8
1056RtlFindNextForwardRunClear@12
1057RtlFindRange@48
1058RtlFindSetBits@12447RtlFindSetBits@12
1059RtlFindSetBitsAndClear@12448RtlFindSetBitsAndClear@12
1060RtlFindUnicodeSubstring@12
1061RtlFirstEntrySList@4
1062RtlFirstFreeAce@8449RtlFirstFreeAce@8
1063RtlFlsAlloc@8
1064RtlFlsFree@4
1065RtlFlsGetValue@8
1066RtlFlsSetValue@8
1067RtlFlushHeaps@0
1068RtlFlushSecureMemoryCache@8
1069RtlFormatCurrentUserKeyPath@4
1070RtlFormatMessage@36450RtlFormatMessage@36
1071RtlFormatMessageEx@40
1072RtlFreeActivationContextStack@4
1073RtlFreeAnsiString@4451RtlFreeAnsiString@4
1074RtlFreeHandle@8
1075RtlFreeHeap@12
1076RtlFreeMemoryBlockLookaside@8
1077RtlFreeOemString@4452RtlFreeOemString@4
1078RtlFreeSid@4453RtlFreeSid@4
1079RtlFreeThreadActivationContextStack@0
1080RtlFreeUTF8String@4
1081RtlFreeUnicodeString@4454RtlFreeUnicodeString@4
1082RtlFreeUserStack@4455RtlGenerate8dot3Name@16 ; Windows NT 3.1 has ABI "RtlGenerate8dot3Name@12", Windows NT 3.5 and new has ABI "RtlGenerate8dot3Name@16"
1083RtlFreeUserThreadStack@8
1084RtlGUIDFromString@8
1085RtlGenerate8dot3Name@16
1086RtlGetAce@12456RtlGetAce@12
1087RtlGetActiveActivationContext@4
1088RtlGetActiveConsoleId@0
1089RtlGetAppContainerNamedObjectPath@16
1090RtlGetAppContainerParent@8
1091RtlGetAppContainerSidType@8
1092RtlGetCallersAddress@8457RtlGetCallersAddress@8
1093RtlGetCompressionWorkSpaceSize@12
1094RtlGetConsoleSessionForegroundProcessId@0
1095RtlGetControlSecurityDescriptor@12458RtlGetControlSecurityDescriptor@12
1096RtlGetCriticalSectionRecursionCount@4
1097RtlGetCurrentDirectory_U@8459RtlGetCurrentDirectory_U@8
1098RtlGetCurrentPeb@0
1099RtlGetCurrentProcessorNumber@0
1100RtlGetCurrentProcessorNumberEx@4
1101RtlGetCurrentServiceSessionId@0
1102RtlGetCurrentTransaction@0
1103RtlGetDaclSecurityDescriptor@16460RtlGetDaclSecurityDescriptor@16
1104RtlGetDeviceFamilyInfoEnum@12
1105RtlGetElementGenericTable@8461RtlGetElementGenericTable@8
1106RtlGetElementGenericTableAvl@8
1107RtlGetEnabledExtendedFeatures@8
1108RtlGetExePath@8
1109RtlGetExtendedContextLength2@16
1110RtlGetExtendedContextLength@8
1111RtlGetExtendedFeaturesMask@4
1112RtlGetFileMUIPath@28
1113RtlGetFirstRange@12
1114RtlGetFrame@0
1115RtlGetFullPathName_U@16462RtlGetFullPathName_U@16
1116RtlGetFullPathName_UEx@20
1117RtlGetFullPathName_UstrEx@32
1118RtlGetGroupSecurityDescriptor@12463RtlGetGroupSecurityDescriptor@12
1119RtlGetImageFileMachines@8464; RtlGetHeapUserValue@4 ; removed in Windows NT 3.5
1120RtlGetIntegerAtom@8
1121RtlGetInterruptTimePrecise@4
1122RtlGetLastNtStatus@0
1123RtlGetLastWin32Error@0
1124RtlGetLengthWithoutLastFullDosOrNtPathElement@12
1125RtlGetLengthWithoutTrailingPathSeperators@12
1126RtlGetLocaleFileMappingAddress@12
1127RtlGetLongestNtPathLength@0
1128RtlGetMultiTimePrecise@12
1129RtlGetNativeSystemInformation@16
1130RtlGetNextRange@12
1131RtlGetNextEntryHashTable@8
1132RtlGetNtGlobalFlags@0465RtlGetNtGlobalFlags@0
1133RtlGetNtProductType@4466RtlGetNtProductType@4
1134RtlGetNtSystemRoot@0
1135RtlGetNtVersionNumbers@12
1136RtlGetOwnerSecurityDescriptor@12467RtlGetOwnerSecurityDescriptor@12
1137RtlGetParentLocaleName@16
1138RtlGetPersistedStateLocation@28
1139RtlGetProcessHeaps@8
1140RtlGetProcessPreferredUILanguages@16
1141RtlGetProductInfo@20
1142RtlGetReturnAddressHijackTarget@0
1143RtlGetSaclSecurityDescriptor@16468RtlGetSaclSecurityDescriptor@16
1144RtlGetSearchPath@4
1145RtlGetSecurityDescriptorRMControl@8
1146RtlGetSessionProperties@8
1147RtlGetSetBootStatusData@24
1148RtlGetSuiteMask@0
1149RtlGetSystemBootStatus@16
1150RtlGetSystemBootStatusEx@12
1151RtlGetSystemGlobalData@12
1152RtlGetSystemPreferredUILanguages@20
1153RtlGetSystemTimeAndBias@12
1154RtlGetSystemTimePrecise@0
1155RtlGetThreadErrorMode@0
1156RtlGetThreadLangIdByIndex@16
1157RtlGetThreadPreferredUILanguages@16
1158RtlGetThreadWorkOnBehalfTicket@8
1159RtlGetTokenNamedObjectPath@12
1160RtlGetUILanguageInfo@20
1161RtlGetUnloadEventTrace@0
1162RtlGetUnloadEventTraceEx@12
1163RtlGetUserInfoHeap@20
1164RtlGetUserPreferredUILanguages@20
1165RtlGetVersion@4
1166RtlGuardCheckLongJumpTarget@12
1167RtlHashUnicodeString@16
1168RtlHeapTrkInitialize@4
1169RtlIdentifierAuthoritySid@4469RtlIdentifierAuthoritySid@4
1170RtlIdnToAscii@20
1171RtlIdnToNameprepUnicode@20
1172RtlIdnToUnicode@20
1173RtlImageDirectoryEntryToData@16
1174RtlImageNtHeader@4
1175RtlImageNtHeaderEx@20
1176RtlImageRvaToSection@12
1177RtlImageRvaToVa@16
1178RtlImpersonateLpcClient@8
1179RtlImpersonateSelf@4470RtlImpersonateSelf@4
1180RtlImpersonateSelfEx@12
1181RtlIncrementCorrelationVector@4
1182RtlInitAnsiString@8
1183RtlInitAnsiStringEx@8
1184RtlInitBarrier@12
1185RtlInitCodePageTable@8471RtlInitCodePageTable@8
1186RtlInitEnumerationHashTable@8
1187RtlInitMemoryStream@4
1188RtlInitNlsTables@16472RtlInitNlsTables@16
1189RtlInitOutOfProcessMemoryStream@4
1190RtlInitString@8
1191RtlInitStringEx@8
1192RtlInitStrongEnumerationHashTable@8
1193RtlInitUTF8String@8
1194RtlInitUTF8StringEx@8
1195RtlInitUnicodeString@8
1196RtlInitUnicodeStringEx@8
1197RtlInitWeakEnumerationHashTable@8
1198RtlInitializeAtomPackage@4
1199RtlInitializeBitMap@12473RtlInitializeBitMap@12
1200RtlInitializeConditionVariable@4
1201RtlInitializeContext@20474RtlInitializeContext@20
1202RtlInitializeCorrelationVector@12
1203RtlInitializeCriticalSection@4475RtlInitializeCriticalSection@4
1204RtlInitializeCriticalSectionAndSpinCount@8
1205RtlInitializeCriticalSectionEx@12
1206RtlInitializeExceptionChain@4
1207RtlInitializeExtendedContext2@20
1208RtlInitializeExtendedContext@12
1209RtlInitializeGenericTable@20476RtlInitializeGenericTable@20
1210RtlInitializeGenericTableAvl@20477; RtlInitializeProfile@4 ; removed in Windows NT 3.5
1211RtlInitializeHandleTable@12
1212RtlInitializeNtUserPfn@24
1213RtlInitializeRXact@12478RtlInitializeRXact@12
1214RtlInitializeResource@4479RtlInitializeResource@4
1215RtlInitializeSListHead@4
1216RtlInitializeSRWLock@4
1217RtlInitializeSid@12480RtlInitializeSid@12
1218RtlInitializeSidEx@0481; RtlInitializeStackTraceDataBase@12 ; removed in Windows NT 3.51, added back in Windows XP SP2 and removed again in Windows Server 2003
1219RtlInsertElementGenericTable@16482RtlInsertElementGenericTable@16
1220RtlInsertElementGenericTableAvl@16
1221RtlInsertElementGenericTableFull@24
1222RtlInsertElementGenericTableFullAvl@24
1223RtlInsertEntryHashTable@16
1224RtlInt64ToUnicodeString@16
1225RtlIntegerToChar@16483RtlIntegerToChar@16
1226RtlIntegerToUnicodeString@12
1227RtlInterlockedClearBitRun@12
1228RtlInterlockedCompareExchange64@20
1229RtlInterlockedFlushSList@4
1230RtlInterlockedPopEntrySList@4
1231RtlInterlockedPushEntrySList@8
1232RtlInterlockedPushListSListEx@16
1233RtlInvertRangeList@8
1234RtlInterlockedSetBitRun@12
1235RtlIoDecodeMemIoResource@16
1236RtlIoEncodeMemIoResource@40
1237RtlIpv4AddressToStringA@8
1238RtlIpv4AddressToStringExA@16
1239RtlIpv4AddressToStringExW@16
1240RtlIpv4AddressToStringW@8
1241RtlIpv4StringToAddressA@16
1242RtlIpv4StringToAddressExA@16
1243RtlIpv4StringToAddressExW@16
1244RtlIpv4StringToAddressW@16
1245RtlIpv6AddressToStringA@8
1246RtlIpv6AddressToStringExA@20
1247RtlIpv6AddressToStringExW@20
1248RtlIpv6AddressToStringW@8
1249RtlIpv6StringToAddressA@12
1250RtlIpv6StringToAddressExA@16
1251RtlIpv6StringToAddressExW@16
1252RtlIpv6StringToAddressW@12
1253RtlIsActivationContextActive@4
1254RtlIsApiSetImplemented@4
1255RtlIsCapabilitySid@4
1256RtlIsCloudFilesPlaceholder@8
1257RtlIsCriticalSectionLocked@4
1258RtlIsCriticalSectionLockedByThread@4
1259RtlIsCurrentProcess@4
1260RtlIsCurrentThread@4
1261RtlIsCurrentThreadAttachExempt@0
1262RtlIsDosDeviceName_U@4484RtlIsDosDeviceName_U@4
1263RtlIsElevatedRid@4
1264RtlIsEnclaveFeaturePresent@4
1265RtlIsGenericTableEmpty@4485RtlIsGenericTableEmpty@4
1266RtlIsGenericTableEmptyAvl@4
1267RtlIsMultiSessionSku@0
1268RtlIsMultiUsersInSessionSku@0
1269RtlIsNameInExpression@16
1270RtlIsNameInUnUpcasedExpression@16
1271RtlIsNameLegalDOS8Dot3@12
1272RtlIsNonEmptyDirectoryReparsePointAllowed@4
1273RtlIsNormalizedString@16
1274RtlIsPackageSid@4
1275RtlIsParentOfChildAppContainer@8
1276RtlIsPartialPlaceholder@8
1277RtlIsPartialPlaceholderFileHandle@8
1278RtlIsPartialPlaceholderFileInfo@12
1279RtlIsProcessorFeaturePresent@4
1280RtlIsRangeAvailable@40
1281RtlIsStateSeparationEnabled@0
1282RtlIsTextUnicode@12
1283RtlIsThreadWithinLoaderCallout@0
1284RtlIsUntrustedObject@12
1285RtlIsValidHandle@8
1286RtlIsValidIndexHandle@12
1287RtlIsValidLocaleName@8
1288RtlIsValidProcessTrustLabelSid@4
1289RtlIsZeroMemory@8
1290RtlKnownExceptionFilter@4
1291RtlLCIDToCultureName@8
1292RtlLargeIntegerAdd@16
1293RtlLargeIntegerArithmeticShift@12
1294RtlLargeIntegerDivide@20
1295RtlLargeIntegerNegate@8
1296RtlLargeIntegerShiftLeft@12
1297RtlLargeIntegerShiftRight@12
1298RtlLargeIntegerSubtract@16
1299RtlLargeIntegerToChar@16486RtlLargeIntegerToChar@16
1300RtlLcidToLocaleName@16
1301RtlLeaveCriticalSection@4487RtlLeaveCriticalSection@4
1302RtlLengthRequiredSid@4488RtlLengthRequiredSid@4
1303RtlLengthSecurityDescriptor@4489RtlLengthSecurityDescriptor@4
1304RtlLengthSid@4490RtlLengthSid@4
1305RtlLengthSidAsUnicodeString@8
1306RtlLoadString@32
1307RtlLocalTimeToSystemTime@8491RtlLocalTimeToSystemTime@8
1308RtlLocaleNameToLcid@12
1309RtlLocateExtendedFeature2@16
1310RtlLocateExtendedFeature@12
1311RtlLocateLegacyContext@8
1312RtlLockBootStatusData@4
1313RtlLockCurrentThread@0
1314RtlLockHeap@4492RtlLockHeap@4
1315RtlLockMemoryBlockLookaside@4493; RtlLogStackBackTrace@0 ; removed in Windows NT 3.51
1316RtlLockMemoryStreamRegion@24
1317RtlLockMemoryZone@4
1318RtlLockModuleSection@4
1319RtlLogStackBackTrace@0
1320RtlLookupAtomInAtomTable@12
1321RtlLookupElementGenericTable@8494RtlLookupElementGenericTable@8
1322RtlLookupElementGenericTableAvl@8495; RtlLookupSymbolByAddress@24 ; removed in Windows NT 3.51
1323RtlLookupElementGenericTableFull@16496; RtlLookupSymbolByName@16 ; removed in Windows NT 3.51
1324RtlLookupElementGenericTableFullAvl@16
1325RtlLookupEntryHashTable@12
1326RtlLookupFirstMatchingElementGenericTableAvl@12
1327RtlMakeSelfRelativeSD@12497RtlMakeSelfRelativeSD@12
1328RtlMapGenericMask@8498RtlMapGenericMask@8
1329RtlMapSecurityErrorToNtStatus@4
1330RtlMergeRangeLists@16
1331RtlMoveMemory@12
1332RtlMultiAppendUnicodeStringBuffer@12
1333RtlMultiByteToUnicodeN@20
1334RtlMultiByteToUnicodeSize@12499RtlMultiByteToUnicodeSize@12
1335RtlMultipleAllocateHeap@20
1336RtlMultipleFreeHeap@16
1337RtlNewInstanceSecurityObject@40500RtlNewInstanceSecurityObject@40
1338RtlNewSecurityGrantedAccess@24501RtlNewSecurityGrantedAccess@24
1339RtlNewSecurityObject@24502RtlNewSecurityObject@24
1340RtlNewSecurityObjectEx@32
1341RtlNewSecurityObjectWithMultipleInheritance@36
1342RtlNormalizeProcessParams@4503RtlNormalizeProcessParams@4
1343RtlNormalizeSecurityDescriptor@20
1344RtlNormalizeString@20
1345RtlNotifyFeatureUsage@4
1346RtlNtPathNameToDosPathName@16
1347RtlNtStatusToDosError@4
1348RtlNtStatusToDosErrorNoTeb@4
1349RtlNumberGenericTableElements@4504RtlNumberGenericTableElements@4
1350RtlNumberGenericTableElementsAvl@4
1351RtlNumberOfClearBits@4505RtlNumberOfClearBits@4
1352RtlNumberOfClearBitsInRange@12
1353RtlNumberOfSetBits@4506RtlNumberOfSetBits@4
1354RtlNumberOfSetBitsInRange@12
1355RtlNumberOfSetBitsUlongPtr@4
1356RtlOemStringToUnicodeSize@4507RtlOemStringToUnicodeSize@4
1357RtlOemStringToUnicodeString@12508RtlOemStringToUnicodeString@12
1358RtlOemToUnicodeN@20509RtlOemToUnicodeN@20
1359RtlOpenCurrentUser@8510RtlOpenCurrentUser@8
1360RtlOsDeploymentState@4
1361RtlOwnerAcesPresent@4
1362RtlPcToFileHeader@8511RtlPcToFileHeader@8
1363RtlPinAtomInAtomTable@8
1364RtlPopFrame@4
1365RtlPrefixString@12512RtlPrefixString@12
1366RtlPrefixUnicodeString@12513RtlPrefixUnicodeString@12
1367RtlProcessFlsData@4514; RtlQueryEnvironmentVariable@0 ; removed in Windows NT 3.5
1368RtlProtectHeap@8
1369RtlPublishWnfStateData@24
1370RtlPushFrame@4
1371RtlQueryActivationContextApplicationSettings@28
1372RtlQueryAllFeatureConfigurations@16
1373RtlQueryAtomInAtomTable@24
1374RtlQueryCriticalSectionOwner@4
1375RtlQueryDepthSList@4
1376RtlQueryDynamicTimeZoneInformation@4
1377RtlQueryElevationFlags@4
1378RtlQueryEnvironmentVariable@24
1379RtlQueryEnvironmentVariable_U@12515RtlQueryEnvironmentVariable_U@12
1380RtlQueryFeatureConfiguration@16
1381RtlQueryFeatureConfigurationChangeStamp@0
1382RtlQueryFeatureUsageNotificationSubscriptions@8
1383RtlQueryHeapInformation@20
1384RtlQueryImageMitigationPolicy@20
1385RtlQueryInformationAcl@16516RtlQueryInformationAcl@16
1386RtlQueryInformationActivationContext@28517; RtlQueryModuleInformation@24 ; removed in Windows NT 3.51
1387RtlQueryInformationActiveActivationContext@16518RtlQueryProcessBackTraceInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessBackTraceInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessBackTraceInformation@4"
1388RtlQueryInterfaceMemoryStream@12519RtlQueryProcessHeapInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessHeapInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessHeapInformation@4"
1389RtlQueryModuleInformation@12520RtlQueryProcessLockInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessLockInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessLockInformation@4"
1390RtlQueryPackageClaims@32
1391RtlQueryPackageIdentity@24
1392RtlQueryPackageIdentityEx@28
1393RtlQueryPerformanceCounter@4
1394RtlQueryPerformanceFrequency@4
1395RtlQueryPointerMapping@8
1396RtlQueryProcessBackTraceInformation@4
1397RtlQueryProcessDebugInformation@12
1398RtlQueryProcessHeapInformation@4
1399RtlQueryProcessLockInformation@4
1400RtlQueryProcessPlaceholderCompatibilityMode@0
1401RtlQueryPropertyStore@8
1402RtlQueryProtectedPolicy@8
1403RtlQueryRegistryValueWithFallback@28
1404RtlQueryRegistryValues@20521RtlQueryRegistryValues@20
1405RtlQueryRegistryValuesEx@20
1406RtlQueryResourcePolicy@16
1407RtlQuerySecurityObject@20522RtlQuerySecurityObject@20
1408RtlQueryTagHeap@20
1409RtlQueryThreadPlaceholderCompatibilityMode@0
1410RtlQueryThreadProfiling@8
1411RtlQueryTimeZoneInformation@4523RtlQueryTimeZoneInformation@4
1412RtlQueryTokenHostIdAsUlong64@8
1413RtlQueryUnbiasedInterruptTime@4
1414RtlQueryValidationRunlevel@4
1415RtlQueryWnfMetaNotification@20
1416RtlQueryWnfStateData@24
1417RtlQueryWnfStateDataWithExplicitScope@28
1418RtlQueueApcWow64Thread@20
1419RtlQueueWorkItem@12
1420RtlRaiseCustomSystemEventTrigger@4
1421RtlRaiseException@4524RtlRaiseException@4
1422RtlRaiseStatus@4525RtlRaiseStatus@4
1423RtlRandom@4526RtlRandom@4
1424RtlRandomEx@4
1425RtlRbInsertNodeEx@16
1426RtlRbRemoveNode@8
1427RtlReAllocateHeap@16
1428RtlReadMemoryStream@16
1429RtlReadOutOfProcessMemoryStream@16
1430RtlReadThreadProfilingData@12
1431RtlRealPredecessor@4527RtlRealPredecessor@4
1432RtlRealSuccessor@4528RtlRealSuccessor@4
1433RtlRegisterFeatureConfigurationChangeNotification@16
1434RtlRegisterForWnfMetaNotification@24
1435RtlRegisterSecureMemoryCacheCallback@4
1436RtlRegisterThreadWithCsrss@0
1437RtlRegisterWait@24
1438RtlReleaseActivationContext@4
1439RtlReleaseMemoryStream@4
1440RtlReleasePath@4
1441RtlReleasePebLock@0529RtlReleasePebLock@0
1442RtlReleasePrivilege@4
1443RtlReleaseRelativeName@4
1444RtlReleaseResource@4530RtlReleaseResource@4
1445RtlReleaseSRWLockExclusive@4
1446RtlReleaseSRWLockShared@4
1447RtlRemoteCall@28531RtlRemoteCall@28
1448RtlRemoveEntryHashTable@12
1449RtlRemovePointerMapping@8
1450RtlRemovePrivileges@12
1451RtlRemovePropertyStore@8
1452RtlRemoveVectoredContinueHandler@4
1453RtlRemoveVectoredExceptionHandler@4
1454RtlReplaceSidInSd@16
1455RtlReplaceSystemDirectoryInPath@16
1456RtlReportException@12
1457RtlReportExceptionEx@20
1458RtlReportSilentProcessExit@8
1459RtlReportSqmEscalation@24
1460RtlResetMemoryBlockLookaside@4
1461RtlResetMemoryZone@4
1462RtlResetNtUserPfn@0
1463RtlResetRtlTranslations@4532RtlResetRtlTranslations@4
1464RtlRestoreBootStatusDefaults@4
1465RtlRestoreContext@8
1466RtlRestoreLastWin32Error@4
1467RtlRestoreSystemBootStatusDefaults@0
1468RtlRestoreThreadPreferredUILanguages@4
1469RtlRetrieveNtUserPfn@12
1470RtlRevertMemoryStream@4
1471RtlRunDecodeUnicodeString@8533RtlRunDecodeUnicodeString@8
1472RtlRunEncodeUnicodeString@8534RtlRunEncodeUnicodeString@8
1473RtlRunOnceBeginInitialize@12
1474RtlRunOnceComplete@12
1475RtlRunOnceExecuteOnce@16
1476RtlRunOnceInitialize@4
1477RtlSecondsSince1970ToTime@8535RtlSecondsSince1970ToTime@8
1478RtlSecondsSince1980ToTime@8536RtlSecondsSince1980ToTime@8
1479RtlSeekMemoryStream@20
1480RtlSelfRelativeToAbsoluteSD2@8
1481RtlSelfRelativeToAbsoluteSD@44537RtlSelfRelativeToAbsoluteSD@44
1482RtlSendMsgToSm@8
1483RtlSetAllBits@4538RtlSetAllBits@4
1484RtlSetAttributesSecurityDescriptor@12
1485RtlSetBit@8
1486RtlSetBits@12539RtlSetBits@12
1487RtlSetControlSecurityDescriptor@12
1488RtlSetCriticalSectionSpinCount@8
1489RtlSetCurrentDirectory_U@4540RtlSetCurrentDirectory_U@4
1490RtlSetCurrentEnvironment@8541RtlSetCurrentEnvironment@8
1491RtlSetCurrentTransaction@4
1492RtlSetDaclSecurityDescriptor@16
1493RtlSetDynamicTimeZoneInformation@4
1494RtlSetEnvironmentStrings@8
1495RtlSetEnvironmentVar@20
1496RtlSetEnvironmentVariable@12542RtlSetEnvironmentVariable@12
1497RtlSetExtendedFeaturesMask@12
1498RtlSetFeatureConfigurations@16
1499RtlSetGroupSecurityDescriptor@12543RtlSetGroupSecurityDescriptor@12
1500RtlSetHeapInformation@16544; RtlSetHeapUserValue@8 ; removed in Windows NT 3.5
1501RtlSetImageMitigationPolicy@20
1502RtlSetInformationAcl@16545RtlSetInformationAcl@16
1503RtlSetIoCompletionCallback@12
1504RtlSetLastWin32Error@4
1505RtlSetLastWin32ErrorAndNtStatusFromNtStatus@4
1506RtlSetMemoryStreamSize@12
1507RtlSetOwnerSecurityDescriptor@12546RtlSetOwnerSecurityDescriptor@12
1508RtlSetPortableOperatingSystem@4
1509RtlSetProcessDebugInformation@12
1510RtlSetProcessIsCritical@0
1511RtlSetProcessPlaceholderCompatibilityMode@4
1512RtlSetProcessPreferredUILanguages@12
1513RtlSetProtectedPolicy@12
1514RtlSetProxiedProcessId@4
1515RtlSetSaclSecurityDescriptor@16547RtlSetSaclSecurityDescriptor@16
1516RtlSetSearchPathMode@4
1517RtlSetSecurityDescriptorRMControl@8
1518RtlSetSecurityObject@20548RtlSetSecurityObject@20
1519RtlSetSecurityObjectEx@24
1520RtlSetSystemBootStatus@16
1521RtlSetSystemBootStatusEx@12
1522RtlSetThreadErrorMode@8
1523RtlSetThreadIsCritical@0
1524RtlSetThreadPlaceholderCompatibilityMode@4
1525RtlSetThreadPoolStartFunc@8
1526RtlSetThreadPreferredUILanguages2@16
1527RtlSetThreadPreferredUILanguages@12
1528RtlSetThreadSubProcessTag@4
1529RtlSetThreadWorkOnBehalfTicket@4
1530RtlSetTimeZoneInformation@4549RtlSetTimeZoneInformation@4
1531RtlSetTimer@28550; RtlSnapShotHeap@16 ; removed in Windows NT 3.51
1532RtlSetUnhandledExceptionFilter@4
1533RtlSetUserCallbackExceptionFilter@4
1534RtlSetUserFlagsHeap@20
1535RtlSetUserValueHeap@16
1536RtlShutdownLpcServer@4
1537RtlSidDominates@12
1538RtlSidDominatesForTrust@12
1539RtlSidEqualLevel@12
1540RtlSidHashInitialize@12
1541RtlSidHashLookup@8
1542RtlSidIsHigherLevel@12
1543RtlSizeHeap@12
1544RtlSleepConditionVariableCS@12
1545RtlSleepConditionVariableSRW@16
1546RtlSplay@4551RtlSplay@4
552; RtlStartProfile@0 ; removed in Windows NT 3.5
1547RtlStartRXact@4553RtlStartRXact@4
1548RtlStatMemoryStream@12554; RtlStopProfile@0 ; removed in Windows NT 3.5
1549RtlStringFromGUID@8
1550RtlStringFromGUIDEx@12
1551RtlStronglyEnumerateEntryHashTable@8
1552RtlSubAuthorityCountSid@4555RtlSubAuthorityCountSid@4
1553RtlSubAuthoritySid@8556RtlSubAuthoritySid@8
1554RtlSubscribeForFeatureUsageNotification@8
1555RtlSubscribeWnfStateChangeNotification@36
1556RtlSubtreePredecessor@4557RtlSubtreePredecessor@4
1557RtlSubtreeSuccessor@4558RtlSubtreeSuccessor@4
1558RtlSwitchedVVI@16
1559RtlSystemTimeToLocalTime@8559RtlSystemTimeToLocalTime@8
1560RtlTestAndPublishWnfStateData@28
1561RtlTestBit@8
1562RtlTestProtectedAccess@8
1563RtlTimeFieldsToTime@8560RtlTimeFieldsToTime@8
1564RtlTimeToElapsedTimeFields@8561RtlTimeToElapsedTimeFields@8
1565RtlTimeToSecondsSince1970@8562RtlTimeToSecondsSince1970@8
1566RtlTimeToSecondsSince1980@8563RtlTimeToSecondsSince1980@8
1567RtlTimeToTimeFields@8564RtlTimeToTimeFields@8
1568RtlTraceDatabaseAdd@16
1569RtlTraceDatabaseCreate@20
1570RtlTraceDatabaseDestroy@4
1571RtlTraceDatabaseEnumerate@12
1572RtlTraceDatabaseFind@16
1573RtlTraceDatabaseLock@4
1574RtlTraceDatabaseUnlock@4
1575RtlTraceDatabaseValidate@4
1576RtlTryAcquirePebLock@0
1577RtlTryAcquireSRWLockExclusive@4
1578RtlTryAcquireSRWLockShared@4
1579RtlTryConvertSRWLockSharedToExclusiveOrRelease@4
1580RtlTryEnterCriticalSection@4
1581RtlUTF8StringToUnicodeString@12
1582RtlUTF8ToUnicodeN@20
1583RtlUdiv128@28
1584RtlUnhandledExceptionFilter2@8
1585RtlUnhandledExceptionFilter@4
1586RtlUnicodeStringToAnsiSize@4
1587RtlUnicodeStringToAnsiString@12
1588RtlUnicodeStringToCountedOemString@12565RtlUnicodeStringToCountedOemString@12
1589RtlUnicodeStringToInteger@12
1590RtlUnicodeStringToOemSize@4566RtlUnicodeStringToOemSize@4
1591RtlUnicodeStringToOemString@12567RtlUnicodeStringToOemString@12
1592RtlUnicodeStringToUTF8String@12
1593RtlUnicodeToCustomCPN@24568RtlUnicodeToCustomCPN@24
1594RtlUnicodeToMultiByteN@20
1595RtlUnicodeToMultiByteSize@12569RtlUnicodeToMultiByteSize@12
1596RtlUnicodeToOemN@20570RtlUnicodeToOemN@20
1597RtlUnicodeToUTF8N@20
1598RtlUniform@4571RtlUniform@4
1599RtlUnlockBootStatusData@4
1600RtlUnlockCurrentThread@0
1601RtlUnlockHeap@4572RtlUnlockHeap@4
1602RtlUnlockMemoryBlockLookaside@4
1603RtlUnlockMemoryStreamRegion@24
1604RtlUnlockMemoryZone@4
1605RtlUnlockModuleSection@4
1606RtlUnregisterFeatureConfigurationChangeNotification@4
1607RtlUnsubscribeFromFeatureUsageNotifications@8
1608RtlUnsubscribeWnfNotificationWaitForCompletion@4
1609RtlUnsubscribeWnfNotificationWithCompletionCallback@12
1610RtlUnsubscribeWnfStateChangeNotification@4
1611RtlUnwind@16
1612RtlUpcaseUnicodeChar@4573RtlUpcaseUnicodeChar@4
1613RtlUpcaseUnicodeString@12574RtlUpcaseUnicodeString@12
1614RtlUpcaseUnicodeStringToAnsiString@12575RtlUpcaseUnicodeStringToAnsiString@12
...@@ -1617,712 +578,2338 @@ RtlUpcaseUnicodeStringToOemString@12...@@ -1617,712 +578,2338 @@ RtlUpcaseUnicodeStringToOemString@12
1617RtlUpcaseUnicodeToCustomCPN@24578RtlUpcaseUnicodeToCustomCPN@24
1618RtlUpcaseUnicodeToMultiByteN@20579RtlUpcaseUnicodeToMultiByteN@20
1619RtlUpcaseUnicodeToOemN@20580RtlUpcaseUnicodeToOemN@20
1620RtlUpdateClonedCriticalSection@4
1621RtlUpdateClonedSRWLock@8
1622RtlUpdateTimer@16
1623RtlUpperChar@4581RtlUpperChar@4
1624RtlUpperString@8582RtlUpperString@8
1625RtlUsageHeap@12
1626; Not sure.
1627RtlUserThreadStart
1628RtlValidAcl@4583RtlValidAcl@4
1629RtlValidProcessProtection@4
1630RtlValidRelativeSecurityDescriptor@12
1631RtlValidSecurityDescriptor@4584RtlValidSecurityDescriptor@4
1632RtlValidSid@4585RtlValidSid@4
1633RtlValidateCorrelationVector@4
1634RtlValidateHeap@12
1635RtlValidateProcessHeaps@0
1636RtlValidateUnicodeString@8
1637RtlVerifyVersionInfo@16
1638RtlWaitForWnfMetaNotification@24
1639RtlWaitOnAddress@16
1640RtlWakeAddressAll@4
1641RtlWakeAddressAllNoFence@4
1642RtlWakeAddressSingle@4
1643RtlWakeAddressSingleNoFence@4
1644RtlWakeAllConditionVariable@4
1645RtlWakeConditionVariable@4
1646RtlWalkFrameChain@12
1647RtlWalkHeap@8
1648RtlWeaklyEnumerateEntryHashTable@8
1649RtlWerpReportException@16
1650RtlWnfCompareChangeStamp@8
1651RtlWnfDllUnloadCallback@4
1652RtlWow64CallFunction64@28
1653RtlWow64EnableFsRedirection@4
1654RtlWow64EnableFsRedirectionEx@8
1655RtlWow64GetCurrentMachine@0
1656RtlWow64GetEquivalentMachineCHPE@4
1657RtlWow64GetProcessMachines@12
1658RtlWow64GetSharedInfoProcess@12
1659RtlWow64IsWowGuestMachineSupported@8
1660RtlWow64LogMessageInEventLogger@12
1661RtlWriteMemoryStream@16
1662RtlWriteRegistryValue@24586RtlWriteRegistryValue@24
1663RtlZeroHeap@8587; RtlpInitializeRtl@12 ; removed in Windows NT 4.0
1664RtlZeroMemory@8
1665RtlZombifyActivationContext@4
1666RtlpApplyLengthFunction@16
1667RtlpCheckDynamicTimeZoneInformation@8
1668RtlpCleanupRegistryKeys@0
1669RtlpConvertAbsoluteToRelativeSecurityAttribute@12
1670RtlpConvertCultureNamesToLCIDs@8
1671RtlpConvertLCIDsToCultureNames@8
1672RtlpConvertRelativeToAbsoluteSecurityAttribute@16
1673RtlpCreateProcessRegistryInfo@4
1674RtlpEnsureBufferSize@12
1675RtlpFreezeTimeBias@0
1676RtlpGetDeviceFamilyInfoEnum@12
1677RtlpGetLCIDFromLangInfoNode@12
1678RtlpGetNameFromLangInfoNode@12
1679RtlpGetSystemDefaultUILanguage@4 ; Check!!! gendef says @8
1680RtlpGetUserOrMachineUILanguage4NLS@12
1681RtlpInitializeLangRegistryInfo@4
1682RtlpIsQualifiedLanguage@12
1683RtlpLoadMachineUIByPolicy@12
1684RtlpLoadUserUIByPolicy@12
1685RtlpMergeSecurityAttributeInformation@16
1686RtlpMuiFreeLangRegistryInfo@4
1687RtlpMuiRegCreateRegistryInfo@0
1688RtlpMuiRegFreeRegistryInfo@8
1689RtlpMuiRegLoadRegistryInfo@8
1690RtlpNotOwnerCriticalSection@0 ; Check!!! gebdef says @4
1691RtlpNtCreateKey@24588RtlpNtCreateKey@24
1692RtlpNtEnumerateSubKey@16589RtlpNtEnumerateSubKey@16
1693RtlpNtMakeTemporaryKey@4590RtlpNtMakeTemporaryKey@4
1694RtlpNtOpenKey@16591RtlpNtOpenKey@16
1695RtlpNtQueryValueKey@20592RtlpNtQueryValueKey@20
1696RtlpNtSetValueKey@16593RtlpNtSetValueKey@16
1697RtlpQueryDefaultUILanguage@8
1698; Not sure.
1699RtlpQueryProcessDebugInformationRemote
1700RtlpRefreshCachedUILanguage@8
1701RtlpSetInstallLanguage@8
1702RtlpSetPreferredUILanguages@12
1703RtlpSetUserPreferredUILanguages@12
1704RtlpTimeFieldsToTime@12
1705RtlpTimeToTimeFields@12
1706RtlpUnWaitCriticalSection@4594RtlpUnWaitCriticalSection@4
1707RtlpVerifyAndCommitUILanguageSettings@4
1708RtlpWaitForCriticalSection@4595RtlpWaitForCriticalSection@4
1709RtlxAnsiStringToUnicodeSize@4
1710RtlxOemStringToUnicodeSize@4
1711RtlxUnicodeStringToAnsiSize@4
1712RtlxUnicodeStringToOemSize@4
1713SbExecuteProcedure@20
1714SbSelectProcedure@16
1715ShipAssert@8
1716ShipAssertGetBufferInfo@8
1717ShipAssertMsgA@12
1718ShipAssertMsgW@12
1719TpAllocAlpcCompletion@20
1720TpAllocAlpcCompletionEx@20
1721TpAllocCleanupGroup@4
1722TpAllocIoCompletion@20
1723TpAllocJobNotification@20
1724TpAllocPool@8
1725TpAllocTimer@16
1726TpAllocWait@16
1727TpAllocWork@16
1728TpAlpcRegisterCompletionList@4
1729TpAlpcUnregisterCompletionList@4
1730TpCallbackDetectedUnrecoverableError@4
1731TpCallbackIndependent@4
1732TpCallbackLeaveCriticalSectionOnCompletion@8
1733TpCallbackMayRunLong@4
1734TpCallbackReleaseMutexOnCompletion@8
1735TpCallbackReleaseSemaphoreOnCompletion@12
1736TpCallbackSendAlpcMessageOnCompletion@16
1737TpCallbackSendPendingAlpcMessage@4
1738TpCallbackSetEventOnCompletion@8
1739TpCallbackUnloadDllOnCompletion@8
1740TpCancelAsyncIoOperation@4
1741TpCaptureCaller@4
1742TpCheckTerminateWorker@4
1743TpDbgDumpHeapUsage@12
1744TpDbgGetFreeInfo@8
1745TpDbgSetLogRoutine@4
1746TpDisablePoolCallbackChecks@4
1747TpDisassociateCallback@4
1748TpIsTimerSet@4
1749TpPoolFreeUnusedNodes@4
1750TpPostWork@4
1751TpQueryPoolStackInformation@8
1752TpReleaseAlpcCompletion@4
1753TpReleaseCleanupGroup@4
1754TpReleaseCleanupGroupMembers@12
1755TpReleaseIoCompletion@4
1756TpReleaseJobNotification@4
1757TpReleasePool@4
1758TpReleaseTimer@4
1759TpReleaseWait@4
1760TpReleaseWork@4
1761TpSetDefaultPoolMaxThreads@4
1762TpSetDefaultPoolStackInformation@4
1763TpSetPoolMaxThreads@8
1764TpSetPoolMaxThreadsSoftLimit@8
1765TpSetPoolMinThreads@8
1766TpSetPoolStackInformation@8
1767TpSetPoolThreadBasePriority@8
1768TpSetPoolThreadCpuSets@12
1769TpSetPoolWorkerThreadIdleTimeout@12
1770TpSetTimer@16
1771TpSetTimerEx@16
1772TpSetWait@12
1773TpSetWaitEx@16
1774TpSimpleTryPost@12
1775TpStartAsyncIoOperation@4
1776TpTimerOutstandingCallbackCount@4
1777TpTrimPools@0
1778TpWaitForAlpcCompletion@4
1779TpWaitForIoCompletion@8
1780TpWaitForJobNotification@4
1781TpWaitForTimer@8
1782TpWaitForWait@8
1783TpWaitForWork@8
1784VerSetConditionMask@16
1785WerCheckEventEscalation@8
1786WerReportExceptionWorker@4
1787WerReportSQMEvent@12
1788WerReportWatsonEvent@16
1789WerReportSQMEvent@16
1790WinSqmAddToAverageDWORD@12
1791WinSqmAddToStream@16
1792WinSqmAddToStreamEx@20
1793WinSqmCheckEscalationAddToStreamEx@20
1794WinSqmCheckEscalationSetDWORD64@20
1795WinSqmCheckEscalationSetDWORD@16
1796WinSqmCheckEscalationSetString@16
1797WinSqmCommonDatapointDelete@4
1798WinSqmCommonDatapointSetDWORD64@16
1799WinSqmCommonDatapointSetDWORD@12
1800WinSqmCommonDatapointSetStreamEx@20
1801WinSqmCommonDatapointSetString@12
1802WinSqmEndSession@4
1803WinSqmEventEnabled@8
1804WinSqmEventWrite@12
1805WinSqmGetEscalationRuleStatus@8
1806WinSqmGetInstrumentationProperty@16
1807WinSqmIncrementDWORD@12
1808WinSqmIsOptedIn@0
1809WinSqmIsOptedInEx@4
1810WinSqmIsSessionDisabled@4
1811WinSqmSetDWORD64@16
1812WinSqmSetDWORD@12
1813WinSqmSetEscalationInfo@16
1814WinSqmSetIfMaxDWORD@12
1815WinSqmSetIfMinDWORD@12
1816WinSqmSetString@12
1817WinSqmStartSession@12
1818WinSqmStartSessionForPartner@16
1819WinSqmStartSqmOptinListener@0
1820ZwAcceptConnectPort@24596ZwAcceptConnectPort@24
1821ZwAccessCheck@32597ZwAccessCheck@32
1822ZwAccessCheckAndAuditAlarm@44598ZwAccessCheckAndAuditAlarm@44
1823ZwAccessCheckByType@44
1824ZwAccessCheckByTypeAndAuditAlarm@64
1825ZwAccessCheckByTypeResultList@44
1826ZwAccessCheckByTypeResultListAndAuditAlarm@64
1827ZwAccessCheckByTypeResultListAndAuditAlarmByHandle@68
1828ZwAcquireCrossVmMutant@8
1829ZwAcquireCMFViewOwnership@12
1830ZwAcquireProcessActivityReference@12
1831ZwAddAtom@12
1832ZwAddAtomEx@16
1833ZwAddBootEntry@8
1834ZwAddDriverEntry@8
1835ZwAdjustGroupsToken@24599ZwAdjustGroupsToken@24
1836ZwAdjustPrivilegesToken@24600ZwAdjustPrivilegesToken@24
1837ZwAdjustTokenClaimsAndDeviceGroups@64
1838ZwAlertResumeThread@8601ZwAlertResumeThread@8
1839ZwAlertThread@4602ZwAlertThread@4
1840ZwAlertThreadByThreadId@4
1841ZwAllocateLocallyUniqueId@4603ZwAllocateLocallyUniqueId@4
1842ZwAllocateReserveObject@12
1843ZwAllocateUserPhysicalPages@12
1844ZwAllocateUserPhysicalPagesEx@20
1845ZwAllocateUuids@16
1846ZwAllocateVirtualMemory@24604ZwAllocateVirtualMemory@24
1847ZwAllocateVirtualMemoryEx@28
1848ZwAlpcAcceptConnectPort@36
1849ZwAlpcCancelMessage@12
1850ZwAlpcConnectPort@44
1851ZwAlpcConnectPortEx@44
1852ZwAlpcCreatePort@12
1853ZwAlpcCreatePortSection@24
1854ZwAlpcCreateResourceReserve@16
1855ZwAlpcCreateSectionView@12
1856ZwAlpcCreateSecurityContext@12
1857ZwAlpcDeletePortSection@12
1858ZwAlpcDeleteResourceReserve@12
1859ZwAlpcDeleteSectionView@12
1860ZwAlpcDeleteSecurityContext@12
1861ZwAlpcDisconnectPort@8
1862ZwAlpcImpersonateClientContainerOfPort@12
1863ZwAlpcImpersonateClientOfPort@12
1864ZwAlpcOpenSenderProcess@24
1865ZwAlpcOpenSenderThread@24
1866ZwAlpcQueryInformation@20
1867ZwAlpcQueryInformationMessage@24
1868ZwAlpcRevokeSecurityContext@12
1869ZwAlpcSendWaitReceivePort@32
1870ZwAlpcSetInformation@16
1871ZwApphelpCacheControl@8
1872ZwAreMappedFilesTheSame@8
1873ZwAssignProcessToJobObject@8
1874ZwAssociateWaitCompletionPacket@32
1875ZwCallEnclave@16
1876ZwCallbackReturn@12
1877ZwCancelDeviceWakeupRequest@4
1878ZwCancelIoFile@8605ZwCancelIoFile@8
1879ZwCancelIoFileEx@12
1880ZwCancelSynchronousIoFile@12
1881ZwCancelTimer2@8
1882ZwCancelTimer@8606ZwCancelTimer@8
1883ZwCancelWaitCompletionPacket@8
1884ZwChangeProcessState@24
1885ZwChangeThreadState@24
1886ZwClearEvent@4
1887ZwClose@4607ZwClose@4
1888ZwCloseObjectAuditAlarm@12608ZwCloseObjectAuditAlarm@12
1889ZwCommitComplete@8
1890ZwCommitEnlistment@8
1891ZwCommitRegistryTransaction@8
1892ZwCommitTransaction@8
1893ZwCompactKeys@8
1894ZwCompareObjects@8
1895ZwCompareSigningLevels@8
1896ZwCompareTokens@12
1897ZwCompleteConnectPort@4609ZwCompleteConnectPort@4
1898ZwCompressKey@4
1899ZwConnectPort@32610ZwConnectPort@32
1900ZwContinue@8611ZwContinue@8
1901ZwContinueEx@8
1902ZwConvertBetweenAuxiliaryCounterAndPerformanceCounter@16
1903ZwCreateCrossVmEvent@24
1904ZwCreateCrossVmMutant@24
1905ZwCreateDebugObject@16
1906ZwCreateDirectoryObject@12612ZwCreateDirectoryObject@12
1907ZwCreateDirectoryObjectEx@20
1908ZwCreateEnclave@36
1909ZwCreateEnlistment@32
1910ZwCreateEvent@20613ZwCreateEvent@20
1911ZwCreateEventPair@12614ZwCreateEventPair@12
1912ZwCreateFile@44615ZwCreateFile@44
1913ZwCreateIRTimer@12
1914ZwCreateIoCompletion@16
1915ZwCreateIoRing@20
1916ZwCreateJobObject@12
1917ZwCreateJobSet@12
1918ZwCreateKey@28616ZwCreateKey@28
1919ZwCreateKeyTransacted@32
1920ZwCreateKeyedEvent@16
1921ZwCreateLowBoxToken@36
1922ZwCreateMailslotFile@32617ZwCreateMailslotFile@32
1923ZwCreateMutant@16618ZwCreateMutant@16
1924ZwCreateNamedPipeFile@56619ZwCreateNamedPipeFile@56
1925ZwCreatePagingFile@16620ZwCreatePagingFile@16
1926ZwCreatePartition@16
1927ZwCreatePort@20621ZwCreatePort@20
1928ZwCreatePrivateNamespace@16
1929ZwCreateProcess@32622ZwCreateProcess@32
1930ZwCreateProcessEx@36623ZwCreateProfile@36 ; Windows NT 3.1-3.5 has ABI "ZwCreateProfile@28", Windows NT 3.51 and new has ABI "ZwCreateProfile@36"
1931ZwCreateProcessStateChange@20
1932ZwCreateProfile@36
1933ZwCreateProfileEx@40
1934ZwCreateRegistryTransaction@16
1935ZwCreateResourceManager@28
1936ZwCreateSection@28624ZwCreateSection@28
1937ZwCreateSectionEx@36
1938ZwCreateSemaphore@20625ZwCreateSemaphore@20
1939ZwCreateSymbolicLinkObject@16626ZwCreateSymbolicLinkObject@16
1940ZwCreateThread@32627ZwCreateThread@32
1941ZwCreateThreadEx@44628ZwCreateTimer@16 ; Windows NT 3.1-3.51 has ABI "ZwCreateTimer@12", Windows NT 4.0 and new has ABI "ZwCreateTimer@16"
1942ZwCreateThreadStateChange@20
1943ZwCreateTimer2@20
1944ZwCreateTimer@16
1945ZwCreateToken@52629ZwCreateToken@52
1946ZwCreateTokenEx@68
1947ZwCreateTransaction@40
1948ZwCreateTransactionManager@24
1949ZwCreateUserProcess@44
1950ZwCreateWaitCompletionPacket@12
1951ZwCreateWaitablePort@20
1952ZwCreateWnfStateName@28
1953ZwCreateWorkerFactory@40
1954ZwDebugActiveProcess@8
1955ZwDebugContinue@12
1956ZwDelayExecution@8630ZwDelayExecution@8
1957ZwDeleteAtom@4
1958ZwDeleteBootEntry@4
1959ZwDeleteDriverEntry@4
1960ZwDeleteFile@4
1961ZwDeleteKey@4631ZwDeleteKey@4
1962ZwDeleteObjectAuditAlarm@12
1963ZwDeletePrivateNamespace@4
1964ZwDeleteValueKey@8632ZwDeleteValueKey@8
1965ZwDeleteWnfStateData@8
1966ZwDeleteWnfStateName@4
1967ZwDeviceIoControlFile@40633ZwDeviceIoControlFile@40
1968ZwDirectGraphicsCall@20
1969ZwDisableLastKnownGood@0
1970ZwDisplayString@4634ZwDisplayString@4
1971ZwDrawText@4
1972ZwDuplicateObject@28635ZwDuplicateObject@28
1973ZwDuplicateToken@24636ZwDuplicateToken@24
1974ZwEnableLastKnownGood@0
1975ZwEnumerateBootEntries@8
1976ZwEnumerateDriverEntries@8
1977ZwEnumerateKey@24637ZwEnumerateKey@24
1978ZwEnumerateSystemEnvironmentValuesEx@12
1979ZwEnumerateTransactionObject@20
1980ZwEnumerateValueKey@24638ZwEnumerateValueKey@24
1981ZwExtendSection@8639ZwExtendSection@8
1982ZwFilterBootOption@20
1983ZwFilterToken@24
1984ZwFilterTokenEx@56
1985ZwFindAtom@12
1986ZwFlushBuffersFile@8640ZwFlushBuffersFile@8
1987ZwFlushBuffersFileEx@20
1988ZwFlushInstallUILanguage@8
1989ZwFlushInstructionCache@12641ZwFlushInstructionCache@12
1990ZwFlushKey@4642ZwFlushKey@4
1991ZwFlushProcessWriteBuffers@0
1992ZwFlushVirtualMemory@16643ZwFlushVirtualMemory@16
1993ZwFlushWriteBuffer@0644ZwFlushWriteBuffer@0
1994ZwFreeUserPhysicalPages@12
1995ZwFreeVirtualMemory@16645ZwFreeVirtualMemory@16
1996ZwFreezeRegistry@4
1997ZwFreezeTransactions@8
1998ZwFsControlFile@40646ZwFsControlFile@40
1999ZwGetCachedSigningLevel@24
2000ZwGetCompleteWnfStateSubscription@24
2001ZwGetContextThread@8647ZwGetContextThread@8
2002ZwGetCurrentProcessorNumber@0648ZwGetTickCount@0 ; removed in Windows XP
2003ZwGetCurrentProcessorNumberEx@4
2004ZwGetDevicePowerState@8
2005ZwGetMUIRegistryInfo@12
2006ZwGetNextProcess@20
2007ZwGetNextThread@24
2008ZwGetNlsSectionPtr@20
2009ZwGetNotificationResourceManager@28
2010ZwGetPlugPlayEvent@16
2011ZwGetTickCount@0
2012ZwGetWriteWatch@28
2013ZwImpersonateAnonymousToken@4
2014ZwImpersonateClientOfPort@8649ZwImpersonateClientOfPort@8
2015ZwImpersonateThread@12650ZwImpersonateThread@12
2016ZwInitializeEnclave@20
2017ZwInitializeNlsFiles@16
2018ZwInitializeRegistry@4651ZwInitializeRegistry@4
2019ZwInitiatePowerAction@16652; ZwInitializeVDM@0 ; removed in Windows NT 3.5
2020ZwIsProcessInJob@8
2021ZwIsSystemResumeAutomatic@0
2022ZwIsUILanguageComitted@0
2023ZwListenPort@8653ZwListenPort@8
2024ZwLoadDriver@4654ZwLoadDriver@4
2025ZwLoadEnclaveData@36
2026ZwLoadKey2@12
2027ZwLoadKey3@32
2028ZwLoadKey@8655ZwLoadKey@8
2029ZwLoadKeyEx@32
2030ZwLockFile@40656ZwLockFile@40
2031ZwLockProductActivationKeys@8
2032ZwLockRegistryKey@4
2033ZwLockVirtualMemory@16657ZwLockVirtualMemory@16
2034ZwMakePermanentObject@4
2035ZwMakeTemporaryObject@4658ZwMakeTemporaryObject@4
2036ZwManageHotPatch@16
2037ZwManagePartition@20
2038ZwMapCMFModule@24
2039ZwMapUserPhysicalPages@12
2040ZwMapUserPhysicalPagesScatter@12
2041ZwMapViewOfSection@40659ZwMapViewOfSection@40
2042ZwMapViewOfSectionEx@36
2043ZwModifyBootEntry@4
2044ZwModifyDriverEntry@4
2045ZwNotifyChangeDirectoryFile@36660ZwNotifyChangeDirectoryFile@36
2046ZwNotifyChangeDirectoryFileEx@40
2047ZwNotifyChangeKey@40661ZwNotifyChangeKey@40
2048ZwNotifyChangeMultipleKeys@48
2049ZwNotifyChangeSession@32
2050ZwOpenDirectoryObject@12662ZwOpenDirectoryObject@12
2051ZwOpenEnlistment@20
2052ZwOpenEvent@12663ZwOpenEvent@12
2053ZwOpenEventPair@12664ZwOpenEventPair@12
2054ZwOpenFile@24665ZwOpenFile@24
2055ZwOpenIoCompletion@12
2056ZwOpenJobObject@12
2057ZwOpenKey@12666ZwOpenKey@12
2058ZwOpenKeyEx@16
2059ZwOpenKeyTransacted@16
2060ZwOpenKeyTransactedEx@20
2061ZwOpenKeyedEvent@12
2062ZwOpenMutant@12667ZwOpenMutant@12
2063ZwOpenObjectAuditAlarm@48668ZwOpenObjectAuditAlarm@48
2064ZwOpenPartition@12
2065ZwOpenPrivateNamespace@16
2066ZwOpenProcess@16669ZwOpenProcess@16
2067ZwOpenProcessToken@12670ZwOpenProcessToken@12
2068ZwOpenProcessTokenEx@16
2069ZwOpenRegistryTransaction@12
2070ZwOpenResourceManager@20
2071ZwOpenSection@12671ZwOpenSection@12
2072ZwOpenSemaphore@12672ZwOpenSemaphore@12
2073ZwOpenSession@12
2074ZwOpenSymbolicLinkObject@12673ZwOpenSymbolicLinkObject@12
2075ZwOpenThread@16674ZwOpenThread@16
2076ZwOpenThreadToken@16675ZwOpenThreadToken@16
2077ZwOpenThreadTokenEx@20
2078ZwOpenTimer@12676ZwOpenTimer@12
2079ZwOpenTransaction@20
2080ZwOpenTransactionManager@24
2081ZwPlugPlayControl@12
2082ZwPowerInformation@20
2083ZwPrePrepareComplete@8
2084ZwPrePrepareEnlistment@8
2085ZwPrepareComplete@8
2086ZwPrepareEnlistment@8
2087ZwPrivilegeCheck@12677ZwPrivilegeCheck@12
2088ZwPrivilegeObjectAuditAlarm@24678ZwPrivilegeObjectAuditAlarm@24
2089ZwPrivilegedServiceAuditAlarm@20679ZwPrivilegedServiceAuditAlarm@20
2090ZwPropagationComplete@16
2091ZwPropagationFailed@12
2092ZwProtectVirtualMemory@20680ZwProtectVirtualMemory@20
2093ZwPssCaptureVaSpaceBulk@20
2094ZwPulseEvent@8681ZwPulseEvent@8
2095ZwQueryAttributesFile@8
2096ZwQueryAuxiliaryCounterFrequency@4
2097ZwQueryBootEntryOrder@8
2098ZwQueryBootOptions@8
2099ZwQueryDebugFilterState@8
2100ZwQueryDefaultLocale@8682ZwQueryDefaultLocale@8
2101ZwQueryDefaultUILanguage@4
2102ZwQueryDirectoryFile@44683ZwQueryDirectoryFile@44
2103ZwQueryDirectoryFileEx@40
2104ZwQueryDirectoryObject@28684ZwQueryDirectoryObject@28
2105ZwQueryDriverEntryOrder@8
2106ZwQueryEaFile@36685ZwQueryEaFile@36
2107ZwQueryEvent@20686ZwQueryEvent@20
2108ZwQueryFullAttributesFile@8
2109ZwQueryInformationAtom@20
2110ZwQueryInformationByName@20
2111ZwQueryInformationEnlistment@20
2112ZwQueryInformationFile@20687ZwQueryInformationFile@20
2113ZwQueryInformationJobObject@20
2114ZwQueryInformationPort@20688ZwQueryInformationPort@20
2115ZwQueryInformationProcess@20689ZwQueryInformationProcess@20
2116ZwQueryInformationResourceManager@20
2117ZwQueryInformationThread@20690ZwQueryInformationThread@20
2118ZwQueryInformationToken@20691ZwQueryInformationToken@20
2119ZwQueryInformationTransaction@20692ZwQueryIntervalProfile@8 ; Windows NT 3.1-3.51 has ABI "ZwQueryIntervalProfile@4", Windows NT 4.0 and new has ABI "ZwQueryIntervalProfile@8"
2120ZwQueryInformationTransactionManager@20
2121ZwQueryInformationWorkerFactory@20
2122ZwQueryInstallUILanguage@4
2123ZwQueryIntervalProfile@8
2124ZwQueryIoCompletion@20
2125ZwQueryIoRingCapabilities@8
2126ZwQueryKey@20693ZwQueryKey@20
2127ZwQueryLicenseValue@20
2128ZwQueryMultipleValueKey@24
2129ZwQueryMutant@20694ZwQueryMutant@20
2130ZwQueryObject@20695ZwQueryObject@20
2131ZwQueryOpenSubKeys@8
2132ZwQueryOpenSubKeysEx@16
2133ZwQueryPerformanceCounter@8696ZwQueryPerformanceCounter@8
2134ZwQueryPortInformationProcess@0
2135ZwQueryQuotaInformationFile@36
2136ZwQuerySection@20697ZwQuerySection@20
2137ZwQuerySecurityAttributesToken@24
2138ZwQuerySecurityObject@20698ZwQuerySecurityObject@20
2139ZwQuerySecurityPolicy@24
2140ZwQuerySemaphore@20699ZwQuerySemaphore@20
2141ZwQuerySymbolicLinkObject@12700ZwQuerySymbolicLinkObject@12
2142ZwQuerySystemEnvironmentValue@16701ZwQuerySystemEnvironmentValue@16
2143ZwQuerySystemEnvironmentValueEx@20
2144ZwQuerySystemInformation@16702ZwQuerySystemInformation@16
2145ZwQuerySystemInformationEx@24
2146ZwQuerySystemTime@4703ZwQuerySystemTime@4
2147ZwQueryTimer@20704ZwQueryTimer@20
2148ZwQueryTimerResolution@12
2149ZwQueryValueKey@24705ZwQueryValueKey@24
2150ZwQueryVirtualMemory@24706ZwQueryVirtualMemory@24
2151ZwQueryVolumeInformationFile@20707ZwQueryVolumeInformationFile@20
2152ZwQueryWnfStateData@24
2153ZwQueryWnfStateNameInformation@20
2154ZwQueueApcThread@20
2155ZwQueueApcThreadEx2@28
2156ZwQueueApcThreadEx@24
2157ZwRaiseException@12708ZwRaiseException@12
2158ZwRaiseHardError@24709ZwRaiseHardError@24
2159ZwReadFile@36710ZwReadFile@36
2160ZwReadFileScatter@36
2161ZwReadOnlyEnlistment@8
2162ZwReadRequestData@24711ZwReadRequestData@24
2163ZwReadVirtualMemory@20712ZwReadVirtualMemory@20
2164ZwReadVirtualMemoryEx@24
2165ZwRecoverEnlistment@8
2166ZwRecoverResourceManager@4
2167ZwRecoverTransactionManager@4
2168ZwRegisterProtocolAddressInformation@20
2169ZwRegisterThreadTerminatePort@4713ZwRegisterThreadTerminatePort@4
2170ZwReleaseCMFViewOwnership@0
2171ZwReleaseKeyedEvent@16
2172ZwReleaseMutant@8714ZwReleaseMutant@8
715; ZwReleaseProcessMutant@0 ; removed in Windows NT 4.0
2173ZwReleaseSemaphore@12716ZwReleaseSemaphore@12
2174ZwReleaseWorkerFactoryWorker@4717; ZwRenameValueKey@16 ; removed in Windows NT 3.5
2175ZwRemoveIoCompletion@20
2176ZwRemoveIoCompletionEx@24
2177ZwRemoveProcessDebug@8
2178ZwRenameKey@8
2179ZwRenameTransactionManager@8
2180ZwReplaceKey@12718ZwReplaceKey@12
2181ZwReplacePartitionUnit@12
2182ZwReplyPort@8719ZwReplyPort@8
2183ZwReplyWaitReceivePort@16720ZwReplyWaitReceivePort@16
2184ZwReplyWaitReceivePortEx@20
2185ZwReplyWaitReplyPort@8721ZwReplyWaitReplyPort@8
2186ZwRequestDeviceWakeup@4
2187ZwRequestPort@8722ZwRequestPort@8
2188ZwRequestWaitReplyPort@12723ZwRequestWaitReplyPort@12
2189ZwRequestWakeupLatency@4
2190ZwResetEvent@8724ZwResetEvent@8
2191ZwResetWriteWatch@12
2192ZwRestoreKey@12725ZwRestoreKey@12
2193ZwResumeProcess@4
2194ZwResumeThread@8726ZwResumeThread@8
2195ZwRevertContainerImpersonation@0
2196ZwRollbackComplete@8
2197ZwRollbackEnlistment@8
2198ZwRollbackRegistryTransaction@8
2199ZwRollbackTransaction@8
2200ZwRollforwardTransactionManager@8
2201ZwSaveKey@8727ZwSaveKey@8
2202ZwSaveKeyEx@12
2203ZwSaveMergedKeys@12
2204ZwSecureConnectPort@36
2205ZwSerializeBoot@0
2206ZwSetBootEntryOrder@8
2207ZwSetBootOptions@8
2208ZwSetCachedSigningLevel2@24
2209ZwSetCachedSigningLevel@20
2210ZwSetContextThread@8728ZwSetContextThread@8
2211ZwSetDebugFilterState@12
2212ZwSetDefaultHardErrorPort@4729ZwSetDefaultHardErrorPort@4
2213ZwSetDefaultLocale@8730ZwSetDefaultLocale@8
2214ZwSetDefaultUILanguage@4
2215ZwSetDriverEntryOrder@8
2216ZwSetEaFile@16731ZwSetEaFile@16
2217ZwSetEvent@8732ZwSetEvent@8
2218ZwSetEventBoostPriority@4
2219ZwSetHighEventPair@4733ZwSetHighEventPair@4
2220ZwSetHighWaitLowEventPair@4734ZwSetHighWaitLowEventPair@4
2221ZwSetIRTimer@8735; ZwSetHighWaitLowThread@0 ; removed in Windows 2000
2222ZwSetInformationDebugObject@20
2223ZwSetInformationEnlistment@16
2224ZwSetInformationFile@20736ZwSetInformationFile@20
2225ZwSetInformationIoRing@16
2226ZwSetInformationJobObject@16
2227ZwSetInformationKey@16737ZwSetInformationKey@16
2228ZwSetInformationObject@16
2229ZwSetInformationProcess@16738ZwSetInformationProcess@16
2230ZwSetInformationResourceManager@16
2231ZwSetInformationSymbolicLink@16
2232ZwSetInformationThread@16739ZwSetInformationThread@16
2233ZwSetInformationToken@16740ZwSetInformationToken@16
2234ZwSetInformationTransaction@16741ZwSetIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "ZwSetIntervalProfile@4", Windows NT 3.51 and new has ABI "ZwSetIntervalProfile@8"
2235ZwSetInformationTransactionManager@16
2236ZwSetInformationVirtualMemory@24
2237ZwSetInformationWorkerFactory@16
2238ZwSetIntervalProfile@8
2239ZwSetIoCompletion@20
2240ZwSetIoCompletionEx@24
2241ZwSetLdtEntries@24742ZwSetLdtEntries@24
2242ZwSetLowEventPair@4743ZwSetLowEventPair@4
2243ZwSetLowWaitHighEventPair@4744ZwSetLowWaitHighEventPair@4
2244ZwSetQuotaInformationFile@16745; ZwSetLowWaitHighThread@0 ; removed in Windows 2000
2245ZwSetSecurityObject@12746ZwSetSecurityObject@12
2246ZwSetSystemEnvironmentValue@8747ZwSetSystemEnvironmentValue@8
2247ZwSetSystemEnvironmentValueEx@20
2248ZwSetSystemInformation@12
2249ZwSetSystemPowerState@12
2250ZwSetSystemTime@8748ZwSetSystemTime@8
2251ZwSetThreadExecutionState@8749ZwSetTimer@28 ; Windows NT 3.1-3.5 has ABI "ZwSetTimer@20", Windows NT 3.51 has ABI "ZwSetTimer@24", Windows NT 4.0 and new has ABI "ZwSetTimer@28"
2252ZwSetTimer2@16
2253ZwSetTimer@28
2254ZwSetTimerEx@16
2255ZwSetTimerResolution@12
2256ZwSetUuidSeed@4
2257ZwSetValueKey@24750ZwSetValueKey@24
2258ZwSetVolumeInformationFile@20751ZwSetVolumeInformationFile@20
2259ZwSetWnfProcessNotificationEvent@4
2260ZwShutdownSystem@4752ZwShutdownSystem@4
2261ZwShutdownWorkerFactory@8
2262ZwSignalAndWaitForSingleObject@16
2263ZwSinglePhaseReject@8
2264ZwStartProfile@4753ZwStartProfile@4
2265ZwStopProfile@4754ZwStopProfile@4
2266ZwSubmitIoRing@16
2267ZwSubscribeWnfStateChange@16
2268ZwSuspendProcess@4
2269ZwSuspendThread@8755ZwSuspendThread@8
2270ZwSystemDebugControl@24756ZwSystemDebugControl@24
2271ZwTerminateEnclave@8
2272ZwTerminateJobObject@8
2273ZwTerminateProcess@8757ZwTerminateProcess@8
2274ZwTerminateThread@8758ZwTerminateThread@8
2275ZwTestAlert@0759ZwTestAlert@0
2276ZwThawRegistry@0
2277ZwThawTransactions@0
2278ZwTraceControl@24
2279ZwTraceEvent@16
2280ZwTranslateFilePath@16
2281ZwUmsThreadYield@4
2282ZwUnloadDriver@4760ZwUnloadDriver@4
2283ZwUnloadKey2@8
2284ZwUnloadKey@4761ZwUnloadKey@4
2285ZwUnloadKeyEx@8
2286ZwUnlockFile@20762ZwUnlockFile@20
2287ZwUnlockVirtualMemory@16763ZwUnlockVirtualMemory@16
2288ZwUnmapViewOfSection@8764ZwUnmapViewOfSection@8
2289ZwUnmapViewOfSectionEx@12765ZwVdmControl@8 ; Windows NT 3.1 has ABI "ZwVdmControl@16", Windows NT 3.5 and new has ABI "ZwVdmControl@8"
2290ZwUnsubscribeWnfStateChange@4766; ZwVdmStartExecution@0 ; removed in Windows NT 3.5
2291ZwUpdateWnfStateData@28
2292ZwVdmControl@8
2293ZwWaitForAlertByThreadId@8
2294ZwWaitForDebugEvent@16
2295ZwWaitForKeyedEvent@16
2296ZwWaitForMultipleObjects32@20
2297ZwWaitForMultipleObjects@20767ZwWaitForMultipleObjects@20
768; ZwWaitForProcessMutant@0 ; removed in Windows NT 4.0
2298ZwWaitForSingleObject@12769ZwWaitForSingleObject@12
2299ZwWaitForWorkViaWorkerFactory@8
2300ZwWaitHighEventPair@4770ZwWaitHighEventPair@4
2301ZwWaitLowEventPair@4771ZwWaitLowEventPair@4
2302ZwWorkerFactoryWorkerReady@4
2303ZwWow64CallFunction64@28
2304ZwWow64CsrAllocateCaptureBuffer@8
2305ZwWow64CsrAllocateMessagePointer@12
2306ZwWow64CsrCaptureMessageBuffer@16
2307ZwWow64CsrCaptureMessageString@20
2308ZwWow64CsrClientCallServer@16
2309ZwWow64CsrClientConnectToServer@20
2310ZwWow64CsrFreeCaptureBuffer@4
2311ZwWow64CsrGetProcessId@0
2312ZwWow64CsrIdentifyAlertableThread@0
2313ZwWow64CsrVerifyRegion@8
2314ZwWow64DebuggerCall@20
2315ZwWow64GetCurrentProcessorNumberEx@4
2316ZwWow64GetNativeSystemInformation@16
2317ZwWow64InterlockedPopEntrySList@4
2318ZwWow64QueryInformationProcess64@20
2319ZwWow64QueryVirtualMemory64@32
2320ZwWow64ReadVirtualMemory64@28
2321ZwWow64WriteVirtualMemory64@28
2322ZwWriteFile@36772ZwWriteFile@36
2323ZwWriteFileGather@36
2324ZwWriteRequestData@24773ZwWriteRequestData@24
2325ZwWriteVirtualMemory@20774ZwWriteVirtualMemory@20
775; xRtlDosPathNameToNtPathName@16 ; removed in Windows NT 3.5
776
777; This is list of non-stdcall FPU emulator symbols, available since Windows NT 3.1 and removed in Windows XP SP2 and Windows Server 2003 SP1
778; NPXEMULATORTABLE DATA ; removed in Windows XP
779; RestoreEm87Context
780; SaveEm87Context
781; __eCommonExceptions
782; __eEmulatorInit
783; __eF2XM1
784; __eFABS
785; __eFADD32
786; __eFADD64
787; __eFADDPreg
788; __eFADDreg
789; __eFADDtop
790; __eFCHS
791; __eFCOM32
792; __eFCOM64
793; __eFCOM
794; __eFCOMP32
795; __eFCOMP64
796; __eFCOMP
797; __eFCOMPP
798; __eFCOS
799; __eFDECSTP
800; __eFDIV32
801; __eFDIV64
802; __eFDIVPreg
803; __eFDIVR32
804; __eFDIVR64
805; __eFDIVRPreg
806; __eFDIVRreg
807; __eFDIVRtop
808; __eFDIVreg
809; __eFDIVtop
810; __eFFREE
811; __eFIADD16
812; __eFIADD32
813; __eFICOM16
814; __eFICOM32
815; __eFICOMP16
816; __eFICOMP32
817; __eFIDIV16
818; __eFIDIV32
819; __eFIDIVR16
820; __eFIDIVR32
821; __eFILD16
822; __eFILD32
823; __eFILD64
824; __eFIMUL16
825; __eFIMUL32
826; __eFINCSTP
827; __eFINIT
828; __eFIST16
829; __eFIST32
830; __eFISTP16
831; __eFISTP32
832; __eFISTP64
833; __eFISUB16
834; __eFISUB32
835; __eFISUBR16
836; __eFISUBR32
837; __eFLD1
838; __eFLD32
839; __eFLD64
840; __eFLD80
841; __eFLDCW
842; __eFLDENV
843; __eFLDL2E
844; __eFLDLN2
845; __eFLDPI
846; __eFLDZ
847; __eFMUL32
848; __eFMUL64
849; __eFMULPreg
850; __eFMULreg
851; __eFMULtop
852; __eFPATAN
853; __eFPREM
854; __eFPREM1
855; __eFPTAN
856; __eFRNDINT
857; __eFRSTOR
858; __eFSAVE
859; __eFSCALE
860; __eFSIN
861; __eFSQRT
862; __eFST32
863; __eFST64
864; __eFST
865; __eFSTCW
866; __eFSTENV
867; __eFSTP32
868; __eFSTP64
869; __eFSTP80
870; __eFSTP
871; __eFSTSW
872; __eFSUB32
873; __eFSUB64
874; __eFSUBPreg
875; __eFSUBR32
876; __eFSUBR64
877; __eFSUBRPreg
878; __eFSUBRreg
879; __eFSUBRtop
880; __eFSUBreg
881; __eFSUBtop
882; __eFTST
883; __eFUCOM
884; __eFUCOMP
885; __eFUCOMPP
886; __eFXAM
887; __eFXCH
888; __eFXTRACT
889; __eFYL2X
890; __eFYL2XP1
891; __eGetStatusWord
892
893; This is list of symbols added in Windows NT 3.5
894LdrDisableThreadCalloutsForDll@4
895NlsMbCodePageTag DATA
896NlsMbOemCodePageTag DATA
897NtClearEvent@4
898NtCreateIoCompletion@16
899NtDeleteFile@4
900NtOpenIoCompletion@12
901NtQueryAttributesFile@8
902NtQueryIoCompletion@20
903NtQueryTimerResolution@12
904NtRemoveIoCompletion@20
905NtSetInformationObject@16
906NtSetSystemInformation@12
907NtSetTimerResolution@12
908RtlCompressBuffer@32
909RtlCutoverTimeToSystemTime@16
910RtlDecompressBuffer@24
911RtlDecompressFragment@32
912RtlFormatCurrentUserKeyPath@4
913RtlGetCompressionWorkSpaceSize@12
914RtlGetLongestNtPathLength@0
915; RtlGetUserFlagsHeap@16 ; removed in Windows NT 3.51
916; RtlGetUserValueHeap@16 ; removed in Windows NT 3.51
917RtlIsTextUnicode@12
918RtlSetUserFlagsHeap@20
919RtlSetUserValueHeap@16
920RtlWalkHeap@8
921RtlZeroHeap@8
922RtlxAnsiStringToUnicodeSize@4
923RtlxOemStringToUnicodeSize@4
924RtlxUnicodeStringToAnsiSize@4
925RtlxUnicodeStringToOemSize@4
926ZwClearEvent@4
927ZwCreateIoCompletion@16
928ZwDeleteFile@4
929ZwOpenIoCompletion@12
930ZwQueryAttributesFile@8
931ZwQueryIoCompletion@20
932ZwQueryTimerResolution@12
933ZwRemoveIoCompletion@20
934ZwSetInformationObject@16
935ZwSetSystemInformation@12
936ZwSetTimerResolution@12
937
938; This is list of symbols added in Windows NT 3.51
939KiUserCallbackDispatcher@12 ; really stdcall @12, gendef detects it incorrectly
940LdrEnumResources@20
941NtAllocateUuids@16 ; Windows NT 3.51-4.0 has ABI "NtAllocateUuids@12", Windows 2000 and new has ABI "NtAllocateUuids@16"
942NtCallbackReturn@12
943; NtEnumerateBus@8 ; removed in Windows NT 4.0
944NtGetPlugPlayEvent@16 ; removed in Windows 8
945NtPlugPlayControl@12 ; Windows NT 3.51-4.0 has ABI "NtPlugPlayControl@16", Windows 2000 and new has ABI "NtPlugPlayControl@12"
946; NtRegisterNewDevice@8 ; removed in Windows NT 4.0
947NtSetIoCompletion@20
948; NtW32Call@20 ; removed in Windows NT 4.0 SP4
949RtlCreateQueryDebugBuffer@8
950RtlCreateTagHeap@16
951RtlDestroyQueryDebugBuffer@4
952RtlEnumProcessHeaps@8
953RtlExtendHeap@16 ; removed in Windows Vista
954RtlGetProcessHeaps@8
955RtlGetUserInfoHeap@20
956RtlIsNameLegalDOS8Dot3@12
957RtlProtectHeap@8
958RtlQueryProcessDebugInformation@12
959RtlQueryTagHeap@20
960RtlUsageHeap@12 ; removed in Windows Vista
961RtlValidateProcessHeaps@0
962ZwAllocateUuids@16 ; Windows NT 3.51-4.0 has ABI "ZwAllocateUuids@12", Windows 2000 and new has ABI "ZwAllocateUuids@16"
963ZwCallbackReturn@12
964; ZwEnumerateBus@8 ; remvoed in Windows NT 4.0
965ZwGetPlugPlayEvent@16 ; removed in Windows 8
966ZwPlugPlayControl@12 ; Windows NT 3.51-4.0 has ABI "ZwPlugPlayControl@16", Windows 2000 and new has ABI "ZwPlugPlayControl@12"
967; ZwRegisterNewDevice@8 ; removed in Windows NT 4.0
968ZwSetIoCompletion@20
969ZwSetSystemPowerState@12
970; ZwW32Call@20 ; removed in Windows NT 4.0 SP4
971
972; This is list of symbols added in Windows NT 4.0
973; public: virtual void *__thiscall CBufferAllocator::Allocate(unsigned long)
974; ?Allocate@CBufferAllocator@@UAEPAXK@Z ; has WINAPI (@4) ; removed in Windows 2000
975KiRaiseUserExceptionDispatcher@0
976NlsAnsiCodePage DATA
977NtAddAtom@12 ; Windows NT 4.0 has ABI "NtAddAtom@8", Windows 2000 and new has ABI "NtAddAtom@12"
978; NtCreateChannel@8 ; removed in Windows XP
979NtDeleteAtom@4
980NtDeleteObjectAuditAlarm@12
981NtFindAtom@12 ; Windows NT 4.0 has ABI "NtFindAtom@8", Windows 2000 and new has ABI "NtFindAtom@12"
982; NtListenChannel@8 ; removed in Windows XP
983NtLoadKey2@12
984; NtOpenChannel@8 ; removed in Windows XP
985NtQueryFullAttributesFile@8
986NtQueryInformationAtom@20
987NtQueryMultipleValueKey@24
988; NtQueryOleDirectoryFile@44 ; removed in Windows 2000
989NtQueueApcThread@20
990; NtReplyWaitSendChannel@12 ; removed in Windows XP
991; NtSendWaitReplyChannel@16 ; removed in Windows XP
992; NtSetContextChannel@4 ; removed in Windows XP
993NtSignalAndWaitForSingleObject@16
994NtYieldExecution@0
995; PropertyLengthAsVariant@16 ; removed in Windows Vista
996RtlAddAtomToAtomTable@12
997RtlAddCompoundAce@24
998RtlAllocateHandle@8
999; RtlClosePropertySet@4 ; removed in Windows 2000
1000; RtlCompareVariants@12 ; removed in Windows 2000
1001; RtlConvertPropertyToVariant@16 ; removed in Windows Vista
1002; RtlConvertVariantToProperty@28 ; removed in Windows Vista
1003RtlCreateAtomTable@8
1004; RtlCreatePropertySet@36 ; removed in Windows 2000
1005RtlDeleteAtomFromAtomTable@8
1006RtlDeleteNoSplay@8
1007RtlDestroyAtomTable@4
1008RtlDestroyHandleTable@4
1009RtlDowncaseUnicodeString@12
1010RtlEmptyAtomTable@8
1011; RtlEnumerateProperties@24 ; removed in Windows 2000
1012; RtlFlushPropertySet@4 ; removed in Windows 2000
1013RtlFreeHandle@8
1014RtlFreeUserThreadStack@8 ; removed in Windows Vista
1015; RtlGuidToPropertySetName@8 ; removed in Windows 2000
1016RtlImageRvaToSection@12
1017RtlImageRvaToVa@16
1018RtlInitializeAtomPackage@4
1019RtlInitializeHandleTable@12
1020RtlIsValidHandle@8
1021RtlIsValidIndexHandle@12
1022RtlLookupAtomInAtomTable@12
1023RtlPinAtomInAtomTable@8
1024; RtlPropertySetNameToGuid@12 ; removed in Windows 2000
1025RtlQueryAtomInAtomTable@24
1026; RtlQueryProperties@28 ; removed in Windows 2000
1027; RtlQueryPropertyNames@16 ; removed in Windows 2000
1028; RtlQueryPropertySet@8 ; removed in Windows 2000
1029RtlSetAttributesSecurityDescriptor@12
1030; RtlSetProperties@28 ; removed in Windows 2000
1031; RtlSetPropertyNames@16 ; removed in Windows 2000
1032; RtlSetPropertySetClassId@8 ; removed in Windows 2000
1033; RtlSetUnicodeCallouts@4 ; removed in Windows Vista
1034RtlTryEnterCriticalSection@4
1035ZwAddAtom@12 ; Windows NT 4.0 has ABI "ZwAddAtom@8", Windows 2000 and new has ABI "ZwAddAtom@12"
1036; ZwCreateChannel@8 ; removed in Windows XP
1037ZwDeleteAtom@4
1038ZwDeleteObjectAuditAlarm@12
1039ZwFindAtom@12 ; Windows NT 4.0 has ABI "ZwFindAtom@8", Windows 2000 and new has ABI "ZwFindAtom@12"
1040; ZwListenChannel@8 ; removed in Windows XP
1041ZwLoadKey2@12
1042; ZwOpenChannel@8 ; removed in Windows XP
1043ZwQueryFullAttributesFile@8
1044ZwQueryInformationAtom@20
1045ZwQueryMultipleValueKey@24
1046; ZwQueryOleDirectoryFile@44 ; removed in Windows 2000
1047ZwQueueApcThread@20
1048; ZwReplyWaitSendChannel@12 ; removed in Windows XP
1049; ZwSendWaitReplyChannel@16 ; removed in Windows XP
1050; ZwSetContextChannel@4 ; removed in Windows XP
1051ZwSignalAndWaitForSingleObject@16
2326ZwYieldExecution@01052ZwYieldExecution@0
2327vDbgPrintEx@161053
2328vDbgPrintExWithPrefix@201054; In Windows NT 4.0 SP1 was not added any new symbol
1055
1056; This is list of symbols added in Windows NT 4.0 SP2
1057NtReadFileScatter@36
1058NtWriteFileGather@36
1059; RtlOnMappedStreamEvent@12 ; removed in Windows 2000
1060ZwReadFileScatter@36
1061ZwWriteFileGather@36
1062
1063; This is list of symbols added in Windows NT 4.0 SP3
1064RtlInitializeCriticalSectionAndSpinCount@8
1065RtlSetCriticalSectionSpinCount@8
1066
1067; In Windows NT 4.0 SP4 was not added any new symbol but some were removed
1068
1069; In Windows NT 4.0 SP5 was not added any new symbol
1070
1071; In Windows NT 4.0 SP6 was not added any new symbol
1072
1073; In Windows NT 4.0 SP6a was not added any new symbol
1074
1075; This is list of symbols added in Windows 2000
1076DbgPrintReturnControlC ; cdecl
1077LdrAlternateResourcesEnabled@0 ; removed in Windows Vista
1078LdrFlushAlternateResourceModules@0
1079LdrLoadAlternateResourceModule@16 ; Windows 2000-2003 has ABI "LdrLoadAlternateResourceModule@8", Windows Vista and new has ABI "LdrLoadAlternateResourceModule@16"
1080LdrUnloadAlternateResourceModule@4
1081NtAccessCheckByType@44
1082NtAccessCheckByTypeAndAuditAlarm@64
1083NtAccessCheckByTypeResultList@44
1084NtAccessCheckByTypeResultListAndAuditAlarm@64
1085NtAccessCheckByTypeResultListAndAuditAlarmByHandle@68
1086NtAllocateUserPhysicalPages@12
1087NtAreMappedFilesTheSame@8
1088NtAssignProcessToJobObject@8
1089NtCancelDeviceWakeupRequest@4 ; removed in Windows 7
1090NtCreateJobObject@12
1091NtCreateWaitablePort@20
1092NtFilterToken@24
1093NtFreeUserPhysicalPages@12
1094NtGetDevicePowerState@8
1095NtGetWriteWatch@28
1096NtImpersonateAnonymousToken@4
1097NtIsSystemResumeAutomatic@0
1098NtMapUserPhysicalPages@12
1099NtMapUserPhysicalPagesScatter@12
1100NtNotifyChangeMultipleKeys@48
1101NtOpenJobObject@12
1102NtQueryDefaultUILanguage@4
1103NtQueryInformationJobObject@20
1104NtQueryInstallUILanguage@4
1105NtQueryOpenSubKeys@8
1106NtQueryQuotaInformationFile@36
1107NtReplyWaitReceivePortEx@20
1108NtRequestDeviceWakeup@4 ; removed in Windows 7
1109NtResetWriteWatch@12
1110NtSaveMergedKeys@12
1111NtSecureConnectPort@36
1112NtSetDefaultUILanguage@4
1113NtSetInformationJobObject@16
1114NtSetQuotaInformationFile@16
1115NtSetThreadExecutionState@8
1116NtSetUuidSeed@4
1117NtTerminateJobObject@8
1118RtlAddAccessAllowedAceEx@20
1119RtlAddAccessAllowedObjectAce@28
1120RtlAddAccessDeniedAceEx@20
1121RtlAddAccessDeniedObjectAce@28
1122RtlAddAuditAccessAceEx@28
1123RtlAddAuditAccessObjectAce@36
1124RtlAddRange@36 ; removed in Windows Server 2003
1125RtlCallbackLpcClient@12 ; removed in Windows XP
1126RtlCancelTimer@8
1127RtlCheckForOrphanedCriticalSections@4
1128RtlConvertToAutoInheritSecurityObject@24
1129RtlCopyRangeList@8 ; removed in Windows Server 2003
1130RtlCreateLpcServer@24 ; removed in Windows XP
1131RtlCreateTimer@28
1132RtlCreateTimerQueue@4
1133RtlDebugPrintTimes@0
1134RtlDefaultNpAcl@4
1135RtlDeleteOwnersRanges@8 ; removed in Windows Server 2003
1136RtlDeleteRange@24 ; removed in Windows Server 2003
1137RtlDeleteTimer@12
1138RtlDeleteTimerQueue@4
1139RtlDeleteTimerQueueEx@8
1140RtlDeregisterWait@4
1141RtlDeregisterWaitEx@8
1142RtlDnsHostNameToComputerName@12
1143RtlEnableEarlyCriticalSectionEventCreation@0
1144RtlFindLastBackwardRunClear@12
1145RtlFindLeastSignificantBit@8
1146RtlFindMostSignificantBit@8
1147RtlFindNextForwardRunClear@12
1148RtlFindRange@48 ; removed in Windows Server 2003
1149; RtlFreeRangeList@4 ; removed in Windows Server 2003
1150RtlGUIDFromString@8
1151RtlGetFirstRange@12 ; removed in Windows Server 2003
1152RtlGetNextRange@12 ; removed in Windows Server 2003
1153RtlGetSecurityDescriptorRMControl@8
1154RtlGetVersion@4
1155RtlImpersonateLpcClient@8 ; removed in Windows XP
1156; RtlInitializeRangeList@4 ; removed in Windows Server 2003
1157RtlInt64ToUnicodeString@16
1158RtlInvertRangeList@8 ; removed in Windows Server 2003
1159RtlIsRangeAvailable@40 ; removed in Windows Server 2003
1160RtlMergeRangeLists@16 ; removed in Windows Server 2003
1161RtlNewSecurityObjectEx@32
1162RtlQueueWorkItem@12
1163RtlRegisterWait@24
1164RtlSelfRelativeToAbsoluteSD2@8
1165RtlSetControlSecurityDescriptor@12
1166RtlSetIoCompletionCallback@12
1167RtlSetSecurityDescriptorRMControl@8
1168RtlSetSecurityObjectEx@24
1169RtlSetThreadPoolStartFunc@8
1170RtlSetTimer@28
1171RtlShutdownLpcServer@4 ; removed in Windows XP
1172RtlStringFromGUID@8
1173@RtlUlongByteSwap@4 ; fastcall
1174@RtlUlonglongByteSwap@8 ; fastcall
1175RtlUpdateTimer@16
1176@RtlUshortByteSwap@4 ; fastcall
1177RtlValidRelativeSecurityDescriptor@12
1178RtlVerifyVersionInfo@16
1179RtlWalkFrameChain@12
1180VerSetConditionMask@16
1181ZwAccessCheckByType@44
1182ZwAccessCheckByTypeAndAuditAlarm@64
1183ZwAccessCheckByTypeResultList@44
1184ZwAccessCheckByTypeResultListAndAuditAlarm@64
1185ZwAccessCheckByTypeResultListAndAuditAlarmByHandle@68
1186ZwAllocateUserPhysicalPages@12
1187ZwAreMappedFilesTheSame@8
1188ZwAssignProcessToJobObject@8
1189ZwCancelDeviceWakeupRequest@4 ; removed in Windows 7
1190ZwCreateJobObject@12
1191ZwCreateWaitablePort@20
1192ZwFilterToken@24
1193ZwFreeUserPhysicalPages@12
1194ZwGetDevicePowerState@8
1195ZwGetWriteWatch@28
1196ZwImpersonateAnonymousToken@4
1197ZwInitiatePowerAction@16
1198ZwIsSystemResumeAutomatic@0
1199ZwMapUserPhysicalPages@12
1200ZwMapUserPhysicalPagesScatter@12
1201ZwNotifyChangeMultipleKeys@48
1202ZwOpenJobObject@12
1203ZwPowerInformation@20
1204ZwQueryDefaultUILanguage@4
1205ZwQueryInformationJobObject@20
1206ZwQueryInstallUILanguage@4
1207ZwQueryOpenSubKeys@8
1208ZwQueryQuotaInformationFile@36
1209ZwReplyWaitReceivePortEx@20
1210ZwRequestDeviceWakeup@4 ; removed in Windows 7
1211ZwRequestWakeupLatency@4 ; removed in Windows 7
1212ZwResetWriteWatch@12
1213ZwSaveMergedKeys@12
1214ZwSecureConnectPort@36
1215ZwSetDefaultUILanguage@4
1216ZwSetInformationJobObject@16
1217ZwSetQuotaInformationFile@16
1218ZwSetThreadExecutionState@8
1219ZwSetUuidSeed@4
1220ZwTerminateJobObject@8
1221
1222; This is list of symbols added in Windows 2000 SP1
1223RtlTraceDatabaseAdd@16
1224RtlTraceDatabaseCreate@20
1225RtlTraceDatabaseDestroy@4
1226RtlTraceDatabaseEnumerate@12
1227RtlTraceDatabaseFind@16
1228RtlTraceDatabaseLock@4
1229RtlTraceDatabaseUnlock@4
1230RtlTraceDatabaseValidate@4
1231
1232; In Windows 2000 SP2 was not added any new symbol
1233
1234; In Windows 2000 SP3 was not added any new symbol
1235
1236; In Windows 2000 SP4 was not added any new symbol
1237
1238; This is list of symbols added in Windows XP
1239CsrCaptureMessageMultiUnicodeStringsInPlace@12
1240CsrGetProcessId@0
1241DbgPrintEx ; cdecl
1242DbgQueryDebugFilterState@8
1243DbgSetDebugFilterState@12
1244DbgUiConvertStateChangeStructure@8
1245DbgUiDebugActiveProcess@4
1246DbgUiGetThreadDebugObject@0
1247DbgUiIssueRemoteBreakin@4
1248DbgUiRemoteBreakin@4
1249DbgUiSetThreadDebugObject@4
1250DbgUiStopDebugging@4
1251; LdrAccessOutOfProcessResource@20 ; removed in Windows Vista
1252LdrAddRefDll@8
1253; LdrCreateOutOfProcessImage@20 ; Windows XP has ABI "LdrCreateOutOfProcessImage@16", Windows Server 2003 has ABI "LdrCreateOutOfProcessImage@20", removed in Windows Vista
1254; LdrDestroyOutOfProcessImage@4 ; removed in Windows Vista
1255; LdrFindCreateProcessManifest@20 ; removed in Windows Vista
1256LdrFindResourceEx_U@20
1257LdrGetDllHandleEx@20
1258LdrInitShimEngineDynamic@4 ; Windows XP-7 has ABI "LdrInitShimEngineDynamic@4", Windows 8 an new has ABI "LdrInitShimEngineDynamic@8"
1259LdrLockLoaderLock@12
1260LdrSetAppCompatDllRedirectionCallback@12
1261LdrSetDllManifestProber@4 ; Windows XP-Vista has ABI "LdrSetDllManifestProber@4", Windows 7 an new has ABI "LdrSetDllManifestProber@12"
1262LdrUnlockLoaderLock@8
1263NtAddBootEntry@8
1264NtCompactKeys@8
1265NtCompareTokens@12
1266NtCompressKey@4
1267NtCreateDebugObject@16
1268NtCreateJobSet@12
1269NtCreateKeyedEvent@16
1270NtCreateProcessEx@36
1271NtDebugActiveProcess@8
1272NtDebugContinue@12
1273NtDeleteBootEntry@4
1274NtEnumerateBootEntries@8
1275NtEnumerateSystemEnvironmentValuesEx@12
1276NtIsProcessInJob@8
1277NtLockProductActivationKeys@8
1278NtLockRegistryKey@4
1279NtMakePermanentObject@4
1280NtModifyBootEntry@4
1281NtOpenKeyedEvent@12
1282NtOpenProcessTokenEx@16
1283NtOpenThreadTokenEx@20
1284NtQueryBootEntryOrder@8
1285NtQueryBootOptions@8
1286NtQueryDebugFilterState@8
1287NtQueryPortInformationProcess@0
1288NtQuerySystemEnvironmentValueEx@20
1289NtReleaseKeyedEvent@16
1290NtRemoveProcessDebug@8
1291NtRenameKey@8
1292NtResumeProcess@4
1293NtSaveKeyEx@12
1294NtSetBootEntryOrder@8
1295NtSetBootOptions@8
1296NtSetDebugFilterState@12
1297NtSetEventBoostPriority@4
1298NtSetInformationDebugObject@20
1299NtSetSystemEnvironmentValueEx@20
1300NtSuspendProcess@4
1301NtTraceEvent@16
1302NtTranslateFilePath@16
1303NtUnloadKeyEx@8
1304NtWaitForDebugEvent@16
1305NtWaitForKeyedEvent@16
1306RtlActivateActivationContext@12
1307RtlActivateActivationContextEx@16
1308@RtlActivateActivationContextUnsafeFast@8 ; fastcall
1309RtlAddRefActivationContext@4
1310RtlAddRefMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1311RtlAddVectoredExceptionHandler@8
1312RtlAddressInSectionTable@12
1313RtlAppendPathElement@12
1314RtlApplicationVerifierStop@40
1315; RtlAssert2@20 ; removed in Windows Server 2003
1316RtlCaptureContext@4
1317RtlCaptureStackContext@12
1318; RtlCheckProcessParameters@16 ; removed in Windows Vista
1319RtlCloneMemoryStream@8 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1320RtlCommitMemoryStream@8 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1321RtlComputeCrc32@12
1322RtlComputeImportTableHash@12
1323RtlComputePrivatizedDllName_U@12
1324RtlCopyMemoryStreamTo@24 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1325RtlCopyOutOfProcessMemoryStreamTo@24 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1326RtlCreateActivationContext@24
1327RtlCreateBootStatusDataFile@4 ; Windows XP-2003 has ABI "RtlCreateBootStatusDataFile@0", Windows Vista and new has ABI "RtlCreateBootStatusDataFile@4"
1328RtlCreateSystemVolumeInformationFolder@4
1329RtlDeactivateActivationContext@8
1330@RtlDeactivateActivationContextUnsafeFast@4 ; fastcall
1331RtlDeleteElementGenericTableAvl@8
1332RtlDllShutdownInProgress@0
1333RtlDosApplyFileIsolationRedirection_Ustr@36
1334RtlDosSearchPath_Ustr@36
1335RtlDowncaseUnicodeChar@4
1336RtlDuplicateUnicodeString@12
1337RtlEnumerateGenericTableAvl@8
1338RtlEnumerateGenericTableLikeADirectory@28
1339RtlEnumerateGenericTableWithoutSplayingAvl@8
1340RtlExitUserThread@4
1341RtlFinalReleaseOutOfProcessMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1342RtlFindActivationContextSectionGuid@20
1343RtlFindActivationContextSectionString@20
1344RtlFindCharInUnicodeString@16
1345RtlFindClearRuns@16
1346RtlFirstEntrySList@4
1347RtlFlushSecureMemoryCache@8
1348RtlFreeThreadActivationContextStack@0
1349RtlGetActiveActivationContext@4
1350RtlGetCurrentPeb@0
1351RtlGetElementGenericTableAvl@8
1352RtlGetFrame@0
1353RtlGetLastNtStatus@0
1354RtlGetLastWin32Error@0
1355RtlGetLengthWithoutLastFullDosOrNtPathElement@12
1356RtlGetLengthWithoutTrailingPathSeperators@12
1357RtlGetNativeSystemInformation@16
1358RtlGetNtVersionNumbers@12
1359RtlGetSetBootStatusData@24
1360RtlHashUnicodeString@16
1361RtlInitMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1362RtlInitOutOfProcessMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1363RtlInitUnicodeStringEx@8
1364RtlInitializeGenericTableAvl@20
1365RtlInitializeSListHead@4
1366RtlInsertElementGenericTableAvl@16
1367RtlInterlockedFlushSList@4
1368RtlInterlockedPopEntrySList@4
1369RtlInterlockedPushEntrySList@8
1370@RtlInterlockedPushListSList@16 ; fastcall
1371RtlIpv4AddressToStringA@8
1372RtlIpv4AddressToStringW@8
1373RtlIpv4StringToAddressA@16
1374RtlIpv4StringToAddressW@16
1375RtlIpv6AddressToStringA@8
1376RtlIpv6AddressToStringW@8
1377RtlIpv6StringToAddressA@12
1378RtlIpv6StringToAddressW@12
1379RtlIsActivationContextActive@4
1380RtlIsGenericTableEmptyAvl@4
1381RtlLockBootStatusData@4
1382RtlLockMemoryStreamRegion@24 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1383RtlLogStackBackTrace@0
1384RtlLookupElementGenericTableAvl@8
1385RtlMapSecurityErrorToNtStatus@4
1386RtlMultiAppendUnicodeStringBuffer@12
1387RtlNewSecurityObjectWithMultipleInheritance@36
1388RtlNtPathNameToDosPathName@16
1389RtlNtStatusToDosErrorNoTeb@4
1390RtlNumberGenericTableElementsAvl@4
1391RtlPopFrame@4
1392RtlPushFrame@4
1393RtlQueryDepthSList@4
1394RtlQueryHeapInformation@20
1395RtlQueryInformationActivationContext@28
1396RtlQueryInformationActiveActivationContext@16
1397RtlQueryInterfaceMemoryStream@12 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1398RtlQueueApcWow64Thread@20
1399RtlRandomEx@4
1400RtlReadMemoryStream@16 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1401RtlReadOutOfProcessMemoryStream@16 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1402RtlRegisterSecureMemoryCacheCallback@4
1403RtlReleaseActivationContext@4
1404RtlReleaseMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1405RtlRemoveVectoredExceptionHandler@4
1406RtlRestoreLastWin32Error@4
1407RtlRevertMemoryStream@4 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1408RtlSeekMemoryStream@20 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1409RtlSetHeapInformation@16
1410RtlSetLastWin32Error@4
1411RtlSetLastWin32ErrorAndNtStatusFromNtStatus@4
1412RtlSetMemoryStreamSize@12 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1413RtlSetProcessIsCritical ; cdecl
1414RtlSetThreadIsCritical ; cdecl
1415RtlStatMemoryStream@12 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1416RtlUnhandledExceptionFilter2@8
1417RtlUnhandledExceptionFilter@4
1418RtlUnlockBootStatusData@4
1419RtlUnlockMemoryStreamRegion@24 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1420RtlValidateUnicodeString@8
1421RtlWriteMemoryStream@16 ; not available in Windows XP x64 WoW64 version, but available in Windows Vista and new WoW64 version
1422RtlZombifyActivationContext@4
1423RtlpApplyLengthFunction@16
1424RtlpEnsureBufferSize@12
1425RtlpNotOwnerCriticalSection@4
1426ZwAddBootEntry@8
1427ZwCompactKeys@8
1428ZwCompareTokens@12
1429ZwCompressKey@4
1430ZwCreateDebugObject@16
1431ZwCreateJobSet@12
1432ZwCreateKeyedEvent@16
1433ZwCreateProcessEx@36
1434ZwDebugActiveProcess@8
1435ZwDebugContinue@12
1436ZwDeleteBootEntry@4
1437ZwEnumerateBootEntries@8
1438ZwEnumerateSystemEnvironmentValuesEx@12
1439ZwIsProcessInJob@8
1440ZwLockProductActivationKeys@8
1441ZwLockRegistryKey@4
1442ZwMakePermanentObject@4
1443ZwModifyBootEntry@4
1444ZwOpenKeyedEvent@12
1445ZwOpenProcessTokenEx@16
1446ZwOpenThreadTokenEx@20
1447ZwQueryBootEntryOrder@8
1448ZwQueryBootOptions@8
1449ZwQueryDebugFilterState@8
1450ZwQueryPortInformationProcess@0
1451ZwQuerySystemEnvironmentValueEx@20
1452ZwReleaseKeyedEvent@16
1453ZwRemoveProcessDebug@8
1454ZwRenameKey@8
1455ZwResumeProcess@4
1456ZwSaveKeyEx@12
1457ZwSetBootEntryOrder@8
1458ZwSetBootOptions@8
1459ZwSetDebugFilterState@12
1460ZwSetEventBoostPriority@4
1461ZwSetInformationDebugObject@20
1462ZwSetSystemEnvironmentValueEx@20
1463ZwSuspendProcess@4
1464ZwTraceEvent@16
1465ZwTranslateFilePath@16
1466ZwUnloadKeyEx@8
1467ZwWaitForDebugEvent@16
1468ZwWaitForKeyedEvent@16
1469vDbgPrintEx@16
1470vDbgPrintExWithPrefix@20
1471
1472; This is list of symbols added in Windows XP SP1
1473LdrEnumerateLoadedModules@12
1474RtlIsThreadWithinLoaderCallout@0
1475
1476; This is list of symbols added in Windows XP SP2
1477LdrHotPatchRoutine@0 ; removed in Windows 8.1
1478RtlGetUnloadEventTrace@0
1479RtlIpv4AddressToStringExA@16
1480RtlIpv4AddressToStringExW@16
1481RtlIpv4StringToAddressExA@16
1482RtlIpv4StringToAddressExW@16
1483RtlIpv6AddressToStringExA@20
1484RtlIpv6AddressToStringExW@20
1485RtlIpv6StringToAddressExA@16
1486RtlIpv6StringToAddressExW@16
1487
1488; This is list of symbols added in Windows XP SP2 and in Windows Server 2003 SP1 (not available in 2003 without SP1)
1489KiFastSystemCall@0
1490KiFastSystemCallRet@0
1491KiIntSystemCall@0
1492RtlDecodePointer@4
1493RtlDecodeSystemPointer@4
1494RtlEncodePointer@4
1495RtlEncodeSystemPointer@4
1496
1497; In Windows XP SP3 was not added any new symbol
1498
1499; This is list of symbols added in Windows Server 2003
1500; EtwControlTraceA@20 ; removed in Windows Vista
1501; EtwControlTraceW@20 ; removed in Windows Vista
1502EtwCreateTraceInstanceId@8
1503; EtwEnableTrace@24 ; removed in Windows Vista
1504; EtwEnumerateTraceGuids@12 ; removed in Windows Vista
1505; EtwFlushTraceA@16 ; removed in Windows Vista
1506; EtwFlushTraceW@16 ; removed in Windows Vista
1507EtwGetTraceEnableFlags@8
1508EtwGetTraceEnableLevel@8
1509EtwGetTraceLoggerHandle@4
1510; EtwNotificationRegistrationA@20 ; removed in Windows Vista
1511; EtwNotificationRegistrationW@20 ; removed in Windows Vista
1512; EtwQueryAllTracesA@12 ; removed in Windows Vista
1513; EtwQueryAllTracesW@12 ; removed in Windows Vista
1514; EtwQueryTraceA@16 ; removed in Windows Vista
1515; EtwQueryTraceW@16 ; removed in Windows Vista
1516; EtwReceiveNotificationsA@16 ; removed in Windows Vista
1517; EtwReceiveNotificationsW@16 ; removed in Windows Vista
1518EtwRegisterTraceGuidsA@32
1519EtwRegisterTraceGuidsW@32
1520; EtwStartTraceA@12 ; removed in Windows Vista
1521; EtwStartTraceW@12 ; removed in Windows Vista
1522; EtwStopTraceA@16 ; removed in Windows Vista
1523; EtwStopTraceW@16 ; removed in Windows Vista
1524; EtwTraceEvent@12 ; removed in Windows Vista
1525EtwTraceEventInstance@20
1526EtwTraceMessage ; cdecl
1527EtwTraceMessageVa@24
1528EtwUnregisterTraceGuids@8
1529; EtwUpdateTraceA@16 ; removed in Windows Vista
1530; EtwUpdateTraceW@16 ; removed in Windows Vista
1531; EtwpGetTraceBuffer@16 ; removed in Windows Vista
1532; EtwpSetHWConfigFunction@8 ; removed in Windows Vista
1533LdrQueryImageFileExecutionOptionsEx@28
1534NtAddDriverEntry@8
1535NtApphelpCacheControl@8
1536NtDeleteDriverEntry@4
1537NtEnumerateDriverEntries@8
1538NtGetCurrentProcessorNumber@0
1539NtGetTickCount@0
1540NtLoadKeyEx@32 ; Windows Server 2003 has ABI "NtLoadKeyEx@16", Windows Vista and new has ABI "NtLoadKeyEx@32"
1541NtModifyDriverEntry@4
1542NtQueryDriverEntryOrder@8
1543NtQueryOpenSubKeysEx@16
1544NtSetDriverEntryOrder@8
1545NtUnloadKey2@8
1546RtlCopyMappedMemory@12
1547RtlDosPathNameToRelativeNtPathName_U@16
1548RtlGetFullPathName_UstrEx@32
1549RtlGetThreadErrorMode@0
1550RtlImageNtHeaderEx@20
1551RtlInitAnsiStringEx@8
1552RtlInsertElementGenericTableFull@24
1553RtlInsertElementGenericTableFullAvl@24
1554RtlInterlockedCompareExchange64@20
1555RtlLookupElementGenericTableFull@16
1556RtlLookupElementGenericTableFullAvl@16
1557RtlMultipleAllocateHeap@20
1558RtlMultipleFreeHeap@16
1559RtlReleaseRelativeName@4
1560RtlSetEnvironmentStrings@8
1561RtlSetThreadErrorMode@8
1562RtlWow64EnableFsRedirection@4
1563ZwAddDriverEntry@8
1564ZwApphelpCacheControl@8
1565ZwDeleteDriverEntry@4
1566ZwEnumerateDriverEntries@8
1567ZwGetCurrentProcessorNumber@0
1568ZwLoadKeyEx@32 ; Windows Server 2003 has ABI "ZwLoadKeyEx@16", Windows Vista and new has ABI "ZwLoadKeyEx@32"
1569ZwModifyDriverEntry@4
1570ZwQueryDriverEntryOrder@8
1571ZwQueryOpenSubKeysEx@16
1572ZwSetDriverEntryOrder@8
1573ZwUnloadKey2@8
1574
1575; This is list of symbols added in Windows Server 2003 SP1 and Windows XP x64 SP1 (WoW64 version)
1576ExpInterlockedPopEntrySListEnd@0 ; removed in Windows 10 November Update (Threshold 2 / 1511) WoW64 version, but available in non-WoW64 version
1577ExpInterlockedPopEntrySListFault@0 ; removed in Windows 10 November Update (Threshold 2 / 1511) WoW64 version, but available in non-WoW64 version
1578ExpInterlockedPopEntrySListResume@0 ; removed in Windows 10 November Update (Threshold 2 / 1511) WoW64 version, but available in non-WoW64 version
1579LdrOpenImageFileOptionsKey@12
1580LdrQueryImageFileKeyOption@24
1581NtWaitForMultipleObjects32@20
1582NtWow64CsrAllocateCaptureBuffer@8 ; available only in 32-bit WoW64 version on 64-bit system
1583NtWow64CsrAllocateMessagePointer@12 ; available only in 32-bit WoW64 version on 64-bit system
1584NtWow64CsrCaptureMessageBuffer@16 ; available only in 32-bit WoW64 version on 64-bit system
1585NtWow64CsrCaptureMessageString@20 ; available only in 32-bit WoW64 version on 64-bit system
1586NtWow64CsrClientCallServer@16 ; available only in 32-bit WoW64 version on 64-bit system
1587NtWow64CsrClientConnectToServer@20 ; available only in 32-bit WoW64 version on 64-bit system
1588NtWow64CsrFreeCaptureBuffer@4 ; available only in 32-bit WoW64 version on 64-bit system
1589NtWow64CsrGetProcessId@0 ; available only in 32-bit WoW64 version on 64-bit system
1590NtWow64CsrIdentifyAlertableThread@0 ; available only in 32-bit WoW64 version on 64-bit system
1591; NtWow64CsrNewThread@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7
1592; NtWow64CsrSetPriorityClass@8 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7
1593NtWow64DebuggerCall@20 ; available only in 32-bit WoW64 version on 64-bit system
1594NtWow64GetNativeSystemInformation@16 ; available only in 32-bit WoW64 version on 64-bit system
1595NtWow64QueryInformationProcess64@20 ; available only in 32-bit WoW64 version on 64-bit system
1596NtWow64QueryVirtualMemory64@32 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 (Threshold / 1507)
1597NtWow64ReadVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system
1598RtlAcquirePrivilege@16
1599RtlAddVectoredContinueHandler@8
1600RtlAllocateActivationContextStack@4
1601RtlDosPathNameToNtPathName_U_WithStatus@16
1602RtlDosPathNameToRelativeNtPathName_U_WithStatus@16
1603RtlFormatMessageEx@40
1604RtlFreeActivationContextStack@4
1605RtlGetCriticalSectionRecursionCount@4
1606RtlGetCurrentProcessorNumber@0
1607RtlIsCriticalSectionLocked@4
1608RtlIsCriticalSectionLockedByThread@4
1609RtlReleasePrivilege@4
1610RtlRemoveVectoredContinueHandler@4
1611RtlSetUnhandledExceptionFilter@4
1612RtlWow64EnableFsRedirectionEx@8
1613ZwWaitForMultipleObjects32@20
1614ZwWow64CsrAllocateCaptureBuffer@8 ; available only in 32-bit WoW64 version on 64-bit system
1615ZwWow64CsrAllocateMessagePointer@12 ; available only in 32-bit WoW64 version on 64-bit system
1616ZwWow64CsrCaptureMessageBuffer@16 ; available only in 32-bit WoW64 version on 64-bit system
1617ZwWow64CsrCaptureMessageString@20 ; available only in 32-bit WoW64 version on 64-bit system
1618ZwWow64CsrClientCallServer@16 ; available only in 32-bit WoW64 version on 64-bit system
1619ZwWow64CsrClientConnectToServer@20 ; available only in 32-bit WoW64 version on 64-bit system
1620ZwWow64CsrFreeCaptureBuffer@4 ; available only in 32-bit WoW64 version on 64-bit system
1621ZwWow64CsrGetProcessId@0 ; available only in 32-bit WoW64 version on 64-bit system
1622ZwWow64CsrIdentifyAlertableThread@0 ; available only in 32-bit WoW64 version on 64-bit system
1623; ZwWow64CsrNewThread@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7
1624; ZwWow64CsrSetPriorityClass@8 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7
1625ZwWow64DebuggerCall@20 ; available only in 32-bit WoW64 version on 64-bit system
1626ZwWow64GetNativeSystemInformation@16 ; available only in 32-bit WoW64 version on 64-bit system
1627ZwWow64QueryInformationProcess64@20 ; available only in 32-bit WoW64 version on 64-bit system
1628ZwWow64QueryVirtualMemory64@32 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 (Threshold / 1507)
1629ZwWow64ReadVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system
1630
1631; In Windows Server 2003 SP2 and Windows XP x64 SP2 (WoW64 version) was not added any new symbol
1632
1633; This is list of symbols added in Windows Vista
1634A_SHAFinal@8
1635A_SHAInit@4
1636A_SHAUpdate@12
1637AlpcAdjustCompletionListConcurrencyCount@8
1638AlpcFreeCompletionListMessage@8
1639AlpcGetCompletionListLastMessageInformation@12
1640AlpcGetCompletionListMessageAttributes@8
1641AlpcGetHeaderSize@4
1642AlpcGetMessageAttribute@8
1643AlpcGetMessageFromCompletionList@8
1644AlpcGetOutstandingCompletionListMessageCount@4
1645AlpcInitializeMessageAttribute@16
1646AlpcMaxAllowedMessageLength@0
1647AlpcRegisterCompletionList@20
1648AlpcRegisterCompletionListWorkerThread@4
1649AlpcUnregisterCompletionList@4
1650AlpcUnregisterCompletionListWorkerThread@4
1651CsrVerifyRegion@8
1652EtwDeliverDataBlock@4
1653EtwEnumerateProcessRegGuids@12
1654EtwEventActivityIdControl@8
1655EtwEventEnabled@12
1656EtwEventProviderEnabled@20
1657EtwEventRegister@16
1658EtwEventUnregister@8
1659EtwEventWrite@20
1660EtwEventWriteEndScenario@20
1661EtwEventWriteFull@32
1662EtwEventWriteStartScenario@20
1663EtwEventWriteString@24
1664EtwEventWriteTransfer@28
1665EtwLogTraceEvent@12
1666EtwNotificationRegister@20
1667EtwNotificationUnregister@12
1668EtwProcessPrivateLoggerRequest@4
1669EtwRegisterSecurityProvider@0
1670EtwReplyNotification@4
1671EtwSendNotification@20
1672EtwSetMark@16
1673EtwWriteUMSecurityEvent@16
1674EtwpCreateEtwThread@8
1675EtwpGetCpuSpeed@8 ; Windows Vista-8 has ABI "EtwpGetCpuSpeed@8", Windows 8.1 and new has ABI "EtwpGetCpuSpeed@4"
1676; EtwpNotificationThread@0 ; removed in Windows 8.1
1677LdrAddLoadAsDataTable@16 ; Windows Vista has ABI "LdrAddLoadAsDataTable@16", Windows 7 and new has ABI "LdrAddLoadAsDataTable@20"
1678LdrGetFailureData@0
1679LdrGetFileNameFromLoadAsDataTable@8
1680LdrGetProcedureAddressEx@20
1681LdrLoadAlternateResourceModuleEx@20
1682LdrQueryModuleServiceTags@12
1683LdrRegisterDllNotification@16
1684LdrRemoveLoadAsDataTable@16
1685LdrResFindResource@36
1686LdrResFindResourceDirectory@28
1687LdrResRelease@12
1688LdrResSearchResource@32
1689LdrSetMUICacheType@4
1690LdrUnloadAlternateResourceModuleEx@8
1691LdrUnregisterDllNotification@4
1692LdrVerifyImageMatchesChecksumEx@8
1693MD4Final@4
1694MD4Init@4
1695MD4Update@12
1696MD5Final@4
1697MD5Init@4
1698MD5Update@12
1699NtAcquireCMFViewOwnership@12 ; removed in Windows 7
1700NtAlpcAcceptConnectPort@36
1701NtAlpcCancelMessage@12
1702NtAlpcConnectPort@44
1703NtAlpcCreatePort@12
1704NtAlpcCreatePortSection@24
1705NtAlpcCreateResourceReserve@16
1706NtAlpcCreateSectionView@12
1707NtAlpcCreateSecurityContext@12
1708NtAlpcDeletePortSection@12
1709NtAlpcDeleteResourceReserve@12
1710NtAlpcDeleteSectionView@12
1711NtAlpcDeleteSecurityContext@12
1712NtAlpcDisconnectPort@8
1713NtAlpcImpersonateClientOfPort@12
1714NtAlpcOpenSenderProcess@24
1715NtAlpcOpenSenderThread@24
1716NtAlpcQueryInformation@20
1717NtAlpcQueryInformationMessage@24
1718NtAlpcRevokeSecurityContext@12
1719NtAlpcSendWaitReceivePort@32
1720NtAlpcSetInformation@16
1721NtCancelIoFileEx@12
1722NtCancelSynchronousIoFile@12
1723; NtClearAllSavepointsTransaction@4 ; removed in Windows Vista SP1
1724; NtClearSavepointTransaction@8 ; removed in Windows Vista SP1
1725NtCommitComplete@8
1726NtCommitEnlistment@8
1727NtCommitTransaction@8
1728NtCreateEnlistment@32
1729NtCreateKeyTransacted@32
1730NtCreatePrivateNamespace@16
1731NtCreateResourceManager@28
1732NtCreateThreadEx@44
1733NtCreateTransaction@40
1734NtCreateTransactionManager@24
1735NtCreateUserProcess@44
1736NtCreateWorkerFactory@40
1737NtDeletePrivateNamespace@4
1738NtEnumerateTransactionObject@20
1739NtFlushInstallUILanguage@8
1740NtFlushProcessWriteBuffers@0
1741NtFreezeRegistry@4
1742NtFreezeTransactions@8
1743NtGetMUIRegistryInfo@12
1744NtGetNextProcess@20
1745NtGetNextThread@24
1746NtGetNlsSectionPtr@20
1747NtGetNotificationResourceManager@28
1748NtInitializeNlsFiles@16 ; Windows Vista has ABI "NtInitializeNlsFiles@12", Windows Vista SP1 and SP2 has ABI "NtInitializeNlsFiles@16", Windows 7 and new has again ABI "NtInitializeNlsFiles@12"
1749NtIsUILanguageComitted@0
1750; NtListTransactions@12 ; removed in Windows Vista SP1
1751NtMapCMFModule@24
1752; NtMarshallTransaction@24 ; removed in Windows Vista SP1
1753NtOpenEnlistment@20
1754NtOpenKeyTransacted@16
1755NtOpenPrivateNamespace@16
1756NtOpenResourceManager@20
1757NtOpenSession@12
1758NtOpenTransaction@20
1759NtOpenTransactionManager@24
1760NtPrePrepareComplete@8
1761NtPrePrepareEnlistment@8
1762NtPrepareComplete@8
1763NtPrepareEnlistment@8
1764NtPropagationComplete@16
1765NtPropagationFailed@12
1766; NtPullTransaction@28 ; removed in Windows Vista SP1
1767NtQueryInformationEnlistment@20
1768NtQueryInformationResourceManager@20
1769NtQueryInformationTransaction@20
1770NtQueryInformationTransactionManager@20
1771NtQueryInformationWorkerFactory@20
1772NtQueryLicenseValue@20
1773NtReadOnlyEnlistment@8
1774NtRecoverEnlistment@8
1775NtRecoverResourceManager@4
1776NtRecoverTransactionManager@4
1777NtRegisterProtocolAddressInformation@20
1778NtReleaseCMFViewOwnership@0 ; removed in Windows 7
1779NtReleaseWorkerFactoryWorker@4
1780NtRemoveIoCompletionEx@24
1781NtRollbackComplete@8
1782NtRollbackEnlistment@8
1783; NtRollbackSavepointTransaction@8 ; removed in Windows Vista SP1
1784NtRollbackTransaction@8
1785NtRollforwardTransactionManager@8
1786; NtSavepointComplete@8 ; removed in Windows Vista SP1
1787; NtSavepointTransaction@12 ; removed in Windows Vista SP1
1788NtSetInformationEnlistment@16
1789NtSetInformationResourceManager@16
1790NtSetInformationTransaction@16
1791NtSetInformationTransactionManager@16
1792NtSetInformationWorkerFactory@16
1793NtShutdownWorkerFactory@8
1794NtSinglePhaseReject@8
1795; NtStartTm@0 ; removed in Windows Vista SP1
1796NtThawRegistry@0
1797NtThawTransactions@0
1798NtTraceControl@24
1799NtWaitForWorkViaWorkerFactory@8 ; Windows Vista-7 has ABI "NtWaitForWorkViaWorkerFactory@8", Windows 8 has ABI "NtWaitForWorkViaWorkerFactory@16", Windows 8.1 and new has ABI "NtWaitForWorkViaWorkerFactory@20"
1800NtWorkerFactoryWorkerReady@4
1801NtWow64CallFunction64@28 ; available only in 32-bit WoW64 version on 64-bit system
1802NtWow64CsrVerifyRegion@8 ; available only in 32-bit WoW64 version on 64-bit system
1803NtWow64WriteVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system
1804; ResCCloseRuntimeView@4 ; removed in Windows Vista SP1
1805; ResCCompareCacheIDs@8 ; removed in Windows Vista SP1
1806; ResCCreateCultureMap@12 ; removed in Windows Vista SP1
1807; ResCCreateDefaultCultureMap@4 ; removed in Windows Vista SP1
1808; ResCCreateRuntimeView@16 ; removed in Windows Vista SP1
1809; ResCDirectoryCreateAndPopulate@12 ; removed in Windows Vista SP1
1810; ResCDirectoryCreateMapping@16 ; removed in Windows Vista SP1
1811; ResCDirectoryFree@4 ; removed in Windows Vista SP1
1812; ResCDirectoryGetBaseFolder@4 ; removed in Windows Vista SP1
1813; ResCDirectoryGetEntry@24 ; removed in Windows Vista SP1
1814; ResCDirectoryGetEntryCopy@28 ; removed in Windows Vista SP1
1815; ResCDirectoryGetEntryEx@32 ; removed in Windows Vista SP1
1816; ResCDirectoryGetEntryExCopy@36 ; removed in Windows Vista SP1
1817; ResCDirectoryGetEntryIndex@24 ; removed in Windows Vista SP1
1818; ResCDirectoryGetEntryIndexEx@32 ; removed in Windows Vista SP1
1819; ResCDirectoryGetFirstEntry@20 ; removed in Windows Vista SP1
1820; ResCDirectoryGetFirstEntryIndex@20 ; removed in Windows Vista SP1
1821; ResCDirectoryGetSegmentIndex@8 ; removed in Windows Vista SP1
1822; ResCDirectoryGetSegmentName@8 ; removed in Windows Vista SP1
1823; ResCDirectoryLoadFixedSize@4 ; removed in Windows Vista SP1
1824; ResCDirectoryOpenMapping@8 ; removed in Windows Vista SP1
1825; ResCFreeCultureMap@4 ; removed in Windows Vista SP1
1826; ResCGetCacheIndices@16 ; removed in Windows Vista SP1
1827; ResCGetCultureID@8 ; removed in Windows Vista SP1
1828; ResCGetCultureIndex@8 ; removed in Windows Vista SP1
1829; ResCGetCultureName@16 ; removed in Windows Vista SP1
1830; ResCGetHighestCacheIndex@4 ; removed in Windows Vista SP1
1831; ResCGetHighestConsecutiveCacheIndex@12 ; removed in Windows Vista SP1
1832; ResCGetIndexedName@20 ; removed in Windows Vista SP1
1833; ResCGetName@16 ; removed in Windows Vista SP1
1834; ResCGetRegistryBaseFolder@16 ; removed in Windows Vista SP1
1835; ResCGetRegistryConfig@8 ; removed in Windows Vista SP1
1836; ResCGetRegistryLatestIndex@8 ; removed in Windows Vista SP1
1837; ResCGetRegistryMappingPrefix@16 ; removed in Windows Vista SP1
1838; ResCGetRegistryStatus@8 ; removed in Windows Vista SP1
1839; ResCGetSubIndexedName@24 ; removed in Windows Vista SP1
1840; ResCInitRuntimeView@8 ; removed in Windows Vista SP1
1841; ResCInitRuntimeViewEx@12 ; removed in Windows Vista SP1
1842; ResCKeDirectoryOpenMapping@20 ; removed in Windows Vista SP1
1843; ResCKeGetBaseFolder@8 ; removed in Windows Vista SP1
1844; ResCKeGetCacheIndices@8 ; removed in Windows Vista SP1
1845; ResCKeInitRuntimeViewEx@4 ; removed in Windows Vista SP1
1846; ResCKeSegmentOpenMapping@8 ; removed in Windows Vista SP1
1847; ResCLoadCultureMap@4 ; removed in Windows Vista SP1
1848; ResCOpenRegistryKey@24 ; removed in Windows Vista SP1
1849; ResCOpenRuntimeView@8 ; removed in Windows Vista SP1
1850; ResCReleaseInitMutex@4 ; removed in Windows Vista SP1
1851; ResCReloadCultureMap@4 ; removed in Windows Vista SP1
1852; ResCRequestInitMutex@8 ; removed in Windows Vista SP1
1853; ResCRuntimeGetAnySegmentData@20 ; removed in Windows Vista SP1
1854; ResCRuntimeGetCultureID@8 ; removed in Windows Vista SP1
1855; ResCRuntimeGetEntryData@8 ; removed in Windows Vista SP1
1856; ResCRuntimeGetEntryDataEx@12 ; removed in Windows Vista SP1
1857; ResCRuntimeGetResourceData@32 ; removed in Windows Vista SP1
1858; ResCRuntimeGetResourceDataEx@36 ; removed in Windows Vista SP1
1859; ResCRuntimeGetResourceDataForCulture@32 ; removed in Windows Vista SP1
1860; ResCRuntimeGetSegmentData@16 ; removed in Windows Vista SP1
1861; ResCRuntimeGetSegmentDataEx@20 ; removed in Windows Vista SP1
1862; ResCRuntimeViewLoadCultureMap@4 ; removed in Windows Vista SP1
1863; ResCSaveRegistryBaseFolder@8 ; removed in Windows Vista SP1
1864; ResCSaveRegistryConfig@8 ; removed in Windows Vista SP1
1865; ResCSaveRegistryLatestIndex@8 ; removed in Windows Vista SP1
1866; ResCSaveRegistryStatus@8 ; removed in Windows Vista SP1
1867; ResCSegmentCreateAndPopulate@12 ; removed in Windows Vista SP1
1868; ResCSegmentCreateMapping@20 ; removed in Windows Vista SP1
1869; ResCSegmentFree@4 ; removed in Windows Vista SP1
1870; ResCSegmentGetData@8 ; removed in Windows Vista SP1
1871; ResCSegmentLoadFixedSize@4 ; removed in Windows Vista SP1
1872; ResCSegmentOpenMapping@8 ; removed in Windows Vista SP1
1873; ResCSegmentReserveMapping@16 ; removed in Windows Vista SP1
1874; ResCSetCacheSecurityType@4 ; removed in Windows Vista SP1
1875RtlAcquireSRWLockExclusive@4
1876RtlAcquireSRWLockShared@4
1877RtlAddMandatoryAce@24
1878RtlAddSIDToBoundaryDescriptor@8
1879RtlAllocateMemoryBlockLookaside@12
1880RtlAllocateMemoryZone@12
1881RtlBarrier@8
1882RtlBarrierForDelete@8
1883RtlCleanUpTEBLangLists@0
1884RtlCloneUserProcess@20
1885RtlCmDecodeMemIoResource@8
1886RtlCmEncodeMemIoResource@24
1887RtlCommitDebugInfo@8
1888RtlCompareAltitudes@8
1889RtlCompareUnicodeStrings@20
1890RtlConnectToSm@16
1891RtlConvertLCIDToString@20
1892RtlCreateBoundaryDescriptor@8
1893RtlCreateEnvironmentEx@12
1894RtlCreateMemoryBlockLookaside@20
1895RtlCreateMemoryZone@12
1896RtlCreateProcessParametersEx@44
1897RtlCreateServiceSid@12
1898RtlCreateUserStack@24
1899RtlCultureNameToLCID@8
1900RtlDeCommitDebugInfo@12
1901RtlDeleteBarrier@4
1902RtlDeleteBoundaryDescriptor@4
1903RtlDestroyMemoryBlockLookaside@4
1904RtlDestroyMemoryZone@4
1905RtlExitUserProcess@4
1906RtlExpandEnvironmentStrings@24
1907RtlExtendMemoryBlockLookaside@8
1908RtlExtendMemoryZone@8
1909RtlFindAceByType@12
1910RtlFindClosestEncodableLength@12
1911RtlFlsAlloc@8
1912RtlFlsFree@4
1913RtlFreeMemoryBlockLookaside@8
1914RtlFreeUserStack@4
1915RtlGetCurrentTransaction@0
1916RtlGetFileMUIPath@28
1917RtlGetIntegerAtom@8
1918RtlGetParentLocaleName@16
1919RtlGetProductInfo@20
1920RtlGetSystemPreferredUILanguages@20
1921RtlGetThreadLangIdByIndex@16
1922RtlGetThreadPreferredUILanguages@16
1923RtlGetUILanguageInfo@20
1924RtlGetUnloadEventTraceEx@12
1925RtlGetUserPreferredUILanguages@20
1926RtlHeapTrkInitialize@4
1927RtlIdnToAscii@20
1928RtlIdnToNameprepUnicode@20
1929RtlIdnToUnicode@20
1930RtlImpersonateSelfEx@12
1931RtlInitBarrier@12
1932RtlInitializeConditionVariable@4
1933RtlInitializeCriticalSectionEx@12
1934RtlInitializeNtUserPfn@24
1935RtlInitializeSRWLock@4
1936RtlIoDecodeMemIoResource@16
1937RtlIoEncodeMemIoResource@40
1938RtlIsCurrentThreadAttachExempt@0
1939RtlIsNormalizedString@16
1940RtlIsValidLocaleName@8
1941RtlLCIDToCultureName@8
1942RtlLcidToLocaleName@16
1943RtlLocaleNameToLcid@12
1944RtlLockCurrentThread@0
1945RtlLockMemoryBlockLookaside@4
1946RtlLockMemoryZone@4
1947RtlLockModuleSection@4
1948RtlNormalizeString@20
1949RtlOwnerAcesPresent@4
1950RtlProcessFlsData@4 ; Windows Vista-10 has ABI "RtlProcessFlsData@4", Windows 10 May 2019 Update (19H1 / 1903) and new has ABI "RtlProcessFlsData@8"
1951RtlQueryActivationContextApplicationSettings@28
1952RtlQueryCriticalSectionOwner@4 ; Windows Vista-8.1 has ABI "RtlQueryCriticalSectionOwner@4", Windows 10 and new has ABI "RtlQueryCriticalSectionOwner@8"
1953RtlQueryDynamicTimeZoneInformation@4
1954RtlQueryElevationFlags@4
1955RtlQueryEnvironmentVariable@24
1956RtlQueryModuleInformation@12
1957RtlRegisterThreadWithCsrss@0
1958RtlReleaseSRWLockExclusive@4
1959RtlReleaseSRWLockShared@4
1960RtlRemovePrivileges@12
1961RtlReportException@12
1962RtlResetMemoryBlockLookaside@4
1963RtlResetMemoryZone@4
1964RtlRetrieveNtUserPfn@12
1965RtlRunOnceBeginInitialize@12
1966RtlRunOnceComplete@12
1967RtlRunOnceExecuteOnce@16
1968RtlRunOnceInitialize@4
1969RtlSendMsgToSm@8
1970RtlSetCurrentTransaction@4
1971RtlSetDynamicTimeZoneInformation@4
1972RtlSetEnvironmentVar@20
1973RtlSetProcessDebugInformation@12
1974RtlSetThreadPreferredUILanguages@12
1975RtlSidDominates@12
1976RtlSidEqualLevel@12
1977RtlSidHashInitialize@12
1978RtlSidHashLookup@8
1979RtlSidIsHigherLevel@12
1980RtlSleepConditionVariableCS@12
1981RtlSleepConditionVariableSRW@16
1982RtlTestBit@8
1983RtlTryAcquirePebLock@0
1984RtlUnlockCurrentThread@0
1985RtlUnlockMemoryBlockLookaside@4
1986RtlUnlockMemoryZone@4
1987RtlUnlockModuleSection@4
1988RtlUpdateClonedCriticalSection@4
1989RtlUpdateClonedSRWLock@8
1990RtlUserThreadStart@8
1991RtlWakeAllConditionVariable@4
1992RtlWakeConditionVariable@4
1993RtlWerpReportException@16 ; Windows Vista-8 has ABI "RtlWerpReportException@16", Windows 8.1 and new has ABI "RtlWerpReportException@24"
1994RtlWow64CallFunction64@28
1995RtlWow64LogMessageInEventLogger@12 ; available only in 32-bit WoW64 version on 64-bit system
1996RtlpCleanupRegistryKeys@0
1997RtlpConvertCultureNamesToLCIDs@8
1998RtlpConvertLCIDsToCultureNames@8
1999RtlpCreateProcessRegistryInfo@4
2000RtlpGetLCIDFromLangInfoNode@12
2001RtlpGetNameFromLangInfoNode@12
2002RtlpGetSystemDefaultUILanguage@4 ; Windows Vista has ABI "RtlpGetSystemDefaultUILanguage@4", Windows 7 and new has ABI "RtlpGetSystemDefaultUILanguage@8"
2003RtlpGetUserOrMachineUILanguage4NLS@12
2004RtlpInitializeLangRegistryInfo@4
2005RtlpIsQualifiedLanguage@12
2006RtlpLoadMachineUIByPolicy@12
2007RtlpLoadUserUIByPolicy@12
2008RtlpMuiFreeLangRegistryInfo@4
2009RtlpMuiRegCreateRegistryInfo@0
2010RtlpMuiRegFreeRegistryInfo@8
2011RtlpMuiRegLoadRegistryInfo@8
2012RtlpQueryDefaultUILanguage@8
2013RtlpQueryProcessDebugInformationRemote@4 ; available only in 32-bit WoW64 version on 64-bit system, since Windows 10 Creators Update (Redstone 2 / 1703) available also in non-WoW64 version
2014RtlpRefreshCachedUILanguage@8
2015RtlpSetInstallLanguage@8
2016RtlpSetPreferredUILanguages@12
2017RtlpSetUserPreferredUILanguages@12
2018RtlpVerifyAndCommitUILanguageSettings@4
2019ShipAssert@8
2020ShipAssertGetBufferInfo@8
2021ShipAssertMsgA@12
2022ShipAssertMsgW@12
2023TpAllocAlpcCompletion@20
2024TpAllocCleanupGroup@4
2025TpAllocIoCompletion@20
2026TpAllocPool@8
2027TpAllocTimer@16
2028TpAllocWait@16
2029TpAllocWork@16
2030TpCallbackLeaveCriticalSectionOnCompletion@8
2031TpCallbackMayRunLong@4
2032TpCallbackReleaseMutexOnCompletion@8
2033TpCallbackReleaseSemaphoreOnCompletion@12
2034TpCallbackSetEventOnCompletion@8
2035TpCallbackUnloadDllOnCompletion@8
2036TpCancelAsyncIoOperation@4
2037TpCaptureCaller@4
2038TpCheckTerminateWorker@4
2039TpDbgDumpHeapUsage@12
2040TpDbgSetLogRoutine@4
2041TpDisassociateCallback@4
2042TpIsTimerSet@4
2043TpPostWork@4
2044TpReleaseAlpcCompletion@4
2045TpReleaseCleanupGroup@4
2046TpReleaseCleanupGroupMembers@12
2047TpReleaseIoCompletion@4
2048TpReleasePool@4
2049TpReleaseTimer@4
2050TpReleaseWait@4
2051TpReleaseWork@4
2052TpSetPoolMaxThreads@8
2053TpSetPoolMinThreads@8
2054TpSetTimer@16
2055TpSetWait@12
2056TpSimpleTryPost@12
2057TpStartAsyncIoOperation@4
2058TpWaitForAlpcCompletion@4
2059TpWaitForIoCompletion@8
2060TpWaitForTimer@8
2061TpWaitForWait@8
2062TpWaitForWork@8
2063WerCheckEventEscalation@8 ; removed in Windows 7
2064WerReportSQMEvent@16 ; Windows Vista has ABI "WerReportSQMEvent@12", Windows 7 and new has ABI "WerReportSQMEvent@16"
2065WerReportWatsonEvent@16 ; removed in Windows 7
2066WinSqmAddToStream@16
2067WinSqmEndSession@4
2068WinSqmEventEnabled@8
2069WinSqmEventWrite@12
2070WinSqmIsOptedIn@0
2071WinSqmSetString@12
2072WinSqmStartSession@12
2073ZwAcquireCMFViewOwnership@12 ; removed in Windows 7
2074ZwAlpcAcceptConnectPort@36
2075ZwAlpcCancelMessage@12
2076ZwAlpcConnectPort@44
2077ZwAlpcCreatePort@12
2078ZwAlpcCreatePortSection@24
2079ZwAlpcCreateResourceReserve@16
2080ZwAlpcCreateSectionView@12
2081ZwAlpcCreateSecurityContext@12
2082ZwAlpcDeletePortSection@12
2083ZwAlpcDeleteResourceReserve@12
2084ZwAlpcDeleteSectionView@12
2085ZwAlpcDeleteSecurityContext@12
2086ZwAlpcDisconnectPort@8
2087ZwAlpcImpersonateClientOfPort@12
2088ZwAlpcOpenSenderProcess@24
2089ZwAlpcOpenSenderThread@24
2090ZwAlpcQueryInformation@20
2091ZwAlpcQueryInformationMessage@24
2092ZwAlpcRevokeSecurityContext@12
2093ZwAlpcSendWaitReceivePort@32
2094ZwAlpcSetInformation@16
2095ZwCancelIoFileEx@12
2096ZwCancelSynchronousIoFile@12
2097; ZwClearAllSavepointsTransaction@4 ; removed in Windows Vista SP1
2098; ZwClearSavepointTransaction@8 ; removed in Windows Vista SP1
2099ZwCommitComplete@8
2100ZwCommitEnlistment@8
2101ZwCommitTransaction@8
2102ZwCreateEnlistment@32
2103ZwCreateKeyTransacted@32
2104ZwCreatePrivateNamespace@16
2105ZwCreateResourceManager@28
2106ZwCreateThreadEx@44
2107ZwCreateTransaction@40
2108ZwCreateTransactionManager@24
2109ZwCreateUserProcess@44
2110ZwCreateWorkerFactory@40
2111ZwDeletePrivateNamespace@4
2112ZwEnumerateTransactionObject@20
2113ZwFlushInstallUILanguage@8
2114ZwFlushProcessWriteBuffers@0
2115ZwFreezeRegistry@4
2116ZwFreezeTransactions@8
2117ZwGetMUIRegistryInfo@12
2118ZwGetNextProcess@20
2119ZwGetNextThread@24
2120ZwGetNlsSectionPtr@20
2121ZwGetNotificationResourceManager@28
2122ZwInitializeNlsFiles@16 ; Windows Vista has ABI "ZwInitializeNlsFiles@12", Windows Vista SP1 and SP2 has ABI "ZwInitializeNlsFiles@16", Windows 7 and new has again ABI "ZwInitializeNlsFiles@12"
2123ZwIsUILanguageComitted@0
2124; ZwListTransactions@12 ; removed in Windows Vista SP1
2125ZwMapCMFModule@24
2126; ZwMarshallTransaction@24 ; removed in Windows Vista SP1
2127ZwOpenEnlistment@20
2128ZwOpenKeyTransacted@16
2129ZwOpenPrivateNamespace@16
2130ZwOpenResourceManager@20
2131ZwOpenSession@12
2132ZwOpenTransaction@20
2133ZwOpenTransactionManager@24
2134ZwPrePrepareComplete@8
2135ZwPrePrepareEnlistment@8
2136ZwPrepareComplete@8
2137ZwPrepareEnlistment@8
2138ZwPropagationComplete@16
2139ZwPropagationFailed@12
2140; ZwPullTransaction@28 ; removed in Windows Vista SP1
2141ZwQueryInformationEnlistment@20
2142ZwQueryInformationResourceManager@20
2143ZwQueryInformationTransaction@20
2144ZwQueryInformationTransactionManager@20
2145ZwQueryInformationWorkerFactory@20
2146ZwQueryLicenseValue@20
2147ZwReadOnlyEnlistment@8
2148ZwRecoverEnlistment@8
2149ZwRecoverResourceManager@4
2150ZwRecoverTransactionManager@4
2151ZwRegisterProtocolAddressInformation@20
2152ZwReleaseCMFViewOwnership@0 ; removed in Windows 7
2153ZwReleaseWorkerFactoryWorker@4
2154ZwRemoveIoCompletionEx@24
2155ZwRollbackComplete@8
2156ZwRollbackEnlistment@8
2157; ZwRollbackSavepointTransaction@8 ; removed in Windows Vista SP1
2158ZwRollbackTransaction@8
2159ZwRollforwardTransactionManager@8
2160; ZwSavepointComplete@8 ; removed in Windows Vista SP1
2161; ZwSavepointTransaction@12 ; removed in Windows Vista SP1
2162ZwSetInformationEnlistment@16
2163ZwSetInformationResourceManager@16
2164ZwSetInformationTransaction@16
2165ZwSetInformationTransactionManager@16
2166ZwSetInformationWorkerFactory@16
2167ZwShutdownWorkerFactory@8
2168ZwSinglePhaseReject@8
2169; ZwStartTm@0 ; removed in Windows Vista SP1
2170ZwThawRegistry@0
2171ZwThawTransactions@0
2172ZwTraceControl@24
2173ZwWaitForWorkViaWorkerFactory@8 ; Windows Vista-7 has ABI "ZwWaitForWorkViaWorkerFactory@8", Windows 8 has ABI "ZwWaitForWorkViaWorkerFactory@16", Windows 8.1 and new has ABI "ZwWaitForWorkViaWorkerFactory@20"
2174ZwWorkerFactoryWorkerReady@4
2175ZwWow64CallFunction64@28 ; available only in 32-bit WoW64 version on 64-bit system
2176ZwWow64CsrVerifyRegion@8 ; available only in 32-bit WoW64 version on 64-bit system
2177ZwWow64WriteVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system
2178; _ResCGetRegistryFlags@16 ; removed in Windows Vista SP1
2179; _ResCMatchFlags@12 ; removed in Windows Vista SP1
2180; _ResCSaveRegistryFlags@16 ; removed in Windows Vista SP1
2181
2182; This is list of symbols added in Windows Vista SP1
2183LdrpResGetMappingSize@16
2184LdrpResGetRCConfig@20 ; removed in Windows 7
2185LdrpResGetResourceDirectory@20
2186NtRenameTransactionManager@8
2187NtReplacePartitionUnit@12
2188NtdllDefWindowProc_A@16 ; same as user32.DefWindowProcA
2189NtdllDefWindowProc_W@16 ; same as user32.DefWindowProcW
2190NtdllDialogWndProc_A@16 ; same as user32.DefDlgProcA
2191NtdllDialogWndProc_W@16 ; same as user32.DefDlgProcW
2192RtlDeregisterSecureMemoryCacheCallback@4
2193RtlInitializeExceptionChain@4
2194RtlNumberOfSetBitsUlongPtr@4
2195RtlpCheckDynamicTimeZoneInformation@8
2196ZwRenameTransactionManager@8
2197ZwReplacePartitionUnit@12
2198
2199; This is list of symbols added in Windows Vista SP2
2200RtlpInterlockedPopEntrySeqSListEnd@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7
2201RtlpInterlockedPopEntrySeqSListFault@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7
2202RtlpInterlockedPopEntrySeqSListResume@0 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 7
2203
2204; This is list of symbols added in Windows 7
2205AlpcRundownCompletionList@4
2206EtwEventWriteEx@40
2207EtwEventWriteNoRegistration@16
2208EvtIntReportAuthzEventAndSourceAsync@44
2209EvtIntReportEventAndSourceAsync@44
2210LdrGetDllHandleByMapping@8
2211LdrGetDllHandleByName@12
2212LdrResGetRCConfig@20
2213LdrRscIsTypeExist@16
2214LdrWx86FormatVirtualImage@12 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Creators Update (Redstone 2 / 1703)
2215NtAllocateReserveObject@12
2216NtCreateProfileEx@40
2217NtDisableLastKnownGood@0
2218NtDrawText@4
2219NtEnableLastKnownGood@0
2220NtNotifyChangeSession@32
2221NtOpenKeyEx@16
2222NtOpenKeyTransactedEx@20
2223NtQuerySecurityAttributesToken@24
2224NtQuerySystemInformationEx@24
2225NtQueueApcThreadEx@24
2226NtSerializeBoot@0
2227NtSetIoCompletionEx@24
2228NtSetTimerEx@16
2229NtUmsThreadYield@4
2230NtWow64GetCurrentProcessorNumberEx@4 ; available only in 32-bit WoW64 version on 64-bit system
2231NtWow64InterlockedPopEntrySList@4 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 8
2232RtlAcquireReleaseSRWLockExclusive@4
2233RtlAddIntegrityLabelToBoundaryDescriptor@8
2234RtlContractHashTable@4
2235RtlCopyExtendedContext@12
2236RtlCreateHashTable@12
2237RtlCreateProcessReflection@24
2238RtlCreateVirtualAccountSid@16
2239RtlDeleteHashTable@4
2240RtlDetectHeapLeaks@0
2241RtlDisableThreadProfiling@4
2242RtlEnableThreadProfiling@20
2243RtlEndEnumerationHashTable@8
2244RtlEndWeakEnumerationHashTable@8
2245RtlEnumerateEntryHashTable@8
2246RtlEthernetAddressToStringA@8
2247RtlEthernetAddressToStringW@8
2248RtlEthernetStringToAddressA@12
2249RtlEthernetStringToAddressW@12
2250RtlExpandHashTable@4
2251RtlFillMemoryUlonglong@16
2252RtlGetCurrentProcessorNumberEx@4
2253RtlGetEnabledExtendedFeatures@8
2254RtlGetExtendedContextLength@8
2255RtlGetExtendedFeaturesMask@4
2256RtlGetFullPathName_UEx@20
2257RtlGetLocaleFileMappingAddress@12
2258RtlGetNextEntryHashTable@8
2259RtlGetProcessPreferredUILanguages@16
2260RtlInitEnumerationHashTable@8
2261RtlInitWeakEnumerationHashTable@8
2262RtlInitializeExtendedContext@12
2263RtlInsertEntryHashTable@16
2264RtlInterlockedClearBitRun@12
2265RtlInterlockedSetBitRun@12
2266RtlIsNameInExpression@16
2267RtlKnownExceptionFilter@4
2268RtlLoadString@32
2269RtlLocateExtendedFeature@12
2270RtlLocateLegacyContext@8
2271RtlLookupEntryHashTable@12
2272RtlQueryPerformanceCounter@4
2273RtlQueryPerformanceFrequency@4
2274RtlQueryThreadProfiling@8
2275RtlReadThreadProfilingData@12
2276RtlRemoveEntryHashTable@12
2277RtlReplaceSidInSd@16
2278RtlReportSilentProcessExit@8
2279RtlReportSqmEscalation@24
2280RtlSetExtendedFeaturesMask@12
2281RtlSetProcessPreferredUILanguages@12
2282RtlSetUserCallbackExceptionFilter@4 ; available only in 32-bit WoW64 version on 64-bit system
2283RtlTryAcquireSRWLockExclusive@4
2284RtlTryAcquireSRWLockShared@4
2285RtlUTF8ToUnicodeN@20
2286RtlUnicodeToUTF8N@20
2287RtlWeaklyEnumerateEntryHashTable@8
2288SbExecuteProcedure@20
2289SbSelectProcedure@16
2290TpAllocAlpcCompletionEx@20
2291TpAlpcRegisterCompletionList@4
2292TpAlpcUnregisterCompletionList@4
2293TpCallbackIndependent@4
2294TpDbgGetFreeInfo@8 ; removed in Windows 8
2295TpDisablePoolCallbackChecks@4
2296TpPoolFreeUnusedNodes@4 ; removed in Windows 8
2297TpQueryPoolStackInformation@8
2298TpSetDefaultPoolMaxThreads@4
2299TpSetDefaultPoolStackInformation@4
2300TpSetPoolStackInformation@8
2301WinSqmAddToAverageDWORD@12
2302WinSqmAddToStreamEx@20
2303WinSqmCheckEscalationAddToStreamEx@20
2304WinSqmCheckEscalationSetDWORD64@20
2305WinSqmCheckEscalationSetDWORD@16
2306WinSqmCheckEscalationSetString@16
2307WinSqmCommonDatapointDelete@4
2308WinSqmCommonDatapointSetDWORD64@16
2309WinSqmCommonDatapointSetDWORD@12
2310WinSqmCommonDatapointSetStreamEx@20
2311WinSqmCommonDatapointSetString@12
2312WinSqmGetEscalationRuleStatus@8
2313WinSqmGetInstrumentationProperty@16
2314WinSqmIncrementDWORD@12
2315WinSqmIsOptedInEx@4
2316WinSqmSetDWORD64@16
2317WinSqmSetDWORD@12
2318WinSqmSetEscalationInfo@16
2319WinSqmSetIfMaxDWORD@12
2320WinSqmSetIfMinDWORD@12
2321ZwAllocateReserveObject@12
2322ZwCreateProfileEx@40
2323ZwDisableLastKnownGood@0
2324ZwDrawText@4
2325ZwEnableLastKnownGood@0
2326ZwNotifyChangeSession@32
2327ZwOpenKeyEx@16
2328ZwOpenKeyTransactedEx@20
2329ZwQuerySecurityAttributesToken@24
2330ZwQuerySystemInformationEx@24
2331ZwQueueApcThreadEx@24
2332ZwSerializeBoot@0
2333ZwSetIoCompletionEx@24
2334ZwSetTimerEx@16
2335ZwUmsThreadYield@4
2336ZwWow64GetCurrentProcessorNumberEx@4 ; available only in 32-bit WoW64 version on 64-bit system
2337ZwWow64InterlockedPopEntrySList@4 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 (Threshold / 1507)
2338
2339; This is list of ordinal-only symbols added in Windows 7
2340; Symbol names are taken from:
2341; https://www.geoffchappell.com/studies/windows/win32/ntdll/history/ords61.htm
2342; AitLogFeatureUsageByApp@4 @1 NONAME ; removed in Windows 10 (Threshold / 1507)
2343; AitFireParentUsageEvent@16 @2 NONAME ; removed in Windows 10 (Threshold / 1507)
2344; SbtLogSystemUsageByParent@32 @3 NONAME ; removed in Windows 10 (Threshold / 1507)
2345; SbtLogSystemUsageByStack@28 @4 NONAME ; FIXME: Windows 7 has ABI @28, Windows 8 and 8.1 has ABI @20, removed in Windows 10 (Threshold / 1507)
2346; SbtDisableForCurrentProcess@0 @5 NONAME ; removed in Windows 10 (Threshold / 1507)
2347; SbtLogDllMapping@8 @6 NONAME ; FIXME: Windows 7 has ABI @8, Windows 8 and 8.1 has ABI @0, removed in Windows 10 (Threshold / 1507)
2348; SbtLogExeInitializing@0 @7 NONAME ; removed in Windows 10 (Threshold / 1507)
2349; RtlDispatchAPC@12 @8 NONAME ; since Windows 10 Creators Update (Redstone 2 / 1703) available as normal symbol
2350
2351; This is list of symbols added in Windows 7 SP1
2352RtlCopyContext@12
2353
2354; This is list of symbols added in Windows 8
2355ApiSetQueryApiSetPresence@8
2356EtwEventSetInformation@20
2357LdrAddDllDirectory@8
2358LdrAppxHandleIntegrityFailure@4
2359LdrGetDllDirectory@4
2360LdrGetDllFullName@8
2361LdrGetDllPath@16
2362LdrGetProcedureAddressForCaller@24
2363LdrProcessRelocationBlockEx@20
2364LdrQueryOptionalDelayLoadedAPI@16
2365LdrRemoveDllDirectory@4
2366LdrResolveDelayLoadedAPI@24
2367LdrResolveDelayLoadsFromDll@12
2368LdrSetDefaultDllDirectories@4
2369LdrSetDllDirectory@4
2370LdrStandardizeSystemPath@4
2371LdrSystemDllInitBlock DATA
2372NtAddAtomEx@16
2373NtAdjustTokenClaimsAndDeviceGroups@64
2374NtAlertThreadByThreadId@4
2375NtAlpcConnectPortEx@44
2376NtAssociateWaitCompletionPacket@32
2377NtCancelWaitCompletionPacket@8
2378NtCreateDirectoryObjectEx@20
2379NtCreateIRTimer@12 ; Windows 8-10 has ABI "NtCreateIRTimer@8", Windows 10 Creators Update (Redstone 2 / 1703) and new has ABI "NtCreateIRTimer@12"
2380NtCreateLowBoxToken@36
2381NtCreateTokenEx@68
2382NtCreateWaitCompletionPacket@12
2383NtCreateWnfStateName@28
2384NtDeleteWnfStateData@8
2385NtDeleteWnfStateName@4
2386NtFilterBootOption@20
2387NtFilterTokenEx@56
2388NtFlushBuffersFileEx@20
2389NtGetCachedSigningLevel@24
2390NtQueryWnfStateData@24
2391NtQueryWnfStateNameInformation@20
2392NtSetCachedSigningLevel@20
2393NtSetIRTimer@8
2394NtSetInformationVirtualMemory@24
2395NtSubscribeWnfStateChange@16
2396NtUnmapViewOfSectionEx@12
2397NtUnsubscribeWnfStateChange@4
2398NtUpdateWnfStateData@28
2399NtWaitForAlertByThreadId@8
2400; NtWaitForWnfNotifications@8 ; removed in Windows 8.1
2401; NtWow64AllocateVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system
2402RtlAddResourceAttributeAce@28
2403RtlAddScopedPolicyIDAce@20
2404RtlAllocateWnfSerializationGroup@0
2405RtlAppxIsFileOwnedByTrustedInstaller@8
2406RtlAvlInsertNodeEx@16
2407RtlAvlRemoveNode@8
2408RtlCanonicalizeDomainName@12
2409RtlCheckPortableOperatingSystem@4
2410RtlCheckTokenCapability@12
2411RtlCheckTokenMembership@12
2412RtlCheckTokenMembershipEx@16
2413RtlClearBit@8
2414RtlCopyBitMap@12
2415RtlCrc32@12
2416RtlCrc64@16
2417RtlCreateHashTableEx@16
2418RtlDecompressBufferEx@28
2419RtlDeleteElementGenericTableAvlEx@8
2420RtlEqualWnfChangeStamps@8
2421RtlExtractBitMap@16
2422RtlFlushHeaps@0
2423RtlGetAppContainerNamedObjectPath@16
2424RtlGetExePath@8
2425RtlGetSearchPath@4
2426RtlGetSystemTimePrecise@0
2427RtlInterlockedPushListSListEx@16
2428RtlIsCapabilitySid@4
2429RtlIsPackageSid@4
2430RtlIsUntrustedObject@12
2431RtlLengthSidAsUnicodeString@8
2432RtlNumberOfClearBitsInRange@12
2433RtlNumberOfSetBitsInRange@12
2434RtlPublishWnfStateData@24
2435RtlQueryPackageIdentity@24
2436RtlQueryRegistryValuesEx@20
2437RtlQueryUnbiasedInterruptTime@4
2438RtlQueryValidationRunlevel@4
2439RtlQueryWnfMetaNotification@20
2440RtlQueryWnfStateData@24
2441RtlQueryWnfStateDataWithExplicitScope@28
2442RtlRbInsertNodeEx@16
2443RtlRbRemoveNode@8
2444RtlRegisterForWnfMetaNotification@24
2445RtlReleasePath@4
2446RtlResetNtUserPfn@0
2447RtlSetBit@8
2448RtlSetPortableOperatingSystem@4
2449RtlSetSearchPathMode@4
2450RtlSubscribeWnfStateChangeNotification@36
2451RtlTestAndPublishWnfStateData@28
2452RtlTryConvertSRWLockSharedToExclusiveOrRelease@4
2453RtlUnsubscribeWnfNotificationWaitForCompletion@4
2454RtlUnsubscribeWnfNotificationWithCompletionCallback@12
2455RtlUnsubscribeWnfStateChangeNotification@4
2456RtlWaitForWnfMetaNotification@24
2457RtlWaitOnAddress@16
2458RtlWakeAddressAll@4
2459RtlWakeAddressAllNoFence@4
2460RtlWakeAddressSingle@4
2461RtlWakeAddressSingleNoFence@4
2462RtlWnfCompareChangeStamp@8 ; removed in Windows 11 2024 Update (Hudson Valley / 24H2)
2463RtlWnfDllUnloadCallback@4
2464RtlpConvertAbsoluteToRelativeSecurityAttribute@12
2465RtlpConvertRelativeToAbsoluteSecurityAttribute@16
2466RtlpFreezeTimeBias DATA
2467RtlpMergeSecurityAttributeInformation@16
2468; RtlpWnfNotificationThread@16 ; removed in Windows 8.1
2469TpAllocJobNotification@20
2470TpCallbackDetectedUnrecoverableError@4
2471TpReleaseJobNotification@4
2472TpSetPoolThreadBasePriority@8
2473TpSetTimerEx@16
2474TpSetWaitEx@16
2475TpTimerOutstandingCallbackCount@4
2476TpWaitForJobNotification@4
2477WinSqmIsSessionDisabled@4
2478ZwAddAtomEx@16
2479ZwAdjustTokenClaimsAndDeviceGroups@64
2480ZwAlertThreadByThreadId@4
2481ZwAlpcConnectPortEx@44
2482ZwAssociateWaitCompletionPacket@32
2483ZwCancelWaitCompletionPacket@8
2484ZwCreateDirectoryObjectEx@20
2485ZwCreateIRTimer@12 ; Windows 8-10 has ABI "ZwCreateIRTimer@8", Windows 10 Creators Update (Redstone 2 / 1703) and new has ABI "ZwCreateIRTimer@12"
2486ZwCreateLowBoxToken@36
2487ZwCreateTokenEx@68
2488ZwCreateWaitCompletionPacket@12
2489ZwCreateWnfStateName@28
2490ZwDeleteWnfStateData@8
2491ZwDeleteWnfStateName@4
2492ZwFilterBootOption@20
2493ZwFilterTokenEx@56
2494ZwFlushBuffersFileEx@20
2495ZwGetCachedSigningLevel@24
2496ZwQueryWnfStateData@24
2497ZwQueryWnfStateNameInformation@20
2498ZwSetCachedSigningLevel@20
2499ZwSetIRTimer@8
2500ZwSetInformationVirtualMemory@24
2501ZwSubscribeWnfStateChange@16
2502ZwUnmapViewOfSectionEx@12
2503ZwUnsubscribeWnfStateChange@4
2504ZwUpdateWnfStateData@28
2505ZwWaitForAlertByThreadId@8
2506; ZwWaitForWnfNotifications@8 ; removed in Windows 8.1
2507; ZwWow64AllocateVirtualMemory64@28 ; available only in 32-bit WoW64 version on 64-bit system
2508
2509; This is list of symbols added in Windows 8.1
2510LdrSetImplicitPathOptions@8
2511NtCancelTimer2@8
2512NtCreateTimer2@20
2513NtGetCompleteWnfStateSubscription@24
2514NtSetTimer2@16
2515NtSetWnfProcessNotificationEvent@4
2516PssNtCaptureSnapshot@16
2517PssNtDuplicateSnapshot@20
2518PssNtFreeRemoteSnapshot@8
2519PssNtFreeSnapshot@4
2520PssNtFreeWalkMarker@4
2521PssNtQuerySnapshot@16
2522PssNtValidateDescriptor@8
2523PssNtWalkSnapshot@20
2524RtlAddProcessTrustLabelAce@24
2525RtlAllocateAndInitializeSidEx@16
2526RtlGetAppContainerParent@8
2527RtlGetAppContainerSidType@8
2528RtlIsParentOfChildAppContainer@8
2529RtlIsValidProcessTrustLabelSid@4
2530RtlQueryPackageIdentityEx@28
2531RtlSidDominatesForTrust@12
2532RtlStringFromGUIDEx@12
2533RtlTestProtectedAccess@8
2534RtlValidProcessProtection@4
2535TpCallbackSendAlpcMessageOnCompletion@16
2536TpCallbackSendPendingAlpcMessage@4
2537WinSqmStartSessionForPartner@16
2538ZwCancelTimer2@8
2539ZwCreateTimer2@20
2540ZwGetCompleteWnfStateSubscription@24
2541ZwSetTimer2@16
2542ZwSetWnfProcessNotificationEvent@4
2543
2544; This is list of symbols added in Windows 10 (Threshold / 1507)
2545DbgUiConvertStateChangeStructureEx@8
2546LdrFastFailInLoaderCallout@0
2547NtAlpcImpersonateClientContainerOfPort@12
2548NtCompareObjects@8
2549NtCreatePartition@16 ; Windows 10 has ABI "NtCreatePartition@20", Windows 10 November Update (Threshold 2 / 1511) and new has ABI "NtCreatePartition@16"
2550NtGetCurrentProcessorNumberEx@4
2551NtManagePartition@20
2552NtOpenPartition@12
2553NtRevertContainerImpersonation@0
2554NtSetInformationSymbolicLink@16
2555; NtWow64IsProcessorFeaturePresent@4 ; available only in 32-bit WoW64 version on 64-bit system
2556RtlCapabilityCheck@12
2557RtlCheckSandboxedToken@8
2558RtlConvertDeviceFamilyInfoToString@16
2559RtlConvertSRWLockExclusiveToShared@4
2560RtlDecodeRemotePointer@12
2561RtlDeriveCapabilitySidsFromName@12
2562RtlEncodeRemotePointer@12
2563RtlEndStrongEnumerationHashTable@8
2564RtlFindUnicodeSubstring@12
2565RtlGetDeviceFamilyInfoEnum@12
2566RtlGetInterruptTimePrecise@4
2567RtlInitStringEx@8
2568RtlInitStrongEnumerationHashTable@8
2569RtlInitializeSidEx@0
2570RtlIsMultiSessionSku@0
2571RtlIsProcessorFeaturePresent@4
2572RtlOsDeploymentState@4
2573RtlQueryPackageClaims@32 ; Windows 10 has ABI "RtlQueryPackageClaims@28", Windows 10 Anniversary Update (Redstone / 1607) and new has ABI "RtlQueryPackageClaims@32"
2574RtlQueryProtectedPolicy@8
2575RtlQueryResourcePolicy@16
2576RtlSetProtectedPolicy@12
2577RtlSetThreadSubProcessTag@4
2578RtlStronglyEnumerateEntryHashTable@8
2579RtlSwitchedVVI@16
2580RtlpGetDeviceFamilyInfoEnum@12
2581TpSetPoolMaxThreadsSoftLimit@8
2582TpSetPoolWorkerThreadIdleTimeout@12
2583TpTrimPools@0
2584WinSqmStartSqmOptinListener@0
2585ZwAlpcImpersonateClientContainerOfPort@12
2586ZwCompareObjects@8
2587ZwCreatePartition@16 ; Windows 10 has ABI "ZwCreatePartition@20", Windows 10 November Update (Threshold 2 / 1511) and new has ABI "ZwCreatePartition@16"
2588ZwGetCurrentProcessorNumberEx@4
2589ZwManagePartition@20
2590ZwOpenPartition@12
2591ZwRevertContainerImpersonation@0
2592ZwSetInformationSymbolicLink@16
2593; ZwWow64IsProcessorFeaturePresent@4 ; available only in 32-bit WoW64 version on 64-bit system
2594
2595; This is list of symbols added in Windows 10 November Update (Threshold 2 / 1511)
2596NtCreateEnclave@36
2597NtInitializeEnclave@20
2598NtLoadEnclaveData@36
2599RtlGetCurrentServiceSessionId@0
2600RtlWow64GetCurrentMachine@0
2601ZwCreateEnclave@36
2602ZwInitializeEnclave@20
2603ZwLoadEnclaveData@36
2604
2605; This is list of symbols added in Windows 10 Anniversary Update (Redstone / 1607)
2606NtCommitRegistryTransaction@8
2607NtCreateRegistryTransaction@16
2608NtOpenRegistryTransaction@12
2609NtQuerySecurityPolicy@24
2610NtRollbackRegistryTransaction@8
2611NtSetCachedSigningLevel2@24
2612RtlAreLongPathsEnabled@0
2613RtlCheckBootStatusIntegrity@8
2614RtlClearThreadWorkOnBehalfTicket@0
2615RtlFindExportedRoutineByName@8
2616RtlGetActiveConsoleId@0
2617RtlGetConsoleSessionForegroundProcessId@0
2618RtlGetSuiteMask@0
2619RtlGetThreadWorkOnBehalfTicket@8
2620RtlGuardCheckLongJumpTarget@12
2621; RtlIsLongPathAwareProcessByManifest@0 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2622RtlIsMultiUsersInSessionSku@0
2623RtlLocateExtendedFeature2@16
2624RtlReplaceSystemDirectoryInPath@16
2625RtlReportExceptionEx@20
2626RtlRestoreBootStatusDefaults@4
2627RtlSetThreadWorkOnBehalfTicket@4
2628; RtlSparseBitmapCtxAreAllClear@20 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2629; RtlSparseBitmapCtxAreAllSet@20 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2630; RtlSparseBitmapCtxCheckBit@12 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2631; RtlSparseBitmapCtxCleanup@4 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2632; RtlSparseBitmapCtxClearBits@24 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2633; RtlSparseBitmapCtxClearBitsEx@32 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2634; RtlSparseBitmapCtxCountBitsSet@4 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2635; RtlSparseBitmapCtxFindNextBitSet@12 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2636; RtlSparseBitmapCtxFindSetRuns@36 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2637; RtlSparseBitmapCtxInitialize@4 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2638; RtlSparseBitmapCtxMetadataForBit@16 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2639; RtlSparseBitmapCtxOrBitmap@8 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2640; RtlSparseBitmapCtxPrepareBits@20 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2641; RtlSparseBitmapCtxSetBits@24 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2642; RtlSparseBitmapCtxSetBitsEx@32 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2643; RtlSparseBitmapCtxStart@8 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2644; RtlSparseBitmapCtxSubtractBitmap@12 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2645; RtlSparseBitmapEnumerateBitmap@12 ; removed in Windows 10 Creators Update (Redstone 2 / 1703)
2646RtlWow64GetProcessMachines@12
2647RtlWow64IsWowGuestMachineSupported@8
2648; Wow64Transition DATA ; available only in 32-bit WoW64 version on 64-bit system
2649ZwCommitRegistryTransaction@8
2650ZwCreateRegistryTransaction@16
2651ZwOpenRegistryTransaction@12
2652ZwQuerySecurityPolicy@24
2653ZwRollbackRegistryTransaction@8
2654ZwSetCachedSigningLevel2@24
2655
2656; This is list of symbols added in Windows 10 Creators Update (Redstone 2 / 1703)
2657LdrParentInterlockedPopEntrySList DATA
2658LdrParentRtlInitializeNtUserPfn DATA
2659LdrParentRtlResetNtUserPfn DATA
2660LdrParentRtlRetrieveNtUserPfn DATA
2661LdrUpdatePackageSearchPath@4
2662LdrpChildNtdll DATA
2663NtAcquireProcessActivityReference@12
2664NtCompareSigningLevels@8
2665; NtContinueCHPE@8 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Fall Creators Update (Redstone 3 / 1709)
2666NtConvertBetweenAuxiliaryCounterAndPerformanceCounter@16
2667; NtLoadHotPatch@8 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809)
2668NtQueryAuxiliaryCounterFrequency@4
2669NtQueryInformationByName@20
2670RtlAddAccessFilterAce@32
2671RtlCreateUserProcessEx@20
2672RtlDispatchAPC@12 ; before Windows 10 Creators Update (Redstone 2 / 1703) available as ordinal-only symbol
2673RtlGetNtSystemRoot@0
2674RtlGetSessionProperties@8
2675RtlGetTokenNamedObjectPath@12
2676RtlIsElevatedRid@4
2677RtlIsNonEmptyDirectoryReparsePointAllowed@4
2678; RtlIsPlaceholderFileHandle@8 ; removed in Windows 10 Fall Creators Update (Redstone 3 / 1709)
2679; RtlIsPlaceholderFileInfo@12 ; removed in Windows 10 Fall Creators Update (Redstone 3 / 1709)
2680RtlLookupFirstMatchingElementGenericTableAvl@12
2681; RtlLookupFunctionEntryCHPE@12 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Fall Creators Update (Redstone 3 / 1709)
2682; RtlUnwindEx@24 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Fall Creators Update (Redstone 3 / 1709)
2683WerReportExceptionWorker@4
2684ZwAcquireProcessActivityReference@12
2685ZwCompareSigningLevels@8
2686; ZwContinueCHPE@8 ; available only in 32-bit WoW64 version on 64-bit system, removed in Windows 10 Fall Creators Update (Redstone 3 / 1709)
2687ZwConvertBetweenAuxiliaryCounterAndPerformanceCounter@16
2688; ZwLoadHotPatch@8 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809)
2689ZwQueryAuxiliaryCounterFrequency@4
2690ZwQueryInformationByName@20
2691
2692; This is list of symbols added in Windows 10 Fall Creators Update (Redstone 3 / 1709)
2693EtwCheckCoverage@4
2694LdrCallEnclave@12
2695LdrControlFlowGuardEnforced@0
2696LdrCreateEnclave@36
2697LdrDeleteEnclave@4
2698LdrInitializeEnclave@20
2699LdrLoadEnclaveModule@12
2700NtCallEnclave@16
2701NtNotifyChangeDirectoryFileEx@40
2702NtQueryDirectoryFileEx@40
2703NtTerminateEnclave@8
2704RtlCapabilityCheckForSingleSessionSku@12
2705RtlCheckSystemBootStatusIntegrity@4
2706RtlDosLongPathNameToNtPathName_U_WithStatus@16
2707RtlDosLongPathNameToRelativeNtPathName_U_WithStatus@16
2708RtlExtendCorrelationVector@4
2709RtlGetSystemBootStatus@16
2710RtlGetSystemBootStatusEx@12
2711RtlIncrementCorrelationVector@4
2712RtlInitializeCorrelationVector@12
2713RtlIsCloudFilesPlaceholder@8
2714RtlIsCurrentProcess@4
2715RtlIsCurrentThread@4
2716RtlIsPartialPlaceholder@8
2717RtlIsPartialPlaceholderFileHandle@8
2718RtlIsPartialPlaceholderFileInfo@12
2719RtlIsStateSeparationEnabled@0
2720RtlQueryImageMitigationPolicy@20
2721RtlQueryThreadPlaceholderCompatibilityMode@0
2722RtlRestoreSystemBootStatusDefaults@0
2723RtlSetImageMitigationPolicy@20
2724RtlSetProxiedProcessId@4
2725RtlSetSystemBootStatus@16
2726RtlSetSystemBootStatusEx@12
2727RtlSetThreadPlaceholderCompatibilityMode@4
2728RtlValidateCorrelationVector@4
2729RtlWow64GetEquivalentMachineCHPE@4
2730RtlWow64GetSharedInfoProcess@12
2731; RtlWow64PopAllCrossProcessWork@4 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809)
2732; RtlWow64PopCrossProcessWork@4 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809)
2733; RtlWow64PushCrossProcessWork@8 ; removed in Windows 10 October 2018 Update (Redstone 5 / 1809)
2734ZwCallEnclave@16
2735ZwNotifyChangeDirectoryFileEx@40
2736ZwQueryDirectoryFileEx@40
2737ZwTerminateEnclave@8
2738
2739; This is list of symbols added in Windows 10 April 2018 Update (Redstone 4 / 1803)
2740NtAllocateVirtualMemoryEx@28
2741NtMapViewOfSectionEx@36
2742RtlGetPersistedStateLocation@28
2743RtlIsNameInUnUpcasedExpression@16
2744RtlQueryProcessPlaceholderCompatibilityMode@0
2745RtlQueryRegistryValueWithFallback@28
2746RtlQueryTokenHostIdAsUlong64@8
2747RtlRaiseCustomSystemEventTrigger@4
2748RtlSetProcessPlaceholderCompatibilityMode@4
2749ZwAllocateVirtualMemoryEx@28
2750ZwMapViewOfSectionEx@36
2751
2752; This is list of symbols added in Windows 10 October 2018 Update (Redstone 5 / 1809)
2753ApiSetQueryApiSetPresenceEx@12
2754LdrIsModuleSxsRedirected@4
2755NtCreateSectionEx@36
2756NtManageHotPatch@16
2757RtlCreateProcessParametersWithTemplate@12
2758RtlGetExtendedContextLength2@16
2759RtlGetMultiTimePrecise@12
2760RtlInitializeExtendedContext2@20
2761; RtlUserFiberStart@0
2762RtlpTimeFieldsToTime@12
2763RtlpTimeToTimeFields@12
2764ZwCreateSectionEx@36
2765ZwManageHotPatch@16
2766
2767; This is list of symbols added in Windows 10 May 2019 Update (19H1 / 1903)
2768NtCreateCrossVmEvent@24
2769RtlConstructCrossVmEventPath@12
2770RtlDoesNameContainWildCards@4
2771RtlFlsGetValue@8
2772RtlFlsSetValue@8
2773RtlUdiv128@28
2774TpSetPoolThreadCpuSets@12
2775ZwCreateCrossVmEvent@24
2776
2777; In Windows 10 November 2019 Update (19H2 /1909) was not added any new symbol
2778
2779; This is list of symbols added in Windows 10 May 2020 Update (20H1 / 2004)
2780NtAcquireCrossVmMutant@8
2781NtAllocateUserPhysicalPagesEx@20
2782NtContinueEx@8
2783NtCreateCrossVmMutant@24
2784NtDirectGraphicsCall@20
2785NtLoadKey3@32
2786NtPssCaptureVaSpaceBulk@20
2787RtlConstructCrossVmMutexPath@12
2788; RtlDisownModuleHeapAllocation@8
2789RtlFreeUTF8String@4
2790RtlGetReturnAddressHijackTarget@0
2791RtlInitUTF8String@8
2792RtlInitUTF8StringEx@8
2793RtlIsZeroMemory@8
2794RtlNormalizeSecurityDescriptor@20
2795RtlNotifyFeatureUsage@4
2796RtlQueryAllFeatureConfigurations@16
2797RtlQueryFeatureConfiguration@16
2798RtlQueryFeatureConfigurationChangeStamp@0
2799RtlQueryFeatureUsageNotificationSubscriptions@8
2800RtlRegisterFeatureConfigurationChangeNotification@16
2801RtlRestoreThreadPreferredUILanguages@4
2802RtlSetFeatureConfigurations@16
2803RtlSetThreadPreferredUILanguages2@16
2804RtlSubscribeForFeatureUsageNotification@8
2805RtlUTF8StringToUnicodeString@12
2806RtlUnicodeStringToUTF8String@12
2807RtlUnregisterFeatureConfigurationChangeNotification@4
2808RtlUnsubscribeFromFeatureUsageNotifications@8
2809ZwAcquireCrossVmMutant@8
2810ZwAllocateUserPhysicalPagesEx@20
2811ZwContinueEx@8
2812ZwCreateCrossVmMutant@24
2813ZwDirectGraphicsCall@20
2814ZwLoadKey3@32
2815ZwPssCaptureVaSpaceBulk@20
2816
2817; In Windows 10 October 2020 Update (20H2) was not added any new symbol
2818
2819; In Windows 10 May 2021 Update (21H1) was not added any new symbol
2820
2821; This is list of symbols added in Windows 10 November 2021 Update (21H2)
2822RtlGetSystemTimeAndBias@12
2823
2824; In Windows 10 2022 Update (22H2) was not added any new symbol
2825
2826; This is list of symbols added in Windows 11 (Sun Valley / 21H2) (WoW64 version)
2827; LdrHotPatchNotify@4
2828; MicrosoftTelemetryAssertTriggeredUM@4
2829NtChangeProcessState@24
2830NtChangeThreadState@24
2831NtCreateIoRing@20
2832NtCreateProcessStateChange@20
2833NtCreateThreadStateChange@20
2834NtQueryIoRingCapabilities@8
2835NtQueueApcThreadEx2@28
2836NtReadVirtualMemoryEx@24
2837NtSetInformationIoRing@16
2838NtSubmitIoRing@16
2839RtlCompareExchangePointerMapping@16
2840RtlCompareExchangePropertyStore@16
2841; RtlConvertHostPerfCounterToPerfCounter@20
2842RtlDelayExecution@8
2843RtlGetImageFileMachines@8
2844RtlGetSystemGlobalData@12
2845RtlIsApiSetImplemented@4
2846RtlIsEnclaveFeaturePresent@4
2847RtlQueryPointerMapping@8
2848RtlQueryPropertyStore@8
2849RtlRemovePointerMapping@8
2850RtlRemovePropertyStore@8
2851RtlRestoreContext ; cdecl
2852ZwChangeProcessState@24
2853ZwChangeThreadState@24
2854ZwCreateIoRing@20
2855ZwCreateProcessStateChange@20
2856ZwCreateThreadStateChange@20
2857ZwQueryIoRingCapabilities@8
2858ZwQueueApcThreadEx2@28
2859ZwReadVirtualMemoryEx@24
2860ZwSetInformationIoRing@16
2861ZwSubmitIoRing@16
2862
2863; This is list of symbols added in Windows 11 2022 Update (Sun Valley 2 / 22H2) (WoW64 version)
2864; NtCopyFileChunk@40
2865; NtCreateCpuPartition@20 ; Windows 10 has ABI "NtCreateCpuPartition@12", Windows 11 2024 Update (Hudson Valley / 24H2) and new has ABI "NtCreateCpuPartition@20"
2866; NtOpenCpuPartition@12
2867; NtQueryInformationCpuPartition@20
2868; NtSetInformationCpuPartition@28
2869; RtlOverwriteFeatureConfigurationBuffer@16
2870; TpWorkOnBehalfClearTicket@4
2871; TpWorkOnBehalfSetTicket@8
2872; ZwCopyFileChunk@40
2873; ZwCreateCpuPartition@20 ; Windows 10 has ABI "ZwCreateCpuPartition@12", Windows 11 2024 Update (Hudson Valley / 24H2) and new has ABI "ZwCreateCpuPartition@20"
2874; ZwOpenCpuPartition@12
2875; ZwQueryInformationCpuPartition@20
2876; ZwSetInformationCpuPartition@28
2877
2878; This is list of symbols added in Windows 11 2023 Update (Sun Valley 3 / 23H2) (WoW64 version)
2879; RtlIsFeatureEnabledForEnterprise@4
2880
2881; This is list of symbols added in Windows 11 2024 Update (Hudson Valley / 24H2) (WoW64 version)
2882; NtAlertMultipleThreadByThreadId@16
2883; NtAlertThreadByThreadIdEx@8
2884; NtSetEventEx@12
2885; NtWow64GetCurrentProcessorNumber@0
2886; RtlFlsAllocEx@12
2887; RtlFlsGetValue2@4
2888; RtlGetAcesBufferSize@8
2889; RtlGetCurrentThreadPrimaryGroup@0
2890; RtlGetFeatureToggleConfiguration@12
2891; RtlGetFeatureTogglesChangeToken@0
2892; RtlLogUnexpectedCodepath@4
2893; RtlNotifyFeatureToggleUsage@12
2894; RtlQueryAllInternalFeatureConfigurations@16
2895; RtlRcuAllocate@4
2896; RtlRcuFree@4
2897; RtlRcuReadLock@0
2898; RtlRcuReadUnlock@0
2899; RtlRcuSynchronize@4
2900; RtlTlsAlloc@4
2901; RtlTlsFree@4
2902; RtlTlsSetValue@8
2903; RtlValidateUserCallTarget@8
2904; RtlXRestore@12
2905; RtlXSave@12
2906; ZwAlertMultipleThreadByThreadId@16
2907; ZwAlertThreadByThreadIdEx@8
2908; ZwSetEventEx@12
2909; ZwWow64GetCurrentProcessorNumber@0
2910
2911; This is list of symbols added in Windows 11 2025 Update (Hudson Valley 2 / 25H2) (WoW64 version)
2912; ApiSetGetImplementationHost@12
2913; ApiSetQuerySchema@8
2914; RtlQueryAllInternalRuntimeFeatureConfigurations@20
2915; RtlQueryInternalFeatureConfiguration@16
lib/libc/mingw/lib32/odbc32.def+4
...@@ -6,6 +6,8 @@ CursorLibLockDbc@8...@@ -6,6 +6,8 @@ CursorLibLockDbc@8
6CursorLibLockDesc@86CursorLibLockDesc@8
7CursorLibLockStmt@87CursorLibLockStmt@8
8CursorLibTransact@128CursorLibTransact@12
9DllBidEntryPoint@36
10GetODBCSharedData@0
9LockHandle@1211LockHandle@12
10MpHeapAlloc12MpHeapAlloc
11MpHeapCompact13MpHeapCompact
...@@ -39,6 +41,7 @@ SQLBrowseConnectA@24...@@ -39,6 +41,7 @@ SQLBrowseConnectA@24
39SQLBrowseConnectW@2441SQLBrowseConnectW@24
40SQLBulkOperations@842SQLBulkOperations@8
41SQLCancel@443SQLCancel@4
44SQLCancelHandle@8
42SQLCloseCursor@445SQLCloseCursor@4
43SQLColAttribute@2846SQLColAttribute@28
44SQLColAttributeA@2847SQLColAttributeA@28
...@@ -52,6 +55,7 @@ SQLColumnPrivilegesW@36...@@ -52,6 +55,7 @@ SQLColumnPrivilegesW@36
52SQLColumns@3655SQLColumns@36
53SQLColumnsA@3656SQLColumnsA@36
54SQLColumnsW@3657SQLColumnsW@36
58SQLCompleteAsync@12
55SQLConnect@2859SQLConnect@28
56SQLConnectA@2860SQLConnectA@28
57SQLConnectW@2861SQLConnectW@28
lib/libc/mingw/lib32/oleacc.def+10-5
...@@ -1,21 +1,26 @@...@@ -1,21 +1,26 @@
1;1;
2; Definition file of OLEACC.dll2; Definition file of OLEACC.dll
3; Automatic generated by gendef3; Automatic generated by gendef 1.1
4; written by Kai Tietz 20084; written by Kai Tietz 2008
5; The def file has to be processed by --kill-at (-k) option of dlltool or ld
5;6;
6LIBRARY "OLEACC.dll"7LIBRARY "OLEACC.dll"
7EXPORTS8EXPORTS
8DllRegisterServer@09;DllRegisterServer@0
9DllUnregisterServer@010;DllUnregisterServer@0
11AccGetRunningUtilityState@12
12AccNotifyTouchInteraction@16
13AccSetRunningUtilityState@12
10AccessibleChildren@2014AccessibleChildren@20
11AccessibleObjectFromEvent@2015AccessibleObjectFromEvent@20
12AccessibleObjectFromPoint@1616AccessibleObjectFromPoint@16
13AccessibleObjectFromWindow@1617AccessibleObjectFromWindow@16
18AccessibleObjectFromWindowTimeout@24
14CreateStdAccessibleObject@1619CreateStdAccessibleObject@16
15CreateStdAccessibleProxyA@2020CreateStdAccessibleProxyA@20
16CreateStdAccessibleProxyW@2021CreateStdAccessibleProxyW@20
17DllCanUnloadNow@022;DllCanUnloadNow@0
18DllGetClassObject@1223;DllGetClassObject@12
19GetOleaccVersionInfo@824GetOleaccVersionInfo@8
20GetProcessHandleFromHwnd@425GetProcessHandleFromHwnd@4
21GetRoleTextA@1226GetRoleTextA@12
lib/libc/mingw/libsrc/ativscp-uuid.c deleted-16
...@@ -1,16 +0,0 @@
1/* ativscp-uuid.c */
2/* Generate GUIDs for ActiveScript interfaces */
3
4/* All IIDs defined in this file were extracted from
5 * HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\ */
6
7/* All CLSIDs defined in this file were extracted from
8 * HKEY_CLASSES_ROOT\CLSID\ */
9
10#define INITGUID
11#include <basetyps.h>
12DEFINE_GUID(IID_IActiveScript,0xbb1a2ae1,0xa4f9,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64);
13DEFINE_GUID(IID_IActiveScriptError,0xeae1ba61,0xa4ed,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64);
14DEFINE_GUID(IID_IActiveScriptParse,0xbb1a2ae2,0xa4f9,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64);
15DEFINE_GUID(IID_IActiveScriptSite,0xdb01a1e3,0xa42b,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64);
16DEFINE_GUID(IID_IActiveScriptSiteWindow,0xd10f6761,0x83e9,0x11cf,0x8f,0x20,0,0x80,0x5f,0x2c,0xd0,0x64);
lib/libc/mingw/libsrc/uuid.c+1
...@@ -14,6 +14,7 @@...@@ -14,6 +14,7 @@
14#define INITGUID14#define INITGUID
15#include <basetyps.h>15#include <basetyps.h>
1616
17#include <activscp.h>
17#include <credentialprovider.h>18#include <credentialprovider.h>
18#include <httprequest.h>19#include <httprequest.h>
19#include <functiondiscoverykeys.h>20#include <functiondiscoverykeys.h>
lib/libc/mingw/math/acospi.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11double __cdecl acospi(double x)
12{
13 return acos(x) / __pi_type(x);
14}
lib/libc/mingw/math/acospif.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11float __cdecl acospif(float x)
12{
13 return acosf(x) / __pi_type(x);
14}
lib/libc/mingw/math/acospil.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11long double __cdecl acospil(long double x)
12{
13 return acosl(x) / __pi_type(x);
14}
lib/libc/mingw/math/asinpi.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11double __cdecl asinpi(double x)
12{
13 return asin(x) / __pi_type(x);
14}
lib/libc/mingw/math/asinpif.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11float __cdecl asinpif(float x)
12{
13 return asinf(x) / __pi_type(x);
14}
lib/libc/mingw/math/asinpil.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11long double __cdecl asinpil(long double x)
12{
13 return asinl(x) / __pi_type(x);
14}
lib/libc/mingw/math/atan2pi.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11double __cdecl atan2pi(double y, double x)
12{
13 return atan2(y, x) / __pi_type(y);
14}
lib/libc/mingw/math/atan2pif.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11float __cdecl atan2pif(float y, float x)
12{
13 return atan2f(y, x) / __pi_type(y);
14}
lib/libc/mingw/math/atan2pil.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11long double __cdecl atan2pil(long double y, long double x)
12{
13 return atan2l(y, x) / __pi_type(y);
14}
lib/libc/mingw/math/atanpi.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11double __cdecl atanpi(double x)
12{
13 return atan(x) / __pi_type(x);
14}
lib/libc/mingw/math/atanpif.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11float __cdecl atanpif(float x)
12{
13 return atanf(x) / __pi_type(x);
14}
lib/libc/mingw/math/atanpil.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11long double __cdecl atanpil(long double x)
12{
13 return atanl(x) / __pi_type(x);
14}
lib/libc/mingw/math/cospi.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11double __cdecl cospi(double x)
12{
13 x = fmod(x, 2.0);
14 return cos(x * __pi_type(x));
15}
lib/libc/mingw/math/cospif.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11float __cdecl cospif(float x)
12{
13 x = fmodf(x, 2.0F);
14 return cosf(x * __pi_type(x));
15}
lib/libc/mingw/math/cospil.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11long double __cdecl cospil(long double x)
12{
13 x = fmodl(x, 2.0L);
14 return cosl(x * __pi_type(x));
15}
lib/libc/mingw/math/pi_const.h created+17
...@@ -0,0 +1,17 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#define __pi_type(x) \
8__builtin_choose_expr ( \
9 __builtin_types_compatible_p (__typeof__ (x), float), \
10 3.14159265F, \
11 __builtin_choose_expr ( \
12 __builtin_types_compatible_p (__typeof__ (x), double), \
13 3.14159265358979323846, \
14 __builtin_choose_expr ( \
15 __builtin_types_compatible_p (__typeof__ (x), long double), \
16 3.1415926535897932384626433832795029L, \
17 __builtin_trap())))
lib/libc/mingw/math/sinpi.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11double __cdecl sinpi(double x)
12{
13 x = remainder(x, 2.0);
14 return sin(x * __pi_type(x));
15}
lib/libc/mingw/math/sinpif.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11float __cdecl sinpif(float x)
12{
13 x = remainderf(x, 2.0F);
14 return sinf(x * __pi_type(x));
15}
lib/libc/mingw/math/sinpil.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11long double __cdecl sinpil(long double x)
12{
13 x = remainderl(x, 2.0L);
14 return sinl(x * __pi_type(x));
15}
lib/libc/mingw/math/tanpi.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11double __cdecl tanpi(double x)
12{
13 x = remainder(x, 2.0);
14 return tan(x * __pi_type(x));
15}
lib/libc/mingw/math/tanpif.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11float __cdecl tanpif(float x)
12{
13 x = remainderf(x, 2.0F);
14 return tanf(x * __pi_type(x));
15}
lib/libc/mingw/math/tanpil.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <math.h>
8
9#include "pi_const.h"
10
11long double __cdecl tanpil(long double x)
12{
13 x = remainderl(x, 2.0L);
14 return tanl(x * __pi_type(x));
15}
lib/libc/mingw/misc/__mingw_filename_cp.c created+33
...@@ -0,0 +1,33 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef WIN32_LEAN_AND_MEAN
8#define WIN32_LEAN_AND_MEAN
9#endif
10#include <windows.h>
11#include <locale.h>
12
13/* By default the ANSI (ACP) is used, fallack to default ANSI when function AreFileApisANSI() is not available */
14static BOOL WINAPI fallbackAreFileApisANSI(VOID) { return TRUE; }
15
16unsigned int __cdecl __mingw_filename_cp(void)
17{
18 if (___lc_codepage_func() == CP_UTF8)
19 return CP_UTF8;
20
21 /* Function AreFileApisANSI() is not available in older Windows versions, so resolve it at runtime */
22 static __typeof__(AreFileApisANSI) *myAreFileApisANSI = NULL;
23 if (!myAreFileApisANSI) {
24 FARPROC farproc = NULL;
25 HMODULE kernel32 = GetModuleHandleA("kernel32.dll");
26 if (kernel32)
27 farproc = GetProcAddress(kernel32, "AreFileApisANSI");
28 if (!farproc)
29 farproc = (FARPROC)(PVOID)fallbackAreFileApisANSI;
30 (void)InterlockedExchangePointer((PVOID*)&myAreFileApisANSI, (PVOID)farproc);
31 }
32 return myAreFileApisANSI() ? CP_ACP : CP_OEMCP;
33}
lib/libc/mingw/misc/__mingw_isleadbyte_cp.c created+42
...@@ -0,0 +1,42 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef WIN32_LEAN_AND_MEAN
8#define WIN32_LEAN_AND_MEAN
9#endif
10#include <windows.h>
11#include <locale.h>
12
13static BOOL WINAPI fallback_IsDBCSLeadByteEx(UINT cp, BYTE c)
14{
15 int i;
16 CPINFO cp_info;
17 if (GetCPInfo(cp, &cp_info) && cp_info.MaxCharSize == 2) {
18 for (i = 0; i < MAX_LEADBYTES && cp_info.LeadByte[i]; i += 2) {
19 if (c >= cp_info.LeadByte[i] && c <= cp_info.LeadByte[i+1])
20 return TRUE;
21 }
22 }
23 return FALSE;
24}
25
26_Static_assert(__builtin_types_compatible_p(__typeof__(fallback_IsDBCSLeadByteEx), __typeof__(IsDBCSLeadByteEx)),
27 "Functions fallback_IsDBCSLeadByteEx() and IsDBCSLeadByteEx() are not compatible");
28
29int __cdecl __mingw_isleadbyte_cp(int c, unsigned int cp)
30{
31 static __typeof__(IsDBCSLeadByteEx) *call_IsDBCSLeadByteEx = NULL;
32 if (!call_IsDBCSLeadByteEx) {
33 FARPROC farproc = NULL;
34 HMODULE kernel32 = GetModuleHandleA("kernel32.dll");
35 if (kernel32)
36 farproc = GetProcAddress(kernel32, "IsDBCSLeadByteEx");
37 if (!farproc)
38 farproc = (FARPROC)(PVOID)fallback_IsDBCSLeadByteEx;
39 (void)InterlockedExchangePointer((PVOID*)&call_IsDBCSLeadByteEx, (PVOID)farproc);
40 }
41 return call_IsDBCSLeadByteEx(cp, c);
42}
lib/libc/mingw/misc/_assert.c created+46
...@@ -0,0 +1,46 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <assert.h>
8#include <fcntl.h>
9#include <io.h>
10#include <stdio.h>
11#include <stdlib.h>
12
13/* This is import symbol name for "_assert" from CRT DLL library */
14extern void (__cdecl *__MINGW_IMP_SYMBOL(__msvcrt_assert))(const char *message, const char *file, unsigned line);
15
16/* Turn off _O_WTEXT, _O_U16TEXT or _O_U8TEXT mode on stderr stream
17 * by changing mode to _O_TEXT, because fprintf (called by __msvcrt_assert)
18 * does not work (and does nothing) on FILE* stream in some of those modes.
19 * Only fwprintf works with those modes, but _assert uses fprintf.
20 * Before changing the FILE* stream mode, it is required to flush buffers. */
21void __cdecl _assert(const char *message, const char *file, unsigned line)
22{
23 /* stderr expands to function call */
24 FILE *stream = stderr;
25 /* Cache fd used by `stderr` */
26 int fd = _fileno (stream);
27 /* We need to restore previous mode in case `_assert` returns; it can happen
28 * if program has called _set_error_mode(_OUT_TO_MSGBOX) and user pressed
29 * "Ignore" button in popped up message box. */
30 int oldmode;
31
32 /* Change `stderr` mode to `_O_TEXT` */
33 fflush(stream);
34 oldmode = _setmode(fd, _O_TEXT);
35
36 /* Call CRT `_assert` */
37 __MINGW_IMP_SYMBOL(__msvcrt_assert)(message, file, line);
38
39 /* Restore `stderr` mode to `oldmode` */
40 fflush (stream);
41 if (_setmode (fd, oldmode) != _O_TEXT) {
42 abort ();
43 }
44}
45
46void (__cdecl *__MINGW_IMP_SYMBOL(_assert))(const char *message, const char *file, unsigned line) = _assert;
lib/libc/mingw/misc/btowc.c created+32
...@@ -0,0 +1,32 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#define __LARGE_MBSTATE_T
8
9#include <limits.h> /* MB_LEN_MAX */
10#include <wchar.h>
11#include <stdio.h> /* EOF */
12#include <stdlib.h> /* MB_CUR_MAX */
13
14wint_t btowc (int c)
15{
16 if (c == EOF)
17 return (WEOF);
18
19 /* Use dummy string so that mbrtowc will never return (size_t)-2 */
20 char str[MB_LEN_MAX] = {(unsigned char) c, 0, 0, 0, 0};
21
22 wint_t wc = WEOF;
23 mbstate_t state = {0};
24
25 if (mbrtowc (&wc, (char *) str, MB_CUR_MAX, &state) == (size_t) -1) {
26 return WEOF;
27 }
28
29 return wc;
30}
31
32wint_t (__cdecl *__MINGW_IMP_SYMBOL (btowc)) (int) = btowc;
lib/libc/mingw/misc/dirent.c+14-2
...@@ -152,7 +152,13 @@ _treaddir (_TDIR * dirp)...@@ -152,7 +152,13 @@ _treaddir (_TDIR * dirp)
152 {152 {
153 /* We haven't started the search yet. */153 /* We haven't started the search yet. */
154 /* Start the search */154 /* Start the search */
155 dirp->dd_handle = _tfindfirst (dirp->dd_name, &(dirp->dd_dta));155 dirp->dd_handle =
156#ifdef _WIN64
157 _tfindfirst64i32
158#else
159 _tfindfirst32
160#endif
161 (dirp->dd_name, &(dirp->dd_dta));
156162
157 if (dirp->dd_handle == -1)163 if (dirp->dd_handle == -1)
158 {164 {
...@@ -168,7 +174,13 @@ _treaddir (_TDIR * dirp)...@@ -168,7 +174,13 @@ _treaddir (_TDIR * dirp)
168 else174 else
169 {175 {
170 /* Get the next search entry. */176 /* Get the next search entry. */
171 if (_tfindnext (dirp->dd_handle, &(dirp->dd_dta)))177 if (
178#ifdef _WIN64
179 _tfindnext64i32
180#else
181 _tfindnext32
182#endif
183 (dirp->dd_handle, &(dirp->dd_dta)))
172 {184 {
173 /* We are off the end or otherwise error.185 /* We are off the end or otherwise error.
174 _findnext sets errno to ENOENT if no more file186 _findnext sets errno to ENOENT if no more file
lib/libc/mingw/misc/dirname.c+4-3
...@@ -7,6 +7,7 @@...@@ -7,6 +7,7 @@
7#define WIN32_LEAN_AND_MEAN7#define WIN32_LEAN_AND_MEAN
8#endif8#endif
9#include <stdlib.h>9#include <stdlib.h>
10#include <locale.h>
10#include <libgen.h>11#include <libgen.h>
11#include <windows.h>12#include <windows.h>
1213
...@@ -91,7 +92,7 @@ do_get_path_info(struct path_info* info, char* path)...@@ -91,7 +92,7 @@ do_get_path_info(struct path_info* info, char* path)
91 int dbcs_tb, prev_dir_sep, dir_sep;92 int dbcs_tb, prev_dir_sep, dir_sep;
9293
93 /* Get the code page for paths in the same way as `fopen()`. */94 /* Get the code page for paths in the same way as `fopen()`. */
94 cp = AreFileApisANSI() ? CP_ACP : CP_OEMCP;95 cp = __mingw_filename_cp();
9596
96 /* Set the structure to 'no data'. */97 /* Set the structure to 'no data'. */
97 info->prefix_end = NULL;98 info->prefix_end = NULL;
...@@ -112,7 +113,7 @@ do_get_path_info(struct path_info* info, char* path)...@@ -112,7 +113,7 @@ do_get_path_info(struct path_info* info, char* path)
112113
113 if(dbcs_tb)114 if(dbcs_tb)
114 dbcs_tb = 0;115 dbcs_tb = 0;
115 else if(IsDBCSLeadByteEx(cp, *pos))116 else if(__mingw_isleadbyte_cp(*pos, cp))
116 dbcs_tb = 1;117 dbcs_tb = 1;
117 else118 else
118 dir_sep = IS_DIR_SEP(*pos);119 dir_sep = IS_DIR_SEP(*pos);
...@@ -156,7 +157,7 @@ do_get_path_info(struct path_info* info, char* path)...@@ -156,7 +157,7 @@ do_get_path_info(struct path_info* info, char* path)
156157
157 if(dbcs_tb)158 if(dbcs_tb)
158 dbcs_tb = 0;159 dbcs_tb = 0;
159 else if(IsDBCSLeadByteEx(cp, *pos))160 else if(__mingw_isleadbyte_cp(*pos, cp))
160 dbcs_tb = 1;161 dbcs_tb = 1;
161 else162 else
162 dir_sep = IS_DIR_SEP(*pos);163 dir_sep = IS_DIR_SEP(*pos);
lib/libc/mingw/misc/dllmain.c+1-1
...@@ -1,4 +1,4 @@...@@ -1,4 +1,4 @@
1#include <oscalls.h>1#include <windows.h>
2#define _DECL_DLLMAIN2#define _DECL_DLLMAIN
3#include <process.h>3#include <process.h>
44
lib/libc/mingw/misc/fedisableexcept.c created+11
...@@ -0,0 +1,11 @@
1#define _GNU_SOURCE
2#include <fenv.h>
3#include <internal.h>
4
5int __cdecl fedisableexcept(int excepts)
6{
7 if (excepts & ~FE_ALL_EXCEPT) return -1;
8 int old_excepts = fegetexcept();
9 __mingw_controlfp(excepts, excepts);
10 return old_excepts;
11}
lib/libc/mingw/misc/feenableexcept.c created+11
...@@ -0,0 +1,11 @@
1#define _GNU_SOURCE
2#include <fenv.h>
3#include <internal.h>
4
5int __cdecl feenableexcept(int excepts)
6{
7 if (excepts & ~FE_ALL_EXCEPT) return -1;
8 int old_excepts = fegetexcept();
9 __mingw_controlfp(0, excepts);
10 return old_excepts;
11}
lib/libc/mingw/misc/fegetenv.c+3-2
...@@ -13,11 +13,12 @@...@@ -13,11 +13,12 @@
13int fegetenv(fenv_t *env)13int fegetenv(fenv_t *env)
14{14{
15#if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__))15#if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__))
16 unsigned int x87, sse;16 unsigned int x87, sse = 0;
17 __mingw_control87_2(0, 0, &x87, &sse);17 __mingw_control87_2(0, 0, &x87, &sse);
18 env->_Fe_ctl = fenv_encode(x87, sse);18 env->_Fe_ctl = fenv_encode(x87, sse);
19 __mingw_setfp(NULL, 0, &x87, 0);19 __mingw_setfp(NULL, 0, &x87, 0);
20 __mingw_setfp_sse(NULL, 0, &sse, 0);20 if (__mingw_has_sse())
21 __mingw_setfp_sse(NULL, 0, &sse, 0);
21 env->_Fe_stat = fenv_encode(x87, sse);22 env->_Fe_stat = fenv_encode(x87, sse);
22#else23#else
23 env->_Fe_ctl = fenv_encode(0, __mingw_controlfp(0, 0));24 env->_Fe_ctl = fenv_encode(0, __mingw_controlfp(0, 0));
lib/libc/mingw/misc/fegetexcept.c created+8
...@@ -0,0 +1,8 @@
1#define _GNU_SOURCE
2#include <fenv.h>
3#include <internal.h>
4
5int __cdecl fegetexcept(void)
6{
7 return ~__mingw_controlfp(0, 0) & FE_ALL_EXCEPT;
8}
lib/libc/mingw/misc/fegetexceptflag.c+3-2
...@@ -15,9 +15,10 @@...@@ -15,9 +15,10 @@
15int fegetexceptflag(fexcept_t *status, int excepts)15int fegetexceptflag(fexcept_t *status, int excepts)
16{16{
17#if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__))17#if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__))
18 unsigned int x87, sse;18 unsigned int x87, sse = 0;
19 __mingw_setfp(NULL, 0, &x87, 0);19 __mingw_setfp(NULL, 0, &x87, 0);
20 __mingw_setfp_sse(NULL, 0, &sse, 0);20 if (__mingw_has_sse())
21 __mingw_setfp_sse(NULL, 0, &sse, 0);
21 *status = fenv_encode(x87 & excepts, sse & excepts);22 *status = fenv_encode(x87 & excepts, sse & excepts);
22#else23#else
23 *status = fenv_encode(0, __mingw_statusfp() & excepts);24 *status = fenv_encode(0, __mingw_statusfp() & excepts);
lib/libc/mingw/misc/ftime32.c created+38
...@@ -0,0 +1,38 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <stdint.h>
8#include <errno.h>
9#include <sys/timeb.h>
10
11int __cdecl ftime32(struct __timeb32 *tb32);
12int __cdecl ftime32(struct __timeb32 *tb32)
13{
14 /*
15 * Both 32-bit and 64-bit MS _ftime functions have void return value and do not signal overflow.
16 * So if 32-bit POSIX ftime function wants to detect overflow it has to call 64-bit _ftime function.
17 * msvc defines ftime as alias to _ftime, which always fills all members even if they overflow.
18 * So for compatibility with application code written for msvc ftime function, always fill
19 * in our mingw-w64 POSIX ftime function all __timeb32 members, even if they are overflowed.
20 * And if overflow happens, correctly sets errno to EOVERFLOW and returns negative value.
21 */
22 struct __timeb64 tb64;
23 _ftime64(&tb64);
24 tb32->time = (__time32_t)tb64.time; /* truncate */
25 tb32->millitm = tb64.millitm;
26 tb32->timezone = tb64.timezone;
27 tb32->dstflag = tb64.dstflag;
28 if (tb64.time < INT32_MIN || tb64.time > INT32_MAX) {
29 errno = EOVERFLOW;
30 return -1;
31 }
32 return 0;
33}
34
35/* On 32-bit systems is ftime ABI using 32-bit time_t */
36#ifndef _WIN64
37int __attribute__ ((alias("ftime32"))) __cdecl ftime(struct timeb *);
38#endif
lib/libc/mingw/misc/ftime64.c created+19
...@@ -0,0 +1,19 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <sys/timeb.h>
8
9int __cdecl ftime64(struct __timeb64 *tb64);
10int __cdecl ftime64(struct __timeb64 *tb64)
11{
12 _ftime64(tb64);
13 return 0;
14}
15
16/* On 64-bit systems is ftime ABI using 64-bit time_t */
17#ifdef _WIN64
18int __attribute__ ((alias("ftime64"))) __cdecl ftime(struct timeb *);
19#endif
lib/libc/mingw/misc/ftruncate.c deleted-8
...@@ -1,8 +0,0 @@
1
2int _chsize(int _FileHandle,long _Size);
3int ftruncate(int __fd,int __length);
4
5int ftruncate(int __fd,int __length)
6{
7 return _chsize (__fd,__length);
8}
lib/libc/mingw/misc/getopt.c+2-1
...@@ -319,6 +319,7 @@ getopt_internal(int nargc, char * const *nargv, const char *options,...@@ -319,6 +319,7 @@ getopt_internal(int nargc, char * const *nargv, const char *options,
319{319{
320 char *oli; /* option letter list index */320 char *oli; /* option letter list index */
321 int optchar, short_too;321 int optchar, short_too;
322 size_t var_size;
322 static int posixly_correct = -1;323 static int posixly_correct = -1;
323324
324 if (options == NULL)325 if (options == NULL)
...@@ -339,7 +340,7 @@ getopt_internal(int nargc, char * const *nargv, const char *options,...@@ -339,7 +340,7 @@ getopt_internal(int nargc, char * const *nargv, const char *options,
339 * optreset != 0 for GNU compatibility.340 * optreset != 0 for GNU compatibility.
340 */341 */
341 if (posixly_correct == -1 || optreset != 0)342 if (posixly_correct == -1 || optreset != 0)
342 posixly_correct = (GetEnvironmentVariableW(L"POSIXLY_CORRECT", NULL, 0) != 0);343 posixly_correct = (getenv_s(&var_size, NULL, 0, "POSIXLY_CORRECT") == 0 && var_size > 0);
343 if (*options == '-')344 if (*options == '-')
344 flags |= FLAG_ALLARGS;345 flags |= FLAG_ALLARGS;
345 else if (posixly_correct || *options == '+')346 else if (posixly_correct || *options == '+')
lib/libc/mingw/misc/mb_wc_common.h deleted-9
...@@ -1,9 +0,0 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <_mingw.h>
8
9unsigned int __cdecl ___lc_codepage_func(void);
lib/libc/mingw/misc/memalignment.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <stddef.h>
8
9size_t memalignment(const void *p);
10
11size_t memalignment(const void *p)
12{
13 return (size_t)p & -(size_t)p;
14}
lib/libc/mingw/misc/memset_explicit.c created+16
...@@ -0,0 +1,16 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#define __CRT__NO_INLINE
8#include <string.h>
9
10void * __cdecl
11memset_explicit (void *d, int c, size_t len)
12{
13 memset(d, c, len);
14 __asm__ __volatile__("" ::: "memory");
15 return d;
16}
lib/libc/mingw/misc/mingw_controlfp.c+22-2
...@@ -7,7 +7,14 @@...@@ -7,7 +7,14 @@
7#include "internal.h"7#include "internal.h"
88
9#if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__))9#if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__))
10/* Internal MinGW version of _control87_2 */10/* Internal MinGW version of MS __control87_2 with following differences:
11 * - Availability:
12 * - MinGW provides both i386 and x64 implementation
13 * - MS provides only i386 implementation and only for msvcr80+
14 * - Usage of x87 fwait instruction which triggers pending x87 exceptions:
15 * - MinGW does not call it
16 * - MS calls it before reading x87 cw
17 */
11int __mingw_control87_2( unsigned int newval, unsigned int mask,18int __mingw_control87_2( unsigned int newval, unsigned int mask,
12 unsigned int *x86_cw, unsigned int *sse2_cw )19 unsigned int *x86_cw, unsigned int *sse2_cw )
13{20{
...@@ -30,7 +37,20 @@ int __mingw_control87_2( unsigned int newval, unsigned int mask,...@@ -30,7 +37,20 @@ int __mingw_control87_2( unsigned int newval, unsigned int mask,
30}37}
31#endif38#endif
3239
33/* Internal MinGW version of _control87 */40/* Internal MinGW version of MS _control87 with following differences:
41 * - Usage of x87 fwait instruction which triggers pending x87 exceptions:
42 * - MinGW does not call it
43 * - MS x64 does not call it
44 * - MS i386 calls it before reading x87 cw
45 * - Source of the flags:
46 * - MinGW i386 and x64 returns from both x87 and SSE2
47 * - MS i386 msvcrt from Vista+ and msvcr80+ returns from both x87 and SSE2
48 * - MS i386 msvcrt before Vista and pre-msvcr80 returns from x87
49 * - MS x64 returns from SSE2
50 * This makes behavior of MinGW version same for all builds,
51 * always returns information from both x87 and SSE2 and
52 * never triggers pending x87 exceptions.
53 */
34unsigned int __mingw_controlfp(unsigned int newval, unsigned int mask)54unsigned int __mingw_controlfp(unsigned int newval, unsigned int mask)
35{55{
36 unsigned int flags = 0;56 unsigned int flags = 0;
lib/libc/mingw/misc/mingw_mbwc_convert.c+63-6
...@@ -1,22 +1,51 @@...@@ -1,22 +1,51 @@
1#include <stdlib.h>1#include <stdlib.h>
2#include <stdio.h>2#include <stdio.h>
3#include <wchar.h>3#include <wchar.h>
4#include <errno.h>
4#include <windows.h>5#include <windows.h>
5#include <winnls.h>6#include <winnls.h>
67
7int __cdecl __mingw_str_wide_utf8(const wchar_t * const wptr, char **mbptr, size_t *buflen)8int __cdecl __mingw_str_wide_utf8(const wchar_t * const wptr, char **mbptr, size_t *buflen)
8{9{
9 size_t len;10 int len;
10 char *buf;11 char *buf;
11 int ret = 0;12 int ret = 0;
1213
13 len = WideCharToMultiByte(CP_UTF8, 0, wptr, -1, NULL, 0, NULL, NULL); /* Get utf-8 string length */14 len = WideCharToMultiByte(CP_UTF8, 0, wptr, -1, NULL, 0, NULL, NULL); /* Get utf-8 string length */
15 if (len <= 0) {
16 switch (GetLastError()) {
17 case ERROR_INVALID_PARAMETER: /* CP_UTF8 is not supported */
18 case ERROR_INVALID_FLAGS: /* CP_UTF8 is not supported */
19 errno = ENOSYS;
20 *mbptr = NULL;
21 if (buflen != NULL) *buflen = 0;
22 return 0;
23 case NO_ERROR:
24 if (len == 0)
25 break;
26 /* fallthrough */
27 default:
28 errno = EINVAL;
29 *mbptr = NULL;
30 if (buflen != NULL) *buflen = 0;
31 return 0;
32 }
33 }
14 buf = calloc(len + 1, sizeof (char)); /* Can we assume sizeof char always = 1? */34 buf = calloc(len + 1, sizeof (char)); /* Can we assume sizeof char always = 1? */
1535
16 if(!buf) len = 0;36 if(!buf) len = 0;
17 else {37 else {
18 if (len != 0) ret = WideCharToMultiByte(CP_UTF8, 0, wptr, -1, buf, len, NULL, NULL); /*Do actual conversion*/38 if (len != 0) {
19 buf[len] = '0'; /* Must terminate */39 ret = WideCharToMultiByte(CP_UTF8, 0, wptr, -1, buf, len, NULL, NULL); /*Do actual conversion*/
40 if (ret < 0 || (ret == 0 && GetLastError() != NO_ERROR)) {
41 free(buf);
42 errno = EINVAL;
43 *mbptr = NULL;
44 if (buflen != NULL) *buflen = 0;
45 return 0;
46 }
47 }
48 buf[len] = '\0'; /* Must terminate */
20 }49 }
21 *mbptr = buf; /* Set string pointer to allocated buffer */50 *mbptr = buf; /* Set string pointer to allocated buffer */
22 if(buflen != NULL) *buflen = (len) * sizeof (char); /* Give length of allocated memory if needed. */51 if(buflen != NULL) *buflen = (len) * sizeof (char); /* Give length of allocated memory if needed. */
...@@ -25,17 +54,45 @@ int __cdecl __mingw_str_wide_utf8(const wchar_t * const wptr, char **mbptr, size...@@ -25,17 +54,45 @@ int __cdecl __mingw_str_wide_utf8(const wchar_t * const wptr, char **mbptr, size
2554
26int __cdecl __mingw_str_utf8_wide(const char *const mbptr, wchar_t **wptr, size_t *buflen)55int __cdecl __mingw_str_utf8_wide(const char *const mbptr, wchar_t **wptr, size_t *buflen)
27{56{
28 size_t len;57 int len;
29 wchar_t *buf;58 wchar_t *buf;
30 int ret = 0;59 int ret = 0;
3160
32 len = MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, mbptr, -1, NULL, 0); /* Get converted size */61 len = MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, mbptr, -1, NULL, 0); /* Get converted size */
62 if (len <= 0) {
63 switch (GetLastError()) {
64 case ERROR_INVALID_PARAMETER: /* CP_UTF8 or MB_ERR_INVALID_CHARS is not supported */
65 case ERROR_INVALID_FLAGS: /* CP_UTF8 or MB_ERR_INVALID_CHARS is not supported */
66 errno = ENOSYS;
67 *wptr = NULL;
68 if (buflen != NULL) *buflen = 0;
69 return 0;
70 case NO_ERROR:
71 if (len == 0)
72 break;
73 /* fallthrough */
74 default:
75 errno = EINVAL;
76 *wptr = NULL;
77 if (buflen != NULL) *buflen = 0;
78 return 0;
79 }
80 }
33 buf = calloc(len + 1, sizeof (wchar_t)); /* Allocate memory accordingly */81 buf = calloc(len + 1, sizeof (wchar_t)); /* Allocate memory accordingly */
3482
35 if(!buf) len = 0;83 if(!buf) len = 0;
36 else {84 else {
37 if (len != 0) ret = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, mbptr, -1, buf, len); /* Do conversion */85 if (len != 0) {
38 buf[len] = L'0'; /* Must terminate */86 ret = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, mbptr, -1, buf, len); /* Do conversion */
87 if (ret < 0 || (ret == 0 && GetLastError() != NO_ERROR)) {
88 free(buf);
89 errno = EINVAL;
90 *wptr = NULL;
91 if (buflen != NULL) *buflen = 0;
92 return 0;
93 }
94 }
95 buf[len] = L'\0'; /* Must terminate */
39 }96 }
40 *wptr = buf; /* Set string pointer to allocated buffer */97 *wptr = buf; /* Set string pointer to allocated buffer */
41 if (buflen != NULL) *buflen = len * sizeof (wchar_t); /* Give length of allocated memory if needed. */98 if (buflen != NULL) *buflen = len * sizeof (wchar_t); /* Give length of allocated memory if needed. */
lib/libc/mingw/misc/mingw_setfp.c+45-31
...@@ -118,18 +118,52 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask,...@@ -118,18 +118,52 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask,
118#if defined(__arm64ec__)118#if defined(__arm64ec__)
119 __mingw_setfp_sse(cw, cw_mask, sw, sw_mask);119 __mingw_setfp_sse(cw, cw_mask, sw, sw_mask);
120#elif defined(__i386__) || defined(__x86_64__)120#elif defined(__i386__) || defined(__x86_64__)
121 unsigned long oldcw = 0, newcw = 0;121 unsigned long newcw = 0, newsw = 0;
122 unsigned long oldsw = 0, newsw = 0;
123 unsigned int flags;122 unsigned int flags;
123 int use_fnstenv_fldenv;
124 struct {
125 WORD control_word;
126 WORD unused1;
127 WORD status_word;
128 WORD unused2;
129 WORD tag_word;
130 WORD unused3;
131 DWORD instruction_pointer;
132 WORD code_segment;
133 WORD unused4;
134 DWORD operand_addr;
135 WORD data_segment;
136 WORD unused5;
137 } fenv;
124138
125 cw_mask &= _MCW_EM | _MCW_IC | _MCW_RC | _MCW_PC;139 cw_mask &= _MCW_EM | _MCW_IC | _MCW_RC | _MCW_PC;
126 sw_mask &= _MCW_EM;140 sw_mask &= _MCW_EM;
127141
128 if (sw)142 use_fnstenv_fldenv = ((sw && sw_mask != 0) || (cw && cw_mask != 0));
143
144 if (!use_fnstenv_fldenv)
145 {
146 /* Fast path: when we are not going to change sw/cw which is indicated
147 * by zero mask then load sw/cw via fast fnstsw/fnstcw instruction.
148 */
149 __asm__ __volatile__( "fnstsw %0" : "=m" (newsw) );
150 __asm__ __volatile__( "fnstcw %0" : "=m" (newcw) );
151 }
152 else
129 {153 {
130 __asm__ __volatile__( "fstsw %0" : "=m" (newsw) );154 /* Slow path: when we are going to change sw/cw or we do not know yet then
131 oldsw = newsw;155 * load whole x87 env via slow fnstenv as it is needed for changing sw/cw.
156 * Note that fnstenv masks all floating-point exceptions after storing the
157 * x87 env. And after the fnstenv call, it is always required to restore
158 * masking of previous floating-point exceptions via the fldenv call.
159 */
160 __asm__ __volatile__( "fnstenv %0" : "=m" (fenv) );
161 newsw = fenv.status_word;
162 newcw = fenv.control_word;
163 }
132164
165 if (sw)
166 {
133 flags = 0;167 flags = 0;
134 if (newsw & 0x1) flags |= _SW_INVALID;168 if (newsw & 0x1) flags |= _SW_INVALID;
135 if (newsw & 0x2) flags |= _SW_DENORMAL;169 if (newsw & 0x2) flags |= _SW_DENORMAL;
...@@ -151,9 +185,6 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask,...@@ -151,9 +185,6 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask,
151185
152 if (cw)186 if (cw)
153 {187 {
154 __asm__ __volatile__( "fstcw %0" : "=m" (newcw) );
155 oldcw = newcw;
156
157 flags = 0;188 flags = 0;
158 if (newcw & 0x1) flags |= _EM_INVALID;189 if (newcw & 0x1) flags |= _EM_INVALID;
159 if (newcw & 0x2) flags |= _EM_DENORMAL;190 if (newcw & 0x2) flags |= _EM_DENORMAL;
...@@ -198,35 +229,18 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask,...@@ -198,35 +229,18 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask,
198 if (*cw & _IC_AFFINE) newcw |= 0x1000;229 if (*cw & _IC_AFFINE) newcw |= 0x1000;
199 }230 }
200231
201 if (oldsw != newsw && (newsw & 0x3f))232 /* For changing sw/cw always use fldenv.
233 * Do not use fldcw as it can generate pending floating-point exception.
234 * When the fnstenv was called then it is required to call fldenv to
235 * restore previous floating-point exceptions.
236 */
237 if (use_fnstenv_fldenv)
202 {238 {
203 struct {
204 WORD control_word;
205 WORD unused1;
206 WORD status_word;
207 WORD unused2;
208 WORD tag_word;
209 WORD unused3;
210 DWORD instruction_pointer;
211 WORD code_segment;
212 WORD unused4;
213 DWORD operand_addr;
214 WORD data_segment;
215 WORD unused5;
216 } fenv;
217
218 __asm__ __volatile__( "fnstenv %0" : "=m" (fenv) );
219 fenv.control_word = newcw;239 fenv.control_word = newcw;
220 fenv.status_word = newsw;240 fenv.status_word = newsw;
221 __asm__ __volatile__( "fldenv %0" : : "m" (fenv) : "st", "st(1)",241 __asm__ __volatile__( "fldenv %0" : : "m" (fenv) : "st", "st(1)",
222 "st(2)", "st(3)", "st(4)", "st(5)", "st(6)", "st(7)" );242 "st(2)", "st(3)", "st(4)", "st(5)", "st(6)", "st(7)" );
223 return;
224 }243 }
225
226 if (oldsw != newsw)
227 __asm__ __volatile__( "fnclex" );
228 if (oldcw != newcw)
229 __asm__ __volatile__( "fldcw %0" : : "m" (newcw) );
230#elif defined(__aarch64__)244#elif defined(__aarch64__)
231 ULONG_PTR old_fpsr = 0, fpsr = 0, old_fpcr = 0, fpcr = 0;245 ULONG_PTR old_fpsr = 0, fpsr = 0, old_fpcr = 0, fpcr = 0;
232 unsigned int flags;246 unsigned int flags;
lib/libc/mingw/misc/mingw_wcstold.c-2
...@@ -23,8 +23,6 @@...@@ -23,8 +23,6 @@
23#include <string.h>23#include <string.h>
24#include <mbstring.h>24#include <mbstring.h>
2525
26#include "mb_wc_common.h"
27
28long double __mingw_wcstold (const wchar_t * __restrict__ wcs, wchar_t ** __restrict__ wcse)26long double __mingw_wcstold (const wchar_t * __restrict__ wcs, wchar_t ** __restrict__ wcse)
29{27{
30 char * cs;28 char * cs;
lib/libc/mingw/misc/mkdtemp.c created+83
...@@ -0,0 +1,83 @@
1#define _CRT_RAND_S
2#include <stdlib.h>
3#include <string.h>
4#include <direct.h>
5#include <errno.h>
6#include <time.h>
7#include <limits.h>
8
9/*
10 The mkdtemp() function generates a unique temporary name from template,
11 the creates the directory with that name and returns pointer to the modified
12 template string.
13
14 The template may be any name with at least six trailing Xs, for example
15 /tmp/temp.XXXXXXXX. The trailing Xs are replaced with a unique digit and
16 letter combination that makes the file name unique. Since it will be
17 modified, template must not be a string constant, but should be declared as
18 a character array.
19 */
20char *__cdecl mkdtemp (char *template_name)
21{
22 int j, ret, len, index;
23 unsigned int i, r;
24
25 /* These are the (62) characters used in temporary filenames. */
26 static const char letters[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
27
28 /* The last six characters of template must be "XXXXXX" */
29 if (template_name == NULL || (len = strlen (template_name)) < 6
30 || memcmp (template_name + (len - 6), "XXXXXX", 6)) {
31 errno = EINVAL;
32 return NULL;
33 }
34
35 /* User may supply more than six trailing Xs */
36 for (index = len - 6; index > 0 && template_name[index - 1] == 'X'; index--);
37
38 /* Like OpenBSD, mkdtemp() will try 2 ** 31 combinations before giving up. */
39 for (i = 0; i <= INT_MAX; i++) {
40 for(j = index; j < len; j++) {
41 if (rand_s(&r))
42 r = rand() ^ _time32(NULL);
43 template_name[j] = letters[r % 62];
44 }
45 ret = _mkdir(template_name);
46 if (ret == 0) return template_name;
47 if (ret != 0 && errno != EEXIST) return NULL;
48 }
49
50 return NULL;
51}
52
53#if 0
54#include <stdio.h>
55int main ()
56{
57 int i;
58
59 for (i = 0; i < 10; i++) {
60 char template_name[] = { "temp_XXXXXX" };
61 char *name = mkdtemp (template_name);
62 if (name) {
63 fprintf (stderr, "name=%s\n", name);
64 rmdir (name);
65 } else {
66 fprintf (stderr, "errno=%d\n", errno);
67 }
68 }
69
70 for (i = 0; i < 10; i++) {
71 char template_name[] = { "temp_XXXXXXXX" };
72 char *name = mkdtemp (template_name);
73 if (name) {
74 fprintf (stderr, "name=%s\n", name);
75 rmdir (name);
76 } else {
77 fprintf (stderr, "errno=%d\n", errno);
78 }
79 }
80
81 return 0;
82}
83#endif
lib/libc/mingw/misc/mkstemp.c+2-1
...@@ -4,6 +4,7 @@...@@ -4,6 +4,7 @@
4#include <string.h>4#include <string.h>
5#include <io.h>5#include <io.h>
6#include <errno.h>6#include <errno.h>
7#include <time.h>
7#include <share.h>8#include <share.h>
8#include <fcntl.h>9#include <fcntl.h>
9#include <sys/stat.h>10#include <sys/stat.h>
...@@ -46,7 +47,7 @@ int __cdecl mkstemp (char *template_name)...@@ -46,7 +47,7 @@ int __cdecl mkstemp (char *template_name)
46 for (i = 0; i <= INT_MAX; i++) {47 for (i = 0; i <= INT_MAX; i++) {
47 for(j = index; j < len; j++) {48 for(j = index; j < len; j++) {
48 if (rand_s(&r))49 if (rand_s(&r))
49 r = rand();50 r = rand() ^ _time32(NULL);
50 template_name[j] = letters[r % 62];51 template_name[j] = letters[r % 62];
51 }52 }
52 fd = _sopen(template_name,53 fd = _sopen(template_name,
lib/libc/mingw/misc/ucrt_mbsinit.c created+14
...@@ -0,0 +1,14 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#undef __MSVCRT_VERSION__
8#define _UCRT
9#include <wchar.h>
10
11int __cdecl mbsinit(const mbstate_t *_P)
12{
13 return (!_P || _P->_Wchar == 0);
14}
lib/libc/mingw/misc/wctob.c created+39
...@@ -0,0 +1,39 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#define __LARGE_MBSTATE_T
8
9#ifndef WIN32_LEAN_AND_MEAN
10#define WIN32_LEAN_AND_MEAN
11#endif
12#include <locale.h>
13#include <limits.h>
14#include <wchar.h>
15#include <stdio.h>
16#include <stdlib.h>
17#include <errno.h>
18#include <windows.h>
19
20int wctob (wint_t wc)
21{
22 /* Return early */
23 if (IS_LOW_SURROGATE (wc) || IS_HIGH_SURROGATE (wc) || wc == WEOF) {
24 return EOF;
25 }
26
27 mbstate_t state = {0};
28 /* Buffer large enough to hold any multibyte character */
29 char mbc[MB_LEN_MAX];
30
31 size_t length = wcrtomb (mbc, wc, &state);
32 if (length > 1) {
33 return EOF;
34 }
35
36 return (unsigned char) mbc[0];
37}
38
39int (__cdecl *__MINGW_IMP_SYMBOL (wctob)) (wint_t) = wctob;
lib/libc/mingw/stdio/__mingw_fix_fstat_finish.c created+18
...@@ -0,0 +1,18 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <sys/stat.h>
8#include <windows.h>
9#include "__mingw_fix_stat.h"
10
11int __mingw_fix_fstat_finish(int ret, int fd, unsigned short *mode)
12{
13 /* msvcrt's _fstat fills S_IFREG for directories. Fix it to S_IFDIR. */
14 BY_HANDLE_FILE_INFORMATION fi;
15 if (ret == 0 && S_ISREG(*mode) && GetFileInformationByHandle((HANDLE)_get_osfhandle(fd), &fi) && (fi.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
16 *mode = (*mode & ~S_IFMT) | S_IFDIR;
17 return ret;
18}
lib/libc/mingw/stdio/__mingw_fix_stat.h created+65
...@@ -0,0 +1,65 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#ifndef __MINGW_FIX_STAT_H
8#define __MINGW_FIX_STAT_H
9
10char* __mingw_fix_stat_path (const char* _path);
11wchar_t* __mingw_fix_wstat_path (const wchar_t* _path);
12int __mingw_fix_stat_finish(int ret, const void *orig_path, void *used_path,
13 unsigned short mode);
14int __mingw_fix_fstat_finish(int ret, int fd, unsigned short *mode);
15int __mingw_fix_wstat_fallback_fd(int ret, const wchar_t *filename, unsigned short mode);
16int __mingw_fix_stat_fallback_fd(int ret, const char *filename, unsigned short mode);
17
18#define __MINGW_FIXED_FSTAT(fstat_func, fd, obj) ({ \
19 int _fstat_ret = fstat_func(fd, obj); \
20 _fstat_ret = __mingw_fix_fstat_finish(_fstat_ret, fd, &(obj)->st_mode); \
21 _fstat_ret; \
22})
23
24#define __MINGW_CHOOSE_CHAR_WCHART_EXPR(var, char_expr, wchart_expr, other_expr) \
25 __builtin_choose_expr(__builtin_types_compatible_p(typeof(var), char), char_expr, \
26 __builtin_choose_expr(__builtin_types_compatible_p(typeof(var), wchar_t), wchart_expr, \
27 other_expr))
28
29#define __MINGW_PATH_PTR_TYPE(path) \
30 typeof(__MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], (char*)0, (wchar_t*)0, (void)0))
31
32#define __MINGW_FIX_STAT_PATH(path) \
33 __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], __mingw_fix_stat_path, __mingw_fix_wstat_path, NULL)(path)
34
35#define __MINGW_FIX_STAT_FALLBACK_FD(ret, path, mode) \
36 __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], __mingw_fix_stat_fallback_fd, __mingw_fix_wstat_fallback_fd, NULL)((ret), (path), (mode))
37
38#define __MINGW_CREATE_FILE(path, ...) \
39 __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], CreateFileA, CreateFileW, NULL)((path), ##__VA_ARGS__)
40
41#define __MINGW_STR_PBRK(path, accept) \
42 __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], strpbrk, wcspbrk, NULL)((path), __MINGW_CHOOSE_CHAR_WCHART_EXPR((path)[0], accept, L##accept, NULL))
43
44#define __MINGW_FIXED_STAT(fstat_func, stat_func, filename, obj) ({ \
45 /* First call CRT _stat function with mingw path correction */ \
46 int _stat_ret; \
47 __MINGW_PATH_PTR_TYPE(filename) path = __MINGW_FIX_STAT_PATH(filename); \
48 if (path == NULL && (filename) != NULL) { \
49 _stat_ret = -1; \
50 } else { \
51 _stat_ret = (stat_func)(path, (obj)); \
52 _stat_ret = __mingw_fix_stat_finish(_stat_ret, (filename), path, (obj)->st_mode); \
53 /* If the CRT _stat function failed then fallback to mingw fstat function */ \
54 int _stat_fd = __MINGW_FIX_STAT_FALLBACK_FD(_stat_ret, (filename), (obj)->st_mode); \
55 if (_stat_fd >= 0) { \
56 _stat_ret = fstat_func(_stat_fd, (void*)(obj)); \
57 int _stat_errno = errno; \
58 close(_stat_fd); \
59 errno = _stat_errno; \
60 } \
61 } \
62 _stat_ret; \
63})
64
65#endif
lib/libc/mingw/stdio/__mingw_fix_stat_fallback_fd.c created+44
...@@ -0,0 +1,44 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <sys/stat.h>
8#include <string.h>
9#include <wchar.h>
10#include <errno.h>
11#include <fcntl.h>
12#include <windows.h>
13#include "__mingw_fix_stat.h"
14
15#ifdef MINGW_FIX_STAT_IS_WIDE
16int __mingw_fix_wstat_fallback_fd(int ret, const wchar_t *filename, unsigned short mode)
17#else
18int __mingw_fix_stat_fallback_fd(int ret, const char *filename, unsigned short mode)
19#endif
20{
21 int fd = -1;
22
23 /*
24 * CRT _stat does not handle paths with ? and * characters and returns ENOENT.
25 * This prevents _stat from working on paths like \\?\C:\foo.txt.
26 * CRT _stat incorrectly sets S_IFREG for pipe and char devices.
27 * For these cases open specified filename and return its fd which will be passed to CRT fstat() by caller.
28 */
29 if ((ret < 0 && errno == ENOENT && __MINGW_STR_PBRK((filename), "?*")) || (ret == 0 && S_ISREG(mode))) {
30 HANDLE handle = __MINGW_CREATE_FILE((filename), FILE_READ_ATTRIBUTES, FILE_SHARE_VALID_FLAGS, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, NULL);
31 if (handle != NULL && handle != INVALID_HANDLE_VALUE) {
32 /* Open filename and return fd if CRT _stat failed or if the file is not regular disk file. */
33 if (ret < 0 || GetFileType(handle) != FILE_TYPE_DISK) {
34 int saved_errno = errno;
35 fd = _open_osfhandle((intptr_t)handle, O_RDONLY);
36 errno = saved_errno;
37 }
38 if (fd < 0)
39 CloseHandle(handle);
40 }
41 }
42
43 return fd;
44}
lib/libc/mingw/stdio/__mingw_fix_stat_finish.c created+36
...@@ -0,0 +1,36 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <sys/stat.h>
8#include <stdlib.h>
9#include <errno.h>
10#include "__mingw_fix_stat.h"
11
12int __mingw_fix_stat_finish(int ret, const void *orig_path, void *used_path,
13 unsigned short mode)
14{
15 /*
16 * If the original pathname and used pathname differ, it means that
17 * __mingw_fix_stat_path or __mingw_fix_wstat_path had to allocate
18 * a temporary buffer and remove a trailing directory separator.
19 * In this case the temporary allocation has to be freed, and the
20 * stat function succeeds only if the pathname was a directory.
21 */
22 if (orig_path != used_path) {
23 /* Save errno because we call free. */
24 int saved_errno = errno;
25 free(used_path);
26
27 if (ret == 0 && !S_ISDIR(mode)) {
28 ret = -1;
29 saved_errno = ENOTDIR;
30 }
31
32 errno = saved_errno;
33 }
34
35 return ret;
36}
lib/libc/mingw/stdio/__mingw_fix_stat_path.c+35-7
...@@ -4,8 +4,21 @@...@@ -4,8 +4,21 @@
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */5 */
66
7#ifndef WIN32_LEAN_AND_MEAN
8#define WIN32_LEAN_AND_MEAN
9#endif
7#include <sys/stat.h>10#include <sys/stat.h>
8#include <stdlib.h>11#include <stdlib.h>
12#include <locale.h>
13#include <windows.h>
14#include "__mingw_fix_stat.h"
15
16static const char* next_char (unsigned int cp, const char* p)
17{
18 /* If it is a lead byte, skip the next byte except if it is \0.
19 * If it is \0, it's not a valid DBCS string. */
20 return (__mingw_isleadbyte_cp (*p, cp) && p[1] != '\0') ? p + 2 : p + 1;
21}
922
10/**23/**
11 * Returns _path without trailing slash if any24 * Returns _path without trailing slash if any
...@@ -17,10 +30,10 @@...@@ -17,10 +30,10 @@
17 * to free it.30 * to free it.
18 */31 */
1932
20char* __mingw_fix_stat_path (const char* _path);
21char* __mingw_fix_stat_path (const char* _path)33char* __mingw_fix_stat_path (const char* _path)
22{34{
23 int len;35 const unsigned int cp = __mingw_filename_cp ();
36 size_t len;
24 char *p;37 char *p;
2538
26 p = (char*)_path;39 p = (char*)_path;
...@@ -28,24 +41,27 @@ char* __mingw_fix_stat_path (const char* _path)...@@ -28,24 +41,27 @@ char* __mingw_fix_stat_path (const char* _path)
28 if (_path && *_path) {41 if (_path && *_path) {
29 len = strlen (_path);42 len = strlen (_path);
3043
31 /* Ignore X:\ */44 /* Ignore X:\
3245 * No ANSI or OEM code page uses ':' as a trail byte. (The code page 1361
46 * cannot be used as ANSI or OEM code page.) */
33 if (len <= 1 || ((len == 2 || len == 3) && _path[1] == ':'))47 if (len <= 1 || ((len == 2 || len == 3) && _path[1] == ':'))
34 return p;48 return p;
3549
50 const char *r = _path;
51
36 /* Check UNC \\abc\<name>\ */52 /* Check UNC \\abc\<name>\ */
37 if ((_path[0] == '\\' || _path[0] == '/')53 if ((_path[0] == '\\' || _path[0] == '/')
38 && (_path[1] == '\\' || _path[1] == '/'))54 && (_path[1] == '\\' || _path[1] == '/'))
39 {55 {
40 const char *r = &_path[2];56 r = &_path[2];
41 while (*r != 0 && *r != '\\' && *r != '/')57 while (*r != 0 && *r != '\\' && *r != '/')
42 ++r;58 r = next_char (cp, r);
43 if (*r != 0)59 if (*r != 0)
44 ++r;60 ++r;
45 if (*r == 0)61 if (*r == 0)
46 return p;62 return p;
47 while (*r != 0 && *r != '\\' && *r != '/')63 while (*r != 0 && *r != '\\' && *r != '/')
48 ++r;64 r = next_char (cp, r);
49 if (*r != 0)65 if (*r != 0)
50 ++r;66 ++r;
51 if (*r == 0)67 if (*r == 0)
...@@ -54,7 +70,19 @@ char* __mingw_fix_stat_path (const char* _path)...@@ -54,7 +70,19 @@ char* __mingw_fix_stat_path (const char* _path)
5470
55 if (_path[len - 1] == '/' || _path[len - 1] == '\\')71 if (_path[len - 1] == '/' || _path[len - 1] == '\\')
56 {72 {
73 /* Return if the last character is a double-byte character.
74 * Its trail byte could be a '\' which must not be interpret
75 * as a directory separator. */
76 while (r[1] != '\0')
77 {
78 r = next_char (cp, r);
79 if (*r == '\0')
80 return p;
81 }
82
57 p = (char*)malloc (len);83 p = (char*)malloc (len);
84 if (p == NULL)
85 return NULL; /* malloc has set errno. */
58 memcpy (p, _path, len - 1);86 memcpy (p, _path, len - 1);
59 p[len - 1] = '\0';87 p[len - 1] = '\0';
60 }88 }
lib/libc/mingw/stdio/__mingw_fix_wstat_fallback_fd.c created+2
...@@ -0,0 +1,2 @@
1#define MINGW_FIX_STAT_IS_WIDE
2#include "__mingw_fix_stat_fallback_fd.c"
lib/libc/mingw/stdio/__mingw_fix_wstat_path.c+4-2
...@@ -6,6 +6,7 @@...@@ -6,6 +6,7 @@
66
7#include <sys/stat.h>7#include <sys/stat.h>
8#include <stdlib.h>8#include <stdlib.h>
9#include "__mingw_fix_stat.h"
910
10/**11/**
11 * Returns _path without trailing slash if any12 * Returns _path without trailing slash if any
...@@ -17,10 +18,9 @@...@@ -17,10 +18,9 @@
17 * to free it.18 * to free it.
18 */19 */
1920
20wchar_t* __mingw_fix_wstat_path (const wchar_t* _path);
21wchar_t* __mingw_fix_wstat_path (const wchar_t* _path)21wchar_t* __mingw_fix_wstat_path (const wchar_t* _path)
22{22{
23 int len;23 size_t len;
24 wchar_t *p;24 wchar_t *p;
2525
26 p = (wchar_t*)_path;26 p = (wchar_t*)_path;
...@@ -55,6 +55,8 @@ wchar_t* __mingw_fix_wstat_path (const wchar_t* _path)...@@ -55,6 +55,8 @@ wchar_t* __mingw_fix_wstat_path (const wchar_t* _path)
55 if (_path[len - 1] == L'/' || _path[len - 1] == L'\\')55 if (_path[len - 1] == L'/' || _path[len - 1] == L'\\')
56 {56 {
57 p = (wchar_t*)malloc (len * sizeof(wchar_t));57 p = (wchar_t*)malloc (len * sizeof(wchar_t));
58 if (p == NULL)
59 return NULL; /* malloc has set errno. */
58 memcpy (p, _path, (len - 1) * sizeof(wchar_t));60 memcpy (p, _path, (len - 1) * sizeof(wchar_t));
59 p[len - 1] = L'\0';61 p[len - 1] = L'\0';
60 }62 }
lib/libc/mingw/stdio/fopen64.c deleted-11
...@@ -1,11 +0,0 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#include <stdio.h>
7
8FILE* fopen64 (const char* filename, const char* mode)
9{
10 return fopen (filename, mode);
11}
lib/libc/mingw/stdio/fseeko32.c deleted-7
...@@ -1,7 +0,0 @@
1/*non-standard*/
2#include <stdio.h>
3
4int fseeko(FILE* stream, _off_t offset, int whence){
5 _off64_t off = offset;
6 return fseeko64(stream,off,whence);
7}
lib/libc/mingw/stdio/fseeko64.c deleted-34
...@@ -1,34 +0,0 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#include <stdio.h>
7#include <io.h>
8#include <errno.h>
9
10int fseeko64 (FILE* stream, _off64_t offset, int whence)
11{
12 fpos_t pos;
13 if (whence == SEEK_CUR)
14 {
15 /* If stream is invalid, fgetpos sets errno. */
16 if (fgetpos (stream, &pos))
17 return (-1);
18 pos += (fpos_t) offset;
19 }
20 else if (whence == SEEK_END)
21 {
22 /* If writing, we need to flush before getting file length. */
23 fflush (stream);
24 pos = (fpos_t) (_filelengthi64 (_fileno (stream)) + offset);
25 }
26 else if (whence == SEEK_SET)
27 pos = (fpos_t) offset;
28 else
29 {
30 errno = EINVAL;
31 return (-1);
32 }
33 return fsetpos (stream, &pos);
34}
lib/libc/mingw/stdio/ftello.c deleted-5
...@@ -1,5 +0,0 @@
1#include <stdio.h>
2
3_off_t ftello(FILE * stream){
4 return (_off_t) ftello64(stream);
5}
lib/libc/mingw/stdio/ftello64.c deleted-16
...@@ -1,16 +0,0 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#include <stdio.h>
7
8_off64_t
9ftello64 (FILE * stream)
10{
11 fpos_t pos;
12 if (fgetpos(stream, &pos))
13 return -1LL;
14 else
15 return ((off64_t) pos);
16}
lib/libc/mingw/stdio/ftruncate64.c deleted-371
...@@ -1,371 +0,0 @@
1#ifdef TEST_FTRUNCATE64
2#include <fcntl.h>
3#include <sys/stat.h>
4#endif /* TEST_FTRUNCATE64 */
5
6#include <stdio.h>
7#include <unistd.h>
8#include <io.h>
9#include <stdlib.h>
10#include <errno.h>
11#include <wchar.h>
12#include <windows.h>
13#include <psapi.h>
14
15/* Mutually exclusive methods
16 We check disk space as truncating more than the allowed space results
17 in file getting mysteriously deleted
18 */
19#define _CHECK_SPACE_BY_VOLUME_METHOD_ 1 /* Needs to walk through all volumes */
20#define _CHECK_SPACE_BY_PSAPI_METHOD_ 0 /* Requires psapi.dll */
21#define _CHECK_SPACE_BY_VISTA_METHOD_ 0 /* Won't work on XP */
22
23#if (_CHECK_SPACE_BY_PSAPI_METHOD_ == 1) /* Retrive actual volume path */
24static LPWSTR getdirpath(const LPWSTR __str){
25 int len, walk = 0;
26 LPWSTR dirname;
27 while (__str[walk] != L'\0'){
28 walk++;
29 if (__str[walk] == L'\\') len = walk + 1;
30 }
31 dirname = calloc(len + 1, sizeof(wchar_t));
32 if (!dirname) return dirname; /* memory error */
33 return wcsncpy(dirname,__str,len);
34}
35
36static LPWSTR xp_normalize_fn(const LPWSTR fn) {
37 DWORD len, err, walker, isfound;
38 LPWSTR drives = NULL;
39 LPWSTR target = NULL;
40 LPWSTR ret = NULL;
41 wchar_t tmplt[3] = L" :"; /* Template */
42
43 /*Get list of drive letters */
44 len = GetLogicalDriveStringsW(0,NULL);
45 drives = calloc(len,sizeof(wchar_t));
46 if (!drives) return NULL;
47 len = GetLogicalDriveStringsW(len,drives);
48
49 /*Allocatate memory */
50 target = calloc(MAX_PATH + 1,sizeof(wchar_t));
51 if (!target) {
52 free(drives);
53 return NULL;
54 }
55
56 walker = 0;
57 while ((walker < len) && !(drives[walker] == L'\0' && drives[walker + 1] == L'\0')){
58 /* search through alphabets */
59 if(iswalpha(drives[walker])) {
60 *tmplt = drives[walker]; /* Put drive letter */
61 err = QueryDosDeviceW(tmplt,target,MAX_PATH);
62 if(!err) {
63 free(drives);
64 free(target);
65 return NULL;
66 }
67 if( _wcsnicmp(target,fn,wcslen(target)) == 0) break;
68 wmemset(target,L'\0',MAX_PATH);
69 walker++;
70 } else walker++;
71 }
72
73 if (!iswalpha(*tmplt)) {
74 free(drives);
75 free(target);
76 return NULL; /* Finish walking without finding correct drive */
77 }
78
79 ret = calloc(MAX_PATH + 1,sizeof(wchar_t));
80 if (!ret) {
81 free(drives);
82 free(target);
83 return NULL;
84 }
85 _snwprintf(ret,MAX_PATH,L"%ws%ws",tmplt,fn+wcslen(target));
86
87 return ret;
88}
89
90/* XP method of retrieving filename from handles, based on:
91 http://msdn.microsoft.com/en-us/library/aa366789%28VS.85%29.aspx
92 */
93static LPWSTR xp_getfilepath(const HANDLE f, const LARGE_INTEGER fsize){
94 HANDLE hFileMap = NULL;
95 void* pMem = NULL;
96 LPWSTR temp, ret;
97 DWORD err;
98
99 temp = calloc(MAX_PATH + 1, sizeof(wchar_t));
100 if (!temp) goto errormap;
101
102 /* CreateFileMappingW limitation: Cannot map 0 byte files, so extend it to 1 byte */
103 if (!fsize.QuadPart) {
104 SetFilePointer(f, 1, NULL, FILE_BEGIN);
105 err = SetEndOfFile(f);
106 if(!temp) goto errormap;
107 }
108
109 hFileMap = CreateFileMappingW(f,NULL,PAGE_READONLY,0,1,NULL);
110 if(!hFileMap) goto errormap;
111 pMem = MapViewOfFile(hFileMap, FILE_MAP_READ, 0, 0, 1);
112 if(!pMem) goto errormap;
113 err = GetMappedFileNameW(GetCurrentProcess(),pMem,temp,MAX_PATH);
114 if(!err) goto errormap;
115
116 if (pMem) UnmapViewOfFile(pMem);
117 if (hFileMap) CloseHandle(hFileMap);
118 ret = xp_normalize_fn(temp);
119 free(temp);
120 return ret;
121
122 errormap:
123 if (temp) free(temp);
124 if (pMem) UnmapViewOfFile(pMem);
125 if (hFileMap) CloseHandle(hFileMap);
126 errno = EBADF;
127 return NULL;
128}
129#endif /* _CHECK_SPACE_BY_PSAPI_METHOD_ */
130
131static int
132checkfreespace (const HANDLE f, const ULONGLONG requiredspace)
133{
134 LPWSTR dirpath, volumeid, volumepath;
135 ULARGE_INTEGER freespace;
136 LARGE_INTEGER currentsize;
137 DWORD check, volumeserial;
138 BY_HANDLE_FILE_INFORMATION fileinfo;
139 HANDLE vol;
140
141 /* Get current size */
142 check = GetFileSizeEx (f, &currentsize);
143 if (!check)
144 {
145 errno = EBADF;
146 return -1; /* Error checking file size */
147 }
148
149 /* Short circuit disk space check if shrink operation */
150 if ((ULONGLONG)currentsize.QuadPart >= requiredspace)
151 return 0;
152
153 /* We check available space to user before attempting to truncate */
154
155#if (_CHECK_SPACE_BY_VISTA_METHOD_ == 1)
156 /* Get path length */
157 DWORD err;
158 LPWSTR filepath = NULL;
159 check = GetFinalPathNameByHandleW(f,filepath,0,FILE_NAME_NORMALIZED|VOLUME_NAME_GUID);
160 err = GetLastError();
161 if (err == ERROR_PATH_NOT_FOUND || err == ERROR_INVALID_PARAMETER) {
162 errno = EINVAL;
163 return -1; /* IO error */
164 }
165 filepath = calloc(check + 1,sizeof(wchar_t));
166 if (!filepath) {
167 errno = EBADF;
168 return -1; /* Out of memory */
169 }
170 check = GetFinalPathNameByHandleW(f,filepath,check,FILE_NAME_NORMALIZED|VOLUME_NAME_GUID);
171 /* FIXME: last error was set to error 87 (0x57)
172 "The parameter is incorrect." for some reason but works out */
173 if (!check) {
174 errno = EBADF;
175 return -1; /* Error resolving filename */
176 }
177#endif /* _CHECK_SPACE_BY_VISTA_METHOD_ */
178
179#if (_CHECK_SPACE_BY_PSAPI_METHOD_ == 1)
180 LPWSTR filepath = NULL;
181 filepath = xp_getfilepath(f,currentsize);
182
183 /* Get durectory path */
184 dirpath = getdirpath(filepath);
185 free(filepath);
186 filepath = NULL;
187 if (!dirpath) {
188 errno = EBADF;
189 return -1; /* Out of memory */
190 }
191#endif /* _CHECK_SPACE_BY_PSAPI_METHOD_ */
192
193#if _CHECK_SPACE_BY_VOLUME_METHOD_
194 if(!GetFileInformationByHandle(f,&fileinfo)) {
195 errno = EINVAL;
196 return -1; /* Resolution failure */
197 }
198
199 volumeid = calloc(51,sizeof(wchar_t));
200 volumepath = calloc(MAX_PATH+2,sizeof(wchar_t));
201 if(!volumeid || !volumepath) {
202 errno = EBADF;
203 return -1; /* Out of memory */
204 }
205
206 dirpath = NULL;
207
208 vol = FindFirstVolumeW(volumeid,50);
209 /* wprintf(L"%d - %ws\n",wcslen(volumeid),volumeid); */
210 do {
211 check = GetVolumeInformationW(volumeid,volumepath,MAX_PATH+1,&volumeserial,NULL,NULL,NULL,0);
212 /* wprintf(L"GetVolumeInformationW %d id %ws path %ws error %d\n",check,volumeid,volumepath,GetLastError()); */
213 if(volumeserial == fileinfo.dwVolumeSerialNumber) {
214 dirpath = volumeid;
215 break;
216 }
217 } while (FindNextVolumeW(vol,volumeid,50));
218 FindVolumeClose(vol);
219
220 if(!dirpath) free(volumeid); /* we found the volume */
221 free(volumepath);
222#endif /* _CHECK_SPACE_BY_VOLUME_METHOD_ */
223
224 /* Get available free space */
225 check = GetDiskFreeSpaceExW(dirpath,&freespace,NULL,NULL);
226 //wprintf(L"freespace %I64u\n",freespace);
227 free(dirpath);
228 if(!check) {
229 errno = EFBIG;
230 return -1; /* Error getting free space */
231 }
232
233 /* Check space requirements */
234 if ((requiredspace - currentsize.QuadPart) > freespace.QuadPart)
235 {
236 errno = EFBIG; /* File too big for disk */
237 return -1;
238 } /* We have enough space to truncate/expand */
239 return 0;
240}
241
242int ftruncate64(int __fd, _off64_t __length) {
243 HANDLE f;
244 LARGE_INTEGER quad;
245 DWORD check;
246 int ret = 0;
247 __int64 pos;
248
249 /* Sanity check */
250 if (__length < 0) {
251 goto errorout;
252 }
253
254 /* Get Win32 Handle */
255 if(__fd == -1) {
256 goto errorout;
257 }
258
259 f = (HANDLE)_get_osfhandle(__fd);
260 if (f == INVALID_HANDLE_VALUE || (GetFileType(f) != FILE_TYPE_DISK)) {
261 errno = EBADF;
262 return -1;
263 }
264
265
266 /* Save position */
267 if((pos = _telli64(__fd)) == -1LL){
268 goto errorout;
269 }
270
271 /* Check available space */
272 check = checkfreespace(f,__length);
273 if (check != 0) {
274 return -1; /* Error, errno already set */
275 }
276
277 quad.QuadPart = __length;
278 check = SetFilePointer(f, (LONG)quad.LowPart, &(quad.HighPart), FILE_BEGIN);
279 if (check == INVALID_SET_FILE_POINTER && quad.LowPart != INVALID_SET_FILE_POINTER) {
280 switch (GetLastError()) {
281 case ERROR_NEGATIVE_SEEK:
282 errno = EFBIG; /* file too big? */
283 return -1;
284 case INVALID_SET_FILE_POINTER:
285 errno = EINVAL; /* shouldn't happen */
286 return -1;
287 default:
288 errno = EINVAL; /* shouldn't happen */
289 return -1;
290 }
291 }
292
293 check = SetEndOfFile(f);
294 if (!check) {
295 goto errorout;
296 }
297
298 if(_lseeki64(__fd,pos,SEEK_SET) == -1LL){
299 goto errorout;
300 }
301
302 return ret;
303
304 errorout:
305 errno = EINVAL;
306 return -1;
307}
308
309#if (TEST_FTRUNCATE64 == 1)
310int main(){
311 LARGE_INTEGER sz;
312 ULARGE_INTEGER freespace;
313 int f;
314 LPWSTR path, dir;
315 sz.QuadPart = 0LL;
316 f = _open("XXX.tmp", _O_BINARY|_O_CREAT|_O_RDWR, _S_IREAD | _S_IWRITE);
317 wprintf(L"%d\n",ftruncate64(f,12));
318 wprintf(L"%d\n",ftruncate64(f,20));
319 wprintf(L"%d\n",ftruncate64(f,15));
320/* path = xp_getfilepath((HANDLE)_get_osfhandle(f),sz);
321 dir = getdirpath(path);
322 GetDiskFreeSpaceExW(dir,&freespace,NULL,NULL);
323 wprintf(L"fs - %ws\n",path);
324 wprintf(L"dirfs - %ws\n",dir);
325 wprintf(L"free - %I64u\n",freespace.QuadPart);
326 free(dir);
327 free(path);*/
328 _close(f);
329 return 0;
330}
331#endif /* TEST_FTRUNCATE64 */
332
333#if (TEST_FTRUNCATE64 == 2)
334int main() {
335FILE *f;
336int fd;
337char buf[100];
338int cnt;
339unlink("test.out");
340f = fopen("test.out","w+");
341fd = fileno(f);
342write(fd,"abc",3);
343fflush(f);
344printf ("err: %d\n", ftruncate64(fd,10));
345cnt = read(fd,buf,100);
346printf("cnt = %d\n",cnt);
347return 0;
348}
349#endif /* TEST_FTRUNCATE64 */
350
351#if (TEST_FTRUNCATE64 == 3)
352int main() {
353FILE *f;
354int fd;
355char buf[100];
356int cnt;
357unlink("test.out");
358f = fopen("test.out","w+");
359fd = fileno(f);
360write(fd,"abc",3);
361fflush(f);
362ftruncate64(fd,0);
363write(fd,"def",3);
364fclose(f);
365f = fopen("test.out","r");
366cnt = fread(buf,1,100,f);
367printf("cnt = %d\n",cnt);
368return 0;
369}
370#endif /* TEST_FTRUNCATE64 */
371
lib/libc/mingw/stdio/lseek64.c deleted-12
...@@ -1,12 +0,0 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#include <io.h>
7
8_off64_t lseek64(int fd,_off64_t offset, int whence)
9{
10 return _lseeki64(fd, (_off64_t) offset, whence);
11}
12
lib/libc/mingw/stdio/mingw_ftruncate64.c created+380
...@@ -0,0 +1,380 @@
1#ifdef TEST_FTRUNCATE64
2#include <fcntl.h>
3#include <sys/stat.h>
4#endif /* TEST_FTRUNCATE64 */
5
6#include <stdio.h>
7#include <unistd.h>
8#include <io.h>
9#include <stdlib.h>
10#include <errno.h>
11#include <wchar.h>
12#include <windows.h>
13#include <psapi.h>
14
15#if 0
16/* Mutually exclusive methods
17 We check disk space as truncating more than the allowed space results
18 in file getting mysteriously deleted
19 */
20#define _CHECK_SPACE_BY_VOLUME_METHOD_ 1 /* Needs to walk through all volumes */
21#define _CHECK_SPACE_BY_PSAPI_METHOD_ 0 /* Requires psapi.dll */
22#define _CHECK_SPACE_BY_VISTA_METHOD_ 0 /* Won't work on XP */
23
24#if (_CHECK_SPACE_BY_PSAPI_METHOD_ == 1) /* Retrive actual volume path */
25static LPWSTR getdirpath(const LPWSTR __str){
26 int len, walk = 0;
27 LPWSTR dirname;
28 while (__str[walk] != L'\0'){
29 walk++;
30 if (__str[walk] == L'\\') len = walk + 1;
31 }
32 dirname = calloc(len + 1, sizeof(wchar_t));
33 if (!dirname) return dirname; /* memory error */
34 return wcsncpy(dirname,__str,len);
35}
36
37static LPWSTR xp_normalize_fn(const LPWSTR fn) {
38 DWORD len, err, walker, isfound;
39 LPWSTR drives = NULL;
40 LPWSTR target = NULL;
41 LPWSTR ret = NULL;
42 wchar_t tmplt[3] = L" :"; /* Template */
43
44 /*Get list of drive letters */
45 len = GetLogicalDriveStringsW(0,NULL);
46 drives = calloc(len,sizeof(wchar_t));
47 if (!drives) return NULL;
48 len = GetLogicalDriveStringsW(len,drives);
49
50 /*Allocatate memory */
51 target = calloc(MAX_PATH + 1,sizeof(wchar_t));
52 if (!target) {
53 free(drives);
54 return NULL;
55 }
56
57 walker = 0;
58 while ((walker < len) && !(drives[walker] == L'\0' && drives[walker + 1] == L'\0')){
59 /* search through alphabets */
60 if(iswalpha(drives[walker])) {
61 *tmplt = drives[walker]; /* Put drive letter */
62 err = QueryDosDeviceW(tmplt,target,MAX_PATH);
63 if(!err) {
64 free(drives);
65 free(target);
66 return NULL;
67 }
68 if( _wcsnicmp(target,fn,wcslen(target)) == 0) break;
69 wmemset(target,L'\0',MAX_PATH);
70 walker++;
71 } else walker++;
72 }
73
74 if (!iswalpha(*tmplt)) {
75 free(drives);
76 free(target);
77 return NULL; /* Finish walking without finding correct drive */
78 }
79
80 ret = calloc(MAX_PATH + 1,sizeof(wchar_t));
81 if (!ret) {
82 free(drives);
83 free(target);
84 return NULL;
85 }
86 _snwprintf(ret,MAX_PATH,L"%ls%ls",tmplt,fn+wcslen(target));
87
88 return ret;
89}
90
91/* XP method of retrieving filename from handles, based on:
92 http://msdn.microsoft.com/en-us/library/aa366789%28VS.85%29.aspx
93 */
94static LPWSTR xp_getfilepath(const HANDLE f, const LARGE_INTEGER fsize){
95 HANDLE hFileMap = NULL;
96 void* pMem = NULL;
97 LPWSTR temp, ret;
98 DWORD err;
99
100 temp = calloc(MAX_PATH + 1, sizeof(wchar_t));
101 if (!temp) goto errormap;
102
103 /* CreateFileMappingW limitation: Cannot map 0 byte files, so extend it to 1 byte */
104 if (!fsize.QuadPart) {
105 SetFilePointer(f, 1, NULL, FILE_BEGIN);
106 err = SetEndOfFile(f);
107 if(!temp) goto errormap;
108 }
109
110 hFileMap = CreateFileMappingW(f,NULL,PAGE_READONLY,0,1,NULL);
111 if(!hFileMap) goto errormap;
112 pMem = MapViewOfFile(hFileMap, FILE_MAP_READ, 0, 0, 1);
113 if(!pMem) goto errormap;
114 err = GetMappedFileNameW(GetCurrentProcess(),pMem,temp,MAX_PATH);
115 if(!err) goto errormap;
116
117 if (pMem) UnmapViewOfFile(pMem);
118 if (hFileMap) CloseHandle(hFileMap);
119 ret = xp_normalize_fn(temp);
120 free(temp);
121 return ret;
122
123 errormap:
124 if (temp) free(temp);
125 if (pMem) UnmapViewOfFile(pMem);
126 if (hFileMap) CloseHandle(hFileMap);
127 errno = EBADF;
128 return NULL;
129}
130#endif /* _CHECK_SPACE_BY_PSAPI_METHOD_ */
131
132static int
133checkfreespace (const HANDLE f, const ULONGLONG requiredspace)
134{
135 LPWSTR dirpath, volumeid, volumepath;
136 ULARGE_INTEGER freespace;
137 LARGE_INTEGER currentsize;
138 DWORD check, volumeserial;
139 BY_HANDLE_FILE_INFORMATION fileinfo;
140 HANDLE vol;
141
142 /* Get current size */
143 check = GetFileSizeEx (f, &currentsize);
144 if (!check)
145 {
146 errno = EBADF;
147 return -1; /* Error checking file size */
148 }
149
150 /* Short circuit disk space check if shrink operation */
151 if ((ULONGLONG)currentsize.QuadPart >= requiredspace)
152 return 0;
153
154 /* We check available space to user before attempting to truncate */
155
156#if (_CHECK_SPACE_BY_VISTA_METHOD_ == 1)
157 /* Get path length */
158 DWORD err;
159 LPWSTR filepath = NULL;
160 check = GetFinalPathNameByHandleW(f,filepath,0,FILE_NAME_NORMALIZED|VOLUME_NAME_GUID);
161 err = GetLastError();
162 if (err == ERROR_PATH_NOT_FOUND || err == ERROR_INVALID_PARAMETER) {
163 errno = EINVAL;
164 return -1; /* IO error */
165 }
166 filepath = calloc(check + 1,sizeof(wchar_t));
167 if (!filepath) {
168 errno = EBADF;
169 return -1; /* Out of memory */
170 }
171 check = GetFinalPathNameByHandleW(f,filepath,check,FILE_NAME_NORMALIZED|VOLUME_NAME_GUID);
172 /* FIXME: last error was set to error 87 (0x57)
173 "The parameter is incorrect." for some reason but works out */
174 if (!check) {
175 errno = EBADF;
176 return -1; /* Error resolving filename */
177 }
178#endif /* _CHECK_SPACE_BY_VISTA_METHOD_ */
179
180#if (_CHECK_SPACE_BY_PSAPI_METHOD_ == 1)
181 LPWSTR filepath = NULL;
182 filepath = xp_getfilepath(f,currentsize);
183
184 /* Get durectory path */
185 dirpath = getdirpath(filepath);
186 free(filepath);
187 filepath = NULL;
188 if (!dirpath) {
189 errno = EBADF;
190 return -1; /* Out of memory */
191 }
192#endif /* _CHECK_SPACE_BY_PSAPI_METHOD_ */
193
194#if _CHECK_SPACE_BY_VOLUME_METHOD_
195 if(!GetFileInformationByHandle(f,&fileinfo)) {
196 errno = EINVAL;
197 return -1; /* Resolution failure */
198 }
199
200 volumeid = calloc(51,sizeof(wchar_t));
201 volumepath = calloc(MAX_PATH+2,sizeof(wchar_t));
202 if(!volumeid || !volumepath) {
203 errno = EBADF;
204 return -1; /* Out of memory */
205 }
206
207 dirpath = NULL;
208
209 vol = FindFirstVolumeW(volumeid,50);
210 /* wprintf(L"%d - %ls\n",wcslen(volumeid),volumeid); */
211 do {
212 check = GetVolumeInformationW(volumeid,volumepath,MAX_PATH+1,&volumeserial,NULL,NULL,NULL,0);
213 /* wprintf(L"GetVolumeInformationW %d id %ls path %ls error %d\n",check,volumeid,volumepath,GetLastError()); */
214 if(volumeserial == fileinfo.dwVolumeSerialNumber) {
215 dirpath = volumeid;
216 break;
217 }
218 } while (FindNextVolumeW(vol,volumeid,50));
219 FindVolumeClose(vol);
220
221 if(!dirpath) free(volumeid); /* we found the volume */
222 free(volumepath);
223#endif /* _CHECK_SPACE_BY_VOLUME_METHOD_ */
224
225 /* Get available free space */
226 check = GetDiskFreeSpaceExW(dirpath,&freespace,NULL,NULL);
227 //wprintf(L"freespace %I64u\n",freespace);
228 free(dirpath);
229 if(!check) {
230 errno = EFBIG;
231 return -1; /* Error getting free space */
232 }
233
234 /* Check space requirements */
235 if ((requiredspace - currentsize.QuadPart) > freespace.QuadPart)
236 {
237 errno = EFBIG; /* File too big for disk */
238 return -1;
239 } /* We have enough space to truncate/expand */
240 return 0;
241}
242#endif
243
244int __cdecl __mingw_ftruncate64(int __fd, _off64_t __length);
245int __cdecl __mingw_ftruncate64(int __fd, _off64_t __length) {
246 HANDLE f;
247 LARGE_INTEGER quad;
248 DWORD check;
249 int ret = 0;
250 __int64 pos;
251
252 /* Sanity check */
253 if (__length < 0) {
254 goto errorout;
255 }
256
257 /* Get Win32 Handle */
258 if(__fd == -1) {
259 goto errorout;
260 }
261
262 f = (HANDLE)_get_osfhandle(__fd);
263 if (f == INVALID_HANDLE_VALUE || (GetFileType(f) != FILE_TYPE_DISK)) {
264 errno = EBADF;
265 return -1;
266 }
267
268
269 /* Save position */
270 if((pos = _telli64(__fd)) == -1LL){
271 goto errorout;
272 }
273
274#if 0
275 /* Check available space */
276 check = checkfreespace(f,__length);
277 if (check != 0) {
278 return -1; /* Error, errno already set */
279 }
280#endif
281
282 quad.QuadPart = __length;
283 check = SetFilePointer(f, (LONG)quad.LowPart, &(quad.HighPart), FILE_BEGIN);
284 if (check == INVALID_SET_FILE_POINTER && quad.LowPart != INVALID_SET_FILE_POINTER) {
285 switch (GetLastError()) {
286 case ERROR_NEGATIVE_SEEK:
287 errno = EFBIG; /* file too big? */
288 return -1;
289 case INVALID_SET_FILE_POINTER:
290 errno = EINVAL; /* shouldn't happen */
291 return -1;
292 default:
293 errno = EINVAL; /* shouldn't happen */
294 return -1;
295 }
296 }
297
298 check = SetEndOfFile(f);
299 if (!check) {
300 goto errorout;
301 }
302
303 if(_lseeki64(__fd,pos,SEEK_SET) == -1LL){
304 goto errorout;
305 }
306
307 return ret;
308
309 errorout:
310 errno = EINVAL;
311 return -1;
312}
313
314#ifdef TEST_FTRUNCATE64
315#define ftruncate64 __mingw_ftruncate64
316#endif
317
318#if (TEST_FTRUNCATE64 == 1)
319int main(){
320 LARGE_INTEGER sz;
321 ULARGE_INTEGER freespace;
322 int f;
323 LPWSTR path, dir;
324 sz.QuadPart = 0LL;
325 f = _open("XXX.tmp", _O_BINARY|_O_CREAT|_O_RDWR, _S_IREAD | _S_IWRITE);
326 wprintf(L"%d\n",ftruncate64(f,12));
327 wprintf(L"%d\n",ftruncate64(f,20));
328 wprintf(L"%d\n",ftruncate64(f,15));
329/* path = xp_getfilepath((HANDLE)_get_osfhandle(f),sz);
330 dir = getdirpath(path);
331 GetDiskFreeSpaceExW(dir,&freespace,NULL,NULL);
332 wprintf(L"fs - %ls\n",path);
333 wprintf(L"dirfs - %ls\n",dir);
334 wprintf(L"free - %I64u\n",freespace.QuadPart);
335 free(dir);
336 free(path);*/
337 _close(f);
338 return 0;
339}
340#endif /* TEST_FTRUNCATE64 */
341
342#if (TEST_FTRUNCATE64 == 2)
343int main() {
344FILE *f;
345int fd;
346char buf[100];
347int cnt;
348unlink("test.out");
349f = fopen("test.out","w+");
350fd = fileno(f);
351write(fd,"abc",3);
352fflush(f);
353printf ("err: %d\n", ftruncate64(fd,10));
354cnt = read(fd,buf,100);
355printf("cnt = %d\n",cnt);
356return 0;
357}
358#endif /* TEST_FTRUNCATE64 */
359
360#if (TEST_FTRUNCATE64 == 3)
361int main() {
362FILE *f;
363int fd;
364char buf[100];
365int cnt;
366unlink("test.out");
367f = fopen("test.out","w+");
368fd = fileno(f);
369write(fd,"abc",3);
370fflush(f);
371ftruncate64(fd,0);
372write(fd,"def",3);
373fclose(f);
374f = fopen("test.out","r");
375cnt = fread(buf,1,100,f);
376printf("cnt = %d\n",cnt);
377return 0;
378}
379#endif /* TEST_FTRUNCATE64 */
380
lib/libc/mingw/stdio/mingw_pformat.c+127-24
...@@ -66,6 +66,7 @@...@@ -66,6 +66,7 @@
66#include <limits.h>66#include <limits.h>
67#include <locale.h>67#include <locale.h>
68#include <wchar.h>68#include <wchar.h>
69#include <winternl.h>
6970
70#ifdef __ENABLE_DFP71#ifdef __ENABLE_DFP
71#ifndef __STDC_WANT_DEC_FP__72#ifndef __STDC_WANT_DEC_FP__
...@@ -163,6 +164,12 @@ typedef union ATTRIB_GCC_STRUCT __uI128 {...@@ -163,6 +164,12 @@ typedef union ATTRIB_GCC_STRUCT __uI128 {
163#define PFORMAT_XMASK 0x0000000F164#define PFORMAT_XMASK 0x0000000F
164#define PFORMAT_XSHIFT 0x00000004165#define PFORMAT_XSHIFT 0x00000004
165166
167/* `%b' and `%B' format digit extraction mask, and shift count...
168 * (These are constant, and do not propagate through the flags).
169 */
170#define PFORMAT_BMASK 0x00000001
171#define PFORMAT_BSHIFT 0x00000001
172
166/* The radix point character, used in floating point formats, is173/* The radix point character, used in floating point formats, is
167 * localised on the basis of the active LC_NUMERIC locale category.174 * localised on the basis of the active LC_NUMERIC locale category.
168 * It is stored locally, as a `wchar_t' entity, which is converted175 * It is stored locally, as a `wchar_t' entity, which is converted
...@@ -361,6 +368,23 @@ void __bigint_to_stringx(const uint32_t *digits, const uint32_t digitlen, char *...@@ -361,6 +368,23 @@ void __bigint_to_stringx(const uint32_t *digits, const uint32_t digitlen, char *
361 buff[bufflen - 1] = '\0';368 buff[bufflen - 1] = '\0';
362}369}
363370
371/* LSB first, binary version */
372static
373void __bigint_to_stringb(const uint32_t *digits, const uint32_t digitlen, char *buff, const uint32_t bufflen){
374 const uint32_t digitsize = sizeof(*digits) * 8;
375 const uint64_t bits = digitsize * digitlen;
376 uint32_t pos = bufflen - 2;
377
378 for(uint32_t i = 0; i < bits; i++){
379 buff[pos] = (digits[i / digitsize] & (1 << (i % digitsize))) ? '1' : '0';
380 if(!pos) break; /* sanity check */
381 pos--;
382 }
383 /* Fill any remaining leading positions with zeros */
384 memset(buff, '0', pos + 1);
385 buff[bufflen - 1] = '\0';
386}
387
364/* LSB first, octet version */388/* LSB first, octet version */
365static389static
366void __bigint_to_stringo(const uint32_t *digits, const uint32_t digitlen, char *buff, const uint32_t bufflen){390void __bigint_to_stringo(const uint32_t *digits, const uint32_t digitlen, char *buff, const uint32_t bufflen){
...@@ -377,8 +401,8 @@ void __bigint_to_stringo(const uint32_t *digits, const uint32_t digitlen, char *...@@ -377,8 +401,8 @@ void __bigint_to_stringo(const uint32_t *digits, const uint32_t digitlen, char *
377 pos--;401 pos--;
378 }402 }
379 }403 }
380 if(pos < bufflen - 1)404 /* Fill any remaining leading positions with zeros */
381 memset(buff,'0', pos + 1);405 memset(buff, '0', pos + 1);
382 buff[bufflen - 1] = '\0';406 buff[bufflen - 1] = '\0';
383}407}
384#endif /* defined(__ENABLE_PRINTF128) */408#endif /* defined(__ENABLE_PRINTF128) */
...@@ -569,8 +593,8 @@ void __pformat_wputchars( const wchar_t *s, int count, __pformat_t *stream )...@@ -569,8 +593,8 @@ void __pformat_wputchars( const wchar_t *s, int count, __pformat_t *stream )
569 * output quota is honoured.593 * output quota is honoured.
570 */594 */
571 char buf[16];595 char buf[16];
572 mbstate_t state;596 mbstate_t state = {0};
573 int len = wcrtomb(buf, L'\0', &state);597 int len;
574598
575 if( (stream->precision >= 0) && (count > stream->precision) )599 if( (stream->precision >= 0) && (count > stream->precision) )
576 /*600 /*
...@@ -657,7 +681,7 @@ void __pformat_wputchars( const wchar_t *s, int count, __pformat_t *stream )...@@ -657,7 +681,7 @@ void __pformat_wputchars( const wchar_t *s, int count, __pformat_t *stream )
657 __pformat_putc( '\x20', stream );681 __pformat_putc( '\x20', stream );
658682
659 len = count;683 len = count;
660 while(len-- > 0 && *s != 0)684 while(len-- > 0)
661 {685 {
662 __pformat_putc(*s++, stream);686 __pformat_putc(*s++, stream);
663 }687 }
...@@ -752,12 +776,12 @@ void __pformat_int( __pformat_intarg_t value, __pformat_t *stream )...@@ -752,12 +776,12 @@ void __pformat_int( __pformat_intarg_t value, __pformat_t *stream )
752 */776 */
753 __bigint_to_string(value.__pformat_u128_t.t128_2.digits32,777 __bigint_to_string(value.__pformat_u128_t.t128_2.digits32,
754 4, tmp_buff, bufflen);778 4, tmp_buff, bufflen);
755 __bigint_trim_leading_zeroes(tmp_buff,1);779 __bigint_trim_leading_zeroes(tmp_buff, 0);
756780
757 memset(p,0,bufflen);781 memset(p,0,bufflen);
758 for(int32_t i = strlen(tmp_buff) - 1; i >= 0; i--){782 for(int32_t i = strlen(tmp_buff) - 1; i >= 0; i--){
759 if ( i && (stream->flags & PFORMAT_GROUPED) != 0 && stream->thousands_chr != 0783 if (p != buf && (stream->flags & PFORMAT_GROUPED) != 0 && stream->thousands_chr != 0
760 && (i % 4) == 3)784 && ((p - buf) % 4) == 3)
761 {785 {
762 *p++ = ',';786 *p++ = ',';
763 }787 }
...@@ -883,7 +907,7 @@ while( value.__pformat_ullong_t )...@@ -883,7 +907,7 @@ while( value.__pformat_ullong_t )
883static907static
884void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )908void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )
885{909{
886 /* Handler for `%o', `%p', `%x' and `%X' conversions.910 /* Handler for `%o', `%p', `%x', `%X', `%b' and `%B' conversions.
887 *911 *
888 * These can be implemented using a simple `mask and shift' strategy;912 * These can be implemented using a simple `mask and shift' strategy;
889 * set up the mask and shift values appropriate to the conversion format,913 * set up the mask and shift values appropriate to the conversion format,
...@@ -891,7 +915,8 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )...@@ -891,7 +915,8 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )
891 * digits of the formatted value, in preparation for output.915 * digits of the formatted value, in preparation for output.
892 */916 */
893 int width;917 int width;
894 int shift = (fmt == 'o') ? PFORMAT_OSHIFT : PFORMAT_XSHIFT;918 int shift = (fmt == 'o') ? PFORMAT_OSHIFT :
919 (fmt == 'b' || fmt == 'B') ? PFORMAT_BSHIFT : PFORMAT_XSHIFT;
895 int bufflen = __pformat_int_bufsiz(2, shift, stream);920 int bufflen = __pformat_int_bufsiz(2, shift, stream);
896 char *buf = NULL;921 char *buf = NULL;
897#ifdef __ENABLE_PRINTF128922#ifdef __ENABLE_PRINTF128
...@@ -904,16 +929,19 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )...@@ -904,16 +929,19 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )
904 tmp_buf = alloca(bufflen);929 tmp_buf = alloca(bufflen);
905 if(fmt == 'o'){930 if(fmt == 'o'){
906 __bigint_to_stringo(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen);931 __bigint_to_stringo(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen);
932 } else if(fmt == 'b' || fmt == 'B'){
933 __bigint_to_stringb(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen);
907 } else {934 } else {
908 __bigint_to_stringx(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen, !(fmt & PFORMAT_XCASE));935 __bigint_to_stringx(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen, !(fmt & PFORMAT_XCASE));
909 }936 }
910 __bigint_trim_leading_zeroes(tmp_buf,0);937 __bigint_trim_leading_zeroes(tmp_buf,0);
911938
912 memset(buf,0,bufflen);939 memset(buf,0,bufflen);
913 for(int32_t i = strlen(tmp_buf); i >= 0; i--)940 for(int32_t i = strlen(tmp_buf)-1; i >= 0; i--)
914 *p++ = tmp_buf[i];941 *p++ = tmp_buf[i];
915#else942#else
916 int mask = (fmt == 'o') ? PFORMAT_OMASK : PFORMAT_XMASK;943 int mask = (fmt == 'o') ? PFORMAT_OMASK :
944 (fmt == 'b' || fmt == 'B') ? PFORMAT_BMASK : PFORMAT_XMASK;
917 while( value.__pformat_ullong_t )945 while( value.__pformat_ullong_t )
918 {946 {
919 /* Encode the specified non-zero input value as a sequence of digits,947 /* Encode the specified non-zero input value as a sequence of digits,
...@@ -975,7 +1003,7 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )...@@ -975,7 +1003,7 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )
975 if( ((width = stream->width) > 0)1003 if( ((width = stream->width) > 0)
976 && (fmt != 'o') && (stream->flags & PFORMAT_HASHED) )1004 && (fmt != 'o') && (stream->flags & PFORMAT_HASHED) )
977 /*1005 /*
978 * For `%#x' or `%#X' formats, (which have the `#' flag set),1006 * For `%#x', `%#X', `%#b' or `%#B' formats, (which have the `#' flag set),
979 * further reduce the padding width to accommodate the radix1007 * further reduce the padding width to accommodate the radix
980 * indicating prefix.1008 * indicating prefix.
981 */1009 */
...@@ -1468,7 +1496,10 @@ void __pformat_emit_efloat( int sign, char *value, int e, __pformat_t *stream )...@@ -1468,7 +1496,10 @@ void __pformat_emit_efloat( int sign, char *value, int e, __pformat_t *stream )
1468 * include the following exponent).1496 * include the following exponent).
1469 */1497 */
1470 int exp_width = 1;1498 int exp_width = 1;
1471 __pformat_intarg_t exponent; exponent.__pformat_llong_t = e -= 1;1499 __pformat_intarg_t exponent;
1500 e -= 1;
1501 exponent.__pformat_u128_t.t128.digits[1] = e < 0 ? -1 : 0;
1502 exponent.__pformat_u128_t.t128.digits[0] = e;
14721503
1473 /* Determine how many digit positions are required for the exponent.1504 /* Determine how many digit positions are required for the exponent.
1474 */1505 */
...@@ -1881,14 +1912,15 @@ void __pformat_gfloat( long double x, __pformat_t *stream )...@@ -1881,14 +1912,15 @@ void __pformat_gfloat( long double x, __pformat_t *stream )
1881 * precede the radix point, but we truncate any balance following1912 * precede the radix point, but we truncate any balance following
1882 * it, to suppress output of non-significant trailing zeros...1913 * it, to suppress output of non-significant trailing zeros...
1883 */1914 */
1884 if( ((stream->precision = strlen( value ) - intlen) < 0)1915 stream->precision = strlen( value ) - intlen;
1885 /*1916
1886 * This may require a compensating adjustment to the field1917 /* When the mantissa is shorter than the number of integer digits
1887 * width, to accommodate significant trailing zeros, which1918 * (e.g., 100000 has mantissa "1" but requires 6 digit positions),
1888 * precede the radix point...1919 * precision becomes negative. Clamp to zero to represent no
1889 */1920 * fractional digits.
1890 && (stream->width > 0) )1921 */
1891 stream->width += stream->precision;1922 if( stream->precision < 0 )
1923 stream->precision = 0;
18921924
1893 /* Now, we format the result as any other fixed point value.1925 /* Now, we format the result as any other fixed point value.
1894 */1926 */
...@@ -1945,7 +1977,7 @@ void __pformat_emit_xfloat( __pformat_fpreg_t value, __pformat_t *stream )...@@ -1945,7 +1977,7 @@ void __pformat_emit_xfloat( __pformat_fpreg_t value, __pformat_t *stream )
1945 * representation of the argument value.1977 * representation of the argument value.
1946 */1978 */
1947 char buf[18 + 6], *p = buf;1979 char buf[18 + 6], *p = buf;
1948 __pformat_intarg_t exponent; short exp_width = 2;1980 short exp_width = 2;
19491981
1950 if (value.__pformat_fpreg_mantissa != 0 ||1982 if (value.__pformat_fpreg_mantissa != 0 ||
1951 value.__pformat_fpreg_exponent != 0)1983 value.__pformat_fpreg_exponent != 0)
...@@ -2197,6 +2229,7 @@ void __pformat_emit_xfloat( __pformat_fpreg_t value, __pformat_t *stream )...@@ -2197,6 +2229,7 @@ void __pformat_emit_xfloat( __pformat_fpreg_t value, __pformat_t *stream )
2197 stream->width += exp_width;2229 stream->width += exp_width;
2198 stream->flags |= PFORMAT_SIGNED;2230 stream->flags |= PFORMAT_SIGNED;
2199 /* sign extend */2231 /* sign extend */
2232 __pformat_intarg_t exponent;
2200 exponent.__pformat_u128_t.t128.digits[1] = (value.__pformat_fpreg_exponent < 0) ? -1 : 0;2233 exponent.__pformat_u128_t.t128.digits[1] = (value.__pformat_fpreg_exponent < 0) ? -1 : 0;
2201 exponent.__pformat_u128_t.t128.digits[0] = value.__pformat_fpreg_exponent;2234 exponent.__pformat_u128_t.t128.digits[0] = value.__pformat_fpreg_exponent;
2202 __pformat_int( exponent, stream );2235 __pformat_int( exponent, stream );
...@@ -2506,6 +2539,64 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)...@@ -2506,6 +2539,64 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)
2506 */2539 */
2507 __pformat_puts( va_arg( argv, char * ), &stream );2540 __pformat_puts( va_arg( argv, char * ), &stream );
2508 goto format_scan;2541 goto format_scan;
2542
2543 case 'Z':
2544 /*
2545 * The logic for `%Z` length modifier is quite complicated.
2546 *
2547 * for printf:
2548 * `%Z` - UNICODE_STRING for UCRT; ANSI_STRING for crtdll,msvcrt10,msvcrt,msvcr80-msvcr120
2549 * `%hZ` - ANSI_STRING
2550 * `%lZ` - UNICODE_STRING for UCRT; ANSI_STRING for crtdll,msvcrt10,msvcrt,msvcr80-msvcr120
2551 * `%wZ` - UNICODE_STRING
2552 *
2553 * for wprintf:
2554 * `%Z` - ANSI_STRING
2555 * `%hZ` - ANSI_STRING
2556 * `%lZ` - UNICODE_STRING for UCRT; ANSI_STRING for crtdll,msvcrt10,msvcrt,msvcr80-msvcr120
2557 * `%wZ` - UNICODE_STRING
2558 *
2559 * There are some other changes between versions regarding nul chars.
2560 * - msvcrt since Vista, msvcr80+ and UCRT do not accept nul chars in ANSI_STRING for wprintf.
2561 * If encountering a nul char, it stops processing the format string and returns -1.
2562 * - msvcrt before Vista, crtdll and msvcrt10 accept nul char in ANSI_STRING for wprintf,
2563 * but the first nul char and everything after it in ANSI_STRING content is discarded.
2564 * - msvcrt20 does not support %Z format at all.
2565 * - msvcrt40 from Visual C++ 4.0 and in Win9x systems does not support %Z format at all.
2566 * - msvcrt40 in WinNT systems forwards calls to msvcrt, so it behaves as msvcrt described above.
2567 * - ANSI_STRING for printf, and UNICODE_STRING for both printf and wprintf work fine
2568 * in all versions, every nul byte and all following chars in the ANSI_STRING/UNICODE_STRING
2569 * are processed and printed.
2570 *
2571 * This mingw-w64 implementation uses UCRT behavior of length modifiers.
2572 */
2573 if( length == PFORMAT_LENGTH_INT )
2574 {
2575 #ifndef __BUILD_WIDEAPI
2576 length = PFORMAT_LENGTH_LONG;
2577 #else
2578 length = PFORMAT_LENGTH_SHORT;
2579 #endif
2580 }
2581
2582 if( (length == PFORMAT_LENGTH_LONG)
2583 || (length == PFORMAT_LENGTH_LLONG)
2584 )
2585 {
2586 const UNICODE_STRING *s = va_arg( argv, UNICODE_STRING * );
2587 const wchar_t *buf = (s && s->Buffer) ? (const wchar_t *)s->Buffer : L"(null)";
2588 const int len = (s && s->Buffer) ? s->Length / sizeof(wchar_t) : ( sizeof( "(null)" ) - 1 );
2589 __pformat_wputchars( buf, len, &stream );
2590 }
2591 else
2592 {
2593 const ANSI_STRING *s = va_arg( argv, ANSI_STRING * );
2594 const char *buf = (s && s->Buffer) ? (const char *)s->Buffer : "(null)";
2595 const int len = (s && s->Buffer) ? s->Length : ( sizeof( "(null)" ) - 1 );
2596 __pformat_putchars( buf, len, &stream );
2597 }
2598 goto format_scan;
2599
2509 case 'm': /* strerror (errno) */2600 case 'm': /* strerror (errno) */
2510 __pformat_puts (strerror (saved_errno), &stream);2601 __pformat_puts (strerror (saved_errno), &stream);
2511 goto format_scan;2602 goto format_scan;
...@@ -2514,8 +2605,10 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)...@@ -2514,8 +2605,10 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)
2514 case 'u':2605 case 'u':
2515 case 'x':2606 case 'x':
2516 case 'X':2607 case 'X':
2608 case 'b':
2609 case 'B':
2517 /*2610 /*
2518 * Unsigned integer values; octal, decimal or hexadecimal format...2611 * Unsigned integer values; octal, decimal, hexadecimal or binary format...
2519 */2612 */
2520 stream.flags &= ~PFORMAT_POSITIVE;2613 stream.flags &= ~PFORMAT_POSITIVE;
2521#if __ENABLE_PRINTF1282614#if __ENABLE_PRINTF128
...@@ -2977,6 +3070,16 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)...@@ -2977,6 +3070,16 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)
2977 state = PFORMAT_END;3070 state = PFORMAT_END;
2978 break;3071 break;
29793072
3073 case 'w':
3074 /*
3075 * Identify the appropriate argument as a wide
3076 * character or wide string when associated with
3077 * `%c`, `%C`, `%s' or `%S`.
3078 */
3079 length = PFORMAT_LENGTH_LONG;
3080 state = PFORMAT_END;
3081 break;
3082
2980 case 'L':3083 case 'L':
2981 /*3084 /*
2982 * Identify the appropriate argument as a `long double',3085 * Identify the appropriate argument as a `long double',
lib/libc/mingw/stdio/mingw_sformat.c+4
...@@ -927,6 +927,7 @@ __mingw_sformat (_IFP *s, const char *format, va_list argp)...@@ -927,6 +927,7 @@ __mingw_sformat (_IFP *s, const char *format, va_list argp)
927 case 'o': case 'p':927 case 'o': case 'p':
928 case 'u':928 case 'u':
929 case 'x': case 'X':929 case 'x': case 'X':
930 case 'b': case 'B':
930 switch (fc)931 switch (fc)
931 {932 {
932 case 'd':933 case 'd':
...@@ -954,6 +955,9 @@ __mingw_sformat (_IFP *s, const char *format, va_list argp)...@@ -954,6 +955,9 @@ __mingw_sformat (_IFP *s, const char *format, va_list argp)
954 case 'x': case 'X':955 case 'x': case 'X':
955 base = 16;956 base = 16;
956 break;957 break;
958 case 'b': case 'B':
959 base = 2;
960 break;
957 }961 }
958962
959 if ((c = in_ch (s, &read_in)) == EOF)963 if ((c = in_ch (s, &read_in)) == EOF)
lib/libc/mingw/stdio/mingw_vsnprintf.c+3-4
...@@ -57,11 +57,10 @@ int __cdecl __vsnprintf(APICHAR *buf, size_t length, const APICHAR *fmt, va_list...@@ -57,11 +57,10 @@ int __cdecl __vsnprintf(APICHAR *buf, size_t length, const APICHAR *fmt, va_list
57 buf[retval < (int) length ? retval : (int)length] = '\0';57 buf[retval < (int) length ? retval : (int)length] = '\0';
5858
59#if defined(__BUILD_WIDEAPI) && defined(__BUILD_WIDEAPI_ISO)59#if defined(__BUILD_WIDEAPI) && defined(__BUILD_WIDEAPI_ISO)
60 /* For wide api ISO C95+ vswprintf() when requested length60 /* ISO C95+ fails when n or more data wide chars are needed. length was
61 * is equal or larger than buffer length, returns negative61 * already decremented once for the terminator, so use > not >= here.
62 * value as required by ISO C95+.
63 */62 */
64 if( retval >= (int) length )63 if( retval > (int) length )
65 retval = -1;64 retval = -1;
66#endif65#endif
6766
lib/libc/mingw/stdio/msvcr80plus_ftruncate64.c created+30
...@@ -0,0 +1,30 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#include <errno.h>
8#include <io.h>
9#include <unistd.h>
10
11int __cdecl ftruncate64(int fd, _off64_t length)
12{
13 errno_t error;
14
15 /* _chsize_s calls invalid parameter exception handler, so validate input parameters */
16 if (fd < 0) {
17 errno = EBADF;
18 return -1;
19 }
20 if (length < 0) {
21 errno = EINVAL;
22 return -1;
23 }
24 error = _chsize_s(fd, length);
25 if (error) {
26 errno = error;
27 return -1;
28 }
29 return 0;
30}
lib/libc/mingw/stdio/truncate.c-11
...@@ -12,14 +12,3 @@ int truncate(const char *pathname, _off_t len){...@@ -12,14 +12,3 @@ int truncate(const char *pathname, _off_t len){
12 errno = err;12 errno = err;
13 return ret;13 return ret;
14}14}
15
16int truncate64(const char *pathname, _off64_t len){
17 int ret, err;
18 int fd = _open(pathname,_O_BINARY|_O_RDWR);
19 if (fd == -1) return fd;
20 ret = ftruncate64(fd,len);
21 err = errno;
22 _close(fd);
23 errno = err;
24 return ret;
25}
lib/libc/mingw/stdio/truncate64.c created+14
...@@ -0,0 +1,14 @@
1#include <unistd.h>
2#include <fcntl.h>
3#include <errno.h>
4
5int truncate64(const char *pathname, _off64_t len){
6 int ret, err;
7 int fd = _open(pathname,_O_BINARY|_O_RDWR);
8 if (fd == -1) return fd;
9 ret = ftruncate64(fd,len);
10 err = errno;
11 _close(fd);
12 errno = err;
13 return ret;
14}
lib/libc/mingw/stdio/ucrt___local_stdio_printf_options.c+1-1
...@@ -10,6 +10,6 @@...@@ -10,6 +10,6 @@
1010
11static unsigned __int64 options = _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS | _CRT_INTERNAL_PRINTF_STANDARD_ROUNDING;11static unsigned __int64 options = _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS | _CRT_INTERNAL_PRINTF_STANDARD_ROUNDING;
1212
13unsigned __int64* __local_stdio_printf_options(void) {13unsigned __int64* __cdecl __local_stdio_printf_options(void) {
14 return &options;14 return &options;
15}15}
lib/libc/mingw/stdio/ucrt___local_stdio_scanf_options.c+1-1
...@@ -10,6 +10,6 @@...@@ -10,6 +10,6 @@
1010
11static unsigned __int64 options = _CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS;11static unsigned __int64 options = _CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS;
1212
13unsigned __int64* __local_stdio_scanf_options(void) {13unsigned __int64* __cdecl __local_stdio_scanf_options(void) {
14 return &options;14 return &options;
15}15}
lib/libc/mingw/stdio/ucrt__scwprintf.c created+21
...@@ -0,0 +1,21 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#undef __MSVCRT_VERSION__
8#define _UCRT
9#include <stdio.h>
10#include <stdarg.h>
11
12int __cdecl _scwprintf(const wchar_t * restrict format, ...)
13{
14 int ret;
15 va_list args;
16 va_start(args, format);
17 ret = __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, format, NULL, args);
18 va_end(args);
19 return ret;
20}
21int __cdecl (*__MINGW_IMP_SYMBOL(_scwprintf))(const wchar_t * restrict, ...) = _scwprintf;
lib/libc/mingw/stdio/ucrt__snwprintf.c+1-2
...@@ -10,8 +10,6 @@...@@ -10,8 +10,6 @@
10#include <stdarg.h>10#include <stdarg.h>
11#include <stdio.h>11#include <stdio.h>
1212
13int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t * restrict _Format, ...);
14
15int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t * restrict _Format, ...)13int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t * restrict _Format, ...)
16{14{
17 va_list ap;15 va_list ap;
...@@ -21,3 +19,4 @@ int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t *...@@ -21,3 +19,4 @@ int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t *
21 va_end(ap);19 va_end(ap);
22 return ret;20 return ret;
23}21}
22int __cdecl (*__MINGW_IMP_SYMBOL(_snwprintf))(wchar_t * restrict, size_t, const wchar_t * restrict, ...) = _snwprintf;
lib/libc/mingw/stdio/ucrt__swprintf.c created+21
...@@ -0,0 +1,21 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#undef __MSVCRT_VERSION__
8#define _UCRT
9#include <stdio.h>
10#include <stdarg.h>
11
12int __cdecl _swprintf(wchar_t * restrict dest, const wchar_t * restrict format, ...)
13{
14 int ret;
15 va_list args;
16 va_start(args, format);
17 ret = __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, dest, (size_t)-1, format, NULL, args);
18 va_end(args);
19 return ret;
20}
21int __cdecl (*__MINGW_IMP_SYMBOL(_swprintf))(wchar_t * restrict, const wchar_t * restrict, ...) = _swprintf;
lib/libc/mingw/stdio/ucrt__vscwprintf.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#undef __MSVCRT_VERSION__
8#define _UCRT
9#include <stdio.h>
10
11int __cdecl _vscwprintf(const wchar_t * restrict format, va_list args)
12{
13 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, format, NULL, args);
14}
15int __cdecl (*__MINGW_IMP_SYMBOL(_vscwprintf))(const wchar_t * restrict, va_list) = _vscwprintf;
lib/libc/mingw/stdio/ucrt__vsnwprintf.c+1
...@@ -12,3 +12,4 @@ int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t...@@ -12,3 +12,4 @@ int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t
12{12{
13 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION, _Dest, _Count, _Format, NULL, _Args);13 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION, _Dest, _Count, _Format, NULL, _Args);
14}14}
15int __cdecl (*__MINGW_IMP_SYMBOL(_vsnwprintf))(wchar_t * __restrict__,size_t,const wchar_t * __restrict__,va_list) = _vsnwprintf;
lib/libc/mingw/stdio/ucrt__vswprintf.c created+15
...@@ -0,0 +1,15 @@
1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6
7#undef __MSVCRT_VERSION__
8#define _UCRT
9#include <stdio.h>
10
11int __cdecl _vswprintf(wchar_t * restrict dest, const wchar_t * restrict format, va_list args)
12{
13 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, dest, (size_t)-1, format, NULL, args);
14}
15int __cdecl (*__MINGW_IMP_SYMBOL(_vswprintf))(wchar_t * restrict, const wchar_t * restrict, va_list) = _vswprintf;
lib/libc/mingw/winpthreads/misc.c+21-5
...@@ -35,10 +35,13 @@...@@ -35,10 +35,13 @@
35void (WINAPI *_pthread_get_system_time_best_as_file_time) (LPFILETIME) = NULL;35void (WINAPI *_pthread_get_system_time_best_as_file_time) (LPFILETIME) = NULL;
36static ULONGLONG (WINAPI *_pthread_get_tick_count_64) (VOID);36static ULONGLONG (WINAPI *_pthread_get_tick_count_64) (VOID);
37HRESULT (WINAPI *_pthread_set_thread_description) (HANDLE, PCWSTR) = NULL;37HRESULT (WINAPI *_pthread_set_thread_description) (HANDLE, PCWSTR) = NULL;
38BOOL (WINAPI *_pthread_get_handle_information) (HANDLE, LPDWORD) = NULL;
3839
39#if defined(__GNUC__) || defined(__clang__)40#if defined(__GNUC__) || defined(__clang__)
41#if __GNUC__ >= 9 && !defined(__clang__)
40#pragma GCC diagnostic push42#pragma GCC diagnostic push
41#pragma GCC diagnostic ignored "-Wprio-ctor-dtor"43#pragma GCC diagnostic ignored "-Wprio-ctor-dtor"
44#endif
42__attribute__((constructor(0)))45__attribute__((constructor(0)))
43#endif46#endif
44static void winpthreads_init(void)47static void winpthreads_init(void)
...@@ -46,9 +49,15 @@ static void winpthreads_init(void)...@@ -46,9 +49,15 @@ static void winpthreads_init(void)
46 HMODULE mod = GetModuleHandleA("kernel32.dll");49 HMODULE mod = GetModuleHandleA("kernel32.dll");
47 if (mod)50 if (mod)
48 {51 {
52 _pthread_get_handle_information =
53 (BOOL (WINAPI *)(HANDLE, LPDWORD))(void*) GetProcAddress(mod, "GetHandleInformation");
54
49 _pthread_get_tick_count_64 =55 _pthread_get_tick_count_64 =
50 (ULONGLONG (WINAPI *)(VOID))(void*) GetProcAddress(mod, "GetTickCount64");56 (ULONGLONG (WINAPI *)(VOID))(void*) GetProcAddress(mod, "GetTickCount64");
5157
58 _pthread_set_thread_description =
59 (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription");
60
52 /* <1us precision on Windows 10 */61 /* <1us precision on Windows 10 */
53 _pthread_get_system_time_best_as_file_time =62 _pthread_get_system_time_best_as_file_time =
54 (void (WINAPI *)(LPFILETIME))(void*) GetProcAddress(mod, "GetSystemTimePreciseAsFileTime");63 (void (WINAPI *)(LPFILETIME))(void*) GetProcAddress(mod, "GetSystemTimePreciseAsFileTime");
...@@ -58,14 +67,21 @@ static void winpthreads_init(void)...@@ -58,14 +67,21 @@ static void winpthreads_init(void)
58 /* >15ms precision on Windows 10 */67 /* >15ms precision on Windows 10 */
59 _pthread_get_system_time_best_as_file_time = GetSystemTimeAsFileTime;68 _pthread_get_system_time_best_as_file_time = GetSystemTimeAsFileTime;
6069
61 mod = GetModuleHandleA("kernelbase.dll");70 /* Although SetThreadDescription lives in kernel32.dll, on Windows Server 2016,
62 if (mod)71 * Windows 10 LTSB 2016 and Windows 10 version 1607, it was only available in
72 * kernelbase.dll. So, load it from there for maximum coverage.
73 */
74 if (!_pthread_set_thread_description)
63 {75 {
64 _pthread_set_thread_description =76 mod = GetModuleHandleA("kernelbase.dll");
65 (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription");77 if (mod)
78 {
79 _pthread_set_thread_description =
80 (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription");
81 }
66 }82 }
67}83}
68#if defined(__GNUC__) || defined(__clang__)84#if defined(__GNUC__) && __GNUC__ >= 9 && !defined(__clang__)
69#pragma GCC diagnostic pop85#pragma GCC diagnostic pop
70#endif86#endif
7187
lib/libc/mingw/winpthreads/misc.h+22-10
...@@ -35,18 +35,32 @@ typedef long long LONGBAG;...@@ -35,18 +35,32 @@ typedef long long LONGBAG;
35typedef long LONGBAG;35typedef long LONGBAG;
36#endif36#endif
3737
38#if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)38extern BOOL (WINAPI *_pthread_get_handle_information) (HANDLE, LPDWORD);
39#undef GetHandleInformation39
40#define GetHandleInformation(h,f) (1)40/* For gcc and clang define DUMMY_WRITABLE_DWORD as C99 compound literal.
41 * For other pre-C99 compilers declare DUMMY_WRITABLE_DWORD as static variable.
42 */
43#if defined(__GNUC__) || defined(__clang__)
44#define DUMMY_WRITABLE_DWORD (DWORD){0}
45#else
46static DWORD DUMMY_WRITABLE_DWORD;
41#endif47#endif
4248
43#define CHECK_HANDLE(h) \49#define TEST_HANDLE(h) \
50 (((h) != NULL && (h) != INVALID_HANDLE_VALUE) && ( \
51 _pthread_get_handle_information == NULL || \
52 _pthread_get_handle_information((h), &DUMMY_WRITABLE_DWORD) || \
53 GetLastError() == ERROR_CALL_NOT_IMPLEMENTED \
54 ))
55
56#define CHECK_HANDLE2(h, e) \
44 do { \57 do { \
45 DWORD dwFlags; \58 if (!TEST_HANDLE(h)) \
46 if (!(h) || ((h) == INVALID_HANDLE_VALUE) || !GetHandleInformation((h), &dwFlags)) \59 return e; \
47 return EINVAL; \
48 } while (0)60 } while (0)
4961
62#define CHECK_HANDLE(h) CHECK_HANDLE2(h, EINVAL)
63
50#define CHECK_PTR(p) do { if (!(p)) return EINVAL; } while (0)64#define CHECK_PTR(p) do { if (!(p)) return EINVAL; } while (0)
5165
52#define UPD_RESULT(x,r) do { int _r = (x); (r) = (r) ? (r) : _r; } while (0)66#define UPD_RESULT(x,r) do { int _r = (x); (r) = (r) ? (r) : _r; } while (0)
...@@ -59,10 +73,8 @@ typedef long LONGBAG;...@@ -59,10 +73,8 @@ typedef long LONGBAG;
5973
60#define CHECK_OBJECT(o, e) \74#define CHECK_OBJECT(o, e) \
61 do { \75 do { \
62 DWORD dwFlags; \
63 if (!(o)) return e; \76 if (!(o)) return e; \
64 if (!((o)->h) || (((o)->h) == INVALID_HANDLE_VALUE) || !GetHandleInformation(((o)->h), &dwFlags)) \77 CHECK_HANDLE2((o)->h, e); \
65 return e; \
66 } while (0)78 } while (0)
6779
68#define VALID(x) if (!(p)) return EINVAL;80#define VALID(x) if (!(p)) return EINVAL;
lib/libc/mingw/winpthreads/mutex.c+5-6
...@@ -26,7 +26,6 @@...@@ -26,7 +26,6 @@
26#endif26#endif
2727
28#include <malloc.h>28#include <malloc.h>
29#include <stdbool.h>
30#include <stdio.h>29#include <stdio.h>
3130
32#define WIN32_LEAN_AND_MEAN31#define WIN32_LEAN_AND_MEAN
...@@ -64,7 +63,7 @@ typedef struct {...@@ -64,7 +63,7 @@ typedef struct {
6463
65/* Whether a mutex is still a static initializer (not a pointer to64/* Whether a mutex is still a static initializer (not a pointer to
66 a mutex_impl_t). */65 a mutex_impl_t). */
67static bool66static BOOL
68is_static_initializer(pthread_mutex_t m)67is_static_initializer(pthread_mutex_t m)
69{68{
70 /* Treat 0 as a static initializer as well (for normal mutexes),69 /* Treat 0 as a static initializer as well (for normal mutexes),
...@@ -101,7 +100,7 @@ mutex_impl_init(pthread_mutex_t *m, mutex_impl_t *mi)...@@ -101,7 +100,7 @@ mutex_impl_init(pthread_mutex_t *m, mutex_impl_t *mi)
101100
102/* Return the implementation part of a mutex, creating it if necessary.101/* Return the implementation part of a mutex, creating it if necessary.
103 Return NULL on out-of-memory error. */102 Return NULL on out-of-memory error. */
104static inline mutex_impl_t *103static WINPTHREADS_INLINE mutex_impl_t *
105mutex_impl(pthread_mutex_t *m)104mutex_impl(pthread_mutex_t *m)
106{105{
107 mutex_impl_t *mi = (mutex_impl_t *)*m;106 mutex_impl_t *mi = (mutex_impl_t *)*m;
...@@ -117,7 +116,7 @@ mutex_impl(pthread_mutex_t *m)...@@ -117,7 +116,7 @@ mutex_impl(pthread_mutex_t *m)
117116
118/* Lock a mutex. Give up after 'timeout' ms (with ETIMEDOUT),117/* Lock a mutex. Give up after 'timeout' ms (with ETIMEDOUT),
119 or never if timeout=INFINITE. */118 or never if timeout=INFINITE. */
120static inline int119static WINPTHREADS_INLINE int
121pthread_mutex_lock_intern (pthread_mutex_t *m, DWORD timeout)120pthread_mutex_lock_intern (pthread_mutex_t *m, DWORD timeout)
122{121{
123 mutex_impl_t *mi = mutex_impl(m);122 mutex_impl_t *mi = mutex_impl(m);
...@@ -148,7 +147,7 @@ pthread_mutex_lock_intern (pthread_mutex_t *m, DWORD timeout)...@@ -148,7 +147,7 @@ pthread_mutex_lock_intern (pthread_mutex_t *m, DWORD timeout)
148 /* Make sure there is an event object on which to wait. */147 /* Make sure there is an event object on which to wait. */
149 if (mi->event == NULL) {148 if (mi->event == NULL) {
150 /* Make an auto-reset event object. */149 /* Make an auto-reset event object. */
151 HANDLE ev = CreateEvent(NULL, false, false, NULL);150 HANDLE ev = CreateEvent(NULL, FALSE, FALSE, NULL);
152 if (ev == NULL) {151 if (ev == NULL) {
153 switch (GetLastError()) {152 switch (GetLastError()) {
154 case ERROR_ACCESS_DENIED:153 case ERROR_ACCESS_DENIED:
...@@ -232,7 +231,7 @@ int pthread_mutex_unlock(pthread_mutex_t *m)...@@ -232,7 +231,7 @@ int pthread_mutex_unlock(pthread_mutex_t *m)
232231
233 if (unlikely(mi->type != Normal)) {232 if (unlikely(mi->type != Normal)) {
234 if (mi->state == Unlocked)233 if (mi->state == Unlocked)
235 return EINVAL;234 return EPERM;
236 if (mi->owner != GetCurrentThreadId())235 if (mi->owner != GetCurrentThreadId())
237 return EPERM;236 return EPERM;
238 if (mi->rec_lock > 0) {237 if (mi->rec_lock > 0) {
lib/libc/mingw/winpthreads/sem.c+9-2
...@@ -267,8 +267,15 @@ int sem_timedwait64(sem_t *sem, const struct _timespec64 *t)...@@ -267,8 +267,15 @@ int sem_timedwait64(sem_t *sem, const struct _timespec64 *t)
267267
268int sem_timedwait32(sem_t *sem, const struct _timespec32 *t)268int sem_timedwait32(sem_t *sem, const struct _timespec32 *t)
269{269{
270 struct _timespec64 t64 = {.tv_sec = t->tv_sec, .tv_nsec = t->tv_nsec};270 struct _timespec64 t64 = {0};
271 return __sem_timedwait (sem, &t64);271
272 if (t != NULL)
273 {
274 t64.tv_sec = t->tv_sec;
275 t64.tv_nsec = t->tv_nsec;
276 }
277
278 return __sem_timedwait (sem, t == NULL ? NULL : &t64);
272}279}
273280
274int281int
lib/libc/mingw/winpthreads/thread.c+76-94
...@@ -20,6 +20,16 @@...@@ -20,6 +20,16 @@
20 DEALINGS IN THE SOFTWARE.20 DEALINGS IN THE SOFTWARE.
21*/21*/
2222
23#if defined(__arm__) || defined(__aarch64__)
24/* We use setjmp/longjmp through asynchronous function calls via
25 * SetThreadContext below. This makes unwinding from longjmp not
26 * work reliably; therefore use a version of setjmp/longjmp that doesn't
27 * rely on SEH. */
28#define __USE_MINGW_SETJMP_NON_SEH
29#endif
30
31#define __LARGE_MBSTATE_T
32
23#ifdef HAVE_CONFIG_H33#ifdef HAVE_CONFIG_H
24#include "config.h"34#include "config.h"
25#endif35#endif
...@@ -32,7 +42,6 @@...@@ -32,7 +42,6 @@
3242
33#define WIN32_LEAN_AND_MEAN43#define WIN32_LEAN_AND_MEAN
34#include <windows.h>44#include <windows.h>
35#include <strsafe.h>
3645
37#define WINPTHREAD_THREAD_DECL WINPTHREAD_API46#define WINPTHREAD_THREAD_DECL WINPTHREAD_API
3847
...@@ -65,38 +74,29 @@ static size_t idListCnt = 0;...@@ -65,38 +74,29 @@ static size_t idListCnt = 0;
65static size_t idListMax = 0;74static size_t idListMax = 0;
66static pthread_t idListNextId = 0;75static pthread_t idListNextId = 0;
6776
68#if !defined(_MSC_VER)77#if defined(__SEH__) && (!defined(__clang__) || __clang_major__ >= 7)
69#define USE_VEH_FOR_MSC_SETTHREADNAME78#define SEH_INLINE_ASM
79#ifdef __arm__
80#define ASM_EXCEPT "%%except"
81#else
82#define ASM_EXCEPT "@except"
70#endif83#endif
71#if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
72/* forbidden RemoveVectoredExceptionHandler/AddVectoredExceptionHandler APIs */
73#undef USE_VEH_FOR_MSC_SETTHREADNAME
74#endif84#endif
7585
76#if defined(USE_VEH_FOR_MSC_SETTHREADNAME)86#if !defined(_MSC_VER) && (defined(__i386__) || defined(SEH_INLINE_ASM))
77static void *SetThreadName_VEH_handle = NULL;87static EXCEPTION_DISPOSITION __cdecl
7888SetThreadName_SEH (EXCEPTION_RECORD *ExceptionRecord, PVOID EstablisherFrame, CONTEXT *ContextRecord, PVOID DispatcherContext)
79static LONG __stdcall
80SetThreadName_VEH (PEXCEPTION_POINTERS ExceptionInfo)
81{89{
82 if (ExceptionInfo->ExceptionRecord != NULL &&90 /* Do not be confused with VEH handlers and CRT except filters which returns LONG value with UPPER_CASE constants.
83 ExceptionInfo->ExceptionRecord->ExceptionCode == EXCEPTION_SET_THREAD_NAME)91 * SEH handlers like this one return value from EXCEPTION_DISPOSITION enum which has CamelCase constants.
84 return EXCEPTION_CONTINUE_EXECUTION;92 * UPPER_CASE EXCEPTION_CONTINUE_SEARCH and CamelCase ExceptionContinueSearch are different constants.
8593 */
86 return EXCEPTION_CONTINUE_SEARCH;94 if (!(ExceptionRecord->ExceptionFlags & EXCEPTION_UNWINDING) &&
87}95 !(ExceptionRecord->ExceptionFlags & EXCEPTION_NONCONTINUABLE) &&
96 ExceptionRecord->ExceptionCode == EXCEPTION_SET_THREAD_NAME)
97 return ExceptionContinueExecution;
8898
89static PVOID (WINAPI *AddVectoredExceptionHandlerFuncPtr) (ULONG, PVECTORED_EXCEPTION_HANDLER);99 return ExceptionContinueSearch;
90static ULONG (WINAPI *RemoveVectoredExceptionHandlerFuncPtr) (PVOID);
91
92static void __attribute__((constructor))
93ctor (void)
94{
95 HMODULE module = GetModuleHandleA("kernel32.dll");
96 if (module) {
97 AddVectoredExceptionHandlerFuncPtr = (__typeof__(AddVectoredExceptionHandlerFuncPtr)) GetProcAddress(module, "AddVectoredExceptionHandler");
98 RemoveVectoredExceptionHandlerFuncPtr = (__typeof__(RemoveVectoredExceptionHandlerFuncPtr)) GetProcAddress(module, "RemoveVectoredExceptionHandler");
99 }
100}100}
101#endif101#endif
102102
...@@ -108,6 +108,9 @@ typedef struct _THREADNAME_INFO...@@ -108,6 +108,9 @@ typedef struct _THREADNAME_INFO
108 DWORD dwFlags; /* reserved for future use, must be zero */108 DWORD dwFlags; /* reserved for future use, must be zero */
109} THREADNAME_INFO;109} THREADNAME_INFO;
110110
111#if !defined(_MSC_VER) && !defined(__i386__) && defined(SEH_INLINE_ASM)
112WINPTHREADS_ATTRIBUTE((noinline)) /* required for asm .seh_handler directive */
113#endif
111static void114static void
112SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)115SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)
113{116{
...@@ -121,7 +124,10 @@ SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)...@@ -121,7 +124,10 @@ SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)
121124
122 infosize = sizeof (info) / sizeof (ULONG_PTR);125 infosize = sizeof (info) / sizeof (ULONG_PTR);
123126
124#if defined(_MSC_VER) && !defined (USE_VEH_FOR_MSC_SETTHREADNAME)127 /* Exception has to be processed otherwise it will crash the process. */
128
129#if defined(_MSC_VER)
130 /* msvc supports __try / __except syntax, so use it */
125 __try131 __try
126 {132 {
127 RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *)&info);133 RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *)&info);
...@@ -130,17 +136,31 @@ SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)...@@ -130,17 +136,31 @@ SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)
130 {136 {
131 }137 }
132#else138#else
133 /* Without a debugger we *must* have an exception handler,139 /* gcc does not support __try / __except syntax, so manually register SEH handler */
134 * otherwise raising an exception will crash the process.140#if defined(__i386__)
141 /* On 32-bit x86 is SEH handler registered and unregistered at runtime */
142 EXCEPTION_REGISTRATION_RECORD exception_record = {
143 .Next = (EXCEPTION_REGISTRATION_RECORD *) __readfsdword (0), /* current SEH handler */
144 .Handler = (PEXCEPTION_ROUTINE)(void*) SetThreadName_SEH,
145 };
146 __writefsdword (0, (DWORD) &exception_record); /* register our SEH handler */
147 RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *) &info);
148 __writefsdword (0, (DWORD) exception_record.Next); /* unregister our SEH handler */
149#elif defined(SEH_INLINE_ASM)
150 /* On other platforms SEH handlers are registered at compile time.
151 Assembler directive .seh_handler statically register SEH handler for
152 the whole current function. It does not matter at which line is this
153 directive called. It always applies for the whole function, so also
154 for code before the directive itself. As this function does not do
155 anything else, we can register our SEH handler for the whole function.
156 This function has to be marked as noinline to ensure that the SEH
157 handler would not be registered for a caller.
135 */158 */
136#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)159 asm volatile (".seh_handler %c0, " ASM_EXCEPT :: "i" (SetThreadName_SEH));
137 if ((!IsDebuggerPresent ()) && (SetThreadName_VEH_handle == NULL))160 RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *) &info);
138#else161#else
139 if (!IsDebuggerPresent ())162 /* Other compilers / platforms do not provide SEH support */
140#endif163#endif
141 return;
142
143 RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *) &info);
144#endif164#endif
145}165}
146166
...@@ -443,25 +463,10 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)...@@ -443,25 +463,10 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
443463
444 if (dwReason == DLL_PROCESS_DETACH)464 if (dwReason == DLL_PROCESS_DETACH)
445 {465 {
446#if defined(USE_VEH_FOR_MSC_SETTHREADNAME)
447 if (lpreserved == NULL && SetThreadName_VEH_handle != NULL)
448 {
449 if (RemoveVectoredExceptionHandlerFuncPtr != NULL)
450 RemoveVectoredExceptionHandlerFuncPtr (SetThreadName_VEH_handle);
451 SetThreadName_VEH_handle = NULL;
452 }
453#endif
454 free_pthread_mem ();466 free_pthread_mem ();
455 }467 }
456 else if (dwReason == DLL_PROCESS_ATTACH)468 else if (dwReason == DLL_PROCESS_ATTACH)
457 {469 {
458#if defined(USE_VEH_FOR_MSC_SETTHREADNAME)
459 if (AddVectoredExceptionHandlerFuncPtr != NULL)
460 SetThreadName_VEH_handle = AddVectoredExceptionHandlerFuncPtr (1, &SetThreadName_VEH);
461 else
462 SetThreadName_VEH_handle = NULL;
463 /* Can't do anything on error anyway, check for NULL later */
464#endif
465 }470 }
466 else if (dwReason == DLL_THREAD_DETACH)471 else if (dwReason == DLL_THREAD_DETACH)
467 {472 {
...@@ -520,13 +525,15 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)...@@ -520,13 +525,15 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
520525
521/* TLS-runtime section variable. */526/* TLS-runtime section variable. */
522527
523#if defined(_MSC_VER)
524/* Force a reference to _tls_used to make the linker create the TLS528/* Force a reference to _tls_used to make the linker create the TLS
525 * directory if it's not already there. (e.g. if __declspec(thread)529 * directory if it's not already there. (e.g. if __declspec(thread)
526 * is not used).530 * is not used).
527 * Force a reference to __xl_f to prevent whole program optimization531 * Force a reference to __xl_f to prevent whole program optimization
528 * from discarding the variable. */532 * from discarding the variable. */
529533#if defined(__GNUC__)
534extern const IMAGE_TLS_DIRECTORY _tls_used;
535static __attribute__((used)) const IMAGE_TLS_DIRECTORY *const _include_tls_used = &_tls_used;
536#elif defined(_MSC_VER)
530/* On x86, symbols are prefixed with an underscore. */537/* On x86, symbols are prefixed with an underscore. */
531# if defined(_M_IX86)538# if defined(_M_IX86)
532# pragma comment(linker, "/include:__tls_used")539# pragma comment(linker, "/include:__tls_used")
...@@ -544,8 +551,10 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)...@@ -544,8 +551,10 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
544# pragma section(".CRT$XLF", long, read)551# pragma section(".CRT$XLF", long, read)
545#endif552#endif
546553
554#if defined(__GNUC__)
555static __attribute__((used))
556#endif
547WINPTHREADS_ATTRIBUTE((WINPTHREADS_SECTION(".CRT$XLF")))557WINPTHREADS_ATTRIBUTE((WINPTHREADS_SECTION(".CRT$XLF")))
548extern const PIMAGE_TLS_CALLBACK __xl_f;
549const PIMAGE_TLS_CALLBACK __xl_f = __dyn_tls_pthread;558const PIMAGE_TLS_CALLBACK __xl_f = __dyn_tls_pthread;
550559
551/* Internal collect-once structure. */560/* Internal collect-once structure. */
...@@ -1277,9 +1286,7 @@ pthread_cancel (pthread_t t)...@@ -1277,9 +1286,7 @@ pthread_cancel (pthread_t t)
1277#else1286#else
1278#error Unsupported architecture1287#error Unsupported architecture
1279#endif1288#endif
1280#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
1281 SetThreadContext (tv->h, &ctxt);1289 SetThreadContext (tv->h, &ctxt);
1282#endif
12831290
1284 /* Also try deferred Cancelling */1291 /* Also try deferred Cancelling */
1285 tv->cancelled = 1;1292 tv->cancelled = 1;
...@@ -1516,9 +1523,7 @@ void _fpreset (void);...@@ -1516,9 +1523,7 @@ void _fpreset (void);
15161523
1517#if defined(__i386__)1524#if defined(__i386__)
1518/* Align ESP on 16-byte boundaries. */1525/* Align ESP on 16-byte boundaries. */
1519# if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2))
1520__attribute__((force_align_arg_pointer))1526__attribute__((force_align_arg_pointer))
1521# endif
1522#endif1527#endif
1523unsigned __stdcall1528unsigned __stdcall
1524pthread_create_wrapper (void *args)1529pthread_create_wrapper (void *args)
...@@ -1539,16 +1544,10 @@ pthread_create_wrapper (void *args)...@@ -1539,16 +1544,10 @@ pthread_create_wrapper (void *args)
1539 if (!setjmp(tv->jb))1544 if (!setjmp(tv->jb))
1540 {1545 {
1541 intptr_t trslt = (intptr_t) 128;1546 intptr_t trslt = (intptr_t) 128;
1542 /* Provide to this thread a default exception handler. */
1543 #ifdef __SEH__
1544 asm ("\t.tl_start:\n");
1545 #endif /* Call function and save return value */
1546 pthread_mutex_unlock (&mtx_pthr_locked);1547 pthread_mutex_unlock (&mtx_pthr_locked);
1548 /* Call function and save return value */
1547 if (tv->func)1549 if (tv->func)
1548 trslt = (intptr_t) tv->func(tv->ret_arg);1550 trslt = (intptr_t) tv->func(tv->ret_arg);
1549 #ifdef __SEH__
1550 asm ("\tnop\n\t.tl_end: nop\n");
1551 #endif
1552 pthread_mutex_lock (&mtx_pthr_locked);1551 pthread_mutex_lock (&mtx_pthr_locked);
1553 tv->ret_arg = (void*) trslt;1552 tv->ret_arg = (void*) trslt;
1554 /* Clean up destructors */1553 /* Clean up destructors */
...@@ -1585,19 +1584,6 @@ pthread_create_wrapper (void *args)...@@ -1585,19 +1584,6 @@ pthread_create_wrapper (void *args)
1585 Sleep (0);1584 Sleep (0);
1586 _endthreadex (rslt);1585 _endthreadex (rslt);
1587 return rslt;1586 return rslt;
1588
1589#if defined(__SEH__)
1590 asm(
1591#ifdef __arm__
1592 "\t.seh_handler __C_specific_handler, %except\n"
1593#else
1594 "\t.seh_handler __C_specific_handler, @except\n"
1595#endif
1596 "\t.seh_handlerdata\n"
1597 "\t.long 1\n"
1598 "\t.rva .tl_start, .tl_end, _gnu_exception_handler ,.tl_end\n"
1599 "\t.text\n");
1600#endif
1601}1587}
16021588
1603int1589int
...@@ -1608,6 +1594,7 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *...@@ -1608,6 +1594,7 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *
1608 struct _pthread_v *tv;1594 struct _pthread_v *tv;
1609 unsigned int ssize = 0;1595 unsigned int ssize = 0;
1610 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;1596 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;
1597 unsigned thrAddr; /* Dummy variable to pass a valid location to _beginthreadex (Win98). */
16111598
1612 if (attr && attr->s_size > UINT_MAX)1599 if (attr && attr->s_size > UINT_MAX)
1613 return EINVAL;1600 return EINVAL;
...@@ -1664,7 +1651,7 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *...@@ -1664,7 +1651,7 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *
1664 /* Make sure tv->h has value of INVALID_HANDLE_VALUE */1651 /* Make sure tv->h has value of INVALID_HANDLE_VALUE */
1665 _ReadWriteBarrier();1652 _ReadWriteBarrier();
16661653
1667 thrd = (HANDLE) _beginthreadex(NULL, ssize, pthread_create_wrapper, tv, 0x4/*CREATE_SUSPEND*/, NULL);1654 thrd = (HANDLE) _beginthreadex(NULL, ssize, pthread_create_wrapper, tv, 0x4/*CREATE_SUSPEND*/, &thrAddr);
1668 if (thrd == INVALID_HANDLE_VALUE)1655 if (thrd == INVALID_HANDLE_VALUE)
1669 thrd = 0;1656 thrd = 0;
1670 /* Failed */1657 /* Failed */
...@@ -1713,12 +1700,11 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *...@@ -1713,12 +1700,11 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *
1713int1700int
1714pthread_join (pthread_t t, void **res)1701pthread_join (pthread_t t, void **res)
1715{1702{
1716 DWORD dwFlags;
1717 struct _pthread_v *tv = __pth_gpointer_locked (t);1703 struct _pthread_v *tv = __pth_gpointer_locked (t);
1718 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;1704 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;
17191705
1720 if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags))1706 CHECK_OBJECT(tv, ESRCH);
1721 return ESRCH;1707
1722 if ((tv->p_state & PTHREAD_CREATE_DETACHED) != 0)1708 if ((tv->p_state & PTHREAD_CREATE_DETACHED) != 0)
1723 return EINVAL;1709 return EINVAL;
1724 if (pthread_equal(pthread_self(), t))1710 if (pthread_equal(pthread_self(), t))
...@@ -1744,14 +1730,13 @@ pthread_join (pthread_t t, void **res)...@@ -1744,14 +1730,13 @@ pthread_join (pthread_t t, void **res)
1744int1730int
1745_pthread_tryjoin (pthread_t t, void **res)1731_pthread_tryjoin (pthread_t t, void **res)
1746{1732{
1747 DWORD dwFlags;
1748 struct _pthread_v *tv;1733 struct _pthread_v *tv;
1749 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;1734 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;
17501735
1751 pthread_mutex_lock (&mtx_pthr_locked);1736 pthread_mutex_lock (&mtx_pthr_locked);
1752 tv = __pthread_get_pointer (t);1737 tv = __pthread_get_pointer (t);
17531738
1754 if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags))1739 if (!tv || !TEST_HANDLE(tv->h))
1755 {1740 {
1756 pthread_mutex_unlock (&mtx_pthr_locked);1741 pthread_mutex_unlock (&mtx_pthr_locked);
1757 return ESRCH;1742 return ESRCH;
...@@ -1798,13 +1783,12 @@ int...@@ -1798,13 +1783,12 @@ int
1798pthread_detach (pthread_t t)1783pthread_detach (pthread_t t)
1799{1784{
1800 int r = 0;1785 int r = 0;
1801 DWORD dwFlags;
1802 struct _pthread_v *tv = __pth_gpointer_locked (t);1786 struct _pthread_v *tv = __pth_gpointer_locked (t);
1803 HANDLE dw;1787 HANDLE dw;
1804 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;1788 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;
18051789
1806 pthread_mutex_lock (&mtx_pthr_locked);1790 pthread_mutex_lock (&mtx_pthr_locked);
1807 if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags))1791 if (!tv || !TEST_HANDLE(tv->h))
1808 {1792 {
1809 pthread_mutex_unlock (&mtx_pthr_locked);1793 pthread_mutex_unlock (&mtx_pthr_locked);
1810 return ESRCH;1794 return ESRCH;
...@@ -1897,8 +1881,8 @@ pthread_setname_np (pthread_t thread, const char *name)...@@ -1897,8 +1881,8 @@ pthread_setname_np (pthread_t thread, const char *name)
1897int1881int
1898pthread_getname_np (pthread_t thread, char *name, size_t len)1882pthread_getname_np (pthread_t thread, char *name, size_t len)
1899{1883{
1900 HRESULT result;
1901 struct _pthread_v *tv;1884 struct _pthread_v *tv;
1885 size_t thread_name_len;
19021886
1903 if (name == NULL)1887 if (name == NULL)
1904 return EINVAL;1888 return EINVAL;
...@@ -1917,12 +1901,10 @@ pthread_getname_np (pthread_t thread, char *name, size_t len)...@@ -1917,12 +1901,10 @@ pthread_getname_np (pthread_t thread, char *name, size_t len)
1917 return 0;1901 return 0;
1918 }1902 }
19191903
1920 if (strlen (tv->thread_name) >= len)1904 thread_name_len = strlen (tv->thread_name);
1905 if (thread_name_len >= len)
1921 return ERANGE;1906 return ERANGE;
19221907
1923 result = StringCchCopyNA (name, len, tv->thread_name, len - 1);1908 memcpy (name, tv->thread_name, thread_name_len + 1);
1924 if (SUCCEEDED (result))1909 return 0;
1925 return 0;
1926
1927 return ERANGE;
1928}1910}
lib/libc/mingw/winpthreads/wpth_ver.h+2-1
...@@ -24,6 +24,7 @@...@@ -24,6 +24,7 @@
24#define __WPTHREADS_VERSION__24#define __WPTHREADS_VERSION__
2525
26#define WPTH_VERSION 1,0,0,026#define WPTH_VERSION 1,0,0,0
27#define WPTH_VERSION_STRING "1, 0, 0, 0\0"27#define WPTH_VERSION_STRING "1, 0, 0, 0"
28#define WPTH_VERSION_MAJOR_STRING "1"
2829
29#endif30#endif
src/libs/mingw.zig+50-9
...@@ -519,7 +519,22 @@ const mingw32_generic_src = [_][]const u8{...@@ -519,7 +519,22 @@ const mingw32_generic_src = [_][]const u8{
519 "gdtoa" ++ path.sep_str ++ "strtopx.c",519 "gdtoa" ++ path.sep_str ++ "strtopx.c",
520 "gdtoa" ++ path.sep_str ++ "sum.c",520 "gdtoa" ++ path.sep_str ++ "sum.c",
521 "gdtoa" ++ path.sep_str ++ "ulp.c",521 "gdtoa" ++ path.sep_str ++ "ulp.c",
522 "math" ++ path.sep_str ++ "acospi.c",
523 "math" ++ path.sep_str ++ "acospif.c",
524 "math" ++ path.sep_str ++ "acospil.c",
525 "math" ++ path.sep_str ++ "asinpi.c",
526 "math" ++ path.sep_str ++ "asinpif.c",
527 "math" ++ path.sep_str ++ "asinpil.c",
528 "math" ++ path.sep_str ++ "atanpi.c",
529 "math" ++ path.sep_str ++ "atanpif.c",
530 "math" ++ path.sep_str ++ "atanpil.c",
531 "math" ++ path.sep_str ++ "atan2pi.c",
532 "math" ++ path.sep_str ++ "atan2pif.c",
533 "math" ++ path.sep_str ++ "atan2pil.c",
522 "math" ++ path.sep_str ++ "coshl.c",534 "math" ++ path.sep_str ++ "coshl.c",
535 "math" ++ path.sep_str ++ "cospi.c",
536 "math" ++ path.sep_str ++ "cospif.c",
537 "math" ++ path.sep_str ++ "cospil.c",
523 "math" ++ path.sep_str ++ "fpclassify.c",538 "math" ++ path.sep_str ++ "fpclassify.c",
524 "math" ++ path.sep_str ++ "fpclassifyf.c",539 "math" ++ path.sep_str ++ "fpclassifyf.c",
525 "math" ++ path.sep_str ++ "fpclassifyl.c",540 "math" ++ path.sep_str ++ "fpclassifyl.c",
...@@ -535,8 +550,18 @@ const mingw32_generic_src = [_][]const u8{...@@ -535,8 +550,18 @@ const mingw32_generic_src = [_][]const u8{
535 "math" ++ path.sep_str ++ "signbitl.c",550 "math" ++ path.sep_str ++ "signbitl.c",
536 "math" ++ path.sep_str ++ "signgam.c",551 "math" ++ path.sep_str ++ "signgam.c",
537 "math" ++ path.sep_str ++ "sinhl.c",552 "math" ++ path.sep_str ++ "sinhl.c",
553 "math" ++ path.sep_str ++ "sinpi.c",
554 "math" ++ path.sep_str ++ "sinpif.c",
555 "math" ++ path.sep_str ++ "sinpil.c",
538 "math" ++ path.sep_str ++ "tanhl.c",556 "math" ++ path.sep_str ++ "tanhl.c",
557 "math" ++ path.sep_str ++ "tanpi.c",
558 "math" ++ path.sep_str ++ "tanpif.c",
559 "math" ++ path.sep_str ++ "tanpil.c",
560 "misc" ++ path.sep_str ++ "__mingw_filename_cp.c",
561 "misc" ++ path.sep_str ++ "__mingw_isleadbyte_cp.c",
562 "misc" ++ path.sep_str ++ "_assert.c",
539 "misc" ++ path.sep_str ++ "alarm.c",563 "misc" ++ path.sep_str ++ "alarm.c",
564 "misc" ++ path.sep_str ++ "btowc.c",
540 "misc" ++ path.sep_str ++ "delay-f.c",565 "misc" ++ path.sep_str ++ "delay-f.c",
541 "misc" ++ path.sep_str ++ "delay-n.c",566 "misc" ++ path.sep_str ++ "delay-n.c",
542 "misc" ++ path.sep_str ++ "delayimp.c",567 "misc" ++ path.sep_str ++ "delayimp.c",
...@@ -544,7 +569,10 @@ const mingw32_generic_src = [_][]const u8{...@@ -544,7 +569,10 @@ const mingw32_generic_src = [_][]const u8{
544 "misc" ++ path.sep_str ++ "dirname.c",569 "misc" ++ path.sep_str ++ "dirname.c",
545 "misc" ++ path.sep_str ++ "dllmain.c",570 "misc" ++ path.sep_str ++ "dllmain.c",
546 "misc" ++ path.sep_str ++ "feclearexcept.c",571 "misc" ++ path.sep_str ++ "feclearexcept.c",
572 "misc" ++ path.sep_str ++ "fedisableexcept.c",
573 "misc" ++ path.sep_str ++ "feenableexcept.c",
547 "misc" ++ path.sep_str ++ "fegetenv.c",574 "misc" ++ path.sep_str ++ "fegetenv.c",
575 "misc" ++ path.sep_str ++ "fegetexcept.c",
548 "misc" ++ path.sep_str ++ "fegetexceptflag.c",576 "misc" ++ path.sep_str ++ "fegetexceptflag.c",
549 "misc" ++ path.sep_str ++ "fegetround.c",577 "misc" ++ path.sep_str ++ "fegetround.c",
550 "misc" ++ path.sep_str ++ "feholdexcept.c",578 "misc" ++ path.sep_str ++ "feholdexcept.c",
...@@ -556,7 +584,8 @@ const mingw32_generic_src = [_][]const u8{...@@ -556,7 +584,8 @@ const mingw32_generic_src = [_][]const u8{
556 "misc" ++ path.sep_str ++ "mingw_controlfp.c",584 "misc" ++ path.sep_str ++ "mingw_controlfp.c",
557 "misc" ++ path.sep_str ++ "mingw_setfp.c",585 "misc" ++ path.sep_str ++ "mingw_setfp.c",
558 "misc" ++ path.sep_str ++ "feupdateenv.c",586 "misc" ++ path.sep_str ++ "feupdateenv.c",
559 "misc" ++ path.sep_str ++ "ftruncate.c",587 "misc" ++ path.sep_str ++ "ftime32.c",
588 "misc" ++ path.sep_str ++ "ftime64.c",
560 "misc" ++ path.sep_str ++ "ftw32.c",589 "misc" ++ path.sep_str ++ "ftw32.c",
561 "misc" ++ path.sep_str ++ "ftw32i64.c",590 "misc" ++ path.sep_str ++ "ftw32i64.c",
562 "misc" ++ path.sep_str ++ "ftw64.c",591 "misc" ++ path.sep_str ++ "ftw64.c",
...@@ -565,6 +594,8 @@ const mingw32_generic_src = [_][]const u8{...@@ -565,6 +594,8 @@ const mingw32_generic_src = [_][]const u8{
565 "misc" ++ path.sep_str ++ "getlogin.c",594 "misc" ++ path.sep_str ++ "getlogin.c",
566 "misc" ++ path.sep_str ++ "getopt.c",595 "misc" ++ path.sep_str ++ "getopt.c",
567 "misc" ++ path.sep_str ++ "gettimeofday.c",596 "misc" ++ path.sep_str ++ "gettimeofday.c",
597 "misc" ++ path.sep_str ++ "memalignment.c",
598 "misc" ++ path.sep_str ++ "memset_explicit.c",
568 "misc" ++ path.sep_str ++ "mingw-access.c",599 "misc" ++ path.sep_str ++ "mingw-access.c",
569 "misc" ++ path.sep_str ++ "mingw-aligned-malloc.c",600 "misc" ++ path.sep_str ++ "mingw-aligned-malloc.c",
570 "misc" ++ path.sep_str ++ "mingw_getsp.S",601 "misc" ++ path.sep_str ++ "mingw_getsp.S",
...@@ -575,6 +606,7 @@ const mingw32_generic_src = [_][]const u8{...@@ -575,6 +606,7 @@ const mingw32_generic_src = [_][]const u8{
575 "misc" ++ path.sep_str ++ "mingw_wcstod.c",606 "misc" ++ path.sep_str ++ "mingw_wcstod.c",
576 "misc" ++ path.sep_str ++ "mingw_wcstof.c",607 "misc" ++ path.sep_str ++ "mingw_wcstof.c",
577 "misc" ++ path.sep_str ++ "mingw_wcstold.c",608 "misc" ++ path.sep_str ++ "mingw_wcstold.c",
609 "misc" ++ path.sep_str ++ "mkdtemp.c",
578 "misc" ++ path.sep_str ++ "mkstemp.c",610 "misc" ++ path.sep_str ++ "mkstemp.c",
579 "misc" ++ path.sep_str ++ "sleep.c",611 "misc" ++ path.sep_str ++ "sleep.c",
580 "misc" ++ path.sep_str ++ "strsafe.c",612 "misc" ++ path.sep_str ++ "strsafe.c",
...@@ -583,23 +615,22 @@ const mingw32_generic_src = [_][]const u8{...@@ -583,23 +615,22 @@ const mingw32_generic_src = [_][]const u8{
583 "misc" ++ path.sep_str ++ "tfind.c",615 "misc" ++ path.sep_str ++ "tfind.c",
584 "misc" ++ path.sep_str ++ "tsearch.c",616 "misc" ++ path.sep_str ++ "tsearch.c",
585 "misc" ++ path.sep_str ++ "twalk.c",617 "misc" ++ path.sep_str ++ "twalk.c",
618 "misc" ++ path.sep_str ++ "wctob.c",
586 "misc" ++ path.sep_str ++ "wdirent.c",619 "misc" ++ path.sep_str ++ "wdirent.c",
620 "stdio" ++ path.sep_str ++ "__mingw_fix_fstat_finish.c",
621 "stdio" ++ path.sep_str ++ "__mingw_fix_stat_fallback_fd.c",
622 "stdio" ++ path.sep_str ++ "__mingw_fix_stat_finish.c",
587 "stdio" ++ path.sep_str ++ "__mingw_fix_stat_path.c",623 "stdio" ++ path.sep_str ++ "__mingw_fix_stat_path.c",
624 "stdio" ++ path.sep_str ++ "__mingw_fix_wstat_fallback_fd.c",
588 "stdio" ++ path.sep_str ++ "__mingw_fix_wstat_path.c",625 "stdio" ++ path.sep_str ++ "__mingw_fix_wstat_path.c",
589 "stdio" ++ path.sep_str ++ "asprintf.c",626 "stdio" ++ path.sep_str ++ "asprintf.c",
590 "stdio" ++ path.sep_str ++ "fopen64.c",
591 "stdio" ++ path.sep_str ++ "fseeko32.c",
592 "stdio" ++ path.sep_str ++ "fseeko64.c",
593 "stdio" ++ path.sep_str ++ "ftello.c",
594 "stdio" ++ path.sep_str ++ "ftello64.c",
595 "stdio" ++ path.sep_str ++ "ftruncate64.c",
596 "stdio" ++ path.sep_str ++ "lltoa.c",627 "stdio" ++ path.sep_str ++ "lltoa.c",
597 "stdio" ++ path.sep_str ++ "lltow.c",628 "stdio" ++ path.sep_str ++ "lltow.c",
598 "stdio" ++ path.sep_str ++ "lseek64.c",
599 "stdio" ++ path.sep_str ++ "mingw_asprintf.c",629 "stdio" ++ path.sep_str ++ "mingw_asprintf.c",
600 "stdio" ++ path.sep_str ++ "mingw_fprintf.c",630 "stdio" ++ path.sep_str ++ "mingw_fprintf.c",
601 "stdio" ++ path.sep_str ++ "mingw_fwprintf.c",631 "stdio" ++ path.sep_str ++ "mingw_fwprintf.c",
602 "stdio" ++ path.sep_str ++ "mingw_fscanf.c",632 "stdio" ++ path.sep_str ++ "mingw_fscanf.c",
633 "stdio" ++ path.sep_str ++ "mingw_ftruncate64.c",
603 "stdio" ++ path.sep_str ++ "mingw_fwscanf.c",634 "stdio" ++ path.sep_str ++ "mingw_fwscanf.c",
604 "stdio" ++ path.sep_str ++ "mingw_pformat.c",635 "stdio" ++ path.sep_str ++ "mingw_pformat.c",
605 "stdio" ++ path.sep_str ++ "mingw_sformat.c",636 "stdio" ++ path.sep_str ++ "mingw_sformat.c",
...@@ -631,6 +662,7 @@ const mingw32_generic_src = [_][]const u8{...@@ -631,6 +662,7 @@ const mingw32_generic_src = [_][]const u8{
631 "stdio" ++ path.sep_str ++ "snprintf.c",662 "stdio" ++ path.sep_str ++ "snprintf.c",
632 "stdio" ++ path.sep_str ++ "snwprintf.c",663 "stdio" ++ path.sep_str ++ "snwprintf.c",
633 "stdio" ++ path.sep_str ++ "truncate.c",664 "stdio" ++ path.sep_str ++ "truncate.c",
665 "stdio" ++ path.sep_str ++ "truncate64.c",
634 "stdio" ++ path.sep_str ++ "ulltoa.c",666 "stdio" ++ path.sep_str ++ "ulltoa.c",
635 "stdio" ++ path.sep_str ++ "ulltow.c",667 "stdio" ++ path.sep_str ++ "ulltow.c",
636 "stdio" ++ path.sep_str ++ "vasprintf.c",668 "stdio" ++ path.sep_str ++ "vasprintf.c",
...@@ -640,6 +672,10 @@ const mingw32_generic_src = [_][]const u8{...@@ -640,6 +672,10 @@ const mingw32_generic_src = [_][]const u8{
640 // mingwthrd672 // mingwthrd
641 "libsrc" ++ path.sep_str ++ "mingwthrd_mt.c",673 "libsrc" ++ path.sep_str ++ "mingwthrd_mt.c",
642 // ucrtbase674 // ucrtbase
675 "ctype" ++ path.sep_str ++ "_iscsym_l.c",
676 "ctype" ++ path.sep_str ++ "_iscsymf_l.c",
677 "ctype" ++ path.sep_str ++ "iswctype.c",
678 "ctype" ++ path.sep_str ++ "towctrans.c",
643 "math" ++ path.sep_str ++ "_huge.c",679 "math" ++ path.sep_str ++ "_huge.c",
644 "misc" ++ path.sep_str ++ "__initenv.c",680 "misc" ++ path.sep_str ++ "__initenv.c",
645 "misc" ++ path.sep_str ++ "__winitenv.c",681 "misc" ++ path.sep_str ++ "__winitenv.c",
...@@ -651,14 +687,20 @@ const mingw32_generic_src = [_][]const u8{...@@ -651,14 +687,20 @@ const mingw32_generic_src = [_][]const u8{
651 "misc" ++ path.sep_str ++ "ucrt__wgetmainargs.c",687 "misc" ++ path.sep_str ++ "ucrt__wgetmainargs.c",
652 "misc" ++ path.sep_str ++ "ucrt_amsg_exit.c",688 "misc" ++ path.sep_str ++ "ucrt_amsg_exit.c",
653 "misc" ++ path.sep_str ++ "ucrt_at_quick_exit.c",689 "misc" ++ path.sep_str ++ "ucrt_at_quick_exit.c",
690 "misc" ++ path.sep_str ++ "ucrt_mbsinit.c",
654 "misc" ++ path.sep_str ++ "ucrt_tzset.c",691 "misc" ++ path.sep_str ++ "ucrt_tzset.c",
692 "stdio" ++ path.sep_str ++ "msvcr80plus_ftruncate64.c",
655 "stdio" ++ path.sep_str ++ "ucrt__scprintf.c",693 "stdio" ++ path.sep_str ++ "ucrt__scprintf.c",
694 "stdio" ++ path.sep_str ++ "ucrt__scwprintf.c",
656 "stdio" ++ path.sep_str ++ "ucrt__snprintf.c",695 "stdio" ++ path.sep_str ++ "ucrt__snprintf.c",
657 "stdio" ++ path.sep_str ++ "ucrt__snscanf.c",696 "stdio" ++ path.sep_str ++ "ucrt__snscanf.c",
658 "stdio" ++ path.sep_str ++ "ucrt__snwprintf.c",697 "stdio" ++ path.sep_str ++ "ucrt__snwprintf.c",
698 "stdio" ++ path.sep_str ++ "ucrt__swprintf.c",
659 "stdio" ++ path.sep_str ++ "ucrt__vscprintf.c",699 "stdio" ++ path.sep_str ++ "ucrt__vscprintf.c",
700 "stdio" ++ path.sep_str ++ "ucrt__vscwprintf.c",
660 "stdio" ++ path.sep_str ++ "ucrt__vsnprintf.c",701 "stdio" ++ path.sep_str ++ "ucrt__vsnprintf.c",
661 "stdio" ++ path.sep_str ++ "ucrt__vsnwprintf.c",702 "stdio" ++ path.sep_str ++ "ucrt__vsnwprintf.c",
703 "stdio" ++ path.sep_str ++ "ucrt__vswprintf.c",
662 "stdio" ++ path.sep_str ++ "ucrt___local_stdio_printf_options.c",704 "stdio" ++ path.sep_str ++ "ucrt___local_stdio_printf_options.c",
663 "stdio" ++ path.sep_str ++ "ucrt___local_stdio_scanf_options.c",705 "stdio" ++ path.sep_str ++ "ucrt___local_stdio_scanf_options.c",
664 "stdio" ++ path.sep_str ++ "ucrt_fprintf.c",706 "stdio" ++ path.sep_str ++ "ucrt_fprintf.c",
...@@ -691,7 +733,6 @@ const mingw32_generic_src = [_][]const u8{...@@ -691,7 +733,6 @@ const mingw32_generic_src = [_][]const u8{
691 "stdio" ++ path.sep_str ++ "ucrt_wprintf.c",733 "stdio" ++ path.sep_str ++ "ucrt_wprintf.c",
692 "string" ++ path.sep_str ++ "ucrt__wcstok.c",734 "string" ++ path.sep_str ++ "ucrt__wcstok.c",
693 // uuid735 // uuid
694 "libsrc" ++ path.sep_str ++ "ativscp-uuid.c",
695 "libsrc" ++ path.sep_str ++ "atsmedia-uuid.c",736 "libsrc" ++ path.sep_str ++ "atsmedia-uuid.c",
696 "libsrc" ++ path.sep_str ++ "bth-uuid.c",737 "libsrc" ++ path.sep_str ++ "bth-uuid.c",
697 "libsrc" ++ path.sep_str ++ "cguid-uuid.c",738 "libsrc" ++ path.sep_str ++ "cguid-uuid.c",