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;
44const c = std.c;
55
66comptime {
7 symbol(&strndup, "strndup");
8
79 if (builtin.target.isMuslLibC() or builtin.target.isWasiLibC()) {
810 // memcpy implemented in compiler_rt
911 // memmove implemented in compiler_rt
......@@ -26,7 +28,6 @@ comptime {
2628 symbol(&strstr, "strstr");
2729 symbol(&strtok, "strtok");
2830 symbol(&strdup, "strdup");
29 symbol(&strndup, "strndup");
3031 // strlen is in compiler_rt
3132
3233 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)
622622#define __MINGW_FASTFAIL_IMPL 1
623623#endif
624624#if __MINGW_FASTFAIL_IMPL == 1
625void __cdecl __MINGW_ATTRIB_NORETURN __fastfail(unsigned int code);
626__MINGW_INTRIN_INLINE void __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)
627627{
628628#if defined(__aarch64__) || defined(__arm64ec__)
629 register unsigned int w0 __asm__("w0") = code;
630 __asm__ __volatile__("brk #0xf003"::"r"(w0));
629 register unsigned int __w0 __asm__("w0") = _Code;
630 __asm__ __volatile__("brk #0xf003"::"r"(__w0));
631631#elif defined(__i386__) || defined(__x86_64__)
632 __asm__ __volatile__("int {$}0x29"::"c"(code));
632 __asm__ __volatile__("int {$}0x29"::"c"(_Code));
633633#elif defined(__arm__)
634 register unsigned int r0 __asm__("r0") = code;
635 __asm__ __volatile__("udf #0xfb"::"r"(r0));
634 register unsigned int __r0 __asm__("r0") = _Code;
635 __asm__ __volatile__("udf #0xfb"::"r"(__r0));
636636#else
637637 __asm__ __volatile__("unimplemented");
638638#endif
......@@ -647,13 +647,13 @@ __MINGW_INTRIN_INLINE void __cdecl __MINGW_ATTRIB_NORETURN __fastfail(unsigned i
647647#endif
648648#if __MINGW_PREFETCH_IMPL == 1
649649#if defined(__arm__) || defined(__aarch64__) || defined(__arm64ec__)
650void __cdecl __prefetch(const void *addr);
651__MINGW_INTRIN_INLINE void __cdecl __prefetch(const void *addr)
650void __cdecl __prefetch(const void *_Addr);
651__MINGW_INTRIN_INLINE void __cdecl __prefetch(const void *_Addr)
652652{
653653#if defined(__arm__)
654 __asm__ __volatile__("pld [%0]"::"r"(addr));
654 __asm__ __volatile__("pld [%0]"::"r"(_Addr));
655655#elif defined(__aarch64__) || defined(__arm64ec__)
656 __asm__ __volatile__("prfm pldl1keep, [%0]"::"r"(addr));
656 __asm__ __volatile__("prfm pldl1keep, [%0]"::"r"(_Addr));
657657#endif
658658}
659659#endif /* defined(__arm__) || defined(__aarch64__) */
......@@ -668,21 +668,7 @@ const char *__mingw_get_crt_info (void);
668668}
669669#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
681671#define __STDC_SECURE_LIB__ 200411L
682672#define __GOT_SECURE_LIB__ __STDC_SECURE_LIB__
683673
684#ifndef __WIDL__
685#include "sdks/_mingw_ddk.h"
686#endif
687
688#endif /* MINGW_SDK_INIT */
674#endif /* _INC__MINGW_H */
lib/libc/include/any-windows-any/_mingw_mac.h+1-1
......@@ -14,7 +14,7 @@
1414#define __MINGW64_STRINGIFY(x) \
1515 __STRINGIFY(x)
1616
17#define __MINGW64_VERSION_MAJOR 13
17#define __MINGW64_VERSION_MAJOR 15
1818#define __MINGW64_VERSION_MINOR 0
1919#define __MINGW64_VERSION_BUGFIX 0
2020
lib/libc/include/any-windows-any/_mingw_stat64.h+7
......@@ -3,6 +3,12 @@
33/* __stat64 is needed for compatibility with msvc */
44#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
612#ifdef _USE_32BIT_TIME_T
713#define _fstat _fstat32
814#define _fstati64 _fstat32i64
......@@ -18,6 +24,7 @@
1824#define _wstat _wstat64i32
1925#define _wstati64 _wstat64
2026#endif /* _USE_32BIT_TIME_T */
27#endif /* _CRTBLD */
2128
2229 struct _stat32 {
2330 _dev_t st_dev;
lib/libc/include/any-windows-any/activation.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activaut.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activdbg.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activdbg100.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activprof.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/activscp.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/adhoc.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/alg.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/amstream.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/amvideo.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/assert.h+2-3
......@@ -21,8 +21,8 @@
2121extern "C" {
2222#endif
2323
24_CRTIMP void __cdecl __MINGW_ATTRIB_NORETURN _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);
24_CRTIMP void __cdecl _wassert(const wchar_t *_Message,const wchar_t *_File,unsigned _Line);
25void __cdecl _assert (const char *_Message, const char *_File, unsigned _Line);
2626
2727#ifdef __cplusplus
2828}
......@@ -53,4 +53,3 @@ _CRTIMP void __cdecl __MINGW_ATTRIB_NORETURN _assert (const char *_Message, cons
5353 (_assert(#_Expression,__FILE__,__LINE__),0))
5454#endif /* _UNICODE||UNICODE */
5555#endif /* !defined (NDEBUG) */
56
lib/libc/include/any-windows-any/asyncinfo.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/audioclient.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/audioendpoints.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/audiopolicy.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/austream.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bdaiface.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits1_5.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits2_0.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits2_5.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits3_0.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/bits5_0.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/cfgmgr32.h+2-2
......@@ -37,8 +37,8 @@ extern "C" {
3737#define MAX_IRQS 7
3838#define MAX_DMA_CHANNELS 7
3939
40#define DWORD_MAX 0xFFFFFFFF
41#define DWORDLONG_MAX 0xFFFFFFFFFFFFFFFF
40#define DWORD_MAX __MSABI_LONG(0xffffffffu)
41#define DWORDLONG_MAX 0xffffffffffffffffull
4242
4343#define CONFIGMG_VERSION 0x0400
4444
lib/libc/include/any-windows-any/comadmin.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/comcat.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/commoncontrols.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/comutil.h+45-2
......@@ -8,6 +8,7 @@
88
99#include <ole2.h>
1010#include <stdio.h>
11#include <new>
1112
1213#ifndef _COM_ASSERT
1314#define _COM_ASSERT(x) ((void)0)
......@@ -51,8 +52,50 @@ namespace _com_util {
5152}
5253
5354namespace _com_util {
54 BSTR WINAPI ConvertStringToBSTR(const char *pSrc);
55 char *WINAPI ConvertBSTRToString(BSTR pSrc);
55 inline BSTR WINAPI ConvertStringToBSTR(const char *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 }
5699}
57100
58101class _bstr_t {
lib/libc/include/any-windows-any/conio.h+69-185
......@@ -8,17 +8,53 @@
88
99#include <crtdefs.h>
1010#include <corecrt_stdio_config.h>
11#include <corecrt_wconio.h>
1112#include <stddef.h>
1213
1314#ifdef __cplusplus
1415extern "C" {
1516#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;
1823 _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);
1935 _CRTIMP int __cdecl _getch(void);
2036 _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
2359#ifdef _UCRT
2460 int __cdecl __conio_common_vcprintf(unsigned __int64 _Options, const char *_Format, _locale_t _Locale, va_list _ArgList);
......@@ -59,7 +95,6 @@ extern "C" {
5995 __builtin_va_end(_ArgList);
6096 return _Ret;
6197 }
62
6398 __mingw_ovr int __cdecl _vcprintf_p(const char * __restrict__ _Format,va_list _ArgList)
6499 {
65100 return __conio_common_vcprintf_p(0, _Format, NULL, _ArgList);
......@@ -99,153 +134,7 @@ extern "C" {
99134 __builtin_va_end(_ArgList);
100135 return _Ret;
101136 }
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
245137#ifndef NO_OLDNAMES
246 char *__cdecl cgets(char *_Buffer) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
247
248#ifdef _UCRT
249138 __mingw_ovr int __cdecl cprintf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005
250139 {
251140 __builtin_va_list _ArgList;
......@@ -264,49 +153,44 @@ extern "C" {
264153 __builtin_va_end(_ArgList);
265154 return _Ret;
266155 }
267#else
156#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
268169 int __cdecl cprintf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
269170 int __cdecl cscanf(const char * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
270#endif
271 int __cdecl cputs(const char *_Str) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
272 int __cdecl getch(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
273 int __cdecl getche(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
274 int __cdecl kbhit(void) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
275 int __cdecl putch(int _Ch) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
276 int __cdecl ungetch(int _Ch) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
171#endif /* NO_OLDNAMES */
172#endif /* _UCRT */
173
174/**
175 * Port I/O functions.
176 *
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
279189 int __cdecl inp(unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
280190 unsigned short __cdecl inpw(unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
281191 int __cdecl outp(unsigned short,int) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
282192 unsigned short __cdecl outpw(unsigned short,unsigned short) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
283#endif
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 */
193#endif /* NO_OLDNAMES */
310194#endif
311195
312196#ifdef __cplusplus
lib/libc/include/any-windows-any/control.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/corecrt.h+7-35
......@@ -151,6 +151,13 @@ typedef __time64_t time_t;
151151#endif
152152#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
154161#if defined(__cplusplus) && _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES
155162
156163#define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(__ret,__func,__dsttype,__dst) \
......@@ -447,41 +454,6 @@ typedef struct tagLC_ID {
447454} LC_ID,*LPLC_ID;
448455#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
485457#ifndef __crt_typefix
486458#define __crt_typefix(ctype)
487459#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 @@
1313extern "C" {
1414#endif
1515
16unsigned __int64* __local_stdio_printf_options(void);
17unsigned __int64* __local_stdio_scanf_options(void);
16unsigned __int64* __cdecl __local_stdio_printf_options(void);
17unsigned __int64* __cdecl __local_stdio_scanf_options(void);
1818
1919#define _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION 0x0001ULL
2020#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 @@
1212extern "C" {
1313#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
2115#ifndef WEOF
2216#define WEOF (wint_t)(0xFFFF)
2317#endif
2418
25#ifndef _CRT_CTYPEDATA_DEFINED
26#define _CRT_CTYPEDATA_DEFINED
2719#ifndef _CTYPE_DISABLE_MACROS
20_CRTIMP const unsigned short* __cdecl __pctype_func(void);
21_CRTIMP const wctype_t * __cdecl __pwctype_func(void);
2822
2923#ifndef __PCTYPE_FUNC
3024#define __PCTYPE_FUNC __pctype_func()
31 _CRTIMP const unsigned short* __pctype_func(void);
3225#endif
3326
3427#ifndef _pctype
3528#define _pctype (__pctype_func())
3629#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);
5031#ifndef _pwctype
5132#define _pwctype (__pwctype_func())
5233#endif
53#endif
34#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 */
5440#endif
5541
5642#define _UPPER 0x1
......@@ -66,95 +52,128 @@ extern "C" {
6652#define _LEADBYTE 0x8000
6753#define _ALPHA (0x0100|_UPPER|_LOWER)
6854
69#ifndef _WCTYPE_DEFINED
70#define _WCTYPE_DEFINED
71
72 _CRTIMP int __cdecl iswalpha(wint_t _C);
73 _CRTIMP int __cdecl iswupper(wint_t _C);
74 _CRTIMP int __cdecl iswlower(wint_t _C);
75 _CRTIMP int __cdecl iswdigit(wint_t _C);
76 _CRTIMP int __cdecl iswxdigit(wint_t _C);
77 _CRTIMP int __cdecl iswspace(wint_t _C);
78 _CRTIMP int __cdecl iswpunct(wint_t _C);
79 _CRTIMP int __cdecl iswalnum(wint_t _C);
80 _CRTIMP int __cdecl iswprint(wint_t _C);
81 _CRTIMP int __cdecl iswgraph(wint_t _C);
82 _CRTIMP int __cdecl iswcntrl(wint_t _C);
83 _CRTIMP int __cdecl iswascii(wint_t _C);
84#ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
85 _CRTIMP int __cdecl isleadbyte(int _C);
86#endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */
87 _CRTIMP wint_t __cdecl towupper(wint_t _C);
88 _CRTIMP wint_t __cdecl towlower(wint_t _C);
89 _CRTIMP int __cdecl iswctype(wint_t _C,wctype_t _Type);
90 _CRTIMP int __cdecl __iswcsymf(wint_t _C);
91 _CRTIMP int __cdecl __iswcsym(wint_t _C);
92 _CRTIMP int __cdecl iswblank(wint_t _C);
93#if __MSVCRT_VERSION__ >= 0x800 || (__MSVCRT_VERSION__ == 0x600 && _WIN32_WINNT >= 0x0600)
94 /* These are available since msvcr80.dll (__MSVCRT_VERSION__ >= 0x800), and in
95 * msvcrt.dll (__MSVCRT_VERSION__ == 0x600) since Vista (_WIN32_WINNT >= 0x0600). */
96 _CRTIMP int __cdecl _iswalpha_l(wint_t _C,_locale_t _Locale);
97 _CRTIMP int __cdecl _iswupper_l(wint_t _C,_locale_t _Locale);
98 _CRTIMP int __cdecl _iswlower_l(wint_t _C,_locale_t _Locale);
99 _CRTIMP int __cdecl _iswdigit_l(wint_t _C,_locale_t _Locale);
100 _CRTIMP int __cdecl _iswxdigit_l(wint_t _C,_locale_t _Locale);
101 _CRTIMP int __cdecl _iswspace_l(wint_t _C,_locale_t _Locale);
102 _CRTIMP int __cdecl _iswpunct_l(wint_t _C,_locale_t _Locale);
103 _CRTIMP int __cdecl _iswalnum_l(wint_t _C,_locale_t _Locale);
104 _CRTIMP int __cdecl _iswprint_l(wint_t _C,_locale_t _Locale);
105 _CRTIMP int __cdecl _iswgraph_l(wint_t _C,_locale_t _Locale);
106 _CRTIMP int __cdecl _iswcntrl_l(wint_t _C,_locale_t _Locale);
107 _CRTIMP wint_t __cdecl _towupper_l(wint_t _C,_locale_t _Locale);
108 _CRTIMP wint_t __cdecl _towlower_l(wint_t _C,_locale_t _Locale);
109# ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
110 _CRTIMP int __cdecl _isleadbyte_l(int _C,_locale_t _Locale);
111# endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */
112 _CRTIMP int __cdecl _iswctype_l(wint_t _C,wctype_t _Type,_locale_t _Locale);
113 _CRTIMP int __cdecl _iswblank_l(wint_t _C,_locale_t _Locale);
114#endif
115#if __MSVCRT_VERSION__ >= 0x800
116 /* These are only available since msvcr80.dll, never in msvcrt.dll. */
117 _CRTIMP int __cdecl _iswcsymf_l(wint_t _C,_locale_t _Locale);
118 _CRTIMP int __cdecl _iswcsym_l(wint_t _C,_locale_t _Locale);
55/**
56 * Standard C functions.
57 */
58
59_CRTIMP int __cdecl iswctype(wint_t _C,wctype_t _Type);
60
61_CRTIMP int __cdecl iswalnum(wint_t _C);
62_CRTIMP int __cdecl iswalpha(wint_t _C);
63_CRTIMP int __cdecl iswblank(wint_t _C);
64_CRTIMP int __cdecl iswcntrl(wint_t _C);
65_CRTIMP int __cdecl iswdigit(wint_t _C);
66_CRTIMP int __cdecl iswgraph(wint_t _C);
67_CRTIMP int __cdecl iswlower(wint_t _C);
68_CRTIMP int __cdecl iswprint(wint_t _C);
69_CRTIMP int __cdecl iswpunct(wint_t _C);
70_CRTIMP int __cdecl iswspace(wint_t _C);
71_CRTIMP int __cdecl iswupper(wint_t _C);
72_CRTIMP int __cdecl iswxdigit(wint_t _C);
73
74_CRTIMP wint_t __cdecl towlower(wint_t _C);
75_CRTIMP wint_t __cdecl towupper(wint_t _C);
76
77#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
78#define iswalnum(_c) (iswctype(_c,_ALPHA|_DIGIT))
79#define iswalpha(_c) (iswctype(_c,_ALPHA))
80#define iswblank(_c) (iswctype(_c,_BLANK))
81#define iswcntrl(_c) (iswctype(_c,_CONTROL))
82#define iswdigit(_c) (iswctype(_c,_DIGIT))
83#define iswgraph(_c) (iswctype(_c,_PUNCT|_ALPHA|_DIGIT))
84#define iswlower(_c) (iswctype(_c,_LOWER))
85#define iswprint(_c) (iswctype(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT))
86#define iswpunct(_c) (iswctype(_c,_PUNCT))
87#define iswspace(_c) (iswctype(_c,_SPACE))
88#define iswupper(_c) (iswctype(_c,_UPPER))
89#define iswxdigit(_c) (iswctype(_c,_HEX))
90#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
91
92/**
93 * Locale-specific versions of Standard C functions.
94 *
95 * They are available since msvcr80.dll.
96 */
97
98/* These are also available in msvcrt.dll since Windows Vista. */
99#if __MSVCRT_VERSION__ >= 0x0800 || (__MSVCRT_VERSION__ == 0x0600 && _WIN32_WINNT >= 0x0600)
100_CRTIMP int __cdecl _iswctype_l(wint_t _C,wctype_t _Type,_locale_t _Locale);
101
102_CRTIMP int __cdecl _iswalnum_l(wint_t _C,_locale_t _Locale);
103_CRTIMP int __cdecl _iswalpha_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 */
119132#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. */
120143#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);
122146#endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */
123#endif
124147
125#ifndef _WCTYPE_INLINE_DEFINED
126#define _WCTYPE_INLINE_DEFINED
148#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
149#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_NOINLINE
129#ifndef __cplusplus
130#define iswalpha(_c) (iswctype(_c,_ALPHA))
131#define iswupper(_c) (iswctype(_c,_UPPER))
132#define iswlower(_c) (iswctype(_c,_LOWER))
133#define iswdigit(_c) (iswctype(_c,_DIGIT))
134#define iswxdigit(_c) (iswctype(_c,_HEX))
135#define iswspace(_c) (iswctype(_c,_SPACE))
136#define iswpunct(_c) (iswctype(_c,_PUNCT))
137#define iswalnum(_c) (iswctype(_c,_ALPHA|_DIGIT))
138#define iswprint(_c) (iswctype(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT))
139#define iswgraph(_c) (iswctype(_c,_PUNCT|_ALPHA|_DIGIT))
140#define iswcntrl(_c) (iswctype(_c,_CONTROL))
141#define iswascii(_c) ((unsigned)(_c) < 0x80)
142#define iswblank(_c) (((_c) == '\t') || iswctype(_c,_BLANK))
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 */
154/**
155 * Locale-specific versions of Microsoft functions.
156 *
157 * They are available since msvcr80.dll.
158 */
159
160/* These are only available since msvcr80.dll, never in msvcrt.dll. */
161#if __MSVCRT_VERSION__ >= 0x0800
162_CRTIMP int __cdecl _iswcsym_l(wint_t _C,_locale_t _Locale);
163_CRTIMP int __cdecl _iswcsymf_l(wint_t _C,_locale_t _Locale);
164
165#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
166#define _iswcsym_l(_c,_p) (_iswalnum_l(_c,_p) || ((_c)=='_'))
167#define _iswcsymf_l(_c,_p) (_iswalpha_l(_c,_p) || ((_c)=='_'))
168#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
157169#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 */
158177#endif
159178
160179#ifdef __cplusplus
lib/libc/include/any-windows-any/credentialprovider.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ctfutb.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ctxtcall.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ctype.h+110-102
......@@ -12,122 +12,130 @@
1212extern "C" {
1313#endif
1414
15#ifndef WEOF
16#define WEOF (wint_t)(0xFFFF)
17#endif
15/**
16 * Standard C functions.
17 */
1818
19 /* CRT stuff */
20#if 1
21 extern const unsigned char __newclmap[];
22 extern const unsigned char __newcumap[];
23 extern pthreadlocinfo __ptlocinfo;
24 extern pthreadmbcinfo __ptmbcinfo;
25 extern int __globallocalestatus;
26 extern int __locale_changed;
27 extern struct threadlocaleinfostruct __initiallocinfo;
28 extern _locale_tstruct __initiallocalestructinfo;
29 pthreadlocinfo __cdecl __updatetlocinfo(void);
30 pthreadmbcinfo __cdecl __updatetmbcinfo(void);
31#endif
19_CRTIMP int __cdecl isalnum(int _C);
20_CRTIMP int __cdecl isalpha(int _C);
21_CRTIMP int __cdecl isblank(int _C);
22_CRTIMP int __cdecl iscntrl(int _C);
23_CRTIMP int __cdecl isdigit(int _C);
24_CRTIMP int __cdecl isgraph(int _C);
25_CRTIMP int __cdecl islower(int _C);
26_CRTIMP int __cdecl isprint(int _C);
27_CRTIMP int __cdecl ispunct(int _C);
28_CRTIMP int __cdecl isspace(int _C);
29_CRTIMP int __cdecl isupper(int _C);
30_CRTIMP int __cdecl isxdigit(int _C);
3231
33#ifndef _CTYPE_DEFINED
34#define _CTYPE_DEFINED
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
32_CRTIMP int __cdecl tolower(int _C);
33_CRTIMP int __cdecl toupper(int _C);
7334
74#ifndef _CTYPE_DISABLE_MACROS
35/**
36 * Locale-specific versions of Standard C functions.
37 *
38 * They are available since msvcr80.dll.
39 */
7540
76#ifndef MB_CUR_MAX
77#define MB_CUR_MAX ___mb_cur_max_func()
78#ifndef __mb_cur_max
79#define __mb_cur_max (___mb_cur_max_func())
80#endif
81_CRTIMP int __cdecl ___mb_cur_max_func(void);
82#endif
41/* These are also available in msvcrt.dll since Windows Vista. */
42#if __MSVCRT_VERSION__ >= 0x0800 || (__MSVCRT_VERSION__ == 0x0600 && _WIN32_WINNT >= 0x0600)
43_CRTIMP int __cdecl _isalnum_l(int _C,_locale_t _Locale);
44_CRTIMP int __cdecl _isalpha_l(int _C,_locale_t _Locale);
45_CRTIMP int __cdecl _isblank_l(int _C,_locale_t _Locale);
46_CRTIMP int __cdecl _iscntrl_l(int _C,_locale_t _Locale);
47_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))
85#ifdef _UCRT
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))
56_CRTIMP int __cdecl _tolower_l(int _C,_locale_t _Locale);
57_CRTIMP int __cdecl _toupper_l(int _C,_locale_t _Locale);
9158#endif
92#define _isalpha_l(_Char,_Locale) _ischartype_l(_Char,_ALPHA,_Locale)
93#define _isupper_l(_Char,_Locale) _ischartype_l(_Char,_UPPER,_Locale)
94#define _islower_l(_Char,_Locale) _ischartype_l(_Char,_LOWER,_Locale)
95#define _isdigit_l(_Char,_Locale) _ischartype_l(_Char,_DIGIT,_Locale)
96#define _isxdigit_l(_Char,_Locale) _ischartype_l(_Char,_HEX,_Locale)
97#define _isspace_l(_Char,_Locale) _ischartype_l(_Char,_SPACE,_Locale)
98#define _ispunct_l(_Char,_Locale) _ischartype_l(_Char,_PUNCT,_Locale)
99#define _isalnum_l(_Char,_Locale) _ischartype_l(_Char,_ALPHA|_DIGIT,_Locale)
100#define _isprint_l(_Char,_Locale) _ischartype_l(_Char,_BLANK|_PUNCT|_ALPHA|_DIGIT,_Locale)
101#define _isgraph_l(_Char,_Locale) _ischartype_l(_Char,_PUNCT|_ALPHA|_DIGIT,_Locale)
102#define _iscntrl_l(_Char,_Locale) _ischartype_l(_Char,_CONTROL,_Locale)
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')
59
60/**
61 * POSIX functions.
62 */
63
64_CRTIMP int __cdecl __isascii(int _C);
65_CRTIMP int __cdecl __toascii(int _C);
66_CRTIMP int __cdecl _tolower(int _C);
67_CRTIMP int __cdecl _toupper(int _C);
68
69#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
10670#define __isascii(_Char) ((unsigned)(_Char) < 0x80)
10771#define __toascii(_Char) ((_Char) & 0x7f)
108
109#define __iscsymf(_c) (isalpha(_c) || ((_c)=='_'))
110#define __iscsym(_c) (isalnum(_c) || ((_c)=='_'))
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
72#define _tolower(_Char) ((_Char)-'A'+'a')
73#define _toupper(_Char) ((_Char)-'a'+'A')
74#endif /* !_CTYPE_DISABLE_MACROS && !__cplusplus */
11875
11976#ifndef NO_OLDNAMES
120#ifndef _CTYPE_DEFINED
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
77#if !defined(_CTYPE_DISABLE_MACROS) && !defined(__cplusplus)
12678#define isascii __isascii
12779#define toascii __toascii
128#define iscsymf __iscsymf
80#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)
129102#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 */
130134#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);
131139#endif
132140
133141#ifdef __cplusplus
lib/libc/include/any-windows-any/d3d10.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d10_1.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d10effect.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d10sdklayers.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d10shader.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11.h+21-8
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -1265,34 +1265,47 @@ typedef enum D3D11_FILTER_TYPE {
12651265 D3D11_FILTER_TYPE_POINT = 0,
12661266 D3D11_FILTER_TYPE_LINEAR = 1
12671267} 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
12681276#define D3D11_MIN_FILTER_SHIFT (4)
12691277
12701278#define D3D11_MAG_FILTER_SHIFT (2)
12711279
12721280#define D3D11_MIP_FILTER_SHIFT (0)
12731281
1282#define D3D11_FILTER_REDUCTION_TYPE_MASK (0x3)
1283
12741284#define D3D11_FILTER_TYPE_MASK (0x3)
12751285
12761286#define D3D11_COMPARISON_FILTERING_BIT (0x80)
12771287
12781288#define D3D11_ANISOTROPIC_FILTERING_BIT (0x40)
12791289
1280#define D3D11_ENCODE_BASIC_FILTER(min, mag, mip, bComparison) \
1281 ((D3D11_FILTER)(((bComparison) ? D3D11_COMPARISON_FILTERING_BIT : 0 ) | \
1282 (((min)&D3D11_FILTER_TYPE_MASK) << D3D11_MIN_FILTER_SHIFT) | \
1290#define D3D11_ENCODE_BASIC_FILTER(min, mag, mip, reduction_mode) \
1291 ((D3D11_FILTER)((((min)&D3D11_FILTER_TYPE_MASK) << D3D11_MIN_FILTER_SHIFT) | \
12831292 (((mag)&D3D11_FILTER_TYPE_MASK) << D3D11_MAG_FILTER_SHIFT) | \
1284 (((mip)&D3D11_FILTER_TYPE_MASK) << D3D11_MIP_FILTER_SHIFT)))
1285#define D3D11_ENCODE_ANISOTROPIC_FILTER(bComparison) \
1293 (((mip)&D3D11_FILTER_TYPE_MASK) << D3D11_MIP_FILTER_SHIFT) | \
1294 (((reduction_mode)&D3D11_FILTER_REDUCTION_TYPE_MASK) << D3D11_FILTER_REDUCTION_TYPE_SHIFT)))
1295#define D3D11_ENCODE_ANISOTROPIC_FILTER(reduction_mode) \
12861296 ((D3D11_FILTER)(D3D11_ANISOTROPIC_FILTERING_BIT | \
12871297 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)))
12891299#define D3D11_DECODE_MIN_FILTER(d3d11Filter) \
12901300 ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIN_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))
12911301#define D3D11_DECODE_MAG_FILTER(d3d11Filter) \
12921302 ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MAG_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK))
12931303#define D3D11_DECODE_MIP_FILTER(d3d11Filter) \
12941304 ((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)
12961309#define D3D11_DECODE_IS_ANISOTROPIC_FILTER(d3d11Filter) \
12971310 (((d3d11Filter) & D3D11_ANISOTROPIC_FILTERING_BIT ) \
12981311 && (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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11_2.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11_3.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11_4.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11on12.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d11sdklayers.h+2-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -1229,6 +1229,7 @@ typedef enum D3D11_RLDO_FLAGS {
12291229 D3D11_RLDO_SUMMARY = 1,
12301230 D3D11_RLDO_DETAIL = 2
12311231} D3D11_RLDO_FLAGS;
1232DEFINE_ENUM_FLAG_OPERATORS(D3D11_RLDO_FLAGS)
12321233typedef struct D3D11_MESSAGE {
12331234 D3D11_MESSAGE_CATEGORY Category;
12341235 D3D11_MESSAGE_SEVERITY Severity;
lib/libc/include/any-windows-any/d3d11shader.h+48
......@@ -151,6 +151,22 @@ typedef struct _D3D11_SIGNATURE_PARAMETER_DESC
151151#endif
152152} 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
154170DEFINE_GUID(IID_ID3D11ShaderReflectionType, 0x6e6ffa6a, 0x9bae, 0x4613, 0xa5, 0x1e, 0x91, 0x65, 0x2d, 0x50, 0x8c, 0x21);
155171
156172#define INTERFACE ID3D11ShaderReflectionType
......@@ -288,4 +304,36 @@ DECLARE_INTERFACE_(ID3D11Linker, IUnknown)
288304};
289305#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
291339#endif
lib/libc/include/any-windows-any/d3d12.h+463-3
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -466,6 +466,30 @@ interface ID3D12SDKConfiguration;
466466#endif /* __cplusplus */
467467#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
469493#ifndef __ID3D12GraphicsCommandList5_FWD_DEFINED__
470494#define __ID3D12GraphicsCommandList5_FWD_DEFINED__
471495typedef interface ID3D12GraphicsCommandList5 ID3D12GraphicsCommandList5;
......@@ -1266,6 +1290,16 @@ extern "C" {
12661290
12671291#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
12691303#define D3D12_VIDEO_PROCESS_MAX_FILTERS (32)
12701304
12711305#define D3D12_VIDEO_PROCESS_STEREO_VIEWS (2)
......@@ -18215,7 +18249,9 @@ typedef enum D3D12_RENDER_PASS_FLAGS {
1821518249 D3D12_RENDER_PASS_FLAG_NONE = 0x0,
1821618250 D3D12_RENDER_PASS_FLAG_ALLOW_UAV_WRITES = 0x1,
1821718251 D3D12_RENDER_PASS_FLAG_SUSPENDING_PASS = 0x2,
18218 D3D12_RENDER_PASS_FLAG_RESUMING_PASS = 0x4
18252 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
1821918255} D3D12_RENDER_PASS_FLAGS;
1822018256DEFINE_ENUM_FLAG_OPERATORS(D3D12_RENDER_PASS_FLAGS);
1822118257/*****************************************************************************
......@@ -19272,7 +19308,7 @@ typedef enum D3D12_BARRIER_SYNC {
1927219308 D3D12_BARRIER_SYNC_NONE = 0x0,
1927319309 D3D12_BARRIER_SYNC_ALL = 0x1,
1927419310 D3D12_BARRIER_SYNC_DRAW = 0x2,
19275 D3D12_BARRIER_SYNC_INPUT_ASSEMBLER = 0x4,
19311 D3D12_BARRIER_SYNC_INDEX_INPUT = 0x4,
1927619312 D3D12_BARRIER_SYNC_VERTEX_SHADING = 0x8,
1927719313 D3D12_BARRIER_SYNC_PIXEL_SHADING = 0x10,
1927819314 D3D12_BARRIER_SYNC_DEPTH_STENCIL = 0x20,
......@@ -19286,6 +19322,7 @@ typedef enum D3D12_BARRIER_SYNC {
1928619322 D3D12_BARRIER_SYNC_ALL_SHADING = 0x1000,
1928719323 D3D12_BARRIER_SYNC_NON_PIXEL_SHADING = 0x2000,
1928819324 D3D12_BARRIER_SYNC_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO = 0x4000,
19325 D3D12_BARRIER_SYNC_CLEAR_UNORDERED_ACCESS_VIEW = 0x8000,
1928919326 D3D12_BARRIER_SYNC_VIDEO_DECODE = 0x100000,
1929019327 D3D12_BARRIER_SYNC_VIDEO_PROCESS = 0x200000,
1929119328 D3D12_BARRIER_SYNC_VIDEO_ENCODE = 0x400000,
......@@ -21701,6 +21738,429 @@ static inline HRESULT ID3D12SDKConfiguration_SetSDKVersion(ID3D12SDKConfiguratio
2170121738
2170221739#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
2170422164typedef enum D3D12_AXIS_SHADING_RATE {
2170522165 D3D12_AXIS_SHADING_RATE_1X = 0x0,
2170622166 D3D12_AXIS_SHADING_RATE_2X = 0x1,
lib/libc/include/any-windows-any/d3d12sdklayers.h+3-2
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -989,7 +989,8 @@ typedef enum D3D12_MESSAGE_ID {
989989 D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_UNBOUNDED_STATIC_DESCRIPTORS = 0x4fd,
990990 D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_INVALIDSHADERBYTECODE = 0x4fe,
991991 D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_OUTOFMEMORY = 0x4ff,
992 D3D12_MESSAGE_ID_D3D12_MESSAGES_END = 0x500
992 D3D12_MESSAGE_ID_INCOMPATIBLE_BARRIER_LAYOUT = 0x536,
993 D3D12_MESSAGE_ID_D3D12_MESSAGES_END = 0x537
993994} D3D12_MESSAGE_ID;
994995typedef enum D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE {
995996 D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NONE = 0x0,
lib/libc/include/any-windows-any/d3d12shader.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/d3d12video.h+1111-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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -42,6 +42,14 @@ interface ID3D12VideoDecoder;
4242#endif /* __cplusplus */
4343#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
4553#ifndef __ID3D12VideoDecodeCommandList_FWD_DEFINED__
4654#define __ID3D12VideoDecodeCommandList_FWD_DEFINED__
4755typedef interface ID3D12VideoDecodeCommandList ID3D12VideoDecodeCommandList;
......@@ -50,6 +58,14 @@ interface ID3D12VideoDecodeCommandList;
5058#endif /* __cplusplus */
5159#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
5369#ifndef __ID3D12VideoDecodeCommandList1_FWD_DEFINED__
5470#define __ID3D12VideoDecodeCommandList1_FWD_DEFINED__
5571typedef interface ID3D12VideoDecodeCommandList1 ID3D12VideoDecodeCommandList1;
......@@ -169,6 +185,15 @@ typedef enum D3D12_VIDEO_FRAME_STEREO_FORMAT {
169185 D3D12_VIDEO_FRAME_STEREO_FORMAT_VERTICAL = 3,
170186 D3D12_VIDEO_FRAME_STEREO_FORMAT_SEPARATE = 4
171187} 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;
172197typedef enum D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE {
173198 D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE_NONE = 0,
174199 D3D12_VIDEO_FRAME_CODED_INTERLACE_TYPE_FIELD_BASED = 1
......@@ -213,7 +238,9 @@ typedef enum D3D12_FEATURE_VIDEO {
213238 D3D12_FEATURE_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT = 42,
214239 D3D12_FEATURE_VIDEO_ENCODER_SUPPORT = 43,
215240 D3D12_FEATURE_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT = 44,
216 D3D12_FEATURE_VIDEO_ENCODER_RESOURCE_REQUIREMENTS = 45
241 D3D12_FEATURE_VIDEO_ENCODER_RESOURCE_REQUIREMENTS = 45,
242 D3D12_FEATURE_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_CONFIG = 46,
243 D3D12_FEATURE_VIDEO_ENCODER_SUPPORT1 = 47
217244} D3D12_FEATURE_VIDEO;
218245typedef enum D3D12_BITSTREAM_ENCRYPTION_TYPE {
219246 D3D12_BITSTREAM_ENCRYPTION_TYPE_NONE = 0
......@@ -271,6 +298,10 @@ typedef enum D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS {
271298 D3D12_VIDEO_PROCESS_DEINTERLACE_FLAG_CUSTOM = 0x80000000
272299} D3D12_VIDEO_PROCESS_DEINTERLACE_FLAGS;
273300DEFINE_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;
274305typedef struct D3D12_VIDEO_PROCESS_LUMA_KEY {
275306 WINBOOL Enable;
276307 FLOAT Lower;
......@@ -761,6 +792,16 @@ typedef struct D3D12_FEATURE_DATA_VIDEO_DECODE_SUPPORT {
761792 D3D12_VIDEO_DECODE_CONFIGURATION_FLAGS ConfigurationFlags;
762793 D3D12_VIDEO_DECODE_TIER DecodeTier;
763794} 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;
764805typedef struct D3D12_VIDEO_DECODE_FRAME_ARGUMENT {
765806 D3D12_VIDEO_DECODE_ARGUMENT_TYPE Type;
766807 UINT Size;
......@@ -796,6 +837,286 @@ typedef struct D3D12_VIDEO_DECODE_OUTPUT_STREAM_ARGUMENTS {
796837 UINT OutputSubresource;
797838 D3D12_VIDEO_DECODE_CONVERSION_ARGUMENTS ConversionArguments;
798839} 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;
7991120/*****************************************************************************
8001121 * ID3D12VideoDecodeCommandList interface
8011122 */
......@@ -1117,6 +1438,329 @@ static inline void ID3D12VideoDecodeCommandList_WriteBufferImmediate(ID3D12Video
11171438
11181439#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
11201764typedef struct D3D12_VIDEO_DECODE_OUTPUT_HISTOGRAM {
11211765 UINT64 Offset;
11221766 ID3D12Resource *pBuffer;
......@@ -1416,15 +2060,33 @@ typedef enum D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE {
14162060 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_8X8 = 0,
14172061 D3D12_VIDEO_MOTION_ESTIMATOR_SEARCH_BLOCK_SIZE_16X16 = 1
14182062} 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)
14192069typedef enum D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION {
14202070 D3D12_VIDEO_MOTION_ESTIMATOR_VECTOR_PRECISION_QUARTER_PEL = 0
14212071} 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)
14222077typedef struct D3D12_FEATURE_DATA_VIDEO_FEATURE_AREA_SUPPORT {
14232078 UINT NodeIndex;
14242079 WINBOOL VideoDecodeSupport;
14252080 WINBOOL VideoProcessSupport;
14262081 WINBOOL VideoEncodeSupport;
14272082} 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;
14282090typedef struct D3D12_VIDEO_MOTION_ESTIMATOR_DESC {
14292091 UINT NodeMask;
14302092 DXGI_FORMAT InputFormat;
......@@ -2983,6 +3645,362 @@ DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_PROFILE1, 0x6936ff0f, 0x45b1, 0x4163,
29833645DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_PROFILE2, 0x0c5f2aa1, 0xe541, 0x4089, 0xbb, 0x7b, 0x98, 0x11, 0x0a, 0x19, 0xd7, 0xc8);
29843646DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_12BIT_PROFILE2, 0x17127009, 0xa00f, 0x4ce1, 0x99, 0x4e, 0xbf, 0x40, 0x81, 0xf6, 0xf3, 0xf0);
29853647DEFINE_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;
29864004typedef enum D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE {
29874005 D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_ABSOLUTE_QP_MAP = 0,
29884006 D3D12_VIDEO_ENCODER_RATE_CONTROL_MODE_CQP = 1,
......@@ -3050,7 +4068,8 @@ typedef struct D3D12_VIDEO_ENCODER_RATE_CONTROL {
30504068} D3D12_VIDEO_ENCODER_RATE_CONTROL;
30514069typedef enum D3D12_VIDEO_ENCODER_CODEC {
30524070 D3D12_VIDEO_ENCODER_CODEC_H264 = 0,
3053 D3D12_VIDEO_ENCODER_CODEC_HEVC = 1
4071 D3D12_VIDEO_ENCODER_CODEC_HEVC = 1,
4072 D3D12_VIDEO_ENCODER_CODEC_AV1 = 2
30544073} D3D12_VIDEO_ENCODER_CODEC;
30554074typedef enum D3D12_VIDEO_ENCODER_PROFILE_H264 {
30564075 D3D12_VIDEO_ENCODER_PROFILE_H264_MAIN = 0,
......@@ -3066,6 +4085,7 @@ typedef struct D3D12_VIDEO_ENCODER_PROFILE_DESC {
30664085 __C89_NAMELESS union {
30674086 D3D12_VIDEO_ENCODER_PROFILE_H264 *pH264Profile;
30684087 D3D12_VIDEO_ENCODER_PROFILE_HEVC *pHEVCProfile;
4088 D3D12_VIDEO_ENCODER_AV1_PROFILE *pAV1Profile;
30694089 } __C89_NAMELESSUNIONNAME;
30704090} D3D12_VIDEO_ENCODER_PROFILE_DESC;
30714091typedef enum D3D12_VIDEO_ENCODER_LEVELS_H264 {
......@@ -3118,6 +4138,7 @@ typedef struct D3D12_VIDEO_ENCODER_LEVEL_SETTING {
31184138 __C89_NAMELESS union {
31194139 D3D12_VIDEO_ENCODER_LEVELS_H264 *pH264LevelSetting;
31204140 D3D12_VIDEO_ENCODER_LEVEL_TIER_CONSTRAINTS_HEVC *pHEVCLevelSetting;
4141 D3D12_VIDEO_ENCODER_AV1_LEVEL_TIER_CONSTRAINTS *pAV1LevelSetting;
31214142 } __C89_NAMELESSUNIONNAME;
31224143} D3D12_VIDEO_ENCODER_LEVEL_SETTING;
31234144typedef struct D3D12_VIDEO_ENCODER_PICTURE_RESOLUTION_DESC {
......@@ -3134,6 +4155,14 @@ typedef enum D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE {
31344155 D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE_NONE = 0,
31354156 D3D12_VIDEO_ENCODER_INTRA_REFRESH_MODE_ROW_BASED = 1
31364157} 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;
31374166typedef enum D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE {
31384167 D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_FULL_FRAME = 0,
31394168 D3D12_VIDEO_ENCODER_FRAME_SUBREGION_LAYOUT_MODE_BYTES_PER_SUBREGION = 1,
......@@ -3223,11 +4252,36 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_HEVC {
32234252 UCHAR max_transform_hierarchy_depth_inter;
32244253 UCHAR max_transform_hierarchy_depth_intra;
32254254} 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;
32264278typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT {
32274279 UINT DataSize;
32284280 __C89_NAMELESS union {
32294281 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_H264 *pH264Support;
32304282 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;
32314285 } __C89_NAMELESSUNIONNAME;
32324286} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT;
32334287typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT {
......@@ -3256,6 +4310,7 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT {
32564310 __C89_NAMELESS union {
32574311 D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_H264 *pH264Support;
32584312 D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT_HEVC *pHEVCSupport;
4313 D3D12_VIDEO_ENCODER_CODEC_AV1_PICTURE_CONTROL_SUPPORT *pAV1Support;
32594314 } __C89_NAMELESSUNIONNAME;
32604315} D3D12_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT;
32614316typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_CODEC_PICTURE_CONTROL_SUPPORT {
......@@ -3325,6 +4380,7 @@ typedef struct D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION {
33254380 __C89_NAMELESS union {
33264381 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264 *pH264Config;
33274382 D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC *pHEVCConfig;
4383 D3D12_VIDEO_ENCODER_AV1_CODEC_CONFIGURATION *pAV1Config;
33284384 } __C89_NAMELESSUNIONNAME;
33294385} D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION;
33304386typedef struct D3D12_VIDEO_ENCODER_INTRA_REFRESH {
......@@ -3335,7 +4391,8 @@ typedef enum D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE {
33354391 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_MAXIMUM = 0,
33364392 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_FULL_PIXEL = 1,
33374393 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_HALF_PIXEL = 2,
3338 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_QUARTER_PIXEL = 3
4394 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_QUARTER_PIXEL = 3,
4395 D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_EIGHTH_PIXEL = 4
33394396} D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE;
33404397typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_RESOLUTION_SUPPORT_LIMITS {
33414398 UINT MaxSubregionsNumber;
......@@ -3373,6 +4430,7 @@ typedef struct D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE {
33734430 __C89_NAMELESS union {
33744431 D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_H264 *pH264GroupOfPictures;
33754432 D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE_HEVC *pHEVCGroupOfPictures;
4433 D3D12_VIDEO_ENCODER_AV1_SEQUENCE_STRUCTURE *pAV1SequenceStructure;
33764434 } __C89_NAMELESSUNIONNAME;
33774435} D3D12_VIDEO_ENCODER_SEQUENCE_GOP_STRUCTURE;
33784436typedef struct D3D12_FEATURE_DATA_VIDEO_ENCODER_SUPPORT {
......@@ -4123,11 +5181,39 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_HEVC {
41235181 UINT QPMapValuesCount;
41245182 INT8 *pRateControlQPMap;
41255183} 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;
41265210typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA {
41275211 UINT DataSize;
41285212 __C89_NAMELESS union {
41295213 D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA_H264 *pH264PicData;
41305214 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;
41315217 } __C89_NAMELESSUNIONNAME;
41325218} D3D12_VIDEO_ENCODER_PICTURE_CONTROL_CODEC_DATA;
41335219typedef struct D3D12_VIDEO_ENCODE_REFERENCE_FRAMES {
......@@ -4168,8 +5254,29 @@ typedef struct D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA {
41685254 __C89_NAMELESS union {
41695255 const D3D12_VIDEO_ENCODER_PICTURE_CONTROL_SUBREGIONS_LAYOUT_DATA_SLICES *pSlicesPartition_H264;
41705256 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;
41715258 } __C89_NAMELESSUNIONNAME;
41725259} 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;
41735280typedef struct D3D12_VIDEO_ENCODER_SEQUENCE_CONTROL_DESC {
41745281 D3D12_VIDEO_ENCODER_SEQUENCE_CONTROL_FLAGS Flags;
41755282 D3D12_VIDEO_ENCODER_INTRA_REFRESH IntraRefreshConfig;
lib/libc/include/any-windows-any/d3dcommon.h+1-1
......@@ -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
33#ifdef _WIN32
44#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
154154 const D3D_SHADER_MACRO *defines, ID3DInclude *include,
155155 ID3DBlob **shader, ID3DBlob **error_messages);
156156
157HRESULT WINAPI D3DCreateFunctionLinkingGraph(UINT flags, ID3D11FunctionLinkingGraph **graph);
157158HRESULT WINAPI D3DCreateLinker(ID3D11Linker **linker);
158159HRESULT 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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dcommon.h+1-1
......@@ -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
33#ifdef _WIN32
44#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
667667__CRT_UUID_DECL(IDCompositionDevice3,0x0987cb06,0xf916,0x48bf,0x8d,0x35,0xce,0x76,0x41,0x78,0x1b,0xd9);
668668#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
670732#endif /* WINAPI_PARTITION_DESKTOP */
671733
672734#if (_WIN32_WINNT >= 0x0A00)
lib/libc/include/any-windows-any/dcompanimation.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ddk/ntddk.h+15
......@@ -1161,6 +1161,21 @@ typedef struct _FILE_DISPOSITION_INFORMATION {
11611161 BOOLEAN DeleteFile;
11621162} 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
11641179typedef struct _FILE_END_OF_FILE_INFORMATION {
11651180 LARGE_INTEGER EndOfFile;
11661181} 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)
195195/******************************************************************************
196196 * INTERLOCKED Functions *
197197 ******************************************************************************/
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
244199#define BitScanForward _BitScanForward
245200#define BitScanReverse _BitScanReverse
lib/libc/include/any-windows-any/ddstream.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/devicetopology.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dimm.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dinputd.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/directmanipulation.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dirent.h+10-2
......@@ -38,7 +38,11 @@ struct dirent
3838typedef struct
3939{
4040 /* 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
4347 /* dirent struct to return from dir (NOTE: this makes this thread
4448 * safe as long as only one thread uses a particular DIR struct at
......@@ -85,7 +89,11 @@ struct _wdirent
8589typedef struct
8690{
8791 /* 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
9098 /* dirent struct to return from dir (NOTE: this makes this thread
9199 * 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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dmodshow.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dmusicf.h+10-3
......@@ -429,7 +429,7 @@ struct _DMUS_IO_SEQ_ITEM {
429429 MUSIC_TIME mtTime;
430430 MUSIC_TIME mtDuration;
431431 DWORD dwPChannel;
432 short nOffset;
432 short nOffset;
433433 BYTE bStatus;
434434 BYTE bByte1;
435435 BYTE bByte2;
......@@ -489,7 +489,7 @@ struct _DMUS_IO_TIMESIG {
489489
490490struct _DMUS_IO_STYLE {
491491 DMUS_IO_TIMESIG timeSig;
492 double dblTempo;
492 double dblTempo;
493493};
494494
495495struct _DMUS_IO_VERSION {
......@@ -503,6 +503,7 @@ struct _DMUS_IO_PATTERN {
503503 BYTE bGrooveTop;
504504 WORD wEmbellishment;
505505 WORD wNbrMeasures;
506 /* DX8 */
506507 BYTE bDestGrooveBottom;
507508 BYTE bDestGrooveTop;
508509 DWORD dwFlags;
......@@ -516,6 +517,7 @@ struct _DMUS_IO_STYLEPART {
516517 BYTE bPlayModeFlags;
517518 BYTE bInvertUpper;
518519 BYTE bInvertLower;
520 /* DX8 */
519521 BYTE bPad[3];
520522 DWORD dwFlags;
521523};
......@@ -527,8 +529,9 @@ struct _DMUS_IO_PARTREF {
527529 BYTE bSubChordLevel;
528530 BYTE bPriority;
529531 BYTE bRandomVariation;
532 /* DX8 */
530533 WORD wPad;
531 DWORD dwPChannel;
534 DWORD dwPChannel; /* Replaces wLogicalPartID */
532535};
533536
534537
......@@ -600,6 +603,7 @@ struct _DMUS_IO_CHORD {
600603 MUSIC_TIME mtTime;
601604 WORD wMeasure;
602605 BYTE bBeat;
606 /* DX8 */
603607 BYTE bFlags;
604608};
605609
......@@ -619,6 +623,7 @@ struct _DMUS_IO_COMMAND {
619623 BYTE bCommand;
620624 BYTE bGrooveLevel;
621625 BYTE bGrooveRange;
626 /* DX8 */
622627 BYTE bRepeatMode;
623628};
624629
......@@ -673,6 +678,7 @@ struct _DMUS_IO_INSTRUMENT {
673678 BYTE bVolume;
674679 short nTranspose;
675680 DWORD dwChannelPriority;
681 /* DX8 */
676682 short nPitchBendRange;
677683};
678684
......@@ -707,6 +713,7 @@ struct _DMUS_IO_WAVE_ITEM_HEADER {
707713 DWORD dwLoopStart;
708714 DWORD dwLoopEnd;
709715 DWORD dwFlags;
716 /* DX9 */
710717 WORD wVolumeRange;
711718 WORD wPitchRange;
712719};
lib/libc/include/any-windows-any/docobj.h+2-2
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -1713,7 +1713,7 @@ static inline HRESULT IProtectedModeMenuServices_LoadMenuID(IProtectedModeMenuSe
17131713
17141714#endif
17151715#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)
17171717typedef struct tagPAGESET { } PAGESET;
17181718#endif
17191719/* Begin additional prototypes for all interfaces */
lib/libc/include/any-windows-any/docobjectservice.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/documenttarget.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/downloadmgr.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/drmexternals.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dvdif.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dwrite.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dwrite_1.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dwrite_2.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dwrite_3.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_2.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_3.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_4.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_5.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgi1_6.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgicommon.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgidebug.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgiformat.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxgitype.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxva2api.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/dxvahd.h+1-1
......@@ -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
33#ifdef _WIN32
44#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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/errno.h+2-2
......@@ -17,8 +17,8 @@ extern "C" {
1717_CRTIMP extern int *__cdecl _errno(void);
1818#define errno (*_errno())
1919
20errno_t __cdecl _set_errno(int _Value);
21errno_t __cdecl _get_errno(int *_Value);
20_CRTIMP errno_t __cdecl _set_errno(int _Value);
21_CRTIMP errno_t __cdecl _get_errno(int *_Value);
2222#endif /* _CRT_ERRNO_DEFINED */
2323
2424#define EPERM 1
lib/libc/include/any-windows-any/esent.h+2
......@@ -2559,10 +2559,12 @@ JET_ERR JET_API JetOpenTableW(
25592559
25602560#define JetOpenTable __MINGW_NAME_AW(JetOpenTable)
25612561
2562#if (JET_VERSION >= 0x0600)
25622563JET_ERR JET_API JetOpenTemporaryTable(
25632564 JET_SESID sesid,
25642565 JET_OPENTEMPORARYTABLE* popentemporarytable
25652566);
2567#endif /*(JET_VERSION >= 0x0600)*/
25662568
25672569JET_ERR JET_API JetOpenTempTable(
25682570 JET_SESID sesid,
lib/libc/include/any-windows-any/evr.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/evr9.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/excpt.h+6-8
......@@ -16,14 +16,12 @@ extern "C" {
1616
1717 struct _EXCEPTION_POINTERS;
1818
19#ifndef EXCEPTION_DISPOSITION
20#define EXCEPTION_DISPOSITION int
21#endif
22#define ExceptionContinueExecution 0
23#define ExceptionContinueSearch 1
24#define ExceptionNestedException 2
25#define ExceptionCollidedUnwind 3
26#define ExceptionExecuteHandler 4
19typedef enum _EXCEPTION_DISPOSITION {
20 ExceptionContinueExecution = 0,
21 ExceptionContinueSearch = 1,
22 ExceptionNestedException = 2,
23 ExceptionCollidedUnwind = 3
24} EXCEPTION_DISPOSITION;
2725
2826#if (defined(_X86_) && !defined(__x86_64))
2927 struct _EXCEPTION_RECORD;
lib/libc/include/any-windows-any/exdisp.h+1-1
......@@ -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
33#ifdef _WIN32
44#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;
8181/*TODO: Some of these could be inlined */
8282/* 7.6.2 Exception */
8383
84extern int __cdecl feclearexcept (int);
85extern int __cdecl fegetexceptflag (fexcept_t * flagp, int excepts);
86extern int __cdecl feraiseexcept (int excepts );
87extern int __cdecl fesetexceptflag (const fexcept_t *, int);
88extern int __cdecl fetestexcept (int excepts);
84extern int __cdecl feclearexcept (int _Flags);
85extern int __cdecl fegetexceptflag (fexcept_t * _Flagp, int _Excepts);
86extern int __cdecl feraiseexcept (int _Excepts);
87extern int __cdecl fesetexceptflag (const fexcept_t * _Flagp, int _Excepts);
88extern int __cdecl fetestexcept (int _Excepts);
8989
9090/* 7.6.3 Rounding */
9191
9292extern int __cdecl fegetround (void);
93extern int __cdecl fesetround (int mode);
93extern int __cdecl fesetround (int _Mode);
9494
9595/* 7.6.4 Environment */
9696
97extern int __cdecl fegetenv(fenv_t * envp);
98extern int __cdecl fesetenv(const fenv_t * );
99extern int __cdecl feupdateenv(const fenv_t *);
100extern int __cdecl feholdexcept(fenv_t *);
97extern int __cdecl fegetenv(fenv_t * _Envp);
98extern int __cdecl fesetenv(const fenv_t * _Envp);
99extern int __cdecl feupdateenv(const fenv_t * _Envp);
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
102108#ifdef __cplusplus
103109}
lib/libc/include/any-windows-any/filter.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/float.h+2
......@@ -243,6 +243,8 @@
243243#define _FPE_STACKOVERFLOW 0x8a
244244#define _FPE_STACKUNDERFLOW 0x8b
245245#define _FPE_EXPLICITGEN 0x8c /* raise( SIGFPE ); */
246#define _FPE_MULTIPLE_TRAPS 0x8d
247#define _FPE_MULTIPLE_FAULTS 0x8e
246248
247249#ifndef __STRICT_ANSI__
248250#define CW_DEFAULT _CW_DEFAULT
lib/libc/include/any-windows-any/fsrm.h+435-435
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -306,6 +306,421 @@ interface IFsrmExportImport;
306306
307307#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
309724/*****************************************************************************
310725 * IFsrmCommittableCollection interface
311726 */
......@@ -1509,228 +1924,32 @@ static inline HRESULT IFsrmActionReport_Invoke(IFsrmActionReport* This,DISPID di
15091924}
15101925/*** IFsrmAction methods ***/
15111926static inline HRESULT IFsrmActionReport_get_Id(IFsrmActionReport* This,FSRM_OBJECT_ID *id) {
1512 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);
1927 return This->lpVtbl->get_Id(This,id);
17091928}
1710static inline HRESULT IFsrmCollection_Invoke(IFsrmCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1711 return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1929static inline HRESULT IFsrmActionReport_get_ActionType(IFsrmActionReport* This,FsrmActionType *actionType) {
1930 return This->lpVtbl->get_ActionType(This,actionType);
17121931}
1713/*** IFsrmCollection methods ***/
1714static inline HRESULT IFsrmCollection_get__NewEnum(IFsrmCollection* This,IUnknown **unknown) {
1715 return This->lpVtbl->get__NewEnum(This,unknown);
1932static inline HRESULT IFsrmActionReport_get_RunLimitInterval(IFsrmActionReport* This,LONG *minutes) {
1933 return This->lpVtbl->get_RunLimitInterval(This,minutes);
17161934}
1717static inline HRESULT IFsrmCollection_get_Item(IFsrmCollection* This,LONG index,VARIANT *item) {
1718 return This->lpVtbl->get_Item(This,index,item);
1935static inline HRESULT IFsrmActionReport_put_RunLimitInterval(IFsrmActionReport* This,LONG minutes) {
1936 return This->lpVtbl->put_RunLimitInterval(This,minutes);
17191937}
1720static inline HRESULT IFsrmCollection_get_Count(IFsrmCollection* This,LONG *count) {
1721 return This->lpVtbl->get_Count(This,count);
1938static inline HRESULT IFsrmActionReport_Delete(IFsrmActionReport* This) {
1939 return This->lpVtbl->Delete(This);
17221940}
1723static inline HRESULT IFsrmCollection_get_State(IFsrmCollection* This,FsrmCollectionState *state) {
1724 return This->lpVtbl->get_State(This,state);
1941/*** IFsrmActionReport methods ***/
1942static inline HRESULT IFsrmActionReport_get_ReportTypes(IFsrmActionReport* This,SAFEARRAY **reportTypes) {
1943 return This->lpVtbl->get_ReportTypes(This,reportTypes);
17251944}
1726static inline HRESULT IFsrmCollection_Cancel(IFsrmCollection* This) {
1727 return This->lpVtbl->Cancel(This);
1945static inline HRESULT IFsrmActionReport_put_ReportTypes(IFsrmActionReport* This,SAFEARRAY *reportTypes) {
1946 return This->lpVtbl->put_ReportTypes(This,reportTypes);
17281947}
1729static inline HRESULT IFsrmCollection_WaitForCompletion(IFsrmCollection* This,LONG waitSeconds,VARIANT_BOOL *completed) {
1730 return This->lpVtbl->WaitForCompletion(This,waitSeconds,completed);
1948static inline HRESULT IFsrmActionReport_get_MailTo(IFsrmActionReport* This,BSTR *mailTo) {
1949 return This->lpVtbl->get_MailTo(This,mailTo);
17311950}
1732static inline HRESULT IFsrmCollection_GetById(IFsrmCollection* This,FSRM_OBJECT_ID id,VARIANT *entry) {
1733 return This->lpVtbl->GetById(This,id,entry);
1951static inline HRESULT IFsrmActionReport_put_MailTo(IFsrmActionReport* This,BSTR mailTo) {
1952 return This->lpVtbl->put_MailTo(This,mailTo);
17341953}
17351954#endif
17361955#endif
......@@ -1738,7 +1957,7 @@ static inline HRESULT IFsrmCollection_GetById(IFsrmCollection* This,FSRM_OBJECT_
17381957#endif
17391958
17401959
1741#endif /* __IFsrmCollection_INTERFACE_DEFINED__ */
1960#endif /* __IFsrmActionReport_INTERFACE_DEFINED__ */
17421961
17431962/*****************************************************************************
17441963 * IFsrmDerivedObjectsResult interface
......@@ -3244,225 +3463,6 @@ static inline HRESULT IFsrmActionEmail2_put_AttachmentFileListSize(IFsrmActionEm
32443463
32453464#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
34663466#endif
34673467/* Begin additional prototypes for all interfaces */
34683468
lib/libc/include/any-windows-any/fsrmenums.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fsrmquota.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fsrmreports.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fsrmscreen.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fusion.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/fwptypes.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/heapapi.h+11-11
......@@ -15,18 +15,7 @@ extern "C" {
1515#endif
1616
1717#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
2818 WINBASEAPI WINBOOL WINAPI HeapValidate (HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem);
29 WINBOOL WINAPI HeapSummary (HANDLE hHeap, DWORD dwFlags, LPHEAP_SUMMARY lpSummary);
3019#endif
3120
3221#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || NTDDI_VERSION >= NTDDI_WIN10_19H1
......@@ -41,6 +30,17 @@ extern "C" {
4130#endif
4231
4332#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);
4444 WINBASEAPI HANDLE WINAPI HeapCreate (DWORD flOptions, SIZE_T dwInitialSize, SIZE_T dwMaximumSize);
4545 WINBASEAPI SIZE_T WINAPI HeapCompact (HANDLE hHeap, DWORD dwFlags);
4646 WINBASEAPI WINBOOL WINAPI HeapDestroy (HANDLE hHeap);
lib/libc/include/any-windows-any/hstring.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/httprequest.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/icftypes.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/icodecapi.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/iketypes.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/inputpaneinterop.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/inputscope.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/inspectable.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/intrin.h+2-1
......@@ -521,7 +521,8 @@ extern "C" {
521521 __MACHINEIA64(void __rum(int))
522522#ifndef __CYGWIN__
523523#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 *))
525526 __MACHINEIA64(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf,void *))
526527 __MACHINEX64(int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf,void *))
527528#else
lib/libc/include/any-windows-any/intsafe.h+117-50
......@@ -11,9 +11,76 @@
1111
1212#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
1313
14#include <_mingw.h>
1415#include <wtypesbase.h>
1516#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
1784#define INTSAFE_E_ARITHMETIC_OVERFLOW ((HRESULT)0x80070216)
1885
1986#ifndef S_OK
......@@ -424,7 +491,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
424491#define Int8ToULong64 Int8ToULongLong
425492#define Int8ToDWord64 Int8ToULongLong
426493#define Int8ToUInt64 Int8ToULongLong
427#define Int8ToSizeT Int8ToUIntPtr
494__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Int8ToSizeT, INT8, size_t)
428495#define Int8ToSIZET Int8ToULongPtr
429496#define ShortToUInt16 ShortToUShort
430497#define ShortToUInt32 ShortToUInt
......@@ -433,7 +500,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
433500#define ShortToULong64 ShortToULongLong
434501#define ShortToDWord64 ShortToULongLong
435502#define ShortToUInt64 ShortToULongLong
436#define ShortToSizeT ShortToUIntPtr
503__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(ShortToSizeT, SHORT, size_t)
437504#define ShortToSIZET ShortToULongPtr
438505#define Int16ToChar ShortToChar
439506#define Int16ToInt8 ShortToInt8
......@@ -455,7 +522,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
455522#define Int16ToULong64 ShortToULongLong
456523#define Int16ToDWord64 ShortToULongLong
457524#define Int16ToUInt64 ShortToULongLong
458#define Int16ToSizeT ShortToUIntPtr
525__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Int16ToSizeT, INT16, size_t)
459526#define Int16ToSIZET ShortToULongPtr
460527#define UShortToInt16 UShortToShort
461528#define UInt16ToChar UShortToChar
......@@ -497,7 +564,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
497564#define Int32ToULong64 IntToULongLong
498565#define Int32ToDWord64 IntToULongLong
499566#define Int32ToUInt64 IntToULongLong
500#define Int32ToSizeT IntToUIntPtr
567__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Int32ToSizeT, INT32, size_t)
501568#define Int32ToSIZET IntToULongPtr
502569#define IntPtrToByte IntPtrToUInt8
503570#define IntPtrToInt16 IntPtrToShort
......@@ -535,7 +602,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
535602#define UIntPtrToInt32 UIntPtrToInt
536603#define UIntPtrToUInt32 UIntPtrToUInt
537604#define UIntPtrToLong64 UIntPtrToLongLong
538#define UIntPtrToPtrdiffT UIntPtrToIntPtr
605__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(UIntPtrToPtrdiffT, UINT_PTR, ptrdiff_t)
539606#define LongToInt16 LongToShort
540607#define LongToUInt16 LongToUShort
541608#define LongToInt32 LongToInt
......@@ -601,8 +668,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
601668#define LongLongToULong64 LongLongToULongLong
602669#define LongLongToDWord64 LongLongToULongLong
603670#define LongLongToUInt64 LongLongToULongLong
604#define LongLongToPtrdiffT LongLongToIntPtr
605#define LongLongToSizeT LongLongToUIntPtr
671__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(LongLongToPtrdiffT, LONGLONG, ptrdiff_t)
672__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(LongLongToSizeT, LONGLONG, size_t)
606673#define LongLongToSSIZET LongLongToLongPtr
607674#define LongLongToSIZET LongLongToULongPtr
608675#define Long64ToChar LongLongToChar
......@@ -628,8 +695,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
628695#define Long64ToDWord LongLongToULong
629696#define Long64ToDWordPtr LongLongToULongPtr
630697#define Long64ToULongLong LongLongToULongLong
631#define Long64ToPtrdiffT LongLongToIntPtr
632#define Long64ToSizeT LongLongToUIntPtr
698__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Long64ToPtrdiffT, LONG64, ptrdiff_t)
699__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(Long64ToSizeT, LONG64, size_t)
633700#define Long64ToSSIZET LongLongToLongPtr
634701#define Long64ToSIZET LongLongToULongPtr
635702#define Int64ToChar LongLongToChar
......@@ -682,8 +749,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
682749#define DWordLongToLongLong ULongLongToLongLong
683750#define DWordLongToLong64 ULongLongToLongLong
684751#define DWordLongToInt64 ULongLongToLongLong
685#define DWordLongToPtrdiffT ULongLongToIntPtr
686#define DWordLongToSizeT ULongLongToUIntPtr
752__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(DWordLongToPtrdiffT, DWORDLONG, ptrdiff_t)
753__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(DWordLongToSizeT, DWORDLONG, size_t)
687754#define DWordLongToSSIZET ULongLongToLongPtr
688755#define DWordLongToSIZET ULongLongToULongPtr
689756#define ULong64ToChar ULongLongToChar
......@@ -711,8 +778,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
711778#define ULong64ToLongLong ULongLongToLongLong
712779#define ULong64ToLong64 ULongLongToLongLong
713780#define ULong64ToInt64 ULongLongToLongLong
714#define ULong64ToPtrdiffT ULongLongToIntPtr
715#define ULong64ToSizeT ULongLongToUIntPtr
781__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(ULong64ToPtrdiffT, ULONG64, ptrdiff_t)
782__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(ULong64ToSizeT, ULONG64, size_t)
716783#define ULong64ToSSIZET ULongLongToLongPtr
717784#define ULong64ToSIZET ULongLongToULongPtr
718785#define DWord64ToChar ULongLongToChar
......@@ -740,8 +807,8 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
740807#define DWord64ToLongLong ULongLongToLongLong
741808#define DWord64ToLong64 ULongLongToLongLong
742809#define DWord64ToInt64 ULongLongToLongLong
743#define DWord64ToPtrdiffT ULongLongToIntPtr
744#define DWord64ToSizeT ULongLongToUIntPtr
810__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(DWord64ToPtrdiffT, DWORD64, ptrdiff_t)
811__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(DWord64ToSizeT, DWORD64, size_t)
745812#define DWord64ToSSIZET ULongLongToLongPtr
746813#define DWord64ToSIZET ULongLongToULongPtr
747814#define UInt64ToChar ULongLongToChar
......@@ -769,42 +836,42 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
769836#define UInt64ToLongLong ULongLongToLongLong
770837#define UInt64ToLong64 ULongLongToLongLong
771838#define UInt64ToInt64 ULongLongToLongLong
772#define UInt64ToPtrdiffT ULongLongToIntPtr
773#define UInt64ToSizeT ULongLongToUIntPtr
839__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(UInt64ToPtrdiffT, UINT64, ptrdiff_t)
840__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(UInt64ToSizeT, UINT64, size_t)
774841#define UInt64ToSSIZET ULongLongToLongPtr
775842#define UInt64ToSIZET ULongLongToULongPtr
776#define PtrdiffTToChar IntPtrToChar
777#define PtrdiffTToInt8 IntPtrToInt8
778#define PtrdiffTToUChar IntPtrToUChar
779#define PtrdiffTToUInt8 IntPtrToUInt8
780#define PtrdiffTToByte IntPtrToUInt8
781#define PtrdiffTToShort IntPtrToShort
782#define PtrdiffTToInt16 IntPtrToShort
783#define PtrdiffTToUShort IntPtrToUShort
784#define PtrdiffTToUInt16 IntPtrToUShort
785#define PtrdiffTToWord IntPtrToUShort
786#define PtrdiffTToInt32 IntPtrToInt
787#define PtrdiffTToUInt32 IntPtrToUInt
788#define PtrdiffTToLongPtr IntPtrToLongPtr
789#define PtrdiffTToULongLong IntPtrToULongLong
790#define PtrdiffTToDWordLong IntPtrToULongLong
791#define PtrdiffTToULong64 IntPtrToULongLong
792#define PtrdiffTToDWord64 IntPtrToULongLong
793#define PtrdiffTToUInt64 IntPtrToULongLong
794#define PtrdiffTToSIZET IntPtrToULongPtr
795#define SizeTToInt8 UIntPtrToInt8
796#define SizeTToUChar UIntPtrToUChar
797#define SizeTToChar UIntPtrToChar
798#define SizeTToUInt8 UIntPtrToUInt8
799#define SizeTToByte UIntPtrToUInt8
800#define SizeTToShort UIntPtrToShort
801#define SizeTToInt16 UIntPtrToShort
802#define SizeTToUShort UIntPtrToUShort
803#define SizeTToUInt16 UIntPtrToUShort
804#define SizeTToWord UIntPtrToUShort
805#define SizeTToInt32 UIntPtrToInt
806#define SizeTToLongLong UIntPtrToLongLong
807#define SizeTToLong64 UIntPtrToLongLong
843__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV_CHAR(PtrdiffTToChar, ptrdiff_t, CHAR)
844__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV_UCHAR(PtrdiffTToUChar, ptrdiff_t, UCHAR)
845__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToInt8, ptrdiff_t, INT8)
846__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToUInt8, ptrdiff_t, UINT8)
847#define PtrdiffTToByte PtrdiffTToUInt8
848__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToInt16, ptrdiff_t, INT16)
849#define PtrdiffTToShort PtrdiffTToInt16
850__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToUInt16, ptrdiff_t, UINT16)
851#define PtrdiffTToUShort PtrdiffTToUInt16
852#define PtrdiffTToWord PtrdiffTToUInt16
853__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToInt32, ptrdiff_t, INT32)
854__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToUInt32, ptrdiff_t, UINT32)
855__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToLongPtr, ptrdiff_t, LONG_PTR)
856__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToULongLong, ptrdiff_t, ULONGLONG)
857__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToDWordLong, ptrdiff_t, DWORDLONG)
858__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToULong64, ptrdiff_t, ULONG64)
859__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToDWord64, ptrdiff_t, DWORD64)
860__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToUInt64, ptrdiff_t, UINT64)
861__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(PtrdiffTToSIZET, ptrdiff_t, SIZE_T)
862__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV_CHAR(SizeTToChar, size_t, CHAR)
863__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV_UCHAR(SizeTToUChar, size_t, UCHAR)
864__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToInt8, size_t, INT8)
865__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToUInt8, size_t, UINT8)
866#define SizeTToByte SizeTToUInt8
867__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToInt16, size_t, INT16)
868#define SizeTToShort SizeTToInt16
869__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToUInt16, size_t, UINT16)
870#define SizeTToUShort SizeTToUInt16
871#define SizeTToWord SizeTToUInt16
872__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToInt32, size_t, INT32)
873__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SizeTToLongLong, size_t, LONGLONG)
874#define SizeTToLong64 SizeTToLongLong
808875#define SSIZETToInt8 LongPtrToInt8
809876#define SSIZETToUChar LongPtrToUChar
810877#define SSIZETToChar LongPtrToChar
......@@ -846,7 +913,7 @@ __MINGW_INTSAFE_API __MINGW_INTSAFE_MATH(LongLongMult, LONGLONG, mul)
846913#define SIZETToLongLong ULongPtrToLongLong
847914#define SIZETToLong64 ULongPtrToLongLong
848915#define SIZETToInt64 ULongPtrToLongLong
849#define SIZETToPtrdiffT ULongPtrToIntPtr
916__MINGW_INTSAFE_API __MINGW_INTSAFE_CONV(SIZETToPtrdiffT, SIZE_T, ptrdiff_t)
850917#define SIZETToSSIZET ULongPtrToLongPtr
851918
852919#define UInt16Add UShortAdd
lib/libc/include/any-windows-any/io.h+23-51
......@@ -76,6 +76,11 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
7676 char name[260];
7777 };
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
7984#ifdef _USE_32BIT_TIME_T
8085#define _finddata_t _finddata32_t
8186#define _finddatai64_t _finddata32i64_t
......@@ -93,6 +98,7 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
9398#define _findfirsti64 _findfirst64
9499#define _findnexti64 _findnext64
95100#endif /* _USE_32BIT_TIME_T */
101#endif /* _CRTBLD */
96102
97103#define _FINDDATA_T_DEFINED
98104#endif /* _FINDDATA_T_DEFINED */
......@@ -135,14 +141,19 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
135141 wchar_t name[260];
136142 };
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
138149#ifdef _USE_32BIT_TIME_T
139150#define _wfinddata_t _wfinddata32_t
140151#define _wfinddatai64_t _wfinddata32i64_t
141152
142153#define _wfindfirst _wfindfirst32
143154#define _wfindnext _wfindnext32
144#define _wfindfirst32i64 _wfindfirsti64
145#define _wfindnext32i64 _wfindnexti64
155#define _wfindfirsti64 _wfindfirst32i64
156#define _wfindnexti64 _wfindnext32i64
146157#else
147158#define _wfinddata_t _wfinddata64i32_t
148159#define _wfinddatai64_t _wfinddata64_t
......@@ -152,6 +163,7 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
152163#define _wfindfirsti64 _wfindfirst64
153164#define _wfindnexti64 _wfindnext64
154165#endif /* _USE_32BIT_TIME_T */
166#endif /* _CRTBLD */
155167
156168#define _WFINDDATA_T_DEFINED
157169#endif /* _WFINDDATA_T_DEFINED */
......@@ -237,49 +249,10 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
237249 __MINGW_EXTENSION _CRTIMP __int64 __cdecl _filelengthi64(int _FileHandle);
238250 _CRTIMP intptr_t __cdecl _findfirst32i64(const char *_Filename,struct _finddata32i64_t *_FindData);
239251 _CRTIMP intptr_t __cdecl _findfirst64(const char *_Filename,struct __finddata64_t *_FindData);
240#ifdef __cplusplus
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 */
252 _CRTIMP intptr_t __cdecl _findfirst64i32(const char *_Filename,struct _finddata64i32_t *_FindData);
262253 _CRTIMP int __cdecl _findnext32i64(intptr_t _FindHandle,struct _finddata32i64_t *_FindData);
263254 _CRTIMP int __cdecl _findnext64(intptr_t _FindHandle,struct __finddata64_t *_FindData);
264 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 */
255 _CRTIMP int __cdecl _findnext64i32(intptr_t _FindHandle,struct _finddata64i32_t *_FindData);
283256 __MINGW_EXTENSION __int64 __cdecl _lseeki64(int _FileHandle,__int64 _Offset,int _Origin);
284257 __MINGW_EXTENSION __int64 __cdecl _telli64(int _FileHandle);
285258
......@@ -344,15 +317,21 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
344317 int __cdecl chsize(int _FileHandle,long _Size) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
345318 int __cdecl close(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
346319 int __cdecl creat(const char *_Filename,int _PermissionMode) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
320 int __cdecl creat64(const char *_Filename,int _PermissionMode);
347321 int __cdecl dup(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
348322 int __cdecl dup2(int _FileHandleSrc,int _FileHandleDst) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
349323 int __cdecl eof(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
350324 long __cdecl filelength(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
351325 int __cdecl isatty(int _FileHandle) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
352326 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;
354332 char *__cdecl mktemp(char *_TemplateName) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
355333 int __cdecl open(const char *_Filename,int _OpenFlag,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
334 int __cdecl open64(const char *_Filename,int _OpenFlag,...);
356335 int __cdecl read(int _FileHandle,void *_DstBuf,unsigned int _MaxCharCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
357336 int __cdecl setmode(int _FileHandle,int _Mode) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
358337 int __cdecl sopen(const char *_Filename,int _OpenFlag,int _ShareFlag,...) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
......@@ -361,13 +340,6 @@ _CRTIMP char* __cdecl _getcwd (char*, int);
361340 int __cdecl write(int _Filehandle,const void *_Buf,unsigned int _MaxCharCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
362341#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
371343#ifdef _POSIX
372344
373345/* Misc stuff */
lib/libc/include/any-windows-any/iwscapi.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/locale.h+11-5
......@@ -86,18 +86,24 @@ extern "C" {
8686
8787#endif
8888
89 int __cdecl _configthreadlocale(int _Flag);
90 char *__cdecl setlocale(int _Category,const char *_Locale);
89 _CRTIMP int __cdecl _configthreadlocale(int _Flag);
90 _CRTIMP char *__cdecl setlocale(int _Category,const char *_Locale);
9191 _CRTIMP struct lconv *__cdecl localeconv(void);
9292 _CRTIMP _locale_t __cdecl _get_current_locale(void);
9393 _CRTIMP _locale_t __cdecl _create_locale(int _Category,const char *_Locale);
9494 _CRTIMP void __cdecl _free_locale(_locale_t _Locale);
95 _locale_t __cdecl __get_current_locale(void);
96 _locale_t __cdecl __create_locale(int _Category,const char *_Locale);
97 void __cdecl __free_locale(_locale_t _Locale);
95 _CRTIMP _locale_t __cdecl __get_current_locale(void);
96 _CRTIMP _locale_t __cdecl __create_locale(int _Category,const char *_Locale);
97 _CRTIMP void __cdecl __free_locale(_locale_t _Locale);
9898
9999 _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
101107#ifndef _WLOCALE_DEFINED
102108#define _WLOCALE_DEFINED
103109 _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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/math.h+55-6
......@@ -168,6 +168,17 @@ extern "C" {
168168 #define __setusermatherr __mingw_setusermatherr
169169#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
171182 double __cdecl sin(double _X);
172183 double __cdecl cos(double _X);
173184 double __cdecl tan(double _X);
......@@ -484,13 +495,13 @@ __fin)))
484495#define fpclassify(x) \
485496__mingw_choose_expr ( \
486497 __mingw_types_compatible_p (__typeof__ (x), double), \
487 __fpclassify(x), \
498 __fpclassify((double)(x)), \
488499 __mingw_choose_expr ( \
489500 __mingw_types_compatible_p (__typeof__ (x), float), \
490 __fpclassifyf(x), \
501 __fpclassifyf((float)(x)), \
491502 __mingw_choose_expr ( \
492503 __mingw_types_compatible_p (__typeof__ (x), long double), \
493 __fpclassifyl(x), \
504 __fpclassifyl((long double)(x)), \
494505 __dfp_expansion(__fpclassify,(__builtin_trap(),0),x))))
495506
496507
......@@ -687,6 +698,44 @@ __mingw_choose_expr ( \
687698#endif
688699 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
690739/* Inverse hyperbolic trig functions */
691740/* 7.12.5.1 */
692741 extern double __cdecl acosh (double);
......@@ -1154,9 +1203,9 @@ _Decimal128 __cdecl atand128(_Decimal128 _X);
11541203_Decimal32 __cdecl atand32(_Decimal32 _X);
11551204
11561205/* http://h21007.www2.hp.com/portal/download/files/unprot/fp/manpages/atan2d64.3m.htm */
1157_Decimal64 __cdecl atan2d64(_Decimal64 _X, _Decimal64 _Y);
1158_Decimal128 __cdecl atan2d128(_Decimal128 _X, _Decimal128 _Y);
1159_Decimal32 __cdecl atan2d32(_Decimal32 _X, _Decimal32 _Y);
1206_Decimal64 __cdecl atan2d64(_Decimal64 _Y, _Decimal64 _X);
1207_Decimal128 __cdecl atan2d128(_Decimal128 _Y, _Decimal128 _X);
1208_Decimal32 __cdecl atan2d32(_Decimal32 _Y, _Decimal32 _X);
11601209
11611210/*** hyperbolics ***/
11621211/* 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" {
2323#define _mbcasemap (__p__mbcasemap())
2424#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
3226#define _MS 0x01
3327#define _MP 0x02
3428#define _M1 0x04
......@@ -48,22 +42,32 @@ extern "C" {
4842#define _MB_CP_OEM -2
4943#define _MB_CP_ANSI -3
5044#define _MB_CP_LOCALE -4
45#ifdef _UCRT
46#define _MB_CP_UTF8 65001
47#endif
5148
5249#ifndef _MBCTYPE_DEFINED
5350#define _MBCTYPE_DEFINED
54
51#if __MSVCRT_VERSION__ >= 0x0200
5552 _CRTIMP int __cdecl _setmbcp(int _CodePage);
5653 _CRTIMP int __cdecl _getmbcp(void);
54#endif
5755 _CRTIMP int __cdecl _ismbbkalnum(unsigned int _C);
5856 _CRTIMP int __cdecl _ismbbkalnum_l(unsigned int _C,_locale_t _Locale);
5957 _CRTIMP int __cdecl _ismbbkana(unsigned int _C);
6058 _CRTIMP int __cdecl _ismbbkana_l(unsigned int _C,_locale_t _Locale);
6159 _CRTIMP int __cdecl _ismbbkpunct(unsigned int _C);
6260 _CRTIMP int __cdecl _ismbbkpunct_l(unsigned int _C,_locale_t _Locale);
61#if __MSVCRT_VERSION__ >= 0x0200
6362 _CRTIMP int __cdecl _ismbbkprint(unsigned int _C);
6463 _CRTIMP int __cdecl _ismbbkprint_l(unsigned int _C,_locale_t _Locale);
64#endif
6565 _CRTIMP int __cdecl _ismbbalpha(unsigned int _C);
6666 _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
6771 _CRTIMP int __cdecl _ismbbpunct(unsigned int _C);
6872 _CRTIMP int __cdecl _ismbbpunct_l(unsigned int _C,_locale_t _Locale);
6973 _CRTIMP int __cdecl _ismbbalnum(unsigned int _C);
lib/libc/include/any-windows-any/mbstring.h+34-4
......@@ -16,6 +16,9 @@ extern "C" {
1616
1717#ifndef _FILE_DEFINED
1818 struct _iobuf {
19#ifdef _UCRT
20 void *_Placeholder;
21#else
1922 char *_ptr;
2023 int _cnt;
2124 char *_base;
......@@ -24,6 +27,7 @@ extern "C" {
2427 int _charbuf;
2528 int _bufsiz;
2629 char *_tmpfname;
30#endif
2731 };
2832 typedef struct _iobuf FILE;
2933#define _FILE_DEFINED
......@@ -47,46 +51,58 @@ extern "C" {
4751 _CRTIMP unsigned int __cdecl _mbctombb_l(unsigned int _Ch,_locale_t _Locale);
4852 _CRTIMP int __cdecl _mbsbtype(const unsigned char *_Str,size_t _Pos);
4953 _CRTIMP int __cdecl _mbsbtype_l(const unsigned char *_Str,size_t _Pos,_locale_t _Locale);
54#if __MSVCRT_VERSION__ < 0x0800
5055 _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
5257 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbschr(const unsigned char *_Str,unsigned int _Ch);
5358 _CRTIMP _CONST_RETURN unsigned char *__cdecl _mbschr_l(const unsigned char *_Str,unsigned int _Ch,_locale_t _Locale);
5459 _CRTIMP int __cdecl _mbscmp(const unsigned char *_Str1,const unsigned char *_Str2);
5560 _CRTIMP int __cdecl _mbscmp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
61#if __MSVCRT_VERSION__ >= 0x0200
5662 _CRTIMP int __cdecl _mbscoll(const unsigned char *_Str1,const unsigned char *_Str2);
5763 _CRTIMP int __cdecl _mbscoll_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
64#endif
65#if __MSVCRT_VERSION__ < 0x0800
5866 _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
6068 _CRTIMP size_t __cdecl _mbscspn(const unsigned char *_Str,const unsigned char *_Control);
6169 _CRTIMP size_t __cdecl _mbscspn_l(const unsigned char *_Str,const unsigned char *_Control,_locale_t _Locale);
6270 _CRTIMP unsigned char *__cdecl _mbsdec(const unsigned char *_Start,const unsigned char *_Pos);
6371 _CRTIMP unsigned char *__cdecl _mbsdec_l(const unsigned char *_Start,const unsigned char *_Pos,_locale_t _Locale);
6472 _CRTIMP int __cdecl _mbsicmp(const unsigned char *_Str1,const unsigned char *_Str2);
6573 _CRTIMP int __cdecl _mbsicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
74#if __MSVCRT_VERSION__ >= 0x0200
6675 _CRTIMP int __cdecl _mbsicoll(const unsigned char *_Str1,const unsigned char *_Str2);
6776 _CRTIMP int __cdecl _mbsicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,_locale_t _Locale);
77#endif
6878 _CRTIMP unsigned char *__cdecl _mbsinc(const unsigned char *_Ptr);
6979 _CRTIMP unsigned char *__cdecl _mbsinc_l(const unsigned char *_Ptr,_locale_t _Locale);
7080 _CRTIMP size_t __cdecl _mbslen(const unsigned char *_Str);
7181 _CRTIMP size_t __cdecl _mbslen_l(const unsigned char *_Str,_locale_t _Locale);
82#if __MSVCRT_VERSION__ >= 0x0800
7283 _CRTIMP size_t __cdecl _mbsnlen(const unsigned char *_Str,size_t _MaxCount);
7384 _CRTIMP size_t __cdecl _mbsnlen_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
85#endif
7486 _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);
7688 _CRTIMP unsigned char *__cdecl _mbsnbcat(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
7789 _CRTIMP unsigned char *__cdecl _mbsnbcat_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
7890 _CRTIMP int __cdecl _mbsnbcmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
7991 _CRTIMP int __cdecl _mbsnbcmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
92#if __MSVCRT_VERSION__ >= 0x0200
8093 _CRTIMP int __cdecl _mbsnbcoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
8194 _CRTIMP int __cdecl _mbsnbcoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
95#endif
8296 _CRTIMP size_t __cdecl _mbsnbcnt(const unsigned char *_Str,size_t _MaxCount);
8397 _CRTIMP size_t __cdecl _mbsnbcnt_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
8498 _CRTIMP unsigned char *__cdecl _mbsnbcpy(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
8599 _CRTIMP unsigned char *__cdecl _mbsnbcpy_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
86100 _CRTIMP int __cdecl _mbsnbicmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
87101 _CRTIMP int __cdecl _mbsnbicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
102#if __MSVCRT_VERSION__ >= 0x0200
88103 _CRTIMP int __cdecl _mbsnbicoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
89104 _CRTIMP int __cdecl _mbsnbicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
105#endif
90106 _CRTIMP unsigned char *__cdecl _mbsnbset(unsigned char *_Str,unsigned int _Ch,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
91107 _CRTIMP unsigned char *__cdecl _mbsnbset_l(unsigned char *_Str,unsigned int _Ch,size_t _MaxCount,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
92108 _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" {
95111 _CRTIMP size_t __cdecl _mbsnccnt_l(const unsigned char *_Str,size_t _MaxCount,_locale_t _Locale);
96112 _CRTIMP int __cdecl _mbsncmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
97113 _CRTIMP int __cdecl _mbsncmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
114#if __MSVCRT_VERSION__ >= 0x0200
98115 _CRTIMP int __cdecl _mbsncoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
99116 _CRTIMP int __cdecl _mbsncoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
117#endif
100118 _CRTIMP unsigned char *__cdecl _mbsncpy(unsigned char *_Dest,const unsigned char *_Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
101119 _CRTIMP unsigned char *__cdecl _mbsncpy_l(unsigned char *_Dest,const unsigned char *_Source,size_t _Count,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
102120 _CRTIMP unsigned int __cdecl _mbsnextc (const unsigned char *_Str);
103121 _CRTIMP unsigned int __cdecl _mbsnextc_l(const unsigned char *_Str,_locale_t _Locale);
104122 _CRTIMP int __cdecl _mbsnicmp(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
105123 _CRTIMP int __cdecl _mbsnicmp_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
124#if __MSVCRT_VERSION__ >= 0x0200
106125 _CRTIMP int __cdecl _mbsnicoll(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount);
107126 _CRTIMP int __cdecl _mbsnicoll_l(const unsigned char *_Str1,const unsigned char *_Str2,size_t _MaxCount,_locale_t _Locale);
127#endif
108128 _CRTIMP unsigned char *__cdecl _mbsninc(const unsigned char *_Str,size_t _Count);
109129 _CRTIMP unsigned char *__cdecl _mbsninc_l(const unsigned char *_Str,size_t _Count,_locale_t _Locale);
110130 _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" {
126146 _CRTIMP unsigned char *__cdecl _mbstok(unsigned char *_Str,const unsigned char *_Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
127147 _CRTIMP unsigned char *__cdecl _mbstok_l(unsigned char *_Str,const unsigned char *_Delim,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
128148 _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;
130150 _CRTIMP size_t __cdecl _mbclen(const unsigned char *_Str);
131151 _CRTIMP size_t __cdecl _mbclen_l(const unsigned char *_Str,_locale_t _Locale);
132152 _CRTIMP void __cdecl _mbccpy(unsigned char *_Dst,const unsigned char *_Src) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
......@@ -149,22 +169,32 @@ extern "C" {
149169#endif
150170#endif
151171
172#if __MSVCRT_VERSION__ >= 0x0200
152173 _CRTIMP int __cdecl _ismbcalnum(unsigned int _Ch);
153174 _CRTIMP int __cdecl _ismbcalnum_l(unsigned int _Ch,_locale_t _Locale);
175#endif
154176 _CRTIMP int __cdecl _ismbcalpha(unsigned int _Ch);
155177 _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
156182 _CRTIMP int __cdecl _ismbcdigit(unsigned int _Ch);
157183 _CRTIMP int __cdecl _ismbcdigit_l(unsigned int _Ch,_locale_t _Locale);
184#if __MSVCRT_VERSION__ >= 0x0200
158185 _CRTIMP int __cdecl _ismbcgraph(unsigned int _Ch);
159186 _CRTIMP int __cdecl _ismbcgraph_l(unsigned int _Ch,_locale_t _Locale);
187#endif
160188 _CRTIMP int __cdecl _ismbclegal(unsigned int _Ch);
161189 _CRTIMP int __cdecl _ismbclegal_l(unsigned int _Ch,_locale_t _Locale);
162190 _CRTIMP int __cdecl _ismbclower(unsigned int _Ch);
163191 _CRTIMP int __cdecl _ismbclower_l(unsigned int _Ch,_locale_t _Locale);
164192 _CRTIMP int __cdecl _ismbcprint(unsigned int _Ch);
165193 _CRTIMP int __cdecl _ismbcprint_l(unsigned int _Ch,_locale_t _Locale);
194#if __MSVCRT_VERSION__ >= 0x0200
166195 _CRTIMP int __cdecl _ismbcpunct(unsigned int _Ch);
167196 _CRTIMP int __cdecl _ismbcpunct_l(unsigned int _Ch,_locale_t _Locale);
197#endif
168198 _CRTIMP int __cdecl _ismbcspace(unsigned int _Ch);
169199 _CRTIMP int __cdecl _ismbcspace_l(unsigned int _Ch,_locale_t _Locale);
170200 _CRTIMP int __cdecl _ismbcupper(unsigned int _Ch);
lib/libc/include/any-windows-any/mediaobj.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/medparam.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/memory.h+1-41
......@@ -6,46 +6,6 @@
66#ifndef _INC_MEMORY
77#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
5111#endif
lib/libc/include/any-windows-any/mfcaptureengine.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfd3d12.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfidl.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfmediacapture.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfmediaengine.h+1581-149
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -66,6 +66,46 @@ interface IMFMediaEngineClassFactory;
6666#endif /* __cplusplus */
6767#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
69109#ifndef __IMFMediaEngineNotify_FWD_DEFINED__
70110#define __IMFMediaEngineNotify_FWD_DEFINED__
71111typedef interface IMFMediaEngineNotify IMFMediaEngineNotify;
......@@ -90,6 +130,54 @@ interface IMFMediaEngineExtension;
90130#endif /* __cplusplus */
91131#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
93181/* Headers for imported files */
94182
95183#include <mfidl.h>
......@@ -2062,77 +2150,92 @@ static inline HRESULT IMFMediaEngineClassFactory_CreateError(IMFMediaEngineClass
20622150#endif /* __IMFMediaEngineClassFactory_INTERFACE_DEFINED__ */
20632151
20642152/*****************************************************************************
2065 * IMFMediaEngineNotify interface
2153 * IMFMediaSourceExtensionNotify interface
20662154 */
2067#ifndef __IMFMediaEngineNotify_INTERFACE_DEFINED__
2068#define __IMFMediaEngineNotify_INTERFACE_DEFINED__
2155#ifndef __IMFMediaSourceExtensionNotify_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);
20712159#if defined(__cplusplus) && !defined(CINTERFACE)
2072MIDL_INTERFACE("fee7c112-e776-42b5-9bbf-0048524e2bd5")
2073IMFMediaEngineNotify : public IUnknown
2160MIDL_INTERFACE("a7901327-05dd-4469-a7b7-0e01979e361d")
2161IMFMediaSourceExtensionNotify : public IUnknown
20742162{
2075 virtual HRESULT STDMETHODCALLTYPE EventNotify(
2076 DWORD event,
2077 DWORD_PTR param1,
2078 DWORD param2) = 0;
2163 virtual void STDMETHODCALLTYPE OnSourceOpen(
2164 ) = 0;
2165
2166 virtual void STDMETHODCALLTYPE OnSourceEnded(
2167 ) = 0;
2168
2169 virtual void STDMETHODCALLTYPE OnSourceClose(
2170 ) = 0;
20792171
20802172};
20812173#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)
20832175#endif
20842176#else
2085typedef struct IMFMediaEngineNotifyVtbl {
2177typedef struct IMFMediaSourceExtensionNotifyVtbl {
20862178 BEGIN_INTERFACE
20872179
20882180 /*** IUnknown methods ***/
20892181 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2090 IMFMediaEngineNotify *This,
2182 IMFMediaSourceExtensionNotify *This,
20912183 REFIID riid,
20922184 void **ppvObject);
20932185
20942186 ULONG (STDMETHODCALLTYPE *AddRef)(
2095 IMFMediaEngineNotify *This);
2187 IMFMediaSourceExtensionNotify *This);
20962188
20972189 ULONG (STDMETHODCALLTYPE *Release)(
2098 IMFMediaEngineNotify *This);
2190 IMFMediaSourceExtensionNotify *This);
20992191
2100 /*** IMFMediaEngineNotify methods ***/
2101 HRESULT (STDMETHODCALLTYPE *EventNotify)(
2102 IMFMediaEngineNotify *This,
2103 DWORD event,
2104 DWORD_PTR param1,
2105 DWORD param2);
2192 /*** IMFMediaSourceExtensionNotify methods ***/
2193 void (STDMETHODCALLTYPE *OnSourceOpen)(
2194 IMFMediaSourceExtensionNotify *This);
2195
2196 void (STDMETHODCALLTYPE *OnSourceEnded)(
2197 IMFMediaSourceExtensionNotify *This);
2198
2199 void (STDMETHODCALLTYPE *OnSourceClose)(
2200 IMFMediaSourceExtensionNotify *This);
21062201
21072202 END_INTERFACE
2108} IMFMediaEngineNotifyVtbl;
2203} IMFMediaSourceExtensionNotifyVtbl;
21092204
2110interface IMFMediaEngineNotify {
2111 CONST_VTBL IMFMediaEngineNotifyVtbl* lpVtbl;
2205interface IMFMediaSourceExtensionNotify {
2206 CONST_VTBL IMFMediaSourceExtensionNotifyVtbl* lpVtbl;
21122207};
21132208
21142209#ifdef COBJMACROS
21152210#ifndef WIDL_C_INLINE_WRAPPERS
21162211/*** IUnknown methods ***/
2117#define IMFMediaEngineNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2118#define IMFMediaEngineNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
2119#define IMFMediaEngineNotify_Release(This) (This)->lpVtbl->Release(This)
2120/*** IMFMediaEngineNotify methods ***/
2121#define IMFMediaEngineNotify_EventNotify(This,event,param1,param2) (This)->lpVtbl->EventNotify(This,event,param1,param2)
2212#define IMFMediaSourceExtensionNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2213#define IMFMediaSourceExtensionNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
2214#define IMFMediaSourceExtensionNotify_Release(This) (This)->lpVtbl->Release(This)
2215/*** IMFMediaSourceExtensionNotify methods ***/
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)
21222219#else
21232220/*** IUnknown methods ***/
2124static inline HRESULT IMFMediaEngineNotify_QueryInterface(IMFMediaEngineNotify* This,REFIID riid,void **ppvObject) {
2221static inline HRESULT IMFMediaSourceExtensionNotify_QueryInterface(IMFMediaSourceExtensionNotify* This,REFIID riid,void **ppvObject) {
21252222 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
21262223}
2127static inline ULONG IMFMediaEngineNotify_AddRef(IMFMediaEngineNotify* This) {
2224static inline ULONG IMFMediaSourceExtensionNotify_AddRef(IMFMediaSourceExtensionNotify* This) {
21282225 return This->lpVtbl->AddRef(This);
21292226}
2130static inline ULONG IMFMediaEngineNotify_Release(IMFMediaEngineNotify* This) {
2227static inline ULONG IMFMediaSourceExtensionNotify_Release(IMFMediaSourceExtensionNotify* This) {
21312228 return This->lpVtbl->Release(This);
21322229}
2133/*** IMFMediaEngineNotify methods ***/
2134static inline HRESULT IMFMediaEngineNotify_EventNotify(IMFMediaEngineNotify* This,DWORD event,DWORD_PTR param1,DWORD param2) {
2135 return This->lpVtbl->EventNotify(This,event,param1,param2);
2230/*** IMFMediaSourceExtensionNotify methods ***/
2231static inline void IMFMediaSourceExtensionNotify_OnSourceOpen(IMFMediaSourceExtensionNotify* This) {
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);
21362239}
21372240#endif
21382241#endif
......@@ -2140,87 +2243,116 @@ static inline HRESULT IMFMediaEngineNotify_EventNotify(IMFMediaEngineNotify* Thi
21402243#endif
21412244
21422245
2143#endif /* __IMFMediaEngineNotify_INTERFACE_DEFINED__ */
2246#endif /* __IMFMediaSourceExtensionNotify_INTERFACE_DEFINED__ */
21442247
21452248/*****************************************************************************
2146 * IMFMediaEngineAudioEndpointId interface
2249 * IMFSourceBufferNotify interface
21472250 */
2148#ifndef __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__
2149#define __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__
2251#ifndef __IMFSourceBufferNotify_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);
21522255#if defined(__cplusplus) && !defined(CINTERFACE)
2153MIDL_INTERFACE("7a3bac98-0e76-49fb-8c20-8a86fd98eaf2")
2154IMFMediaEngineAudioEndpointId : public IUnknown
2256MIDL_INTERFACE("87e47623-2ceb-45d6-9b88-d8520c4dcbbc")
2257IMFSourceBufferNotify : public IUnknown
21552258{
2156 virtual HRESULT STDMETHODCALLTYPE SetAudioEndpointId(
2157 LPCWSTR id) = 0;
2259 virtual void STDMETHODCALLTYPE OnUpdateStart(
2260 ) = 0;
21582261
2159 virtual HRESULT STDMETHODCALLTYPE GetAudioEndpointId(
2160 LPWSTR *id) = 0;
2262 virtual void STDMETHODCALLTYPE OnAbort(
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
21622274};
21632275#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)
21652277#endif
21662278#else
2167typedef struct IMFMediaEngineAudioEndpointIdVtbl {
2279typedef struct IMFSourceBufferNotifyVtbl {
21682280 BEGIN_INTERFACE
21692281
21702282 /*** IUnknown methods ***/
21712283 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2172 IMFMediaEngineAudioEndpointId *This,
2284 IMFSourceBufferNotify *This,
21732285 REFIID riid,
21742286 void **ppvObject);
21752287
21762288 ULONG (STDMETHODCALLTYPE *AddRef)(
2177 IMFMediaEngineAudioEndpointId *This);
2289 IMFSourceBufferNotify *This);
21782290
21792291 ULONG (STDMETHODCALLTYPE *Release)(
2180 IMFMediaEngineAudioEndpointId *This);
2292 IMFSourceBufferNotify *This);
21812293
2182 /*** IMFMediaEngineAudioEndpointId methods ***/
2183 HRESULT (STDMETHODCALLTYPE *SetAudioEndpointId)(
2184 IMFMediaEngineAudioEndpointId *This,
2185 LPCWSTR id);
2294 /*** IMFSourceBufferNotify methods ***/
2295 void (STDMETHODCALLTYPE *OnUpdateStart)(
2296 IMFSourceBufferNotify *This);
21862297
2187 HRESULT (STDMETHODCALLTYPE *GetAudioEndpointId)(
2188 IMFMediaEngineAudioEndpointId *This,
2189 LPWSTR *id);
2298 void (STDMETHODCALLTYPE *OnAbort)(
2299 IMFSourceBufferNotify *This);
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
21912311 END_INTERFACE
2192} IMFMediaEngineAudioEndpointIdVtbl;
2312} IMFSourceBufferNotifyVtbl;
21932313
2194interface IMFMediaEngineAudioEndpointId {
2195 CONST_VTBL IMFMediaEngineAudioEndpointIdVtbl* lpVtbl;
2314interface IMFSourceBufferNotify {
2315 CONST_VTBL IMFSourceBufferNotifyVtbl* lpVtbl;
21962316};
21972317
21982318#ifdef COBJMACROS
21992319#ifndef WIDL_C_INLINE_WRAPPERS
22002320/*** IUnknown methods ***/
2201#define IMFMediaEngineAudioEndpointId_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2202#define IMFMediaEngineAudioEndpointId_AddRef(This) (This)->lpVtbl->AddRef(This)
2203#define IMFMediaEngineAudioEndpointId_Release(This) (This)->lpVtbl->Release(This)
2204/*** IMFMediaEngineAudioEndpointId methods ***/
2205#define IMFMediaEngineAudioEndpointId_SetAudioEndpointId(This,id) (This)->lpVtbl->SetAudioEndpointId(This,id)
2206#define IMFMediaEngineAudioEndpointId_GetAudioEndpointId(This,id) (This)->lpVtbl->GetAudioEndpointId(This,id)
2321#define IMFSourceBufferNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2322#define IMFSourceBufferNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
2323#define IMFSourceBufferNotify_Release(This) (This)->lpVtbl->Release(This)
2324/*** IMFSourceBufferNotify methods ***/
2325#define IMFSourceBufferNotify_OnUpdateStart(This) (This)->lpVtbl->OnUpdateStart(This)
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)
22072330#else
22082331/*** IUnknown methods ***/
2209static inline HRESULT IMFMediaEngineAudioEndpointId_QueryInterface(IMFMediaEngineAudioEndpointId* This,REFIID riid,void **ppvObject) {
2332static inline HRESULT IMFSourceBufferNotify_QueryInterface(IMFSourceBufferNotify* This,REFIID riid,void **ppvObject) {
22102333 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
22112334}
2212static inline ULONG IMFMediaEngineAudioEndpointId_AddRef(IMFMediaEngineAudioEndpointId* This) {
2335static inline ULONG IMFSourceBufferNotify_AddRef(IMFSourceBufferNotify* This) {
22132336 return This->lpVtbl->AddRef(This);
22142337}
2215static inline ULONG IMFMediaEngineAudioEndpointId_Release(IMFMediaEngineAudioEndpointId* This) {
2338static inline ULONG IMFSourceBufferNotify_Release(IMFSourceBufferNotify* This) {
22162339 return This->lpVtbl->Release(This);
22172340}
2218/*** IMFMediaEngineAudioEndpointId methods ***/
2219static inline HRESULT IMFMediaEngineAudioEndpointId_SetAudioEndpointId(IMFMediaEngineAudioEndpointId* This,LPCWSTR id) {
2220 return This->lpVtbl->SetAudioEndpointId(This,id);
2341/*** IMFSourceBufferNotify methods ***/
2342static inline void IMFSourceBufferNotify_OnUpdateStart(IMFSourceBufferNotify* This) {
2343 This->lpVtbl->OnUpdateStart(This);
22212344}
2222static inline HRESULT IMFMediaEngineAudioEndpointId_GetAudioEndpointId(IMFMediaEngineAudioEndpointId* This,LPWSTR *id) {
2223 return This->lpVtbl->GetAudioEndpointId(This,id);
2345static inline void IMFSourceBufferNotify_OnAbort(IMFSourceBufferNotify* This) {
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);
22242356}
22252357#endif
22262358#endif
......@@ -2228,125 +2360,198 @@ static inline HRESULT IMFMediaEngineAudioEndpointId_GetAudioEndpointId(IMFMediaE
22282360#endif
22292361
22302362
2231#endif /* __IMFMediaEngineAudioEndpointId_INTERFACE_DEFINED__ */
2363#endif /* __IMFSourceBufferNotify_INTERFACE_DEFINED__ */
22322364
22332365/*****************************************************************************
2234 * IMFMediaEngineExtension interface
2366 * IMFSourceBuffer interface
22352367 */
2236#ifndef __IMFMediaEngineExtension_INTERFACE_DEFINED__
2237#define __IMFMediaEngineExtension_INTERFACE_DEFINED__
2368#ifndef __IMFSourceBuffer_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);
22402372#if defined(__cplusplus) && !defined(CINTERFACE)
2241MIDL_INTERFACE("2f69d622-20b5-41e9-afdf-89ced1dda04e")
2242IMFMediaEngineExtension : public IUnknown
2373MIDL_INTERFACE("e2cd3a4b-af25-4d3d-9110-da0e6f8ee877")
2374IMFSourceBuffer : public IUnknown
22432375{
2244 virtual HRESULT STDMETHODCALLTYPE CanPlayType(
2245 WINBOOL audio_only,
2246 BSTR mime_type,
2247 MF_MEDIA_ENGINE_CANPLAY *answer) = 0;
2376 virtual WINBOOL STDMETHODCALLTYPE GetUpdating(
2377 ) = 0;
22482378
2249 virtual HRESULT STDMETHODCALLTYPE BeginCreateObject(
2250 BSTR url,
2251 IMFByteStream *bytestream,
2252 MF_OBJECT_TYPE type,
2253 IUnknown **cancel_cookie,
2254 IMFAsyncCallback *callback,
2255 IUnknown *state) = 0;
2379 virtual HRESULT STDMETHODCALLTYPE GetBuffered(
2380 IMFMediaTimeRange **buffered) = 0;
22562381
2257 virtual HRESULT STDMETHODCALLTYPE CancelObjectCreation(
2258 IUnknown *cancel_cookie) = 0;
2382 virtual double STDMETHODCALLTYPE GetTimeStampOffset(
2383 ) = 0;
22592384
2260 virtual HRESULT STDMETHODCALLTYPE EndCreateObject(
2261 IMFAsyncResult *result,
2262 IUnknown **object) = 0;
2385 virtual HRESULT STDMETHODCALLTYPE SetTimeStampOffset(
2386 double offset) = 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
22642415};
22652416#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)
22672418#endif
22682419#else
2269typedef struct IMFMediaEngineExtensionVtbl {
2420typedef struct IMFSourceBufferVtbl {
22702421 BEGIN_INTERFACE
22712422
22722423 /*** IUnknown methods ***/
22732424 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2274 IMFMediaEngineExtension *This,
2425 IMFSourceBuffer *This,
22752426 REFIID riid,
22762427 void **ppvObject);
22772428
22782429 ULONG (STDMETHODCALLTYPE *AddRef)(
2279 IMFMediaEngineExtension *This);
2430 IMFSourceBuffer *This);
22802431
22812432 ULONG (STDMETHODCALLTYPE *Release)(
2282 IMFMediaEngineExtension *This);
2433 IMFSourceBuffer *This);
22832434
2284 /*** IMFMediaEngineExtension methods ***/
2285 HRESULT (STDMETHODCALLTYPE *CanPlayType)(
2286 IMFMediaEngineExtension *This,
2287 WINBOOL audio_only,
2288 BSTR mime_type,
2289 MF_MEDIA_ENGINE_CANPLAY *answer);
2435 /*** IMFSourceBuffer methods ***/
2436 WINBOOL (STDMETHODCALLTYPE *GetUpdating)(
2437 IMFSourceBuffer *This);
22902438
2291 HRESULT (STDMETHODCALLTYPE *BeginCreateObject)(
2292 IMFMediaEngineExtension *This,
2293 BSTR url,
2294 IMFByteStream *bytestream,
2295 MF_OBJECT_TYPE type,
2296 IUnknown **cancel_cookie,
2297 IMFAsyncCallback *callback,
2298 IUnknown *state);
2439 HRESULT (STDMETHODCALLTYPE *GetBuffered)(
2440 IMFSourceBuffer *This,
2441 IMFMediaTimeRange **buffered);
22992442
2300 HRESULT (STDMETHODCALLTYPE *CancelObjectCreation)(
2301 IMFMediaEngineExtension *This,
2302 IUnknown *cancel_cookie);
2443 double (STDMETHODCALLTYPE *GetTimeStampOffset)(
2444 IMFSourceBuffer *This);
23032445
2304 HRESULT (STDMETHODCALLTYPE *EndCreateObject)(
2305 IMFMediaEngineExtension *This,
2306 IMFAsyncResult *result,
2307 IUnknown **object);
2446 HRESULT (STDMETHODCALLTYPE *SetTimeStampOffset)(
2447 IMFSourceBuffer *This,
2448 double offset);
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
23092482 END_INTERFACE
2310} IMFMediaEngineExtensionVtbl;
2483} IMFSourceBufferVtbl;
23112484
2312interface IMFMediaEngineExtension {
2313 CONST_VTBL IMFMediaEngineExtensionVtbl* lpVtbl;
2485interface IMFSourceBuffer {
2486 CONST_VTBL IMFSourceBufferVtbl* lpVtbl;
23142487};
23152488
23162489#ifdef COBJMACROS
23172490#ifndef WIDL_C_INLINE_WRAPPERS
23182491/*** IUnknown methods ***/
2319#define IMFMediaEngineExtension_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2320#define IMFMediaEngineExtension_AddRef(This) (This)->lpVtbl->AddRef(This)
2321#define IMFMediaEngineExtension_Release(This) (This)->lpVtbl->Release(This)
2322/*** IMFMediaEngineExtension methods ***/
2323#define IMFMediaEngineExtension_CanPlayType(This,audio_only,mime_type,answer) (This)->lpVtbl->CanPlayType(This,audio_only,mime_type,answer)
2324#define IMFMediaEngineExtension_BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state) (This)->lpVtbl->BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state)
2325#define IMFMediaEngineExtension_CancelObjectCreation(This,cancel_cookie) (This)->lpVtbl->CancelObjectCreation(This,cancel_cookie)
2326#define IMFMediaEngineExtension_EndCreateObject(This,result,object) (This)->lpVtbl->EndCreateObject(This,result,object)
2492#define IMFSourceBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2493#define IMFSourceBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
2494#define IMFSourceBuffer_Release(This) (This)->lpVtbl->Release(This)
2495/*** IMFSourceBuffer methods ***/
2496#define IMFSourceBuffer_GetUpdating(This) (This)->lpVtbl->GetUpdating(This)
2497#define IMFSourceBuffer_GetBuffered(This,buffered) (This)->lpVtbl->GetBuffered(This,buffered)
2498#define IMFSourceBuffer_GetTimeStampOffset(This) (This)->lpVtbl->GetTimeStampOffset(This)
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)
23272508#else
23282509/*** IUnknown methods ***/
2329static inline HRESULT IMFMediaEngineExtension_QueryInterface(IMFMediaEngineExtension* This,REFIID riid,void **ppvObject) {
2510static inline HRESULT IMFSourceBuffer_QueryInterface(IMFSourceBuffer* This,REFIID riid,void **ppvObject) {
23302511 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
23312512}
2332static inline ULONG IMFMediaEngineExtension_AddRef(IMFMediaEngineExtension* This) {
2513static inline ULONG IMFSourceBuffer_AddRef(IMFSourceBuffer* This) {
23332514 return This->lpVtbl->AddRef(This);
23342515}
2335static inline ULONG IMFMediaEngineExtension_Release(IMFMediaEngineExtension* This) {
2516static inline ULONG IMFSourceBuffer_Release(IMFSourceBuffer* This) {
23362517 return This->lpVtbl->Release(This);
23372518}
2338/*** IMFMediaEngineExtension methods ***/
2339static inline HRESULT IMFMediaEngineExtension_CanPlayType(IMFMediaEngineExtension* This,WINBOOL audio_only,BSTR mime_type,MF_MEDIA_ENGINE_CANPLAY *answer) {
2340 return This->lpVtbl->CanPlayType(This,audio_only,mime_type,answer);
2519/*** IMFSourceBuffer methods ***/
2520static inline WINBOOL IMFSourceBuffer_GetUpdating(IMFSourceBuffer* This) {
2521 return This->lpVtbl->GetUpdating(This);
23412522}
2342static inline HRESULT IMFMediaEngineExtension_BeginCreateObject(IMFMediaEngineExtension* This,BSTR url,IMFByteStream *bytestream,MF_OBJECT_TYPE type,IUnknown **cancel_cookie,IMFAsyncCallback *callback,IUnknown *state) {
2343 return This->lpVtbl->BeginCreateObject(This,url,bytestream,type,cancel_cookie,callback,state);
2523static inline HRESULT IMFSourceBuffer_GetBuffered(IMFSourceBuffer* This,IMFMediaTimeRange **buffered) {
2524 return This->lpVtbl->GetBuffered(This,buffered);
23442525}
2345static inline HRESULT IMFMediaEngineExtension_CancelObjectCreation(IMFMediaEngineExtension* This,IUnknown *cancel_cookie) {
2346 return This->lpVtbl->CancelObjectCreation(This,cancel_cookie);
2526static inline double IMFSourceBuffer_GetTimeStampOffset(IMFSourceBuffer* This) {
2527 return This->lpVtbl->GetTimeStampOffset(This);
23472528}
2348static inline HRESULT IMFMediaEngineExtension_EndCreateObject(IMFMediaEngineExtension* This,IMFAsyncResult *result,IUnknown **object) {
2349 return This->lpVtbl->EndCreateObject(This,result,object);
2529static inline HRESULT IMFSourceBuffer_SetTimeStampOffset(IMFSourceBuffer* This,double offset) {
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);
23502555}
23512556#endif
23522557#endif
......@@ -2354,7 +2559,1234 @@ static inline HRESULT IMFMediaEngineExtension_EndCreateObject(IMFMediaEngineExte
23542559#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
23593791/* Begin additional prototypes for all interfaces */
23603792
lib/libc/include/any-windows-any/mfobjects.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfplay.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mfreadwrite.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mftransform.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mmdeviceapi.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mmstream.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mpeg2data.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mpeg2structs.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mscoree.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/msctf.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mshtmhst.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mshtml.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/msinkaut.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/msinkaut_i.c+1-1
......@@ -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
33#include <rpc.h>
44#include <rpcndr.h>
lib/libc/include/any-windows-any/msopc.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/mswsock.h+18
......@@ -36,6 +36,7 @@ extern "C" {
3636#define TCP_BSDURGENT 0x7000
3737
3838#define SIO_UDP_CONNRESET _WSAIOW(IOC_VENDOR,12)
39#define SIO_UDP_NETRESET _WSAIOW(IOC_VENDOR,15)
3940#if (_WIN32_WINNT < 0x0600) && (_WIN32_WINNT >= 0x0501)
4041#define SIO_SOCKET_CLOSE_NOTIFY _WSAIOW(IOC_VENDOR,13)
4142#endif /* >= XP && < VISTA */
......@@ -167,12 +168,20 @@ extern "C" {
167168 } data;
168169 } NLA_BLOB,*PNLA_BLOB,*LPNLA_BLOB;
169170
171#if (_WIN32_WINNT >= 0x0600)
172#define _WSACMSGHDR cmsghdr
173#endif
174
170175 typedef struct _WSACMSGHDR {
171176 SIZE_T cmsg_len;
172177 INT cmsg_level;
173178 INT cmsg_type;
174179 } WSACMSGHDR,*PWSACMSGHDR,*LPWSACMSGHDR;
175180
181#if (_WIN32_WINNT >= 0x0600)
182typedef WSACMSGHDR CMSGHDR, *PCMSGHDR;
183#endif
184
176185#define WSA_CMSGHDR_ALIGN(length) (((length) + TYPE_ALIGNMENT(WSACMSGHDR)-1) & (~(TYPE_ALIGNMENT(WSACMSGHDR)-1)))
177186#define WSA_CMSGDATA_ALIGN(length) (((length) + MAX_NATURAL_ALIGNMENT-1) & (~(MAX_NATURAL_ALIGNMENT-1)))
178187#define WSA_CMSG_FIRSTHDR(msg) (((msg)->Control.len >= sizeof(WSACMSGHDR)) ? (LPWSACMSGHDR)(msg)->Control.buf : (LPWSACMSGHDR)NULL)
......@@ -181,6 +190,15 @@ extern "C" {
181190#define WSA_CMSG_SPACE(length) (WSA_CMSGDATA_ALIGN(sizeof(WSACMSGHDR) + WSA_CMSGHDR_ALIGN(length)))
182191#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
184202#define MSG_TRUNC 0x0100
185203#define MSG_CTRUNC 0x0200
186204#define MSG_BCAST 0x0400
lib/libc/include/any-windows-any/msxml.h+6-6
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -9211,7 +9211,7 @@ IXMLDocument : public IDispatch
92119211 virtual HRESULT STDMETHODCALLTYPE get_doctype(
92129212 BSTR *p) = 0;
92139213
9214 virtual HRESULT STDMETHODCALLTYPE get_dtdURl(
9214 virtual HRESULT STDMETHODCALLTYPE get_dtdURL(
92159215 BSTR *p) = 0;
92169216
92179217 virtual HRESULT STDMETHODCALLTYPE createElement(
......@@ -9318,7 +9318,7 @@ typedef struct IXMLDocumentVtbl {
93189318 IXMLDocument *This,
93199319 BSTR *p);
93209320
9321 HRESULT (STDMETHODCALLTYPE *get_dtdURl)(
9321 HRESULT (STDMETHODCALLTYPE *get_dtdURL)(
93229322 IXMLDocument *This,
93239323 BSTR *p);
93249324
......@@ -9359,7 +9359,7 @@ interface IXMLDocument {
93599359#define IXMLDocument_put_charset(This,p) (This)->lpVtbl->put_charset(This,p)
93609360#define IXMLDocument_get_version(This,p) (This)->lpVtbl->get_version(This,p)
93619361#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)
93639363#define IXMLDocument_createElement(This,vType,var1,ppElem) (This)->lpVtbl->createElement(This,vType,var1,ppElem)
93649364#else
93659365/*** IUnknown methods ***/
......@@ -9422,8 +9422,8 @@ static inline HRESULT IXMLDocument_get_version(IXMLDocument* This,BSTR *p) {
94229422static inline HRESULT IXMLDocument_get_doctype(IXMLDocument* This,BSTR *p) {
94239423 return This->lpVtbl->get_doctype(This,p);
94249424}
9425static inline HRESULT IXMLDocument_get_dtdURl(IXMLDocument* This,BSTR *p) {
9426 return This->lpVtbl->get_dtdURl(This,p);
9425static inline HRESULT IXMLDocument_get_dtdURL(IXMLDocument* This,BSTR *p) {
9426 return This->lpVtbl->get_dtdURL(This,p);
94279427}
94289428static inline HRESULT IXMLDocument_createElement(IXMLDocument* This,VARIANT vType,VARIANT var1,IXMLElement **ppElem) {
94299429 return This->lpVtbl->createElement(This,vType,var1,ppElem);
lib/libc/include/any-windows-any/msxml2.h+1-199
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -370,15 +370,6 @@ typedef struct FreeThreadedDOMDocument40 FreeThreadedDOMDocument40;
370370#endif /* defined __cplusplus */
371371#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
382373#ifndef __FreeThreadedDOMDocument_FWD_DEFINED__
383374#define __FreeThreadedDOMDocument_FWD_DEFINED__
384375#ifdef __cplusplus
......@@ -415,15 +406,6 @@ typedef struct XMLHTTP40 XMLHTTP40;
415406#endif /* defined __cplusplus */
416407#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
427409#ifndef __XMLHTTP_FWD_DEFINED__
428410#define __XMLHTTP_FWD_DEFINED__
429411#ifdef __cplusplus
......@@ -451,15 +433,6 @@ typedef struct ServerXMLHTTP40 ServerXMLHTTP40;
451433#endif /* defined __cplusplus */
452434#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
463436#ifndef __ServerXMLHTTP_FWD_DEFINED__
464437#define __ServerXMLHTTP_FWD_DEFINED__
465438#ifdef __cplusplus
......@@ -532,15 +505,6 @@ typedef struct XSLTemplate40 XSLTemplate40;
532505#endif /* defined __cplusplus */
533506#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
544508#ifndef __XSLTemplate_FWD_DEFINED__
545509#define __XSLTemplate_FWD_DEFINED__
546510#ifdef __cplusplus
......@@ -904,15 +868,6 @@ typedef struct SAXXMLReader40 SAXXMLReader40;
904868#endif /* defined __cplusplus */
905869#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
916871#ifndef __SAXXMLReader_FWD_DEFINED__
917872#define __SAXXMLReader_FWD_DEFINED__
918873#ifdef __cplusplus
......@@ -949,15 +904,6 @@ typedef struct MXHTMLWriter40 MXHTMLWriter40;
949904#endif /* defined __cplusplus */
950905#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
961907#ifndef __MXXMLWriter30_FWD_DEFINED__
962908#define __MXXMLWriter30_FWD_DEFINED__
963909#ifdef __cplusplus
......@@ -976,15 +922,6 @@ typedef struct MXXMLWriter40 MXXMLWriter40;
976922#endif /* defined __cplusplus */
977923#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
988925#ifndef __MXXMLWriter_FWD_DEFINED__
989926#define __MXXMLWriter_FWD_DEFINED__
990927#ifdef __cplusplus
......@@ -1012,15 +949,6 @@ typedef struct MXNamespaceManager40 MXNamespaceManager40;
1012949#endif /* defined __cplusplus */
1013950#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
1024952#ifndef __SAXAttributes30_FWD_DEFINED__
1025953#define __SAXAttributes30_FWD_DEFINED__
1026954#ifdef __cplusplus
......@@ -1039,15 +967,6 @@ typedef struct SAXAttributes40 SAXAttributes40;
1039967#endif /* defined __cplusplus */
1040968#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
1051970#ifndef __SAXAttributes_FWD_DEFINED__
1052971#define __SAXAttributes_FWD_DEFINED__
1053972#ifdef __cplusplus
......@@ -14665,19 +14584,6 @@ __CRT_UUID_DECL(FreeThreadedDOMDocument40, 0x88d969c1, 0xf192, 0x11d4, 0xa6,0x5f
1466514584#endif
1466614585#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
1468114587/*****************************************************************************
1468214588 * FreeThreadedDOMDocument coclass
1468314589 */
......@@ -14730,19 +14636,6 @@ __CRT_UUID_DECL(XMLHTTP40, 0x88d969c5, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,0x96
1473014636#endif
1473114637#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
1474614639/*****************************************************************************
1474714640 * XMLHTTP coclass
1474814641 */
......@@ -14782,19 +14675,6 @@ __CRT_UUID_DECL(ServerXMLHTTP40, 0x88d969c6, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x4
1478214675#endif
1478314676#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
1479814678/*****************************************************************************
1479914679 * ServerXMLHTTP coclass
1480014680 */
......@@ -14899,19 +14779,6 @@ __CRT_UUID_DECL(XSLTemplate40, 0x88d969c3, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,
1489914779#endif
1490014780#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
1491514782/*****************************************************************************
1491614783 * XSLTemplate coclass
1491714784 */
......@@ -23605,19 +23472,6 @@ __CRT_UUID_DECL(SAXXMLReader40, 0x7c6e29bc, 0x8b8b, 0x4c3d, 0x85,0x9e, 0xaf,0x6c
2360523472#endif
2360623473#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
2362123475/*****************************************************************************
2362223476 * SAXXMLReader coclass
2362323477 */
......@@ -23670,19 +23524,6 @@ __CRT_UUID_DECL(MXHTMLWriter40, 0x88d969c9, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40
2367023524#endif
2367123525#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
2368623527/*****************************************************************************
2368723528 * MXXMLWriter30 coclass
2368823529 */
......@@ -23709,19 +23550,6 @@ __CRT_UUID_DECL(MXXMLWriter40, 0x88d969c8, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x40,
2370923550#endif
2371023551#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
2372523553/*****************************************************************************
2372623554 * MXXMLWriter coclass
2372723555 */
......@@ -23761,19 +23589,6 @@ __CRT_UUID_DECL(MXNamespaceManager40, 0x88d969d6, 0xf192, 0x11d4, 0xa6,0x5f, 0x0
2376123589#endif
2376223590#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
2377723592/*****************************************************************************
2377823593 * SAXAttributes30 coclass
2377923594 */
......@@ -23800,19 +23615,6 @@ __CRT_UUID_DECL(SAXAttributes40, 0x88d969ca, 0xf192, 0x11d4, 0xa6,0x5f, 0x00,0x4
2380023615#endif
2380123616#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
2381623618/*****************************************************************************
2381723619 * SAXAttributes coclass
2381823620 */
lib/libc/include/any-windows-any/msxml6.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napcertrelyingparty.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napcommon.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napenforcementclient.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napmanagement.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napprotocol.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napservermanagement.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napsystemhealthagent.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/napsystemhealthvalidator.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/naptypes.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/netcfgn.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/netcfgx.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/netfw.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/netlistmgr.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/new.h+2
......@@ -13,6 +13,7 @@
1313#include <crtdefs.h>
1414#pragma push_macro("new")
1515#undef new
16extern "C" {
1617#endif
1718
1819#ifndef __NOTHROW_T_DEFINED
......@@ -41,6 +42,7 @@ _CRTIMP _PNH __cdecl _set_new_handler(_PNH _NewHandler);
4142#endif
4243
4344#ifdef __cplusplus
45}
4446#pragma pop_macro("new")
4547#endif
4648
lib/libc/include/any-windows-any/oaidl.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/objectarray.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/objidl.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/objidlbase.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/ocidl.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/oleacc.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/oleidl.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/optary.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/pathcch.h+5
......@@ -3,6 +3,9 @@
33 * No warranty is given; refer to the file DISCLAIMER within this package.
44 */
55
6#ifndef __PATHCCH_H__
7#define __PATHCCH_H__
8
69#include <apiset.h>
710#include <apisetcconv.h>
811#include <minwindef.h>
......@@ -135,3 +138,5 @@ DEFINE_ENUM_FLAG_OPERATORS(PATHCCH_OPTIONS)
135138}
136139#endif
137140#endif
141
142#endif
lib/libc/include/any-windows-any/pdhmsg.h+86-86
......@@ -11,91 +11,91 @@
1111#define STATUS_SEVERITY_INFORMATIONAL 0x1
1212#define STATUS_SEVERITY_ERROR 0x3
1313
14#define PDH_CSTATUS_VALID_DATA ((DWORD)0x00000000)
15#define PDH_CSTATUS_NEW_DATA ((DWORD)0x00000001)
16#define PDH_CSTATUS_NO_MACHINE ((DWORD)0x800007D0)
17#define PDH_CSTATUS_NO_INSTANCE ((DWORD)0x800007D1)
18#define PDH_MORE_DATA ((DWORD)0x800007D2)
19#define PDH_CSTATUS_ITEM_NOT_VALIDATED ((DWORD)0x800007D3)
20#define PDH_RETRY ((DWORD)0x800007D4)
21#define PDH_NO_DATA ((DWORD)0x800007D5)
22#define PDH_CALC_NEGATIVE_DENOMINATOR ((DWORD)0x800007D6)
23#define PDH_CALC_NEGATIVE_TIMEBASE ((DWORD)0x800007D7)
24#define PDH_CALC_NEGATIVE_VALUE ((DWORD)0x800007D8)
25#define PDH_DIALOG_CANCELLED ((DWORD)0x800007D9)
26#define PDH_END_OF_LOG_FILE ((DWORD)0x800007DA)
27#define PDH_ASYNC_QUERY_TIMEOUT ((DWORD)0x800007DB)
28#define PDH_CANNOT_SET_DEFAULT_REALTIME_DATASOURCE ((DWORD)0x800007DC)
29#define PDH_CSTATUS_NO_OBJECT ((DWORD)0xC0000BB8)
30#define PDH_CSTATUS_NO_COUNTER ((DWORD)0xC0000BB9)
31#define PDH_CSTATUS_INVALID_DATA ((DWORD)0xC0000BBA)
32#define PDH_MEMORY_ALLOCATION_FAILURE ((DWORD)0xC0000BBB)
33#define PDH_INVALID_HANDLE ((DWORD)0xC0000BBC)
34#define PDH_INVALID_ARGUMENT ((DWORD)0xC0000BBD)
35#define PDH_FUNCTION_NOT_FOUND ((DWORD)0xC0000BBE)
36#define PDH_CSTATUS_NO_COUNTERNAME ((DWORD)0xC0000BBF)
37#define PDH_CSTATUS_BAD_COUNTERNAME ((DWORD)0xC0000BC0)
38#define PDH_INVALID_BUFFER ((DWORD)0xC0000BC1)
39#define PDH_INSUFFICIENT_BUFFER ((DWORD)0xC0000BC2)
40#define PDH_CANNOT_CONNECT_MACHINE ((DWORD)0xC0000BC3)
41#define PDH_INVALID_PATH ((DWORD)0xC0000BC4)
42#define PDH_INVALID_INSTANCE ((DWORD)0xC0000BC5)
43#define PDH_INVALID_DATA ((DWORD)0xC0000BC6)
44#define PDH_NO_DIALOG_DATA ((DWORD)0xC0000BC7)
45#define PDH_CANNOT_READ_NAME_STRINGS ((DWORD)0xC0000BC8)
46#define PDH_LOG_FILE_CREATE_ERROR ((DWORD)0xC0000BC9)
47#define PDH_LOG_FILE_OPEN_ERROR ((DWORD)0xC0000BCA)
48#define PDH_LOG_TYPE_NOT_FOUND ((DWORD)0xC0000BCB)
49#define PDH_NO_MORE_DATA ((DWORD)0xC0000BCC)
50#define PDH_ENTRY_NOT_IN_LOG_FILE ((DWORD)0xC0000BCD)
51#define PDH_DATA_SOURCE_IS_LOG_FILE ((DWORD)0xC0000BCE)
52#define PDH_DATA_SOURCE_IS_REAL_TIME ((DWORD)0xC0000BCF)
53#define PDH_UNABLE_READ_LOG_HEADER ((DWORD)0xC0000BD0)
54#define PDH_FILE_NOT_FOUND ((DWORD)0xC0000BD1)
55#define PDH_FILE_ALREADY_EXISTS ((DWORD)0xC0000BD2)
56#define PDH_NOT_IMPLEMENTED ((DWORD)0xC0000BD3)
57#define PDH_STRING_NOT_FOUND ((DWORD)0xC0000BD4)
58#define PDH_UNABLE_MAP_NAME_FILES ((DWORD)0x80000BD5)
59#define PDH_UNKNOWN_LOG_FORMAT ((DWORD)0xC0000BD6)
60#define PDH_UNKNOWN_LOGSVC_COMMAND ((DWORD)0xC0000BD7)
61#define PDH_LOGSVC_QUERY_NOT_FOUND ((DWORD)0xC0000BD8)
62#define PDH_LOGSVC_NOT_OPENED ((DWORD)0xC0000BD9)
63#define PDH_WBEM_ERROR ((DWORD)0xC0000BDA)
64#define PDH_ACCESS_DENIED ((DWORD)0xC0000BDB)
65#define PDH_LOG_FILE_TOO_SMALL ((DWORD)0xC0000BDC)
66#define PDH_INVALID_DATASOURCE ((DWORD)0xC0000BDD)
67#define PDH_INVALID_SQLDB ((DWORD)0xC0000BDE)
68#define PDH_NO_COUNTERS ((DWORD)0xC0000BDF)
69#define PDH_SQL_ALLOC_FAILED ((DWORD)0xC0000BE0)
70#define PDH_SQL_ALLOCCON_FAILED ((DWORD)0xC0000BE1)
71#define PDH_SQL_EXEC_DIRECT_FAILED ((DWORD)0xC0000BE2)
72#define PDH_SQL_FETCH_FAILED ((DWORD)0xC0000BE3)
73#define PDH_SQL_ROWCOUNT_FAILED ((DWORD)0xC0000BE4)
74#define PDH_SQL_MORE_RESULTS_FAILED ((DWORD)0xC0000BE5)
75#define PDH_SQL_CONNECT_FAILED ((DWORD)0xC0000BE6)
76#define PDH_SQL_BIND_FAILED ((DWORD)0xC0000BE7)
77#define PDH_CANNOT_CONNECT_WMI_SERVER ((DWORD)0xC0000BE8)
78#define PDH_PLA_COLLECTION_ALREADY_RUNNING ((DWORD)0xC0000BE9)
79#define PDH_PLA_ERROR_SCHEDULE_OVERLAP ((DWORD)0xC0000BEA)
80#define PDH_PLA_COLLECTION_NOT_FOUND ((DWORD)0xC0000BEB)
81#define PDH_PLA_ERROR_SCHEDULE_ELAPSED ((DWORD)0xC0000BEC)
82#define PDH_PLA_ERROR_NOSTART ((DWORD)0xC0000BED)
83#define PDH_PLA_ERROR_ALREADY_EXISTS ((DWORD)0xC0000BEE)
84#define PDH_PLA_ERROR_TYPE_MISMATCH ((DWORD)0xC0000BEF)
85#define PDH_PLA_ERROR_FILEPATH ((DWORD)0xC0000BF0)
86#define PDH_PLA_SERVICE_ERROR ((DWORD)0xC0000BF1)
87#define PDH_PLA_VALIDATION_ERROR ((DWORD)0xC0000BF2)
88#define PDH_PLA_VALIDATION_WARNING ((DWORD)0x80000BF3)
89#define PDH_PLA_ERROR_NAME_TOO_LONG ((DWORD)0xC0000BF4)
90#define PDH_INVALID_SQL_LOG_FORMAT ((DWORD)0xC0000BF5)
91#define PDH_COUNTER_ALREADY_IN_QUERY ((DWORD)0xC0000BF6)
92#define PDH_BINARY_LOG_CORRUPT ((DWORD)0xC0000BF7)
93#define PDH_LOG_SAMPLE_TOO_SMALL ((DWORD)0xC0000BF8)
94#define PDH_OS_LATER_VERSION ((DWORD)0xC0000BF9)
95#define PDH_OS_EARLIER_VERSION ((DWORD)0xC0000BFA)
96#define PDH_INCORRECT_APPEND_TIME ((DWORD)0xC0000BFB)
97#define PDH_UNMATCHED_APPEND_COUNTER ((DWORD)0xC0000BFC)
98#define PDH_SQL_ALTER_DETAIL_FAILED ((DWORD)0xC0000BFD)
99#define PDH_QUERY_PERF_DATA_TIMEOUT ((DWORD)0xC0000BFE)
14#define PDH_CSTATUS_VALID_DATA __MSABI_LONG(0x00000000)
15#define PDH_CSTATUS_NEW_DATA __MSABI_LONG(0x00000001)
16#define PDH_CSTATUS_NO_MACHINE __MSABI_LONG(0x800007D0)
17#define PDH_CSTATUS_NO_INSTANCE __MSABI_LONG(0x800007D1)
18#define PDH_MORE_DATA __MSABI_LONG(0x800007D2)
19#define PDH_CSTATUS_ITEM_NOT_VALIDATED __MSABI_LONG(0x800007D3)
20#define PDH_RETRY __MSABI_LONG(0x800007D4)
21#define PDH_NO_DATA __MSABI_LONG(0x800007D5)
22#define PDH_CALC_NEGATIVE_DENOMINATOR __MSABI_LONG(0x800007D6)
23#define PDH_CALC_NEGATIVE_TIMEBASE __MSABI_LONG(0x800007D7)
24#define PDH_CALC_NEGATIVE_VALUE __MSABI_LONG(0x800007D8)
25#define PDH_DIALOG_CANCELLED __MSABI_LONG(0x800007D9)
26#define PDH_END_OF_LOG_FILE __MSABI_LONG(0x800007DA)
27#define PDH_ASYNC_QUERY_TIMEOUT __MSABI_LONG(0x800007DB)
28#define PDH_CANNOT_SET_DEFAULT_REALTIME_DATASOURCE __MSABI_LONG(0x800007DC)
29#define PDH_CSTATUS_NO_OBJECT __MSABI_LONG(0xC0000BB8)
30#define PDH_CSTATUS_NO_COUNTER __MSABI_LONG(0xC0000BB9)
31#define PDH_CSTATUS_INVALID_DATA __MSABI_LONG(0xC0000BBA)
32#define PDH_MEMORY_ALLOCATION_FAILURE __MSABI_LONG(0xC0000BBB)
33#define PDH_INVALID_HANDLE __MSABI_LONG(0xC0000BBC)
34#define PDH_INVALID_ARGUMENT __MSABI_LONG(0xC0000BBD)
35#define PDH_FUNCTION_NOT_FOUND __MSABI_LONG(0xC0000BBE)
36#define PDH_CSTATUS_NO_COUNTERNAME __MSABI_LONG(0xC0000BBF)
37#define PDH_CSTATUS_BAD_COUNTERNAME __MSABI_LONG(0xC0000BC0)
38#define PDH_INVALID_BUFFER __MSABI_LONG(0xC0000BC1)
39#define PDH_INSUFFICIENT_BUFFER __MSABI_LONG(0xC0000BC2)
40#define PDH_CANNOT_CONNECT_MACHINE __MSABI_LONG(0xC0000BC3)
41#define PDH_INVALID_PATH __MSABI_LONG(0xC0000BC4)
42#define PDH_INVALID_INSTANCE __MSABI_LONG(0xC0000BC5)
43#define PDH_INVALID_DATA __MSABI_LONG(0xC0000BC6)
44#define PDH_NO_DIALOG_DATA __MSABI_LONG(0xC0000BC7)
45#define PDH_CANNOT_READ_NAME_STRINGS __MSABI_LONG(0xC0000BC8)
46#define PDH_LOG_FILE_CREATE_ERROR __MSABI_LONG(0xC0000BC9)
47#define PDH_LOG_FILE_OPEN_ERROR __MSABI_LONG(0xC0000BCA)
48#define PDH_LOG_TYPE_NOT_FOUND __MSABI_LONG(0xC0000BCB)
49#define PDH_NO_MORE_DATA __MSABI_LONG(0xC0000BCC)
50#define PDH_ENTRY_NOT_IN_LOG_FILE __MSABI_LONG(0xC0000BCD)
51#define PDH_DATA_SOURCE_IS_LOG_FILE __MSABI_LONG(0xC0000BCE)
52#define PDH_DATA_SOURCE_IS_REAL_TIME __MSABI_LONG(0xC0000BCF)
53#define PDH_UNABLE_READ_LOG_HEADER __MSABI_LONG(0xC0000BD0)
54#define PDH_FILE_NOT_FOUND __MSABI_LONG(0xC0000BD1)
55#define PDH_FILE_ALREADY_EXISTS __MSABI_LONG(0xC0000BD2)
56#define PDH_NOT_IMPLEMENTED __MSABI_LONG(0xC0000BD3)
57#define PDH_STRING_NOT_FOUND __MSABI_LONG(0xC0000BD4)
58#define PDH_UNABLE_MAP_NAME_FILES __MSABI_LONG(0x80000BD5)
59#define PDH_UNKNOWN_LOG_FORMAT __MSABI_LONG(0xC0000BD6)
60#define PDH_UNKNOWN_LOGSVC_COMMAND __MSABI_LONG(0xC0000BD7)
61#define PDH_LOGSVC_QUERY_NOT_FOUND __MSABI_LONG(0xC0000BD8)
62#define PDH_LOGSVC_NOT_OPENED __MSABI_LONG(0xC0000BD9)
63#define PDH_WBEM_ERROR __MSABI_LONG(0xC0000BDA)
64#define PDH_ACCESS_DENIED __MSABI_LONG(0xC0000BDB)
65#define PDH_LOG_FILE_TOO_SMALL __MSABI_LONG(0xC0000BDC)
66#define PDH_INVALID_DATASOURCE __MSABI_LONG(0xC0000BDD)
67#define PDH_INVALID_SQLDB __MSABI_LONG(0xC0000BDE)
68#define PDH_NO_COUNTERS __MSABI_LONG(0xC0000BDF)
69#define PDH_SQL_ALLOC_FAILED __MSABI_LONG(0xC0000BE0)
70#define PDH_SQL_ALLOCCON_FAILED __MSABI_LONG(0xC0000BE1)
71#define PDH_SQL_EXEC_DIRECT_FAILED __MSABI_LONG(0xC0000BE2)
72#define PDH_SQL_FETCH_FAILED __MSABI_LONG(0xC0000BE3)
73#define PDH_SQL_ROWCOUNT_FAILED __MSABI_LONG(0xC0000BE4)
74#define PDH_SQL_MORE_RESULTS_FAILED __MSABI_LONG(0xC0000BE5)
75#define PDH_SQL_CONNECT_FAILED __MSABI_LONG(0xC0000BE6)
76#define PDH_SQL_BIND_FAILED __MSABI_LONG(0xC0000BE7)
77#define PDH_CANNOT_CONNECT_WMI_SERVER __MSABI_LONG(0xC0000BE8)
78#define PDH_PLA_COLLECTION_ALREADY_RUNNING __MSABI_LONG(0xC0000BE9)
79#define PDH_PLA_ERROR_SCHEDULE_OVERLAP __MSABI_LONG(0xC0000BEA)
80#define PDH_PLA_COLLECTION_NOT_FOUND __MSABI_LONG(0xC0000BEB)
81#define PDH_PLA_ERROR_SCHEDULE_ELAPSED __MSABI_LONG(0xC0000BEC)
82#define PDH_PLA_ERROR_NOSTART __MSABI_LONG(0xC0000BED)
83#define PDH_PLA_ERROR_ALREADY_EXISTS __MSABI_LONG(0xC0000BEE)
84#define PDH_PLA_ERROR_TYPE_MISMATCH __MSABI_LONG(0xC0000BEF)
85#define PDH_PLA_ERROR_FILEPATH __MSABI_LONG(0xC0000BF0)
86#define PDH_PLA_SERVICE_ERROR __MSABI_LONG(0xC0000BF1)
87#define PDH_PLA_VALIDATION_ERROR __MSABI_LONG(0xC0000BF2)
88#define PDH_PLA_VALIDATION_WARNING __MSABI_LONG(0x80000BF3)
89#define PDH_PLA_ERROR_NAME_TOO_LONG __MSABI_LONG(0xC0000BF4)
90#define PDH_INVALID_SQL_LOG_FORMAT __MSABI_LONG(0xC0000BF5)
91#define PDH_COUNTER_ALREADY_IN_QUERY __MSABI_LONG(0xC0000BF6)
92#define PDH_BINARY_LOG_CORRUPT __MSABI_LONG(0xC0000BF7)
93#define PDH_LOG_SAMPLE_TOO_SMALL __MSABI_LONG(0xC0000BF8)
94#define PDH_OS_LATER_VERSION __MSABI_LONG(0xC0000BF9)
95#define PDH_OS_EARLIER_VERSION __MSABI_LONG(0xC0000BFA)
96#define PDH_INCORRECT_APPEND_TIME __MSABI_LONG(0xC0000BFB)
97#define PDH_UNMATCHED_APPEND_COUNTER __MSABI_LONG(0xC0000BFC)
98#define PDH_SQL_ALTER_DETAIL_FAILED __MSABI_LONG(0xC0000BFD)
99#define PDH_QUERY_PERF_DATA_TIMEOUT __MSABI_LONG(0xC0000BFE)
100100
101101#endif
lib/libc/include/any-windows-any/portabledeviceapi.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/portabledevicetypes.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/proofofpossessioncookieinfo.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/propidl.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/propsys.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/propvarutil.h+11-1
......@@ -78,6 +78,14 @@ enum tagPROPVAR_COMPARE_FLAGS
7878
7979typedef int PROPVAR_COMPARE_FLAGS;
8080
81enum tagPSTIME_FLAGS
82{
83 PSTF_UTC = 0x00000000,
84 PSTF_LOCAL = 0x00000001,
85};
86
87typedef int PSTIME_FLAGS;
88
8189PSSTDAPI PropVariantChangeType(PROPVARIANT *ppropvarDest, REFPROPVARIANT propvarSrc,
8290 PROPVAR_CHANGE_FLAGS flags, VARTYPE vt);
8391PSSTDAPI InitPropVariantFromGUIDAsString(REFGUID guid, PROPVARIANT *ppropvar);
......@@ -86,7 +94,6 @@ PSSTDAPI InitVariantFromGUIDAsString(REFGUID guid, VARIANT *pvar);
8694PSSTDAPI InitPropVariantFromBuffer(const VOID *pv, UINT cb, PROPVARIANT *ppropvar);
8795PSSTDAPI InitPropVariantFromCLSID(REFCLSID clsid, PROPVARIANT *ppropvar);
8896PSSTDAPI InitVariantFromBuffer(const VOID *pv, UINT cb, VARIANT *pvar);
89PSSTDAPI PropVariantToGUID(const PROPVARIANT *ppropvar, GUID *guid);
9097PSSTDAPI VariantToGUID(const VARIANT *pvar, GUID *guid);
9198PSSTDAPI_(INT) PropVariantCompareEx(REFPROPVARIANT propvar1, REFPROPVARIANT propvar2,
9299 PROPVAR_COMPARE_UNIT uint, PROPVAR_COMPARE_FLAGS flags);
......@@ -94,11 +101,14 @@ PSSTDAPI InitPropVariantFromFileTime(const FILETIME *pftIn, PROPVARIANT *ppropva
94101PSSTDAPI InitPropVariantFromStringVector(PCWSTR *strs, ULONG count, PROPVARIANT *ppropvar);
95102
96103PSSTDAPI PropVariantToDouble(REFPROPVARIANT propvarIn, double *ret);
104PSSTDAPI PropVariantToFileTime(REFPROPVARIANT propvar, PSTIME_FLAGS flags, FILETIME *out);
105PSSTDAPI PropVariantToGUID(REFPROPVARIANT ppropvar, GUID *guid);
97106PSSTDAPI PropVariantToInt16(REFPROPVARIANT propvarIn, SHORT *ret);
98107PSSTDAPI PropVariantToInt32(REFPROPVARIANT propvarIn, LONG *ret);
99108PSSTDAPI PropVariantToInt64(REFPROPVARIANT propvarIn, LONGLONG *ret);
100109PSSTDAPI PropVariantToUInt16(REFPROPVARIANT propvarIn, USHORT *ret);
101110PSSTDAPI PropVariantToUInt32(REFPROPVARIANT propvarIn, ULONG *ret);
111PSSTDAPI PropVariantToUInt32Vector(REFPROPVARIANT propvar, ULONG *buffer, ULONG size, ULONG *count);
102112PSSTDAPI_(ULONG) PropVariantToUInt32WithDefault(REFPROPVARIANT propvarIn, ULONG uLDefault);
103113PSSTDAPI PropVariantToUInt64(REFPROPVARIANT propvarIn, ULONGLONG *ret);
104114PSSTDAPI 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);
612612 DWORD Flags;
613613 } 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
615626#define DSLFLAG_MISMATCHED_PDB 0x1
616627#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)
230230
231231#define __buildreadseg(x, y, z, a) y x(unsigned __LONG32 Offset) { \
232232 y ret; \
233 __asm__ ("mov{" a " %%" z ":(%[offset]), %[ret] | %[ret], " z ":[%[offset]] }" \
233 __asm__ ("mov{" a " %%" z ":%a[offset], %[ret] | %[ret], " z ":[%[offset]] }" \
234234 : [ret] "=r" (ret) \
235 : [offset] "r" (Offset) \
235 : [offset] "ir" (Offset) \
236236 : "memory"); \
237237 return ret; \
238238}
......@@ -248,9 +248,9 @@ Parameters: (FunctionName, DataType, Segment)
248248 */
249249
250250#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] }" \
252252 : \
253 : [offset] "r" (Offset), [Data] "r" (Data) \
253 : [offset] "ir" (Offset), [Data] "r" (Data) \
254254 : "memory"); \
255255}
256256
......@@ -1664,12 +1664,44 @@ short _InterlockedCompareExchange16(short volatile *Destination, short ExChange,
16641664#define __INTRINSIC_DEFINED__InterlockedCompareExchange16
16651665#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
16671695#if __INTRINSIC_PROLOG(_InterlockedExchangeAdd)
16681696__LONG32 _InterlockedExchangeAdd(__LONG32 volatile *Addend, __LONG32 Value);
16691697#if !__has_builtin(_InterlockedExchangeAdd)
16701698__INTRINSICS_USEINLINE
16711699__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
16721703 return __sync_fetch_and_add(Addend, Value);
1704#endif
16731705}
16741706#endif
16751707#define __INTRINSIC_DEFINED__InterlockedExchangeAdd
......@@ -1680,7 +1712,11 @@ __LONG32 _InterlockedCompareExchange(__LONG32 volatile *Destination, __LONG32 Ex
16801712#if !__has_builtin(_InterlockedCompareExchange)
16811713__INTRINSICS_USEINLINE
16821714__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
16831718 return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
1719#endif
16841720}
16851721#endif
16861722#define __INTRINSIC_DEFINED__InterlockedCompareExchange
......@@ -1691,7 +1727,11 @@ __LONG32 _InterlockedIncrement(__LONG32 volatile *Addend);
16911727#if !__has_builtin(_InterlockedIncrement)
16921728__INTRINSICS_USEINLINE
16931729__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
16941733 return __sync_add_and_fetch(Addend, 1);
1734#endif
16951735}
16961736#endif
16971737#define __INTRINSIC_DEFINED__InterlockedIncrement
......@@ -1702,7 +1742,11 @@ __LONG32 _InterlockedDecrement(__LONG32 volatile *Addend);
17021742#if !__has_builtin(_InterlockedDecrement)
17031743__INTRINSICS_USEINLINE
17041744__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
17051748 return __sync_sub_and_fetch(Addend, 1);
1749#endif
17061750}
17071751#endif
17081752#define __INTRINSIC_DEFINED__InterlockedDecrement
......@@ -1735,7 +1779,11 @@ __LONG32 _InterlockedExchange(__LONG32 volatile *Target, __LONG32 Value);
17351779#if !__has_builtin(_InterlockedExchange)
17361780__INTRINSICS_USEINLINE
17371781__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
17381785 return __sync_lock_test_and_set(Target, Value);
1786#endif
17391787}
17401788#endif
17411789#define __INTRINSIC_DEFINED__InterlockedExchange
......@@ -1757,7 +1805,14 @@ void *_InterlockedCompareExchangePointer(void * volatile *Destination, void *ExC
17571805#if !__has_builtin(_InterlockedCompareExchangePointer)
17581806__INTRINSICS_USEINLINE
17591807void *_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
17601814 return __sync_val_compare_and_swap(Destination, Comperand, ExChange);
1815#endif
17611816}
17621817#endif
17631818#define __INTRINSIC_DEFINED__InterlockedCompareExchangePointer
......@@ -1768,7 +1823,13 @@ void *_InterlockedExchangePointer(void *volatile *Target,void *Value);
17681823#if !__has_builtin(_InterlockedExchangePointer)
17691824__INTRINSICS_USEINLINE
17701825void *_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
17711831 return __sync_lock_test_and_set(Target, Value);
1832#endif
17721833}
17731834#endif
17741835#define __INTRINSIC_DEFINED__InterlockedExchangePointer
lib/libc/include/any-windows-any/pthread_compat.h+76-20
......@@ -60,24 +60,31 @@
6060#ifndef WIN_PTHREADS_PTHREAD_COMPAT_H
6161#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)
6474#define WINPTHREADS_TIME_BITS 32
6575#else
6676#define WINPTHREADS_TIME_BITS 64
6777#endif
6878
69#if defined(IN_WINPTHREAD)
70# if defined(DLL_EXPORT)
71# define WINPTHREAD_API __declspec(dllexport) /* building the DLL */
72# else
73# define WINPTHREAD_API /* building the static library */
74# endif
75#else
76# if defined(WINPTHREADS_USE_DLLIMPORT)
77# define WINPTHREAD_API __declspec(dllimport) /* user wants explicit `dllimport` */
78# else
79# define WINPTHREAD_API /* the default; auto imported in case of DLL */
80# endif
79#ifndef WINPTHREAD_API
80 /**
81 * Allow `WINPTHREAD_STATIC` to override `WINPTHREADS_USE_DLLIMPORT`.
82 */
83# if defined(WINPTHREADS_USE_DLLIMPORT) && !defined(WINPTHREAD_STATIC)
84# define WINPTHREAD_API __declspec(dllimport)
85# else
86# define WINPTHREAD_API
87# endif
8188#endif
8289
8390#ifndef __clockid_t_defined
......@@ -110,9 +117,24 @@ typedef unsigned short mode_t;
110117
111118#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 */
113127#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
114132typedef __int64 pid_t;
115133#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
116138typedef int pid_t;
117139#endif
118140
......@@ -124,25 +146,59 @@ typedef int pid_t;
124146#endif
125147
126148#ifndef WINPTHREAD_CLOCK_DECL
127#define WINPTHREAD_CLOCK_DECL static WINPTHREADS_ALWAYS_INLINE
149# ifdef __cplusplus
150# define WINPTHREAD_CLOCK_DECL WINPTHREADS_ALWAYS_INLINE
151# else
152# define WINPTHREAD_CLOCK_DECL static WINPTHREADS_ALWAYS_INLINE
153# endif
128154#endif
155
129156#ifndef WINPTHREAD_COND_DECL
130#define WINPTHREAD_COND_DECL static WINPTHREADS_ALWAYS_INLINE
157# ifdef __cplusplus
158# define WINPTHREAD_COND_DECL WINPTHREADS_ALWAYS_INLINE
159# else
160# define WINPTHREAD_COND_DECL static WINPTHREADS_ALWAYS_INLINE
161# endif
131162#endif
163
132164#ifndef WINPTHREAD_MUTEX_DECL
133#define WINPTHREAD_MUTEX_DECL static WINPTHREADS_ALWAYS_INLINE
165# ifdef __cplusplus
166# define WINPTHREAD_MUTEX_DECL WINPTHREADS_ALWAYS_INLINE
167# else
168# define WINPTHREAD_MUTEX_DECL static WINPTHREADS_ALWAYS_INLINE
169# endif
134170#endif
171
135172#ifndef WINPTHREAD_NANOSLEEP_DECL
136#define WINPTHREAD_NANOSLEEP_DECL static WINPTHREADS_ALWAYS_INLINE
173# ifdef __cplusplus
174# define WINPTHREAD_NANOSLEEP_DECL WINPTHREADS_ALWAYS_INLINE
175# else
176# define WINPTHREAD_NANOSLEEP_DECL static WINPTHREADS_ALWAYS_INLINE
177# endif
137178#endif
179
138180#ifndef WINPTHREAD_RWLOCK_DECL
139#define WINPTHREAD_RWLOCK_DECL static WINPTHREADS_ALWAYS_INLINE
181# ifdef __cplusplus
182# define WINPTHREAD_RWLOCK_DECL WINPTHREADS_ALWAYS_INLINE
183# else
184# define WINPTHREAD_RWLOCK_DECL static WINPTHREADS_ALWAYS_INLINE
185# endif
140186#endif
187
141188#ifndef WINPTHREAD_SEM_DECL
142#define WINPTHREAD_SEM_DECL static WINPTHREADS_ALWAYS_INLINE
189# ifdef __cplusplus
190# define WINPTHREAD_SEM_DECL WINPTHREADS_ALWAYS_INLINE
191# else
192# define WINPTHREAD_SEM_DECL static WINPTHREADS_ALWAYS_INLINE
193# endif
143194#endif
195
144196#ifndef WINPTHREAD_THREAD_DECL
145#define WINPTHREAD_THREAD_DECL static WINPTHREADS_ALWAYS_INLINE
197# ifdef __cplusplus
198# define WINPTHREAD_THREAD_DECL WINPTHREADS_ALWAYS_INLINE
199# else
200# define WINPTHREAD_THREAD_DECL static WINPTHREADS_ALWAYS_INLINE
201# endif
146202#endif
147203
148204#endif
lib/libc/include/any-windows-any/qedit.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/qnetwork.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/rdpencomapi.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/regbag.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/relogger.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/robuffer.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/rtworkq.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sal.h+1
......@@ -570,6 +570,7 @@
570570#define __deref_opt_out_bcount(x)
571571#define __deref_out
572572#define __deref_out_ecount(size)
573#define __deref_out_ecount_full(size)
573574#define __deref_out_opt
574575
575576#define __range(x,y)
lib/libc/include/any-windows-any/sapi51.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sapi53.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sapi54.h+1-1
......@@ -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
33#ifdef _WIN32
44#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 @@
2222extern "C" {
2323#endif
2424
25/**
26 * Functions to read/write strings from/to console.
27 */
28
2529 _SECIMP errno_t __cdecl _cgets_s (char *_Buffer,size_t _Size,size_t *_SizeRead);
2630 __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
2836 _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);
3237 _SECIMP int __cdecl _cprintf_s_l (const char *_Format,_locale_t _Locale,...);
38 _SECIMP int __cdecl _vcprintf_s (const char *_Format,va_list _ArgList);
3339 _SECIMP int __cdecl _vcprintf_s_l (const char *_Format,_locale_t _Locale,va_list _ArgList);
34
35#ifndef _WCONIO_S_DEFINED
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
40 _CRTIMP int __cdecl _cscanf_s(const char *_Format,...);
41 _CRTIMP int __cdecl _cscanf_s_l(const char *_Format,_locale_t _Locale,...);
4742
4843#ifdef __cplusplus
4944}
lib/libc/include/any-windows-any/sec_api/wchar_s.h-11
......@@ -27,17 +27,6 @@ extern "C" {
2727 _SECIMP errno_t __cdecl _wmktemp_s (wchar_t *_TemplateName,size_t _SizeInWords);
2828#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
4130#ifndef _WSTDIO_S_DEFINED
4231#define _WSTDIO_S_DEFINED
4332 _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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/servprov.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/setjmp.h+61-45
......@@ -26,7 +26,7 @@
2626extern "C" {
2727#endif
2828
29#if (defined(_X86_) && !defined(__x86_64))
29#if defined(__i386__)
3030
3131#define _JBLEN 16
3232#define _JBTYPE int
......@@ -40,6 +40,7 @@ extern "C" {
4040 unsigned long Eip;
4141 unsigned long Registration;
4242 unsigned long TryLevel;
43 /* Following fields are only for new _setjmp3(), the are not for old _setjmp(). */
4344 unsigned long Cookie;
4445 unsigned long UnwindFunc;
4546 unsigned long UnwindData[6];
......@@ -107,7 +108,7 @@ extern "C" {
107108
108109 } _JUMP_BUFFER;
109110
110#elif defined(__x86_64)
111#elif defined(__x86_64__)
111112
112113 typedef _CRT_ALIGN(16) struct _SETJMP_FLOAT128 {
113114 __MINGW_EXTENSION unsigned __int64 Part[2];
......@@ -202,68 +203,83 @@ extern "C" {
202203#define _JMP_BUF_DEFINED
203204#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
207226void * __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
209240#pragma push_macro("__has_builtin")
210241#ifndef __has_builtin
211242 #define __has_builtin(x) 0
212243#endif
213244
214#ifdef _UCRT
215# ifdef _WIN64
216# define _setjmp __intrinsic_setjmpex
245#ifdef setjmp
246# undef setjmp
247#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))
217253# else
218# define _setjmp __intrinsic_setjmp
254# define setjmp(BUF) _setjmp((BUF), NULL)
219255# endif
220#elif defined(__aarch64__)
221 /* ARM64 msvcrt.dll lacks _setjmp, only has _setjmpex. */
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)
256#elif !defined(_INC_SETJMPEX) && !defined(__aarch64__)
257# if __has_builtin(__builtin_sponentry)
237258# define setjmp(BUF) _setjmp((BUF), __builtin_sponentry())
238259# elif (__MINGW_GCC_VERSION < 40702) && !defined(__clang__)
239260# define setjmp(BUF) _setjmp((BUF), mingw_getsp())
240261# else
241# define setjmp(BUF) _setjmp((BUF), __builtin_frame_address (0))
262# define setjmp(BUF) _setjmp((BUF), __builtin_frame_address(0))
242263# 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);
245264#else
246# undef setjmp
247# ifdef __SEH__
248# if (__MINGW_GCC_VERSION < 40702) && !defined(__clang__)
249# 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
265# if __has_builtin(__builtin_sponentry)
266# define setjmp(BUF) _setjmpex((BUF), __builtin_sponentry())
267# elif (__MINGW_GCC_VERSION < 40702) && !defined(__clang__)
268# define setjmp(BUF) _setjmpex((BUF), mingw_getsp())
255269# else
256# define setjmp(BUF) _setjmpex((BUF), NULL)
257# define setjmpex(BUF) _setjmpex((BUF), NULL)
270# define setjmp(BUF) _setjmpex((BUF), __builtin_frame_address(0))
258271# endif
259 int __cdecl __attribute__ ((__nothrow__,__returns_twice__)) _setjmpex(jmp_buf _Buf,void *_Ctx);
260272#endif
261273
262#pragma pop_macro("__has_builtin")
263
264#ifdef __cplusplus
265}
274#ifdef longjmp
275# undef longjmp
266276#endif
267
268#pragma pack(pop)
277#if defined(_INC_SETJMPEX) && defined(__i386__)
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
269283#endif
284
285#pragma pop_macro("__has_builtin")
lib/libc/include/any-windows-any/setjmpex.h+1-15
......@@ -4,21 +4,7 @@
44 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
55 */
66#ifndef _INC_SETJMPEX
7/* setjmp.h defines setjmp() and longjmp() based on _INC_SETJMPEX */
78#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
239#include <setjmp.h>
2410#endif
lib/libc/include/any-windows-any/shldisp.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/shobjidl.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/shtypes.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/signal.h+1-1
......@@ -45,7 +45,7 @@ extern "C" {
4545#endif
4646#endif
4747
48 typedef void (*__p_sig_fn_t)(int);
48 typedef void (__cdecl *__p_sig_fn_t)(int);
4949
5050#define SIG_DFL (__p_sig_fn_t)0
5151#define SIG_IGN (__p_sig_fn_t)1
lib/libc/include/any-windows-any/spatialaudioclient.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/spellcheck.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/sql.h+19
......@@ -24,6 +24,11 @@ extern "C" {
2424#if (ODBCVER >= 0x0300)
2525#define SQL_NO_DATA 100
2626#endif
27
28#if (ODBCVER >= 0x0380)
29#define SQL_PARAM_DATA_AVAILABLE 101
30#endif
31
2732#define SQL_ERROR (-1)
2833#define SQL_INVALID_HANDLE (-2)
2934
......@@ -174,6 +179,10 @@ extern "C" {
174179#define SQL_ARD_TYPE (-99)
175180#endif
176181
182#if (ODBCVER >= 0x0380)
183#define SQL_APD_TYPE (-100)
184#endif
185
177186#if (ODBCVER >= 0x0300)
178187#define SQL_CODE_DATE 1
179188#define SQL_CODE_TIME 2
......@@ -337,6 +346,10 @@ extern "C" {
337346#define SQL_API_SQLSTATISTICS 53
338347#define SQL_API_SQLTABLES 54
339348#define SQL_API_SQLTRANSACT 23
349#if (ODBCVER >= 0x0380)
350#define SQL_API_SQLCANCELHANDLE 1550
351#define SQL_API_SQLCOMPLETEASYNC 1551
352#endif
340353
341354#if (ODBCVER >= 0x0300)
342355#define SQL_MAX_DRIVER_CONNECTIONS 0
......@@ -491,6 +504,9 @@ extern "C" {
491504 SQLRETURN SQL_API SQLBindParam(SQLHSTMT StatementHandle,SQLUSMALLINT ParameterNumber,SQLSMALLINT ValueType,SQLSMALLINT ParameterType,SQLULEN LengthPrecision,SQLSMALLINT ParameterScale,SQLPOINTER ParameterValue,SQLLEN *StrLen_or_Ind);
492505#endif
493506 SQLRETURN SQL_API SQLCancel(SQLHSTMT StatementHandle);
507#if (ODBCVER >= 0x0380)
508 SQLRETURN SQL_API SQLCancelHandle(SQLSMALLINT HandleType,SQLHANDLE InputHandle);
509#endif
494510#if (ODBCVER >= 0x0300)
495511 SQLRETURN SQL_API SQLCloseCursor(SQLHSTMT StatementHandle);
496512#ifdef _WIN64
......@@ -500,6 +516,9 @@ extern "C" {
500516#endif
501517#endif
502518 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
503522 SQLRETURN SQL_API SQLConnect(SQLHDBC ConnectionHandle,SQLCHAR *ServerName,SQLSMALLINT NameLength1,SQLCHAR *UserName,SQLSMALLINT NameLength2,SQLCHAR *Authentication,SQLSMALLINT NameLength3);
504523#if (ODBCVER >= 0x0300)
505524 SQLRETURN SQL_API SQLCopyDesc(SQLHDESC SourceDescHandle,SQLHDESC TargetDescHandle);
lib/libc/include/any-windows-any/stddef.h+2-2
......@@ -17,8 +17,8 @@ extern "C" {
1717#define _CRT_ERRNO_DEFINED
1818 _CRTIMP extern int *__cdecl _errno(void);
1919#define errno (*_errno())
20 errno_t __cdecl _set_errno(int _Value);
21 errno_t __cdecl _get_errno(int *_Value);
20 _CRTIMP errno_t __cdecl _set_errno(int _Value);
21 _CRTIMP errno_t __cdecl _get_errno(int *_Value);
2222#endif /* _CRT_ERRNO_DEFINED */
2323
2424 _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
569569#endif
570570 _CRTIMP int __cdecl _flushall(void);
571571 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);
573573 int __cdecl fputc(int _Ch,FILE *_File);
574574 _CRTIMP int __cdecl _fputchar(int _Ch);
575575 int __cdecl fputs(const char * __restrict__ _Str,FILE * __restrict__ _File);
576576 size_t __cdecl fread(void * __restrict__ _DstBuf,size_t _ElementSize,size_t _Count,FILE * __restrict__ _File);
577577 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);
578579 int __cdecl fsetpos(FILE *_File,const fpos_t *_Pos);
579580 int __cdecl fsetpos64(FILE *_File,const fpos_t *_Pos); /* fsetpos already 64bit */
580581 int __cdecl fseek(FILE *_File,long _Offset,int _Origin);
581582 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 */
585584 _CRTIMP int __cdecl _fseeki64(FILE *_File,__int64 _Offset,int _Origin);
586585 _CRTIMP __int64 __cdecl _ftelli64(FILE *_File);
587#ifdef _UCRT
588 __mingw_ovr int fseeko(FILE *_File, _off_t _Offset, int _Origin) {
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 }
586#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
587 int __cdecl fseeko(FILE *_File, _off64_t _Offset, int _Origin) __MINGW_ASM_CALL(fseeko64);
600588#else
601 int fseeko64(FILE* stream, _off64_t offset, int whence);
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);
589 int __cdecl fseeko(FILE *_File, _off_t _Offset, int _Origin);
606590#endif
607
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
591 _CRTIMP int __cdecl fseeko64(FILE *_File, _off64_t _Offset, int _Origin);
617592#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
618#define ftello ftello64
619#endif /* (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)) */
620#endif /* _FILE_OFFSET_BITS_SET_FTELLO */
593 _off64_t __cdecl ftello(FILE *_File) __MINGW_ASM_CALL(ftello64);
594#else
595 _off_t __cdecl ftello(FILE *_File);
596#endif
597 _CRTIMP _off64_t __cdecl ftello64(FILE *_File);
621598
622599 size_t __cdecl fwrite(const void * __restrict__ _Str,size_t _Size,size_t _Count,FILE * __restrict__ _File);
623600 int __cdecl getc(FILE *_File);
624601 int __cdecl getchar(void);
625602 _CRTIMP int __cdecl _getmaxstdio(void);
626603 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;
628608 int __cdecl _getw(FILE *_File);
629609#ifndef _CRT_PERROR_DEFINED
630610#define _CRT_PERROR_DEFINED
......@@ -675,6 +655,7 @@ int vsnprintf (char *__stream, size_t __n, const char *__format, __builtin_va_li
675655 __MINGW_MS_PRINTF(1, 0) __MINGW_ATTRIB_NONNULL(1)
676656 _CRTIMP int __cdecl _vscprintf(const char * __restrict__ _Format,va_list _ArgList);
677657 FILE *__cdecl tmpfile(void) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
658 FILE *__cdecl tmpfile64(void);
678659 char *__cdecl tmpnam(char *_Buffer);
679660 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
10961077#endif /* __NO_ISOCEXT */
10971078
10981079#else /* !__USE_MINGW_ANSI_STDIO */
1099
1100#ifdef _UCRT
11011080 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
11021081 int __cdecl fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
1082
11031083 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
11041084 int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...);
1085
11051086 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
11061087 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
11101089 __MINGW_ATTRIB_NONNULL(2)
1111 int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, va_list __local_argv);
1112 __MINGW_ATTRIB_NONNULL(1)
1113 int vwscanf(const wchar_t *__format, va_list __local_argv);
1090 int __cdecl vfwscanf(FILE *__stream, 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 */
11251092 __MINGW_ATTRIB_NONNULL(2)
1126 int vfwscanf (FILE *__stream, const wchar_t *__format, __builtin_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);
1093 int __cdecl vswscanf(const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, va_list __local_argv);
11301094
11311095 __MINGW_ATTRIB_NONNULL(1)
1132 int vwscanf(const wchar_t *__format, __builtin_va_list __local_argv);
1133
1134#endif /* __NO_ISOCEXT */
1096 int __cdecl vwscanf(const wchar_t *__format, va_list __local_argv);
11351097
11361098 int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
11371099 int __cdecl wprintf(const wchar_t * __restrict__ _Format,...);
11381100 int __cdecl vfwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list _ArgList);
11391101 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);
11411107#endif /* __USE_MINGW_ANSI_STDIO */
11421108
11431109#ifndef WEOF
......@@ -1164,73 +1130,17 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti
11641130 _CRTIMP wchar_t *__cdecl _getws(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
11651131 _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
12121133 _CRTIMP int __cdecl _scwprintf(const wchar_t * __restrict__ _Format,...);
1134#ifndef _UCRT
12131135 _CRTIMP int __cdecl _swprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,...);
12141136 _CRTIMP int __cdecl _vswprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,va_list _ArgList);
1137#endif /* _UCRT */
12151138 _CRTIMP int __cdecl _snwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
12161139 _CRTIMP int __cdecl _vsnwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
12171140 _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 */
12271141 _CRTIMP int __cdecl _swprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,...);
12281142 _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
12341144#ifndef RC_INVOKED
12351145#include <swprintf.inl>
12361146#endif
......@@ -1293,17 +1203,10 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti
12931203#define _STDIO_DEFINED
12941204#endif
12951205
1296#ifdef _UCRT
12971206 _CRTIMP int __cdecl _fgetc_nolock(FILE *_File);
12981207 _CRTIMP int __cdecl _fputc_nolock(int _Char, FILE *_File);
12991208 _CRTIMP int __cdecl _getc_nolock(FILE *_File);
13001209 _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
13071210#define _getchar_nolock() _getc_nolock(stdin)
13081211#define _putchar_nolock(_c) _putc_nolock((_c),stdout)
13091212#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);
145145#define _CRT_ERRNO_DEFINED
146146 _CRTIMP extern int *__cdecl _errno(void);
147147#define errno (*_errno())
148 errno_t __cdecl _set_errno(int _Value);
149 errno_t __cdecl _get_errno(int *_Value);
148 _CRTIMP errno_t __cdecl _set_errno(int _Value);
149 _CRTIMP errno_t __cdecl _get_errno(int *_Value);
150150#endif
151151 _CRTIMP unsigned long *__cdecl __doserrno(void);
152152#define _doserrno (*__doserrno())
......@@ -192,7 +192,7 @@ _CRTIMP int __cdecl ___mb_cur_max_func(void);
192192#endif
193193
194194#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)
196196 /* The plain msvcrt.dll for arm/aarch64 lacks
197197 * _environ/_wenviron, but has these functions instead. */
198198 _CRTIMP void __cdecl _get_environ(char ***);
......@@ -342,17 +342,20 @@ _CRTIMP int __cdecl ___mb_cur_max_func(void);
342342 __MINGW_EXTENSION _CRTIMP unsigned __int64 __cdecl _strtoui64_l(const char *_String,char **_EndPtr,int _Radix,_locale_t _Locale);
343343 ldiv_t __cdecl ldiv(long _Numerator,long _Denominator);
344344 _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);
346346 _CRTIMP int __cdecl _mblen_l(const char *_Ch,size_t _MaxCount,_locale_t _Locale);
347347 _CRTIMP size_t __cdecl _mbstrlen(const char *_Str);
348348 _CRTIMP size_t __cdecl _mbstrlen_l(const char *_Str,_locale_t _Locale);
349#if __MSVCRT_VERSION__ >= 0x0800
349350 _CRTIMP size_t __cdecl _mbstrnlen(const char *_Str,size_t _MaxCount);
350351 _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);
352354 _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);
354356 _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);
356359 int __cdecl rand(void);
357360 _CRTIMP int __cdecl _set_error_mode(int _Mode);
358361 void __cdecl srand(unsigned int _Seed);
......@@ -412,9 +415,9 @@ float __cdecl __MINGW_NOTHROW strtof(const char * __restrict__ _Str,char ** __re
412415 int __cdecl system(const char *_Command);
413416#endif
414417 _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;
416419 _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;
418421 _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
420423#ifndef _CRT_ALLOCATION_DEFINED
......@@ -463,6 +466,10 @@ float __cdecl __MINGW_NOTHROW strtof(const char * __restrict__ _Str,char ** __re
463466 _CRTIMP void *__cdecl _aligned_offset_recalloc(void *_Memory,size_t _Count,size_t _Size,size_t _Alignment,size_t _Offset);
464467 _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
466473#if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
467474#pragma pop_macro("calloc")
468475#pragma pop_macro("free")
lib/libc/include/any-windows-any/string.h+22-42
......@@ -7,15 +7,7 @@
77#define _INC_STRING
88
99#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__) */
10#include <corecrt_memory.h>
1911
2012#ifdef __cplusplus
2113extern "C" {
......@@ -38,24 +30,6 @@ extern "C" {
3830#endif
3931#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
5933 char * __cdecl _strset(char *_Str,int _Val) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
6034 char * __cdecl _strset_l(char *_Str,int _Val,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
6135 char * __cdecl strcpy(char * __restrict__ _Dest,const char * __restrict__ _Source);
......@@ -71,12 +45,25 @@ extern "C" {
7145 _CRTIMP char *__cdecl _strdup(const char *_Src);
7246#if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
7347#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);
7461#endif
7562 _CONST_RETURN char *__cdecl strchr(const char *_Str,int _Val);
7663 _CRTIMP int __cdecl _stricmp(const char *_Str1,const char *_Str2);
7764 _CRTIMP int __cdecl _strcmpi(const char *_Str1,const char *_Str2);
7865 _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);
8067 _CRTIMP int __cdecl _strcoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
8168 _CRTIMP int __cdecl _stricoll(const char *_Str1,const char *_Str2);
8269 _CRTIMP int __cdecl _stricoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
......@@ -86,7 +73,7 @@ extern "C" {
8673 _CRTIMP int __cdecl _strnicoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
8774 size_t __cdecl strcspn(const char *_Str,const char *_Control);
8875 _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;
9077 _CRTIMP char *__cdecl _strlwr(char *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
9178 char *strlwr_l(char *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
9279 char *__cdecl strncat(char * __restrict__ _Dest,const char * __restrict__ _Source,size_t _Count) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
......@@ -101,14 +88,14 @@ extern "C" {
10188 _CRTIMP char *__cdecl _strrev(char *_Str);
10289 size_t __cdecl strspn(const char *_Str,const char *_Control);
10390 _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;
10592#pragma push_macro("strtok_r")
10693#undef strtok_r
10794 char *strtok_r(char * __restrict__ _Str, const char * __restrict__ _Delim, char ** __restrict__ __last);
10895#pragma pop_macro("strtok_r")
10996 _CRTIMP char *__cdecl _strupr(char *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
11097 _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);
11299 _CRTIMP size_t __cdecl _strxfrm_l(char * __restrict__ _Dst,const char * __restrict__ _Src,size_t _MaxCount,_locale_t _Locale);
113100
114101#ifndef NO_OLDNAMES
......@@ -126,13 +113,6 @@ extern "C" {
126113 int __cdecl strnicmp(const char *_Str1,const char *_Str,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
127114 int __cdecl strncasecmp (const char *, const char *, size_t);
128115 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 */
136116 char *__cdecl strnset(char *_Str,int _Val,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
137117 char *__cdecl strrev(char *_Str) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
138118 char *__cdecl strset(char *_Str,int _Val) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
......@@ -165,8 +145,8 @@ extern "C" {
165145 _CONST_RETURN wchar_t *__cdecl wcsrchr(const wchar_t *_Str,wchar_t _Ch);
166146 size_t __cdecl wcsspn(const wchar_t *_Str,const wchar_t *_Control);
167147 _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;
169 wchar_t *__cdecl _wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) __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;
149 _CRTIMP wchar_t *__cdecl _wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
170150#if defined(_CRT_NON_CONFORMING_WCSTOK) && !defined(__cplusplus)
171151 #define wcstok _wcstok
172152#endif
......@@ -186,9 +166,9 @@ extern "C" {
186166 _CRTIMP wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
187167 _CRTIMP wchar_t *__cdecl _wcsupr(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
188168 _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);
190170 _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);
192172 _CRTIMP int __cdecl _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
193173 _CRTIMP int __cdecl _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);
194174 _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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/structuredquerycondition.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/swprintf.inl+2-23
......@@ -7,36 +7,15 @@
77#ifndef _INC_SWPRINTF_INL
88#define _INC_SWPRINTF_INL
99
10#include <vadefs.h>
11
1210#ifdef __cplusplus
1311
1412extern "C++" {
1513
16__mingw_ovr
1714/* __attribute__((__format__ (gnu_wprintf, 2, 0))) */ __MINGW_ATTRIB_NONNULL(2)
18int vswprintf (wchar_t *__stream, const wchar_t *__format, __builtin_va_list __local_argv)
19{
20 return _vswprintf( __stream, __format, __local_argv );
21}
15int vswprintf (wchar_t *__stream, const wchar_t *__format, __builtin_va_list __local_argv) __MINGW_ASM_CALL(_vswprintf);
2216
23__mingw_ovr
2417/* __attribute__((__format__ (gnu_wprintf, 2, 3))) */ __MINGW_ATTRIB_NONNULL(2)
25int swprintf (wchar_t *__stream, const wchar_t *__format, ...)
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}
18int swprintf (wchar_t *__stream, const wchar_t *__format, ...) __MINGW_ASM_CALL(_swprintf);
4019
4120}
4221
lib/libc/include/any-windows-any/sys/stat.h+4-4
......@@ -149,21 +149,21 @@ struct stat {
149149};
150150#if defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)
151151#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);
153153int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat32i64);
154154int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat32i64);
155155#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);
157157int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat64);
158158int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat64);
159159#endif
160160#else
161161#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);
163163int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat32);
164164int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat32);
165165#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);
167167int __cdecl stat(const char *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(stat64i32);
168168int __cdecl wstat(const wchar_t *_Filename, struct stat *_Stat) __MINGW_ASM_CALL(wstat64i32);
169169#endif
lib/libc/include/any-windows-any/sys/timeb.h+14-2
......@@ -78,6 +78,11 @@ extern "C" {
7878 _CRTIMP void __cdecl _ftime64(struct __timeb64 *_Time);
7979 _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
8186#ifndef _USE_32BIT_TIME_T
8287#define _timeb __timeb64
8388#define _ftime _ftime64
......@@ -85,6 +90,7 @@ extern "C" {
8590#define _timeb __timeb32
8691#define _ftime _ftime32
8792#endif
93#endif /* _CRTBLD */
8894
8995struct _timespec32 {
9096 __time32_t tv_sec;
......@@ -109,13 +115,19 @@ struct itimerspec {
109115};
110116#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
112123#if !defined (RC_INVOKED) && !defined (NO_OLDNAMES)
113124#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);
115126#else
116 void __cdecl ftime (struct timeb *) __MINGW_ASM_CALL(_ftime32);
127 int __cdecl ftime (struct timeb *) __MINGW_ASM_CALL(ftime32);
117128#endif /* _USE_32BIT_TIME_T */
118129#endif
130#endif /* _CRTBLD */
119131
120132#ifdef __cplusplus
121133}
lib/libc/include/any-windows-any/sys/utime.h+19-32
......@@ -91,43 +91,30 @@ extern "C" {
9191 _CRTIMP int __cdecl _wutime64(const wchar_t *_Filename,struct __utimbuf64 *_Time);
9292
9393#ifndef RC_INVOKED
94int __cdecl _utime(const char *,struct _utimbuf *);
95int __cdecl _futime(int,struct _utimbuf *);
96int __cdecl _wutime(const wchar_t *,struct _utimbuf *);
97#ifndef __CRT__NO_INLINE
94
95/*
96 * To prevent ABI issues, the mingw-w64 runtime should not call these
97 * functions. Instead it should call the fixed-size variants.
98 */
99#ifndef _CRTBLD
98100#ifdef _USE_32BIT_TIME_T
99__CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) {
100 return _utime32(_Filename,(struct __utimbuf32 *)_Utimbuf);
101}
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}
101 int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_utime32);
102 int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_futime32);
103 int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_wutime32);
108104#else
109__CRT_INLINE int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) {
110 return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
111}
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}
105 int __cdecl _utime(const char *_Filename,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_utime64);
106 int __cdecl _futime(int _Desc,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_futime64);
107 int __cdecl _wutime(const wchar_t *_Filename,struct _utimbuf *_Utimbuf) __MINGW_ASM_CALL(_wutime64);
118108#endif
119#endif /* !__CRT__NO_INLINE */
120
121109#ifndef NO_OLDNAMES
122 int __cdecl utime(const char *, struct utimbuf *);
123#ifndef __CRT__NO_INLINE
124#ifndef _USE_32BIT_TIME_T
125__CRT_INLINE int __cdecl utime(const char *_Filename,struct utimbuf *_Utimbuf) {
126 return _utime64(_Filename,(struct __utimbuf64 *)_Utimbuf);
127}
128#endif /* !_USE_32BIT_TIME_T */
129#endif /* !__CRT__NO_INLINE */
110#ifdef _USE_32BIT_TIME_T
111 int __cdecl utime(const char *, struct utimbuf *) __MINGW_ASM_CALL(_utime32);
112#else
113 int __cdecl utime(const char *, struct utimbuf *) __MINGW_ASM_CALL(_utime64);
114#endif
130115#endif
116#endif /* _CRTBLD */
117
131118#endif
132119
133120#ifdef __cplusplus
lib/libc/include/any-windows-any/systemmediatransportcontrolsinterop.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/taskschd.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/textstor.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/thumbcache.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/time.h+6
......@@ -227,6 +227,11 @@ extern "C" {
227227
228228#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
230235#ifdef _USE_32BIT_TIME_T
231236time_t __CRTDECL time(time_t *_Time) __MINGW_ASM_CALL(_time32);
232237#ifdef _UCRT
......@@ -256,6 +261,7 @@ errno_t __CRTDECL ctime_s(char *_Buf,size_t _SizeInBytes,const time_t *_Time) __
256261time_t __CRTDECL mktime(struct tm *_Tm) __MINGW_ASM_CALL(_mktime64);
257262time_t __CRTDECL _mkgmtime(struct tm *_Tm) __MINGW_ASM_CALL(_mkgmtime64);
258263#endif
264#endif /* _CRTBLD */
259265
260266#endif /* !RC_INVOKED */
261267
lib/libc/include/any-windows-any/tlbref.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/tlogstg.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/tpcshrd.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/tsvirtualchannels.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/tuner.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/uchar.h+4-19
......@@ -48,25 +48,10 @@ extern "C" {
4848#endif
4949
5050#ifdef _UCRT
51
52size_t mbrtoc16 (char16_t *__restrict__ pc16,
53 const char *__restrict__ s,
54 size_t n,
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
51_CRTIMP size_t mbrtoc16 (char16_t *__restrict__ _Pc16, const char *__restrict__ _S, size_t _N, mbstate_t *__restrict__ _Ps);
52_CRTIMP size_t c16rtomb (char *__restrict__ _S, char16_t _C16, mbstate_t *__restrict__ _Ps);
53_CRTIMP size_t mbrtoc32 (char32_t *__restrict__ _Pc32, const char *__restrict__ s, size_t n, mbstate_t *__restrict__ _Ps);
54_CRTIMP size_t c32rtomb (char *__restrict__ _S, char32_t _C32, mbstate_t *__restrict__ _Ps);
7055#endif /* _UCRT */
7156
7257#ifdef __cplusplus
lib/libc/include/any-windows-any/uianimation.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/uiautomationclient.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/uiautomationcore.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/uiviewsettingsinterop.h+1-1
......@@ -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
33#ifdef _WIN32
44#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);
5656#define FTRUNCATE_DEFINED
5757/* This is defined as a real library function to allow autoconf
5858 to verify its existence. */
59#if !defined(NO_OLDNAMES) || defined(_POSIX)
60int ftruncate(int, off32_t);
61int ftruncate64(int, off64_t);
62int truncate(const char *, off32_t);
63int truncate64(const char *, off64_t);
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);
59int ftruncate(int, off_t)
60#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
61__MINGW_ASM_CALL(ftruncate64)
62#endif
63;
7264int ftruncate64(int, _off64_t);
73int truncate(const char *, _off_t);
74int truncate64(const char *, _off64_t);
75#ifndef __CRT__NO_INLINE
76__CRT_INLINE int ftruncate(int __fd, _off_t __length)
77{
78 return _chsize (__fd, __length);
79}
80#endif /* !__CRT__NO_INLINE */
65int truncate(const char *, off_t)
66#if (defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64))
67__MINGW_ASM_CALL(truncate64)
8168#endif
69;
70int truncate64(const char *, _off64_t);
8271#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
9173#ifndef _CRT_SWAB_DEFINED
9274#define _CRT_SWAB_DEFINED /* Also in stdlib.h */
9375 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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/unknwnbase.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/urlhist.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/urlmon.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vdslun.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vidcap.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vmr9.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vsadmin.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vsbackup.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vsmgmt.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vsprov.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vss.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/vswriter.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemads.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemcli.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemdisp.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemprov.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wbemtran.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wchar.h+50-141
......@@ -8,6 +8,7 @@
88
99#include <corecrt.h>
1010#include <corecrt_stdio_config.h>
11#include <corecrt_wconio.h>
1112#include <corecrt_wstdlib.h>
1213#include <corecrt_wctype.h>
1314
......@@ -41,6 +42,9 @@ extern "C" {
4142
4243#ifndef _FILE_DEFINED
4344 struct _iobuf {
45#ifdef _UCRT
46 void *_Placeholder;
47#else
4448 char *_ptr;
4549 int _cnt;
4650 char *_base;
......@@ -49,6 +53,7 @@ extern "C" {
4953 int _charbuf;
5054 int _bufsiz;
5155 char *_tmpfname;
56#endif
5257 };
5358 typedef struct _iobuf FILE;
5459#define _FILE_DEFINED
......@@ -110,6 +115,11 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);
110115 };
111116/* #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
113123#ifdef _USE_32BIT_TIME_T
114124#define _wfinddata_t _wfinddata32_t
115125#define _wfinddatai64_t _wfinddata32i64_t
......@@ -127,6 +137,7 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);
127137#define _wfindfirsti64 _wfindfirst64
128138#define _wfindnexti64 _wfindnext64
129139#endif
140#endif /* _CRTBLD */
130141
131142#define _WFINDDATA_T_DEFINED
132143#endif
......@@ -187,10 +198,10 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);
187198 _CRTIMP int __cdecl _wrename(const wchar_t *_OldFilename,const wchar_t *_NewFilename);
188199 _CRTIMP wchar_t *__cdecl _wmktemp(wchar_t *_TemplateName) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
189200 _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);
191202 _CRTIMP intptr_t __cdecl _wfindfirst64(const wchar_t *_Filename,struct _wfinddata64_t *_FindData);
192203 _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);
194205 _CRTIMP int __cdecl _wfindnext64(intptr_t _FindHandle,struct _wfinddata64_t *_FindData);
195206 _CRTIMP errno_t __cdecl _wsopen_s(int *_FileHandle,const wchar_t *_Filename,int _OpenFlag,int _ShareFlag,int _PermissionFlag);
196207 _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);
267278#endif
268279#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
302281#ifdef _UCRT
303282 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);
304283 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);
460439#endif /* __NO_ISOCEXT */
461440
462441#else /* !__USE_MINGW_ANSI_STDIO */
463
464#ifdef _UCRT
465442 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
466443 int __cdecl fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
444
467445 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
468446 int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...);
447
469448 __MINGW_ATTRIB_DEPRECATED_SEC_WARN
470449 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 */
492451 __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
495454 __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
498457 __MINGW_ATTRIB_NONNULL(1)
499 int vwscanf(const wchar_t *__format, __builtin_va_list __local_argv);
500#endif /* __NO_ISOCEXT */
458 int __cdecl vwscanf(const wchar_t *__format, va_list __local_argv);
501459
502460 int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
503461 int __cdecl wprintf(const wchar_t * __restrict__ _Format,...);
504462 int __cdecl vfwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list _ArgList);
505463 int __cdecl vwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
506
507464 int __cdecl swprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...);
508465 int __cdecl vswprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,va_list _Args);
509#endif /* _UCRT */
510466#endif /* __USE_MINGW_ANSI_STDIO */
511467
512468
......@@ -534,34 +490,14 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
534490 _CRTIMP wchar_t *__cdecl _getws(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
535491 _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
561493 _CRTIMP int __cdecl _scwprintf(const wchar_t * __restrict__ _Format,...);
494
495#ifndef _UCRT
562496 _CRTIMP int __cdecl _swprintf_l(wchar_t * __restrict__ ,size_t _SizeInWords,const wchar_t * __restrict__ _Format,_locale_t _Locale,... ) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
563497 _CRTIMP int __cdecl _swprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,...);
564498 _CRTIMP int __cdecl _vswprintf_c(wchar_t * __restrict__ _DstBuf,size_t _SizeInWords,const wchar_t * __restrict__ _Format,va_list _ArgList);
499#endif
500
565501 _CRTIMP int __cdecl _snwprintf(wchar_t * __restrict__ _Dest,size_t _Count,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
566502 _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);
572508#pragma push_macro("vsnwprintf")
573509# undef snwprintf
574510# undef vsnwprintf
575 int __cdecl snwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...) __MINGW_ASM_CALL(__ms_snwprintf);
576 int __cdecl vsnwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg) __MINGW_ASM_CALL(__ms_vsnwprintf);
511 int __cdecl snwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, ...);
512 int __cdecl vsnwprintf (wchar_t * __restrict__ s, size_t n, const wchar_t * __restrict__ format, va_list arg);
577513#pragma pop_macro ("vsnwprintf")
578514#pragma pop_macro ("snwprintf")
579515#endif
580516
581#endif /* _UCRT */
582
583#endif /* _WSTDIO_DEFINED */
517#endif /* __NO_ISOCEXT */
584518
585519
586520#ifdef _UCRT
......@@ -802,10 +736,9 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
802736 {
803737 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR, NULL, 0, _Format, _Locale, _ArgList);
804738 }
805 __mingw_ovr int __cdecl _vscwprintf(const wchar_t *_Format, va_list _ArgList)
806 {
807 return _vscwprintf_l(_Format, NULL, _ArgList);
808 }
739
740 _CRTIMP int __cdecl _vscwprintf(const wchar_t * __restrict__ _Format,va_list _ArgList);
741
809742 __mingw_ovr int __cdecl _scwprintf_l(const wchar_t *_Format, _locale_t _Locale, ...)
810743 {
811744 __builtin_va_list _ArgList;
......@@ -828,10 +761,7 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
828761 {
829762 return _vswprintf_c_l(_DstBuf, _MaxCount, _Format, _Locale, _ArgList);
830763 }
831 __mingw_ovr int __cdecl _vswprintf(wchar_t *_DstBuf, const wchar_t *_Format, va_list _ArgList)
832 {
833 return _vswprintf_c_l(_DstBuf, (size_t)-1, _Format, NULL, _ArgList);
834 }
764 _CRTIMP int __cdecl _vswprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,va_list _Args);
835765 __mingw_ovr int __cdecl _swprintf_c_l(wchar_t *_DstBuf, size_t _MaxCount, const wchar_t *_Format, _locale_t _Locale, ...)
836766 {
837767 __builtin_va_list _ArgList;
......@@ -850,15 +780,7 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
850780 __builtin_va_end(_ArgList);
851781 return _Ret;
852782 }
853 __mingw_ovr int __cdecl _swprintf(wchar_t *_DstBuf, const wchar_t *_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 }
783 _CRTIMP int __cdecl _swprintf(wchar_t * __restrict__ _Dest,const wchar_t * __restrict__ _Format,...);
862784#else /* _UCRT */
863785 _CRTIMP int __cdecl _fwprintf_p(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
864786 _CRTIMP int __cdecl _wprintf_p(const wchar_t * __restrict__ _Format,...);
......@@ -957,7 +879,8 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
957879#define _putwc_nolock(_c,_stm) _fputwc_nolock(_c,_stm)
958880#define _getwc_nolock(_c) _fgetwc_nolock(_c)
959881#endif
960#endif
882
883#endif /* _WSTDIO_DEFINED */
961884
962885#ifndef _WSTDLIB_DEFINED
963886#define _WSTDLIB_DEFINED
......@@ -1061,8 +984,8 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
1061984 _CONST_RETURN wchar_t *__cdecl wcsrchr(const wchar_t *_Str,wchar_t _Ch);
1062985 size_t __cdecl wcsspn(const wchar_t *_Str,const wchar_t *_Control);
1063986 _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;
1065 wchar_t *__cdecl _wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) __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;
988 _CRTIMP wchar_t *__cdecl _wcstok(wchar_t * __restrict__ _Str,const wchar_t * __restrict__ _Delim) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1066989#if defined(_CRT_NON_CONFORMING_WCSTOK) && !defined(__cplusplus)
1067990 #define wcstok _wcstok
1068991#endif
......@@ -1082,9 +1005,9 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
10821005 _CRTIMP wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
10831006 _CRTIMP wchar_t *__cdecl _wcsupr(wchar_t *_String) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
10841007 _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);
10861009 _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);
10881011 _CRTIMP int __cdecl _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
10891012 _CRTIMP int __cdecl _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);
10901013 _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);
11471070
11481071#if !defined (RC_INVOKED) && !defined (_INC_WTIME_INL)
11491072#define _INC_WTIME_INL
1150 wchar_t *__cdecl _wctime(const time_t *_Time) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
1151#ifndef __CRT__NO_INLINE
11521073#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;
11541075#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;
11561077#endif
1157#endif /* __CRT__NO_INLINE */
11581078#endif
11591079
11601080#if !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL)
11611081#define _INC_WTIME_S_INL
1162 errno_t __cdecl _wctime_s(wchar_t *, size_t, const time_t *);
1163#ifndef __CRT__NO_INLINE
11641082#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);
11661084#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); }
1168#endif /* _USE_32BIT_TIME_T */
1169#endif /* __CRT__NO_INLINE */
1170#endif /* !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL) */
1085 errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) __MINGW_ASM_CALL(_wctime32_s);
1086#endif
1087#endif
11711088
11721089#endif
11731090
......@@ -1182,13 +1099,14 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
11821099#endif
11831100 typedef wchar_t _Wint_t;
11841101
1185 wint_t __cdecl btowc(int);
1186 size_t __cdecl mbrlen(const char * __restrict__ _Ch,size_t _SizeInBytes,mbstate_t * __restrict__ _State);
1187 size_t __cdecl mbrtowc(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,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;
1189 size_t __cdecl wcrtomb(char * __restrict__ _Dest,wchar_t _Source,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;
1191 int __cdecl wctob(wint_t _WCh);
1102 _CRTIMP wint_t __cdecl btowc(int);
1103 int __cdecl mbsinit(const mbstate_t *ps);
1104 _CRTIMP size_t __cdecl mbrlen(const char * __restrict__ _Ch,size_t _SizeInBytes,mbstate_t * __restrict__ _State);
1105 _CRTIMP size_t __cdecl mbrtowc(wchar_t * __restrict__ _DstCh,const char * __restrict__ _SrcCh,size_t _SizeInBytes,mbstate_t * __restrict__ _State);
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;
1107 _CRTIMP size_t __cdecl wcrtomb(char * __restrict__ _Dest,wchar_t _Source,mbstate_t * __restrict__ _State) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
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
11931111#ifndef __NO_ISOCEXT /* these need static lib libmingwex.a */
11941112 wchar_t *__cdecl wmemset(wchar_t *s, wchar_t c, size_t n);
......@@ -1198,12 +1116,6 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
11981116 wchar_t * __cdecl wmempcpy (wchar_t *_Dst, const wchar_t *_Src, size_t _Size);
11991117 wchar_t *__cdecl wmemmove(wchar_t *s1, const wchar_t *s2, size_t n) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
12001118 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
12071119 __MINGW_EXTENSION long long __cdecl wcstoll(const wchar_t * __restrict__ nptr,wchar_t ** __restrict__ endptr, int base);
12081120 __MINGW_EXTENSION unsigned long long __cdecl wcstoull(const wchar_t * __restrict__ nptr,wchar_t ** __restrict__ endptr, int base);
12091121#endif /* __NO_ISOCEXT */
......@@ -1212,9 +1124,6 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
12121124 void *__cdecl memcpy(void * __restrict__ _Dst,const void * __restrict__ _Src,size_t _MaxCount) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
12131125#ifndef __CRT__NO_INLINE
12141126 __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
12181127 __CRT_INLINE _CONST_RETURN wchar_t *__cdecl wmemchr(const wchar_t *_S,wchar_t _C,size_t _N) {
12191128 if (_S) {
12201129 for ( ; 0 < _N; ++_S, --_N)
lib/libc/include/any-windows-any/wctype.h+3-3
......@@ -13,9 +13,9 @@ extern "C" {
1313#endif
1414
1515 typedef wchar_t wctrans_t;
16 wint_t __cdecl towctrans(wint_t,wctrans_t);
17 wctrans_t __cdecl wctrans(const char *);
18 wctype_t __cdecl wctype(const char *);
16 _CRTIMP wint_t __cdecl towctrans(wint_t,wctrans_t);
17 _CRTIMP wctrans_t __cdecl wctrans(const char *);
18 _CRTIMP wctype_t __cdecl wctype(const char *);
1919
2020#ifdef __cplusplus
2121}
lib/libc/include/any-windows-any/wdstptmgmt.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/weakreference.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/webservices.h+7-7
......@@ -406,8 +406,8 @@ typedef struct _WS_INT32_DESCRIPTION {
406406} WS_INT32_DESCRIPTION;
407407
408408typedef struct _WS_INT64_DESCRIPTION {
409 __int64 DECLSPEC_ALIGN(8) minValue;
410 __int64 DECLSPEC_ALIGN(8) maxValue;
409 INT64 minValue;
410 INT64 maxValue;
411411} WS_INT64_DESCRIPTION;
412412
413413typedef struct _WS_UINT8_DESCRIPTION {
......@@ -426,8 +426,8 @@ typedef struct _WS_UINT32_DESCRIPTION {
426426} WS_UINT32_DESCRIPTION;
427427
428428typedef struct _WS_UINT64_DESCRIPTION {
429 unsigned __int64 DECLSPEC_ALIGN(8) minValue;
430 unsigned __int64 DECLSPEC_ALIGN(8) maxValue;
429 UINT64 minValue;
430 UINT64 maxValue;
431431} WS_UINT64_DESCRIPTION;
432432
433433typedef struct _WS_WSZ_DESCRIPTION {
......@@ -673,12 +673,12 @@ typedef struct _WS_XML_INT32_TEXT {
673673
674674typedef struct _WS_XML_INT64_TEXT {
675675 WS_XML_TEXT text;
676 __int64 DECLSPEC_ALIGN(8) value;
676 INT64 value;
677677} WS_XML_INT64_TEXT;
678678
679679typedef struct _WS_XML_UINT64_TEXT {
680680 WS_XML_TEXT text;
681 unsigned __int64 DECLSPEC_ALIGN(8) value;
681 UINT64 value;
682682} WS_XML_UINT64_TEXT;
683683
684684typedef struct _WS_XML_FLOAT_TEXT {
......@@ -1232,7 +1232,7 @@ typedef enum {
12321232} WS_DATETIME_FORMAT;
12331233
12341234struct _WS_DATETIME {
1235 unsigned __int64 DECLSPEC_ALIGN(8) ticks;
1235 UINT64 ticks;
12361236 WS_DATETIME_FORMAT format;
12371237};
12381238
lib/libc/include/any-windows-any/wia_lh.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wia_xp.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/winapifamily.h+34-9
......@@ -6,19 +6,44 @@
66#ifndef _INC_WINAPIFAMILY
77#define _INC_WINAPIFAMILY
88
9#define WINAPI_PARTITION_DESKTOP 0x1
10#define WINAPI_PARTITION_APP 0x2
9#define WINAPI_FAMILY_PC_APP 2
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_APP
13#define WINAPI_FAMILY_DESKTOP_APP (WINAPI_PARTITION_DESKTOP \
14 | WINAPI_PARTITION_APP)
15#define WINAPI_FAMILY_APP WINAPI_FAMILY_PC_APP
1516
16/* WINAPI_FAMILY can be either desktop + App, or App. */
1717#ifndef WINAPI_FAMILY
1818#define WINAPI_FAMILY WINAPI_FAMILY_DESKTOP_APP
1919#endif
2020
21#define WINAPI_FAMILY_PARTITION(v) ((WINAPI_FAMILY & v) == v)
22#define WINAPI_FAMILY_ONE_PARTITION(vset, v) ((WINAPI_FAMILY & vset) == v)
21#ifndef WINAPI_PARTITION_DESKTOP
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/*** 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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -274,14 +274,6 @@ interface IWICDdsFrameDecode;
274274#endif /* __cplusplus */
275275#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
285277/* Headers for imported files */
286278
287279#include <wtypes.h>
......@@ -6207,85 +6199,6 @@ static inline HRESULT IWICDdsFrameDecode_CopyBlocks(IWICDdsFrameDecode* This,con
62076199
62086200#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
62896202HRESULT WINAPI WICConvertBitmapSource(REFWICPixelFormatGUID dstFormat, IWICBitmapSource *pISrc, IWICBitmapSource **ppIDst);
62906203HRESULT WINAPI WICCreateBitmapFromSection(UINT width, UINT height, REFWICPixelFormatGUID format, HANDLE section, UINT stride, UINT offset, IWICBitmap **bitmap);
62916204HRESULT 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/*** 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
33#ifdef _WIN32
44#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
49194919#define DWRITE_E_DOWNLOADFAILED _HRESULT_TYPEDEF_(0x8898500FL)
49204920#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
49224931#include <fltwinerror.h>
49234932
49244933#undef __IN__WINERROR_
lib/libc/include/any-windows-any/winhttp.h+19-3
......@@ -55,7 +55,8 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
5555#define ICU_REJECT_USERPWD 0x00004000
5656
5757/* flags for WinHttpOpen */
58#define WINHTTP_FLAG_ASYNC 0x10000000
58#define WINHTTP_FLAG_ASYNC 0x10000000
59#define WINHTTP_FLAG_SECURE_DEFAULTS 0x30000000
5960
6061/* flags for WinHttpOpenRequest */
6162#define WINHTTP_FLAG_ESCAPE_PERCENT 0x00000004
......@@ -64,6 +65,7 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
6465#define WINHTTP_FLAG_ESCAPE_DISABLE_QUERY 0x00000080
6566#define WINHTTP_FLAG_BYPASS_PROXY_CACHE 0x00000100
6667#define WINHTTP_FLAG_REFRESH WINHTTP_FLAG_BYPASS_PROXY_CACHE
68#define WINHTTP_FLAG_AUTOMATIC_CHUNKING 0x00000200
6769#define WINHTTP_FLAG_SECURE 0x00800000
6870
6971#define WINHTTP_ACCESS_TYPE_DEFAULT_PROXY 0
......@@ -168,6 +170,7 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
168170#define WINHTTP_OPTION_ENABLE_HTTP_PROTOCOL 133
169171#define WINHTTP_OPTION_HTTP_PROTOCOL_USED 134
170172#define WINHTTP_OPTION_KDC_PROXY_SETTINGS 136
173#define WINHTTP_OPTION_PROXY_DISABLE_SERVICE_CALLS 137
171174#define WINHTTP_OPTION_ENCODE_EXTRA 138
172175#define WINHTTP_OPTION_DISABLE_STREAM_QUEUE 139
173176#define WINHTTP_OPTION_IPV6_FAST_FALLBACK 140
......@@ -330,7 +333,11 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
330333#define ERROR_WINHTTP_SECURE_FAILURE_PROXY (WINHTTP_ERROR_BASE + 188)
331334#define ERROR_WINHTTP_RESERVED_189 (WINHTTP_ERROR_BASE + 189)
332335#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
335342#define WINHTTP_RESET_STATE 0x00000001
336343#define WINHTTP_RESET_SWPAD_CURRENT_NETWORK 0x00000002
......@@ -511,8 +518,10 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
511518#define WINHTTP_CALLBACK_STATUS_GETPROXYFORURL_COMPLETE 0x01000000
512519#define WINHTTP_CALLBACK_STATUS_CLOSE_COMPLETE 0x02000000
513520#define WINHTTP_CALLBACK_STATUS_SHUTDOWN_COMPLETE 0x04000000
521#define WINHTTP_CALLBACK_STATUS_GETPROXYSETTINGS_COMPLETE 0x08000000
514522#define WINHTTP_CALLBACK_STATUS_SETTINGS_WRITE_COMPLETE 0x10000000
515523#define WINHTTP_CALLBACK_STATUS_SETTINGS_READ_COMPLETE 0x20000000
524
516525#define WINHTTP_CALLBACK_FLAG_RESOLVE_NAME (WINHTTP_CALLBACK_STATUS_RESOLVING_NAME | WINHTTP_CALLBACK_STATUS_NAME_RESOLVED)
517526#define WINHTTP_CALLBACK_FLAG_CONNECT_TO_SERVER (WINHTTP_CALLBACK_STATUS_CONNECTING_TO_SERVER | WINHTTP_CALLBACK_STATUS_CONNECTED_TO_SERVER)
518527#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;
530539#define WINHTTP_CALLBACK_FLAG_WRITE_COMPLETE WINHTTP_CALLBACK_STATUS_WRITE_COMPLETE
531540#define WINHTTP_CALLBACK_FLAG_REQUEST_ERROR WINHTTP_CALLBACK_STATUS_REQUEST_ERROR
532541#define WINHTTP_CALLBACK_FLAG_GETPROXYFORURL_COMPLETE WINHTTP_CALLBACK_STATUS_GETPROXYFORURL_COMPLETE
542#define WINHTTP_CALLBACK_FLAG_GETPROXYSETTINGS_COMPLETE WINHTTP_CALLBACK_STATUS_GETPROXYSETTINGS_COMPLETE
543
533544#define WINHTTP_CALLBACK_FLAG_ALL_COMPLETIONS (WINHTTP_CALLBACK_STATUS_SENDREQUEST_COMPLETE | WINHTTP_CALLBACK_STATUS_HEADERS_AVAILABLE \
534545 | WINHTTP_CALLBACK_STATUS_DATA_AVAILABLE | WINHTTP_CALLBACK_STATUS_READ_COMPLETE \
535546 | 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
537550#define WINHTTP_CALLBACK_FLAG_ALL_NOTIFICATIONS 0xffffffff
538551#define WINHTTP_INVALID_STATUS_CALLBACK ((WINHTTP_STATUS_CALLBACK)(-1))
539552
......@@ -547,6 +560,9 @@ typedef int INTERNET_SCHEME, *LPINTERNET_SCHEME;
547560#define WINHTTP_HANDLE_TYPE_SESSION 1
548561#define WINHTTP_HANDLE_TYPE_CONNECT 2
549562#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
551567#define WINHTTP_CALLBACK_STATUS_FLAG_CERT_REV_FAILED 0x00000001
552568#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 {
31083108#define FSCTL_GET_REFS_VOLUME_DATA CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 182, METHOD_BUFFERED, FILE_ANY_ACCESS)
31093109#define FSCTL_CSV_H_BREAKING_SYNC_TUNNEL_REQUEST CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 185, METHOD_BUFFERED, FILE_ANY_ACCESS)
31103110#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
31113127#endif /*_WIN32_WINNT >= _WIN32_WINNT_WIN8 */
31123128
31133129#if (_WIN32_WINNT >= _WIN32_WINNT_WINBLUE)
lib/libc/include/any-windows-any/winnt.h+47-5
......@@ -268,6 +268,14 @@ extern "C" {
268268#endif
269269#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
271279#define DECLSPEC_DEPRECATED_DDK
272280#define PRAGMA_DEPRECATED_DDK 0
273281
......@@ -3213,6 +3221,12 @@ __buildmemorybarrier()
32133221#define SID_RECOMMENDED_SUB_AUTHORITIES (1)
32143222#ifndef __WIDL__
32153223#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
32163230#endif
32173231
32183232#define SID_HASH_SIZE 32
......@@ -5722,6 +5736,34 @@ DEFINE_ENUM_FLAG_OPERATORS(JOB_OBJECT_IO_RATE_CONTROL_FLAGS)
57225736#define PF_ARM_SVE_F32MM_INSTRUCTIONS_AVAILABLE 58
57235737#define PF_ARM_SVE_F64MM_INSTRUCTIONS_AVAILABLE 59
57245738#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
57265768#define XSTATE_LEGACY_FLOATING_POINT (0)
57275769#define XSTATE_LEGACY_SSE (1)
......@@ -9140,27 +9182,27 @@ DEFINE_ENUM_FLAG_OPERATORS(JOB_OBJECT_IO_RATE_CONTROL_FLAGS)
91409182#endif
91419183
91429184#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);
91449186 NTSYSAPI PVOID NTAPI RtlPcToFileHeader (PVOID PcValue, PVOID *BaseOfImage);
91459187#if defined (__x86_64__)
91469188 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);
91489190 NTSYSAPI PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind (DWORD HandlerType, DWORD64 ImageBase, DWORD64 ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD64 EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);
91499191 NTSYSAPI BOOLEAN NTAPI RtlIsEcCode(DWORD64 CodePointer);
91509192#endif
91519193#if defined (__arm__)
91529194 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);
91549196 NTSYSAPI PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind (DWORD HandlerType, DWORD ImageBase, DWORD ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PVOID *HandlerData, PDWORD EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);
91559197#endif
91569198#if defined (__aarch64__)
91579199 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);
91599201 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);
91609202#endif
91619203#if defined (__ia64__)
91629204 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);
91649206 NTSYSAPI ULONGLONG NTAPI RtlVirtualUnwind (ULONGLONG ImageBase, ULONGLONG ControlPc, PRUNTIME_FUNCTION FunctionEntry, PCONTEXT ContextRecord, PBOOLEAN InFunction, PFRAME_POINTERS EstablisherFrame, PKNONVOLATILE_CONTEXT_POINTERS ContextPointers);
91659207#endif
91669208#endif
lib/libc/include/any-windows-any/wintrust.h+61
......@@ -34,6 +34,7 @@ extern "C"
3434#define WTD_CHOICE_BLOB 3
3535#define WTD_CHOICE_SIGNER 4
3636#define WTD_CHOICE_CERT 5
37#define WTD_CHOICE_DETACHED_SIG 6
3738
3839#define WTD_STATEACTION_IGNORE 0x00000000
3940#define WTD_STATEACTION_VERIFY 0x00000001
......@@ -45,6 +46,7 @@ extern "C"
4546#define WTD_USE_IE4_TRUST_FLAG 0x00000001
4647#define WTD_NO_IE4_CHAIN_FLAG 0x00000002
4748#define WTD_NO_POLICY_USAGE_FLAG 0x00000004
49#define WTD_USE_LOCAL_MACHINE_CERTS 0x00000008
4850#define WTD_REVOCATION_CHECK_NONE 0x00000010
4951#define WTD_REVOCATION_CHECK_END_CERT 0x00000020
5052#define WTD_REVOCATION_CHECK_CHAIN 0x00000040
......@@ -54,6 +56,9 @@ extern "C"
5456#define WTD_USE_DEFAULT_OSVER_CHECK 0x00000400
5557#define WTD_LIFETIME_SIGNING_FLAG 0x00000800
5658#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
5863#define WTD_UICONTEXT_EXECUTE 0
5964#define WTD_UICONTEXT_INSTALL 1
......@@ -71,14 +76,41 @@ extern "C"
7176 struct WINTRUST_BLOB_INFO_ *pBlob;
7277 struct WINTRUST_SGNR_INFO_ *pSgnr;
7378 struct WINTRUST_CERT_INFO_ *pCert;
79 struct WINTRUST_DETACHED_SIG_INFO_ *pDetachedSig;
7480 };
7581 DWORD dwStateAction;
7682 HANDLE hWVTStateData;
7783 WCHAR *pwszURLReference;
7884 DWORD dwProvFlags;
7985 DWORD dwUIContext;
86#if (NTDDI_VERSION >= NTDDI_WIN8)
87 struct WINTRUST_SIGNATURE_SETTINGS_ *pSignatureSettings;
88#endif
8089 } 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
82114 typedef struct WINTRUST_FILE_INFO_ {
83115 DWORD cbStruct;
84116 LPCWSTR pcwszFilePath;
......@@ -86,6 +118,30 @@ extern "C"
86118 GUID *pgKnownSubject;
87119 } 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
89145 typedef HANDLE HCATADMIN;
90146
91147 typedef struct WINTRUST_CATALOG_INFO_ {
......@@ -184,6 +240,11 @@ extern "C"
184240
185241#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
187248 typedef void *(*PFN_CPD_MEM_ALLOC)(DWORD cbSize);
188249 typedef void (*PFN_CPD_MEM_FREE)(void *pvMem2Free);
189250 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 {
67926792} INPUT_TRANSFORM;
67936793
67946794/* 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);
67966796WINUSERAPI WINBOOL WINAPI IsMousePointerEnabled(void);
67976797#endif /*(_WIN32_WINNT >= 0x0602)*/
67986798#endif
lib/libc/include/any-windows-any/wmcodecdsp.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmcontainer.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmdrmsdk.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmp.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmprealestate.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmpservices.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmsbuffer.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmsdkidl.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wmsecure.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wpcapi.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdattachment.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdbase.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdclient.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsddisco.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdhost.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsdxml.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wsmandisp.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wtypes.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wtypesbase.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/wuapi.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xamlom.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xapo.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xaudio2.h+2-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
......@@ -1858,6 +1858,7 @@ inline static float XAudio2RadiansToCutoffFrequency(float radians, float sampler
18581858#endif
18591859#pragma pack(pop)
18601860HRESULT WINAPI XAudio2Create(IXAudio2** pxaudio2, UINT32 flags, XAUDIO2_PROCESSOR processor);
1861HRESULT WINAPI XAudio2CreateWithVersionInfo(IXAudio2** pxaudio2, UINT32 flags, XAUDIO2_PROCESSOR processor, DWORD version);
18611862/* Begin additional prototypes for all interfaces */
18621863
18631864
lib/libc/include/any-windows-any/xaudio2fx.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xmllite.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsdigitalsignature.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsobjectmodel.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsobjectmodel_1.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsprint.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/include/any-windows-any/xpsrassvc.h+1-1
......@@ -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
33#ifdef _WIN32
44#ifndef __REQUIRED_RPCNDR_H_VERSION__
lib/libc/mingw/crt/crt_handler.c+40-197
......@@ -13,9 +13,14 @@
1313#include <signal.h>
1414#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
1620#pragma pack(push,1)
1721typedef struct _UNWIND_INFO {
18 BYTE VersionAndFlags;
22 BYTE Version:3;
23 BYTE Flags:5;
1924 BYTE PrologSize;
2025 BYTE CountOfUnwindCodes;
2126 BYTE FrameRegisterAndOffset;
......@@ -27,16 +32,11 @@ PIMAGE_SECTION_HEADER _FindPESectionByName (const char *);
2732PIMAGE_SECTION_HEADER _FindPESectionExec (size_t);
2833PBYTE _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
3635#define MAX_PDATA_ENTRIES 32
3736static RUNTIME_FUNCTION emu_pdata[MAX_PDATA_ENTRIES];
3837static UNWIND_INFO emu_xdata[MAX_PDATA_ENTRIES];
3938
39int __mingw_init_ehandler (void);
4040int
4141__mingw_init_ehandler (void)
4242{
......@@ -55,7 +55,8 @@ __mingw_init_ehandler (void)
5555 /* Fill tables and entries. */
5656 while (e < MAX_PDATA_ENTRIES && (pSec = _FindPESectionExec (e)) != NULL)
5757 {
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;
5960 emu_xdata[e].AddressOfExceptionHandler =
6061 (DWORD)(size_t) ((LPBYTE)__mingw_SEH_error_handler - _ImageBase);
6162 emu_pdata[e].BeginAddress = pSec->VirtualAddress;
......@@ -74,203 +75,45 @@ __mingw_init_ehandler (void)
7475 return 1;
7576}
7677
77extern void _fpreset (void);
78#endif
7879
79EXCEPTION_DISPOSITION
80#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
8085__mingw_SEH_error_handler (struct _EXCEPTION_RECORD* ExceptionRecord,
8186 void *EstablisherFrame __attribute__ ((unused)),
82 struct _CONTEXT* ContextRecord __attribute__ ((unused)),
87 struct _CONTEXT* ContextRecord,
8388 void *DispatcherContext __attribute__ ((unused)))
8489{
85 EXCEPTION_DISPOSITION action = ExceptionContinueSearch; /* EXCEPTION_CONTINUE_SEARCH; */
86 void (*old_handler) (int);
87 int reset_fpu = 0;
88
89 switch (ExceptionRecord->ExceptionCode)
90 long action;
91
92 if (ExceptionRecord->ExceptionFlags & EXCEPTION_UNWINDING)
93 return ExceptionContinueSearch;
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)
90107 {
91 case EXCEPTION_ACCESS_VIOLATION:
92 /* test if the user has set SIGSEGV */
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}
108 case EXCEPTION_CONTINUE_SEARCH:
109 return ExceptionContinueSearch;
169110
170#endif
111 case EXCEPTION_CONTINUE_EXECUTION:
112 return ExceptionContinueExecution;
171113
172LPTOP_LEVEL_EXCEPTION_FILTER __mingw_oldexcpt_handler = NULL;
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
114 case EXCEPTION_EXECUTE_HANDLER:
269115 default:
270 break;
116 /* msvc CRT EXE exception handler just exit process with exception code */
117 _exit(ExceptionRecord->ExceptionCode);
271118 }
272
273 if (action == EXCEPTION_CONTINUE_SEARCH && __mingw_oldexcpt_handler)
274 action = (*__mingw_oldexcpt_handler)(exception_data);
275 return action;
276119}
lib/libc/mingw/crt/crtdll.c+3-2
......@@ -4,7 +4,6 @@
44 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
55 */
66
7#include <oscalls.h>
87#include <internal.h>
98#include <stdlib.h>
109#include <windows.h>
......@@ -147,7 +146,9 @@ DllMainCRTStartup (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
147146{
148147 WINBOOL retcode = TRUE;
149148
150 __mingw_app_type = 0;
149 if (dwReason == DLL_PROCESS_ATTACH)
150 __mingw_app_type = 0;
151
151152 __native_dllmain_reason = dwReason;
152153 if (dwReason == DLL_PROCESS_DETACH && __proc_attached <= 0)
153154 {
lib/libc/mingw/crt/crtexe.c+144-121
......@@ -4,25 +4,37 @@
44 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
55 */
66
7#include <oscalls.h>
87#include <internal.h>
8#include <excpt.h>
99#include <process.h>
1010#include <signal.h>
1111#include <math.h>
1212#include <stdlib.h>
13#include <stdio.h>
1314#include <tchar.h>
1415#include <sect_attribs.h>
1516#include <locale.h>
17#include <float.h>
1618#include <corecrt_startup.h>
1719
1820#if defined(__SEH__) && (!defined(__clang__) || __clang_major__ >= 7)
1921#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
2034#endif
2135
2236extern IMAGE_DOS_HEADER __ImageBase;
2337
24extern void _fpreset (void);
25
2638int *__cdecl __p__commode(void);
2739
2840#undef _fmode
......@@ -30,8 +42,7 @@ extern int _fmode;
3042#undef _commode
3143extern int _commode;
3244extern int _dowildcard;
33
34extern _CRTIMP void __cdecl _initterm(_PVFV *, _PVFV *);
45extern int __globallocalestatus;
3546
3647static int __cdecl check_managed_app (void);
3748
......@@ -51,19 +62,15 @@ extern void __main(void);
5162static _TCHAR **argv;
5263static _TCHAR **envp;
5364
54static int mainret=0;
5565static int managedapp;
5666static int has_cctor = 0;
57extern LPTOP_LEVEL_EXCEPTION_FILTER __mingw_oldexcpt_handler;
5867
5968extern void _pei386_runtime_relocator (void);
60long CALLBACK _gnu_exception_handler (EXCEPTION_POINTERS * exception_data);
61static void duplicate_ppstrings (int ac, _TCHAR ***av);
62
63static int __cdecl pre_c_init (void);
64static void __cdecl pre_cpp_init (void);
65_CRTALLOC(".CRT$XIAA") _PIFV __mingw_pcinit = pre_c_init;
66_CRTALLOC(".CRT$XCAA") _PVFV __mingw_pcppinit = pre_cpp_init;
69EXCEPTION_DISPOSITION __cdecl __mingw_SEH_error_handler (struct _EXCEPTION_RECORD *, void *, struct _CONTEXT *, void *);
70#if defined(__x86_64__) && !defined(SEH_INLINE_ASM)
71int __mingw_init_ehandler (void);
72#endif
73static int duplicate_ppstrings (int ac, _TCHAR ***av);
6774
6875extern int _MINGW_INSTALL_DEBUG_MATHERR;
6976
......@@ -85,112 +92,58 @@ __mingw_invalidParameterHandler (const wchar_t * __UNUSED_PARAM_1(expression),
8592#endif
8693}
8794
88static int __cdecl
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;
95#define GCC_MAGIC (('G' << 16) | ('C' << 8) | 'C' | (1U << 29))
10096
101#ifdef _UNICODE
102 ret = _wsetargv();
103#else
104 ret = _setargv();
97#if defined(__i386__) || defined(_X86_)
98/* We need to make sure that we align the stack to 16 bytes for the sake of SSE */
99__attribute__((force_align_arg_pointer))
105100#endif
106 if (ret < 0)
107 _amsg_exit(8); /* _RT_SPACEARG */
108 if (_MINGW_INSTALL_DEBUG_MATHERR == 1)
109 {
110 __setusermatherr (_matherr);
111 }
112
113 if (__globallocalestatus == -1)
114 {
115 }
116 return 0;
101static LONG WINAPI
102cpp_unhandled_exception_filter (EXCEPTION_POINTERS *exception_data)
103{
104 /* C++ gcc SEH exception is thrown by the libgcc __cxa_throw() function
105 * (which calls _Unwind_RaiseException()) or _Unwind_ForcedUnwind() function
106 * as a normal continuable SEH exception with the STATUS_GCC_THROW (0x20474343)
107 * or STATUS_GCC_FORCED (0x22474343) exception code via the WinAPI RaiseException()
108 * call. Both _Unwind_RaiseException() and _Unwind_ForcedUnwind() are expected
109 * to return back to the caller (for example __cxa_throw()) if the exception
110 * was not handled. So if the gcc SEH exception reaches the application
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;
117123}
118124
119static void __cdecl
120pre_cpp_init (void)
125static void
126safe_flush (void)
121127{
122 _startupinfo startinfo;
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 */
128 fflush (NULL);
134129}
135130
136131static int __tmainCRTStartup (void);
137132
138133int WinMainCRTStartup (void);
139
140134__attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30300 */
141135int WinMainCRTStartup (void)
142136{
143 int ret = 255;
144#ifdef SEH_INLINE_ASM
145 asm ("\t.l_startw:\n");
146#endif
147137 __mingw_app_type = 1;
148 ret = __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;
138 return __tmainCRTStartup ();
163139}
164140
165141int mainCRTStartup (void);
166
167#if defined(__x86_64__) && !defined(__SEH__)
168int __mingw_init_ehandler (void);
169#endif
170
171142__attribute__((used)) /* required due to GNU LD bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30300 */
172143int mainCRTStartup (void)
173144{
174 int ret = 255;
175#ifdef SEH_INLINE_ASM
176 asm ("\t.l_start:\n");
177#endif
178145 __mingw_app_type = 0;
179 ret = __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;
146 return __tmainCRTStartup ();
194147}
195148
196149static
......@@ -202,9 +155,27 @@ __attribute__((force_align_arg_pointer))
202155__declspec(noinline) int
203156__tmainCRTStartup (void)
204157{
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
205174 void *lock_free = NULL;
206175 void *fiberid = ((PNT_TIB)NtCurrentTeb())->StackBase;
207176 BOOL nested = FALSE;
177 _startupinfo startinfo;
178 int ret = 0;
208179 while((lock_free = InterlockedCompareExchangePointer (&__native_startup_lock,
209180 fiberid, NULL)) != 0)
210181 {
......@@ -222,48 +193,97 @@ __tmainCRTStartup (void)
222193 else if (__native_startup_state == __uninitialized)
223194 {
224195 __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
225241 if (_initterm_e (__xi_a, __xi_z) != 0)
226 return 255;
227 }
228 else
229 has_cctor = 1;
242 _amsg_exit (10); /* _RT_ABORT */
230243
231 if (__native_startup_state == __initializing)
232 {
244 startinfo.newmode = _newmode;
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);
233258 _initterm (__xc_a, __xc_z);
259 __main (); /* C++ initialization. */
260
234261 __native_startup_state = __initialized;
235262 }
236 _ASSERTE(__native_startup_state == __initialized);
263 else
264 has_cctor = 1;
237265 if (! nested)
238266 (VOID)InterlockedExchangePointer (&__native_startup_lock, NULL);
239267
240268 if (__dyn_tls_init_callback != NULL)
241269 __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. */
254271#ifdef _UNICODE
255272 __winitenv = envp;
256273#else
257274 __initenv = envp;
258275#endif
259 mainret = _tmain (argc, argv, envp);
276 ret = _tmain (argc, argv, envp);
260277 if (!managedapp)
261 exit (mainret);
278 exit (ret);
262279
263280 if (has_cctor == 0)
264281 _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;
267287}
268288
269289extern int __mingw_initltsdrot_force;
......@@ -307,21 +327,24 @@ check_managed_app (void)
307327 return 0;
308328}
309329
310static void duplicate_ppstrings (int ac, _TCHAR ***av)
330static int duplicate_ppstrings (int ac, _TCHAR ***av)
311331{
312332 _TCHAR **avl;
313333 int i;
314334 _TCHAR **n = (_TCHAR **) malloc (sizeof (_TCHAR *) * (ac + 1));
335 if (!n) return 1;
315336
316337 avl=*av;
317338 for (i=0; i < ac; i++)
318339 {
319340 size_t l = sizeof (_TCHAR) * (_tcslen (avl[i]) + 1);
320341 n[i] = (_TCHAR *) malloc (l);
342 if (!n[i]) return 1;
321343 memcpy (n[i], avl[i], l);
322344 }
323345 n[i] = NULL;
324346 *av = n;
347 return 0;
325348}
326349
327350int __cdecl atexit (_PVFV func)
lib/libc/mingw/crt/crtexewin.c+1-5
......@@ -7,10 +7,6 @@
77#include <tchar.h>
88#include <corecrt_startup.h>
99
10#ifndef _UNICODE
11#include <mbctype.h>
12#endif
13
1410#define SPACECHAR _T(' ')
1511#define DQUOTECHAR _T('\"')
1612
......@@ -40,7 +36,7 @@ int _tmain (int __UNUSED_PARAM(argc),
4036 if (*lpCmdLine == DQUOTECHAR)
4137 inDoubleQuote = !inDoubleQuote;
4238#ifndef _UNICODE
43 if (_ismbblead (*lpCmdLine))
39 if (IsDBCSLeadByte (*lpCmdLine))
4440 {
4541 if (lpCmdLine[1])
4642 ++lpCmdLine;
lib/libc/mingw/crt/gccmain.c+1
......@@ -49,6 +49,7 @@ __do_global_ctors (void)
4949
5050static int initialized = 0;
5151
52__attribute__((used)) /* required for gcc -flto -Ofast */
5253void
5354__main (void)
5455{
lib/libc/mingw/crt/pseudo-reloc.c+2-6
......@@ -141,8 +141,7 @@ __report_error (const char *msg, ...)
141141 cygwin_internal (CW_EXIT_PROCESS,
142142 STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION,
143143 1);
144 /* not reached, but silences noreturn warning */
145 abort ();
144 __builtin_unreachable ();
146145#else
147146 va_list argp;
148147 va_start (argp, msg);
......@@ -196,7 +195,6 @@ mark_section_writable (LPVOID addr)
196195 if (!h)
197196 {
198197 __report_error ("Address %p has no image-section", addr);
199 return;
200198 }
201199 the_secs[i].hash = h;
202200 the_secs[i].old_protect = 0;
......@@ -206,7 +204,6 @@ mark_section_writable (LPVOID addr)
206204 {
207205 __report_error (" VirtualQuery failed for %d bytes at address %p",
208206 (int) h->Misc.VirtualSize, the_secs[i].sec_start);
209 return;
210207 }
211208
212209 if (b.Protect != PAGE_EXECUTE_READWRITE && b.Protect != PAGE_READWRITE
......@@ -380,7 +377,6 @@ do_pseudo_reloc (void * start, void * end, void * base)
380377 {
381378 __report_error (" Unknown pseudo relocation protocol version %d.\n",
382379 (int) v2_hdr->version);
383 return;
384380 }
385381
386382 /*************************
......@@ -480,7 +476,7 @@ do_pseudo_reloc (void * start, void * end, void * base)
480476 }
481477}
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 */
484480void
485481_pei386_runtime_relocator (void)
486482{
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)
6464ADD_UNDERSCORE(fileno)
6565; ADD_UNDERSCORE(flushall)
6666ADD_UNDERSCORE(fputchar)
67#ifdef FIXED_SIZE_SYMBOLS
68#ifndef CRTDLL
69ADD_UNDERSCORE(fstat)
70#endif
71#else
67#if defined(UCRTBASE)
7268F32(fstat == _fstat32)
7369F64(fstat == _fstat64i32)
74#endif
75#ifdef FIXED_SIZE_SYMBOLS
76ADD_UNDERSCORE(ftime)
7770#else
78F32(ftime == _ftime32)
79F64(ftime == _ftime64)
71; fstat for non-UCRT is provided by mingw to workaround S_IFDIR issue in _fstat
8072#endif
73; ftime is provided in misc/ftime32.c or misc/ftime64.c as MS _ftime is not ABI compatible with POSIX ftime
8174#if defined(UCRTBASE)
8275; HUGE alias and _HUGE variable are provided by math/_huge.c
8376#elif defined(CRTDLL)
......@@ -232,7 +225,7 @@ ADD_UNDERSCORE(wcsupr)
232225#ifdef UCRTBASE
233226; hypot is natively exported from UCRT
234227#else
235ADD_UNDERSCORE(hypot)
228; hypot is provided by math/hypot.c as a wrapper around _hypot
236229#endif
237230ADD_UNDERSCORE(j0)
238231ADD_UNDERSCORE(j1)
......@@ -248,9 +241,6 @@ getwchar == _fgetwchar
248241putwc == fputwc
249242putwchar == _fputwchar
250243#endif
251#ifdef USE_WCSTOK_S_FOR_WCSTOK
252wcstok == wcstok_s
253#endif
254244
255245; This is list of symbol aliases for C99 functions
256246; ADD_UNDERSCORE(logb)
......@@ -292,29 +282,46 @@ ADD_DOUBLE_UNDERSCORE(toascii)
292282ADD_UNDERSCORE(pclose)
293283ADD_UNDERSCORE(popen)
294284#endif
285fseeko == fseek
286ftello == ftell
287ftruncate == _chsize
295288; ADD_UNDERSCORE(scalb)
296289
297290; 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
298299#ifndef NO_FPOS64_ALIASES
299300; fgetpos and fsetpos are already 64-bit
300301fgetpos64 == fgetpos
301302fsetpos64 == fsetpos
303lseek64 == _lseeki64
302304#endif
303305#ifdef UCRTBASE
306fstat32 == _fstat32
307fstat32i64 == _fstat32i64
308fstat64 == _fstat64
309fstat64i32 == _fstat64i32
304310stat32 == _stat32
305311stat32i64 == _stat32i64
306312stat64 == _stat64
307313stat64i32 == _stat64i32
308314#else
315; fstat for non-UCRT is provided by mingw to workaround S_IFDIR issue in _fstat
309316; stat for non-UCRT is provided by mingw to workaround trailing slash issue in _stat
310317#endif
311318#ifdef FIXED_SIZE_SYMBOLS
312// NO_FIXED_SIZE_64_ALIAS means that DLL provides the native _fstat64 symbol
313#if defined(NO_FIXED_SIZE_64_ALIAS) && !defined(NO_FSTAT64_ALIAS)
314fstat64 == _fstat64
319#ifdef WITH_FSEEKO64_ALIAS
320fseeko64 == _fseeki64
315321#endif
316322#else
317fstat64 == _fstat64
323fseeko64 == _fseeki64
324ftello64 == _ftelli64
318325#endif
319326
320327; This is list of symbol aliases for GNU functions which are not part of POSIX or ISO C
......@@ -325,6 +332,25 @@ strncasecmp == _strnicmp
325332; Some symbols in some version of CRT library were added and some other symbols were removed or renamed
326333; 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
328354#ifndef NO_STRCMPI_ALIAS
329355_strcmpi == _stricmp
330356#endif
......@@ -551,6 +577,7 @@ __p__daylight == __daylight
551577__p__dstbias == __dstbias
552578__p__timezone == __timezone
553579__p__tzname == __tzname
580_XcptFilter == _seh_filter_exe
554581#endif
555582
556583; 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 @@
1616#define F64(x) x
1717#define F_X64(x) x
1818#define F_X86_ANY(x) x
19#define F_X86_NATIVE(x) x
1920#define F_NON_I386(x) x
2021#define F_NON_ARM64(x) x
22#if defined(__arm64ec__)
23#define F_ARM_ANY(x) x
24#undef F_X86_NATIVE
25#endif
2126#elif defined(__i386__)
2227#define F32(x) x
2328#define F_I386(x) x
2429#define F_X86_ANY(x) x
30#define F_X86_NATIVE(x) x
2531#define F_NON_X64(x) x
2632#define F_NON_ARM64(x) x
2733#elif defined(__arm__)
2834#define F32(x) x
2935#define F_ARM32(x) x
30#define F_ARM_ANY(x) x
36#define F_ARM_NATIVE(x) x
3137#define F_NON_I386(x) x
3238#define F_NON_X64(x) x
3339#define F_NON_ARM64(x) x
3440#elif defined(__aarch64__)
3541#define F64(x) x
3642#define F_ARM64(x) x
37#define F_ARM_ANY(x) x
43#define F_ARM_NATIVE(x) x
3844#define F_NON_I386(x) x
3945#define F_NON_X64(x) x
4046#else
41#error No DEF_<ARCH> is defined
47#error Unrecognized architecture
4248#endif
4349
4450#ifndef F32
......@@ -50,14 +56,20 @@
5056#ifndef F_X86_ANY
5157#define F_X86_ANY(x)
5258#endif
59#ifndef F_X86_NATIVE(x)
60#define F_X86_NATIVE(x)
61#endif
5362#ifndef F_I386
5463#define F_I386(x)
5564#endif
5665#ifndef F_X64
5766#define F_X64(x)
5867#endif
68#ifndef F_ARM_NATIVE
69#define F_ARM_NATIVE(x)
70#endif
5971#ifndef F_ARM_ANY
60#define F_ARM_ANY(x)
72#define F_ARM_ANY(x) F_ARM_NATIVE(x)
6173#endif
6274#ifndef F_ARM32
6375#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
109109 */
110110
111111 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,
113113 spec_case, try_quick;
114114 Long L;
115115#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)
172172 char *rv;
173173 int i, j;
174174 size_t L;
175 static char Hexdig[16] = "0123456789abcdef";
175 static char Hexdig[17] = "0123456789abcdef";
176176
177177 while(!bits[--nb])
178178 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 @@
66
77#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
159/* Reference list of existing section for msvcrt. */
16#pragma section(".CRTMP$XCA",long,_ATTRIBUTES)
17#pragma section(".CRTMP$XCZ",long,_ATTRIBUTES)
18#pragma section(".CRTMP$XIA",long,_ATTRIBUTES)
19#pragma section(".CRTMP$XIZ",long,_ATTRIBUTES)
10#pragma section(".CRTMP$XCA", long, read)
11#pragma section(".CRTMP$XCZ", long, read)
12#pragma section(".CRTMP$XIA", long, read)
13#pragma section(".CRTMP$XIZ", long, read)
2014
21#pragma section(".CRTMA$XCA",long,_ATTRIBUTES)
22#pragma section(".CRTMA$XCZ",long,_ATTRIBUTES)
23#pragma section(".CRTMA$XIA",long,_ATTRIBUTES)
24#pragma section(".CRTMA$XIZ",long,_ATTRIBUTES)
15#pragma section(".CRTMA$XCA", long, read)
16#pragma section(".CRTMA$XCZ", long, read)
17#pragma section(".CRTMA$XIA", long, read)
18#pragma section(".CRTMA$XIZ", long, read)
2519
26#pragma section(".CRTVT$XCA",long,_ATTRIBUTES)
27#pragma section(".CRTVT$XCZ",long,_ATTRIBUTES)
20#pragma section(".CRTVT$XCA", long, read)
21#pragma section(".CRTVT$XCZ", long, read)
2822
29#pragma section(".CRT$XCA",long,_ATTRIBUTES)
30#pragma section(".CRT$XCAA",long,_ATTRIBUTES)
31#pragma section(".CRT$XCC",long,_ATTRIBUTES)
32#pragma section(".CRT$XCZ",long,_ATTRIBUTES)
33#pragma section(".CRT$XDA",long,_ATTRIBUTES)
34#pragma section(".CRT$XDC",long,_ATTRIBUTES)
35#pragma section(".CRT$XDZ",long,_ATTRIBUTES)
36#pragma section(".CRT$XIA",long,_ATTRIBUTES)
37#pragma section(".CRT$XIAA",long,_ATTRIBUTES)
38#pragma section(".CRT$XIC",long,_ATTRIBUTES)
39#pragma section(".CRT$XID",long,_ATTRIBUTES)
40#pragma section(".CRT$XIY",long,_ATTRIBUTES)
41#pragma section(".CRT$XIZ",long,_ATTRIBUTES)
42#pragma section(".CRT$XLA",long,_ATTRIBUTES)
43#pragma section(".CRT$XLC",long,_ATTRIBUTES)
44#pragma section(".CRT$XLD",long,_ATTRIBUTES)
45#pragma section(".CRT$XLZ",long,_ATTRIBUTES)
46#pragma section(".CRT$XPA",long,_ATTRIBUTES)
47#pragma section(".CRT$XPX",long,_ATTRIBUTES)
48#pragma section(".CRT$XPXA",long,_ATTRIBUTES)
49#pragma section(".CRT$XPZ",long,_ATTRIBUTES)
50#pragma section(".CRT$XTA",long,_ATTRIBUTES)
51#pragma section(".CRT$XTB",long,_ATTRIBUTES)
52#pragma section(".CRT$XTX",long,_ATTRIBUTES)
53#pragma section(".CRT$XTZ",long,_ATTRIBUTES)
54#pragma section(".rdata$T",long,read)
55#pragma section(".rtc$IAA",long,read)
56#pragma section(".rtc$IZZ",long,read)
57#pragma section(".rtc$TAA",long,read)
58#pragma section(".rtc$TZZ",long,read)
23#pragma section(".CRT$XCA", long, read)
24#pragma section(".CRT$XCAA", long, read)
25#pragma section(".CRT$XCC", long, read)
26#pragma section(".CRT$XCZ", long, read)
27#pragma section(".CRT$XDA", long, read)
28#pragma section(".CRT$XDC", long, read)
29#pragma section(".CRT$XDZ", long, read)
30#pragma section(".CRT$XIA", long, read)
31#pragma section(".CRT$XIAA", long, read)
32#pragma section(".CRT$XIC", long, read)
33#pragma section(".CRT$XID", long, read)
34#pragma section(".CRT$XIY", long, read)
35#pragma section(".CRT$XIZ", long, read)
36#pragma section(".CRT$XLA", long, read)
37#pragma section(".CRT$XLC", long, read)
38#pragma section(".CRT$XLD", long, read)
39#pragma section(".CRT$XLZ", long, read)
40#pragma section(".CRT$XPA", long, read)
41#pragma section(".CRT$XPX", long, read)
42#pragma section(".CRT$XPXA", long, read)
43#pragma section(".CRT$XPZ", long, read)
44#pragma section(".CRT$XTA", long, read)
45#pragma section(".CRT$XTB", long, read)
46#pragma section(".CRT$XTX", long, read)
47#pragma section(".CRT$XTZ", long, read)
48#pragma section(".rdata$T", long, read)
49#pragma section(".rtc$IAA", long, read)
50#pragma section(".rtc$IZZ", long, read)
51#pragma section(".rtc$TAA", long, read)
52#pragma section(".rtc$TZZ", long, read)
5953/* for tlssup.c: */
60#pragma section(".tls",long,read,write)
61#pragma section(".tls$AAA",long,read,write)
62#pragma section(".tls$ZZZ",long,read,write)
54#pragma section(".tls", long)
55#pragma section(".tls$AAA", long)
56#pragma section(".tls$ZZZ", long)
6357#endif /* _MSC_VER */
6458
6559#if defined(_MSC_VER)
......@@ -69,4 +63,3 @@
6963#else
7064#error Your compiler is not supported.
7165#endif
72
lib/libc/mingw/lib-common/api-ms-win-crt-convert-l1-1-0.def.in+2-2
......@@ -93,7 +93,7 @@ atof
9393atoi
9494atol
9595atoll
96btowc
96; btowc ; replaced for consistency with wctob
9797c16rtomb
9898c32rtomb
9999mbrtoc16
......@@ -128,7 +128,7 @@ wcstombs_s
128128wcstoul
129129wcstoull
130130wcstoumax
131wctob
131; wctob ; replaced, CRT version may sign-extend its return value
132132wctomb
133133wctomb_s
134134wctrans
lib/libc/mingw/lib-common/api-ms-win-crt-filesystem-l1-1-0.def.in+3
......@@ -37,10 +37,13 @@ F64(_fstat == _fstat64i32)
3737F32(_fstati64 == _fstat32i64)
3838F64(_fstati64 == _fstat64)
3939_fstat32
40fstat32 == _fstat32
4041_fstat32i64
42fstat32i64 == _fstat32i64
4143_fstat64
4244fstat64 == _fstat64
4345_fstat64i32
46fstat64i32 == _fstat64i32
4447_fullpath
4548_getdiskfree
4649_getdrive
lib/libc/mingw/lib-common/api-ms-win-crt-math-l1-1-0.def.in+1-1
......@@ -266,7 +266,7 @@ expm1
266266expm1f
267267F_LD64(expm1l) ; Can't use long double functions from the CRT on x86
268268fabs
269F_ARM_ANY(fabsf)
269F_ARM_NATIVE(fabsf)
270270fdim
271271fdimf
272272F_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
1212F_X64(_GetImageBase)
1313F_X64(_GetThrowImageBase)
1414_IsExceptionObjectToBeDestroyed
15F_I386(_NLG_Dispatch2@4)
16F_I386(_NLG_Return@12)
15F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4)
16F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12)
1717F_I386(_NLG_Return2)
1818F_X64(_SetImageBase)
1919F_X64(_SetThrowImageBase)
......@@ -46,7 +46,9 @@ __dcrt_get_wide_environment_from_os
4646__dcrt_initial_narrow_environment DATA
4747F_I386(__intrinsic_abnormal_termination)
4848F_NON_ARM64(__intrinsic_setjmp)
49F_NON_ARM64(_setjmp == __intrinsic_setjmp)
4950F64(__intrinsic_setjmpex)
51F64(_setjmpex == __intrinsic_setjmpex)
5052__processing_throw
5153__report_gsfailure
5254__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
2424__wcserror
2525__wcserror_s
2626; DATA set manually
27_assert
27__msvcrt_assert DATA == _assert ; mingw-w64 provides _assert() function as wrapper around renamed __msvcrt_assert symbol
2828_beginthread
2929_beginthreadex
3030_c_exit
......@@ -73,6 +73,7 @@ _register_thread_local_exe_atexit_callback
7373_resetstkoflw
7474_seh_filter_dll
7575_seh_filter_exe
76_XcptFilter == _seh_filter_exe
7677_set_abort_behavior
7778_set_app_type
7879__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
2525__stdio_common_vswscanf
2626_chsize
2727chsize == _chsize
28ftruncate == _chsize
2829_chsize_s
2930_close
3031close == _close
3132_commit
3233_creat
3334creat == _creat
35creat64 == _creat
3436_dup
3537dup == _dup
3638_dup2
......@@ -63,10 +65,12 @@ _fread_nolock
6365_fread_nolock_s
6466_fseek_nolock
6567_fseeki64
68fseeko64 == _fseeki64
6669_fseeki64_nolock
6770_fsopen
6871_ftell_nolock
6972_ftelli64
73ftello64 == _ftelli64
7074_ftelli64_nolock
7175_fwrite_nolock
7276_get_fmode
......@@ -91,11 +95,13 @@ _locking
9195_lseek
9296lseek == _lseek
9397_lseeki64
98lseek64 == _lseeki64
9499_mktemp
95100mktemp == _mktemp
96101_mktemp_s
97102_open
98103open == _open
104open64 == _open
99105_open_osfhandle
100106_pclose
101107pclose == _pclose
......@@ -160,6 +166,7 @@ fgets
160166fgetwc
161167fgetws
162168fopen
169fopen64 == fopen
163170fopen_s
164171fputc
165172fputs
......@@ -168,11 +175,14 @@ fputws
168175fread
169176fread_s
170177freopen
178freopen64 == freopen
171179freopen_s
172180fseek
181fseeko == fseek
173182fsetpos
174183fsetpos64 == fsetpos
175184ftell
185ftello == ftell
176186fwrite
177187getc
178188getchar
......@@ -189,6 +199,7 @@ rewind
189199setbuf
190200setvbuf
191201tmpfile
202tmpfile64 == tmpfile
192203tmpfile_s
193204tmpnam
194205tmpnam_s
lib/libc/mingw/lib-common/api-ms-win-crt-string-l1-1-0.def+2-2
......@@ -147,7 +147,7 @@ iswalpha
147147iswascii
148148iswblank
149149iswcntrl
150iswctype
150__msvcrt_iswctype DATA == iswctype ; mingw-w64 provides real iswctype as a wrapper around renamed __msvcrt_iswctype
151151iswdigit
152152iswgraph
153153iswlower
......@@ -183,7 +183,7 @@ strtok_s
183183strxfrm
184184tolower
185185toupper
186towctrans
186__msvcrt_towctrans DATA == towctrans ; mingw-w64 provides real towctrans as a wrapper around renamed __msvcrt_towctrans
187187towlower
188188towupper
189189wcscat
lib/libc/mingw/lib-common/kernel32.def.in+7
......@@ -203,6 +203,8 @@ CreateActCtxWWorker
203203CreateBoundaryDescriptorA
204204CreateBoundaryDescriptorW
205205CreateConsoleScreenBuffer
206CreateDirectory2A
207CreateDirectory2W
206208CreateDirectoryA
207209CreateDirectoryExA
208210CreateDirectoryExW
......@@ -217,6 +219,7 @@ CreateEventW
217219CreateFiber
218220CreateFiberEx
219221CreateFile2
222CreateFile3
220223CreateFileA
221224CreateFileMappingA
222225CreateFileMappingFromApp
......@@ -302,6 +305,8 @@ DeleteAtom
302305DeleteBoundaryDescriptor
303306DeleteCriticalSection
304307DeleteFiber
308DeleteFile2A
309DeleteFile2W
305310DeleteFileA
306311DeleteFileTransactedA
307312DeleteFileTransactedW
......@@ -1290,6 +1295,8 @@ ReleaseSRWLockExclusive
12901295ReleaseSRWLockShared
12911296ReleaseSemaphore
12921297ReleaseSemaphoreWhenCallbackReturns
1298RemoveDirectory2A
1299RemoveDirectory2W
12931300RemoveDirectoryA
12941301RemoveDirectoryTransactedA
12951302RemoveDirectoryTransactedW
lib/libc/mingw/lib-common/ntdll.def.in+7-7
......@@ -228,7 +228,7 @@ LdrSetMUICacheType
228228LdrShutdownProcess
229229LdrShutdownThread
230230LdrStandardizeSystemPath
231LdrSystemDllInitBlock F_ARM_ANY(DATA)
231LdrSystemDllInitBlock DATA
232232LdrUnloadAlternateResourceModule
233233LdrUnloadAlternateResourceModuleEx
234234LdrUnloadDll
......@@ -455,7 +455,7 @@ NtLoadDriver
455455NtLoadEnclaveData
456456NtLoadKey
457457NtLoadKey2
458F_ARM_ANY(NtLoadKey3)
458NtLoadKey3
459459NtLoadKeyEx
460460NtLockFile
461461NtLockProductActivationKeys
......@@ -1643,8 +1643,8 @@ F_X86_ANY(RtlUTF8StringToUnicodeString)
16431643RtlUTF8ToUnicodeN
16441644RtlUdiv128
16451645F_X64(RtlUmsThreadYield)
1646F_ARM_ANY(RtlUlongByteSwap)
1647F_ARM_ANY(RtlUlonglongByteSwap)
1646F_ARM_NATIVE(RtlUlongByteSwap)
1647F_ARM_NATIVE(RtlUlonglongByteSwap)
16481648RtlUnhandledExceptionFilter
16491649RtlUnhandledExceptionFilter2
16501650RtlUnicodeStringToAnsiSize
......@@ -1690,7 +1690,7 @@ RtlUpperString
16901690F_X86_ANY(RtlUsageHeap)
16911691RtlUserFiberStart
16921692RtlUserThreadStart
1693F_ARM_ANY(RtlUshortByteSwap)
1693F_ARM_NATIVE(RtlUshortByteSwap)
16941694RtlValidAcl
16951695RtlValidProcessProtection
16961696RtlValidRelativeSecurityDescriptor
......@@ -1758,7 +1758,7 @@ RtlpConvertRelativeToAbsoluteSecurityAttribute
17581758RtlpCreateProcessRegistryInfo
17591759RtlpEnsureBufferSize
17601760F_X64(RtlpExecuteUmsThread)
1761RtlpFreezeTimeBias F_ARM_ANY(DATA)
1761RtlpFreezeTimeBias DATA
17621762RtlpGetDeviceFamilyInfoEnum
17631763RtlpGetLCIDFromLangInfoNode
17641764RtlpGetNameFromLangInfoNode
......@@ -2114,7 +2114,7 @@ ZwLoadDriver
21142114ZwLoadEnclaveData
21152115ZwLoadKey
21162116ZwLoadKey2
2117F_ARM_ANY(ZwLoadKey3)
2117ZwLoadKey3
21182118ZwLoadKeyEx
21192119ZwLockFile
21202120ZwLockProductActivationKeys
lib/libc/mingw/lib-common/ntdllcrt.def.in+168-140
......@@ -1,225 +1,253 @@
11#include "func.def.in"
22
3LIBRARY "ntdll.dll"
3LIBRARY "NTDLL.dll"
44EXPORTS
5#ifdef __i386__
6_CIcos
7_CIlog
8_CIpow
9_CIsin
10_CIsqrt
11#endif
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)
5
6; This is list of symbols available since Windows NT 3.5
7; Windows NT 3.1, Win32s and Win9x versions do not contain any CRT symbol
8F_I386(_CIpow)
9; _abnormal_termination ; removed in Windows NT 3.51
10; F_I386(_chkstk)
11; _except_handler2 ; removed in Windows NT 3.51
4112_fltused DATA
42#ifdef __i386__
43_ftol
44_ftol2
45_ftol2_sse
46#endif
47_i64toa
48_i64toa_s
49_i64tow
50_i64tow_s
13F_I386(_ftol)
14; _global_unwind2 ; removed in Windows NT 3.51
5115_itoa
52_itoa_s
53_itow
54_itow_s
55_lfind
56F64(_local_unwind)
57F_I386(_local_unwind4)
16; _local_unwind2 ; removed in Windows NT 3.51
5817_ltoa
59_ltoa_s
60_ltow
61_ltow_s
62_makepath_s
6318_memccpy
6419_memicmp
65F_X64(_setjmp)
66F_ARM32(_setjmp)
67F_NON_I386(_setjmpex)
6820_snprintf
69_snprintf_s
70_snscanf_s
7121_snwprintf
72_snwprintf_s
73_snwscanf_s
7422_splitpath
75_splitpath_s
7623_strcmpi
7724_stricmp
7825_strlwr
79strlwr == _strlwr
80_strlwr_s
26strlwr == _strlwr ; manual alias
8127_strnicmp
82_strnset_s
83_strset_s
8428_strupr
85_strupr_s
86_swprintf
87F_X86_ANY(_tolower)
88F_X86_ANY(_toupper)
89_ui64toa
90_ui64toa_s
91_ui64tow
92_ui64tow_s
9329_ultoa
94_ultoa_s
95_ultow
96_ultow_s
97_vscprintf
98_vscwprintf
9930_vsnprintf
100_vsnprintf_s
101_vsnwprintf
102_vsnwprintf_s
103_vswprintf
10431_wcsicmp
10532_wcslwr
106wcslwr == _wcslwr
107_wcslwr_s
33wcslwr == _wcslwr ; manual alias
10834_wcsnicmp
109_wcsnset_s
110_wcsset_s
111_wcstoi64
112_wcstoui64
11335_wcsupr
114_wcsupr_s
115_wmakepath_s
116_wsplitpath_s
117_wtoi
118_wtoi64
119_wtol
12036abs
121atan F_X86_ANY(DATA)
122atan2
37atan F_X86_ANY(DATA) ; replaced by emu
12338atoi
12439atol
125bsearch
126bsearch_s
12740ceil
128cos F_X86_ANY(DATA)
129fabs F_X86_ANY(DATA)
130floor F_X86_ANY(DATA)
131isalnum
41cos F_X86_ANY(DATA) ; replaced by emu
42fabs F_X86_ANY(DATA) ; replaced by emu
43floor F_X86_ANY(DATA) ; replaced by emu
13244isalpha
133iscntrl
13445isdigit
135isgraph
13646islower
13747isprint
138ispunct
13948isspace
14049isupper
141iswalnum
14250iswalpha
143iswascii
14451iswctype
145iswdigit
146iswgraph
147iswlower
148iswprint
149iswspace
150iswxdigit
15152isxdigit
15253labs
15354log
154F_NON_I386(longjmp)
15555mbstowcs
15656memchr
15757memcmp
15858memcpy
159memcpy_s
16059memmove
161memmove_s
16260memset
16361pow
16462qsort
165qsort_s
16663sin
16764sprintf
168sprintf_s
16965sqrt
17066sscanf
171sscanf_s
17267strcat
173strcat_s
17468strchr
17569strcmp
17670strcpy
177strcpy_s
17871strcspn
17972strlen
18073strncat
181strncat_s
18274strncmp
18375strncpy
184strncpy_s
185strnlen
18676strpbrk
18777strrchr
18878strspn
18979strstr
190strtok_s
191strtol
192strtoul
19380swprintf
194swprintf_s
195swscanf_s
19681tan
19782tolower
19883toupper
19984towlower
20085towupper
20186vsprintf
202vsprintf_s
203vswprintf_s
20487wcscat
205wcscat_s
20688wcschr
20789wcscmp
20890wcscpy
209wcscpy_s
21091wcscspn
21192wcslen
21293wcsncat
213wcsncat_s
21494wcsncmp
21595wcsncpy
216wcsncpy_s
217wcsnlen
21896wcspbrk
21997wcsrchr
22098wcsspn
22199wcsstr
222wcstok_s
100; wcstok ; removed in Windows NT 4.0
223101wcstol
224102wcstombs
225103wcstoul
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 @@
11;
22; Definition file of OLEACC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
3; Automatic generated by gendef 1.1
4; written by Kai Tietz 2008
5; The def file has to be processed by --kill-at (-k) option of dlltool or ld
56;
67LIBRARY "OLEACC.dll"
78EXPORTS
9;DllRegisterServer
10;DllUnregisterServer
811AccGetRunningUtilityState
912AccNotifyTouchInteraction
1013AccSetRunningUtilityState
......@@ -16,15 +19,17 @@ AccessibleObjectFromWindowTimeout
1619CreateStdAccessibleObject
1720CreateStdAccessibleProxyA
1821CreateStdAccessibleProxyW
22;DllCanUnloadNow
23;DllGetClassObject
1924GetOleaccVersionInfo
2025GetProcessHandleFromHwnd
2126GetRoleTextA
2227GetRoleTextW
2328GetStateTextA
2429GetStateTextW
25IID_IAccessible
26IID_IAccessibleHandler
27LIBID_Accessibility
30;IID_IAccessible DATA
31;IID_IAccessibleHandler DATA
32;LIBID_Accessibility DATA
2833LresultFromObject
2934ObjectFromLresult
3035PropMgrClient_LookupProp
lib/libc/mingw/lib-common/ucrtbase-common.def.in+9-9
......@@ -75,8 +75,8 @@ _IsExceptionObjectToBeDestroyed
7575_LCbuild
7676_LCmulcc
7777_LCmulcr
78F_I386(_NLG_Dispatch2@4)
79F_I386(_NLG_Return@12)
78F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4)
79F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12)
8080F_I386(_NLG_Return2)
8181F_X64(_SetImageBase)
8282F_X64(_SetThrowImageBase)
......@@ -246,7 +246,7 @@ _aligned_realloc
246246F_DEBUG(_aligned_realloc_dbg)
247247_aligned_recalloc
248248F_DEBUG(_aligned_recalloc_dbg)
249_assert
249__msvcrt_assert DATA == _assert ; mingw-w64 provides _assert() function as wrapper around renamed __msvcrt_assert symbol
250250_atodbl
251251_atodbl_l
252252_atof_l
......@@ -1656,7 +1656,7 @@ _o_exp2f
16561656F_LD64(_o_exp2l) ; Can't use long double functions from the CRT on x86
16571657F_NON_I386(_o_expf)
16581658_o_fabs
1659F_ARM_ANY(_o_fabsf)
1659F_ARM_NATIVE(_o_fabsf)
16601660_o_fclose
16611661_o_feof
16621662_o_ferror
......@@ -2233,7 +2233,7 @@ atol
22332233atoll
22342234bsearch
22352235bsearch_s
2236btowc
2236; btowc ; replaced for consistency with wctob
22372237c16rtomb
22382238c32rtomb
22392239cabs
......@@ -2338,7 +2338,7 @@ expm1
23382338expm1f
23392339F_LD64(expm1l) ; Can't use long double functions from the CRT on x86
23402340fabs
2341F_ARM_ANY(fabsf)
2341F_ARM_NATIVE(fabsf)
23422342fclose
23432343fdim
23442344fdimf
......@@ -2424,7 +2424,7 @@ iswalpha
24242424iswascii
24252425iswblank
24262426iswcntrl
2427iswctype
2427__msvcrt_iswctype DATA == iswctype ; mingw-w64 provides real iswctype as a wrapper around renamed __msvcrt_iswctype
24282428iswdigit
24292429iswgraph
24302430iswlower
......@@ -2609,7 +2609,7 @@ tmpnam
26092609tmpnam_s
26102610tolower
26112611toupper
2612towctrans
2612__msvcrt_towctrans DATA == towctrans ; mingw-w64 provides real towctrans as a wrapper around renamed __msvcrt_towctrans
26132613towlower
26142614towupper
26152615trunc
......@@ -2656,7 +2656,7 @@ wcstoul
26562656wcstoull
26572657wcstoumax
26582658wcsxfrm
2659wctob
2659; wctob ; replaced, CRT version may sign-extend its return value
26602660wctomb
26612661wctomb_s
26622662wctrans
lib/libc/mingw/lib-common/vcruntime140-common.def.in+2-2
......@@ -4,8 +4,8 @@ F_NON_I386(_CxxThrowException)
44F_I386(_EH_prolog)
55_FindAndUnlinkFrame
66_IsExceptionObjectToBeDestroyed
7F_I386(_NLG_Dispatch2@4)
8F_I386(_NLG_Return@12)
7F_I386(_NLG_Dispatch2) ; msvc symbol is without decoration but callee pop stack (like stdcall @4)
8F_I386(_NLG_Return) ; msvc symbol is without decoration but callee pop stack (like stdcall @12)
99F_I386(_NLG_Return2)
1010_SetWinRTOutOfMemoryExceptionCallback
1111__AdjustPointer
lib/libc/mingw/lib32/advapi32.def+843-653
......@@ -1,369 +1,80 @@
1;
2; Definition file of ADVAPI32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
61LIBRARY "ADVAPI32.dll"
72EXPORTS
8ord_1000@8 @1000
9I_ScGetCurrentGroupStateW@12
10A_SHAFinal@8
11A_SHAInit@4
12A_SHAUpdate@12
3
4; This file is a comprehensive documentation for 32-bit x86 advapi32.dll symbols.
5; It covers all 3 platforms (Win32s, Win9x and WinNT) and contains information
6; from native advapi32.dll libraries on 32-bit Windows systems and also from
7; 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)
1322AbortSystemShutdownA@4
1423AbortSystemShutdownW@4
1524AccessCheck@32
1625AccessCheckAndAuditAlarmA@44
1726AccessCheckAndAuditAlarmW@44
18AccessCheckByType@44
19AccessCheckByTypeAndAuditAlarmA@64
20AccessCheckByTypeAndAuditAlarmW@64
21AccessCheckByTypeResultList@44
22AccessCheckByTypeResultListAndAuditAlarmA@64
23AccessCheckByTypeResultListAndAuditAlarmByHandleA@68
24AccessCheckByTypeResultListAndAuditAlarmByHandleW@68
25AccessCheckByTypeResultListAndAuditAlarmW@64
2627AddAccessAllowedAce@16
27AddAccessAllowedAceEx@20
28AddAccessAllowedObjectAce@28
2928AddAccessDeniedAce@16
30AddAccessDeniedAceEx@20
31AddAccessDeniedObjectAce@28
3229AddAce@20
3330AddAuditAccessAce@24
34AddAuditAccessAceEx@28
35AddAuditAccessObjectAce@36
36AddConditionalAce@32
37AddMandatoryAce@20
38AddUsersToEncryptedFile@8
39AddUsersToEncryptedFileEx@16
4031AdjustTokenGroups@24
4132AdjustTokenPrivileges@24
4233AllocateAndInitializeSid@44
4334AllocateLocallyUniqueId@4
4435AreAllAccessesGranted@8
4536AreAnyAccessesGranted@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
6837BackupEventLogA@8
6938BackupEventLogW@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
10239ChangeServiceConfigA@44
10340ChangeServiceConfigW@44
104CheckForHiberboot@8
105CheckTokenMembership@12
10641ClearEventLogA@8
10742ClearEventLogW@8
108CloseCodeAuthzLevel@4
109CloseEncryptedFileRaw@4
11043CloseEventLog@4
11144CloseServiceHandle@4
112CloseThreadWaitChainSession@4
113CloseTrace@8
114CommandLineFromMsiDescriptor@12
115ComputeAccessTokenFromCodeAuthzLevel@20
11645ControlService@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
14346CopySid@12
144CreateCodeAuthzLevel@20
14547CreatePrivateObjectSecurity@24
146CreatePrivateObjectSecurityEx@32
147CreatePrivateObjectSecurityWithMultipleInheritance@36
148CreateProcessAsUserA@44
149CreateProcessAsUserW@44
150CreateProcessWithLogonW@44
151CreateProcessWithTokenW@36
152CreateRestrictedToken@36
15348CreateServiceA@52
15449CreateServiceW@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
24350DeleteAce@8
24451DeleteService@4
24552DeregisterEventSource@4
24653DestroyPrivateObjectSecurity@4
247DuplicateEncryptionInfoFile@20
24854DuplicateToken@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
27855EnumDependentServicesA@24
27956EnumDependentServicesW@24
280EnumDynamicTimeZoneInformation@8
281EnumServiceGroupW@36
28257EnumServicesStatusA@32
283EnumServicesStatusExA@40
284EnumServicesStatusExW@40
28558EnumServicesStatusW@32
286EnumerateTraceGuids@12
287EnumerateTraceGuidsEx@24
288EqualDomainSid@12
28959EqualPrefixSid@8
29060EqualSid@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
30861FindFirstFreeAce@8
309FlushEfsCache@4
310FlushTraceA@16
311FlushTraceW@16
312FreeEncryptedFileKeyInfo@4
313FreeEncryptedFileMetadata@4
314FreeEncryptionCertificateHashList@4
315FreeInheritedFromArray@12
31662FreeSid@4
317GetAccessPermissionsForObjectA@36
318GetAccessPermissionsForObjectW@36
31963GetAce@12
32064GetAclInformation@16
321GetAuditedPermissionsFromAclA@16
322GetAuditedPermissionsFromAclW@16
323GetCurrentHwProfileA@4
324GetCurrentHwProfileW@4
325GetDynamicTimeZoneInformationEffectiveYears@12
326GetEffectiveRightsFromAclA@12
327GetEffectiveRightsFromAclW@12
328GetEncryptedFileMetadata@12
329GetEventLogInformation@20
330GetExplicitEntriesFromAclA@12
331GetExplicitEntriesFromAclW@12
33265GetFileSecurityA@20
33366GetFileSecurityW@20
334GetInformationCodeAuthzLevelW@20
335GetInformationCodeAuthzPolicyW@24
336GetInheritanceSourceA@40
337GetInheritanceSourceW@40
33867GetKernelObjectSecurity@20
33968GetLengthSid@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
35369GetNumberOfEventLogRecords@8
35470GetOldestEventLogRecord@8
355GetOverlappedAccessResults@16
35671GetPrivateObjectSecurity@20
35772GetSecurityDescriptorControl@12
35873GetSecurityDescriptorDacl@16
35974GetSecurityDescriptorGroup@12
36075GetSecurityDescriptorLength@4
36176GetSecurityDescriptorOwner@12
362GetSecurityDescriptorRMControl@8
36377GetSecurityDescriptorSacl@16
364GetSecurityInfo@32
365GetSecurityInfoExA@36
366GetSecurityInfoExW@36
36778GetServiceDisplayNameA@16
36879GetServiceDisplayNameW@16
36980GetServiceKeyNameA@16
......@@ -372,65 +83,20 @@ GetSidIdentifierAuthority@4
37283GetSidLengthRequired@4
37384GetSidSubAuthority@8
37485GetSidSubAuthorityCount@4
375GetStringConditionFromBinary@16
376GetSiteDirectoryA@12
377GetSiteDirectoryW@12
378GetSiteNameFromSid@8
379GetSiteSidFromToken@4
380GetSiteSidFromUrl@4
381GetThreadWaitChain@28
38286GetTokenInformation@20
383GetTraceEnableFlags@8
384GetTraceEnableLevel@8
385GetTraceLoggerHandle@4
386GetTrusteeFormA@4
387GetTrusteeFormW@4
388GetTrusteeNameA@4
389GetTrusteeNameW@4
390GetTrusteeTypeA@4
391GetTrusteeTypeW@4
39287GetUserNameA@8
39388GetUserNameW@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
40789ImpersonateNamedPipeClient@4
40890ImpersonateSelf@4
40991InitializeAcl@12
41092InitializeSecurityDescriptor@8
41193InitializeSid@12
412InitiateShutdownA@20
413InitiateShutdownW@20
41494InitiateSystemShutdownA@20
415InitiateSystemShutdownExA@24
416InitiateSystemShutdownExW@24
41795InitiateSystemShutdownW@20
418InstallApplication@4
419IsProcessRestricted@0
420IsTextUnicode@12
421IsTokenRestricted@4
422IsTokenUntrusted@4
42396IsValidAcl@4
424IsValidRelativeSecurityDescriptor@12
42597IsValidSecurityDescriptor@4
42698IsValidSid@4
427IsWellKnownSid@8
42899LockServiceDatabase@4
429LogonUserA@24
430LogonUserExA@40
431LogonUserExExW@44
432LogonUserExW@40
433LogonUserW@24
434100LookupAccountNameA@28
435101LookupAccountNameW@28
436102LookupAccountSidA@28
......@@ -441,115 +107,18 @@ LookupPrivilegeNameA@16
441107LookupPrivilegeNameW@16
442108LookupPrivilegeValueA@12
443109LookupPrivilegeValueW@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
532110MakeAbsoluteSD@44
533111MakeSelfRelativeSD@12
534112MapGenericMask@8
535113NotifyBootConfigStatus@4
536NotifyChangeEventLog@8
537NotifyServiceStatusChange@12
538NotifyServiceStatusChangeA@12
539NotifyServiceStatusChangeW@12
540NpGetUserName@12
541114ObjectCloseAuditAlarmA@12
542115ObjectCloseAuditAlarmW@12
543ObjectDeleteAuditAlarmA@12
544ObjectDeleteAuditAlarmW@12
545116ObjectOpenAuditAlarmA@48
546117ObjectOpenAuditAlarmW@48
547118ObjectPrivilegeAuditAlarmA@24
548119ObjectPrivilegeAuditAlarmW@24
549120OpenBackupEventLogA@8
550121OpenBackupEventLogW@8
551OpenEncryptedFileRawA@12
552OpenEncryptedFileRawW@12
553122OpenEventLogA@8
554123OpenEventLogW@8
555124OpenProcessToken@12
......@@ -558,97 +127,28 @@ OpenSCManagerW@12
558127OpenServiceA@12
559128OpenServiceW@12
560129OpenThreadToken@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
595130PrivilegeCheck@12
596131PrivilegedServiceAuditAlarmA@20
597132PrivilegedServiceAuditAlarmW@20
598ProcessIdleTasks@0
599ProcessIdleTasksW@16
600ProcessTrace@16
601QueryAllTracesA@12
602QueryAllTracesW@12
603QueryRecoveryAgentsOnEncryptedFile@8
604QuerySecurityAccessMask@8
605QueryServiceConfig2A@20
606QueryServiceConfig2W@20
607133QueryServiceConfigA@16
608134QueryServiceConfigW@16
609QueryServiceDynamicInformation@12
610135QueryServiceLockStatusA@16
611136QueryServiceLockStatusW@16
612137QueryServiceObjectSecurity@20
613138QueryServiceStatus@8
614QueryServiceStatusEx@20
615QueryTraceA@16
616QueryTraceProcessingHandle@32
617QueryTraceW@16
618QueryUsersOnEncryptedFile@8
619QueryWindows31FilesMigration@4
620ReadEncryptedFileRaw@12
621139ReadEventLogA@28
622140ReadEventLogW@28
623141RegCloseKey@4
624142RegConnectRegistryA@12
625RegConnectRegistryExA@16
626RegConnectRegistryExW@16
627143RegConnectRegistryW@12
628RegCopyTreeA@12
629RegCopyTreeW@12
630144RegCreateKeyA@12
631145RegCreateKeyExA@36
632146RegCreateKeyExW@36
633RegCreateKeyTransactedA@44
634RegCreateKeyTransactedW@44
635147RegCreateKeyW@12
636148RegDeleteKeyA@8
637149RegDeleteKeyW@8
638RegDeleteKeyExA@16
639RegDeleteKeyExW@16
640RegDeleteKeyTransactedA@24
641RegDeleteKeyTransactedW@24
642RegDeleteKeyValueA@12
643RegDeleteKeyValueW@12
644RegDeleteTreeA@8
645RegDeleteTreeW@8
646150RegDeleteValueA@8
647151RegDeleteValueW@8
648RegDisablePredefinedCache@0
649RegDisablePredefinedCacheEx@0
650RegDisableReflectionKey@4
651RegEnableReflectionKey@4
652152RegEnumKeyA@16
653153RegEnumKeyExA@32
654154RegEnumKeyExW@32
......@@ -657,45 +157,26 @@ RegEnumValueA@32
657157RegEnumValueW@32
658158RegFlushKey@4
659159RegGetKeySecurity@16
660RegGetValueA@28
661RegGetValueW@28
662RegLoadAppKeyA@20
663RegLoadAppKeyW@20
664160RegLoadKeyA@12
665161RegLoadKeyW@12
666RegLoadMUIStringA@28
667RegLoadMUIStringW@28
668162RegNotifyChangeKeyValue@20
669RegOpenCurrentUser@8
670163RegOpenKeyA@12
671164RegOpenKeyExA@20
672165RegOpenKeyExW@20
673RegOpenKeyTransactedA@28
674RegOpenKeyTransactedW@28
675166RegOpenKeyW@12
676RegOpenUserClassesRoot@16
677RegOverridePredefKey@8
678167RegQueryInfoKeyA@48
679168RegQueryInfoKeyW@48
680RegQueryMultipleValuesA@20
681RegQueryMultipleValuesW@20
682RegQueryReflectionKey@8
683169RegQueryValueA@16
684170RegQueryValueExA@24
685171RegQueryValueExW@24
686172RegQueryValueW@16
687RegRenameKey@12
688173RegReplaceKeyA@16
689174RegReplaceKeyW@16
690175RegRestoreKeyA@12
691176RegRestoreKeyW@12
692177RegSaveKeyA@12
693RegSaveKeyExA@16
694RegSaveKeyExW@16
695178RegSaveKeyW@12
696179RegSetKeySecurity@12
697RegSetKeyValueA@24
698RegSetKeyValueW@24
699180RegSetValueA@20
700181RegSetValueExA@24
701182RegSetValueExW@24
......@@ -704,88 +185,92 @@ RegUnLoadKeyA@8
704185RegUnLoadKeyW@8
705186RegisterEventSourceA@8
706187RegisterEventSourceW@8
707RegisterIdleTask@16
708188RegisterServiceCtrlHandlerA@8
709RegisterServiceCtrlHandlerExA@12
710RegisterServiceCtrlHandlerExW@12
711189RegisterServiceCtrlHandlerW@8
712RegisterTraceGuidsA@32
713RegisterTraceGuidsW@32
714RegisterWaitChainCOMCallback@8
715RemoteRegEnumKeyWrapper@20
716RemoteRegEnumValueWrapper@28
717RemoteRegQueryInfoKeyWrapper@40
718RemoteRegQueryMultipleValues2Wrapper@24
719RemoteRegQueryMultipleValuesWrapper@20
720RemoteRegQueryValueWrapper@24
721RemoveTraceCallback@4
722RemoveUsersFromEncryptedFile@8
723190ReportEventA@36
724191ReportEventW@36
725192RevertToSelf@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
743193SetAclInformation@16
744SetEncryptedFileMetadata@24
745SetEntriesInAccessListA@24
746SetEntriesInAccessListW@24
747SetEntriesInAclA@16
748SetEntriesInAclW@16
749SetEntriesInAuditListA@24
750SetEntriesInAuditListW@24
751194SetFileSecurityA@12
752195SetFileSecurityW@12
753SetInformationCodeAuthzLevelW@16
754SetInformationCodeAuthzPolicyW@20
755196SetKernelObjectSecurity@12
756SetNamedSecurityInfoA@28
757SetNamedSecurityInfoExA@36
758SetNamedSecurityInfoExW@36
759SetNamedSecurityInfoW@28
760197SetPrivateObjectSecurity@20
761SetPrivateObjectSecurityEx@24
762SetSecurityAccessMask@8
763SetSecurityDescriptorControl@12
764198SetSecurityDescriptorDacl@16
765199SetSecurityDescriptorGroup@12
766200SetSecurityDescriptorOwner@12
767SetSecurityDescriptorRMControl@8
768201SetSecurityDescriptorSacl@16
769SetSecurityInfo@28
770SetSecurityInfoExA@36
771SetSecurityInfoExW@36
772SetServiceBits@16
773202SetServiceObjectSecurity@12
774203SetServiceStatus@8
775SetThreadToken@8
776204SetTokenInformation@16
777SetTraceCallback@8
778SetUserFileEncryptionKey@4
779SetUserFileEncryptionKeyEx@16
780205StartServiceA@12
781206StartServiceCtrlDispatcherA@4
782207StartServiceCtrlDispatcherW@4
783208StartServiceW@12
784StartTraceA@12
785StartTraceW@12
786SynchronizeWindows31FilesAndWindowsNTRegistry@16
787StopTraceA@16
788StopTraceW@16
209UnlockServiceDatabase@4
210
211; This is list of symbols added in Win32s 1.20 and available in all Win9x and WinNT versions
212SetThreadToken@8
213
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
789274SystemFunction001@12
790275SystemFunction002@12
791276SystemFunction003@8
......@@ -817,61 +302,766 @@ SystemFunction028@8
817302SystemFunction029@8
818303SystemFunction030@8
819304SystemFunction031@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
820312SystemFunction032@8
821313SystemFunction033@8
822SystemFunction034@12
823SystemFunction035@4
824SystemFunction036@8
825SystemFunction040@12
826SystemFunction041@12
827TraceEvent@12
828TraceEventInstance@20
829TraceMessage
830TraceMessageVa@24
831TraceQueryInformation@24
832TraceSetInformation@20
833TreeResetNamedSecurityInfoA@44
834TreeResetNamedSecurityInfoW@44
835TreeSetNamedSecurityInfoA@44
836TreeSetNamedSecurityInfoW@44
314
315; This is list of symbols added in Win32s 1.25, available in all Win9x versions and since Windows NT 3.51
316CreateProcessAsUserA@44
317CreateProcessAsUserW@44
318ImpersonateLoggedOnUser@4
319LogonUserA@24
320LogonUserW@24
321
322; This is list of symbols added in Win32s 1.25, available since Windows NT 3.51, but not available in Win9x
323LsaAddAccountRights@16
324LsaDeleteTrustedDomain@8
325LsaEnumerateAccountRights@16
326LsaEnumerateAccountsWithUserRight@16
327LsaQueryTrustedDomainInfo@16
328LsaRemoveAccountRights@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
837441TrusteeAccessToObjectA@24
838442TrusteeAccessToObjectW@24
839UninstallApplication@8
840UnlockServiceDatabase@4
841UnregisterIdleTask@12
842UnregisterTraceGuids@8
843UpdateTraceA@16
844UpdateTraceW@16
845UsePinForEncryptedFilesA@12
846UsePinForEncryptedFilesW@12
847WaitServiceState@16
848WmiCloseBlock@4
849WmiDevInstToInstanceNameA@16
850WmiDevInstToInstanceNameW@16
851WmiEnumerateGuids@8
852WmiExecuteMethodA@28
853WmiExecuteMethodW@28
854WmiFileHandleToInstanceNameA@16
855WmiFileHandleToInstanceNameW@16
856WmiFreeBuffer@4
857WmiMofEnumerateResourcesA@12
858WmiMofEnumerateResourcesW@12
859WmiNotificationRegistrationA@20
860WmiNotificationRegistrationW@20
861WmiOpenBlock@12
862WmiQueryAllDataA@12
863WmiQueryAllDataMultipleA@16
864WmiQueryAllDataMultipleW@16
865WmiQueryAllDataW@12
866WmiQueryGuidInformation@8
867WmiQuerySingleInstanceA@16
868WmiQuerySingleInstanceMultipleA@20
869WmiQuerySingleInstanceMultipleW@20
870WmiQuerySingleInstanceW@16
871WmiReceiveNotificationsA@16
872WmiReceiveNotificationsW@16
873WmiSetSingleInstanceA@20
874WmiSetSingleInstanceW@20
875WmiSetSingleItemA@24
876WmiSetSingleItemW@24
877WriteEncryptedFileRaw@12
443
444; This is list of symbols added in Windows 98 and also since Windows 2000, but not available in Win32s
445CryptContextAddRef@12
446CryptDuplicateHash@16
447CryptDuplicateKey@16
448CryptEnumProviderTypesA@24
449CryptEnumProviderTypesW@24
450CryptEnumProvidersA@24
451CryptEnumProvidersW@24
452CryptGetDefaultProviderA@20
453CryptGetDefaultProviderW@20
454CryptSetProviderExA@16
455CryptSetProviderExW@16
456
457; This is list of symbols added in Windows ME, but not available in Win32s and WinNT
458; CryptGetLocalKeyLimits@16
459
460;; This is end of Win9x symbols ;;
461
462; This is list of symbols (not mentioned in previous sections) added in Windows NT 4.0, but not available in Win32s and Win9x
463; BuildAccessRequestA@12 ; removed in Windows NT 4.0 SP4
464; BuildAccessRequestW@12 ; removed in Windows NT 4.0 SP4
465; DenyAccessRightsA@16 ; removed in Windows NT 4.0 SP4
466; DenyAccessRightsW@16 ; removed in Windows NT 4.0 SP4
467EnumServiceGroupW@36
468; GetAuditedPermissionsFromSDA@16 ; removed in Windows NT 4.0 SP4
469; GetAuditedPermissionsFromSDW@16 ; removed in Windows NT 4.0 SP4
470; GetEffectiveAccessRightsA@16 ; removed in Windows NT 4.0 SP4
471; GetEffectiveAccessRightsW@16 ; removed in Windows NT 4.0 SP4
472; GetEffectiveRightsFromSDA@12 ; removed in Windows NT 4.0 SP4
473; GetEffectiveRightsFromSDW@12 ; removed in Windows NT 4.0 SP4
474; GetExplicitAccessRightsA@16 ; removed in Windows NT 4.0 SP4
475; GetExplicitAccessRightsW@16 ; removed in Windows NT 4.0 SP4
476; GrantAccessRightsA@16 ; removed in Windows NT 4.0 SP4
477; GrantAccessRightsW@16 ; removed in Windows NT 4.0 SP4
478I_ScGetCurrentGroupStateW@12
479; IsAccessPermittedA@20 ; removed in Windows NT 4.0 SP4
480; IsAccessPermittedW@20 ; removed in Windows NT 4.0 SP4
481LsaGetUserName@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;
2; Definition file of KERNEL32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
61LIBRARY "KERNEL32.dll"
72EXPORTS
8BaseThreadInitThunk@4
9InterlockedPushListSList@8
10AcquireSRWLockExclusive@4
11AcquireSRWLockShared@4
12ActivateActCtx@8
13ActivateActCtxWorker@8
14ActivatePackageVirtualizationContext@8
3
4; This file is a comprehensive documentation for 32-bit x86 kernel32.dll symbols.
5; It covers all 3 platforms Win32s, Win9x and WinNT and contains information
6; from native kernel32.dll libraries on 32-bit Windows systems and also from
7; 32-bit WoW64 kernel32.dll libraries on 64-bit Windows systems. Symbols in this
8; file are ordered by increasing Windows version in which they were introduced.
9; 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)
1521AddAtomA@4
1622AddAtomW@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
3223AllocConsole@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
5124BackupRead@28
5225BackupSeek@24
5326BackupWrite@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
11427Beep@8
11528BeginUpdateResourceA@8
11629BeginUpdateResourceW@8
117BindIoCompletionCallback@12
11830BuildCommDCBA@8
11931BuildCommDCBAndTimeoutsA@12
12032BuildCommDCBAndTimeoutsW@12
12133BuildCommDCBW@8
122BuildIoRingCancelRequest@20
123BuildIoRingFlushFile@24
124BuildIoRingReadFile@44
125BuildIoRingReadFileScatter@40
126BuildIoRingRegisterBuffers@16
127BuildIoRingRegisterFileHandles@16
128BuildIoRingWriteFile@48
129BuildIoRingWriteFileGather@44
13034CallNamedPipeA@28
13135CallNamedPipeW@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
15236ClearCommBreak@4
15337ClearCommError@12
154CloseConsoleHandle@4
15538CloseHandle@4
156CloseIoRing@4
157ClosePackageInfo@4
158ClosePrivateNamespace@8
15939CloseProfileUserMapping@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
17340CompareFileTime@8
174CompareStringA@24
175CompareStringEx@36
176CompareStringOrdinal@20
17741CompareStringW@24
17842ConnectNamedPipe@8
179ConsoleIMERoutine@4
180ConsoleMenuControl@12
18143ContinueDebugEvent@12
182ConvertCalDateTimeToSystemTime@8
183ConvertDefaultLocale@4
184ConvertFiberToThread@0
185ConvertNLSDayOfWeekToWin32DayOfWeek@4
186ConvertSystemTimeToCalDateTime@12
187ConvertThreadToFiber@4
188ConvertThreadToFiberEx@8
189ConvertToGlobalHandle@4
190CopyContext@12
191CopyFile2@12
19244CopyFileA@12
193CopyFileExA@24
194CopyFileExW@24
195CopyFileTransactedA@28
196CopyFileTransactedW@28
19745CopyFileW@12
198CopyLZFile@8
199CreateActCtxA@4
200CreateActCtxW@4
201CreateActCtxWWorker@4
202CreateBoundaryDescriptorA@8
203CreateBoundaryDescriptorW@8
20446CreateConsoleScreenBuffer@20
20547CreateDirectoryA@8
20648CreateDirectoryExA@12
20749CreateDirectoryExW@12
208CreateDirectoryTransactedA@16
209CreateDirectoryTransactedW@16
21050CreateDirectoryW@8
211CreateEnclave@32
21251CreateEventA@16
213CreateEventExA@16
214CreateEventExW@16
21552CreateEventW@16
216CreateFiber@12
217CreateFiberEx@20
218CreateFile2@20
21953CreateFileA@28
22054CreateFileMappingA@24
221CreateFileMappingFromApp@24
222CreateFileMappingNumaA@28
223CreateFileMappingNumaW@28
22455CreateFileMappingW@24
225CreateFileTransactedA@40
226CreateFileTransactedW@40
22756CreateFileW@28
228CreateHardLinkA@12
229CreateHardLinkTransactedA@16
230CreateHardLinkTransactedW@16
231CreateHardLinkW@12
232CreateIoCompletionPort@16
233CreateIoRing@24
234CreateJobObjectA@8
235CreateJobObjectW@8
236CreateJobSet@12
23757CreateMailslotA@16
23858CreateMailslotW@16
239CreateMemoryResourceNotification@4
24059CreateMutexA@12
241CreateMutexExA@16
242CreateMutexExW@16
24360CreateMutexW@12
24461CreateNamedPipeA@32
24562CreateNamedPipeW@32
246CreatePackageVirtualizationContext@8
24763CreatePipe@16
248CreatePrivateNamespaceA@12
249CreatePrivateNamespaceW@12
25064CreateProcessA@40
251; MSDN says these are exported from ADVAPI32.DLL.
252; CreateProcessAsUserA@44
253; CreateProcessAsUserW@44
254CreateProcessInternalA@48
255CreateProcessInternalW@48
25665CreateProcessW@40
257CreatePseudoConsole@20
25866CreateRemoteThread@28
259CreateRemoteThreadEx@32
26067CreateSemaphoreA@16
261CreateSemaphoreExA@24
262CreateSemaphoreExW@24
26368CreateSemaphoreW@16
264CreateSocketHandle@0
265CreateSymbolicLinkA@12
266CreateSymbolicLinkTransactedA@16
267CreateSymbolicLinkTransactedW@16
268CreateSymbolicLinkW@12
26969CreateTapePartition@16
27070CreateThread@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
28971DebugActiveProcess@4
290DebugActiveProcessStop@4
29172DebugBreak@0
292DebugBreakProcess@4
293DebugSetProcessKillOnExit@4
294DecodePointer@4
295DecodeSystemPointer@4
29673DefineDosDeviceA@12
29774DefineDosDeviceW@12
298DelayLoadFailureHook@8
29975DeleteAtom@4
300DeleteBoundaryDescriptor@4
30176DeleteCriticalSection@4
302DeleteFiber@4
30377DeleteFileA@4
304DeleteFileTransactedA@8
305DeleteFileTransactedW@8
30678DeleteFileW@4
307DeleteProcThreadAttributeList@4
308DeleteSynchronizationBarrier@4
309DeleteTimerQueue@4
310DeleteTimerQueueEx@8
311DeleteTimerQueueTimer@12
312DeleteVolumeMountPointA@4
313DeleteVolumeMountPointW@4
31479DeviceIoControl@32
315DisableThreadLibraryCalls@4
316DisableThreadProfiling@4
317DisassociateCurrentThreadFromCallback@4
318DiscardVirtualMemory@8
31980DisconnectNamedPipe@4
320DnsHostnameToComputerNameA@12
321DnsHostnameToComputerNameExW@12
322DnsHostnameToComputerNameW@12
32381DosDateTimeToFileTime@12
324DosPathToSessionPathA@12
325DosPathToSessionPathW@12
326DuplicateConsoleHandle@16
327DuplicateEncryptionInfoFileExt@20
32882DuplicateHandle@28
329DuplicatePackageVirtualizationContext@8
330EnableProcessOptionalXStateFeatures@8
331EnableThreadProfiling@20
332EncodePointer@4
333EncodeSystemPointer@4
33483EndUpdateResourceA@8
33584EndUpdateResourceW@8
33685EnterCriticalSection@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
35086EnumResourceLanguagesA@20
351EnumResourceLanguagesExA@28
352EnumResourceLanguagesExW@28
35387EnumResourceLanguagesW@20
35488EnumResourceNamesA@16
355EnumResourceNamesExA@24
356EnumResourceNamesExW@24
35789EnumResourceNamesW@16
35890EnumResourceTypesA@12
359EnumResourceTypesExA@20
360EnumResourceTypesExW@20
36191EnumResourceTypesW@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
37992EraseTape@12
38093EscapeCommFunction@8
38194ExitProcess@4
38295ExitThread@4
383ExitVDM@8
38496ExpandEnvironmentStringsA@12
38597ExpandEnvironmentStringsW@12
386ExpungeConsoleCommandHistoryA@4
387ExpungeConsoleCommandHistoryW@4
388ExtendVirtualBuffer@8
38998FatalAppExitA@8
39099FatalAppExitW@8
391100FatalExit@4
......@@ -395,11 +104,6 @@ FileTimeToSystemTime@8
395104FillConsoleOutputAttribute@20
396105FillConsoleOutputCharacterA@20
397106FillConsoleOutputCharacterW@20
398FindActCtxSectionGuid@20
399FindActCtxSectionGuidWorker@20
400FindActCtxSectionStringA@20
401FindActCtxSectionStringW@20
402FindActCtxSectionStringWWorker@20
403107FindAtomA@4
404108FindAtomW@4
405109FindClose@4
......@@ -407,96 +111,29 @@ FindCloseChangeNotification@4
407111FindFirstChangeNotificationA@12
408112FindFirstChangeNotificationW@12
409113FindFirstFileA@8
410FindFirstFileExA@24
411FindFirstFileExW@24
412FindFirstFileNameTransactedW@20
413FindFirstFileNameW@16
414FindFirstFileTransactedA@28
415FindFirstFileTransactedW@28
416114FindFirstFileW@8
417FindFirstStreamTransactedW@20
418FindFirstStreamW@16
419FindFirstVolumeA@8
420FindFirstVolumeMountPointA@12
421FindFirstVolumeMountPointW@12
422FindFirstVolumeW@8
423FindNLSString@28
424FindNLSStringEx@40
425115FindNextChangeNotification@4
426116FindNextFileA@8
427FindNextFileNameW@12
428117FindNextFileW@8
429FindNextStreamW@8
430FindNextVolumeA@12
431FindNextVolumeMountPointA@12
432FindNextVolumeMountPointW@12
433FindNextVolumeW@12
434FindPackagesByPackageFamily@28
435118FindResourceA@12
436119FindResourceExA@16
437120FindResourceExW@16
438121FindResourceW@12
439FindStringOrdinal@24
440FindVolumeClose@4
441FindVolumeMountPointClose@4
442FlsAlloc@4
443FlsFree@4
444FlsGetValue2@4
445FlsGetValue@4
446FlsSetValue@8
447122FlushConsoleInputBuffer@4
448123FlushFileBuffers@4
449124FlushInstructionCache@12
450FlushProcessWriteBuffers@0
451125FlushViewOfFile@8
452FoldStringA@20
453126FoldStringW@20
454FormatApplicationUserModelId@16
455127FormatMessageA@28
456128FormatMessageW@28
457129FreeConsole@0
458FreeEnvironmentStringsA@4
459FreeEnvironmentStringsW@4
460130FreeLibrary@4
461FreeLibraryAndExitThread@8
462FreeLibraryWhenCallbackReturns@8
463FreeMemoryJobObject@4
464131FreeResource@4
465FreeUserPhysicalPages@12
466FreeVirtualBuffer@4
467132GenerateConsoleCtrlEvent@8
468133GetACP@0
469GetActiveProcessorCount@4
470GetActiveProcessorGroupCount@0
471GetAppContainerAce@16
472GetAppContainerNamedObjectPath@20
473GetApplicationRecoveryCallback@20
474GetApplicationRecoveryCallbackWorker@20
475GetApplicationRestartSettings@16
476GetApplicationRestartSettingsWorker@16
477GetApplicationUserModelId@12
478134GetAtomNameA@12
479135GetAtomNameW@12
480GetBinaryType@8
481GetBinaryTypeA@8
482GetBinaryTypeW@8
483GetCPFileNameFromRegistry@12
484136GetCPInfo@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
500137GetCommMask@8
501138GetCommModemStatus@8
502139GetCommProperties@8
......@@ -504,295 +141,85 @@ GetCommState@8
504141GetCommTimeouts@8
505142GetCommandLineA@0
506143GetCommandLineW@0
507GetCompressedFileSizeA@8
508GetCompressedFileSizeTransactedA@12
509GetCompressedFileSizeTransactedW@12
510GetCompressedFileSizeW@8
511144GetComputerNameA@8
512GetComputerNameExA@12
513GetComputerNameExW@12
514145GetComputerNameW@8
515GetConsoleAliasA@16
516GetConsoleAliasExesA@8
517GetConsoleAliasExesLengthA@0
518GetConsoleAliasExesLengthW@0
519GetConsoleAliasExesW@8
520GetConsoleAliasW@16
521GetConsoleAliasesA@12
522GetConsoleAliasesLengthA@4
523GetConsoleAliasesLengthW@4
524GetConsoleAliasesW@12
525146GetConsoleCP@0
526GetConsoleCharType@12
527GetConsoleCommandHistoryA@12
528GetConsoleCommandHistoryLengthA@4
529GetConsoleCommandHistoryLengthW@4
530GetConsoleCommandHistoryW@12
531147GetConsoleCursorInfo@8
532GetConsoleCursorMode@12
533GetConsoleDisplayMode@4
534GetConsoleFontInfo@16
535GetConsoleFontSize@8
536GetConsoleHardwareState@12
537GetConsoleHistoryInfo@4
538GetConsoleInputExeNameA@8
539GetConsoleInputExeNameW@8
540GetConsoleInputWaitHandle@0
541GetConsoleKeyboardLayoutNameA@4
542GetConsoleKeyboardLayoutNameW@4
543148GetConsoleMode@8
544GetConsoleNlsMode@8
545GetConsoleOriginalTitleA@8
546GetConsoleOriginalTitleW@8
547149GetConsoleOutputCP@0
548GetConsoleProcessList@8
549150GetConsoleScreenBufferInfo@8
550GetConsoleScreenBufferInfoEx@8
551GetConsoleSelectionInfo@4
552151GetConsoleTitleA@8
553152GetConsoleTitleW@8
554GetConsoleWindow@0
555GetCurrencyFormatA@24
556GetCurrencyFormatEx@24
557GetCurrencyFormatW@24
558GetCurrentActCtx@4
559GetCurrentActCtxWorker@4
560GetCurrentApplicationUserModelId@8
561GetCurrentConsoleFont@12
562GetCurrentConsoleFontEx@12
563153GetCurrentDirectoryA@8
564154GetCurrentDirectoryW@8
565GetCurrentPackageFamilyName@8
566GetCurrentPackageFullName@8
567GetCurrentPackageId@8
568GetCurrentPackageInfo@16
569GetCurrentPackagePath@8
570GetCurrentPackageVirtualizationContext@0
571155GetCurrentProcess@0
572156GetCurrentProcessId@0
573GetCurrentProcessorNumber@0
574GetCurrentProcessorNumberEx@4
575157GetCurrentThread@0
576158GetCurrentThreadId@0
577GetCurrentThreadStackLimits@8
578GetDateFormatA@24
579GetDateFormatAWorker@28
580GetDateFormatEx@28
581159GetDateFormatW@24
582GetDateFormatWWorker@28
583GetDefaultCommConfigA@12
584GetDefaultCommConfigW@12
585GetDevicePowerState@8
586160GetDiskFreeSpaceA@20
587GetDiskFreeSpaceExA@16
588GetDiskFreeSpaceExW@16
589161GetDiskFreeSpaceW@20
590GetDiskSpaceInformationA@8
591GetDiskSpaceInformationW@8
592GetDllDirectoryA@8
593GetDllDirectoryW@8
594162GetDriveTypeA@4
595163GetDriveTypeW@4
596GetDurationFormat@32
597GetDurationFormatEx@32
598GetDynamicTimeZoneInformation@4
599GetEnabledXStateFeatures@0
600GetEncryptedFileVersionExt@8
601164GetEnvironmentStrings@0
602GetEnvironmentStringsA@0
603GetEnvironmentStringsW@0
604165GetEnvironmentVariableA@12
605166GetEnvironmentVariableW@12
606GetEraNameCountedString@16
607GetErrorMode@0
608167GetExitCodeProcess@8
609168GetExitCodeThread@8
610GetExpandedNameA@8
611GetExpandedNameW@8
612169GetFileAttributesA@4
613GetFileAttributesExA@12
614GetFileAttributesExW@12
615GetFileAttributesTransactedA@16
616GetFileAttributesTransactedW@16
617170GetFileAttributesW@4
618GetFileBandwidthReservation@24
619171GetFileInformationByHandle@8
620GetFileInformationByHandleEx@16
621GetFileInformationByName@16
622GetFileMUIInfo@16
623GetFileMUIPath@28
624172GetFileSize@8
625GetFileSizeEx@8
626173GetFileTime@16
627174GetFileType@4
628GetFinalPathNameByHandleA@16
629GetFinalPathNameByHandleW@16
630GetFirmwareEnvironmentVariableA@16
631GetFirmwareEnvironmentVariableExA@20
632GetFirmwareEnvironmentVariableExW@20
633GetFirmwareEnvironmentVariableW@16
634GetFirmwareType@4
635175GetFullPathNameA@16
636GetFullPathNameTransactedA@20
637GetFullPathNameTransactedW@20
638176GetFullPathNameW@16
639GetGeoInfoA@20
640GetGeoInfoEx@16
641GetGeoInfoW@20
642GetHandleContext@4
643GetHandleInformation@8
644GetIoRingInfo@8
645GetLargePageMinimum@0
646177GetLargestConsoleWindowSize@4
647178GetLastError@0
648179GetLocalTime@4
649GetLocaleInfoA@16
650GetLocaleInfoEx@16
651180GetLocaleInfoW@16
652181GetLogicalDriveStringsA@8
653182GetLogicalDriveStringsW@8
654183GetLogicalDrives@0
655GetLogicalProcessorInformation@8
656GetLogicalProcessorInformationEx@12
657GetLongPathNameA@12
658GetLongPathNameTransactedA@16
659GetLongPathNameTransactedW@16
660GetLongPathNameW@12
661GetMachineTypeAttributes@8
662184GetMailslotInfo@20
663GetMaximumProcessorCount@4
664GetMaximumProcessorGroupCount@0
665GetMemoryErrorHandlingCapabilities@4
666185GetModuleFileNameA@12
667186GetModuleFileNameW@12
668187GetModuleHandleA@4
669GetModuleHandleExA@12
670GetModuleHandleExW@12
671188GetModuleHandleW@4
672GetNLSVersion@12
673GetNLSVersionEx@12
674GetNamedPipeAttribute@20
675GetNamedPipeClientComputerNameA@12
676GetNamedPipeClientComputerNameW@12
677GetNamedPipeClientProcessId@8
678GetNamedPipeClientSessionId@8
679189GetNamedPipeHandleStateA@28
680190GetNamedPipeHandleStateW@28
681191GetNamedPipeInfo@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
701192GetNumberOfConsoleInputEvents@8
702193GetNumberOfConsoleMouseButtons@4
703194GetOEMCP@0
704195GetOverlappedResult@16
705GetOverlappedResultEx@20
706GetPackageApplicationIds@16
707GetPackageFamilyName@12
708GetPackageFullName@12
709GetPackageId@12
710GetPackageInfo@20
711GetPackagePath@16
712GetPackagePathByFullName@12
713GetPackagesByPackageFamily@20
714GetPhysicallyInstalledSystemMemory@4
715196GetPriorityClass@4
716197GetPrivateProfileIntA@16
717198GetPrivateProfileIntW@16
718199GetPrivateProfileSectionA@16
719GetPrivateProfileSectionNamesA@12
720GetPrivateProfileSectionNamesW@12
721200GetPrivateProfileSectionW@16
722201GetPrivateProfileStringA@24
723202GetPrivateProfileStringW@24
724GetPrivateProfileStructA@20
725GetPrivateProfileStructW@20
726203GetProcAddress@8
727GetProcessAffinityMask@12
728GetProcessDEPPolicy@12
729GetProcessDefaultCpuSetMasks@16
730GetProcessDefaultCpuSets@16
731GetProcessGroupAffinity@12
732GetProcessHandleCount@8
733204GetProcessHeap@0
734GetProcessHeaps@8
735GetProcessId@4
736GetProcessIdOfThread@4
737GetProcessInformation@16
738GetProcessIoCounters@8
739GetProcessMitigationPolicy@16
740GetProcessPreferredUILanguages@16
741GetProcessPriorityBoost@8
742205GetProcessShutdownParameters@8
743206GetProcessTimes@20
744GetProcessUserModeExceptionPolicy@4
745GetProcessVersion@4
746GetProcessWorkingSetSize@12
747GetProcessWorkingSetSizeEx@16
748GetProcessesInVirtualizationContext@12
749GetProcessorSystemCycleTime@12
750GetProductInfo@20
751GetProductName@8
752207GetProfileIntA@12
753208GetProfileIntW@12
754209GetProfileSectionA@12
755210GetProfileSectionW@12
756211GetProfileStringA@20
757212GetProfileStringW@20
758GetQueuedCompletionStatus@20
759GetQueuedCompletionStatusEx@24
760GetShortPathNameA@12
761GetShortPathNameW@12
762GetStagedPackagePathByFullName@12
763213GetStartupInfoA@4
764214GetStartupInfoW@4
765GetStateFolder@16
766215GetStdHandle@4
767GetStringScripts@20
768GetStringTypeA@20
769GetStringTypeExA@20
770GetStringTypeExW@20
771216GetStringTypeW@16
772GetSystemAppDataKey@16
773GetSystemCpuSetInformation@20
774GetSystemDEPPolicy@0
775217GetSystemDefaultLCID@0
776218GetSystemDefaultLangID@0
777GetSystemDefaultLocaleName@8
778GetSystemDefaultUILanguage@0
779219GetSystemDirectoryA@8
780220GetSystemDirectoryW@8
781GetSystemFileCacheSize@12
782GetSystemFirmwareTable@16
783221GetSystemInfo@4
784GetSystemPowerStatus@4
785GetSystemPreferredUILanguages@16
786GetSystemRegistryQuota@8
787222GetSystemTime@4
788GetSystemTimeAdjustment@12
789GetSystemTimeAsFileTime@4
790GetSystemTimePreciseAsFileTime@4
791GetSystemTimes@12
792GetSystemWindowsDirectoryA@8
793GetSystemWindowsDirectoryW@8
794GetSystemWow64DirectoryA@8
795GetSystemWow64DirectoryW@8
796223GetTapeParameters@16
797224GetTapePosition@20
798225GetTapeStatus@4
......@@ -800,63 +227,22 @@ GetTempFileNameA@16
800227GetTempFileNameW@16
801228GetTempPathA@8
802229GetTempPathW@8
803GetTempPath2A@8
804GetTempPath2W@8
230GetTickCount@0
805231GetThreadContext@8
806GetThreadDescription@8
807GetThreadEnabledXStateFeatures@0
808GetThreadErrorMode@0
809GetThreadGroupAffinity@8
810GetThreadIOPendingFlag@8
811GetThreadId@4
812GetThreadIdealProcessorEx@8
813GetThreadInformation@16
814232GetThreadLocale@0
815GetThreadPreferredUILanguages@16
816233GetThreadPriority@4
817GetThreadPriorityBoost@8
818GetThreadSelectedCpuSetMasks@16
819GetThreadSelectedCpuSets@16
820234GetThreadSelectorEntry@12
821235GetThreadTimes@20
822GetThreadUILanguage@0
823GetTickCount64@0
824GetTickCount@0
825GetTimeFormatA@24
826GetTimeFormatAWorker@28
827GetTimeFormatEx@24
828236GetTimeFormatW@24
829GetTimeFormatWWorker@24
830237GetTimeZoneInformation@4
831GetTimeZoneInformationForYear@12
832GetUILanguageInfo@20
833GetUserDefaultGeoName@8
834238GetUserDefaultLCID@0
835239GetUserDefaultLangID@0
836GetUserDefaultLocaleName@8
837GetUserDefaultUILanguage@0
838GetUserGeoID@4
839GetUserPreferredUILanguages@16
840GetVDMCurrentDirectories@8
841240GetVersion@0
842GetVersionExA@4
843GetVersionExW@4
844241GetVolumeInformationA@32
845GetVolumeInformationByHandleW@32
846242GetVolumeInformationW@32
847GetVolumeNameForVolumeMountPointA@12
848GetVolumeNameForVolumeMountPointW@12
849GetVolumePathNameA@12
850GetVolumePathNameW@12
851GetVolumePathNamesForVolumeNameA@16
852GetVolumePathNamesForVolumeNameW@16
853243GetWindowsDirectoryA@8
854244GetWindowsDirectoryW@8
855GetWriteWatch@24
856GetXStateFeaturesMask@8
857245GlobalAddAtomA@4
858GlobalAddAtomExA@8
859GlobalAddAtomExW@8
860246GlobalAddAtomW@4
861247GlobalAlloc@8
862248GlobalCompact@4
......@@ -871,67 +257,23 @@ GlobalGetAtomNameW@12
871257GlobalHandle@4
872258GlobalLock@4
873259GlobalMemoryStatus@4
874GlobalMemoryStatusEx@4
875GlobalMemoryStatusVlm@4
876260GlobalReAlloc@12
877261GlobalSize@4
878262GlobalUnWire@4
879263GlobalUnfix@4
880264GlobalUnlock@4
881265GlobalWire@4
882Heap32First@12
883Heap32ListFirst@8
884Heap32ListNext@8
885Heap32Next@4
886266HeapAlloc@12
887HeapCompact@8
888267HeapCreate@12
889HeapCreateTagsW@16
890268HeapDestroy@4
891HeapExtend@16
892269HeapFree@12
893HeapLock@4
894HeapQueryInformation@20
895HeapQueryTagW@20
896270HeapReAlloc@16
897HeapSetInformation@16
898271HeapSize@12
899HeapSummary@12
900HeapUnlock@4
901HeapUsage@20
902HeapValidate@12
903HeapWalk@8
904IdnToAscii@20
905IdnToNameprepUnicode@20
906IdnToUnicode@20
907272InitAtomTable@4
908273InitializeCriticalSection@4
909InitOnceBeginInitialize@16
910InitOnceComplete@12
911InitOnceExecuteOnce@16
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
274InterlockedDecrement@4 DATA ; FIXME: why is decorated stdcall function symbol disabled?
275InterlockedExchange@8 DATA ; FIXME: why is decorated stdcall function symbol disabled?
276InterlockedIncrement@4 DATA ; FIXME: why is decorated stdcall function symbol disabled?
935277IsBadCodePtr@4
936278IsBadHugeReadPtr@8
937279IsBadHugeWritePtr@8
......@@ -939,93 +281,19 @@ IsBadReadPtr@8
939281IsBadStringPtrA@8
940282IsBadStringPtrW@8
941283IsBadWritePtr@8
942IsCalendarLeapDay@20
943IsCalendarLeapMonth@16
944IsCalendarLeapYear@12
945284IsDBCSLeadByte@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
962285IsValidCodePage@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
1000286LCMapStringW@24
1001LZClose@4
1002LZCloseFile@4
1003LZCopy@8
1004LZCreateFileW@20
1005LZDone@0
1006LZInit@4
1007LZOpenFileA@12
1008LZOpenFileW@12
1009LZRead@12
1010LZSeek@12
1011LZStart@0
1012287LeaveCriticalSection@4
1013LeaveCriticalSectionWhenCallbackReturns@8
1014LoadAppInitDlls@0
1015LoadEnclaveData@36
1016288LoadLibraryA@4
1017289LoadLibraryExA@12
1018290LoadLibraryExW@12
1019291LoadLibraryW@4
1020292LoadModule@8
1021LoadPackagedLibrary@8
1022293LoadResource@8
1023LoadStringBaseExW@20
1024LoadStringBaseW@16
1025294LocalAlloc@8
1026295LocalCompact@4
1027296LocalFileTimeToFileTime@8
1028LocalFileTimeToLocalSystemTime@12
1029297LocalFlags@4
1030298LocalFree@4
1031299LocalHandle@4
......@@ -1033,164 +301,44 @@ LocalLock@4
1033301LocalReAlloc@12
1034302LocalShrink@8
1035303LocalSize@4
1036LocalSystemTimeToLocalFileTime@12
1037304LocalUnlock@4
1038LocaleNameToLCID@8
1039LocateXStateFeature@12
1040305LockFile@20
1041306LockFileEx@24
1042307LockResource@4
1043MapUserPhysicalPages@12
1044MapUserPhysicalPagesScatter@12
1045308MapViewOfFile@20
1046309MapViewOfFileEx@24
1047MapViewOfFileExNuma@28
1048MapViewOfFileVlm@28
1049MapViewOfFileFromApp@20
1050Module32First@8
1051Module32FirstW@8
1052Module32Next@8
1053Module32NextW@8
1054310MoveFileA@8
1055311MoveFileExA@12
1056312MoveFileExW@12
1057MoveFileTransactedA@24
1058MoveFileTransactedW@24
1059313MoveFileW@8
1060MoveFileWithProgressA@20
1061MoveFileWithProgressW@20
1062314MulDiv@12
1063315MultiByteToWideChar@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
1081316OpenEventA@12
1082317OpenEventW@12
1083318OpenFile@12
1084OpenFileById@24
1085319OpenFileMappingA@12
1086320OpenFileMappingW@12
1087OpenJobObjectA@12
1088OpenJobObjectW@12
1089321OpenMutexA@12
1090322OpenMutexW@12
1091OpenPackageInfoByFullName@12
1092OpenPrivateNamespaceA@8
1093OpenPrivateNamespaceW@8
1094323OpenProcess@12
1095; MSDN says OpenProcessToken is from Advapi32.dll, not Kernel32.dll
1096; OpenProcessToken@12
1097324OpenProfileUserMapping@0
1098325OpenSemaphoreA@12
1099326OpenSemaphoreW@12
1100OpenState@0
1101OpenStateExplicit@8
1102OpenThread@12
1103; MSDN says this is exported from ADVAPI32.DLL.
1104; OpenThreadToken@16
1105OpenWaitableTimerA@12
1106OpenWaitableTimerW@12
1107327OutputDebugStringA@4
1108328OutputDebugStringW@4
1109PackageFamilyNameFromFullName@12
1110PackageFamilyNameFromId@12
1111PackageFullNameFromId@12
1112PackageIdFromFullName@16
1113PackageNameAndPublisherIdFromFamilyName@20
1114ParseApplicationUserModelId@20
1115329PeekConsoleInputA@16
1116330PeekConsoleInputW@16
1117331PeekNamedPipe@24
1118PopIoRingCompletion@8
1119PostQueuedCompletionStatus@16
1120PowerClearRequest@8
1121PowerCreateRequest@4
1122PowerSetRequest@8
1123PrefetchVirtualMemory@16
1124332PrepareTape@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
1145333PulseEvent@4
1146334PurgeComm@8
1147QueryActCtxSettingsW@28
1148QueryActCtxSettingsWWorker@28
1149QueryActCtxW@28
1150QueryActCtxWWorker@28
1151QueryDepthSList@4
1152335QueryDosDeviceA@12
1153336QueryDosDeviceW@12
1154QueryFullProcessImageNameA@16
1155QueryFullProcessImageNameW@16
1156QueryIdleProcessorCycleTime@8
1157QueryIdleProcessorCycleTimeEx@12
1158QueryInformationJobObject@20
1159QueryIoRateControlInformationJobObject@16
1160QueryIoRingCapabilities@4
1161QueryMemoryResourceNotification@8
1162337QueryPerformanceCounter@4
1163338QueryPerformanceFrequency@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
1185339RaiseException@16
1186RaiseFailFastException@12
1187RaiseInvalid16BitExeError@4
1188ReOpenFile@16
1189ReclaimVirtualMemory@8
1190340ReadConsoleA@20
1191341ReadConsoleInputA@16
1192ReadConsoleInputExA@20
1193ReadConsoleInputExW@20
1194342ReadConsoleInputW@16
1195343ReadConsoleOutputA@20
1196344ReadConsoleOutputAttribute@20
......@@ -1198,447 +346,112 @@ ReadConsoleOutputCharacterA@20
1198346ReadConsoleOutputCharacterW@20
1199347ReadConsoleOutputW@20
1200348ReadConsoleW@20
1201ReadDirectoryChangesExW@36
1202ReadDirectoryChangesW@32
1203349ReadFile@20
1204350ReadFileEx@20
1205ReadFileScatter@20
1206ReadFileVlm@20
1207351ReadProcessMemory@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
1273352ReleaseMutex@4
1274ReleaseMutexWhenCallbackReturns@8
1275ReleasePackageVirtualizationContext@4
1276ReleasePseudoConsole@4
1277ReleaseSRWLockExclusive@4
1278ReleaseSRWLockShared@4
1279353ReleaseSemaphore@12
1280ReleaseSemaphoreWhenCallbackReturns@12
1281ResolveLocaleName@12
1282354RemoveDirectoryA@4
1283RemoveDirectoryTransactedA@8
1284RemoveDirectoryTransactedW@8
1285355RemoveDirectoryW@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
1298356ResetEvent@4
1299ResetWriteWatch@8
1300ResizePseudoConsole@8
1301ResolveDelayLoadedAPI@24
1302ResolveDelayLoadsFromDll@12
1303RestoreLastError@4
1304357ResumeThread@4
1305RtlCaptureContext@4
1306RtlCaptureStackBackTrace@16
1307RtlFillMemory@12
1308358RtlMoveMemory@12
1309RtlPcToFileHeader@8
1310359RtlUnwind@16
1311360RtlZeroMemory@8
1312361ScrollConsoleScreenBufferA@20
1313362ScrollConsoleScreenBufferW@20
1314363SearchPathA@24
1315364SearchPathW@24
1316SetCachedSigningLevel@16
1317SetCalendarInfoA@16
1318SetCalendarInfoW@16
1319SetClientTimeZoneInformation@4
1320SetComPlusPackageInstallStatus@4
1321365SetCommBreak@4
1322SetCommConfig@12
1323366SetCommMask@8
1324367SetCommState@8
1325368SetCommTimeouts@8
1326369SetComputerNameA@4
1327SetComputerNameEx2W@12
1328SetComputerNameExA@8
1329SetComputerNameExW@8
1330370SetComputerNameW@4
1331371SetConsoleActiveScreenBuffer@4
1332372SetConsoleCP@4
1333SetConsoleCommandHistoryMode@4
1334373SetConsoleCtrlHandler@8
1335SetConsoleCursor@8
1336374SetConsoleCursorInfo@8
1337SetConsoleCursorMode@12
1338375SetConsoleCursorPosition@8
1339SetConsoleDisplayMode@12
1340SetConsoleFont@8
1341SetConsoleHardwareState@12
1342SetConsoleHistoryInfo@4
1343SetConsoleIcon@4
1344SetConsoleInputExeNameA@4
1345SetConsoleInputExeNameW@4
1346SetConsoleKeyShortcuts@16
1347SetConsoleLocalEUDC@16
1348SetConsoleMaximumWindowSize@8
1349SetConsoleMenuClose@4
1350376SetConsoleMode@8
1351SetConsoleNlsMode@8
1352SetConsoleNumberOfCommandsA@8
1353SetConsoleNumberOfCommandsW@8
1354SetConsoleOS2OemFormat@4
1355377SetConsoleOutputCP@4
1356SetConsolePalette@12
1357SetConsoleScreenBufferInfoEx@8
1358378SetConsoleScreenBufferSize@8
1359379SetConsoleTextAttribute@8
1360380SetConsoleTitleA@4
1361381SetConsoleTitleW@4
1362382SetConsoleWindowInfo@12
1363SetCriticalSectionSpinCount@8
1364SetCurrentConsoleFontEx@12
1365383SetCurrentDirectoryA@4
1366384SetCurrentDirectoryW@4
1367SetDefaultCommConfigA@12
1368SetDefaultCommConfigW@12
1369SetDefaultDllDirectories@4
1370SetDllDirectoryA@4
1371SetDllDirectoryW@4
1372SetDynamicTimeZoneInformation@4
1373385SetEndOfFile@4
1374SetEnvironmentStringsA@4
1375SetEnvironmentStringsW@4
1376386SetEnvironmentVariableA@8
1377387SetEnvironmentVariableW@8
1378388SetErrorMode@4
1379389SetEvent@4
1380SetEventWhenCallbackReturns@8
1381SetFileApisToANSI@0
1382390SetFileApisToOEM@0
1383391SetFileAttributesA@8
1384SetFileAttributesTransactedA@12
1385SetFileAttributesTransactedW@12
1386392SetFileAttributesW@8
1387SetFileBandwidthReservation@24
1388SetFileCompletionNotificationModes@8
1389SetFileInformationByHandle@16
1390SetFileIoOverlappedRange@12
1391393SetFilePointer@16
1392SetFilePointerEx@20
1393SetFileShortNameA@8
1394SetFileShortNameW@8
1395394SetFileTime@16
1396SetFileValidData@12
1397SetFirmwareEnvironmentVariableA@16
1398SetFirmwareEnvironmentVariableExA@20
1399SetFirmwareEnvironmentVariableExW@20
1400SetFirmwareEnvironmentVariableW@16
1401SetHandleContext@8
1402395SetHandleCount@4
1403SetHandleInformation@12
1404SetInformationJobObject@16
1405SetIoRateControlInformationJobObject@8
1406SetIoRingCompletionEvent@8
1407SetLastConsoleEventActive@0
1408396SetLastError@4
1409SetLocalPrimaryComputerNameA@8
1410SetLocalPrimaryComputerNameW@8
1411397SetLocalTime@4
1412SetLocaleInfoA@12
1413SetLocaleInfoW@12
1414398SetMailslotInfo@8
1415SetMessageWaitingIndicator@8
1416SetNamedPipeAttribute@20
1417399SetNamedPipeHandleState@16
1418400SetPriorityClass@8
1419SetProcessAffinityMask@8
1420SetProcessAffinityUpdateMode@8
1421SetProcessDEPPolicy@4
1422SetProcessDefaultCpuSetMasks@12
1423SetProcessDefaultCpuSets@12
1424SetProcessDynamicEHContinuationTargets@12
1425SetProcessDynamicEnforcedCetCompatibleRanges@12
1426SetProcessInformation@16
1427SetProcessMitigationPolicy@12
1428SetProcessPreferredUILanguages@12
1429SetProcessPriorityBoost@8
1430401SetProcessShutdownParameters@8
1431SetProcessUserModeExceptionPolicy@4
1432SetProcessWorkingSetSize@12
1433SetProcessWorkingSetSizeEx@16
1434SetProtectedPolicy@12
1435SetSearchPathMode@4
1436402SetStdHandle@8
1437SetStdHandleEx@12
1438SetSystemFileCacheSize@12
1439SetSystemPowerState@8
1440403SetSystemTime@4
1441SetSystemTimeAdjustment@8
1442404SetTapeParameters@12
1443405SetTapePosition@24
1444SetTermsrvAppInstallMode@4
1445SetThreadAffinityMask@8
1446406SetThreadContext@8
1447SetThreadDescription@8
1448SetThreadErrorMode@8
1449SetThreadExecutionState@4
1450SetThreadGroupAffinity@12
1451SetThreadIdealProcessor@8
1452SetThreadIdealProcessorEx@12
1453SetThreadInformation@16
1454407SetThreadLocale@4
1455SetThreadPreferredUILanguages@12
1456408SetThreadPriority@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
1471409SetTimeZoneInformation@4
1472SetTimerQueueTimer@24
1473410SetUnhandledExceptionFilter@4
1474SetUserGeoID@4
1475SetUserGeoName@4
1476SetVDMCurrentDirectories@8
1477411SetVolumeLabelA@8
1478412SetVolumeLabelW@8
1479SetVolumeMountPointA@8
1480SetVolumeMountPointW@8
1481SetVolumeMountPointWStub@8
1482SetWaitableTimer@24
1483SetWaitableTimerEx@28
1484SetXStateFeaturesMask@12
1485413SetupComm@12
1486ShowConsoleCursor@8
1487SignalObjectAndWait@16
1488414SizeofResource@8
1489415Sleep@4
1490SleepConditionVariableCS@12
1491SleepConditionVariableSRW@16
1492416SleepEx@8
1493SortCloseHandle@4
1494SortGetHandle@12
1495StartThreadpoolIo@4
1496SubmitIoRing@16
1497SubmitThreadpoolWork@4
1498417SuspendThread@4
1499SwitchToFiber@4
1500SwitchToThread@0
1501418SystemTimeToFileTime@8
1502SystemTimeToTzSpecificLocalTime@12
1503SystemTimeToTzSpecificLocalTimeEx@12
1504TerminateJobObject@8
1505419TerminateProcess@8
1506420TerminateThread@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
1523421TlsAlloc@0
1524422TlsFree@4
1525TlsGetValue2@4
1526423TlsGetValue@4
1527424TlsSetValue@8
1528Toolhelp32ReadProcessMemory@20
1529425TransactNamedPipe@28
1530426TransmitCommChar@8
1531TrimVirtualBuffer@4
1532TryAcquireSRWLockExclusive@4
1533TryAcquireSRWLockShared@4
1534TryEnterCriticalSection@4
1535TrySubmitThreadpoolCallback@12
1536TzSpecificLocalTimeToSystemTime@12
1537TzSpecificLocalTimeToSystemTimeEx@12
1538UTRegister@28
1539UTUnRegister@4
1540427UnhandledExceptionFilter@4
1541428UnlockFile@20
1542429UnlockFileEx@20
1543430UnmapViewOfFile@4
1544UnmapViewOfFileEx@8
1545UnmapViewOfFileVlm@4
1546UnregisterApplicationRecoveryCallback@0
1547UnregisterApplicationRestart@0
1548UnregisterBadMemoryNotification@4
1549UnregisterConsoleIME@0
1550UnregisterWait@4
1551UnregisterWaitEx@8
1552UnregisterWaitUntilOOBECompleted@4
1553UpdateCalendarDayOfWeek@4
1554UpdateProcThreadAttribute@28
1555431UpdateResourceA@24
1556432UpdateResourceW@24
1557VDMConsoleOperation@8
1558VDMOperationStarted@4
1559433VerLanguageNameA@12
1560434VerLanguageNameW@12
1561VerSetConditionMask@16
1562VerifyConsoleIoHandle@4
1563VerifyScripts@20
1564VerifyVersionInfoA@16
1565VerifyVersionInfoW@16
1566435VirtualAlloc@16
1567VirtualAllocEx@20
1568VirtualAllocExNuma@24
1569VirtualAllocVlm@24
1570VirtualBufferExceptionHandler@12
1571436VirtualFree@12
1572VirtualFreeEx@16
1573VirtualFreeVlm@20
1574437VirtualLock@8
1575438VirtualProtect@16
1576439VirtualProtectEx@20
1577VirtualProtectVlm@24
1578440VirtualQuery@12
1579441VirtualQueryEx@16
1580VirtualQueryVlm@16
1581442VirtualUnlock@8
1582WTSGetActiveConsoleSessionId@0
1583443WaitCommEvent@12
1584444WaitForDebugEvent@8
1585WaitForDebugEventEx@8
1586445WaitForMultipleObjects@16
1587446WaitForMultipleObjectsEx@20
1588447WaitForSingleObject@8
1589448WaitForSingleObjectEx@12
1590WaitForThreadpoolIoCallbacks@8
1591WaitForThreadpoolTimerCallbacks@8
1592WaitForThreadpoolWaitCallbacks@8
1593WaitForThreadpoolWorkCallbacks@8
1594449WaitNamedPipeA@8
1595450WaitNamedPipeW@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
1629451WideCharToMultiByte@32
1630452WinExec@8
1631Wow64DisableWow64FsRedirection@4
1632Wow64EnableWow64FsRedirection@4
1633Wow64GetThreadContext@8
1634Wow64GetThreadSelectorEntry@12
1635Wow64RevertWow64FsRedirection@4
1636Wow64SetThreadContext@8
1637Wow64SuspendThread@4
1638453WriteConsoleA@20
1639454WriteConsoleInputA@16
1640WriteConsoleInputVDMA@16
1641WriteConsoleInputVDMW@16
1642455WriteConsoleInputW@16
1643456WriteConsoleOutputA@20
1644457WriteConsoleOutputAttribute@20
......@@ -1648,23 +461,16 @@ WriteConsoleOutputW@20
1648461WriteConsoleW@20
1649462WriteFile@20
1650463WriteFileEx@20
1651WriteFileGather@20
1652WriteFileVlm@20
1653464WritePrivateProfileSectionA@12
1654465WritePrivateProfileSectionW@12
1655466WritePrivateProfileStringA@16
1656467WritePrivateProfileStringW@16
1657WritePrivateProfileStructA@20
1658WritePrivateProfileStructW@20
1659468WriteProcessMemory@20
1660WriteProcessMemoryVlm@20
1661469WriteProfileSectionA@8
1662470WriteProfileSectionW@8
1663471WriteProfileStringA@12
1664472WriteProfileStringW@12
1665473WriteTapemark@16
1666ZombifyActCtx@4
1667ZombifyActCtxWorker@4
1668474_hread@12
1669475_hwrite@12
1670476_lclose@4
......@@ -1673,32 +479,1760 @@ _llseek@12
1673479_lopen@8
1674480_lread@12
1675481_lwrite@12
1676lstrcat@8
1677482lstrcatA@8
1678483lstrcatW@8
1679lstrcmp@8
1680484lstrcmpA@8
1681485lstrcmpW@8
1682lstrcmpi@8
1683486lstrcmpiA@8
1684487lstrcmpiW@8
1685lstrcpy@8
1686488lstrcpyA@8
1687489lstrcpyW@8
1688lstrcpyn@12
490lstrlenA@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
1689552lstrcpynA@12
1690553lstrcpynW@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
1691566lstrlen@4
1692lstrlenA@4
1693lstrlenW@4
1694;
1695; MSDN says these functions are exported
1696; from winmm.dll. Commented out for
1697; compatibility with older versions of
1698; Windows.
1699;
1700;timeBeginPeriod@4
1701;timeEndPeriod@4
1702;timeGetDevCaps@8
1703;timeGetSystemTime@8
1704;timeGetTime@0
567
568; This is list of symbols added in Win32s 1.20, available since Windows NT 3.1, but not available in Win9x
569AddConsoleAliasW@12
570BaseAttachCompleteThunk@0 ; FIXME: All WinNT versions have ABI "BaseAttachCompleteThunk@16", removed in Windows XP
571; BasepDebugDump@4 ; removed in Windows NT 3.51
572CloseConsoleHandle@4
573CmdBatNotification@4
574ConsoleMenuControl@12
575; ConsoleSubst@16 ; removed in Windows NT 3.51
576CreateVirtualBuffer@12 ; removed in Windows Server 2003 SP1
577DuplicateConsoleHandle@16
578ExitVDM@8
579ExpungeConsoleCommandHistoryA@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;
2; Definition file of ntdll.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ntdll.dll"
1LIBRARY "NTDLL.dll"
72EXPORTS
8RtlDispatchAPC@12
9RtlActivateActivationContextUnsafeFast@0
10RtlDeactivateActivationContextUnsafeFast@0
11RtlInterlockedPushListSList@8
12@RtlUlongByteSwap@4
13@RtlUlonglongByteSwap@8
14@RtlUshortByteSwap@4
15ExpInterlockedPopEntrySListEnd@0
16ExpInterlockedPopEntrySListFault@0
17ExpInterlockedPopEntrySListResume@0
18RtlpInterlockedPopEntrySeqSListEnd@0
19RtlpInterlockedPopEntrySeqSListFault@0
20RtlpInterlockedPopEntrySeqSListResume@0
21A_SHAFinal@8
22A_SHAInit@4
23A_SHAUpdate@12
24AlpcAdjustCompletionListConcurrencyCount@8
25AlpcFreeCompletionListMessage@8
26AlpcGetCompletionListLastMessageInformation@12
27AlpcGetCompletionListMessageAttributes@8
28AlpcGetHeaderSize@4
29AlpcGetMessageAttribute@8
30AlpcGetMessageFromCompletionList@8
31AlpcGetOutstandingCompletionListMessageCount@4
32AlpcInitializeMessageAttribute@16
33AlpcMaxAllowedMessageLength@0
34AlpcRegisterCompletionList@20
35AlpcRegisterCompletionListWorkerThread@4
36AlpcRundownCompletionList@4
37AlpcUnregisterCompletionList@4
38AlpcUnregisterCompletionListWorkerThread@4
39ApiSetQueryApiSetPresence@8
40ApiSetQueryApiSetPresenceEx@12
41CsrAllocateCaptureBuffer@8
3
4; This file is a comprehensive documentation for 32-bit x86 ntdll.dll symbols.
5; It covers all 3 platforms Win32s, Win9x and WinNT and contains information
6; from native ntdll.dll libraries on 32-bit Windows systems and also from
7; 32-bit WoW64 ntdll.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 subset of Win9x symbols which is subset
11; of WinNT symbols. Comments contains additional information with exceptions.
12
13; 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)
14DbgBreakPoint@0
15DbgPrint ; cdecl
16DbgPrompt@12
17NtCurrentTeb@0
18NtQueryEaFile@36
19NtQueryPerformanceCounter@8
20NtSetEaFile@16
21RtlCreateHeap@24
22RtlEnlargedIntegerMultiply@8
23RtlExtendedIntegerMultiply@12
24RtlExtendedLargeIntegerDivide@16
25RtlImageDirectoryEntryToData@16
26RtlImageNtHeader@4
27RtlLargeIntegerSubtract@16
28RtlUnwind@16
29RtlValidateHeap@12 ; Win32s, Win9x and Windows NT 3.1 has ABI "RtlValidateHeap@4", Windows NT 3.5 and new has ABI "RtlValidateHeap@12"
30
31; This is list of symbols available only in Win32s (not available in Win9x and WinNT)
32; RtlProcessHeap@0
33
34; This is list of symbols available in Win32s and Win9x but not in WinNT
35; RtlExFreeHeap@12
36; 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
42140CsrAllocateMessagePointer@12
43141CsrCaptureMessageBuffer@16
44CsrCaptureMessageMultiUnicodeStringsInPlace@12
45142CsrCaptureMessageString@20
46143CsrCaptureTimeout@8
47144CsrClientCallServer@16
48CsrClientConnectToServer@20
145CsrClientConnectToServer@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
49150CsrFreeCaptureBuffer@4
50CsrGetProcessId@0
51151CsrIdentifyAlertableThread@0
52CsrNewThread@0
53CsrProbeForRead@12
54CsrProbeForWrite@12
152CsrNewThread@0 ; removed in Windows Vista SP1
153CsrProbeForRead@12 ; removed in Windows Vista
154CsrProbeForWrite@12 ; removed in Windows Vista
55155CsrSetPriorityClass@8
56CsrVerifyRegion@8
57DbgBreakPoint@0
58DbgPrint
59DbgPrintEx
60DbgPrintReturnControlC
61DbgPrompt@12
62DbgQueryDebugFilterState@8
63DbgSetDebugFilterState@12
64DbgSsHandleKmApiMsg@8
65DbgSsInitialize@16
156; CsrStartProfile@0 ; removed in Windows NT 3.5
157; CsrStopDumpProfile@0 ; removed in Windows NT 3.5
158; CsrStopProfile@0 ; removed in Windows NT 3.5
159; CsrpProcessCallbackRequest@4 ; removed in Windows NT 4.0
160DbgSsHandleKmApiMsg@8 ; removed in Windows XP
161DbgSsInitialize@16 ; removed in Windows XP
66162DbgUiConnectToDbg@0
67163DbgUiContinue@8
68DbgUiConvertStateChangeStructure@8
69DbgUiConvertStateChangeStructureEx@8
70DbgUiDebugActiveProcess@4
71DbgUiGetThreadDebugObject@0
72DbgUiIssueRemoteBreakin@4
73DbgUiRemoteBreakin@4
74DbgUiSetThreadDebugObject@4
75DbgUiStopDebugging@4
76164DbgUiWaitStateChange@8
77165DbgUserBreakPoint@0
78EtwCheckCoverage@4
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
166KiUserApcDispatcher@20 ; really stdcall @20, gendef detects it incorrectly
125167KiUserExceptionDispatcher@8
126168LdrAccessResource@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
140169LdrFindEntryForAddress@8
141170LdrFindResourceDirectory_U@16
142LdrFindResourceEx_U@20
143171LdrFindResource_U@16
144LdrFlushAlternateResourceModules@0
145LdrGetDllDirectory@4
146LdrGetDllFullName@8
147172LdrGetDllHandle@16
148LdrGetDllHandleByMapping@8
149LdrGetDllHandleByName@12
150LdrGetDllHandleEx@20
151LdrGetDllPath@16
152LdrGetFailureData@0
153LdrGetFileNameFromLoadAsDataTable@8
154173LdrGetProcedureAddress@16
155LdrGetProcedureAddressEx@20
156LdrGetProcedureAddressForCaller@24
157LdrHotPatchRoutine@0
158LdrInitShimEngineDynamic@4
159LdrInitializeEnclave@20
160LdrInitializeThunk@16
161LdrIsModuleSxsRedirected@4
162LdrLoadAlternateResourceModule@16
163LdrLoadAlternateResourceModuleEx@20
174LdrInitializeThunk@16 ; really stdcall @16, gendef detects it incorrectly
164175LdrLoadDll@16
165LdrLoadEnclaveModule@12
166LdrLockLoaderLock@12
167LdrOpenImageFileOptionsKey@12
168LdrParentInterlockedPopEntrySList@0
169LdrParentRtlInitializeNtUserPfn@0
170LdrParentRtlResetNtUserPfn@0
171LdrParentRtlRetrieveNtUserPfn@0
172176LdrProcessRelocationBlock@16
173LdrProcessRelocationBlockEx@20
174177LdrQueryImageFileExecutionOptions@24
175LdrQueryImageFileExecutionOptionsEx@28
176LdrQueryImageFileKeyOption@24
177LdrQueryModuleServiceTags@12
178LdrQueryOptionalDelayLoadedAPI@16
179178LdrQueryProcessModuleInformation@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
197179LdrShutdownProcess@0
198180LdrShutdownThread@0
199LdrStandardizeSystemPath@4
200LdrSystemDllInitBlock@0
201LdrUnloadAlternateResourceModule@4
202LdrUnloadAlternateResourceModuleEx@8
203181LdrUnloadDll@4
204LdrUnlockLoaderLock@8
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
182LdrVerifyImageMatchesChecksum@16 ; Windows NT 3.1-3.51 has ABI "LdrVerifyImageMatchesChecksum@4", Windows NT 4.0 and new has ABI "LdrVerifyImageMatchesChecksum@16"
223183NtAcceptConnectPort@24
224184NtAccessCheck@32
225185NtAccessCheckAndAuditAlarm@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
238186NtAdjustGroupsToken@24
239187NtAdjustPrivilegesToken@24
240NtAdjustTokenClaimsAndDeviceGroups@64
241188NtAlertResumeThread@8
242189NtAlertThread@4
243NtAlertThreadByThreadId@4
244190NtAllocateLocallyUniqueId@4
245NtAllocateReserveObject@12
246NtAllocateUserPhysicalPages@12
247NtAllocateUserPhysicalPagesEx@20
248NtAllocateUuids@16
249191NtAllocateVirtualMemory@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
281192NtCancelIoFile@8
282NtCancelIoFileEx@12
283NtCancelSynchronousIoFile@12
284NtCancelTimer2@8
285193NtCancelTimer@8
286NtCancelWaitCompletionPacket@8
287NtChangeProcessState@24
288NtChangeThreadState@24
289NtClearEvent@4
290NtClose@4
291194NtCloseObjectAuditAlarm@12
292NtCommitComplete@8
293NtCommitEnlistment@8
294NtCommitRegistryTransaction@8
295NtCommitTransaction@8
296NtCompactKeys@8
297NtCompareObjects@8
298NtCompareSigningLevels@8
299NtCompareTokens@12
300195NtCompleteConnectPort@4
301NtCompressKey@4
302196NtConnectPort@32
303197NtContinue@8
304NtContinueEx@8
305NtConvertBetweenAuxiliaryCounterAndPerformanceCounter@16
306NtCreateCrossVmEvent@24
307NtCreateCrossVmMutant@24
308NtCreateDebugObject@16
309198NtCreateDirectoryObject@12
310NtCreateDirectoryObjectEx@20
311NtCreateEnclave@36
312NtCreateEnlistment@32
313199NtCreateEvent@20
314200NtCreateEventPair@12
315NtCreateFile@44
316NtCreateIRTimer@12
317NtCreateIoCompletion@16
318NtCreateIoRing@20
319NtCreateJobObject@12
320NtCreateJobSet@12
321201NtCreateKey@28
322NtCreateKeyTransacted@32
323NtCreateKeyedEvent@16
324NtCreateLowBoxToken@36
325202NtCreateMailslotFile@32
326203NtCreateMutant@16
327204NtCreateNamedPipeFile@56
328205NtCreatePagingFile@16
329NtCreatePartition@16
330206NtCreatePort@20
331NtCreatePrivateNamespace@16
332207NtCreateProcess@32
333NtCreateProcessEx@36
334NtCreateProcessStateChange@20
335NtCreateProfile@36
336NtCreateProfileEx@40
337NtCreateRegistryTransaction@16
338NtCreateResourceManager@28
339NtCreateSection@28
340NtCreateSectionEx@36
341NtCreateSemaphore@20
208NtCreateProfile@36 ; Windows NT 3.1-3.5 has ABI "NtCreateProfile@28", Windows NT 3.51 and new has ABI "NtCreateProfile@36"
342209NtCreateSymbolicLinkObject@16
343210NtCreateThread@32
344NtCreateThreadEx@44
345NtCreateThreadStateChange@20
346NtCreateTimer2@20
347NtCreateTimer@16
211NtCreateTimer@16 ; Windows NT 3.1-3.51 has ABI "NtCreateTimer@12", Windows NT 4.0 and new has ABI "NtCreateTimer@16"
348212NtCreateToken@52
349NtCreateTokenEx@68
350NtCreateTransaction@40
351NtCreateTransactionManager@24
352NtCreateUserProcess@44
353NtCreateWaitCompletionPacket@12
354NtCreateWaitablePort@20
355NtCreateWnfStateName@28
356NtCreateWorkerFactory@40
357NtCurrentTeb@0
358NtDebugActiveProcess@8
359NtDebugContinue@12
360213NtDelayExecution@8
361NtDeleteAtom@4
362NtDeleteBootEntry@4
363NtDeleteDriverEntry@4
364NtDeleteFile@4
365214NtDeleteKey@4
366NtDeleteObjectAuditAlarm@12
367NtDeletePrivateNamespace@4
368215NtDeleteValueKey@8
369NtDeleteWnfStateData@8
370NtDeleteWnfStateName@4
371216NtDeviceIoControlFile@40
372NtDirectGraphicsCall@20
373NtDisableLastKnownGood@0
374217NtDisplayString@4
375NtDrawText@4
376218NtDuplicateObject@28
377219NtDuplicateToken@24
378NtEnableLastKnownGood@0
379NtEnumerateBootEntries@8
380NtEnumerateDriverEntries@8
381220NtEnumerateKey@24
382NtEnumerateSystemEnvironmentValuesEx@12
383NtEnumerateTransactionObject@20
384221NtEnumerateValueKey@24
385222NtExtendSection@8
386NtFilterBootOption@20
387NtFilterToken@24
388NtFilterTokenEx@56
389NtFindAtom@12
390223NtFlushBuffersFile@8
391NtFlushBuffersFileEx@20
392NtFlushInstallUILanguage@8
393224NtFlushInstructionCache@12
394225NtFlushKey@4
395NtFlushProcessWriteBuffers@0
396226NtFlushVirtualMemory@16
397227NtFlushWriteBuffer@0
398NtFreeUserPhysicalPages@12
399228NtFreeVirtualMemory@16
400NtFreezeRegistry@4
401NtFreezeTransactions@8
402229NtFsControlFile@40
403NtGetCachedSigningLevel@24
404NtGetCompleteWnfStateSubscription@24
405230NtGetContextThread@8
406NtGetCurrentProcessorNumber@0
407NtGetCurrentProcessorNumberEx@4
408NtGetDevicePowerState@8
409NtGetMUIRegistryInfo@12
410NtGetNextProcess@20
411NtGetNextThread@24
412NtGetNlsSectionPtr@20
413NtGetNotificationResourceManager@28
414NtGetPlugPlayEvent@16
415NtGetTickCount@0
416NtGetWriteWatch@28
417NtImpersonateAnonymousToken@4
231; NtGetTickCount@0 ; removed in Windows XP
418232NtImpersonateClientOfPort@8
419233NtImpersonateThread@12
420NtInitializeEnclave@20
421NtInitializeNlsFiles@16 ;Check!!! gendef says 12
422234NtInitializeRegistry@4
423NtInitiatePowerAction@16
424NtIsProcessInJob@8
425NtIsSystemResumeAutomatic@0
426NtIsUILanguageComitted@0
235; NtInitializeVDM@0 ; removed in Windows NT 3.5
427236NtListenPort@8
428237NtLoadDriver@4
429NtLoadEnclaveData@36
430NtLoadKey2@12
431NtLoadKey3@32
432238NtLoadKey@8
433NtLoadKeyEx@32
434239NtLockFile@40
435NtLockProductActivationKeys@8
436NtLockRegistryKey@4
437240NtLockVirtualMemory@16
438NtMakePermanentObject@4
439241NtMakeTemporaryObject@4
440NtManageHotPatch@16
441NtManagePartition@20
442NtMapCMFModule@24
443NtMapUserPhysicalPages@12
444NtMapUserPhysicalPagesScatter@12
445NtMapViewOfSection@40
446NtMapViewOfSectionEx@36
447NtModifyBootEntry@4
448NtModifyDriverEntry@4
449242NtNotifyChangeDirectoryFile@36
450NtNotifyChangeDirectoryFileEx@40
451243NtNotifyChangeKey@40
452NtNotifyChangeMultipleKeys@48
453NtNotifyChangeSession@32
454NtOpenDirectoryObject@12
455NtOpenEnlistment@20
456244NtOpenEvent@12
457245NtOpenEventPair@12
458246NtOpenFile@24
459NtOpenIoCompletion@12
460NtOpenJobObject@12
461247NtOpenKey@12
462NtOpenKeyEx@16
463NtOpenKeyTransacted@16
464NtOpenKeyTransactedEx@20
465NtOpenKeyedEvent@12
466248NtOpenMutant@12
467249NtOpenObjectAuditAlarm@48
468NtOpenPartition@12
469NtOpenPrivateNamespace@16
470250NtOpenProcess@16
471251NtOpenProcessToken@12
472NtOpenProcessTokenEx@16
473NtOpenRegistryTransaction@12
474NtOpenResourceManager@20
475252NtOpenSection@12
476253NtOpenSemaphore@12
477NtOpenSession@12
478254NtOpenSymbolicLinkObject@12
479255NtOpenThread@16
480256NtOpenThreadToken@16
481NtOpenThreadTokenEx@20
482257NtOpenTimer@12
483NtOpenTransaction@20
484NtOpenTransactionManager@24
485NtPlugPlayControl@12
486NtPowerInformation@20
487NtPrePrepareComplete@8
488NtPrePrepareEnlistment@8
489NtPrepareComplete@8
490NtPrepareEnlistment@8
491258NtPrivilegeCheck@12
492259NtPrivilegeObjectAuditAlarm@24
493260NtPrivilegedServiceAuditAlarm@20
494NtPropagationComplete@16
495NtPropagationFailed@12
496261NtProtectVirtualMemory@20
497NtPssCaptureVaSpaceBulk@20
498262NtPulseEvent@8
499NtQueryAttributesFile@8
500NtQueryAuxiliaryCounterFrequency@4
501NtQueryBootEntryOrder@8
502NtQueryBootOptions@8
503NtQueryDebugFilterState@8
504263NtQueryDefaultLocale@8
505NtQueryDefaultUILanguage@4
506264NtQueryDirectoryFile@44
507NtQueryDirectoryFileEx@40
508265NtQueryDirectoryObject@28
509NtQueryDriverEntryOrder@8
510NtQueryEaFile@36
511266NtQueryEvent@20
512NtQueryFullAttributesFile@8
513NtQueryInformationAtom@20
514NtQueryInformationByName@20
515NtQueryInformationEnlistment@20
516267NtQueryInformationFile@20
517NtQueryInformationJobObject@20
518268NtQueryInformationPort@20
519269NtQueryInformationProcess@20
520NtQueryInformationResourceManager@20
521270NtQueryInformationThread@20
522271NtQueryInformationToken@20
523NtQueryInformationTransaction@20
524NtQueryInformationTransactionManager@20
525NtQueryInformationWorkerFactory@20
526NtQueryInstallUILanguage@4
527NtQueryIntervalProfile@8
528NtQueryIoCompletion@20
529NtQueryIoRingCapabilities@8
272NtQueryIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "NtQueryIntervalProfile@4", Windows NT 3.51 and new has ABI "NtQueryIntervalProfile@8"
530273NtQueryKey@20
531NtQueryLicenseValue@20
532NtQueryMultipleValueKey@24
533274NtQueryMutant@20
534275NtQueryObject@20
535NtQueryOpenSubKeys@8
536NtQueryOpenSubKeysEx@16
537NtQueryPerformanceCounter@8
538NtQueryPortInformationProcess@0
539NtQueryQuotaInformationFile@36
540276NtQuerySection@20
541NtQuerySecurityAttributesToken@24
542277NtQuerySecurityObject@20
543NtQuerySecurityPolicy@24
544278NtQuerySemaphore@20
545279NtQuerySymbolicLinkObject@12
546280NtQuerySystemEnvironmentValue@16
547NtQuerySystemEnvironmentValueEx@20
548281NtQuerySystemInformation@16
549NtQuerySystemInformationEx@24
550282NtQuerySystemTime@4
551283NtQueryTimer@20
552NtQueryTimerResolution@12
553284NtQueryValueKey@24
554285NtQueryVirtualMemory@24
555286NtQueryVolumeInformationFile@20
556NtQueryWnfStateData@24
557NtQueryWnfStateNameInformation@20
558NtQueueApcThread@20
559NtQueueApcThreadEx2@28
560NtQueueApcThreadEx@24
561287NtRaiseException@12
562288NtRaiseHardError@24
563289NtReadFile@36
564NtReadFileScatter@36
565NtReadOnlyEnlistment@8
566290NtReadRequestData@24
567291NtReadVirtualMemory@20
568NtReadVirtualMemoryEx@24
569NtRecoverEnlistment@8
570NtRecoverResourceManager@4
571NtRecoverTransactionManager@4
572NtRegisterProtocolAddressInformation@20
573292NtRegisterThreadTerminatePort@4
574NtReleaseCMFViewOwnership@0
575NtReleaseKeyedEvent@16
576293NtReleaseMutant@8
577NtReleaseSemaphore@12
578NtReleaseWorkerFactoryWorker@4
579NtRemoveIoCompletion@20
580NtRemoveIoCompletionEx@24
581NtRemoveProcessDebug@8
582NtRenameKey@8
583NtRenameTransactionManager@8
294; NtReleaseProcessMutant@0 ; removed in Windows NT 4.0
295; NtRenameValueKey@16 ; removed in Windows NT 3.5
584296NtReplaceKey@12
585NtReplacePartitionUnit@12
586297NtReplyPort@8
587298NtReplyWaitReceivePort@16
588NtReplyWaitReceivePortEx@20
589299NtReplyWaitReplyPort@8
590NtRequestDeviceWakeup@4
591300NtRequestPort@8
592301NtRequestWaitReplyPort@12
593NtRequestWakeupLatency@4
594302NtResetEvent@8
595NtResetWriteWatch@12
596303NtRestoreKey@12
597NtResumeProcess@4
598304NtResumeThread@8
599NtRevertContainerImpersonation@0
600NtRollbackComplete@8
601NtRollbackEnlistment@8
602NtRollbackRegistryTransaction@8
603NtRollbackTransaction@8
604NtRollforwardTransactionManager@8
605305NtSaveKey@8
606NtSaveKeyEx@12
607NtSaveMergedKeys@12
608NtSecureConnectPort@36
609NtSerializeBoot@0
610NtSetBootEntryOrder@8
611NtSetBootOptions@8
612NtSetCachedSigningLevel2@24
613NtSetCachedSigningLevel@20
614306NtSetContextThread@8
615NtSetDebugFilterState@12
616307NtSetDefaultHardErrorPort@4
617308NtSetDefaultLocale@8
618NtSetDefaultUILanguage@4
619NtSetDriverEntryOrder@8
620NtSetEaFile@16
621309NtSetEvent@8
622NtSetEventBoostPriority@4
623310NtSetHighEventPair@4
624311NtSetHighWaitLowEventPair@4
625NtSetIRTimer@8
626NtSetInformationDebugObject@20
627NtSetInformationEnlistment@16
312; NtSetHighWaitLowThread@0 ; removed in Windows 2000
628313NtSetInformationFile@20
629NtSetInformationIoRing@16
630NtSetInformationJobObject@16
631314NtSetInformationKey@16
632NtSetInformationObject@16
633315NtSetInformationProcess@16
634NtSetInformationResourceManager@16
635NtSetInformationSymbolicLink@16
636316NtSetInformationThread@16
637317NtSetInformationToken@16
638NtSetInformationTransaction@16
639NtSetInformationTransactionManager@16
640NtSetInformationVirtualMemory@24
641NtSetInformationWorkerFactory@16
642NtSetIntervalProfile@8
643NtSetIoCompletion@20
644NtSetIoCompletionEx@24
318NtSetIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "NtSetIntervalProfile@4", Windows NT 3.51 and new has ABI "NtSetIntervalProfile@8"
645319NtSetLdtEntries@24
646320NtSetLowEventPair@4
647321NtSetLowWaitHighEventPair@4
648NtSetQuotaInformationFile@16
322; NtSetLowWaitHighThread@0 ; removed in Windows 2000
649323NtSetSecurityObject@12
650324NtSetSystemEnvironmentValue@8
651NtSetSystemEnvironmentValueEx@20
652NtSetSystemInformation@12
653NtSetSystemPowerState@12
654325NtSetSystemTime@8
655NtSetThreadExecutionState@8
656NtSetTimer2@16
657NtSetTimer@28
658NtSetTimerEx@16
659NtSetTimerResolution@12
660NtSetUuidSeed@4
326NtSetTimer@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
661327NtSetValueKey@24
662328NtSetVolumeInformationFile@20
663NtSetWnfProcessNotificationEvent@4
664329NtShutdownSystem@4
665NtShutdownWorkerFactory@8
666NtSignalAndWaitForSingleObject@16
667NtSinglePhaseReject@8
668330NtStartProfile@4
669331NtStopProfile@4
670NtSubmitIoRing@16
671NtSubscribeWnfStateChange@16
672NtSuspendProcess@4
673332NtSuspendThread@8
674333NtSystemDebugControl@24
675NtTerminateEnclave@8
676NtTerminateJobObject@8
677334NtTerminateProcess@8
678335NtTerminateThread@8
679336NtTestAlert@0
680NtThawRegistry@0
681NtThawTransactions@0
682NtTraceControl@24
683NtTraceEvent@16
684NtTranslateFilePath@16
685NtUmsThreadYield@4
686337NtUnloadDriver@4
687NtUnloadKey2@8
688338NtUnloadKey@4
689NtUnloadKeyEx@8
690339NtUnlockFile@20
691340NtUnlockVirtualMemory@16
692NtUnmapViewOfSection@8
693NtUnmapViewOfSectionEx@12
694NtUnsubscribeWnfStateChange@4
695NtUpdateWnfStateData@28
696NtVdmControl@8
697NtWaitForAlertByThreadId@8
698NtWaitForDebugEvent@16
699NtWaitForKeyedEvent@16
700NtWaitForMultipleObjects32@20
341NtVdmControl@8 ; Windows NT 3.1 has ABI "NtVdmControl@16", Windows NT 3.5 and new has ABI "NtVdmControl@8"
342; NtVdmStartExecution@0 ; removed in Windows NT 3.5
701343NtWaitForMultipleObjects@20
702NtWaitForSingleObject@12
703NtWaitForWorkViaWorkerFactory@8
344; NtWaitForProcessMutant@0 ; removed in Windows NT 4.0
704345NtWaitHighEventPair@4
705346NtWaitLowEventPair@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
726347NtWriteFile@36
727NtWriteFileGather@36
728348NtWriteRequestData@24
729349NtWriteVirtualMemory@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
737350PfxFindPrefix@8
738351PfxInitialize@4
739352PfxInsertPrefix@12
740353PfxRemovePrefix@8
741PssNtCaptureSnapshot@16
742PssNtDuplicateSnapshot@20
743PssNtFreeRemoteSnapshot@8
744PssNtFreeSnapshot@4
745PssNtFreeWalkMarker@4
746PssNtQuerySnapshot@16
747PssNtValidateDescriptor@8
748PssNtWalkSnapshot@20
749354RtlAbortRXact@4
750355RtlAbsoluteToSelfRelativeSD@12
751356RtlAcquirePebLock@0
752RtlAcquirePrivilege@16
753RtlAcquireReleaseSRWLockExclusive@4
754357RtlAcquireResourceExclusive@8
755358RtlAcquireResourceShared@8
756RtlAcquireSRWLockExclusive@4
757RtlAcquireSRWLockShared@4
758RtlActivateActivationContext@12
759RtlActivateActivationContextEx@16
760359RtlAddAccessAllowedAce@16
761RtlAddAccessAllowedAceEx@20
762RtlAddAccessAllowedObjectAce@28
763360RtlAddAccessDeniedAce@16
764RtlAddAccessDeniedAceEx@20
765RtlAddAccessDeniedObjectAce@28
766RtlAddAccessFilterAce@32
767361RtlAddAce@20
768362RtlAddActionToRXact@24
769RtlAddAtomToAtomTable@12
770363RtlAddAttributeActionToRXact@32
771364RtlAddAuditAccessAce@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
787365RtlAdjustPrivilege@16
788RtlAllocateActivationContextStack@4
789366RtlAllocateAndInitializeSid@44
790RtlAllocateAndInitializeSidEx@16
791RtlAllocateHandle@8
792RtlAllocateHeap@12
793RtlAllocateMemoryBlockLookaside@12
794RtlAllocateMemoryZone@12
795RtlAllocateWnfSerializationGroup@0
367; RtlAnalyzeProfile@0 ; removed in Windows NT 3.5
796368RtlAnsiCharToUnicodeChar@4
797RtlAnsiStringToUnicodeSize@4
798RtlAnsiStringToUnicodeString@12
799369RtlAppendAsciizToString@8
800RtlAppendPathElement@12
801370RtlAppendStringToString@8
802371RtlAppendUnicodeStringToString@8
803372RtlAppendUnicodeToString@8
804RtlApplicationVerifierStop@40
805373RtlApplyRXact@4
806374RtlApplyRXactNoFlush@4
807RtlAppxIsFileOwnedByTrustedInstaller@8
808375RtlAreAllAccessesGranted@8
809376RtlAreAnyAccessesGranted@8
810377RtlAreBitsClear@12
811378RtlAreBitsSet@12
812RtlAreLongPathsEnabled@0
813379RtlAssert@16
814RtlAvlInsertNodeEx@16
815RtlAvlRemoveNode@8
816RtlBarrier@8
817RtlBarrierForDelete@8
818RtlCallbackLpcClient@12
819RtlCancelTimer@8
820RtlCanonicalizeDomainName@12
821RtlCapabilityCheck@12
822RtlCapabilityCheckForSingleSessionSku@12
823RtlCaptureContext@4
824380RtlCaptureStackBackTrace@16
825RtlCaptureStackContext@12
826381RtlCharToInteger@12
827RtlCheckBootStatusIntegrity@8
828RtlCheckForOrphanedCriticalSections@4
829RtlCheckPortableOperatingSystem@4
830382RtlCheckRegistryKey@8
831RtlCheckSandboxedToken@8
832RtlCheckSystemBootStatusIntegrity@4
833RtlCheckTokenCapability@12
834RtlCheckTokenMembership@12
835RtlCheckTokenMembershipEx@16
836RtlCleanUpTEBLangLists@0
837383RtlClearAllBits@4
838RtlClearBit@8
839384RtlClearBits@12
840RtlClearThreadWorkOnBehalfTicket@0
841RtlCloneMemoryStream@8
842RtlCloneUserProcess@20
843RtlCmDecodeMemIoResource@8
844RtlCmEncodeMemIoResource@24
845RtlCommitDebugInfo@8
846RtlCommitMemoryStream@8
847385RtlCompactHeap@8
848RtlCompareAltitudes@8
849RtlCompareExchangePointerMapping@16
850RtlCompareExchangePropertyStore@16
851386RtlCompareMemory@12
852387RtlCompareMemoryUlong@12
853388RtlCompareString@12
854389RtlCompareUnicodeString@12
855RtlCompareUnicodeStrings@20
856RtlCompressBuffer@32
857RtlComputeCrc32@12
858RtlComputeImportTableHash@12
859RtlComputePrivatizedDllName_U@12
860RtlConnectToSm@16
861390RtlConsoleMultiByteToUnicodeN@24
862RtlConstructCrossVmEventPath@12
863RtlConstructCrossVmMutexPath@12
864RtlContractHashTable@4
865RtlConvertDeviceFamilyInfoToString@16
866391RtlConvertExclusiveToShared@4
867RtlConvertLCIDToString@20
868RtlConvertLongToLargeInteger@4
869RtlConvertSRWLockExclusiveToShared@4
870392RtlConvertSharedToExclusive@4
871393RtlConvertSidToUnicodeString@12
872RtlConvertToAutoInheritSecurityObject@24
873RtlConvertUiListToApiList@12
874RtlConvertUlongToLargeInteger@4
875RtlCopyBitMap@12
876RtlCopyContext@12
877RtlCopyExtendedContext@12
394RtlConvertUiListToApiList@12 ; removed in Windows 8.1
878395RtlCopyLuid@8
879396RtlCopyLuidAndAttributesArray@12
880RtlCopyMappedMemory@12
881RtlCopyMemoryStreamTo@24
882RtlCopyOutOfProcessMemoryStreamTo@24
883RtlCopyRangeList@8
884397RtlCopySecurityDescriptor@8
885398RtlCopySid@12
886399RtlCopySidAndAttributesArray@28
887400RtlCopyString@8
888401RtlCopyUnicodeString@8
889RtlCrc32@12
890RtlCrc64@16
891402RtlCreateAcl@12
892RtlCreateActivationContext@24
893403RtlCreateAndSetSD@20
894RtlCreateAtomTable@8
895RtlCreateBootStatusDataFile@4
896RtlCreateBoundaryDescriptor@8
897404RtlCreateEnvironment@8
898RtlCreateEnvironmentEx@12
899RtlCreateHashTable@12
900RtlCreateHashTableEx@16
901RtlCreateHeap@24
902RtlCreateLpcServer@24
903RtlCreateMemoryBlockLookaside@20
904RtlCreateMemoryZone@12
905405RtlCreateProcessParameters@40
906RtlCreateProcessParametersEx@44
907RtlCreateProcessParametersWithTemplate@12
908RtlCreateProcessReflection@24
909RtlCreateQueryDebugBuffer@8
910406RtlCreateRegistryKey@8
911RtlCreateSecurityDescriptor@8
912RtlCreateServiceSid@12
913RtlCreateSystemVolumeInformationFolder@4
914RtlCreateTagHeap@16
915RtlCreateTimer@28
916RtlCreateTimerQueue@4
917407RtlCreateUnicodeString@8
918408RtlCreateUnicodeStringFromAsciiz@8
919409RtlCreateUserProcess@40
920RtlCreateUserProcessEx@20
921410RtlCreateUserSecurityObject@28
922RtlCreateUserStack@24
923411RtlCreateUserThread@40
924RtlCreateVirtualAccountSid@16
925RtlCultureNameToLCID@8
926412RtlCustomCPToUnicodeN@24
927RtlCutoverTimeToSystemTime@16
928RtlDeCommitDebugInfo@12
929413RtlDeNormalizeProcessParams@4
930RtlDeactivateActivationContext@8
931RtlDebugPrintTimes@0
932RtlDecodePointer@4
933RtlDecodeRemotePointer@12
934RtlDecodeSystemPointer@4
935RtlDecompressBuffer@24
936RtlDecompressBufferEx@28
937RtlDecompressFragment@32
938RtlDefaultNpAcl@4
939RtlDelayExecution@8
940414RtlDelete@4
941415RtlDeleteAce@8
942RtlDeleteAtomFromAtomTable@8
943RtlDeleteBarrier@4
944RtlDeleteBoundaryDescriptor@4
945416RtlDeleteCriticalSection@4
946417RtlDeleteElementGenericTable@8
947RtlDeleteElementGenericTableAvl@8
948RtlDeleteElementGenericTableAvlEx@8
949RtlDeleteHashTable@4
950RtlDeleteNoSplay@8
951RtlDeleteOwnersRanges@8
952RtlDeleteRange@24
953418RtlDeleteRegistryValue@12
954419RtlDeleteResource@4
955420RtlDeleteSecurityObject@4
956RtlDeleteTimer@12
957RtlDeleteTimerQueue@4
958RtlDeleteTimerQueueEx@8
959RtlDeregisterSecureMemoryCacheCallback@4
960RtlDeregisterWait@4
961RtlDeregisterWaitEx@8
962RtlDeriveCapabilitySidsFromName@12
963RtlDestroyAtomTable@4
964421RtlDestroyEnvironment@4
965RtlDestroyHandleTable@4
966RtlDestroyHeap@4
967RtlDestroyMemoryBlockLookaside@4
968RtlDestroyMemoryZone@4
969422RtlDestroyProcessParameters@4
970RtlDestroyQueryDebugBuffer@4
971RtlDetectHeapLeaks@0
972423RtlDetermineDosPathNameType_U@4
973RtlDisableThreadProfiling@4
974RtlDllShutdownInProgress@0
975RtlDnsHostNameToComputerName@12
976424RtlDoesFileExists_U@4
977RtlDoesNameContainWildCards@4
978RtlDosApplyFileIsolationRedirection_Ustr@36
979RtlDosLongPathNameToNtPathName_U_WithStatus@16
980RtlDosLongPathNameToRelativeNtPathName_U_WithStatus@16
981425RtlDosPathNameToNtPathName_U@16
982RtlDosPathNameToNtPathName_U_WithStatus@16
983RtlDosPathNameToRelativeNtPathName_U@16
984RtlDosPathNameToRelativeNtPathName_U_WithStatus@16
985426RtlDosSearchPath_U@24
986RtlDosSearchPath_Ustr@36
987RtlDowncaseUnicodeChar@4
988RtlDowncaseUnicodeString@12
989427RtlDumpResource@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
1003428RtlEnterCriticalSection@4
1004RtlEnumProcessHeaps@8
1005RtlEnumerateEntryHashTable@8
1006429RtlEnumerateGenericTable@8
1007RtlEnumerateGenericTableAvl@8
1008RtlEnumerateGenericTableLikeADirectory@28
1009430RtlEnumerateGenericTableWithoutSplaying@8
1010RtlEnumerateGenericTableWithoutSplayingAvl@8
1011431RtlEqualComputerName@8
1012432RtlEqualDomainName@8
1013433RtlEqualLuid@8
......@@ -1015,600 +435,141 @@ RtlEqualPrefixSid@8
1015435RtlEqualSid@8
1016436RtlEqualString@12
1017437RtlEqualUnicodeString@12
1018RtlEqualWnfChangeStamps@8
1019438RtlEraseUnicodeString@4
1020RtlEthernetAddressToStringA@8
1021RtlEthernetAddressToStringW@8
1022RtlEthernetStringToAddressA@12
1023RtlEthernetStringToAddressW@12
1024RtlExitUserProcess@4
1025RtlExitUserThread@4 ; Not sure, but we assume @4
1026RtlExpandEnvironmentStrings@24
439; RtlExpandEnvironmentStrings@16 ; removed in Windows NT 3.5
1027440RtlExpandEnvironmentStrings_U@16
1028RtlExpandHashTable@4
1029RtlExtendCorrelationVector@4
1030RtlExtendMemoryBlockLookaside@8
1031RtlExtendMemoryZone@8
1032RtlExtendedIntegerMultiply@12
1033RtlExtendedLargeIntegerDivide@16
1034RtlExtendedMagicDivide@20
1035RtlExtractBitMap@16
1036RtlExtendHeap@16
1037RtlFillMemory@12
1038441RtlFillMemoryUlong@12
1039RtlFillMemoryUlonglong@16
1040RtlFinalReleaseOutOfProcessMemoryStream@4
1041RtlFindAceByType@12
1042RtlFindActivationContextSectionGuid@20
1043RtlFindActivationContextSectionString@20
1044RtlFindCharInUnicodeString@16
1045442RtlFindClearBits@12
1046443RtlFindClearBitsAndSet@12
1047RtlFindClearRuns@16
1048RtlFindClosestEncodableLength@12
1049RtlFindExportedRoutineByName@8
1050RtlFindLastBackwardRunClear@12
1051RtlFindLeastSignificantBit@8
1052444RtlFindLongestRunClear@8
1053RtlFindLongestRunSet@8
445RtlFindLongestRunSet@8 ; removed in Windows 2000
1054446RtlFindMessage@20
1055RtlFindMostSignificantBit@8
1056RtlFindNextForwardRunClear@12
1057RtlFindRange@48
1058447RtlFindSetBits@12
1059448RtlFindSetBitsAndClear@12
1060RtlFindUnicodeSubstring@12
1061RtlFirstEntrySList@4
1062449RtlFirstFreeAce@8
1063RtlFlsAlloc@8
1064RtlFlsFree@4
1065RtlFlsGetValue@8
1066RtlFlsSetValue@8
1067RtlFlushHeaps@0
1068RtlFlushSecureMemoryCache@8
1069RtlFormatCurrentUserKeyPath@4
1070450RtlFormatMessage@36
1071RtlFormatMessageEx@40
1072RtlFreeActivationContextStack@4
1073451RtlFreeAnsiString@4
1074RtlFreeHandle@8
1075RtlFreeHeap@12
1076RtlFreeMemoryBlockLookaside@8
1077452RtlFreeOemString@4
1078453RtlFreeSid@4
1079RtlFreeThreadActivationContextStack@0
1080RtlFreeUTF8String@4
1081454RtlFreeUnicodeString@4
1082RtlFreeUserStack@4
1083RtlFreeUserThreadStack@8
1084RtlGUIDFromString@8
1085RtlGenerate8dot3Name@16
455RtlGenerate8dot3Name@16 ; Windows NT 3.1 has ABI "RtlGenerate8dot3Name@12", Windows NT 3.5 and new has ABI "RtlGenerate8dot3Name@16"
1086456RtlGetAce@12
1087RtlGetActiveActivationContext@4
1088RtlGetActiveConsoleId@0
1089RtlGetAppContainerNamedObjectPath@16
1090RtlGetAppContainerParent@8
1091RtlGetAppContainerSidType@8
1092457RtlGetCallersAddress@8
1093RtlGetCompressionWorkSpaceSize@12
1094RtlGetConsoleSessionForegroundProcessId@0
1095458RtlGetControlSecurityDescriptor@12
1096RtlGetCriticalSectionRecursionCount@4
1097459RtlGetCurrentDirectory_U@8
1098RtlGetCurrentPeb@0
1099RtlGetCurrentProcessorNumber@0
1100RtlGetCurrentProcessorNumberEx@4
1101RtlGetCurrentServiceSessionId@0
1102RtlGetCurrentTransaction@0
1103460RtlGetDaclSecurityDescriptor@16
1104RtlGetDeviceFamilyInfoEnum@12
1105461RtlGetElementGenericTable@8
1106RtlGetElementGenericTableAvl@8
1107RtlGetEnabledExtendedFeatures@8
1108RtlGetExePath@8
1109RtlGetExtendedContextLength2@16
1110RtlGetExtendedContextLength@8
1111RtlGetExtendedFeaturesMask@4
1112RtlGetFileMUIPath@28
1113RtlGetFirstRange@12
1114RtlGetFrame@0
1115462RtlGetFullPathName_U@16
1116RtlGetFullPathName_UEx@20
1117RtlGetFullPathName_UstrEx@32
1118463RtlGetGroupSecurityDescriptor@12
1119RtlGetImageFileMachines@8
1120RtlGetIntegerAtom@8
1121RtlGetInterruptTimePrecise@4
1122RtlGetLastNtStatus@0
1123RtlGetLastWin32Error@0
1124RtlGetLengthWithoutLastFullDosOrNtPathElement@12
1125RtlGetLengthWithoutTrailingPathSeperators@12
1126RtlGetLocaleFileMappingAddress@12
1127RtlGetLongestNtPathLength@0
1128RtlGetMultiTimePrecise@12
1129RtlGetNativeSystemInformation@16
1130RtlGetNextRange@12
1131RtlGetNextEntryHashTable@8
464; RtlGetHeapUserValue@4 ; removed in Windows NT 3.5
1132465RtlGetNtGlobalFlags@0
1133466RtlGetNtProductType@4
1134RtlGetNtSystemRoot@0
1135RtlGetNtVersionNumbers@12
1136467RtlGetOwnerSecurityDescriptor@12
1137RtlGetParentLocaleName@16
1138RtlGetPersistedStateLocation@28
1139RtlGetProcessHeaps@8
1140RtlGetProcessPreferredUILanguages@16
1141RtlGetProductInfo@20
1142RtlGetReturnAddressHijackTarget@0
1143468RtlGetSaclSecurityDescriptor@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
1169469RtlIdentifierAuthoritySid@4
1170RtlIdnToAscii@20
1171RtlIdnToNameprepUnicode@20
1172RtlIdnToUnicode@20
1173RtlImageDirectoryEntryToData@16
1174RtlImageNtHeader@4
1175RtlImageNtHeaderEx@20
1176RtlImageRvaToSection@12
1177RtlImageRvaToVa@16
1178RtlImpersonateLpcClient@8
1179470RtlImpersonateSelf@4
1180RtlImpersonateSelfEx@12
1181RtlIncrementCorrelationVector@4
1182RtlInitAnsiString@8
1183RtlInitAnsiStringEx@8
1184RtlInitBarrier@12
1185471RtlInitCodePageTable@8
1186RtlInitEnumerationHashTable@8
1187RtlInitMemoryStream@4
1188472RtlInitNlsTables@16
1189RtlInitOutOfProcessMemoryStream@4
1190RtlInitString@8
1191RtlInitStringEx@8
1192RtlInitStrongEnumerationHashTable@8
1193RtlInitUTF8String@8
1194RtlInitUTF8StringEx@8
1195RtlInitUnicodeString@8
1196RtlInitUnicodeStringEx@8
1197RtlInitWeakEnumerationHashTable@8
1198RtlInitializeAtomPackage@4
1199473RtlInitializeBitMap@12
1200RtlInitializeConditionVariable@4
1201474RtlInitializeContext@20
1202RtlInitializeCorrelationVector@12
1203475RtlInitializeCriticalSection@4
1204RtlInitializeCriticalSectionAndSpinCount@8
1205RtlInitializeCriticalSectionEx@12
1206RtlInitializeExceptionChain@4
1207RtlInitializeExtendedContext2@20
1208RtlInitializeExtendedContext@12
1209476RtlInitializeGenericTable@20
1210RtlInitializeGenericTableAvl@20
1211RtlInitializeHandleTable@12
1212RtlInitializeNtUserPfn@24
477; RtlInitializeProfile@4 ; removed in Windows NT 3.5
1213478RtlInitializeRXact@12
1214479RtlInitializeResource@4
1215RtlInitializeSListHead@4
1216RtlInitializeSRWLock@4
1217480RtlInitializeSid@12
1218RtlInitializeSidEx@0
481; RtlInitializeStackTraceDataBase@12 ; removed in Windows NT 3.51, added back in Windows XP SP2 and removed again in Windows Server 2003
1219482RtlInsertElementGenericTable@16
1220RtlInsertElementGenericTableAvl@16
1221RtlInsertElementGenericTableFull@24
1222RtlInsertElementGenericTableFullAvl@24
1223RtlInsertEntryHashTable@16
1224RtlInt64ToUnicodeString@16
1225483RtlIntegerToChar@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
1262484RtlIsDosDeviceName_U@4
1263RtlIsElevatedRid@4
1264RtlIsEnclaveFeaturePresent@4
1265485RtlIsGenericTableEmpty@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
1299486RtlLargeIntegerToChar@16
1300RtlLcidToLocaleName@16
1301487RtlLeaveCriticalSection@4
1302488RtlLengthRequiredSid@4
1303489RtlLengthSecurityDescriptor@4
1304490RtlLengthSid@4
1305RtlLengthSidAsUnicodeString@8
1306RtlLoadString@32
1307491RtlLocalTimeToSystemTime@8
1308RtlLocaleNameToLcid@12
1309RtlLocateExtendedFeature2@16
1310RtlLocateExtendedFeature@12
1311RtlLocateLegacyContext@8
1312RtlLockBootStatusData@4
1313RtlLockCurrentThread@0
1314492RtlLockHeap@4
1315RtlLockMemoryBlockLookaside@4
1316RtlLockMemoryStreamRegion@24
1317RtlLockMemoryZone@4
1318RtlLockModuleSection@4
1319RtlLogStackBackTrace@0
1320RtlLookupAtomInAtomTable@12
493; RtlLogStackBackTrace@0 ; removed in Windows NT 3.51
1321494RtlLookupElementGenericTable@8
1322RtlLookupElementGenericTableAvl@8
1323RtlLookupElementGenericTableFull@16
1324RtlLookupElementGenericTableFullAvl@16
1325RtlLookupEntryHashTable@12
1326RtlLookupFirstMatchingElementGenericTableAvl@12
495; RtlLookupSymbolByAddress@24 ; removed in Windows NT 3.51
496; RtlLookupSymbolByName@16 ; removed in Windows NT 3.51
1327497RtlMakeSelfRelativeSD@12
1328498RtlMapGenericMask@8
1329RtlMapSecurityErrorToNtStatus@4
1330RtlMergeRangeLists@16
1331RtlMoveMemory@12
1332RtlMultiAppendUnicodeStringBuffer@12
1333RtlMultiByteToUnicodeN@20
1334499RtlMultiByteToUnicodeSize@12
1335RtlMultipleAllocateHeap@20
1336RtlMultipleFreeHeap@16
1337500RtlNewInstanceSecurityObject@40
1338501RtlNewSecurityGrantedAccess@24
1339502RtlNewSecurityObject@24
1340RtlNewSecurityObjectEx@32
1341RtlNewSecurityObjectWithMultipleInheritance@36
1342503RtlNormalizeProcessParams@4
1343RtlNormalizeSecurityDescriptor@20
1344RtlNormalizeString@20
1345RtlNotifyFeatureUsage@4
1346RtlNtPathNameToDosPathName@16
1347RtlNtStatusToDosError@4
1348RtlNtStatusToDosErrorNoTeb@4
1349504RtlNumberGenericTableElements@4
1350RtlNumberGenericTableElementsAvl@4
1351505RtlNumberOfClearBits@4
1352RtlNumberOfClearBitsInRange@12
1353506RtlNumberOfSetBits@4
1354RtlNumberOfSetBitsInRange@12
1355RtlNumberOfSetBitsUlongPtr@4
1356507RtlOemStringToUnicodeSize@4
1357508RtlOemStringToUnicodeString@12
1358509RtlOemToUnicodeN@20
1359510RtlOpenCurrentUser@8
1360RtlOsDeploymentState@4
1361RtlOwnerAcesPresent@4
1362511RtlPcToFileHeader@8
1363RtlPinAtomInAtomTable@8
1364RtlPopFrame@4
1365512RtlPrefixString@12
1366513RtlPrefixUnicodeString@12
1367RtlProcessFlsData@4
1368RtlProtectHeap@8
1369RtlPublishWnfStateData@24
1370RtlPushFrame@4
1371RtlQueryActivationContextApplicationSettings@28
1372RtlQueryAllFeatureConfigurations@16
1373RtlQueryAtomInAtomTable@24
1374RtlQueryCriticalSectionOwner@4
1375RtlQueryDepthSList@4
1376RtlQueryDynamicTimeZoneInformation@4
1377RtlQueryElevationFlags@4
1378RtlQueryEnvironmentVariable@24
514; RtlQueryEnvironmentVariable@0 ; removed in Windows NT 3.5
1379515RtlQueryEnvironmentVariable_U@12
1380RtlQueryFeatureConfiguration@16
1381RtlQueryFeatureConfigurationChangeStamp@0
1382RtlQueryFeatureUsageNotificationSubscriptions@8
1383RtlQueryHeapInformation@20
1384RtlQueryImageMitigationPolicy@20
1385516RtlQueryInformationAcl@16
1386RtlQueryInformationActivationContext@28
1387RtlQueryInformationActiveActivationContext@16
1388RtlQueryInterfaceMemoryStream@12
1389RtlQueryModuleInformation@12
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
517; RtlQueryModuleInformation@24 ; removed in Windows NT 3.51
518RtlQueryProcessBackTraceInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessBackTraceInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessBackTraceInformation@4"
519RtlQueryProcessHeapInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessHeapInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessHeapInformation@4"
520RtlQueryProcessLockInformation@4 ; Windows NT 3.1-3.5 has ABI "RtlQueryProcessLockInformation@12", Windows NT 3.51 and new has ABI "RtlQueryProcessLockInformation@4"
1404521RtlQueryRegistryValues@20
1405RtlQueryRegistryValuesEx@20
1406RtlQueryResourcePolicy@16
1407522RtlQuerySecurityObject@20
1408RtlQueryTagHeap@20
1409RtlQueryThreadPlaceholderCompatibilityMode@0
1410RtlQueryThreadProfiling@8
1411523RtlQueryTimeZoneInformation@4
1412RtlQueryTokenHostIdAsUlong64@8
1413RtlQueryUnbiasedInterruptTime@4
1414RtlQueryValidationRunlevel@4
1415RtlQueryWnfMetaNotification@20
1416RtlQueryWnfStateData@24
1417RtlQueryWnfStateDataWithExplicitScope@28
1418RtlQueueApcWow64Thread@20
1419RtlQueueWorkItem@12
1420RtlRaiseCustomSystemEventTrigger@4
1421524RtlRaiseException@4
1422525RtlRaiseStatus@4
1423526RtlRandom@4
1424RtlRandomEx@4
1425RtlRbInsertNodeEx@16
1426RtlRbRemoveNode@8
1427RtlReAllocateHeap@16
1428RtlReadMemoryStream@16
1429RtlReadOutOfProcessMemoryStream@16
1430RtlReadThreadProfilingData@12
1431527RtlRealPredecessor@4
1432528RtlRealSuccessor@4
1433RtlRegisterFeatureConfigurationChangeNotification@16
1434RtlRegisterForWnfMetaNotification@24
1435RtlRegisterSecureMemoryCacheCallback@4
1436RtlRegisterThreadWithCsrss@0
1437RtlRegisterWait@24
1438RtlReleaseActivationContext@4
1439RtlReleaseMemoryStream@4
1440RtlReleasePath@4
1441529RtlReleasePebLock@0
1442RtlReleasePrivilege@4
1443RtlReleaseRelativeName@4
1444530RtlReleaseResource@4
1445RtlReleaseSRWLockExclusive@4
1446RtlReleaseSRWLockShared@4
1447531RtlRemoteCall@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
1463532RtlResetRtlTranslations@4
1464RtlRestoreBootStatusDefaults@4
1465RtlRestoreContext@8
1466RtlRestoreLastWin32Error@4
1467RtlRestoreSystemBootStatusDefaults@0
1468RtlRestoreThreadPreferredUILanguages@4
1469RtlRetrieveNtUserPfn@12
1470RtlRevertMemoryStream@4
1471533RtlRunDecodeUnicodeString@8
1472534RtlRunEncodeUnicodeString@8
1473RtlRunOnceBeginInitialize@12
1474RtlRunOnceComplete@12
1475RtlRunOnceExecuteOnce@16
1476RtlRunOnceInitialize@4
1477535RtlSecondsSince1970ToTime@8
1478536RtlSecondsSince1980ToTime@8
1479RtlSeekMemoryStream@20
1480RtlSelfRelativeToAbsoluteSD2@8
1481537RtlSelfRelativeToAbsoluteSD@44
1482RtlSendMsgToSm@8
1483538RtlSetAllBits@4
1484RtlSetAttributesSecurityDescriptor@12
1485RtlSetBit@8
1486539RtlSetBits@12
1487RtlSetControlSecurityDescriptor@12
1488RtlSetCriticalSectionSpinCount@8
1489540RtlSetCurrentDirectory_U@4
1490541RtlSetCurrentEnvironment@8
1491RtlSetCurrentTransaction@4
1492RtlSetDaclSecurityDescriptor@16
1493RtlSetDynamicTimeZoneInformation@4
1494RtlSetEnvironmentStrings@8
1495RtlSetEnvironmentVar@20
1496542RtlSetEnvironmentVariable@12
1497RtlSetExtendedFeaturesMask@12
1498RtlSetFeatureConfigurations@16
1499543RtlSetGroupSecurityDescriptor@12
1500RtlSetHeapInformation@16
1501RtlSetImageMitigationPolicy@20
544; RtlSetHeapUserValue@8 ; removed in Windows NT 3.5
1502545RtlSetInformationAcl@16
1503RtlSetIoCompletionCallback@12
1504RtlSetLastWin32Error@4
1505RtlSetLastWin32ErrorAndNtStatusFromNtStatus@4
1506RtlSetMemoryStreamSize@12
1507546RtlSetOwnerSecurityDescriptor@12
1508RtlSetPortableOperatingSystem@4
1509RtlSetProcessDebugInformation@12
1510RtlSetProcessIsCritical@0
1511RtlSetProcessPlaceholderCompatibilityMode@4
1512RtlSetProcessPreferredUILanguages@12
1513RtlSetProtectedPolicy@12
1514RtlSetProxiedProcessId@4
1515547RtlSetSaclSecurityDescriptor@16
1516RtlSetSearchPathMode@4
1517RtlSetSecurityDescriptorRMControl@8
1518548RtlSetSecurityObject@20
1519RtlSetSecurityObjectEx@24
1520RtlSetSystemBootStatus@16
1521RtlSetSystemBootStatusEx@12
1522RtlSetThreadErrorMode@8
1523RtlSetThreadIsCritical@0
1524RtlSetThreadPlaceholderCompatibilityMode@4
1525RtlSetThreadPoolStartFunc@8
1526RtlSetThreadPreferredUILanguages2@16
1527RtlSetThreadPreferredUILanguages@12
1528RtlSetThreadSubProcessTag@4
1529RtlSetThreadWorkOnBehalfTicket@4
1530549RtlSetTimeZoneInformation@4
1531RtlSetTimer@28
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
550; RtlSnapShotHeap@16 ; removed in Windows NT 3.51
1546551RtlSplay@4
552; RtlStartProfile@0 ; removed in Windows NT 3.5
1547553RtlStartRXact@4
1548RtlStatMemoryStream@12
1549RtlStringFromGUID@8
1550RtlStringFromGUIDEx@12
1551RtlStronglyEnumerateEntryHashTable@8
554; RtlStopProfile@0 ; removed in Windows NT 3.5
1552555RtlSubAuthorityCountSid@4
1553556RtlSubAuthoritySid@8
1554RtlSubscribeForFeatureUsageNotification@8
1555RtlSubscribeWnfStateChangeNotification@36
1556557RtlSubtreePredecessor@4
1557558RtlSubtreeSuccessor@4
1558RtlSwitchedVVI@16
1559559RtlSystemTimeToLocalTime@8
1560RtlTestAndPublishWnfStateData@28
1561RtlTestBit@8
1562RtlTestProtectedAccess@8
1563560RtlTimeFieldsToTime@8
1564561RtlTimeToElapsedTimeFields@8
1565562RtlTimeToSecondsSince1970@8
1566563RtlTimeToSecondsSince1980@8
1567564RtlTimeToTimeFields@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
1588565RtlUnicodeStringToCountedOemString@12
1589RtlUnicodeStringToInteger@12
1590566RtlUnicodeStringToOemSize@4
1591567RtlUnicodeStringToOemString@12
1592RtlUnicodeStringToUTF8String@12
1593568RtlUnicodeToCustomCPN@24
1594RtlUnicodeToMultiByteN@20
1595569RtlUnicodeToMultiByteSize@12
1596570RtlUnicodeToOemN@20
1597RtlUnicodeToUTF8N@20
1598571RtlUniform@4
1599RtlUnlockBootStatusData@4
1600RtlUnlockCurrentThread@0
1601572RtlUnlockHeap@4
1602RtlUnlockMemoryBlockLookaside@4
1603RtlUnlockMemoryStreamRegion@24
1604RtlUnlockMemoryZone@4
1605RtlUnlockModuleSection@4
1606RtlUnregisterFeatureConfigurationChangeNotification@4
1607RtlUnsubscribeFromFeatureUsageNotifications@8
1608RtlUnsubscribeWnfNotificationWaitForCompletion@4
1609RtlUnsubscribeWnfNotificationWithCompletionCallback@12
1610RtlUnsubscribeWnfStateChangeNotification@4
1611RtlUnwind@16
1612573RtlUpcaseUnicodeChar@4
1613574RtlUpcaseUnicodeString@12
1614575RtlUpcaseUnicodeStringToAnsiString@12
......@@ -1617,712 +578,2338 @@ RtlUpcaseUnicodeStringToOemString@12
1617578RtlUpcaseUnicodeToCustomCPN@24
1618579RtlUpcaseUnicodeToMultiByteN@20
1619580RtlUpcaseUnicodeToOemN@20
1620RtlUpdateClonedCriticalSection@4
1621RtlUpdateClonedSRWLock@8
1622RtlUpdateTimer@16
1623581RtlUpperChar@4
1624582RtlUpperString@8
1625RtlUsageHeap@12
1626; Not sure.
1627RtlUserThreadStart
1628583RtlValidAcl@4
1629RtlValidProcessProtection@4
1630RtlValidRelativeSecurityDescriptor@12
1631584RtlValidSecurityDescriptor@4
1632585RtlValidSid@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
1662586RtlWriteRegistryValue@24
1663RtlZeroHeap@8
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
587; RtlpInitializeRtl@12 ; removed in Windows NT 4.0
1691588RtlpNtCreateKey@24
1692589RtlpNtEnumerateSubKey@16
1693590RtlpNtMakeTemporaryKey@4
1694591RtlpNtOpenKey@16
1695592RtlpNtQueryValueKey@20
1696593RtlpNtSetValueKey@16
1697RtlpQueryDefaultUILanguage@8
1698; Not sure.
1699RtlpQueryProcessDebugInformationRemote
1700RtlpRefreshCachedUILanguage@8
1701RtlpSetInstallLanguage@8
1702RtlpSetPreferredUILanguages@12
1703RtlpSetUserPreferredUILanguages@12
1704RtlpTimeFieldsToTime@12
1705RtlpTimeToTimeFields@12
1706594RtlpUnWaitCriticalSection@4
1707RtlpVerifyAndCommitUILanguageSettings@4
1708595RtlpWaitForCriticalSection@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
1820596ZwAcceptConnectPort@24
1821597ZwAccessCheck@32
1822598ZwAccessCheckAndAuditAlarm@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
1835599ZwAdjustGroupsToken@24
1836600ZwAdjustPrivilegesToken@24
1837ZwAdjustTokenClaimsAndDeviceGroups@64
1838601ZwAlertResumeThread@8
1839602ZwAlertThread@4
1840ZwAlertThreadByThreadId@4
1841603ZwAllocateLocallyUniqueId@4
1842ZwAllocateReserveObject@12
1843ZwAllocateUserPhysicalPages@12
1844ZwAllocateUserPhysicalPagesEx@20
1845ZwAllocateUuids@16
1846604ZwAllocateVirtualMemory@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
1878605ZwCancelIoFile@8
1879ZwCancelIoFileEx@12
1880ZwCancelSynchronousIoFile@12
1881ZwCancelTimer2@8
1882606ZwCancelTimer@8
1883ZwCancelWaitCompletionPacket@8
1884ZwChangeProcessState@24
1885ZwChangeThreadState@24
1886ZwClearEvent@4
1887607ZwClose@4
1888608ZwCloseObjectAuditAlarm@12
1889ZwCommitComplete@8
1890ZwCommitEnlistment@8
1891ZwCommitRegistryTransaction@8
1892ZwCommitTransaction@8
1893ZwCompactKeys@8
1894ZwCompareObjects@8
1895ZwCompareSigningLevels@8
1896ZwCompareTokens@12
1897609ZwCompleteConnectPort@4
1898ZwCompressKey@4
1899610ZwConnectPort@32
1900611ZwContinue@8
1901ZwContinueEx@8
1902ZwConvertBetweenAuxiliaryCounterAndPerformanceCounter@16
1903ZwCreateCrossVmEvent@24
1904ZwCreateCrossVmMutant@24
1905ZwCreateDebugObject@16
1906612ZwCreateDirectoryObject@12
1907ZwCreateDirectoryObjectEx@20
1908ZwCreateEnclave@36
1909ZwCreateEnlistment@32
1910613ZwCreateEvent@20
1911614ZwCreateEventPair@12
1912615ZwCreateFile@44
1913ZwCreateIRTimer@12
1914ZwCreateIoCompletion@16
1915ZwCreateIoRing@20
1916ZwCreateJobObject@12
1917ZwCreateJobSet@12
1918616ZwCreateKey@28
1919ZwCreateKeyTransacted@32
1920ZwCreateKeyedEvent@16
1921ZwCreateLowBoxToken@36
1922617ZwCreateMailslotFile@32
1923618ZwCreateMutant@16
1924619ZwCreateNamedPipeFile@56
1925620ZwCreatePagingFile@16
1926ZwCreatePartition@16
1927621ZwCreatePort@20
1928ZwCreatePrivateNamespace@16
1929622ZwCreateProcess@32
1930ZwCreateProcessEx@36
1931ZwCreateProcessStateChange@20
1932ZwCreateProfile@36
1933ZwCreateProfileEx@40
1934ZwCreateRegistryTransaction@16
1935ZwCreateResourceManager@28
623ZwCreateProfile@36 ; Windows NT 3.1-3.5 has ABI "ZwCreateProfile@28", Windows NT 3.51 and new has ABI "ZwCreateProfile@36"
1936624ZwCreateSection@28
1937ZwCreateSectionEx@36
1938625ZwCreateSemaphore@20
1939626ZwCreateSymbolicLinkObject@16
1940627ZwCreateThread@32
1941ZwCreateThreadEx@44
1942ZwCreateThreadStateChange@20
1943ZwCreateTimer2@20
1944ZwCreateTimer@16
628ZwCreateTimer@16 ; Windows NT 3.1-3.51 has ABI "ZwCreateTimer@12", Windows NT 4.0 and new has ABI "ZwCreateTimer@16"
1945629ZwCreateToken@52
1946ZwCreateTokenEx@68
1947ZwCreateTransaction@40
1948ZwCreateTransactionManager@24
1949ZwCreateUserProcess@44
1950ZwCreateWaitCompletionPacket@12
1951ZwCreateWaitablePort@20
1952ZwCreateWnfStateName@28
1953ZwCreateWorkerFactory@40
1954ZwDebugActiveProcess@8
1955ZwDebugContinue@12
1956630ZwDelayExecution@8
1957ZwDeleteAtom@4
1958ZwDeleteBootEntry@4
1959ZwDeleteDriverEntry@4
1960ZwDeleteFile@4
1961631ZwDeleteKey@4
1962ZwDeleteObjectAuditAlarm@12
1963ZwDeletePrivateNamespace@4
1964632ZwDeleteValueKey@8
1965ZwDeleteWnfStateData@8
1966ZwDeleteWnfStateName@4
1967633ZwDeviceIoControlFile@40
1968ZwDirectGraphicsCall@20
1969ZwDisableLastKnownGood@0
1970634ZwDisplayString@4
1971ZwDrawText@4
1972635ZwDuplicateObject@28
1973636ZwDuplicateToken@24
1974ZwEnableLastKnownGood@0
1975ZwEnumerateBootEntries@8
1976ZwEnumerateDriverEntries@8
1977637ZwEnumerateKey@24
1978ZwEnumerateSystemEnvironmentValuesEx@12
1979ZwEnumerateTransactionObject@20
1980638ZwEnumerateValueKey@24
1981639ZwExtendSection@8
1982ZwFilterBootOption@20
1983ZwFilterToken@24
1984ZwFilterTokenEx@56
1985ZwFindAtom@12
1986640ZwFlushBuffersFile@8
1987ZwFlushBuffersFileEx@20
1988ZwFlushInstallUILanguage@8
1989641ZwFlushInstructionCache@12
1990642ZwFlushKey@4
1991ZwFlushProcessWriteBuffers@0
1992643ZwFlushVirtualMemory@16
1993644ZwFlushWriteBuffer@0
1994ZwFreeUserPhysicalPages@12
1995645ZwFreeVirtualMemory@16
1996ZwFreezeRegistry@4
1997ZwFreezeTransactions@8
1998646ZwFsControlFile@40
1999ZwGetCachedSigningLevel@24
2000ZwGetCompleteWnfStateSubscription@24
2001647ZwGetContextThread@8
2002ZwGetCurrentProcessorNumber@0
2003ZwGetCurrentProcessorNumberEx@4
2004ZwGetDevicePowerState@8
2005ZwGetMUIRegistryInfo@12
2006ZwGetNextProcess@20
2007ZwGetNextThread@24
2008ZwGetNlsSectionPtr@20
2009ZwGetNotificationResourceManager@28
2010ZwGetPlugPlayEvent@16
2011ZwGetTickCount@0
2012ZwGetWriteWatch@28
2013ZwImpersonateAnonymousToken@4
648ZwGetTickCount@0 ; removed in Windows XP
2014649ZwImpersonateClientOfPort@8
2015650ZwImpersonateThread@12
2016ZwInitializeEnclave@20
2017ZwInitializeNlsFiles@16
2018651ZwInitializeRegistry@4
2019ZwInitiatePowerAction@16
2020ZwIsProcessInJob@8
2021ZwIsSystemResumeAutomatic@0
2022ZwIsUILanguageComitted@0
652; ZwInitializeVDM@0 ; removed in Windows NT 3.5
2023653ZwListenPort@8
2024654ZwLoadDriver@4
2025ZwLoadEnclaveData@36
2026ZwLoadKey2@12
2027ZwLoadKey3@32
2028655ZwLoadKey@8
2029ZwLoadKeyEx@32
2030656ZwLockFile@40
2031ZwLockProductActivationKeys@8
2032ZwLockRegistryKey@4
2033657ZwLockVirtualMemory@16
2034ZwMakePermanentObject@4
2035658ZwMakeTemporaryObject@4
2036ZwManageHotPatch@16
2037ZwManagePartition@20
2038ZwMapCMFModule@24
2039ZwMapUserPhysicalPages@12
2040ZwMapUserPhysicalPagesScatter@12
2041659ZwMapViewOfSection@40
2042ZwMapViewOfSectionEx@36
2043ZwModifyBootEntry@4
2044ZwModifyDriverEntry@4
2045660ZwNotifyChangeDirectoryFile@36
2046ZwNotifyChangeDirectoryFileEx@40
2047661ZwNotifyChangeKey@40
2048ZwNotifyChangeMultipleKeys@48
2049ZwNotifyChangeSession@32
2050662ZwOpenDirectoryObject@12
2051ZwOpenEnlistment@20
2052663ZwOpenEvent@12
2053664ZwOpenEventPair@12
2054665ZwOpenFile@24
2055ZwOpenIoCompletion@12
2056ZwOpenJobObject@12
2057666ZwOpenKey@12
2058ZwOpenKeyEx@16
2059ZwOpenKeyTransacted@16
2060ZwOpenKeyTransactedEx@20
2061ZwOpenKeyedEvent@12
2062667ZwOpenMutant@12
2063668ZwOpenObjectAuditAlarm@48
2064ZwOpenPartition@12
2065ZwOpenPrivateNamespace@16
2066669ZwOpenProcess@16
2067670ZwOpenProcessToken@12
2068ZwOpenProcessTokenEx@16
2069ZwOpenRegistryTransaction@12
2070ZwOpenResourceManager@20
2071671ZwOpenSection@12
2072672ZwOpenSemaphore@12
2073ZwOpenSession@12
2074673ZwOpenSymbolicLinkObject@12
2075674ZwOpenThread@16
2076675ZwOpenThreadToken@16
2077ZwOpenThreadTokenEx@20
2078676ZwOpenTimer@12
2079ZwOpenTransaction@20
2080ZwOpenTransactionManager@24
2081ZwPlugPlayControl@12
2082ZwPowerInformation@20
2083ZwPrePrepareComplete@8
2084ZwPrePrepareEnlistment@8
2085ZwPrepareComplete@8
2086ZwPrepareEnlistment@8
2087677ZwPrivilegeCheck@12
2088678ZwPrivilegeObjectAuditAlarm@24
2089679ZwPrivilegedServiceAuditAlarm@20
2090ZwPropagationComplete@16
2091ZwPropagationFailed@12
2092680ZwProtectVirtualMemory@20
2093ZwPssCaptureVaSpaceBulk@20
2094681ZwPulseEvent@8
2095ZwQueryAttributesFile@8
2096ZwQueryAuxiliaryCounterFrequency@4
2097ZwQueryBootEntryOrder@8
2098ZwQueryBootOptions@8
2099ZwQueryDebugFilterState@8
2100682ZwQueryDefaultLocale@8
2101ZwQueryDefaultUILanguage@4
2102683ZwQueryDirectoryFile@44
2103ZwQueryDirectoryFileEx@40
2104684ZwQueryDirectoryObject@28
2105ZwQueryDriverEntryOrder@8
2106685ZwQueryEaFile@36
2107686ZwQueryEvent@20
2108ZwQueryFullAttributesFile@8
2109ZwQueryInformationAtom@20
2110ZwQueryInformationByName@20
2111ZwQueryInformationEnlistment@20
2112687ZwQueryInformationFile@20
2113ZwQueryInformationJobObject@20
2114688ZwQueryInformationPort@20
2115689ZwQueryInformationProcess@20
2116ZwQueryInformationResourceManager@20
2117690ZwQueryInformationThread@20
2118691ZwQueryInformationToken@20
2119ZwQueryInformationTransaction@20
2120ZwQueryInformationTransactionManager@20
2121ZwQueryInformationWorkerFactory@20
2122ZwQueryInstallUILanguage@4
2123ZwQueryIntervalProfile@8
2124ZwQueryIoCompletion@20
2125ZwQueryIoRingCapabilities@8
692ZwQueryIntervalProfile@8 ; Windows NT 3.1-3.51 has ABI "ZwQueryIntervalProfile@4", Windows NT 4.0 and new has ABI "ZwQueryIntervalProfile@8"
2126693ZwQueryKey@20
2127ZwQueryLicenseValue@20
2128ZwQueryMultipleValueKey@24
2129694ZwQueryMutant@20
2130695ZwQueryObject@20
2131ZwQueryOpenSubKeys@8
2132ZwQueryOpenSubKeysEx@16
2133696ZwQueryPerformanceCounter@8
2134ZwQueryPortInformationProcess@0
2135ZwQueryQuotaInformationFile@36
2136697ZwQuerySection@20
2137ZwQuerySecurityAttributesToken@24
2138698ZwQuerySecurityObject@20
2139ZwQuerySecurityPolicy@24
2140699ZwQuerySemaphore@20
2141700ZwQuerySymbolicLinkObject@12
2142701ZwQuerySystemEnvironmentValue@16
2143ZwQuerySystemEnvironmentValueEx@20
2144702ZwQuerySystemInformation@16
2145ZwQuerySystemInformationEx@24
2146703ZwQuerySystemTime@4
2147704ZwQueryTimer@20
2148ZwQueryTimerResolution@12
2149705ZwQueryValueKey@24
2150706ZwQueryVirtualMemory@24
2151707ZwQueryVolumeInformationFile@20
2152ZwQueryWnfStateData@24
2153ZwQueryWnfStateNameInformation@20
2154ZwQueueApcThread@20
2155ZwQueueApcThreadEx2@28
2156ZwQueueApcThreadEx@24
2157708ZwRaiseException@12
2158709ZwRaiseHardError@24
2159710ZwReadFile@36
2160ZwReadFileScatter@36
2161ZwReadOnlyEnlistment@8
2162711ZwReadRequestData@24
2163712ZwReadVirtualMemory@20
2164ZwReadVirtualMemoryEx@24
2165ZwRecoverEnlistment@8
2166ZwRecoverResourceManager@4
2167ZwRecoverTransactionManager@4
2168ZwRegisterProtocolAddressInformation@20
2169713ZwRegisterThreadTerminatePort@4
2170ZwReleaseCMFViewOwnership@0
2171ZwReleaseKeyedEvent@16
2172714ZwReleaseMutant@8
715; ZwReleaseProcessMutant@0 ; removed in Windows NT 4.0
2173716ZwReleaseSemaphore@12
2174ZwReleaseWorkerFactoryWorker@4
2175ZwRemoveIoCompletion@20
2176ZwRemoveIoCompletionEx@24
2177ZwRemoveProcessDebug@8
2178ZwRenameKey@8
2179ZwRenameTransactionManager@8
717; ZwRenameValueKey@16 ; removed in Windows NT 3.5
2180718ZwReplaceKey@12
2181ZwReplacePartitionUnit@12
2182719ZwReplyPort@8
2183720ZwReplyWaitReceivePort@16
2184ZwReplyWaitReceivePortEx@20
2185721ZwReplyWaitReplyPort@8
2186ZwRequestDeviceWakeup@4
2187722ZwRequestPort@8
2188723ZwRequestWaitReplyPort@12
2189ZwRequestWakeupLatency@4
2190724ZwResetEvent@8
2191ZwResetWriteWatch@12
2192725ZwRestoreKey@12
2193ZwResumeProcess@4
2194726ZwResumeThread@8
2195ZwRevertContainerImpersonation@0
2196ZwRollbackComplete@8
2197ZwRollbackEnlistment@8
2198ZwRollbackRegistryTransaction@8
2199ZwRollbackTransaction@8
2200ZwRollforwardTransactionManager@8
2201727ZwSaveKey@8
2202ZwSaveKeyEx@12
2203ZwSaveMergedKeys@12
2204ZwSecureConnectPort@36
2205ZwSerializeBoot@0
2206ZwSetBootEntryOrder@8
2207ZwSetBootOptions@8
2208ZwSetCachedSigningLevel2@24
2209ZwSetCachedSigningLevel@20
2210728ZwSetContextThread@8
2211ZwSetDebugFilterState@12
2212729ZwSetDefaultHardErrorPort@4
2213730ZwSetDefaultLocale@8
2214ZwSetDefaultUILanguage@4
2215ZwSetDriverEntryOrder@8
2216731ZwSetEaFile@16
2217732ZwSetEvent@8
2218ZwSetEventBoostPriority@4
2219733ZwSetHighEventPair@4
2220734ZwSetHighWaitLowEventPair@4
2221ZwSetIRTimer@8
2222ZwSetInformationDebugObject@20
2223ZwSetInformationEnlistment@16
735; ZwSetHighWaitLowThread@0 ; removed in Windows 2000
2224736ZwSetInformationFile@20
2225ZwSetInformationIoRing@16
2226ZwSetInformationJobObject@16
2227737ZwSetInformationKey@16
2228ZwSetInformationObject@16
2229738ZwSetInformationProcess@16
2230ZwSetInformationResourceManager@16
2231ZwSetInformationSymbolicLink@16
2232739ZwSetInformationThread@16
2233740ZwSetInformationToken@16
2234ZwSetInformationTransaction@16
2235ZwSetInformationTransactionManager@16
2236ZwSetInformationVirtualMemory@24
2237ZwSetInformationWorkerFactory@16
2238ZwSetIntervalProfile@8
2239ZwSetIoCompletion@20
2240ZwSetIoCompletionEx@24
741ZwSetIntervalProfile@8 ; Windows NT 3.1-3.5 has ABI "ZwSetIntervalProfile@4", Windows NT 3.51 and new has ABI "ZwSetIntervalProfile@8"
2241742ZwSetLdtEntries@24
2242743ZwSetLowEventPair@4
2243744ZwSetLowWaitHighEventPair@4
2244ZwSetQuotaInformationFile@16
745; ZwSetLowWaitHighThread@0 ; removed in Windows 2000
2245746ZwSetSecurityObject@12
2246747ZwSetSystemEnvironmentValue@8
2247ZwSetSystemEnvironmentValueEx@20
2248ZwSetSystemInformation@12
2249ZwSetSystemPowerState@12
2250748ZwSetSystemTime@8
2251ZwSetThreadExecutionState@8
2252ZwSetTimer2@16
2253ZwSetTimer@28
2254ZwSetTimerEx@16
2255ZwSetTimerResolution@12
2256ZwSetUuidSeed@4
749ZwSetTimer@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"
2257750ZwSetValueKey@24
2258751ZwSetVolumeInformationFile@20
2259ZwSetWnfProcessNotificationEvent@4
2260752ZwShutdownSystem@4
2261ZwShutdownWorkerFactory@8
2262ZwSignalAndWaitForSingleObject@16
2263ZwSinglePhaseReject@8
2264753ZwStartProfile@4
2265754ZwStopProfile@4
2266ZwSubmitIoRing@16
2267ZwSubscribeWnfStateChange@16
2268ZwSuspendProcess@4
2269755ZwSuspendThread@8
2270756ZwSystemDebugControl@24
2271ZwTerminateEnclave@8
2272ZwTerminateJobObject@8
2273757ZwTerminateProcess@8
2274758ZwTerminateThread@8
2275759ZwTestAlert@0
2276ZwThawRegistry@0
2277ZwThawTransactions@0
2278ZwTraceControl@24
2279ZwTraceEvent@16
2280ZwTranslateFilePath@16
2281ZwUmsThreadYield@4
2282760ZwUnloadDriver@4
2283ZwUnloadKey2@8
2284761ZwUnloadKey@4
2285ZwUnloadKeyEx@8
2286762ZwUnlockFile@20
2287763ZwUnlockVirtualMemory@16
2288764ZwUnmapViewOfSection@8
2289ZwUnmapViewOfSectionEx@12
2290ZwUnsubscribeWnfStateChange@4
2291ZwUpdateWnfStateData@28
2292ZwVdmControl@8
2293ZwWaitForAlertByThreadId@8
2294ZwWaitForDebugEvent@16
2295ZwWaitForKeyedEvent@16
2296ZwWaitForMultipleObjects32@20
765ZwVdmControl@8 ; Windows NT 3.1 has ABI "ZwVdmControl@16", Windows NT 3.5 and new has ABI "ZwVdmControl@8"
766; ZwVdmStartExecution@0 ; removed in Windows NT 3.5
2297767ZwWaitForMultipleObjects@20
768; ZwWaitForProcessMutant@0 ; removed in Windows NT 4.0
2298769ZwWaitForSingleObject@12
2299ZwWaitForWorkViaWorkerFactory@8
2300770ZwWaitHighEventPair@4
2301771ZwWaitLowEventPair@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
2322772ZwWriteFile@36
2323ZwWriteFileGather@36
2324773ZwWriteRequestData@24
2325774ZwWriteVirtualMemory@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
23261052ZwYieldExecution@0
2327vDbgPrintEx@16
2328vDbgPrintExWithPrefix@20
1053
1054; 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
66CursorLibLockDesc@8
77CursorLibLockStmt@8
88CursorLibTransact@12
9DllBidEntryPoint@36
10GetODBCSharedData@0
911LockHandle@12
1012MpHeapAlloc
1113MpHeapCompact
......@@ -39,6 +41,7 @@ SQLBrowseConnectA@24
3941SQLBrowseConnectW@24
4042SQLBulkOperations@8
4143SQLCancel@4
44SQLCancelHandle@8
4245SQLCloseCursor@4
4346SQLColAttribute@28
4447SQLColAttributeA@28
......@@ -52,6 +55,7 @@ SQLColumnPrivilegesW@36
5255SQLColumns@36
5356SQLColumnsA@36
5457SQLColumnsW@36
58SQLCompleteAsync@12
5559SQLConnect@28
5660SQLConnectA@28
5761SQLConnectW@28
lib/libc/mingw/lib32/oleacc.def+10-5
......@@ -1,21 +1,26 @@
11;
22; Definition file of OLEACC.dll
3; Automatic generated by gendef
3; Automatic generated by gendef 1.1
44; written by Kai Tietz 2008
5; The def file has to be processed by --kill-at (-k) option of dlltool or ld
56;
67LIBRARY "OLEACC.dll"
78EXPORTS
8DllRegisterServer@0
9DllUnregisterServer@0
9;DllRegisterServer@0
10;DllUnregisterServer@0
11AccGetRunningUtilityState@12
12AccNotifyTouchInteraction@16
13AccSetRunningUtilityState@12
1014AccessibleChildren@20
1115AccessibleObjectFromEvent@20
1216AccessibleObjectFromPoint@16
1317AccessibleObjectFromWindow@16
18AccessibleObjectFromWindowTimeout@24
1419CreateStdAccessibleObject@16
1520CreateStdAccessibleProxyA@20
1621CreateStdAccessibleProxyW@20
17DllCanUnloadNow@0
18DllGetClassObject@12
22;DllCanUnloadNow@0
23;DllGetClassObject@12
1924GetOleaccVersionInfo@8
2025GetProcessHandleFromHwnd@4
2126GetRoleTextA@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 @@
1414#define INITGUID
1515#include <basetyps.h>
1616
17#include <activscp.h>
1718#include <credentialprovider.h>
1819#include <httprequest.h>
1920#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)
152152 {
153153 /* We haven't started the search yet. */
154154 /* 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
157163 if (dirp->dd_handle == -1)
158164 {
......@@ -168,7 +174,13 @@ _treaddir (_TDIR * dirp)
168174 else
169175 {
170176 /* 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)))
172184 {
173185 /* We are off the end or otherwise error.
174186 _findnext sets errno to ENOENT if no more file
lib/libc/mingw/misc/dirname.c+4-3
......@@ -7,6 +7,7 @@
77#define WIN32_LEAN_AND_MEAN
88#endif
99#include <stdlib.h>
10#include <locale.h>
1011#include <libgen.h>
1112#include <windows.h>
1213
......@@ -91,7 +92,7 @@ do_get_path_info(struct path_info* info, char* path)
9192 int dbcs_tb, prev_dir_sep, dir_sep;
9293
9394 /* 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
9697 /* Set the structure to 'no data'. */
9798 info->prefix_end = NULL;
......@@ -112,7 +113,7 @@ do_get_path_info(struct path_info* info, char* path)
112113
113114 if(dbcs_tb)
114115 dbcs_tb = 0;
115 else if(IsDBCSLeadByteEx(cp, *pos))
116 else if(__mingw_isleadbyte_cp(*pos, cp))
116117 dbcs_tb = 1;
117118 else
118119 dir_sep = IS_DIR_SEP(*pos);
......@@ -156,7 +157,7 @@ do_get_path_info(struct path_info* info, char* path)
156157
157158 if(dbcs_tb)
158159 dbcs_tb = 0;
159 else if(IsDBCSLeadByteEx(cp, *pos))
160 else if(__mingw_isleadbyte_cp(*pos, cp))
160161 dbcs_tb = 1;
161162 else
162163 dir_sep = IS_DIR_SEP(*pos);
lib/libc/mingw/misc/dllmain.c+1-1
......@@ -1,4 +1,4 @@
1#include <oscalls.h>
1#include <windows.h>
22#define _DECL_DLLMAIN
33#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 @@
1313int fegetenv(fenv_t *env)
1414{
1515#if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__))
16 unsigned int x87, sse;
16 unsigned int x87, sse = 0;
1717 __mingw_control87_2(0, 0, &x87, &sse);
1818 env->_Fe_ctl = fenv_encode(x87, sse);
1919 __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);
2122 env->_Fe_stat = fenv_encode(x87, sse);
2223#else
2324 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 @@
1515int fegetexceptflag(fexcept_t *status, int excepts)
1616{
1717#if defined(__i386__) || (defined(__x86_64__) && !defined(__arm64ec__))
18 unsigned int x87, sse;
18 unsigned int x87, sse = 0;
1919 __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);
2122 *status = fenv_encode(x87 & excepts, sse & excepts);
2223#else
2324 *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,
319319{
320320 char *oli; /* option letter list index */
321321 int optchar, short_too;
322 size_t var_size;
322323 static int posixly_correct = -1;
323324
324325 if (options == NULL)
......@@ -339,7 +340,7 @@ getopt_internal(int nargc, char * const *nargv, const char *options,
339340 * optreset != 0 for GNU compatibility.
340341 */
341342 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);
343344 if (*options == '-')
344345 flags |= FLAG_ALLARGS;
345346 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 @@
77#include "internal.h"
88
99#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 */
1118int __mingw_control87_2( unsigned int newval, unsigned int mask,
1219 unsigned int *x86_cw, unsigned int *sse2_cw )
1320{
......@@ -30,7 +37,20 @@ int __mingw_control87_2( unsigned int newval, unsigned int mask,
3037}
3138#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 */
3454unsigned int __mingw_controlfp(unsigned int newval, unsigned int mask)
3555{
3656 unsigned int flags = 0;
lib/libc/mingw/misc/mingw_mbwc_convert.c+63-6
......@@ -1,22 +1,51 @@
11#include <stdlib.h>
22#include <stdio.h>
33#include <wchar.h>
4#include <errno.h>
45#include <windows.h>
56#include <winnls.h>
67
78int __cdecl __mingw_str_wide_utf8(const wchar_t * const wptr, char **mbptr, size_t *buflen)
89{
9 size_t len;
10 int len;
1011 char *buf;
1112 int ret = 0;
1213
1314 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 }
1434 buf = calloc(len + 1, sizeof (char)); /* Can we assume sizeof char always = 1? */
1535
1636 if(!buf) len = 0;
1737 else {
18 if (len != 0) ret = WideCharToMultiByte(CP_UTF8, 0, wptr, -1, buf, len, NULL, NULL); /*Do actual conversion*/
19 buf[len] = '0'; /* Must terminate */
38 if (len != 0) {
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 */
2049 }
2150 *mbptr = buf; /* Set string pointer to allocated buffer */
2251 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
2554
2655int __cdecl __mingw_str_utf8_wide(const char *const mbptr, wchar_t **wptr, size_t *buflen)
2756{
28 size_t len;
57 int len;
2958 wchar_t *buf;
3059 int ret = 0;
3160
3261 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 }
3381 buf = calloc(len + 1, sizeof (wchar_t)); /* Allocate memory accordingly */
3482
3583 if(!buf) len = 0;
3684 else {
37 if (len != 0) ret = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, mbptr, -1, buf, len); /* Do conversion */
38 buf[len] = L'0'; /* Must terminate */
85 if (len != 0) {
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 */
3996 }
4097 *wptr = buf; /* Set string pointer to allocated buffer */
4198 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,
118118#if defined(__arm64ec__)
119119 __mingw_setfp_sse(cw, cw_mask, sw, sw_mask);
120120#elif defined(__i386__) || defined(__x86_64__)
121 unsigned long oldcw = 0, newcw = 0;
122 unsigned long oldsw = 0, newsw = 0;
121 unsigned long newcw = 0, newsw = 0;
123122 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
125139 cw_mask &= _MCW_EM | _MCW_IC | _MCW_RC | _MCW_PC;
126140 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
129153 {
130 __asm__ __volatile__( "fstsw %0" : "=m" (newsw) );
131 oldsw = newsw;
154 /* Slow path: when we are going to change sw/cw or we do not know yet then
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 {
133167 flags = 0;
134168 if (newsw & 0x1) flags |= _SW_INVALID;
135169 if (newsw & 0x2) flags |= _SW_DENORMAL;
......@@ -151,9 +185,6 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask,
151185
152186 if (cw)
153187 {
154 __asm__ __volatile__( "fstcw %0" : "=m" (newcw) );
155 oldcw = newcw;
156
157188 flags = 0;
158189 if (newcw & 0x1) flags |= _EM_INVALID;
159190 if (newcw & 0x2) flags |= _EM_DENORMAL;
......@@ -198,35 +229,18 @@ void __mingw_setfp( unsigned int *cw, unsigned int cw_mask,
198229 if (*cw & _IC_AFFINE) newcw |= 0x1000;
199230 }
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)
202238 {
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) );
219239 fenv.control_word = newcw;
220240 fenv.status_word = newsw;
221241 __asm__ __volatile__( "fldenv %0" : : "m" (fenv) : "st", "st(1)",
222242 "st(2)", "st(3)", "st(4)", "st(5)", "st(6)", "st(7)" );
223 return;
224243 }
225
226 if (oldsw != newsw)
227 __asm__ __volatile__( "fnclex" );
228 if (oldcw != newcw)
229 __asm__ __volatile__( "fldcw %0" : : "m" (newcw) );
230244#elif defined(__aarch64__)
231245 ULONG_PTR old_fpsr = 0, fpsr = 0, old_fpcr = 0, fpcr = 0;
232246 unsigned int flags;
lib/libc/mingw/misc/mingw_wcstold.c-2
......@@ -23,8 +23,6 @@
2323#include <string.h>
2424#include <mbstring.h>
2525
26#include "mb_wc_common.h"
27
2826long double __mingw_wcstold (const wchar_t * __restrict__ wcs, wchar_t ** __restrict__ wcse)
2927{
3028 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 @@
44#include <string.h>
55#include <io.h>
66#include <errno.h>
7#include <time.h>
78#include <share.h>
89#include <fcntl.h>
910#include <sys/stat.h>
......@@ -46,7 +47,7 @@ int __cdecl mkstemp (char *template_name)
4647 for (i = 0; i <= INT_MAX; i++) {
4748 for(j = index; j < len; j++) {
4849 if (rand_s(&r))
49 r = rand();
50 r = rand() ^ _time32(NULL);
5051 template_name[j] = letters[r % 62];
5152 }
5253 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 @@
44 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
55 */
66
7#ifndef WIN32_LEAN_AND_MEAN
8#define WIN32_LEAN_AND_MEAN
9#endif
710#include <sys/stat.h>
811#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
1023/**
1124 * Returns _path without trailing slash if any
......@@ -17,10 +30,10 @@
1730 * to free it.
1831 */
1932
20char* __mingw_fix_stat_path (const char* _path);
2133char* __mingw_fix_stat_path (const char* _path)
2234{
23 int len;
35 const unsigned int cp = __mingw_filename_cp ();
36 size_t len;
2437 char *p;
2538
2639 p = (char*)_path;
......@@ -28,24 +41,27 @@ char* __mingw_fix_stat_path (const char* _path)
2841 if (_path && *_path) {
2942 len = strlen (_path);
3043
31 /* Ignore X:\ */
32
44 /* Ignore X:\
45 * 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.) */
3347 if (len <= 1 || ((len == 2 || len == 3) && _path[1] == ':'))
3448 return p;
3549
50 const char *r = _path;
51
3652 /* Check UNC \\abc\<name>\ */
3753 if ((_path[0] == '\\' || _path[0] == '/')
3854 && (_path[1] == '\\' || _path[1] == '/'))
3955 {
40 const char *r = &_path[2];
56 r = &_path[2];
4157 while (*r != 0 && *r != '\\' && *r != '/')
42 ++r;
58 r = next_char (cp, r);
4359 if (*r != 0)
4460 ++r;
4561 if (*r == 0)
4662 return p;
4763 while (*r != 0 && *r != '\\' && *r != '/')
48 ++r;
64 r = next_char (cp, r);
4965 if (*r != 0)
5066 ++r;
5167 if (*r == 0)
......@@ -54,7 +70,19 @@ char* __mingw_fix_stat_path (const char* _path)
5470
5571 if (_path[len - 1] == '/' || _path[len - 1] == '\\')
5672 {
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
5783 p = (char*)malloc (len);
84 if (p == NULL)
85 return NULL; /* malloc has set errno. */
5886 memcpy (p, _path, len - 1);
5987 p[len - 1] = '\0';
6088 }
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 @@
66
77#include <sys/stat.h>
88#include <stdlib.h>
9#include "__mingw_fix_stat.h"
910
1011/**
1112 * Returns _path without trailing slash if any
......@@ -17,10 +18,9 @@
1718 * to free it.
1819 */
1920
20wchar_t* __mingw_fix_wstat_path (const wchar_t* _path);
2121wchar_t* __mingw_fix_wstat_path (const wchar_t* _path)
2222{
23 int len;
23 size_t len;
2424 wchar_t *p;
2525
2626 p = (wchar_t*)_path;
......@@ -55,6 +55,8 @@ wchar_t* __mingw_fix_wstat_path (const wchar_t* _path)
5555 if (_path[len - 1] == L'/' || _path[len - 1] == L'\\')
5656 {
5757 p = (wchar_t*)malloc (len * sizeof(wchar_t));
58 if (p == NULL)
59 return NULL; /* malloc has set errno. */
5860 memcpy (p, _path, (len - 1) * sizeof(wchar_t));
5961 p[len - 1] = L'\0';
6062 }
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 @@
6666#include <limits.h>
6767#include <locale.h>
6868#include <wchar.h>
69#include <winternl.h>
6970
7071#ifdef __ENABLE_DFP
7172#ifndef __STDC_WANT_DEC_FP__
......@@ -163,6 +164,12 @@ typedef union ATTRIB_GCC_STRUCT __uI128 {
163164#define PFORMAT_XMASK 0x0000000F
164165#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
166173/* The radix point character, used in floating point formats, is
167174 * localised on the basis of the active LC_NUMERIC locale category.
168175 * 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 *
361368 buff[bufflen - 1] = '\0';
362369}
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
364388/* LSB first, octet version */
365389static
366390void __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 *
377401 pos--;
378402 }
379403 }
380 if(pos < bufflen - 1)
381 memset(buff,'0', pos + 1);
404 /* Fill any remaining leading positions with zeros */
405 memset(buff, '0', pos + 1);
382406 buff[bufflen - 1] = '\0';
383407}
384408#endif /* defined(__ENABLE_PRINTF128) */
......@@ -569,8 +593,8 @@ void __pformat_wputchars( const wchar_t *s, int count, __pformat_t *stream )
569593 * output quota is honoured.
570594 */
571595 char buf[16];
572 mbstate_t state;
573 int len = wcrtomb(buf, L'\0', &state);
596 mbstate_t state = {0};
597 int len;
574598
575599 if( (stream->precision >= 0) && (count > stream->precision) )
576600 /*
......@@ -657,7 +681,7 @@ void __pformat_wputchars( const wchar_t *s, int count, __pformat_t *stream )
657681 __pformat_putc( '\x20', stream );
658682
659683 len = count;
660 while(len-- > 0 && *s != 0)
684 while(len-- > 0)
661685 {
662686 __pformat_putc(*s++, stream);
663687 }
......@@ -752,12 +776,12 @@ void __pformat_int( __pformat_intarg_t value, __pformat_t *stream )
752776 */
753777 __bigint_to_string(value.__pformat_u128_t.t128_2.digits32,
754778 4, tmp_buff, bufflen);
755 __bigint_trim_leading_zeroes(tmp_buff,1);
779 __bigint_trim_leading_zeroes(tmp_buff, 0);
756780
757781 memset(p,0,bufflen);
758782 for(int32_t i = strlen(tmp_buff) - 1; i >= 0; i--){
759 if ( i && (stream->flags & PFORMAT_GROUPED) != 0 && stream->thousands_chr != 0
760 && (i % 4) == 3)
783 if (p != buf && (stream->flags & PFORMAT_GROUPED) != 0 && stream->thousands_chr != 0
784 && ((p - buf) % 4) == 3)
761785 {
762786 *p++ = ',';
763787 }
......@@ -883,7 +907,7 @@ while( value.__pformat_ullong_t )
883907static
884908void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )
885909{
886 /* Handler for `%o', `%p', `%x' and `%X' conversions.
910 /* Handler for `%o', `%p', `%x', `%X', `%b' and `%B' conversions.
887911 *
888912 * These can be implemented using a simple `mask and shift' strategy;
889913 * 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 )
891915 * digits of the formatted value, in preparation for output.
892916 */
893917 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;
895920 int bufflen = __pformat_int_bufsiz(2, shift, stream);
896921 char *buf = NULL;
897922#ifdef __ENABLE_PRINTF128
......@@ -904,16 +929,19 @@ void __pformat_xint( int fmt, __pformat_intarg_t value, __pformat_t *stream )
904929 tmp_buf = alloca(bufflen);
905930 if(fmt == 'o'){
906931 __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);
907934 } else {
908935 __bigint_to_stringx(value.__pformat_u128_t.t128_2.digits32,4,tmp_buf,bufflen, !(fmt & PFORMAT_XCASE));
909936 }
910937 __bigint_trim_leading_zeroes(tmp_buf,0);
911938
912939 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--)
914941 *p++ = tmp_buf[i];
915942#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;
917945 while( value.__pformat_ullong_t )
918946 {
919947 /* 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 )
9751003 if( ((width = stream->width) > 0)
9761004 && (fmt != 'o') && (stream->flags & PFORMAT_HASHED) )
9771005 /*
978 * For `%#x' or `%#X' formats, (which have the `#' flag set),
1006 * For `%#x', `%#X', `%#b' or `%#B' formats, (which have the `#' flag set),
9791007 * further reduce the padding width to accommodate the radix
9801008 * indicating prefix.
9811009 */
......@@ -1468,7 +1496,10 @@ void __pformat_emit_efloat( int sign, char *value, int e, __pformat_t *stream )
14681496 * include the following exponent).
14691497 */
14701498 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
14731504 /* Determine how many digit positions are required for the exponent.
14741505 */
......@@ -1881,14 +1912,15 @@ void __pformat_gfloat( long double x, __pformat_t *stream )
18811912 * precede the radix point, but we truncate any balance following
18821913 * it, to suppress output of non-significant trailing zeros...
18831914 */
1884 if( ((stream->precision = strlen( value ) - intlen) < 0)
1885 /*
1886 * This may require a compensating adjustment to the field
1887 * width, to accommodate significant trailing zeros, which
1888 * precede the radix point...
1889 */
1890 && (stream->width > 0) )
1891 stream->width += stream->precision;
1915 stream->precision = strlen( value ) - intlen;
1916
1917 /* When the mantissa is shorter than the number of integer digits
1918 * (e.g., 100000 has mantissa "1" but requires 6 digit positions),
1919 * precision becomes negative. Clamp to zero to represent no
1920 * fractional digits.
1921 */
1922 if( stream->precision < 0 )
1923 stream->precision = 0;
18921924
18931925 /* Now, we format the result as any other fixed point value.
18941926 */
......@@ -1945,7 +1977,7 @@ void __pformat_emit_xfloat( __pformat_fpreg_t value, __pformat_t *stream )
19451977 * representation of the argument value.
19461978 */
19471979 char buf[18 + 6], *p = buf;
1948 __pformat_intarg_t exponent; short exp_width = 2;
1980 short exp_width = 2;
19491981
19501982 if (value.__pformat_fpreg_mantissa != 0 ||
19511983 value.__pformat_fpreg_exponent != 0)
......@@ -2197,6 +2229,7 @@ void __pformat_emit_xfloat( __pformat_fpreg_t value, __pformat_t *stream )
21972229 stream->width += exp_width;
21982230 stream->flags |= PFORMAT_SIGNED;
21992231 /* sign extend */
2232 __pformat_intarg_t exponent;
22002233 exponent.__pformat_u128_t.t128.digits[1] = (value.__pformat_fpreg_exponent < 0) ? -1 : 0;
22012234 exponent.__pformat_u128_t.t128.digits[0] = value.__pformat_fpreg_exponent;
22022235 __pformat_int( exponent, stream );
......@@ -2506,6 +2539,64 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)
25062539 */
25072540 __pformat_puts( va_arg( argv, char * ), &stream );
25082541 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
25092600 case 'm': /* strerror (errno) */
25102601 __pformat_puts (strerror (saved_errno), &stream);
25112602 goto format_scan;
......@@ -2514,8 +2605,10 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)
25142605 case 'u':
25152606 case 'x':
25162607 case 'X':
2608 case 'b':
2609 case 'B':
25172610 /*
2518 * Unsigned integer values; octal, decimal or hexadecimal format...
2611 * Unsigned integer values; octal, decimal, hexadecimal or binary format...
25192612 */
25202613 stream.flags &= ~PFORMAT_POSITIVE;
25212614#if __ENABLE_PRINTF128
......@@ -2977,6 +3070,16 @@ __pformat (int flags, void *dest, int max, const APICHAR *fmt, va_list argv)
29773070 state = PFORMAT_END;
29783071 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
29803083 case 'L':
29813084 /*
29823085 * 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)
927927 case 'o': case 'p':
928928 case 'u':
929929 case 'x': case 'X':
930 case 'b': case 'B':
930931 switch (fc)
931932 {
932933 case 'd':
......@@ -954,6 +955,9 @@ __mingw_sformat (_IFP *s, const char *format, va_list argp)
954955 case 'x': case 'X':
955956 base = 16;
956957 break;
958 case 'b': case 'B':
959 base = 2;
960 break;
957961 }
958962
959963 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
5757 buf[retval < (int) length ? retval : (int)length] = '\0';
5858
5959#if defined(__BUILD_WIDEAPI) && defined(__BUILD_WIDEAPI_ISO)
60 /* For wide api ISO C95+ vswprintf() when requested length
61 * is equal or larger than buffer length, returns negative
62 * value as required by ISO C95+.
60 /* ISO C95+ fails when n or more data wide chars are needed. length was
61 * already decremented once for the terminator, so use > not >= here.
6362 */
64 if( retval >= (int) length )
63 if( retval > (int) length )
6564 retval = -1;
6665#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){
1212 errno = err;
1313 return ret;
1414}
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 @@
1010
1111static 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) {
1414 return &options;
1515}
lib/libc/mingw/stdio/ucrt___local_stdio_scanf_options.c+1-1
......@@ -10,6 +10,6 @@
1010
1111static 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) {
1414 return &options;
1515}
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 @@
1010#include <stdarg.h>
1111#include <stdio.h>
1212
13int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t * restrict _Format, ...);
14
1513int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t * restrict _Format, ...)
1614{
1715 va_list ap;
......@@ -21,3 +19,4 @@ int __cdecl _snwprintf(wchar_t * restrict _Dest, size_t _Count, const wchar_t *
2119 va_end(ap);
2220 return ret;
2321}
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
1212{
1313 return __stdio_common_vswprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS | _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION, _Dest, _Count, _Format, NULL, _Args);
1414}
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 @@
3535void (WINAPI *_pthread_get_system_time_best_as_file_time) (LPFILETIME) = NULL;
3636static ULONGLONG (WINAPI *_pthread_get_tick_count_64) (VOID);
3737HRESULT (WINAPI *_pthread_set_thread_description) (HANDLE, PCWSTR) = NULL;
38BOOL (WINAPI *_pthread_get_handle_information) (HANDLE, LPDWORD) = NULL;
3839
3940#if defined(__GNUC__) || defined(__clang__)
41#if __GNUC__ >= 9 && !defined(__clang__)
4042#pragma GCC diagnostic push
4143#pragma GCC diagnostic ignored "-Wprio-ctor-dtor"
44#endif
4245__attribute__((constructor(0)))
4346#endif
4447static void winpthreads_init(void)
......@@ -46,9 +49,15 @@ static void winpthreads_init(void)
4649 HMODULE mod = GetModuleHandleA("kernel32.dll");
4750 if (mod)
4851 {
52 _pthread_get_handle_information =
53 (BOOL (WINAPI *)(HANDLE, LPDWORD))(void*) GetProcAddress(mod, "GetHandleInformation");
54
4955 _pthread_get_tick_count_64 =
5056 (ULONGLONG (WINAPI *)(VOID))(void*) GetProcAddress(mod, "GetTickCount64");
5157
58 _pthread_set_thread_description =
59 (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription");
60
5261 /* <1us precision on Windows 10 */
5362 _pthread_get_system_time_best_as_file_time =
5463 (void (WINAPI *)(LPFILETIME))(void*) GetProcAddress(mod, "GetSystemTimePreciseAsFileTime");
......@@ -58,14 +67,21 @@ static void winpthreads_init(void)
5867 /* >15ms precision on Windows 10 */
5968 _pthread_get_system_time_best_as_file_time = GetSystemTimeAsFileTime;
6069
61 mod = GetModuleHandleA("kernelbase.dll");
62 if (mod)
70 /* Although SetThreadDescription lives in kernel32.dll, on Windows Server 2016,
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)
6375 {
64 _pthread_set_thread_description =
65 (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription");
76 mod = GetModuleHandleA("kernelbase.dll");
77 if (mod)
78 {
79 _pthread_set_thread_description =
80 (HRESULT (WINAPI *)(HANDLE, PCWSTR))(void*) GetProcAddress(mod, "SetThreadDescription");
81 }
6682 }
6783}
68#if defined(__GNUC__) || defined(__clang__)
84#if defined(__GNUC__) && __GNUC__ >= 9 && !defined(__clang__)
6985#pragma GCC diagnostic pop
7086#endif
7187
lib/libc/mingw/winpthreads/misc.h+22-10
......@@ -35,18 +35,32 @@ typedef long long LONGBAG;
3535typedef long LONGBAG;
3636#endif
3737
38#if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
39#undef GetHandleInformation
40#define GetHandleInformation(h,f) (1)
38extern BOOL (WINAPI *_pthread_get_handle_information) (HANDLE, LPDWORD);
39
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;
4147#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) \
4457 do { \
45 DWORD dwFlags; \
46 if (!(h) || ((h) == INVALID_HANDLE_VALUE) || !GetHandleInformation((h), &dwFlags)) \
47 return EINVAL; \
58 if (!TEST_HANDLE(h)) \
59 return e; \
4860 } while (0)
4961
62#define CHECK_HANDLE(h) CHECK_HANDLE2(h, EINVAL)
63
5064#define CHECK_PTR(p) do { if (!(p)) return EINVAL; } while (0)
5165
5266#define UPD_RESULT(x,r) do { int _r = (x); (r) = (r) ? (r) : _r; } while (0)
......@@ -59,10 +73,8 @@ typedef long LONGBAG;
5973
6074#define CHECK_OBJECT(o, e) \
6175 do { \
62 DWORD dwFlags; \
6376 if (!(o)) return e; \
64 if (!((o)->h) || (((o)->h) == INVALID_HANDLE_VALUE) || !GetHandleInformation(((o)->h), &dwFlags)) \
65 return e; \
77 CHECK_HANDLE2((o)->h, e); \
6678 } while (0)
6779
6880#define VALID(x) if (!(p)) return EINVAL;
lib/libc/mingw/winpthreads/mutex.c+5-6
......@@ -26,7 +26,6 @@
2626#endif
2727
2828#include <malloc.h>
29#include <stdbool.h>
3029#include <stdio.h>
3130
3231#define WIN32_LEAN_AND_MEAN
......@@ -64,7 +63,7 @@ typedef struct {
6463
6564/* Whether a mutex is still a static initializer (not a pointer to
6665 a mutex_impl_t). */
67static bool
66static BOOL
6867is_static_initializer(pthread_mutex_t m)
6968{
7069 /* 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)
101100
102101/* Return the implementation part of a mutex, creating it if necessary.
103102 Return NULL on out-of-memory error. */
104static inline mutex_impl_t *
103static WINPTHREADS_INLINE mutex_impl_t *
105104mutex_impl(pthread_mutex_t *m)
106105{
107106 mutex_impl_t *mi = (mutex_impl_t *)*m;
......@@ -117,7 +116,7 @@ mutex_impl(pthread_mutex_t *m)
117116
118117/* Lock a mutex. Give up after 'timeout' ms (with ETIMEDOUT),
119118 or never if timeout=INFINITE. */
120static inline int
119static WINPTHREADS_INLINE int
121120pthread_mutex_lock_intern (pthread_mutex_t *m, DWORD timeout)
122121{
123122 mutex_impl_t *mi = mutex_impl(m);
......@@ -148,7 +147,7 @@ pthread_mutex_lock_intern (pthread_mutex_t *m, DWORD timeout)
148147 /* Make sure there is an event object on which to wait. */
149148 if (mi->event == NULL) {
150149 /* Make an auto-reset event object. */
151 HANDLE ev = CreateEvent(NULL, false, false, NULL);
150 HANDLE ev = CreateEvent(NULL, FALSE, FALSE, NULL);
152151 if (ev == NULL) {
153152 switch (GetLastError()) {
154153 case ERROR_ACCESS_DENIED:
......@@ -232,7 +231,7 @@ int pthread_mutex_unlock(pthread_mutex_t *m)
232231
233232 if (unlikely(mi->type != Normal)) {
234233 if (mi->state == Unlocked)
235 return EINVAL;
234 return EPERM;
236235 if (mi->owner != GetCurrentThreadId())
237236 return EPERM;
238237 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)
267267
268268int sem_timedwait32(sem_t *sem, const struct _timespec32 *t)
269269{
270 struct _timespec64 t64 = {.tv_sec = t->tv_sec, .tv_nsec = t->tv_nsec};
271 return __sem_timedwait (sem, &t64);
270 struct _timespec64 t64 = {0};
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);
272279}
273280
274281int
lib/libc/mingw/winpthreads/thread.c+76-94
......@@ -20,6 +20,16 @@
2020 DEALINGS IN THE SOFTWARE.
2121*/
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
2333#ifdef HAVE_CONFIG_H
2434#include "config.h"
2535#endif
......@@ -32,7 +42,6 @@
3242
3343#define WIN32_LEAN_AND_MEAN
3444#include <windows.h>
35#include <strsafe.h>
3645
3746#define WINPTHREAD_THREAD_DECL WINPTHREAD_API
3847
......@@ -65,38 +74,29 @@ static size_t idListCnt = 0;
6574static size_t idListMax = 0;
6675static pthread_t idListNextId = 0;
6776
68#if !defined(_MSC_VER)
69#define USE_VEH_FOR_MSC_SETTHREADNAME
77#if defined(__SEH__) && (!defined(__clang__) || __clang_major__ >= 7)
78#define SEH_INLINE_ASM
79#ifdef __arm__
80#define ASM_EXCEPT "%%except"
81#else
82#define ASM_EXCEPT "@except"
7083#endif
71#if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
72/* forbidden RemoveVectoredExceptionHandler/AddVectoredExceptionHandler APIs */
73#undef USE_VEH_FOR_MSC_SETTHREADNAME
7484#endif
7585
76#if defined(USE_VEH_FOR_MSC_SETTHREADNAME)
77static void *SetThreadName_VEH_handle = NULL;
78
79static LONG __stdcall
80SetThreadName_VEH (PEXCEPTION_POINTERS ExceptionInfo)
86#if !defined(_MSC_VER) && (defined(__i386__) || defined(SEH_INLINE_ASM))
87static EXCEPTION_DISPOSITION __cdecl
88SetThreadName_SEH (EXCEPTION_RECORD *ExceptionRecord, PVOID EstablisherFrame, CONTEXT *ContextRecord, PVOID DispatcherContext)
8189{
82 if (ExceptionInfo->ExceptionRecord != NULL &&
83 ExceptionInfo->ExceptionRecord->ExceptionCode == EXCEPTION_SET_THREAD_NAME)
84 return EXCEPTION_CONTINUE_EXECUTION;
85
86 return EXCEPTION_CONTINUE_SEARCH;
87}
90 /* Do not be confused with VEH handlers and CRT except filters which returns LONG value with UPPER_CASE constants.
91 * SEH handlers like this one return value from EXCEPTION_DISPOSITION enum which has CamelCase constants.
92 * UPPER_CASE EXCEPTION_CONTINUE_SEARCH and CamelCase ExceptionContinueSearch are different constants.
93 */
94 if (!(ExceptionRecord->ExceptionFlags & EXCEPTION_UNWINDING) &&
95 !(ExceptionRecord->ExceptionFlags & EXCEPTION_NONCONTINUABLE) &&
96 ExceptionRecord->ExceptionCode == EXCEPTION_SET_THREAD_NAME)
97 return ExceptionContinueExecution;
8898
89static PVOID (WINAPI *AddVectoredExceptionHandlerFuncPtr) (ULONG, PVECTORED_EXCEPTION_HANDLER);
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 }
99 return ExceptionContinueSearch;
100100}
101101#endif
102102
......@@ -108,6 +108,9 @@ typedef struct _THREADNAME_INFO
108108 DWORD dwFlags; /* reserved for future use, must be zero */
109109} 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
111114static void
112115SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)
113116{
......@@ -121,7 +124,10 @@ SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)
121124
122125 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 */
125131 __try
126132 {
127133 RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *)&info);
......@@ -130,17 +136,31 @@ SetThreadName (DWORD dwThreadID, LPCSTR szThreadName)
130136 {
131137 }
132138#else
133 /* Without a debugger we *must* have an exception handler,
134 * otherwise raising an exception will crash the process.
139 /* gcc does not support __try / __except syntax, so manually register SEH handler */
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.
135158 */
136#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
137 if ((!IsDebuggerPresent ()) && (SetThreadName_VEH_handle == NULL))
159 asm volatile (".seh_handler %c0, " ASM_EXCEPT :: "i" (SetThreadName_SEH));
160 RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *) &info);
138161#else
139 if (!IsDebuggerPresent ())
162 /* Other compilers / platforms do not provide SEH support */
140163#endif
141 return;
142
143 RaiseException (EXCEPTION_SET_THREAD_NAME, 0, infosize, (ULONG_PTR *) &info);
144164#endif
145165}
146166
......@@ -443,25 +463,10 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
443463
444464 if (dwReason == DLL_PROCESS_DETACH)
445465 {
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
454466 free_pthread_mem ();
455467 }
456468 else if (dwReason == DLL_PROCESS_ATTACH)
457469 {
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
465470 }
466471 else if (dwReason == DLL_THREAD_DETACH)
467472 {
......@@ -520,13 +525,15 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
520525
521526/* TLS-runtime section variable. */
522527
523#if defined(_MSC_VER)
524528/* Force a reference to _tls_used to make the linker create the TLS
525529 * directory if it's not already there. (e.g. if __declspec(thread)
526530 * is not used).
527531 * Force a reference to __xl_f to prevent whole program optimization
528532 * from discarding the variable. */
529
533#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)
530537/* On x86, symbols are prefixed with an underscore. */
531538# if defined(_M_IX86)
532539# pragma comment(linker, "/include:__tls_used")
......@@ -544,8 +551,10 @@ __dyn_tls_pthread (HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
544551# pragma section(".CRT$XLF", long, read)
545552#endif
546553
554#if defined(__GNUC__)
555static __attribute__((used))
556#endif
547557WINPTHREADS_ATTRIBUTE((WINPTHREADS_SECTION(".CRT$XLF")))
548extern const PIMAGE_TLS_CALLBACK __xl_f;
549558const PIMAGE_TLS_CALLBACK __xl_f = __dyn_tls_pthread;
550559
551560/* Internal collect-once structure. */
......@@ -1277,9 +1286,7 @@ pthread_cancel (pthread_t t)
12771286#else
12781287#error Unsupported architecture
12791288#endif
1280#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
12811289 SetThreadContext (tv->h, &ctxt);
1282#endif
12831290
12841291 /* Also try deferred Cancelling */
12851292 tv->cancelled = 1;
......@@ -1516,9 +1523,7 @@ void _fpreset (void);
15161523
15171524#if defined(__i386__)
15181525/* Align ESP on 16-byte boundaries. */
1519# if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2))
15201526__attribute__((force_align_arg_pointer))
1521# endif
15221527#endif
15231528unsigned __stdcall
15241529pthread_create_wrapper (void *args)
......@@ -1539,16 +1544,10 @@ pthread_create_wrapper (void *args)
15391544 if (!setjmp(tv->jb))
15401545 {
15411546 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 */
15461547 pthread_mutex_unlock (&mtx_pthr_locked);
1548 /* Call function and save return value */
15471549 if (tv->func)
15481550 trslt = (intptr_t) tv->func(tv->ret_arg);
1549 #ifdef __SEH__
1550 asm ("\tnop\n\t.tl_end: nop\n");
1551 #endif
15521551 pthread_mutex_lock (&mtx_pthr_locked);
15531552 tv->ret_arg = (void*) trslt;
15541553 /* Clean up destructors */
......@@ -1585,19 +1584,6 @@ pthread_create_wrapper (void *args)
15851584 Sleep (0);
15861585 _endthreadex (rslt);
15871586 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
16011587}
16021588
16031589int
......@@ -1608,6 +1594,7 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *
16081594 struct _pthread_v *tv;
16091595 unsigned int ssize = 0;
16101596 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;
1597 unsigned thrAddr; /* Dummy variable to pass a valid location to _beginthreadex (Win98). */
16111598
16121599 if (attr && attr->s_size > UINT_MAX)
16131600 return EINVAL;
......@@ -1664,7 +1651,7 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *
16641651 /* Make sure tv->h has value of INVALID_HANDLE_VALUE */
16651652 _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);
16681655 if (thrd == INVALID_HANDLE_VALUE)
16691656 thrd = 0;
16701657 /* Failed */
......@@ -1713,12 +1700,11 @@ pthread_create (pthread_t *th, const pthread_attr_t *attr, void *(* func)(void *
17131700int
17141701pthread_join (pthread_t t, void **res)
17151702{
1716 DWORD dwFlags;
17171703 struct _pthread_v *tv = __pth_gpointer_locked (t);
17181704 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;
17191705
1720 if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags))
1721 return ESRCH;
1706 CHECK_OBJECT(tv, ESRCH);
1707
17221708 if ((tv->p_state & PTHREAD_CREATE_DETACHED) != 0)
17231709 return EINVAL;
17241710 if (pthread_equal(pthread_self(), t))
......@@ -1744,14 +1730,13 @@ pthread_join (pthread_t t, void **res)
17441730int
17451731_pthread_tryjoin (pthread_t t, void **res)
17461732{
1747 DWORD dwFlags;
17481733 struct _pthread_v *tv;
17491734 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;
17501735
17511736 pthread_mutex_lock (&mtx_pthr_locked);
17521737 tv = __pthread_get_pointer (t);
17531738
1754 if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags))
1739 if (!tv || !TEST_HANDLE(tv->h))
17551740 {
17561741 pthread_mutex_unlock (&mtx_pthr_locked);
17571742 return ESRCH;
......@@ -1798,13 +1783,12 @@ int
17981783pthread_detach (pthread_t t)
17991784{
18001785 int r = 0;
1801 DWORD dwFlags;
18021786 struct _pthread_v *tv = __pth_gpointer_locked (t);
18031787 HANDLE dw;
18041788 pthread_spinlock_t new_spin_keys = PTHREAD_SPINLOCK_INITIALIZER;
18051789
18061790 pthread_mutex_lock (&mtx_pthr_locked);
1807 if (!tv || tv->h == NULL || !GetHandleInformation(tv->h, &dwFlags))
1791 if (!tv || !TEST_HANDLE(tv->h))
18081792 {
18091793 pthread_mutex_unlock (&mtx_pthr_locked);
18101794 return ESRCH;
......@@ -1897,8 +1881,8 @@ pthread_setname_np (pthread_t thread, const char *name)
18971881int
18981882pthread_getname_np (pthread_t thread, char *name, size_t len)
18991883{
1900 HRESULT result;
19011884 struct _pthread_v *tv;
1885 size_t thread_name_len;
19021886
19031887 if (name == NULL)
19041888 return EINVAL;
......@@ -1917,12 +1901,10 @@ pthread_getname_np (pthread_t thread, char *name, size_t len)
19171901 return 0;
19181902 }
19191903
1920 if (strlen (tv->thread_name) >= len)
1904 thread_name_len = strlen (tv->thread_name);
1905 if (thread_name_len >= len)
19211906 return ERANGE;
19221907
1923 result = StringCchCopyNA (name, len, tv->thread_name, len - 1);
1924 if (SUCCEEDED (result))
1925 return 0;
1926
1927 return ERANGE;
1908 memcpy (name, tv->thread_name, thread_name_len + 1);
1909 return 0;
19281910}
lib/libc/mingw/winpthreads/wpth_ver.h+2-1
......@@ -24,6 +24,7 @@
2424#define __WPTHREADS_VERSION__
2525
2626#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
2930#endif
src/libs/mingw.zig+50-9
......@@ -519,7 +519,22 @@ const mingw32_generic_src = [_][]const u8{
519519 "gdtoa" ++ path.sep_str ++ "strtopx.c",
520520 "gdtoa" ++ path.sep_str ++ "sum.c",
521521 "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",
522534 "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",
523538 "math" ++ path.sep_str ++ "fpclassify.c",
524539 "math" ++ path.sep_str ++ "fpclassifyf.c",
525540 "math" ++ path.sep_str ++ "fpclassifyl.c",
......@@ -535,8 +550,18 @@ const mingw32_generic_src = [_][]const u8{
535550 "math" ++ path.sep_str ++ "signbitl.c",
536551 "math" ++ path.sep_str ++ "signgam.c",
537552 "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",
538556 "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",
539563 "misc" ++ path.sep_str ++ "alarm.c",
564 "misc" ++ path.sep_str ++ "btowc.c",
540565 "misc" ++ path.sep_str ++ "delay-f.c",
541566 "misc" ++ path.sep_str ++ "delay-n.c",
542567 "misc" ++ path.sep_str ++ "delayimp.c",
......@@ -544,7 +569,10 @@ const mingw32_generic_src = [_][]const u8{
544569 "misc" ++ path.sep_str ++ "dirname.c",
545570 "misc" ++ path.sep_str ++ "dllmain.c",
546571 "misc" ++ path.sep_str ++ "feclearexcept.c",
572 "misc" ++ path.sep_str ++ "fedisableexcept.c",
573 "misc" ++ path.sep_str ++ "feenableexcept.c",
547574 "misc" ++ path.sep_str ++ "fegetenv.c",
575 "misc" ++ path.sep_str ++ "fegetexcept.c",
548576 "misc" ++ path.sep_str ++ "fegetexceptflag.c",
549577 "misc" ++ path.sep_str ++ "fegetround.c",
550578 "misc" ++ path.sep_str ++ "feholdexcept.c",
......@@ -556,7 +584,8 @@ const mingw32_generic_src = [_][]const u8{
556584 "misc" ++ path.sep_str ++ "mingw_controlfp.c",
557585 "misc" ++ path.sep_str ++ "mingw_setfp.c",
558586 "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",
560589 "misc" ++ path.sep_str ++ "ftw32.c",
561590 "misc" ++ path.sep_str ++ "ftw32i64.c",
562591 "misc" ++ path.sep_str ++ "ftw64.c",
......@@ -565,6 +594,8 @@ const mingw32_generic_src = [_][]const u8{
565594 "misc" ++ path.sep_str ++ "getlogin.c",
566595 "misc" ++ path.sep_str ++ "getopt.c",
567596 "misc" ++ path.sep_str ++ "gettimeofday.c",
597 "misc" ++ path.sep_str ++ "memalignment.c",
598 "misc" ++ path.sep_str ++ "memset_explicit.c",
568599 "misc" ++ path.sep_str ++ "mingw-access.c",
569600 "misc" ++ path.sep_str ++ "mingw-aligned-malloc.c",
570601 "misc" ++ path.sep_str ++ "mingw_getsp.S",
......@@ -575,6 +606,7 @@ const mingw32_generic_src = [_][]const u8{
575606 "misc" ++ path.sep_str ++ "mingw_wcstod.c",
576607 "misc" ++ path.sep_str ++ "mingw_wcstof.c",
577608 "misc" ++ path.sep_str ++ "mingw_wcstold.c",
609 "misc" ++ path.sep_str ++ "mkdtemp.c",
578610 "misc" ++ path.sep_str ++ "mkstemp.c",
579611 "misc" ++ path.sep_str ++ "sleep.c",
580612 "misc" ++ path.sep_str ++ "strsafe.c",
......@@ -583,23 +615,22 @@ const mingw32_generic_src = [_][]const u8{
583615 "misc" ++ path.sep_str ++ "tfind.c",
584616 "misc" ++ path.sep_str ++ "tsearch.c",
585617 "misc" ++ path.sep_str ++ "twalk.c",
618 "misc" ++ path.sep_str ++ "wctob.c",
586619 "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",
587623 "stdio" ++ path.sep_str ++ "__mingw_fix_stat_path.c",
624 "stdio" ++ path.sep_str ++ "__mingw_fix_wstat_fallback_fd.c",
588625 "stdio" ++ path.sep_str ++ "__mingw_fix_wstat_path.c",
589626 "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",
596627 "stdio" ++ path.sep_str ++ "lltoa.c",
597628 "stdio" ++ path.sep_str ++ "lltow.c",
598 "stdio" ++ path.sep_str ++ "lseek64.c",
599629 "stdio" ++ path.sep_str ++ "mingw_asprintf.c",
600630 "stdio" ++ path.sep_str ++ "mingw_fprintf.c",
601631 "stdio" ++ path.sep_str ++ "mingw_fwprintf.c",
602632 "stdio" ++ path.sep_str ++ "mingw_fscanf.c",
633 "stdio" ++ path.sep_str ++ "mingw_ftruncate64.c",
603634 "stdio" ++ path.sep_str ++ "mingw_fwscanf.c",
604635 "stdio" ++ path.sep_str ++ "mingw_pformat.c",
605636 "stdio" ++ path.sep_str ++ "mingw_sformat.c",
......@@ -631,6 +662,7 @@ const mingw32_generic_src = [_][]const u8{
631662 "stdio" ++ path.sep_str ++ "snprintf.c",
632663 "stdio" ++ path.sep_str ++ "snwprintf.c",
633664 "stdio" ++ path.sep_str ++ "truncate.c",
665 "stdio" ++ path.sep_str ++ "truncate64.c",
634666 "stdio" ++ path.sep_str ++ "ulltoa.c",
635667 "stdio" ++ path.sep_str ++ "ulltow.c",
636668 "stdio" ++ path.sep_str ++ "vasprintf.c",
......@@ -640,6 +672,10 @@ const mingw32_generic_src = [_][]const u8{
640672 // mingwthrd
641673 "libsrc" ++ path.sep_str ++ "mingwthrd_mt.c",
642674 // 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",
643679 "math" ++ path.sep_str ++ "_huge.c",
644680 "misc" ++ path.sep_str ++ "__initenv.c",
645681 "misc" ++ path.sep_str ++ "__winitenv.c",
......@@ -651,14 +687,20 @@ const mingw32_generic_src = [_][]const u8{
651687 "misc" ++ path.sep_str ++ "ucrt__wgetmainargs.c",
652688 "misc" ++ path.sep_str ++ "ucrt_amsg_exit.c",
653689 "misc" ++ path.sep_str ++ "ucrt_at_quick_exit.c",
690 "misc" ++ path.sep_str ++ "ucrt_mbsinit.c",
654691 "misc" ++ path.sep_str ++ "ucrt_tzset.c",
692 "stdio" ++ path.sep_str ++ "msvcr80plus_ftruncate64.c",
655693 "stdio" ++ path.sep_str ++ "ucrt__scprintf.c",
694 "stdio" ++ path.sep_str ++ "ucrt__scwprintf.c",
656695 "stdio" ++ path.sep_str ++ "ucrt__snprintf.c",
657696 "stdio" ++ path.sep_str ++ "ucrt__snscanf.c",
658697 "stdio" ++ path.sep_str ++ "ucrt__snwprintf.c",
698 "stdio" ++ path.sep_str ++ "ucrt__swprintf.c",
659699 "stdio" ++ path.sep_str ++ "ucrt__vscprintf.c",
700 "stdio" ++ path.sep_str ++ "ucrt__vscwprintf.c",
660701 "stdio" ++ path.sep_str ++ "ucrt__vsnprintf.c",
661702 "stdio" ++ path.sep_str ++ "ucrt__vsnwprintf.c",
703 "stdio" ++ path.sep_str ++ "ucrt__vswprintf.c",
662704 "stdio" ++ path.sep_str ++ "ucrt___local_stdio_printf_options.c",
663705 "stdio" ++ path.sep_str ++ "ucrt___local_stdio_scanf_options.c",
664706 "stdio" ++ path.sep_str ++ "ucrt_fprintf.c",
......@@ -691,7 +733,6 @@ const mingw32_generic_src = [_][]const u8{
691733 "stdio" ++ path.sep_str ++ "ucrt_wprintf.c",
692734 "string" ++ path.sep_str ++ "ucrt__wcstok.c",
693735 // uuid
694 "libsrc" ++ path.sep_str ++ "ativscp-uuid.c",
695736 "libsrc" ++ path.sep_str ++ "atsmedia-uuid.c",
696737 "libsrc" ++ path.sep_str ++ "bth-uuid.c",
697738 "libsrc" ++ path.sep_str ++ "cguid-uuid.c",