Reactos

[XDK][NTOSKRNL_VISTA] Put NTKRNLVISTAAPI to XDK headers for vista+ APIs implemented in ntoskrnl_vista. Now if you statically link ntoskrnl_vista into a driver, NTKERNELAPI will automatically be removed from an API definition

+42 -33
+6 -6
sdk/include/xdk/iofuncs.h
··· 2348 2348 _Inout_ PIO_WORKITEM IoWorkItem); 2349 2349 2350 2350 _IRQL_requires_max_(DISPATCH_LEVEL) 2351 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 2351 + NTKRNLVISTAAPI 2352 2352 VOID 2353 2353 NTAPI 2354 2354 IoQueueWorkItemEx( ··· 2357 2357 _In_ WORK_QUEUE_TYPE QueueType, 2358 2358 _In_opt_ __drv_aliasesMem PVOID Context); 2359 2359 2360 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 2360 + NTKRNLVISTAAPI 2361 2361 IO_PRIORITY_HINT 2362 2362 NTAPI 2363 2363 IoGetIoPriorityHint( ··· 2416 2416 2417 2417 _IRQL_requires_max_(PASSIVE_LEVEL) 2418 2418 _Must_inspect_result_ 2419 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 2419 + NTKRNLVISTAAPI 2420 2420 NTSTATUS 2421 2421 NTAPI 2422 2422 IoGetDevicePropertyData( ··· 2475 2475 IoClearIrpExtraCreateParameter( 2476 2476 _Inout_ PIRP Irp); 2477 2477 2478 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 2478 + NTKRNLVISTAAPI 2479 2479 NTSTATUS 2480 2480 NTAPI 2481 2481 IoGetIrpExtraCreateParameter( ··· 2602 2602 $if (_WDMDDK_) 2603 2603 _IRQL_requires_max_(PASSIVE_LEVEL) 2604 2604 _Must_inspect_result_ 2605 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 2605 + NTKRNLVISTAAPI 2606 2606 NTSTATUS 2607 2607 IoSetDeviceInterfacePropertyData( 2608 2608 _In_ PUNICODE_STRING SymbolicLinkName, ··· 2629 2629 $endif (_WDMDDK_) 2630 2630 $if (_NTDDK_) 2631 2631 2632 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 2632 + NTKRNLVISTAAPI 2633 2633 VOID 2634 2634 IoSetMasterIrpStatus( 2635 2635 _Inout_ PIRP MasterIrp,
+5 -5
sdk/include/xdk/kefuncs.h
··· 1128 1128 KeRevertToUserAffinityThreadEx( 1129 1129 _In_ KAFFINITY Affinity); 1130 1130 1131 - NTKERNELAPI 1131 + NTKRNLVISTAAPI 1132 1132 ULONG 1133 1133 NTAPI 1134 1134 KeQueryActiveProcessorCount( ··· 1140 1140 KeQueryMaximumProcessorCount(VOID); 1141 1141 $endif (_WDMDDK_) 1142 1142 $if (_NTDDK_) 1143 - NTKERNELAPI 1143 + NTKRNLVISTAAPI 1144 1144 ULONG 1145 1145 NTAPI 1146 1146 KeQueryActiveProcessorCount( ··· 1249 1249 KeQueryNodeMaximumProcessorCount( 1250 1250 _In_ USHORT NodeNumber); 1251 1251 1252 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 1252 + NTKRNLVISTAAPI 1253 1253 USHORT 1254 1254 NTAPI 1255 1255 KeQueryHighestNodeNumber(VOID); 1256 1256 1257 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 1257 + NTKRNLVISTAAPI 1258 1258 USHORT 1259 1259 NTAPI 1260 1260 KeGetCurrentNodeNumber(VOID); ··· 1316 1316 _In_ PGROUP_AFFINITY PreviousAffinity); 1317 1317 1318 1318 _IRQL_requires_max_(DISPATCH_LEVEL) 1319 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 1319 + NTKRNLVISTAAPI 1320 1320 BOOLEAN 1321 1321 NTAPI 1322 1322 KeSetCoalescableTimer(
+3 -3
sdk/include/xdk/pofuncs.h
··· 112 112 _In_ struct _IRP *Irp); 113 113 114 114 _IRQL_requires_max_(APC_LEVEL) 115 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 115 + NTKRNLVISTAAPI 116 116 NTSTATUS 117 117 NTAPI 118 118 PoRegisterPowerSettingCallback( ··· 123 123 _Outptr_opt_ PVOID *Handle); 124 124 125 125 _IRQL_requires_max_(APC_LEVEL) 126 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 126 + NTKRNLVISTAAPI 127 127 NTSTATUS 128 128 NTAPI 129 129 PoUnregisterPowerSettingCallback( ··· 154 154 _Inout_ PULONG IdlePointer); 155 155 156 156 _IRQL_requires_max_(DISPATCH_LEVEL) 157 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 157 + NTKRNLVISTAAPI 158 158 BOOLEAN 159 159 NTAPI 160 160 PoQueryWatchdogTime(
+7
sdk/include/xdk/wdm.template.h
··· 96 96 #endif 97 97 #endif 98 98 99 + /* for statically-linked ntoskrnl_vista library */ 100 + #if defined(NTKRNLVISTA) 101 + #define NTKRNLVISTAAPI 102 + #else 103 + #define NTKRNLVISTAAPI NTKERNELAPI 104 + #endif 105 + 99 106 #if defined(_X86_) && !defined(_NTHAL_) 100 107 #define _DECL_HAL_KE_IMPORT DECLSPEC_IMPORT 101 108 #elif defined(_X86_)
+3 -3
sdk/include/xdk/wmifuncs.h
··· 69 69 70 70 _IRQL_requires_max_(PASSIVE_LEVEL) 71 71 NTSTATUS 72 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 72 + NTKRNLVISTAAPI 73 73 NTAPI 74 74 EtwRegister( 75 75 _In_ LPCGUID ProviderId, ··· 79 79 80 80 _IRQL_requires_max_(PASSIVE_LEVEL) 81 81 NTSTATUS 82 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 82 + NTKRNLVISTAAPI 83 83 NTAPI 84 84 EtwUnregister( 85 85 _In_ REGHANDLE RegHandle); ··· 112 112 113 113 _IRQL_requires_max_(HIGH_LEVEL) 114 114 NTSTATUS 115 - // NTKERNELAPI // HACK: ntoskrnl_vista functions are statically linked thus don't need DECLSPEC_IMPORT 115 + NTKRNLVISTAAPI 116 116 NTAPI 117 117 EtwWrite( 118 118 _In_ REGHANDLE RegHandle,
+2
sdk/lib/drivers/ntoskrnl_vista/CMakeLists.txt
··· 13 13 14 14 add_library(ntoskrnl_vista ${SOURCE}) 15 15 add_dependencies(ntoskrnl_vista bugcodes xdk) 16 + 17 + target_compile_definitions(ntoskrnl_vista PUBLIC NTKRNLVISTA)
+3 -3
sdk/lib/drivers/ntoskrnl_vista/etw.c
··· 10 10 11 11 _IRQL_requires_max_(HIGH_LEVEL) 12 12 NTSTATUS 13 - NTKERNELAPI 13 + NTKRNLVISTAAPI 14 14 NTAPI 15 15 EtwWrite( 16 16 _In_ REGHANDLE RegHandle, ··· 24 24 25 25 _IRQL_requires_max_(PASSIVE_LEVEL) 26 26 NTSTATUS 27 - NTKERNELAPI 27 + NTKRNLVISTAAPI 28 28 NTAPI 29 29 EtwRegister( 30 30 _In_ LPCGUID ProviderId, ··· 37 37 38 38 _IRQL_requires_max_(PASSIVE_LEVEL) 39 39 NTSTATUS 40 - NTKERNELAPI 40 + NTKRNLVISTAAPI 41 41 NTAPI 42 42 EtwUnregister( 43 43 _In_ REGHANDLE RegHandle)
+6 -6
sdk/lib/drivers/ntoskrnl_vista/io.c
··· 18 18 19 19 #define TAG_IOWI 'IWOI' 20 20 21 - NTKERNELAPI 21 + NTKRNLVISTAAPI 22 22 NTSTATUS 23 23 NTAPI 24 24 IoGetIrpExtraCreateParameter(IN PIRP Irp, ··· 49 49 ExFreePoolWithTag(context, TAG_IOWI); 50 50 } 51 51 52 - NTKERNELAPI 52 + NTKRNLVISTAAPI 53 53 VOID 54 54 NTAPI 55 55 IoQueueWorkItemEx( ··· 68 68 69 69 _IRQL_requires_max_(PASSIVE_LEVEL) 70 70 _Must_inspect_result_ 71 - NTKERNELAPI 71 + NTKRNLVISTAAPI 72 72 NTSTATUS 73 73 NTAPI 74 74 IoGetDevicePropertyData( ··· 86 86 87 87 _IRQL_requires_max_(PASSIVE_LEVEL) 88 88 _Must_inspect_result_ 89 - NTKERNELAPI 89 + NTKRNLVISTAAPI 90 90 NTSTATUS 91 91 IoSetDeviceInterfacePropertyData( 92 92 _In_ PUNICODE_STRING SymbolicLinkName, ··· 100 100 return STATUS_NOT_IMPLEMENTED; 101 101 } 102 102 103 - NTKERNELAPI 103 + NTKRNLVISTAAPI 104 104 IO_PRIORITY_HINT 105 105 NTAPI 106 106 IoGetIoPriorityHint( ··· 109 109 return IoPriorityNormal; 110 110 } 111 111 112 - NTKERNELAPI 112 + NTKRNLVISTAAPI 113 113 VOID 114 114 IoSetMasterIrpStatus( 115 115 _Inout_ PIRP MasterIrp,
+4 -4
sdk/lib/drivers/ntoskrnl_vista/ke.c
··· 9 9 #include <ntdef.h> 10 10 #include <ntifs.h> 11 11 12 - NTKERNELAPI 12 + NTKRNLVISTAAPI 13 13 ULONG 14 14 NTAPI 15 15 KeQueryActiveProcessorCount(OUT PKAFFINITY ActiveProcessors OPTIONAL) ··· 26 26 return RtlNumberOfSetBits(&Bitmap); 27 27 } 28 28 29 - NTKERNELAPI 29 + NTKRNLVISTAAPI 30 30 USHORT 31 31 NTAPI 32 32 KeQueryHighestNodeNumber() ··· 34 34 return 0; 35 35 } 36 36 37 - NTKERNELAPI 37 + NTKRNLVISTAAPI 38 38 USHORT 39 39 NTAPI 40 40 KeGetCurrentNodeNumber() ··· 43 43 } 44 44 45 45 _IRQL_requires_max_(DISPATCH_LEVEL) 46 - NTKERNELAPI 46 + NTKRNLVISTAAPI 47 47 BOOLEAN 48 48 NTAPI 49 49 KeSetCoalescableTimer(
+3 -3
sdk/lib/drivers/ntoskrnl_vista/po.c
··· 8 8 #include <ntdef.h> 9 9 #include <ntifs.h> 10 10 11 - NTKERNELAPI 11 + NTKRNLVISTAAPI 12 12 NTSTATUS 13 13 NTAPI 14 14 PoRegisterPowerSettingCallback( ··· 22 22 } 23 23 24 24 _IRQL_requires_max_(APC_LEVEL) 25 - NTKERNELAPI 25 + NTKRNLVISTAAPI 26 26 NTSTATUS 27 27 NTAPI 28 28 PoUnregisterPowerSettingCallback( ··· 32 32 } 33 33 34 34 _IRQL_requires_max_(DISPATCH_LEVEL) 35 - NTKERNELAPI 35 + NTKRNLVISTAAPI 36 36 BOOLEAN 37 37 NTAPI 38 38 PoQueryWatchdogTime(