Sync with trunk (r48545)
[reactos.git] / dll / win32 / kernel32 / misc / stubs.c
1 /*
2 * KERNEL32.DLL stubs (STUB functions)
3 * Remove from this file, if you implement them.
4 */
5
6 #include <k32.h>
7
8 #define NDEBUG
9 #include <debug.h>
10
11 #define STUB \
12 SetLastError(ERROR_CALL_NOT_IMPLEMENTED); \
13 DPRINT1("%s() is UNIMPLEMENTED!\n", __FUNCTION__)
14
15 /*
16 * @unimplemented
17 */
18 BOOL
19 WINAPI
20 BaseAttachCompleteThunk (VOID)
21 {
22 STUB;
23 return FALSE;
24 }
25
26 /*
27 * @unimplemented
28 */
29 VOID WINAPI
30 BaseDumpAppcompatCache(VOID)
31 {
32 STUB;
33 }
34
35 /*
36 * @unimplemented
37 */
38 VOID WINAPI
39 BaseFlushAppcompatCache(VOID)
40 {
41 STUB;
42 }
43
44 /*
45 * @unimplemented
46 */
47 BOOL
48 WINAPI
49 BaseCheckAppcompatCache(ULONG Unknown1,
50 ULONG Unknown2,
51 ULONG Unknown3,
52 PULONG Unknown4)
53 {
54 STUB;
55 if (Unknown4) *Unknown4 = 0;
56 return TRUE;
57 }
58
59 /*
60 * @unimplemented
61 */
62 VOID WINAPI
63 BaseUpdateAppcompatCache(ULONG Unknown1, ULONG Unknown2, ULONG Unknown3)
64 {
65 STUB;
66 }
67
68 /*
69 * @unimplemented
70 */
71 BOOL
72 WINAPI
73 CmdBatNotification (
74 DWORD Unknown
75 )
76 {
77 STUB;
78 return FALSE;
79 }
80
81
82 /*
83 * @unimplemented
84 */
85 DWORD
86 WINAPI
87 CreateVirtualBuffer (
88 DWORD Unknown0,
89 DWORD Unknown1,
90 DWORD Unknown2
91 )
92 {
93 STUB;
94 return 0;
95 }
96
97
98 /*
99 * @unimplemented
100 */
101 DWORD
102 WINAPI
103 ExitVDM (
104 DWORD Unknown0,
105 DWORD Unknown1
106 )
107 {
108 STUB;
109 return 0;
110 }
111
112
113 /*
114 * @unimplemented
115 */
116 BOOL
117 WINAPI
118 ExtendVirtualBuffer (
119 DWORD Unknown0,
120 DWORD Unknown1
121 )
122 {
123 STUB;
124 return FALSE;
125 }
126
127
128 /*
129 * @unimplemented
130 */
131 BOOL
132 WINAPI
133 FreeVirtualBuffer (
134 HANDLE hVirtualBuffer
135 )
136 {
137 STUB;
138 return FALSE;
139 }
140
141
142 /*
143 * @unimplemented
144 */
145 DWORD
146 WINAPI
147 GetNextVDMCommand (
148 DWORD Unknown0
149 )
150 {
151 STUB;
152 return 0;
153 }
154
155
156 /*
157 * @unimplemented
158 */
159 DWORD
160 WINAPI
161 GetVDMCurrentDirectories (
162 DWORD Unknown0,
163 DWORD Unknown1
164 )
165 {
166 STUB;
167 return 0;
168 }
169
170
171 /*
172 * @unimplemented
173 */
174 BOOL
175 WINAPI
176 RegisterConsoleVDM (
177 DWORD Unknown0,
178 DWORD Unknown1,
179 DWORD Unknown2,
180 DWORD Unknown3,
181 DWORD Unknown4,
182 DWORD Unknown5,
183 DWORD Unknown6,
184 DWORD Unknown7,
185 DWORD Unknown8,
186 DWORD Unknown9,
187 DWORD Unknown10
188 )
189 {
190 STUB;
191 return FALSE;
192 }
193
194
195 /*
196 * @unimplemented
197 */
198 BOOL
199 WINAPI
200 RegisterWowBaseHandlers (
201 DWORD Unknown0
202 )
203 {
204 STUB;
205 return FALSE;
206 }
207
208
209 /*
210 * @unimplemented
211 */
212 BOOL
213 WINAPI
214 RegisterWowExec (
215 DWORD Unknown0
216 )
217 {
218 STUB;
219 return FALSE;
220 }
221
222
223 /*
224 * @unimplemented
225 */
226 BOOL
227 WINAPI
228 SetVDMCurrentDirectories (
229 DWORD Unknown0,
230 DWORD Unknown1
231 )
232 {
233 STUB;
234 return FALSE;
235 }
236
237
238 /*
239 * @unimplemented
240 */
241 DWORD
242 WINAPI
243 TrimVirtualBuffer (
244 DWORD Unknown0
245 )
246 {
247 STUB;
248 return 0;
249 }
250
251
252 /*
253 * @unimplemented
254 */
255 DWORD
256 WINAPI
257 VDMConsoleOperation (
258 DWORD Unknown0,
259 DWORD Unknown1
260 )
261 {
262 STUB;
263 return 0;
264 }
265
266
267 /*
268 * @unimplemented
269 */
270 DWORD
271 WINAPI
272 VDMOperationStarted (
273 DWORD Unknown0
274 )
275 {
276 STUB;
277 return 0;
278 }
279
280 /*
281 * @unimplemented
282 */
283 DWORD
284 WINAPI
285 VirtualBufferExceptionHandler (
286 DWORD Unknown0,
287 DWORD Unknown1,
288 DWORD Unknown2
289 )
290 {
291 STUB;
292 return 0;
293 }
294
295 /*
296 * @implemented
297 */
298 BOOL
299 WINAPI
300 BindIoCompletionCallback(HANDLE FileHandle,
301 LPOVERLAPPED_COMPLETION_ROUTINE Function,
302 ULONG Flags)
303 {
304 NTSTATUS Status = 0;
305
306 DPRINT("(%p, %p, %d)\n", FileHandle, Function, Flags);
307
308 Status = RtlSetIoCompletionCallback(FileHandle,
309 (PIO_APC_ROUTINE)Function,
310 Flags);
311
312 if (!NT_SUCCESS(Status))
313 {
314 SetLastError(RtlNtStatusToDosError(Status));
315 return FALSE;
316 }
317
318 return TRUE;
319 }
320
321 /*
322 * @unimplemented
323 */
324 BOOL
325 WINAPI
326 CreateJobSet (
327 ULONG NumJob,
328 PJOB_SET_ARRAY UserJobSet,
329 ULONG Flags)
330 {
331 STUB;
332 return 0;
333 }
334
335 /*
336 * @unimplemented
337 */
338 BOOL
339 WINAPI
340 FindVolumeMountPointClose(
341 HANDLE hFindVolumeMountPoint
342 )
343 {
344 STUB;
345 return 0;
346 }
347
348 /*
349 * @unimplemented
350 */
351 BOOL
352 WINAPI
353 GetNumaHighestNodeNumber(
354 PULONG HighestNodeNumber
355 )
356 {
357 STUB;
358 return 0;
359 }
360
361 /*
362 * @unimplemented
363 */
364 BOOL
365 WINAPI
366 GetNumaNodeProcessorMask(
367 UCHAR Node,
368 PULONGLONG ProcessorMask
369 )
370 {
371 STUB;
372 return 0;
373 }
374
375 /*
376 * @unimplemented
377 */
378 BOOL
379 WINAPI
380 GetNumaProcessorNode(
381 UCHAR Processor,
382 PUCHAR NodeNumber
383 )
384 {
385 STUB;
386 return 0;
387 }
388
389 /*
390 * @implemented
391 */
392 BOOL
393 WINAPI
394 ReadFileScatter(HANDLE hFile,
395 FILE_SEGMENT_ELEMENT aSegmentArray[],
396 DWORD nNumberOfBytesToRead,
397 LPDWORD lpReserved,
398 LPOVERLAPPED lpOverlapped)
399 {
400 PIO_STATUS_BLOCK pIOStatus;
401 LARGE_INTEGER Offset;
402 NTSTATUS Status;
403
404 DPRINT("(%p %p %u %p)\n", hFile, aSegmentArray, nNumberOfBytesToRead, lpOverlapped);
405
406 Offset.LowPart = lpOverlapped->Offset;
407 Offset.HighPart = lpOverlapped->OffsetHigh;
408 pIOStatus = (PIO_STATUS_BLOCK) lpOverlapped;
409 pIOStatus->Status = STATUS_PENDING;
410 pIOStatus->Information = 0;
411
412 Status = NtReadFileScatter(hFile,
413 NULL,
414 NULL,
415 NULL,
416 pIOStatus,
417 aSegmentArray,
418 nNumberOfBytesToRead,
419 &Offset,
420 NULL);
421
422 if (!NT_SUCCESS(Status))
423 {
424 SetLastError(RtlNtStatusToDosError(Status));
425 return FALSE;
426 }
427
428 return TRUE;
429 }
430
431 /*
432 * @unimplemented
433 */
434 VOID
435 WINAPI
436 RestoreLastError(
437 DWORD dwErrCode
438 )
439 {
440 STUB;
441 }
442
443 /*
444 * @implemented
445 */
446 BOOL
447 WINAPI
448 WriteFileGather(HANDLE hFile,
449 FILE_SEGMENT_ELEMENT aSegmentArray[],
450 DWORD nNumberOfBytesToWrite,
451 LPDWORD lpReserved,
452 LPOVERLAPPED lpOverlapped)
453 {
454 PIO_STATUS_BLOCK IOStatus;
455 LARGE_INTEGER Offset;
456 NTSTATUS Status;
457
458 DPRINT("%p %p %u %p\n", hFile, aSegmentArray, nNumberOfBytesToWrite, lpOverlapped);
459
460 Offset.LowPart = lpOverlapped->Offset;
461 Offset.HighPart = lpOverlapped->OffsetHigh;
462 IOStatus = (PIO_STATUS_BLOCK) lpOverlapped;
463 IOStatus->Status = STATUS_PENDING;
464 IOStatus->Information = 0;
465
466 Status = NtWriteFileGather(hFile,
467 NULL,
468 NULL,
469 NULL,
470 IOStatus,
471 aSegmentArray,
472 nNumberOfBytesToWrite,
473 &Offset,
474 NULL);
475
476 if (!NT_SUCCESS(Status))
477 {
478 SetLastError(RtlNtStatusToDosError(Status));
479 return FALSE;
480 }
481
482 return TRUE;
483 }
484
485 /*
486 * @unimplemented
487 */
488 BOOL
489 WINAPI
490 DeleteVolumeMountPointW(
491 LPCWSTR lpszVolumeMountPoint
492 )
493 {
494 STUB;
495 return 0;
496 }
497
498 /*
499 * @unimplemented
500 */
501 HANDLE
502 WINAPI
503 FindFirstVolumeMountPointW(
504 LPCWSTR lpszRootPathName,
505 LPWSTR lpszVolumeMountPoint,
506 DWORD cchBufferLength
507 )
508 {
509 STUB;
510 return 0;
511 }
512
513 /*
514 * @implemented
515 */
516 BOOL
517 WINAPI
518 FindNextVolumeW(
519 HANDLE handle,
520 LPWSTR volume,
521 DWORD len
522 )
523 {
524 MOUNTMGR_MOUNT_POINTS *data = handle;
525
526 while (data->Size < data->NumberOfMountPoints)
527 {
528 static const WCHAR volumeW[] = {'\\','?','?','\\','V','o','l','u','m','e','{',};
529 WCHAR *link = (WCHAR *)((char *)data + data->MountPoints[data->Size].SymbolicLinkNameOffset);
530 DWORD size = data->MountPoints[data->Size].SymbolicLinkNameLength;
531 data->Size++;
532 /* skip non-volumes */
533 if (size < sizeof(volumeW) || memcmp( link, volumeW, sizeof(volumeW) )) continue;
534 if (size + sizeof(WCHAR) >= len * sizeof(WCHAR))
535 {
536 SetLastError( ERROR_FILENAME_EXCED_RANGE );
537 return FALSE;
538 }
539 memcpy( volume, link, size );
540 volume[1] = '\\'; /* map \??\ to \\?\ */
541 volume[size / sizeof(WCHAR)] = '\\'; /* Windows appends a backslash */
542 volume[size / sizeof(WCHAR) + 1] = 0;
543 DPRINT( "returning entry %u %s\n", data->Size - 1, volume );
544 return TRUE;
545 }
546 SetLastError( ERROR_NO_MORE_FILES );
547 return FALSE;
548 }
549
550 /*
551 * @unimplemented
552 */
553 BOOL
554 WINAPI
555 FindNextVolumeMountPointW(
556 HANDLE hFindVolumeMountPoint,
557 LPWSTR lpszVolumeMountPoint,
558 DWORD cchBufferLength
559 )
560 {
561 STUB;
562 return 0;
563 }
564
565 /*
566 * @unimplemented
567 */
568 DWORD
569 WINAPI
570 GetFirmwareEnvironmentVariableW(
571 LPCWSTR lpName,
572 LPCWSTR lpGuid,
573 PVOID pBuffer,
574 DWORD nSize
575 )
576 {
577 STUB;
578 return 0;
579 }
580
581 /*
582 * @unimplemented
583 */
584 BOOL
585 WINAPI
586 GetVolumePathNamesForVolumeNameW(
587 LPCWSTR lpszVolumeName,
588 LPWSTR lpszVolumePathNames,
589 DWORD cchBufferLength,
590 PDWORD lpcchReturnLength
591 )
592 {
593 STUB;
594 return 0;
595 }
596
597 /*
598 * @unimplemented
599 */
600 BOOL
601 WINAPI
602 SetFirmwareEnvironmentVariableW(
603 LPCWSTR lpName,
604 LPCWSTR lpGuid,
605 PVOID pValue,
606 DWORD nSize
607 )
608 {
609 STUB;
610 return 0;
611 }
612
613 /*
614 * @unimplemented
615 */
616 BOOL
617 WINAPI
618 SetVolumeMountPointW(
619 LPCWSTR lpszVolumeMountPoint,
620 LPCWSTR lpszVolumeName
621 )
622 {
623 STUB;
624 return 0;
625 }
626
627 /*
628 * @unimplemented
629 */
630 BOOL
631 WINAPI
632 DeleteVolumeMountPointA(
633 LPCSTR lpszVolumeMountPoint
634 )
635 {
636 STUB;
637 return 0;
638 }
639
640 /*
641 * @unimplemented
642 */
643 HANDLE
644 WINAPI
645 FindFirstVolumeMountPointA(
646 LPCSTR lpszRootPathName,
647 LPSTR lpszVolumeMountPoint,
648 DWORD cchBufferLength
649 )
650 {
651 STUB;
652 return 0;
653 }
654
655 /*
656 * @implemented
657 */
658 BOOL
659 WINAPI
660 FindNextVolumeA(HANDLE handle,
661 LPSTR volume,
662 DWORD len)
663 {
664 WCHAR *buffer = RtlAllocateHeap(RtlGetProcessHeap(), 0, len * sizeof(WCHAR));
665 BOOL ret;
666
667 if (!buffer)
668 {
669 SetLastError(ERROR_NOT_ENOUGH_MEMORY);
670 return FALSE;
671 }
672
673 if ((ret = FindNextVolumeW( handle, buffer, len )))
674 {
675 if (!WideCharToMultiByte( CP_ACP, 0, buffer, -1, volume, len, NULL, NULL )) ret = FALSE;
676 }
677
678 HeapFree( GetProcessHeap(), 0, buffer );
679 return ret;
680 }
681
682 /*
683 * @unimplemented
684 */
685 BOOL
686 WINAPI
687 FindNextVolumeMountPointA(
688 HANDLE hFindVolumeMountPoint,
689 LPSTR lpszVolumeMountPoint,
690 DWORD cchBufferLength
691 )
692 {
693 STUB;
694 return 0;
695 }
696
697 /*
698 * @unimplemented
699 */
700 DWORD
701 WINAPI
702 GetFirmwareEnvironmentVariableA(
703 LPCSTR lpName,
704 LPCSTR lpGuid,
705 PVOID pBuffer,
706 DWORD nSize
707 )
708 {
709 STUB;
710 return 0;
711 }
712
713 /*
714 * @unimplemented
715 */
716 BOOL
717 WINAPI
718 GetVolumePathNamesForVolumeNameA(
719 LPCSTR lpszVolumeName,
720 LPSTR lpszVolumePathNames,
721 DWORD cchBufferLength,
722 PDWORD lpcchReturnLength
723 )
724 {
725 STUB;
726 return 0;
727 }
728
729 /*
730 * @unimplemented
731 */
732 BOOL
733 WINAPI
734 SetFirmwareEnvironmentVariableA(
735 LPCSTR lpName,
736 LPCSTR lpGuid,
737 PVOID pValue,
738 DWORD nSize
739 )
740 {
741 STUB;
742 return 0;
743 }
744
745 /*
746 * @unimplemented
747 */
748 BOOL
749 WINAPI
750 SetVolumeMountPointA(
751 LPCSTR lpszVolumeMountPoint,
752 LPCSTR lpszVolumeName
753 )
754 {
755 STUB;
756 return 0;
757 }
758
759 /*
760 * @unimplemented
761 */
762 BOOL WINAPI GetConsoleKeyboardLayoutNameA(LPSTR name)
763 {
764 STUB;
765 return 0;
766 }
767
768 /*
769 * @unimplemented
770 */
771 BOOL WINAPI GetConsoleKeyboardLayoutNameW(LPWSTR name)
772 {
773 STUB;
774 return 0;
775 }
776
777 /*
778 * @unimplemented
779 */
780 DWORD WINAPI GetHandleContext(HANDLE hnd)
781 {
782 STUB;
783 return 0;
784 }
785
786 /*
787 * @unimplemented
788 */
789 HANDLE WINAPI CreateSocketHandle(VOID)
790 {
791 STUB;
792 return INVALID_HANDLE_VALUE;
793 }
794
795 /*
796 * @unimplemented
797 */
798 BOOL WINAPI SetHandleContext(HANDLE hnd,DWORD context)
799 {
800 STUB;
801 return 0;
802 }
803
804 /*
805 * @unimplemented
806 */
807 BOOL WINAPI UTRegister( HMODULE hModule, LPSTR lpsz16BITDLL,
808 LPSTR lpszInitName, LPSTR lpszProcName,
809 FARPROC *ppfn32Thunk, FARPROC pfnUT32CallBack,
810 LPVOID lpBuff )
811 {
812 STUB;
813 return 0;
814 }
815
816 /*
817 * @unimplemented
818 */
819 VOID WINAPI UTUnRegister( HMODULE hModule )
820 {
821 STUB;
822 }
823
824 /*
825 * @unimplemented
826 */
827 FARPROC WINAPI DelayLoadFailureHook(LPCSTR pszDllName, LPCSTR pszProcName)
828 {
829 STUB;
830 return NULL;
831 }
832
833 /*
834 * @unimplemented
835 */
836 NTSTATUS WINAPI CreateNlsSecurityDescriptor(PSECURITY_DESCRIPTOR SecurityDescriptor,ULONG Size,ULONG AccessMask)
837 {
838 STUB;
839 return 0;
840 }
841
842 /*
843 * @unimplemented
844 */
845 BOOL WINAPI IsValidUILanguage(LANGID langid)
846 {
847 STUB;
848 return 0;
849 }
850
851 /*
852 * @unimplemented
853 */
854 VOID WINAPI NlsConvertIntegerToString(ULONG Value,ULONG Base,ULONG strsize, LPWSTR str, ULONG strsize2)
855 {
856 STUB;
857 }
858
859 /*
860 * @unimplemented
861 */
862 UINT WINAPI SetCPGlobal(UINT CodePage)
863 {
864 STUB;
865 return 0;
866 }
867
868 /*
869 * @unimplemented
870 */
871 BOOL
872 WINAPI
873 SetClientTimeZoneInformation(
874 CONST TIME_ZONE_INFORMATION *lpTimeZoneInformation)
875 {
876 STUB;
877 return 0;
878 }
879
880 ULONG
881 WINAPI
882 NlsGetCacheUpdateCount(VOID)
883 {
884 STUB;
885 return 0;
886 }
887
888 BOOLEAN
889 WINAPI
890 Wow64EnableWow64FsRedirection (BOOLEAN Wow64EnableWow64FsRedirection)
891 {
892 STUB;
893 return FALSE;
894 }
895
896 BOOL
897 WINAPI
898 Wow64DisableWow64FsRedirection (VOID ** pv)
899 {
900 STUB;
901 return FALSE;
902 }
903
904 BOOL
905 WINAPI
906 Wow64RevertWow64FsRedirection (VOID * pv)
907 {
908 STUB;
909 return FALSE;
910 }
911
912 UINT
913 WINAPI
914 EnumSystemFirmwareTables(IN DWORD FirmwareTableProviderSignature,
915 OUT PVOID pFirmwareTableBuffer,
916 IN DWORD BufferSize)
917 {
918 STUB;
919 return 0;
920 }
921
922 BOOL
923 WINAPI
924 GetSystemFileCacheSize(OUT PSIZE_T lpMinimumFileCacheSize,
925 OUT PSIZE_T lpMaximumFileCacheSize,
926 OUT PDWORD lpFlags)
927 {
928 STUB;
929 return FALSE;
930 }
931
932 UINT
933 WINAPI
934 GetSystemFirmwareTable(IN DWORD FirmwareTableProviderSignature,
935 IN DWORD FirmwareTableID,
936 OUT PVOID pFirmwareTableBuffer,
937 IN DWORD BufferSize)
938 {
939 STUB;
940 return 0;
941 }
942
943 BOOL
944 WINAPI
945 SetSystemFileCacheSize(IN SIZE_T MinimumFileCacheSize,
946 IN SIZE_T MaximumFileCacheSize,
947 IN DWORD Flags)
948 {
949 STUB;
950 return FALSE;
951 }
952
953 BOOL
954 WINAPI
955 SetThreadStackGuarantee(IN OUT PULONG StackSizeInBytes)
956 {
957 STUB;
958 return FALSE;
959 }
960
961 BOOL
962 WINAPI
963 SetProcessWorkingSetSizeEx(IN HANDLE hProcess,
964 IN SIZE_T dwMinimumWorkingSetSize,
965 IN SIZE_T dwMaximumWorkingSetSize,
966 IN DWORD Flags)
967 {
968 STUB;
969 return FALSE;
970 }
971
972
973 BOOL
974 WINAPI
975 GetProcessWorkingSetSizeEx(IN HANDLE hProcess,
976 OUT PSIZE_T lpMinimumWorkingSetSize,
977 OUT PSIZE_T lpMaximumWorkingSetSize,
978 OUT PDWORD Flags)
979 {
980 STUB;
981 return FALSE;
982 }
983
984 BOOL
985 WINAPI
986 GetNumaAvailableMemoryNode(IN UCHAR Node,
987 OUT PULONGLONG AvailableBytes)
988 {
989 STUB;
990 return FALSE;
991 }
992
993 BOOL
994 WINAPI
995 GetNumaAvailableMemory(PVOID lpInfo,
996 ULONG Length,
997 PULONG ReturnLength)
998 {
999 STUB;
1000 return FALSE;
1001 }
1002
1003 BOOL
1004 WINAPI
1005 GetNumaProcessorMap(PVOID lpInfo,
1006 ULONG Length,
1007 PULONG ReturnLength)
1008 {
1009 STUB;
1010 return FALSE;
1011 }
1012
1013 BOOL
1014 WINAPI
1015 NlsResetProcessLocale(VOID)
1016 {
1017 STUB;
1018 return TRUE;
1019 }
1020
1021 DWORD
1022 WINAPI
1023 AddLocalAlternateComputerNameA(LPSTR lpName, PNTSTATUS Status)
1024 {
1025 STUB;
1026 return 0;
1027 }
1028
1029 DWORD
1030 WINAPI
1031 AddLocalAlternateComputerNameW(LPWSTR lpName, PNTSTATUS Status)
1032 {
1033 STUB;
1034 return 0;
1035 }
1036
1037 NTSTATUS
1038 WINAPI
1039 BaseCleanupAppcompatCache(VOID)
1040 {
1041 STUB;
1042 return STATUS_NOT_IMPLEMENTED;
1043 }
1044
1045 NTSTATUS
1046 WINAPI
1047 BaseCleanupAppcompatCacheSupport(PVOID pUnknown)
1048 {
1049 STUB;
1050 return STATUS_NOT_IMPLEMENTED;
1051 }
1052
1053 BOOL
1054 WINAPI
1055 BaseInitAppcompatCache(VOID)
1056 {
1057 STUB;
1058 return FALSE;
1059 }
1060
1061 BOOL
1062 WINAPI
1063 BaseInitAppcompatCacheSupport(VOID)
1064 {
1065 STUB;
1066 return FALSE;
1067 }
1068
1069 VOID
1070 WINAPI
1071 CreateProcessInternalWSecure(VOID)
1072 {
1073 STUB;
1074 }
1075
1076 DWORD
1077 WINAPI
1078 EnumerateLocalComputerNamesA(PVOID pUnknown, DWORD Size, LPSTR lpBuffer, LPDWORD lpnSize)
1079 {
1080 STUB;
1081 return ERROR_CALL_NOT_IMPLEMENTED;
1082 }
1083
1084 DWORD
1085 WINAPI
1086 EnumerateLocalComputerNamesW(PVOID pUnknown, DWORD Size, LPWSTR lpBuffer, LPDWORD lpnSize)
1087 {
1088 STUB;
1089 return ERROR_CALL_NOT_IMPLEMENTED;
1090 }
1091
1092 PVOID
1093 WINAPI
1094 GetComPlusPackageInstallStatus(VOID)
1095 {
1096 STUB;
1097 return NULL;
1098 }
1099
1100 BOOL
1101 WINAPI
1102 GetConsoleCharType(HANDLE hConsole, COORD Coord, PDWORD Type)
1103 {
1104 STUB;
1105 return FALSE;
1106 }
1107
1108 BOOL
1109 WINAPI
1110 GetConsoleCursorMode(HANDLE hConsole, PBOOL pUnknown1, PBOOL pUnknown2)
1111 {
1112 STUB;
1113 return FALSE;
1114 }
1115
1116 BOOL
1117 WINAPI
1118 GetConsoleNlsMode(HANDLE hConsole, LPDWORD lpMode)
1119 {
1120 STUB;
1121 return FALSE;
1122 }
1123
1124 VOID
1125 WINAPI
1126 GetDefaultSortkeySize(LPVOID lpUnknown)
1127 {
1128 STUB;
1129 lpUnknown = NULL;
1130 }
1131
1132 VOID
1133 WINAPI
1134 GetLinguistLangSize(LPVOID lpUnknown)
1135 {
1136 STUB;
1137 lpUnknown = NULL;
1138 }
1139
1140 BOOL
1141 WINAPI
1142 OpenDataFile(HANDLE hFile, DWORD dwUnused)
1143 {
1144 STUB;
1145 return FALSE;
1146 }
1147
1148 BOOL
1149 WINAPI
1150 PrivMoveFileIdentityW(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3)
1151 {
1152 STUB;
1153 return FALSE;
1154 }
1155
1156 BOOL
1157 WINAPI
1158 ReadConsoleInputExA(HANDLE hConsole, LPVOID lpBuffer, DWORD dwLen, LPDWORD Unknown1, DWORD Unknown2)
1159 {
1160 STUB;
1161 return FALSE;
1162 }
1163
1164 BOOL
1165 WINAPI
1166 ReadConsoleInputExW(HANDLE hConsole, LPVOID lpBuffer, DWORD dwLen, LPDWORD Unknown1, DWORD Unknown2)
1167 {
1168 STUB;
1169 return FALSE;
1170 }
1171
1172 BOOL
1173 WINAPI
1174 RegisterConsoleIME(HWND hWnd, LPDWORD ThreadId)
1175 {
1176 STUB;
1177 return FALSE;
1178 }
1179
1180 BOOL
1181 WINAPI
1182 RegisterConsoleOS2(BOOL bUnknown)
1183 {
1184 STUB;
1185 return FALSE;
1186 }
1187
1188 DWORD
1189 WINAPI
1190 RemoveLocalAlternateComputerNameA(LPSTR lpName, DWORD Unknown)
1191 {
1192 STUB;
1193 return ERROR_CALL_NOT_IMPLEMENTED;
1194 }
1195
1196 DWORD
1197 WINAPI
1198 RemoveLocalAlternateComputerNameW(LPWSTR lpName, DWORD Unknown)
1199 {
1200 STUB;
1201 return ERROR_CALL_NOT_IMPLEMENTED;
1202 }
1203
1204 BOOL
1205 WINAPI
1206 SetComPlusPackageInstallStatus(LPVOID lpInfo)
1207 {
1208 STUB;
1209 return FALSE;
1210 }
1211
1212 BOOL
1213 WINAPI
1214 SetConsoleCursorMode(HANDLE hConsole, BOOL Unknown1, BOOL Unknown2)
1215 {
1216 STUB;
1217 return FALSE;
1218 }
1219
1220 BOOL
1221 WINAPI
1222 SetConsoleLocalEUDC(DWORD Unknown1, DWORD Unknown2, DWORD Unknown3, DWORD Unknown4)
1223 {
1224 STUB;
1225 return FALSE;
1226 }
1227
1228 BOOL
1229 WINAPI
1230 SetConsoleNlsMode(HANDLE hConsole, DWORD dwMode)
1231 {
1232 STUB;
1233 return FALSE;
1234 }
1235
1236 BOOL
1237 WINAPI
1238 SetConsoleOS2OemFormat(BOOL bUnknown)
1239 {
1240 STUB;
1241 return FALSE;
1242 }
1243
1244 BOOL
1245 WINAPI
1246 UnregisterConsoleIME(VOID)
1247 {
1248 STUB;
1249 return FALSE;
1250 }
1251
1252 /*
1253 * @unimplemented
1254 */
1255 BOOL
1256 WINAPI
1257 BaseCheckRunApp(IN DWORD Unknown1,
1258 IN DWORD Unknown2,
1259 IN DWORD Unknown3,
1260 IN DWORD Unknown4,
1261 IN DWORD Unknown5,
1262 IN DWORD Unknown6,
1263 IN DWORD Unknown7,
1264 IN DWORD Unknown8,
1265 IN DWORD Unknown9,
1266 IN DWORD Unknown10)
1267 {
1268 STUB;
1269 return FALSE;
1270 }
1271
1272 /*
1273 * @unimplemented
1274 */
1275 BOOL
1276 WINAPI
1277 BasepCheckWinSaferRestrictions(IN DWORD Unknown1,
1278 IN DWORD Unknown2,
1279 IN DWORD Unknown3,
1280 IN DWORD Unknown4,
1281 IN DWORD Unknown5,
1282 IN DWORD Unknown6)
1283 {
1284 STUB;
1285 return FALSE;
1286 }
1287
1288 /*
1289 * @unimplemented
1290 */
1291 BOOL
1292 WINAPI
1293 NumaVirtualQueryNode(IN DWORD Unknown1,
1294 IN DWORD Unknown2,
1295 IN DWORD Unknown3,
1296 IN DWORD Unknown4)
1297 {
1298 STUB;
1299 return FALSE;
1300 }
1301
1302 /*
1303 * @unimplemented
1304 */
1305 HANDLE
1306 WINAPI
1307 ReOpenFile(IN HANDLE hOriginalFile,
1308 IN DWORD dwDesiredAccess,
1309 IN DWORD dwShareMode,
1310 IN DWORD dwFlags)
1311 {
1312 STUB;
1313 return INVALID_HANDLE_VALUE;
1314 }
1315
1316 /*
1317 * @unimplemented
1318 */
1319 BOOL
1320 WINAPI
1321 SetLastConsoleEventActive(VOID)
1322 {
1323 STUB;
1324 return FALSE;
1325 }
1326
1327 /*
1328 * @unimplemented
1329 */
1330 BOOL
1331 WINAPI
1332 SetConsoleCommandHistoryMode(IN DWORD dwMode)
1333 {
1334 STUB;
1335 return FALSE;
1336 }
1337
1338 /*
1339 * @unimplemented
1340 */
1341 BOOL
1342 WINAPI
1343 SetLocalPrimaryComputerNameA(IN DWORD Unknown1,
1344 IN DWORD Unknown2)
1345 {
1346 STUB;
1347 return FALSE;
1348 }
1349
1350 /*
1351 * @unimplemented
1352 */
1353 BOOL
1354 WINAPI
1355 SetLocalPrimaryComputerNameW(IN DWORD Unknown1,
1356 IN DWORD Unknown2)
1357 {
1358 STUB;
1359 return FALSE;
1360 }
1361
1362 /*
1363 * @unimplemented
1364 */
1365 VOID
1366 WINAPI
1367 SetTermsrvAppInstallMode(IN BOOL bInstallMode)
1368 {
1369 STUB;
1370 }
1371
1372 /*
1373 * @unimplemented
1374 */
1375 BOOL
1376 WINAPI
1377 TermsrvAppInstallMode(VOID)
1378 {
1379 STUB;
1380 return FALSE;
1381 }