ReactOS  0.4.13-dev-563-g0561610
debug.c
Go to the documentation of this file.
1 /*
2  * FFS File System Driver for Windows
3  *
4  * debug.c
5  *
6  * 2004.5.6 ~
7  *
8  * Lee Jae-Hong, http://www.pyrasis.com
9  *
10  * See License.txt
11  *
12  */
13 
14 #if DBG
15 
16 #include "ntifs.h"
17 #include "ffsdrv.h"
18 #include "stdarg.h"
19 #include "stdio.h"
20 
21 
22 /* Globals */
23 
24 extern PFFS_GLOBAL FFSGlobal;
25 
26 #define SYSTEM_PROCESS_NAME "System"
27 
28 extern PFFS_GLOBAL FFSGlobal;
29 
31 
33 
34 /* Definitions */
35 
36 #ifdef ALLOC_PRAGMA
37 //#pragma alloc_text (PAGE, FFSPrintf)
38 //#pragma alloc_text (PAGE, FFSNIPrintf)
39 #pragma alloc_text (PAGE, FFSGetProcessNameOffset)
40 //#pragma alloc_text (PAGE, FFSDbgPrintCall)
41 //#pragma alloc_text (PAGE, FFSDbgPrintComplete)
42 //#pragma alloc_text (PAGE, FFSNtStatusToString)
43 #endif // ALLOC_PRAGMA
44 
45 /* Static Definitions ****************************************************/
46 
47 static PCHAR IrpMjStrings[] = {
48  "IRP_MJ_CREATE",
49  "IRP_MJ_CREATE_NAMED_PIPE",
50  "IRP_MJ_CLOSE",
51  "IRP_MJ_READ",
52  "IRP_MJ_WRITE",
53  "IRP_MJ_QUERY_INFORMATION",
54  "IRP_MJ_SET_INFORMATION",
55  "IRP_MJ_QUERY_EA",
56  "IRP_MJ_SET_EA",
57  "IRP_MJ_FLUSH_BUFFERS",
58  "IRP_MJ_QUERY_VOLUME_INFORMATION",
59  "IRP_MJ_SET_VOLUME_INFORMATION",
60  "IRP_MJ_DIRECTORY_CONTROL",
61  "IRP_MJ_FILE_SYSTEM_CONTROL",
62  "IRP_MJ_DEVICE_CONTROL",
63  "IRP_MJ_INTERNAL_DEVICE_CONTROL",
64  "IRP_MJ_SHUTDOWN",
65  "IRP_MJ_LOCK_CONTROL",
66  "IRP_MJ_CLEANUP",
67  "IRP_MJ_CREATE_MAILSLOT",
68  "IRP_MJ_QUERY_SECURITY",
69  "IRP_MJ_SET_SECURITY",
70  "IRP_MJ_POWER",
71  "IRP_MJ_SYSTEM_CONTROL",
72  "IRP_MJ_DEVICE_CHANGE",
73  "IRP_MJ_QUERY_QUOTA",
74  "IRP_MJ_SET_QUOTA",
75  "IRP_MJ_PNP"
76 };
77 
78 static PCHAR FileInformationClassStrings[] = {
79  "Unknown FileInformationClass 0",
80  "FileDirectoryInformation",
81  "FileFullDirectoryInformation",
82  "FileBothDirectoryInformation",
83  "FileBasicInformation",
84  "FileStandardInformation",
85  "FileInternalInformation",
86  "FileEaInformation",
87  "FileAccessInformation",
88  "FileNameInformation",
89  "FileRenameInformation",
90  "FileLinkInformation",
91  "FileNamesInformation",
92  "FileDispositionInformation",
93  "FilePositionInformation",
94  "FileFullEaInformation",
95  "FileModeInformation",
96  "FileAlignmentInformation",
97  "FileAllInformation",
98  "FileAllocationInformation",
99  "FileEndOfFileInformation",
100  "FileAlternateNameInformation",
101  "FileStreamInformation",
102  "FilePipeInformation",
103  "FilePipeLocalInformation",
104  "FilePipeRemoteInformation",
105  "FileMailslotQueryInformation",
106  "FileMailslotSetInformation",
107  "FileCompressionInformation",
108  "FileObjectIdInformation",
109  "FileCompletionInformation",
110  "FileMoveClusterInformation",
111  "FileQuotaInformation",
112  "FileReparsePointInformation",
113  "FileNetworkOpenInformation",
114  "FileAttributeTagInformation",
115  "FileTrackingInformation"
116 };
117 
118 static PCHAR FsInformationClassStrings[] = {
119  "Unknown FsInformationClass 0",
120  "FileFsVolumeInformation",
121  "FileFsLabelInformation",
122  "FileFsSizeInformation",
123  "FileFsDeviceInformation",
124  "FileFsAttributeInformation",
125  "FileFsControlInformation",
126  "FileFsFullSizeInformation",
127  "FileFsObjectIdInformation"
128 };
129 
130 /*
131  * FFSPrintf
132  * This function is variable-argument, level-sensitive debug print routine.
133  * If the specified debug level for the print statement is lower or equal
134  * to the current debug level, the message will be printed.
135  *
136  * Arguments:
137  * DebugPrintLevel - Specifies at which debugging level the string should
138  * be printed
139  * DebugMessage - Variable argument ascii c string
140  *
141  * Return Value:
142  * N/A
143  *
144  * NOTES:
145  * N/A
146  */
147 
148 VOID
149 FFSPrintf(
150  LONG DebugPrintLevel,
151  PCHAR DebugMessage,
152  ...)
153 {
154  va_list ap;
155  LARGE_INTEGER CurrentTime;
157 
159 
160  if (DebugPrintLevel <= DebugLevel)
161  {
162  CHAR Buffer[0x100];
163  va_start(ap, DebugMessage);
164 
165  KeQuerySystemTime(&CurrentTime);
166  RtlTimeToTimeFields(&CurrentTime, &TimeFields);
167 
168  vsprintf(Buffer, DebugMessage, ap);
169 
170  DbgPrint(DRIVER_NAME": %2.2d:%2.2d:%2.2d:%3.3d %8.8x: %s",
174 
175  va_end(ap);
176  }
177 
178 
180 
181 } // FFSPrintf()
182 
183 
184 /*
185  * FFSNIPrintf
186  * This function is variable-argument, level-sensitive debug print routine.
187  * If the specified debug level for the print statement is lower or equal
188  * to the current debug level, the message will be printed.
189  *
190  * Arguments:
191  * DebugPrintLevel - Specifies at which debugging level the string should
192  * be printed
193  * DebugMessage - Variable argument ascii c string
194  *
195  * Return Value:
196  * N/A
197  *
198  * NOTES:
199  * N/A
200  */
201 
202 VOID
204  LONG DebugPrintLevel,
205  PCHAR DebugMessage,
206  ...)
207 {
208  va_list ap;
209  LARGE_INTEGER CurrentTime;
211 
213 
214  if (DebugPrintLevel <= DebugLevel)
215  {
216  CHAR Buffer[0x100];
217  va_start(ap, DebugMessage);
218 
219  KeQuerySystemTime(&CurrentTime);
220  RtlTimeToTimeFields(&CurrentTime, &TimeFields);
221 
222  vsprintf(Buffer, DebugMessage, ap);
223 
224  DbgPrint(DRIVER_NAME": %2.2d:%2.2d:%2.2d:%3.3d %8.8x: %s",
228 
229  va_end(ap);
230  }
231 
232 
234 
235 } // FFSNIPrintf()
236 
237 ULONG
239  VOID)
240 {
242  ULONG i;
243 
244  PAGED_CODE();
245 
247 
248  for(i = 0; i < PAGE_SIZE; i++)
249  {
250  if(!strncmp(
251  SYSTEM_PROCESS_NAME,
252  (PCHAR) Process + i,
253  strlen(SYSTEM_PROCESS_NAME)))
254  {
255  return i;
256  }
257  }
258 
259  FFSPrint((DBG_ERROR, ": *** FsdGetProcessNameOffset failed ***\n"));
260 
261  return 0;
262 }
263 
264 
265 VOID
268  IN PIRP Irp)
269 {
270  PIO_STACK_LOCATION IoStackLocation;
272  PCHAR FileName;
273  PFFS_FCB Fcb;
276 
277  IoStackLocation = IoGetCurrentIrpStackLocation(Irp);
278 
279  FileObject = IoStackLocation->FileObject;
280 
281  FileName = "Unknown";
282 
284  {
285  FileName = "\\" DRIVER_NAME;
286  }
287  else if (FileObject && FileObject->FsContext)
288  {
289  Fcb = (PFFS_FCB)FileObject->FsContext;
290 
291  if (Fcb->Identifier.Type == FFSVCB)
292  {
293  FileName = "\\Volume";
294  }
295  else if (Fcb->Identifier.Type == FFSFCB && Fcb->AnsiFileName.Buffer)
296  {
297  FileName = Fcb->AnsiFileName.Buffer;
298  }
299  }
300 
301  switch (IoStackLocation->MajorFunction)
302  {
303  case IRP_MJ_CREATE:
304 
305  FileName = NULL;
306 
308  {
309  FileName = "\\" DRIVER_NAME;
310  }
311  else if (FileObject && FileObject->FileName.Length == 0)
312  {
313  FileName = "\\Volume";
314  }
315 
316  if (FileName)
317  {
318  FFSPrintNoIndent((
319  DBG_TRACE, "%s %s %s\n",
321  IrpMjStrings[IoStackLocation->MajorFunction],
322  FileName));
323  }
324  else if (FileObject && FileObject->FileName.Buffer)
325  {
326  FFSPrintNoIndent((
327  DBG_TRACE, "%s %s %S\n",
329  IrpMjStrings[IoStackLocation->MajorFunction],
330  IoStackLocation->FileObject->FileName.Buffer));
331  }
332  else
333  {
334  FFSPrintNoIndent((
335  DBG_TRACE, "%s %s %s\n",
337  IrpMjStrings[IoStackLocation->MajorFunction],
338  "Unknown"));
339  }
340 
341  break;
342 
343  case IRP_MJ_CLOSE:
344 
345  FFSPrintNoIndent((
346  DBG_TRACE, "%s %s %s\n",
348  IrpMjStrings[IoStackLocation->MajorFunction],
349  FileName));
350 
351  break;
352 
353  case IRP_MJ_READ:
354 
355  if (IoStackLocation->MinorFunction & IRP_MN_COMPLETE)
356  {
357  FFSPrintNoIndent((
358  DBG_TRACE, "%s %s %s IRP_MN_COMPLETE\n",
360  IrpMjStrings[IoStackLocation->MajorFunction],
361  FileName));
362  }
363  else
364  {
365  FFSPrintNoIndent((
366  DBG_TRACE, "%s %s %s Offset: %I64xh Length: %xh %s%s%s%s%s%s\n",
368  IrpMjStrings[IoStackLocation->MajorFunction],
369  FileName,
370  IoStackLocation->Parameters.Read.ByteOffset.QuadPart,
371  IoStackLocation->Parameters.Read.Length,
372  (IoStackLocation->MinorFunction & IRP_MN_DPC ? "IRP_MN_DPC " : " "),
373  (IoStackLocation->MinorFunction & IRP_MN_MDL ? "IRP_MN_MDL " : " "),
374  (IoStackLocation->MinorFunction & IRP_MN_COMPRESSED ? "IRP_MN_COMPRESSED " : " "),
375  (Irp->Flags & IRP_PAGING_IO ? "IRP_PAGING_IO " : " "),
376  (Irp->Flags & IRP_NOCACHE ? "IRP_NOCACHE " : " "),
377  (FileObject->Flags & FO_SYNCHRONOUS_IO ? "FO_SYNCHRONOUS_IO " : " ")));
378  }
379 
380  break;
381 
382  case IRP_MJ_WRITE:
383 
384  if (IoStackLocation->MinorFunction & IRP_MN_COMPLETE)
385  {
386  FFSPrintNoIndent((
387  DBG_TRACE, "%s %s %s IRP_MN_COMPLETE\n",
389  IrpMjStrings[IoStackLocation->MajorFunction],
390  FileName));
391  }
392  else
393  {
394  FFSPrintNoIndent((
395  DBG_TRACE, "%s %s %s Offset: %I64xh Length: %xh %s%s%s%s%s%s\n",
397  IrpMjStrings[IoStackLocation->MajorFunction],
398  FileName,
399  IoStackLocation->Parameters.Read.ByteOffset.QuadPart,
400  IoStackLocation->Parameters.Read.Length,
401  (IoStackLocation->MinorFunction & IRP_MN_DPC ? "IRP_MN_DPC " : " "),
402  (IoStackLocation->MinorFunction & IRP_MN_MDL ? "IRP_MN_MDL " : " "),
403  (IoStackLocation->MinorFunction & IRP_MN_COMPRESSED ? "IRP_MN_COMPRESSED " : " "),
404  (Irp->Flags & IRP_PAGING_IO ? "IRP_PAGING_IO " : " "),
405  (Irp->Flags & IRP_NOCACHE ? "IRP_NOCACHE " : " "),
406  (FileObject->Flags & FO_SYNCHRONOUS_IO ? "FO_SYNCHRONOUS_IO " : " ")));
407  }
408 
409  break;
410 
412 
414  IoStackLocation->Parameters.QueryFile.FileInformationClass;
415 
417  {
418  FFSPrintNoIndent((
419  DBG_TRACE, "%s %s %s %s\n",
421  IrpMjStrings[IoStackLocation->MajorFunction],
422  FileName,
423  FileInformationClassStrings[FileInformationClass]));
424  }
425  else
426  {
427  FFSPrintNoIndent((
428  DBG_TRACE,
429  "%s %s %s Unknown FileInformationClass %u\n",
431  IrpMjStrings[IoStackLocation->MajorFunction],
432  FileName,
434  }
435 
436  break;
437 
439 
441  IoStackLocation->Parameters.SetFile.FileInformationClass;
442 
444  {
445  FFSPrintNoIndent((
446  DBG_TRACE, "%s %s %s %s\n",
448  IrpMjStrings[IoStackLocation->MajorFunction],
449  FileName,
450  FileInformationClassStrings[FileInformationClass]));
451  }
452  else
453  {
454  FFSPrintNoIndent((
455  DBG_TRACE,
456  "%s %s %s Unknown FileInformationClass %u\n",
458  IrpMjStrings[IoStackLocation->MajorFunction],
459  FileName,
461  }
462 
463  break;
464 
466 
468  IoStackLocation->Parameters.QueryVolume.FsInformationClass;
469 
471  {
472  FFSPrintNoIndent((
473  DBG_TRACE, "%s %s %s %s\n",
475  IrpMjStrings[IoStackLocation->MajorFunction],
476  FileName,
477  FsInformationClassStrings[FsInformationClass]));
478  }
479  else
480  {
481  FFSPrintNoIndent((
482  DBG_TRACE,
483  "%s %s %s Unknown FsInformationClass %u\n",
485  IrpMjStrings[IoStackLocation->MajorFunction],
486  FileName,
488  }
489 
490  break;
491 
493 
494  if (IoStackLocation->MinorFunction & IRP_MN_QUERY_DIRECTORY)
495  {
496 #if !defined(_GNU_NTIFS_) || defined(__REACTOS__)
498  IoStackLocation->Parameters.QueryDirectory.FileInformationClass;
499 #else
501  IoStackLocation)->Parameters.QueryDirectory.FileInformationClass;
502 #endif
503 
505  {
506  FFSPrintNoIndent((
507  DBG_TRACE, "%s %s %s %s\n",
509  IrpMjStrings[IoStackLocation->MajorFunction],
510  FileName,
511  FileInformationClassStrings[FileInformationClass]));
512 
513  if (
514 #if !defined(_GNU_NTIFS_) || defined(__REACTOS__)
515  IoStackLocation->Parameters.QueryDirectory.FileName
516 #else
518  IoStackLocation)->Parameters.QueryDirectory.FileName
519 #endif
520  )
521  {
522 #if !defined(_GNU_NTIFS_) || defined(__REACTOS__)
523  FFSPrintNoIndent((
524  DBG_TRACE, "%s FileName: %.*S FileIndex: %x %s%s%s\n",
526 
527  IoStackLocation->Parameters.QueryDirectory.FileName->Length / 2,
528  IoStackLocation->Parameters.QueryDirectory.FileName->Buffer,
529  IoStackLocation->Parameters.QueryDirectory.FileIndex,
530  (IoStackLocation->Flags & SL_RESTART_SCAN ? "SL_RESTART_SCAN " : ""),
531  (IoStackLocation->Flags & SL_RETURN_SINGLE_ENTRY ? "SL_RETURN_SINGLE_ENTRY " : ""),
532  ((IoStackLocation->Flags & SL_INDEX_SPECIFIED) ? "SL_INDEX_SPECIFIED " : "")));
533 
534 #else
535  FFSPrintNoIndent((
536  DBG_TRACE, "%s FileName: %.*S FileIndex: %x %s%s%s\n",
538 
540  IoStackLocation)->Parameters.QueryDirectory.FileName->Length / 2,
542  IoStackLocation)->Parameters.QueryDirectory.FileName->Buffer,
544  IoStackLocation)->Parameters.QueryDirectory.FileIndex,
545  (IoStackLocation->Flags & SL_RESTART_SCAN ? "SL_RESTART_SCAN " : ""),
546  (IoStackLocation->Flags & SL_RETURN_SINGLE_ENTRY ? "SL_RETURN_SINGLE_ENTRY " : ""),
547  ((IoStackLocation->Flags & SL_INDEX_SPECIFIED) ? "SL_INDEX_SPECIFIED " : "")));
548 #endif
549  }
550  else
551  {
552 #if !defined(_GNU_NTIFS_) || defined(__REACTOS__)
553  FFSPrintNoIndent((
554  DBG_TRACE, "%s FileName: FileIndex: %#x %s%s%s\n",
556  IoStackLocation->Parameters.QueryDirectory.FileIndex,
557  (IoStackLocation->Flags & SL_RESTART_SCAN ? "SL_RESTART_SCAN " : ""),
558  (IoStackLocation->Flags & SL_RETURN_SINGLE_ENTRY ? "SL_RETURN_SINGLE_ENTRY " : ""),
559  (IoStackLocation->Flags & SL_INDEX_SPECIFIED ? "SL_INDEX_SPECIFIED " : "")));
560 #else
561  FFSPrintNoIndent((
562  DBG_TRACE, "%s FileName: FileIndex: %#x %s%s%s\n",
565  IoStackLocation)->Parameters.QueryDirectory.FileIndex,
566  (IoStackLocation->Flags & SL_RESTART_SCAN ? "SL_RESTART_SCAN " : ""),
567  (IoStackLocation->Flags & SL_RETURN_SINGLE_ENTRY ? "SL_RETURN_SINGLE_ENTRY " : ""),
568  (IoStackLocation->Flags & SL_INDEX_SPECIFIED ? "SL_INDEX_SPECIFIED " : "")));
569 #endif
570  }
571  }
572  else
573  {
574  FFSPrintNoIndent((
575  DBG_TRACE,
576  "%s %s %s Unknown FileInformationClass %u\n",
578  IrpMjStrings[IoStackLocation->MajorFunction],
579  FileName,
581  }
582  }
583  else if (IoStackLocation->MinorFunction & IRP_MN_NOTIFY_CHANGE_DIRECTORY)
584  {
585  FFSPrintNoIndent((
586  DBG_TRACE, "%s %s %s IRP_MN_NOTIFY_CHANGE_DIRECTORY\n",
588  IrpMjStrings[IoStackLocation->MajorFunction],
589  FileName));
590  }
591  else
592  {
593  FFSPrintNoIndent((
594  DBG_TRACE, "%s %s %s Unknown minor function %#x\n",
596  IrpMjStrings[IoStackLocation->MajorFunction],
597  FileName,
598  IoStackLocation->MinorFunction));
599  }
600 
601  break;
602 
604 
605  if (IoStackLocation->MinorFunction == IRP_MN_USER_FS_REQUEST)
606  {
607 #if !defined(_GNU_NTIFS_) || defined(__REACTOS__)
608  FFSPrintNoIndent((
609  DBG_TRACE,
610  "%s %s %s IRP_MN_USER_FS_REQUEST FsControlCode: %#x\n",
612  IrpMjStrings[IoStackLocation->MajorFunction],
613  FileName,
614  IoStackLocation->Parameters.FileSystemControl.FsControlCode));
615 #else
616  FFSPrintNoIndent((
617  DBG_TRACE,
618  "%s %s %s IRP_MN_USER_FS_REQUEST FsControlCode: %#x\n",
620  IrpMjStrings[IoStackLocation->MajorFunction],
621  FileName,
623  IoStackLocation)->Parameters.FileSystemControl.FsControlCode));
624 #endif
625  }
626  else if (IoStackLocation->MinorFunction == IRP_MN_MOUNT_VOLUME)
627  {
628  FFSPrintNoIndent((
629  DBG_TRACE,
630  "%s %s %s IRP_MN_MOUNT_VOLUME DeviceObject: %#x\n",
632  IrpMjStrings[IoStackLocation->MajorFunction],
633  FileName,
634  IoStackLocation->Parameters.MountVolume.DeviceObject));
635  }
636  else if (IoStackLocation->MinorFunction == IRP_MN_VERIFY_VOLUME)
637  {
638  FFSPrintNoIndent((
639  DBG_TRACE,
640  "%s %s %s IRP_MN_VERIFY_VOLUME DeviceObject: %#x\n",
642  IrpMjStrings[IoStackLocation->MajorFunction],
643  FileName,
644  IoStackLocation->Parameters.VerifyVolume.DeviceObject));
645  }
646  else if (IoStackLocation->MinorFunction == IRP_MN_LOAD_FILE_SYSTEM)
647  {
648  FFSPrintNoIndent((
649  DBG_TRACE, "%s %s %s IRP_MN_LOAD_FILE_SYSTEM\n",
651  IrpMjStrings[IoStackLocation->MajorFunction],
652  FileName));
653  }
654 #if (_WIN32_WINNT >= 0x0500)
655  else if (IoStackLocation->MinorFunction == IRP_MN_KERNEL_CALL)
656  {
657  FFSPrintNoIndent((
658  DBG_TRACE, "%s %s %s IRP_MN_KERNEL_CALL\n",
660  IrpMjStrings[IoStackLocation->MajorFunction],
661  FileName));
662  }
663 #endif // (_WIN32_WINNT >= 0x0500)
664  else
665  {
666  FFSPrintNoIndent((
667  DBG_TRACE, "%s %s %s Unknown minor function %#x\n",
669  IrpMjStrings[IoStackLocation->MajorFunction],
670  FileName,
671  IoStackLocation->MinorFunction));
672  }
673 
674  break;
675 
677 
678  FFSPrintNoIndent((
679  DBG_TRACE, "%s %s %s IoControlCode: %#x\n",
681  IrpMjStrings[IoStackLocation->MajorFunction],
682  FileName,
683  IoStackLocation->Parameters.DeviceIoControl.IoControlCode));
684 
685  break;
686 
687  case IRP_MJ_LOCK_CONTROL:
688 
689  if (IoStackLocation->MinorFunction & IRP_MN_LOCK)
690  {
691 #if !defined(_GNU_NTIFS_) || defined(__REACTOS__)
692  FFSPrintNoIndent((
693  DBG_TRACE, "%s %s %s IRP_MN_LOCK Offset: %I64xh Length: %I64xh Key: %u %s%s\n",
695  IrpMjStrings[IoStackLocation->MajorFunction],
696  FileName,
697  IoStackLocation->Parameters.LockControl.ByteOffset.QuadPart,
698  IoStackLocation->Parameters.LockControl.Length->QuadPart,
699  IoStackLocation->Parameters.LockControl.Key,
700  (IoStackLocation->Flags & SL_FAIL_IMMEDIATELY ? "SL_FAIL_IMMEDIATELY " : ""),
701  (IoStackLocation->Flags & SL_EXCLUSIVE_LOCK ? "SL_EXCLUSIVE_LOCK " : "")));
702 #else
703  FFSPrintNoIndent((
704  DBG_TRACE, "%s %s %s IRP_MN_LOCK Offset: %I64xh Length: %I64xh Key: %u %s%s\n",
706  IrpMjStrings[IoStackLocation->MajorFunction],
707  FileName,
709  IoStackLocation)->Parameters.LockControl.ByteOffset.QuadPart,
711  IoStackLocation)->Parameters.LockControl.Length->QuadPart,
713  IoStackLocation)->Parameters.LockControl.Key,
714  (IoStackLocation->Flags & SL_FAIL_IMMEDIATELY ? "SL_FAIL_IMMEDIATELY " : ""),
715  (IoStackLocation->Flags & SL_EXCLUSIVE_LOCK ? "SL_EXCLUSIVE_LOCK " : "")));
716 #endif
717  }
718  else if (IoStackLocation->MinorFunction & IRP_MN_UNLOCK_SINGLE)
719  {
720 #if !defined(_GNU_NTIFS_) || defined(__REACTOS__)
721  FFSPrintNoIndent((
722  DBG_TRACE, "%s %s %s IRP_MN_UNLOCK_SINGLE Offset: %I64xh Length: %I64xh Key: %u\n",
724  IrpMjStrings[IoStackLocation->MajorFunction],
725  FileName,
726  IoStackLocation->Parameters.LockControl.ByteOffset.QuadPart,
727  IoStackLocation->Parameters.LockControl.Length->QuadPart,
728  IoStackLocation->Parameters.LockControl.Key));
729 #else
730  FFSPrintNoIndent((
731  DBG_TRACE, "%s %s %s IRP_MN_UNLOCK_SINGLE Offset: %I64xh Length: %I64xh Key: %u\n",
733  IrpMjStrings[IoStackLocation->MajorFunction],
734  FileName,
736  IoStackLocation)->Parameters.LockControl.ByteOffset.QuadPart,
738  IoStackLocation)->Parameters.LockControl.Length->QuadPart,
740  IoStackLocation)->Parameters.LockControl.Key));
741 #endif
742  }
743  else if (IoStackLocation->MinorFunction & IRP_MN_UNLOCK_ALL)
744  {
745  FFSPrintNoIndent((
746  DBG_TRACE, "%s %s %s IRP_MN_UNLOCK_ALL\n",
748  IrpMjStrings[IoStackLocation->MajorFunction],
749  FileName));
750  }
751  else if (IoStackLocation->MinorFunction & IRP_MN_UNLOCK_ALL_BY_KEY)
752  {
753 #if !defined(_GNU_NTIFS_) || defined(__REACTOS__)
754  FFSPrintNoIndent((
755  DBG_TRACE, "%s %s %s IRP_MN_UNLOCK_ALL_BY_KEY Key: %u\n",
757  IrpMjStrings[IoStackLocation->MajorFunction],
758  FileName,
759  IoStackLocation->Parameters.LockControl.Key));
760 #else
761  FFSPrintNoIndent((
762  DBG_TRACE, "%s %s %s IRP_MN_UNLOCK_ALL_BY_KEY Key: %u\n",
764  IrpMjStrings[IoStackLocation->MajorFunction],
765  FileName,
767  IoStackLocation)->Parameters.LockControl.Key));
768 #endif
769  }
770  else
771  {
772  FFSPrintNoIndent((
773  DBG_TRACE, "%s %s %s Unknown minor function %#x\n",
775  IrpMjStrings[IoStackLocation->MajorFunction],
776  FileName,
777  IoStackLocation->MinorFunction));
778  }
779 
780  break;
781 
782  case IRP_MJ_CLEANUP:
783 
784  FFSPrintNoIndent((
785  DBG_TRACE, "%s %s %s\n",
787  IrpMjStrings[IoStackLocation->MajorFunction],
788  FileName));
789 
790  break;
791 
792  case IRP_MJ_SHUTDOWN:
793 
794  FFSPrintNoIndent((
795  DBG_TRACE, "%s %s %s\n",
797  IrpMjStrings[IoStackLocation->MajorFunction],
798  FileName));
799 
800  break;
801 
802 #if (_WIN32_WINNT >= 0x0500)
803  case IRP_MJ_PNP:
804 
805  FFSPrintNoIndent((
806  DBG_TRACE, "%s %s %s\n",
808  IrpMjStrings[IoStackLocation->MajorFunction],
809  FileName));
810 #endif // (_WIN32_WINNT >= 0x0500)
811  break;
812 
813 
814  default:
815 
816  FFSPrintNoIndent((
817  DBG_TRACE, "%s %s %s\n",
819  IrpMjStrings[IoStackLocation->MajorFunction],
820  FileName));
821  }
822 }
823 
824 
825 VOID
827  IN PIRP Irp,
828  IN BOOLEAN bPrint)
829 {
830  PIO_STACK_LOCATION IoStackLocation;
831 
832  if (!Irp)
833  return;
834 
835  if (Irp->IoStatus.Status != STATUS_SUCCESS)
836  {
837  IoStackLocation = IoGetCurrentIrpStackLocation(Irp);
838 
839  if (bPrint)
840  {
841  FFSPrintNoIndent((
842  DBG_TRACE, "%s %s Status: %s (%#x).\n",
844  IrpMjStrings[IoStackLocation->MajorFunction],
845  FFSNtStatusToString(Irp->IoStatus.Status),
846  Irp->IoStatus.Status));
847  }
848  }
849 }
850 
851 PCHAR
854 {
855  switch (Status)
856  {
857  case 0x00000000: return "STATUS_SUCCESS";
858  case 0x00000001: return "STATUS_WAIT_1";
859  case 0x00000002: return "STATUS_WAIT_2";
860  case 0x00000003: return "STATUS_WAIT_3";
861  case 0x0000003F: return "STATUS_WAIT_63";
862  case 0x00000080: return "STATUS_ABANDONED_WAIT_0";
863  case 0x000000BF: return "STATUS_ABANDONED_WAIT_63";
864  case 0x000000C0: return "STATUS_USER_APC";
865  case 0x00000100: return "STATUS_KERNEL_APC";
866  case 0x00000101: return "STATUS_ALERTED";
867  case 0x00000102: return "STATUS_TIMEOUT";
868  case 0x00000103: return "STATUS_PENDING";
869  case 0x00000104: return "STATUS_REPARSE";
870  case 0x00000105: return "STATUS_MORE_ENTRIES";
871  case 0x00000106: return "STATUS_NOT_ALL_ASSIGNED";
872  case 0x00000107: return "STATUS_SOME_NOT_MAPPED";
873  case 0x00000108: return "STATUS_OPLOCK_BREAK_IN_PROGRESS";
874  case 0x00000109: return "STATUS_VOLUME_MOUNTED";
875  case 0x0000010A: return "STATUS_RXACT_COMMITTED";
876  case 0x0000010B: return "STATUS_NOTIFY_CLEANUP";
877  case 0x0000010C: return "STATUS_NOTIFY_ENUM_DIR";
878  case 0x0000010D: return "STATUS_NO_QUOTAS_FOR_ACCOUNT";
879  case 0x0000010E: return "STATUS_PRIMARY_TRANSPORT_CONNECT_FAILED";
880  case 0x00000110: return "STATUS_PAGE_FAULT_TRANSITION";
881  case 0x00000111: return "STATUS_PAGE_FAULT_DEMAND_ZERO";
882  case 0x00000112: return "STATUS_PAGE_FAULT_COPY_ON_WRITE";
883  case 0x00000113: return "STATUS_PAGE_FAULT_GUARD_PAGE";
884  case 0x00000114: return "STATUS_PAGE_FAULT_PAGING_FILE";
885  case 0x00000115: return "STATUS_CACHE_PAGE_LOCKED";
886  case 0x00000116: return "STATUS_CRASH_DUMP";
887  case 0x00000117: return "STATUS_BUFFER_ALL_ZEROS";
888  case 0x00000118: return "STATUS_REPARSE_OBJECT";
889  case 0x00000119: return "STATUS_RESOURCE_REQUIREMENTS_CHANGED";
890  case 0x00000120: return "STATUS_TRANSLATION_COMPLETE";
891  case 0x00000121: return "STATUS_DS_MEMBERSHIP_EVALUATED_LOCALLY";
892  case 0x00010001: return "DBG_EXCEPTION_HANDLED";
893  case 0x00010002: return "DBG_CONTINUE";
894  case 0x40000000: return "STATUS_OBJECT_NAME_EXISTS";
895  case 0x40000001: return "STATUS_THREAD_WAS_SUSPENDED";
896  case 0x40000002: return "STATUS_WORKING_SET_LIMIT_RANGE";
897  case 0x40000003: return "STATUS_IMAGE_NOT_AT_BASE";
898  case 0x40000004: return "STATUS_RXACT_STATE_CREATED";
899  case 0x40000005: return "STATUS_SEGMENT_NOTIFICATION";
900  case 0x40000006: return "STATUS_LOCAL_USER_SESSION_KEY";
901  case 0x40000007: return "STATUS_BAD_CURRENT_DIRECTORY";
902  case 0x40000008: return "STATUS_SERIAL_MORE_WRITES";
903  case 0x40000009: return "STATUS_REGISTRY_RECOVERED";
904  case 0x4000000A: return "STATUS_FT_READ_RECOVERY_FROM_BACKUP";
905  case 0x4000000B: return "STATUS_FT_WRITE_RECOVERY";
906  case 0x4000000C: return "STATUS_SERIAL_COUNTER_TIMEOUT";
907  case 0x4000000D: return "STATUS_NULL_LM_PASSWORD";
908  case 0x4000000E: return "STATUS_IMAGE_MACHINE_TYPE_MISMATCH";
909  case 0x4000000F: return "STATUS_RECEIVE_PARTIAL";
910  case 0x40000010: return "STATUS_RECEIVE_EXPEDITED";
911  case 0x40000011: return "STATUS_RECEIVE_PARTIAL_EXPEDITED";
912  case 0x40000012: return "STATUS_EVENT_DONE";
913  case 0x40000013: return "STATUS_EVENT_PENDING";
914  case 0x40000014: return "STATUS_CHECKING_FILE_SYSTEM";
915  case 0x40000015: return "STATUS_FATAL_APP_EXIT";
916  case 0x40000016: return "STATUS_PREDEFINED_HANDLE";
917  case 0x40000017: return "STATUS_WAS_UNLOCKED";
918  case 0x40000018: return "STATUS_SERVICE_NOTIFICATION";
919  case 0x40000019: return "STATUS_WAS_LOCKED";
920  case 0x4000001A: return "STATUS_LOG_HARD_ERROR";
921  case 0x4000001B: return "STATUS_ALREADY_WIN32";
922  case 0x4000001C: return "STATUS_WX86_UNSIMULATE";
923  case 0x4000001D: return "STATUS_WX86_CONTINUE";
924  case 0x4000001E: return "STATUS_WX86_SINGLE_STEP";
925  case 0x4000001F: return "STATUS_WX86_BREAKPOINT";
926  case 0x40000020: return "STATUS_WX86_EXCEPTION_CONTINUE";
927  case 0x40000021: return "STATUS_WX86_EXCEPTION_LASTCHANCE";
928  case 0x40000022: return "STATUS_WX86_EXCEPTION_CHAIN";
929  case 0x40000023: return "STATUS_IMAGE_MACHINE_TYPE_MISMATCH_EXE";
930  case 0x40000024: return "STATUS_NO_YIELD_PERFORMED";
931  case 0x40000025: return "STATUS_TIMER_RESUME_IGNORED";
932  case 0x40000026: return "STATUS_ARBITRATION_UNHANDLED";
933  case 0x40000027: return "STATUS_CARDBUS_NOT_SUPPORTED";
934  case 0x40000028: return "STATUS_WX86_CREATEWX86TIB";
935  case 0x40000029: return "STATUS_MP_PROCESSOR_MISMATCH";
936  case 0x40010001: return "DBG_REPLY_LATER";
937  case 0x40010002: return "DBG_UNABLE_TO_PROVIDE_HANDLE";
938  case 0x40010003: return "DBG_TERMINATE_THREAD";
939  case 0x40010004: return "DBG_TERMINATE_PROCESS";
940  case 0x40010005: return "DBG_CONTROL_C";
941  case 0x40010006: return "DBG_PRINTEXCEPTION_C";
942  case 0x40010007: return "DBG_RIPEXCEPTION";
943  case 0x40010008: return "DBG_CONTROL_BREAK";
944  case 0x80000001: return "STATUS_GUARD_PAGE_VIOLATION";
945  case 0x80000002: return "STATUS_DATATYPE_MISALIGNMENT";
946  case 0x80000003: return "STATUS_BREAKPOINT";
947  case 0x80000004: return "STATUS_SINGLE_STEP";
948  case 0x80000005: return "STATUS_BUFFER_OVERFLOW";
949  case 0x80000006: return "STATUS_NO_MORE_FILES";
950  case 0x80000007: return "STATUS_WAKE_SYSTEM_DEBUGGER";
951  case 0x8000000A: return "STATUS_HANDLES_CLOSED";
952  case 0x8000000B: return "STATUS_NO_INHERITANCE";
953  case 0x8000000C: return "STATUS_GUID_SUBSTITUTION_MADE";
954  case 0x8000000D: return "STATUS_PARTIAL_COPY";
955  case 0x8000000E: return "STATUS_DEVICE_PAPER_EMPTY";
956  case 0x8000000F: return "STATUS_DEVICE_POWERED_OFF";
957  case 0x80000010: return "STATUS_DEVICE_OFF_LINE";
958  case 0x80000011: return "STATUS_DEVICE_BUSY";
959  case 0x80000012: return "STATUS_NO_MORE_EAS";
960  case 0x80000013: return "STATUS_INVALID_EA_NAME";
961  case 0x80000014: return "STATUS_EA_LIST_INCONSISTENT";
962  case 0x80000015: return "STATUS_INVALID_EA_FLAG";
963  case 0x80000016: return "STATUS_VERIFY_REQUIRED";
964  case 0x80000017: return "STATUS_EXTRANEOUS_INFORMATION";
965  case 0x80000018: return "STATUS_RXACT_COMMIT_NECESSARY";
966  case 0x8000001A: return "STATUS_NO_MORE_ENTRIES";
967  case 0x8000001B: return "STATUS_FILEMARK_DETECTED";
968  case 0x8000001C: return "STATUS_MEDIA_CHANGED";
969  case 0x8000001D: return "STATUS_BUS_RESET";
970  case 0x8000001E: return "STATUS_END_OF_MEDIA";
971  case 0x8000001F: return "STATUS_BEGINNING_OF_MEDIA";
972  case 0x80000020: return "STATUS_MEDIA_CHECK";
973  case 0x80000021: return "STATUS_SETMARK_DETECTED";
974  case 0x80000022: return "STATUS_NO_DATA_DETECTED";
975  case 0x80000023: return "STATUS_REDIRECTOR_HAS_OPEN_HANDLES";
976  case 0x80000024: return "STATUS_SERVER_HAS_OPEN_HANDLES";
977  case 0x80000025: return "STATUS_ALREADY_DISCONNECTED";
978  case 0x80000026: return "STATUS_LONGJUMP";
979  case 0x80010001: return "DBG_EXCEPTION_NOT_HANDLED";
980  case 0xC0000001: return "STATUS_UNSUCCESSFUL";
981  case 0xC0000002: return "STATUS_NOT_IMPLEMENTED";
982  case 0xC0000003: return "STATUS_INVALID_INFO_CLASS";
983  case 0xC0000004: return "STATUS_INFO_LENGTH_MISMATCH";
984  case 0xC0000005: return "STATUS_ACCESS_VIOLATION";
985  case 0xC0000006: return "STATUS_IN_PAGE_ERROR";
986  case 0xC0000007: return "STATUS_PAGEFILE_QUOTA";
987  case 0xC0000008: return "STATUS_INVALID_HANDLE";
988  case 0xC0000009: return "STATUS_BAD_INITIAL_STACK";
989  case 0xC000000A: return "STATUS_BAD_INITIAL_PC";
990  case 0xC000000B: return "STATUS_INVALID_CID";
991  case 0xC000000C: return "STATUS_TIMER_NOT_CANCELED";
992  case 0xC000000D: return "STATUS_INVALID_PARAMETER";
993  case 0xC000000E: return "STATUS_NO_SUCH_DEVICE";
994  case 0xC000000F: return "STATUS_NO_SUCH_FILE";
995  case 0xC0000010: return "STATUS_INVALID_DEVICE_REQUEST";
996  case 0xC0000011: return "STATUS_END_OF_FILE";
997  case 0xC0000012: return "STATUS_WRONG_VOLUME";
998  case 0xC0000013: return "STATUS_NO_MEDIA_IN_DEVICE";
999  case 0xC0000014: return "STATUS_UNRECOGNIZED_MEDIA";
1000  case 0xC0000015: return "STATUS_NONEXISTENT_SECTOR";
1001  case 0xC0000016: return "STATUS_MORE_PROCESSING_REQUIRED";
1002  case 0xC0000017: return "STATUS_NO_MEMORY";
1003  case 0xC0000018: return "STATUS_CONFLICTING_ADDRESSES";
1004  case 0xC0000019: return "STATUS_NOT_MAPPED_VIEW";
1005  case 0xC000001A: return "STATUS_UNABLE_TO_FREE_VM";
1006  case 0xC000001B: return "STATUS_UNABLE_TO_DELETE_SECTION";
1007  case 0xC000001C: return "STATUS_INVALID_SYSTEM_SERVICE";
1008  case 0xC000001D: return "STATUS_ILLEGAL_INSTRUCTION";
1009  case 0xC000001E: return "STATUS_INVALID_LOCK_SEQUENCE";
1010  case 0xC000001F: return "STATUS_INVALID_VIEW_SIZE";
1011  case 0xC0000020: return "STATUS_INVALID_FILE_FOR_SECTION";
1012  case 0xC0000021: return "STATUS_ALREADY_COMMITTED";
1013  case 0xC0000022: return "STATUS_ACCESS_DENIED";
1014  case 0xC0000023: return "STATUS_BUFFER_TOO_SMALL";
1015  case 0xC0000024: return "STATUS_OBJECT_TYPE_MISMATCH";
1016  case 0xC0000025: return "STATUS_NONCONTINUABLE_EXCEPTION";
1017  case 0xC0000026: return "STATUS_INVALID_DISPOSITION";
1018  case 0xC0000027: return "STATUS_UNWIND";
1019  case 0xC0000028: return "STATUS_BAD_STACK";
1020  case 0xC0000029: return "STATUS_INVALID_UNWIND_TARGET";
1021  case 0xC000002A: return "STATUS_NOT_LOCKED";
1022  case 0xC000002B: return "STATUS_PARITY_ERROR";
1023  case 0xC000002C: return "STATUS_UNABLE_TO_DECOMMIT_VM";
1024  case 0xC000002D: return "STATUS_NOT_COMMITTED";
1025  case 0xC000002E: return "STATUS_INVALID_PORT_ATTRIBUTES";
1026  case 0xC000002F: return "STATUS_PORT_MESSAGE_TOO_LONG";
1027  case 0xC0000030: return "STATUS_INVALID_PARAMETER_MIX";
1028  case 0xC0000031: return "STATUS_INVALID_QUOTA_LOWER";
1029  case 0xC0000032: return "STATUS_DISK_CORRUPT_ERROR";
1030  case 0xC0000033: return "STATUS_OBJECT_NAME_INVALID";
1031  case 0xC0000034: return "STATUS_OBJECT_NAME_NOT_FOUND";
1032  case 0xC0000035: return "STATUS_OBJECT_NAME_COLLISION";
1033  case 0xC0000037: return "STATUS_PORT_DISCONNECTED";
1034  case 0xC0000038: return "STATUS_DEVICE_ALREADY_ATTACHED";
1035  case 0xC0000039: return "STATUS_OBJECT_PATH_INVALID";
1036  case 0xC000003A: return "STATUS_OBJECT_PATH_NOT_FOUND";
1037  case 0xC000003B: return "STATUS_OBJECT_PATH_SYNTAX_BAD";
1038  case 0xC000003C: return "STATUS_DATA_OVERRUN";
1039  case 0xC000003D: return "STATUS_DATA_LATE_ERROR";
1040  case 0xC000003E: return "STATUS_DATA_ERROR";
1041  case 0xC000003F: return "STATUS_CRC_ERROR";
1042  case 0xC0000040: return "STATUS_SECTION_TOO_BIG";
1043  case 0xC0000041: return "STATUS_PORT_CONNECTION_REFUSED";
1044  case 0xC0000042: return "STATUS_INVALID_PORT_HANDLE";
1045  case 0xC0000043: return "STATUS_SHARING_VIOLATION";
1046  case 0xC0000044: return "STATUS_QUOTA_EXCEEDED";
1047  case 0xC0000045: return "STATUS_INVALID_PAGE_PROTECTION";
1048  case 0xC0000046: return "STATUS_MUTANT_NOT_OWNED";
1049  case 0xC0000047: return "STATUS_SEMAPHORE_LIMIT_EXCEEDED";
1050  case 0xC0000048: return "STATUS_PORT_ALREADY_SET";
1051  case 0xC0000049: return "STATUS_SECTION_NOT_IMAGE";
1052  case 0xC000004A: return "STATUS_SUSPEND_COUNT_EXCEEDED";
1053  case 0xC000004B: return "STATUS_THREAD_IS_TERMINATING";
1054  case 0xC000004C: return "STATUS_BAD_WORKING_SET_LIMIT";
1055  case 0xC000004D: return "STATUS_INCOMPATIBLE_FILE_MAP";
1056  case 0xC000004E: return "STATUS_SECTION_PROTECTION";
1057  case 0xC000004F: return "STATUS_EAS_NOT_SUPPORTED";
1058  case 0xC0000050: return "STATUS_EA_TOO_LARGE";
1059  case 0xC0000051: return "STATUS_NONEXISTENT_EA_ENTRY";
1060  case 0xC0000052: return "STATUS_NO_EAS_ON_FILE";
1061  case 0xC0000053: return "STATUS_EA_CORRUPT_ERROR";
1062  case 0xC0000054: return "STATUS_FILE_LOCK_CONFLICT";
1063  case 0xC0000055: return "STATUS_LOCK_NOT_GRANTED";
1064  case 0xC0000056: return "STATUS_DELETE_PENDING";
1065  case 0xC0000057: return "STATUS_CTL_FILE_NOT_SUPPORTED";
1066  case 0xC0000058: return "STATUS_UNKNOWN_REVISION";
1067  case 0xC0000059: return "STATUS_REVISION_MISMATCH";
1068  case 0xC000005A: return "STATUS_INVALID_OWNER";
1069  case 0xC000005B: return "STATUS_INVALID_PRIMARY_GROUP";
1070  case 0xC000005C: return "STATUS_NO_IMPERSONATION_TOKEN";
1071  case 0xC000005D: return "STATUS_CANT_DISABLE_MANDATORY";
1072  case 0xC000005E: return "STATUS_NO_LOGON_SERVERS";
1073  case 0xC000005F: return "STATUS_NO_SUCH_LOGON_SESSION";
1074  case 0xC0000060: return "STATUS_NO_SUCH_PRIVILEGE";
1075  case 0xC0000061: return "STATUS_PRIVILEGE_NOT_HELD";
1076  case 0xC0000062: return "STATUS_INVALID_ACCOUNT_NAME";
1077  case 0xC0000063: return "STATUS_USER_EXISTS";
1078  case 0xC0000064: return "STATUS_NO_SUCH_USER";
1079  case 0xC0000065: return "STATUS_GROUP_EXISTS";
1080  case 0xC0000066: return "STATUS_NO_SUCH_GROUP";
1081  case 0xC0000067: return "STATUS_MEMBER_IN_GROUP";
1082  case 0xC0000068: return "STATUS_MEMBER_NOT_IN_GROUP";
1083  case 0xC0000069: return "STATUS_LAST_ADMIN";
1084  case 0xC000006A: return "STATUS_WRONG_PASSWORD";
1085  case 0xC000006B: return "STATUS_ILL_FORMED_PASSWORD";
1086  case 0xC000006C: return "STATUS_PASSWORD_RESTRICTION";
1087  case 0xC000006D: return "STATUS_LOGON_FAILURE";
1088  case 0xC000006E: return "STATUS_ACCOUNT_RESTRICTION";
1089  case 0xC000006F: return "STATUS_INVALID_LOGON_HOURS";
1090  case 0xC0000070: return "STATUS_INVALID_WORKSTATION";
1091  case 0xC0000071: return "STATUS_PASSWORD_EXPIRED";
1092  case 0xC0000072: return "STATUS_ACCOUNT_DISABLED";
1093  case 0xC0000073: return "STATUS_NONE_MAPPED";
1094  case 0xC0000074: return "STATUS_TOO_MANY_LUIDS_REQUESTED";
1095  case 0xC0000075: return "STATUS_LUIDS_EXHAUSTED";
1096  case 0xC0000076: return "STATUS_INVALID_SUB_AUTHORITY";
1097  case 0xC0000077: return "STATUS_INVALID_ACL";
1098  case 0xC0000078: return "STATUS_INVALID_SID";
1099  case 0xC0000079: return "STATUS_INVALID_SECURITY_DESCR";
1100  case 0xC000007A: return "STATUS_PROCEDURE_NOT_FOUND";
1101  case 0xC000007B: return "STATUS_INVALID_IMAGE_FORMAT";
1102  case 0xC000007C: return "STATUS_NO_TOKEN";
1103  case 0xC000007D: return "STATUS_BAD_INHERITANCE_ACL";
1104  case 0xC000007E: return "STATUS_RANGE_NOT_LOCKED";
1105  case 0xC000007F: return "STATUS_DISK_FULL";
1106  case 0xC0000080: return "STATUS_SERVER_DISABLED";
1107  case 0xC0000081: return "STATUS_SERVER_NOT_DISABLED";
1108  case 0xC0000082: return "STATUS_TOO_MANY_GUIDS_REQUESTED";
1109  case 0xC0000083: return "STATUS_GUIDS_EXHAUSTED";
1110  case 0xC0000084: return "STATUS_INVALID_ID_AUTHORITY";
1111  case 0xC0000085: return "STATUS_AGENTS_EXHAUSTED";
1112  case 0xC0000086: return "STATUS_INVALID_VOLUME_LABEL";
1113  case 0xC0000087: return "STATUS_SECTION_NOT_EXTENDED";
1114  case 0xC0000088: return "STATUS_NOT_MAPPED_DATA";
1115  case 0xC0000089: return "STATUS_RESOURCE_DATA_NOT_FOUND";
1116  case 0xC000008A: return "STATUS_RESOURCE_TYPE_NOT_FOUND";
1117  case 0xC000008B: return "STATUS_RESOURCE_NAME_NOT_FOUND";
1118  case 0xC000008C: return "STATUS_ARRAY_BOUNDS_EXCEEDED";
1119  case 0xC000008D: return "STATUS_FLOAT_DENORMAL_OPERAND";
1120  case 0xC000008E: return "STATUS_FLOAT_DIVIDE_BY_ZERO";
1121  case 0xC000008F: return "STATUS_FLOAT_INEXACT_RESULT";
1122  case 0xC0000090: return "STATUS_FLOAT_INVALID_OPERATION";
1123  case 0xC0000091: return "STATUS_FLOAT_OVERFLOW";
1124  case 0xC0000092: return "STATUS_FLOAT_STACK_CHECK";
1125  case 0xC0000093: return "STATUS_FLOAT_UNDERFLOW";
1126  case 0xC0000094: return "STATUS_INTEGER_DIVIDE_BY_ZERO";
1127  case 0xC0000095: return "STATUS_INTEGER_OVERFLOW";
1128  case 0xC0000096: return "STATUS_PRIVILEGED_INSTRUCTION";
1129  case 0xC0000097: return "STATUS_TOO_MANY_PAGING_FILES";
1130  case 0xC0000098: return "STATUS_FILE_INVALID";
1131  case 0xC0000099: return "STATUS_ALLOTTED_SPACE_EXCEEDED";
1132  case 0xC000009A: return "STATUS_INSUFFICIENT_RESOURCES";
1133  case 0xC000009B: return "STATUS_DFS_EXIT_PATH_FOUND";
1134  case 0xC000009C: return "STATUS_DEVICE_DATA_ERROR";
1135  case 0xC000009D: return "STATUS_DEVICE_NOT_CONNECTED";
1136  case 0xC000009E: return "STATUS_DEVICE_POWER_FAILURE";
1137  case 0xC000009F: return "STATUS_FREE_VM_NOT_AT_BASE";
1138  case 0xC00000A0: return "STATUS_MEMORY_NOT_ALLOCATED";
1139  case 0xC00000A1: return "STATUS_WORKING_SET_QUOTA";
1140  case 0xC00000A2: return "STATUS_MEDIA_WRITE_PROTECTED";
1141  case 0xC00000A3: return "STATUS_DEVICE_NOT_READY";
1142  case 0xC00000A4: return "STATUS_INVALID_GROUP_ATTRIBUTES";
1143  case 0xC00000A5: return "STATUS_BAD_IMPERSONATION_LEVEL";
1144  case 0xC00000A6: return "STATUS_CANT_OPEN_ANONYMOUS";
1145  case 0xC00000A7: return "STATUS_BAD_VALIDATION_CLASS";
1146  case 0xC00000A8: return "STATUS_BAD_TOKEN_TYPE";
1147  case 0xC00000A9: return "STATUS_BAD_MASTER_BOOT_RECORD";
1148  case 0xC00000AA: return "STATUS_INSTRUCTION_MISALIGNMENT";
1149  case 0xC00000AB: return "STATUS_INSTANCE_NOT_AVAILABLE";
1150  case 0xC00000AC: return "STATUS_PIPE_NOT_AVAILABLE";
1151  case 0xC00000AD: return "STATUS_INVALID_PIPE_STATE";
1152  case 0xC00000AE: return "STATUS_PIPE_BUSY";
1153  case 0xC00000AF: return "STATUS_ILLEGAL_FUNCTION";
1154  case 0xC00000B0: return "STATUS_PIPE_DISCONNECTED";
1155  case 0xC00000B1: return "STATUS_PIPE_CLOSING";
1156  case 0xC00000B2: return "STATUS_PIPE_CONNECTED";
1157  case 0xC00000B3: return "STATUS_PIPE_LISTENING";
1158  case 0xC00000B4: return "STATUS_INVALID_READ_MODE";
1159  case 0xC00000B5: return "STATUS_IO_TIMEOUT";
1160  case 0xC00000B6: return "STATUS_FILE_FORCED_CLOSED";
1161  case 0xC00000B7: return "STATUS_PROFILING_NOT_STARTED";
1162  case 0xC00000B8: return "STATUS_PROFILING_NOT_STOPPED";
1163  case 0xC00000B9: return "STATUS_COULD_NOT_INTERPRET";
1164  case 0xC00000BA: return "STATUS_FILE_IS_A_DIRECTORY";
1165  case 0xC00000BB: return "STATUS_NOT_SUPPORTED";
1166  case 0xC00000BC: return "STATUS_REMOTE_NOT_LISTENING";
1167  case 0xC00000BD: return "STATUS_DUPLICATE_NAME";
1168  case 0xC00000BE: return "STATUS_BAD_NETWORK_PATH";
1169  case 0xC00000BF: return "STATUS_NETWORK_BUSY";
1170  case 0xC00000C0: return "STATUS_DEVICE_DOES_NOT_EXIST";
1171  case 0xC00000C1: return "STATUS_TOO_MANY_COMMANDS";
1172  case 0xC00000C2: return "STATUS_ADAPTER_HARDWARE_ERROR";
1173  case 0xC00000C3: return "STATUS_INVALID_NETWORK_RESPONSE";
1174  case 0xC00000C4: return "STATUS_UNEXPECTED_NETWORK_ERROR";
1175  case 0xC00000C5: return "STATUS_BAD_REMOTE_ADAPTER";
1176  case 0xC00000C6: return "STATUS_PRINT_QUEUE_FULL";
1177  case 0xC00000C7: return "STATUS_NO_SPOOL_SPACE";
1178  case 0xC00000C8: return "STATUS_PRINT_CANCELLED";
1179  case 0xC00000C9: return "STATUS_NETWORK_NAME_DELETED";
1180  case 0xC00000CA: return "STATUS_NETWORK_ACCESS_DENIED";
1181  case 0xC00000CB: return "STATUS_BAD_DEVICE_TYPE";
1182  case 0xC00000CC: return "STATUS_BAD_NETWORK_NAME";
1183  case 0xC00000CD: return "STATUS_TOO_MANY_NAMES";
1184  case 0xC00000CE: return "STATUS_TOO_MANY_SESSIONS";
1185  case 0xC00000CF: return "STATUS_SHARING_PAUSED";
1186  case 0xC00000D0: return "STATUS_REQUEST_NOT_ACCEPTED";
1187  case 0xC00000D1: return "STATUS_REDIRECTOR_PAUSED";
1188  case 0xC00000D2: return "STATUS_NET_WRITE_FAULT";
1189  case 0xC00000D3: return "STATUS_PROFILING_AT_LIMIT";
1190  case 0xC00000D4: return "STATUS_NOT_SAME_DEVICE";
1191  case 0xC00000D5: return "STATUS_FILE_RENAMED";
1192  case 0xC00000D6: return "STATUS_VIRTUAL_CIRCUIT_CLOSED";
1193  case 0xC00000D7: return "STATUS_NO_SECURITY_ON_OBJECT";
1194  case 0xC00000D8: return "STATUS_CANT_WAIT";
1195  case 0xC00000D9: return "STATUS_PIPE_EMPTY";
1196  case 0xC00000DA: return "STATUS_CANT_ACCESS_DOMAIN_INFO";
1197  case 0xC00000DB: return "STATUS_CANT_TERMINATE_SELF";
1198  case 0xC00000DC: return "STATUS_INVALID_SERVER_STATE";
1199  case 0xC00000DD: return "STATUS_INVALID_DOMAIN_STATE";
1200  case 0xC00000DE: return "STATUS_INVALID_DOMAIN_ROLE";
1201  case 0xC00000DF: return "STATUS_NO_SUCH_DOMAIN";
1202  case 0xC00000E0: return "STATUS_DOMAIN_EXISTS";
1203  case 0xC00000E1: return "STATUS_DOMAIN_LIMIT_EXCEEDED";
1204  case 0xC00000E2: return "STATUS_OPLOCK_NOT_GRANTED";
1205  case 0xC00000E3: return "STATUS_INVALID_OPLOCK_PROTOCOL";
1206  case 0xC00000E4: return "STATUS_INTERNAL_DB_CORRUPTION";
1207  case 0xC00000E5: return "STATUS_INTERNAL_ERROR";
1208  case 0xC00000E6: return "STATUS_GENERIC_NOT_MAPPED";
1209  case 0xC00000E7: return "STATUS_BAD_DESCRIPTOR_FORMAT";
1210  case 0xC00000E8: return "STATUS_INVALID_USER_BUFFER";
1211  case 0xC00000E9: return "STATUS_UNEXPECTED_IO_ERROR";
1212  case 0xC00000EA: return "STATUS_UNEXPECTED_MM_CREATE_ERR";
1213  case 0xC00000EB: return "STATUS_UNEXPECTED_MM_MAP_ERROR";
1214  case 0xC00000EC: return "STATUS_UNEXPECTED_MM_EXTEND_ERR";
1215  case 0xC00000ED: return "STATUS_NOT_LOGON_PROCESS";
1216  case 0xC00000EE: return "STATUS_LOGON_SESSION_EXISTS";
1217  case 0xC00000EF: return "STATUS_INVALID_PARAMETER_1";
1218  case 0xC00000F0: return "STATUS_INVALID_PARAMETER_2";
1219  case 0xC00000F1: return "STATUS_INVALID_PARAMETER_3";
1220  case 0xC00000F2: return "STATUS_INVALID_PARAMETER_4";
1221  case 0xC00000F3: return "STATUS_INVALID_PARAMETER_5";
1222  case 0xC00000F4: return "STATUS_INVALID_PARAMETER_6";
1223  case 0xC00000F5: return "STATUS_INVALID_PARAMETER_7";
1224  case 0xC00000F6: return "STATUS_INVALID_PARAMETER_8";
1225  case 0xC00000F7: return "STATUS_INVALID_PARAMETER_9";
1226  case 0xC00000F8: return "STATUS_INVALID_PARAMETER_10";
1227  case 0xC00000F9: return "STATUS_INVALID_PARAMETER_11";
1228  case 0xC00000FA: return "STATUS_INVALID_PARAMETER_12";
1229  case 0xC00000FB: return "STATUS_REDIRECTOR_NOT_STARTED";
1230  case 0xC00000FC: return "STATUS_REDIRECTOR_STARTED";
1231  case 0xC00000FD: return "STATUS_STACK_OVERFLOW";
1232  case 0xC00000FE: return "STATUS_NO_SUCH_PACKAGE";
1233  case 0xC00000FF: return "STATUS_BAD_FUNCTION_TABLE";
1234  case 0xC0000100: return "STATUS_VARIABLE_NOT_FOUND";
1235  case 0xC0000101: return "STATUS_DIRECTORY_NOT_EMPTY";
1236  case 0xC0000102: return "STATUS_FILE_CORRUPT_ERROR";
1237  case 0xC0000103: return "STATUS_NOT_A_DIRECTORY";
1238  case 0xC0000104: return "STATUS_BAD_LOGON_SESSION_STATE";
1239  case 0xC0000105: return "STATUS_LOGON_SESSION_COLLISION";
1240  case 0xC0000106: return "STATUS_NAME_TOO_LONG";
1241  case 0xC0000107: return "STATUS_FILES_OPEN";
1242  case 0xC0000108: return "STATUS_CONNECTION_IN_USE";
1243  case 0xC0000109: return "STATUS_MESSAGE_NOT_FOUND";
1244  case 0xC000010A: return "STATUS_PROCESS_IS_TERMINATING";
1245  case 0xC000010B: return "STATUS_INVALID_LOGON_TYPE";
1246  case 0xC000010C: return "STATUS_NO_GUID_TRANSLATION";
1247  case 0xC000010D: return "STATUS_CANNOT_IMPERSONATE";
1248  case 0xC000010E: return "STATUS_IMAGE_ALREADY_LOADED";
1249  case 0xC000010F: return "STATUS_ABIOS_NOT_PRESENT";
1250  case 0xC0000110: return "STATUS_ABIOS_LID_NOT_EXIST";
1251  case 0xC0000111: return "STATUS_ABIOS_LID_ALREADY_OWNED";
1252  case 0xC0000112: return "STATUS_ABIOS_NOT_LID_OWNER";
1253  case 0xC0000113: return "STATUS_ABIOS_INVALID_COMMAND";
1254  case 0xC0000114: return "STATUS_ABIOS_INVALID_LID";
1255  case 0xC0000115: return "STATUS_ABIOS_SELECTOR_NOT_AVAILABLE";
1256  case 0xC0000116: return "STATUS_ABIOS_INVALID_SELECTOR";
1257  case 0xC0000117: return "STATUS_NO_LDT";
1258  case 0xC0000118: return "STATUS_INVALID_LDT_SIZE";
1259  case 0xC0000119: return "STATUS_INVALID_LDT_OFFSET";
1260  case 0xC000011A: return "STATUS_INVALID_LDT_DESCRIPTOR";
1261  case 0xC000011B: return "STATUS_INVALID_IMAGE_NE_FORMAT";
1262  case 0xC000011C: return "STATUS_RXACT_INVALID_STATE";
1263  case 0xC000011D: return "STATUS_RXACT_COMMIT_FAILURE";
1264  case 0xC000011E: return "STATUS_MAPPED_FILE_SIZE_ZERO";
1265  case 0xC000011F: return "STATUS_TOO_MANY_OPENED_FILES";
1266  case 0xC0000120: return "STATUS_CANCELLED";
1267  case 0xC0000121: return "STATUS_CANNOT_DELETE";
1268  case 0xC0000122: return "STATUS_INVALID_COMPUTER_NAME";
1269  case 0xC0000123: return "STATUS_FILE_DELETED";
1270  case 0xC0000124: return "STATUS_SPECIAL_ACCOUNT";
1271  case 0xC0000125: return "STATUS_SPECIAL_GROUP";
1272  case 0xC0000126: return "STATUS_SPECIAL_USER";
1273  case 0xC0000127: return "STATUS_MEMBERS_PRIMARY_GROUP";
1274  case 0xC0000128: return "STATUS_FILE_CLOSED";
1275  case 0xC0000129: return "STATUS_TOO_MANY_THREADS";
1276  case 0xC000012A: return "STATUS_THREAD_NOT_IN_PROCESS";
1277  case 0xC000012B: return "STATUS_TOKEN_ALREADY_IN_USE";
1278  case 0xC000012C: return "STATUS_PAGEFILE_QUOTA_EXCEEDED";
1279  case 0xC000012D: return "STATUS_COMMITMENT_LIMIT";
1280  case 0xC000012E: return "STATUS_INVALID_IMAGE_LE_FORMAT";
1281  case 0xC000012F: return "STATUS_INVALID_IMAGE_NOT_MZ";
1282  case 0xC0000130: return "STATUS_INVALID_IMAGE_PROTECT";
1283  case 0xC0000131: return "STATUS_INVALID_IMAGE_WIN_16";
1284  case 0xC0000132: return "STATUS_LOGON_SERVER_CONFLICT";
1285  case 0xC0000133: return "STATUS_TIME_DIFFERENCE_AT_DC";
1286  case 0xC0000134: return "STATUS_SYNCHRONIZATION_REQUIRED";
1287  case 0xC0000135: return "STATUS_DLL_NOT_FOUND";
1288  case 0xC0000136: return "STATUS_OPEN_FAILED";
1289  case 0xC0000137: return "STATUS_IO_PRIVILEGE_FAILED";
1290  case 0xC0000138: return "STATUS_ORDINAL_NOT_FOUND";
1291  case 0xC0000139: return "STATUS_ENTRYPOINT_NOT_FOUND";
1292  case 0xC000013A: return "STATUS_CONTROL_C_EXIT";
1293  case 0xC000013B: return "STATUS_LOCAL_DISCONNECT";
1294  case 0xC000013C: return "STATUS_REMOTE_DISCONNECT";
1295  case 0xC000013D: return "STATUS_REMOTE_RESOURCES";
1296  case 0xC000013E: return "STATUS_LINK_FAILED";
1297  case 0xC000013F: return "STATUS_LINK_TIMEOUT";
1298  case 0xC0000140: return "STATUS_INVALID_CONNECTION";
1299  case 0xC0000141: return "STATUS_INVALID_ADDRESS";
1300  case 0xC0000142: return "STATUS_DLL_INIT_FAILED";
1301  case 0xC0000143: return "STATUS_MISSING_SYSTEMFILE";
1302  case 0xC0000144: return "STATUS_UNHANDLED_EXCEPTION";
1303  case 0xC0000145: return "STATUS_APP_INIT_FAILURE";
1304  case 0xC0000146: return "STATUS_PAGEFILE_CREATE_FAILED";
1305  case 0xC0000147: return "STATUS_NO_PAGEFILE";
1306  case 0xC0000148: return "STATUS_INVALID_LEVEL";
1307  case 0xC0000149: return "STATUS_WRONG_PASSWORD_CORE";
1308  case 0xC000014A: return "STATUS_ILLEGAL_FLOAT_CONTEXT";
1309  case 0xC000014B: return "STATUS_PIPE_BROKEN";
1310  case 0xC000014C: return "STATUS_REGISTRY_CORRUPT";
1311  case 0xC000014D: return "STATUS_REGISTRY_IO_FAILED";
1312  case 0xC000014E: return "STATUS_NO_EVENT_PAIR";
1313  case 0xC000014F: return "STATUS_UNRECOGNIZED_VOLUME";
1314  case 0xC0000150: return "STATUS_SERIAL_NO_DEVICE_INITED";
1315  case 0xC0000151: return "STATUS_NO_SUCH_ALIAS";
1316  case 0xC0000152: return "STATUS_MEMBER_NOT_IN_ALIAS";
1317  case 0xC0000153: return "STATUS_MEMBER_IN_ALIAS";
1318  case 0xC0000154: return "STATUS_ALIAS_EXISTS";
1319  case 0xC0000155: return "STATUS_LOGON_NOT_GRANTED";
1320  case 0xC0000156: return "STATUS_TOO_MANY_SECRETS";
1321  case 0xC0000157: return "STATUS_SECRET_TOO_LONG";
1322  case 0xC0000158: return "STATUS_INTERNAL_DB_ERROR";
1323  case 0xC0000159: return "STATUS_FULLSCREEN_MODE";
1324  case 0xC000015A: return "STATUS_TOO_MANY_CONTEXT_IDS";
1325  case 0xC000015B: return "STATUS_LOGON_TYPE_NOT_GRANTED";
1326  case 0xC000015C: return "STATUS_NOT_REGISTRY_FILE";
1327  case 0xC000015D: return "STATUS_NT_CROSS_ENCRYPTION_REQUIRED";
1328  case 0xC000015E: return "STATUS_DOMAIN_CTRLR_CONFIG_ERROR";
1329  case 0xC000015F: return "STATUS_FT_MISSING_MEMBER";
1330  case 0xC0000160: return "STATUS_ILL_FORMED_SERVICE_ENTRY";
1331  case 0xC0000161: return "STATUS_ILLEGAL_CHARACTER";
1332  case 0xC0000162: return "STATUS_UNMAPPABLE_CHARACTER";
1333  case 0xC0000163: return "STATUS_UNDEFINED_CHARACTER";
1334  case 0xC0000164: return "STATUS_FLOPPY_VOLUME";
1335  case 0xC0000165: return "STATUS_FLOPPY_ID_MARK_NOT_FOUND";
1336  case 0xC0000166: return "STATUS_FLOPPY_WRONG_CYLINDER";
1337  case 0xC0000167: return "STATUS_FLOPPY_UNKNOWN_ERROR";
1338  case 0xC0000168: return "STATUS_FLOPPY_BAD_REGISTERS";
1339  case 0xC0000169: return "STATUS_DISK_RECALIBRATE_FAILED";
1340  case 0xC000016A: return "STATUS_DISK_OPERATION_FAILED";
1341  case 0xC000016B: return "STATUS_DISK_RESET_FAILED";
1342  case 0xC000016C: return "STATUS_SHARED_IRQ_BUSY";
1343  case 0xC000016D: return "STATUS_FT_ORPHANING";
1344  case 0xC000016E: return "STATUS_BIOS_FAILED_TO_CONNECT_INTERRUPT";
1345  case 0xC0000172: return "STATUS_PARTITION_FAILURE";
1346  case 0xC0000173: return "STATUS_INVALID_BLOCK_LENGTH";
1347  case 0xC0000174: return "STATUS_DEVICE_NOT_PARTITIONED";
1348  case 0xC0000175: return "STATUS_UNABLE_TO_LOCK_MEDIA";
1349  case 0xC0000176: return "STATUS_UNABLE_TO_UNLOAD_MEDIA";
1350  case 0xC0000177: return "STATUS_EOM_OVERFLOW";
1351  case 0xC0000178: return "STATUS_NO_MEDIA";
1352  case 0xC000017A: return "STATUS_NO_SUCH_MEMBER";
1353  case 0xC000017B: return "STATUS_INVALID_MEMBER";
1354  case 0xC000017C: return "STATUS_KEY_DELETED";
1355  case 0xC000017D: return "STATUS_NO_LOG_SPACE";
1356  case 0xC000017E: return "STATUS_TOO_MANY_SIDS";
1357  case 0xC000017F: return "STATUS_LM_CROSS_ENCRYPTION_REQUIRED";
1358  case 0xC0000180: return "STATUS_KEY_HAS_CHILDREN";
1359  case 0xC0000181: return "STATUS_CHILD_MUST_BE_VOLATILE";
1360  case 0xC0000182: return "STATUS_DEVICE_CONFIGURATION_ERROR";
1361  case 0xC0000183: return "STATUS_DRIVER_INTERNAL_ERROR";
1362  case 0xC0000184: return "STATUS_INVALID_DEVICE_STATE";
1363  case 0xC0000185: return "STATUS_IO_DEVICE_ERROR";
1364  case 0xC0000186: return "STATUS_DEVICE_PROTOCOL_ERROR";
1365  case 0xC0000187: return "STATUS_BACKUP_CONTROLLER";
1366  case 0xC0000188: return "STATUS_LOG_FILE_FULL";
1367  case 0xC0000189: return "STATUS_TOO_LATE";
1368  case 0xC000018A: return "STATUS_NO_TRUST_LSA_SECRET";
1369  case 0xC000018B: return "STATUS_NO_TRUST_SAM_ACCOUNT";
1370  case 0xC000018C: return "STATUS_TRUSTED_DOMAIN_FAILURE";
1371  case 0xC000018D: return "STATUS_TRUSTED_RELATIONSHIP_FAILURE";
1372  case 0xC000018E: return "STATUS_EVENTLOG_FILE_CORRUPT";
1373  case 0xC000018F: return "STATUS_EVENTLOG_CANT_START";
1374  case 0xC0000190: return "STATUS_TRUST_FAILURE";
1375  case 0xC0000191: return "STATUS_MUTANT_LIMIT_EXCEEDED";
1376  case 0xC0000192: return "STATUS_NETLOGON_NOT_STARTED";
1377  case 0xC0000193: return "STATUS_ACCOUNT_EXPIRED";
1378  case 0xC0000194: return "STATUS_POSSIBLE_DEADLOCK";
1379  case 0xC0000195: return "STATUS_NETWORK_CREDENTIAL_CONFLICT";
1380  case 0xC0000196: return "STATUS_REMOTE_SESSION_LIMIT";
1381  case 0xC0000197: return "STATUS_EVENTLOG_FILE_CHANGED";
1382  case 0xC0000198: return "STATUS_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT";
1383  case 0xC0000199: return "STATUS_NOLOGON_WORKSTATION_TRUST_ACCOUNT";
1384  case 0xC000019A: return "STATUS_NOLOGON_SERVER_TRUST_ACCOUNT";
1385  case 0xC000019B: return "STATUS_DOMAIN_TRUST_INCONSISTENT";
1386  case 0xC000019C: return "STATUS_FS_DRIVER_REQUIRED";
1387  case 0xC0000202: return "STATUS_NO_USER_SESSION_KEY";
1388  case 0xC0000203: return "STATUS_USER_SESSION_DELETED";
1389  case 0xC0000204: return "STATUS_RESOURCE_LANG_NOT_FOUND";
1390  case 0xC0000205: return "STATUS_INSUFF_SERVER_RESOURCES";
1391  case 0xC0000206: return "STATUS_INVALID_BUFFER_SIZE";
1392  case 0xC0000207: return "STATUS_INVALID_ADDRESS_COMPONENT";
1393  case 0xC0000208: return "STATUS_INVALID_ADDRESS_WILDCARD";
1394  case 0xC0000209: return "STATUS_TOO_MANY_ADDRESSES";
1395  case 0xC000020A: return "STATUS_ADDRESS_ALREADY_EXISTS";
1396  case 0xC000020B: return "STATUS_ADDRESS_CLOSED";
1397  case 0xC000020C: return "STATUS_CONNECTION_DISCONNECTED";
1398  case 0xC000020D: return "STATUS_CONNECTION_RESET";
1399  case 0xC000020E: return "STATUS_TOO_MANY_NODES";
1400  case 0xC000020F: return "STATUS_TRANSACTION_ABORTED";
1401  case 0xC0000210: return "STATUS_TRANSACTION_TIMED_OUT";
1402  case 0xC0000211: return "STATUS_TRANSACTION_NO_RELEASE";
1403  case 0xC0000212: return "STATUS_TRANSACTION_NO_MATCH";
1404  case 0xC0000213: return "STATUS_TRANSACTION_RESPONDED";
1405  case 0xC0000214: return "STATUS_TRANSACTION_INVALID_ID";
1406  case 0xC0000215: return "STATUS_TRANSACTION_INVALID_TYPE";
1407  case 0xC0000216: return "STATUS_NOT_SERVER_SESSION";
1408  case 0xC0000217: return "STATUS_NOT_CLIENT_SESSION";
1409  case 0xC0000218: return "STATUS_CANNOT_LOAD_REGISTRY_FILE";
1410  case 0xC0000219: return "STATUS_DEBUG_ATTACH_FAILED";
1411  case 0xC000021A: return "STATUS_SYSTEM_PROCESS_TERMINATED";
1412  case 0xC000021B: return "STATUS_DATA_NOT_ACCEPTED";
1413  case 0xC000021C: return "STATUS_NO_BROWSER_SERVERS_FOUND";
1414  case 0xC000021D: return "STATUS_VDM_HARD_ERROR";
1415  case 0xC000021E: return "STATUS_DRIVER_CANCEL_TIMEOUT";
1416  case 0xC000021F: return "STATUS_REPLY_MESSAGE_MISMATCH";
1417  case 0xC0000220: return "STATUS_MAPPED_ALIGNMENT";
1418  case 0xC0000221: return "STATUS_IMAGE_CHECKSUM_MISMATCH";
1419  case 0xC0000222: return "STATUS_LOST_WRITEBEHIND_DATA";
1420  case 0xC0000223: return "STATUS_CLIENT_SERVER_PARAMETERS_INVALID";
1421  case 0xC0000224: return "STATUS_PASSWORD_MUST_CHANGE";
1422  case 0xC0000225: return "STATUS_NOT_FOUND";
1423  case 0xC0000226: return "STATUS_NOT_TINY_STREAM";
1424  case 0xC0000227: return "STATUS_RECOVERY_FAILURE";
1425  case 0xC0000228: return "STATUS_STACK_OVERFLOW_READ";
1426  case 0xC0000229: return "STATUS_FAIL_CHECK";
1427  case 0xC000022A: return "STATUS_DUPLICATE_OBJECTID";
1428  case 0xC000022B: return "STATUS_OBJECTID_EXISTS";
1429  case 0xC000022C: return "STATUS_CONVERT_TO_LARGE";
1430  case 0xC000022D: return "STATUS_RETRY";
1431  case 0xC000022E: return "STATUS_FOUND_OUT_OF_SCOPE";
1432  case 0xC000022F: return "STATUS_ALLOCATE_BUCKET";
1433  case 0xC0000230: return "STATUS_PROPSET_NOT_FOUND";
1434  case 0xC0000231: return "STATUS_MARSHALL_OVERFLOW";
1435  case 0xC0000232: return "STATUS_INVALID_VARIANT";
1436  case 0xC0000233: return "STATUS_DOMAIN_CONTROLLER_NOT_FOUND";
1437  case 0xC0000234: return "STATUS_ACCOUNT_LOCKED_OUT";
1438  case 0xC0000235: return "STATUS_HANDLE_NOT_CLOSABLE";
1439  case 0xC0000236: return "STATUS_CONNECTION_REFUSED";
1440  case 0xC0000237: return "STATUS_GRACEFUL_DISCONNECT";
1441  case 0xC0000238: return "STATUS_ADDRESS_ALREADY_ASSOCIATED";
1442  case 0xC0000239: return "STATUS_ADDRESS_NOT_ASSOCIATED";
1443  case 0xC000023A: return "STATUS_CONNECTION_INVALID";
1444  case 0xC000023B: return "STATUS_CONNECTION_ACTIVE";
1445  case 0xC000023C: return "STATUS_NETWORK_UNREACHABLE";
1446  case 0xC000023D: return "STATUS_HOST_UNREACHABLE";
1447  case 0xC000023E: return "STATUS_PROTOCOL_UNREACHABLE";
1448  case 0xC000023F: return "STATUS_PORT_UNREACHABLE";
1449  case 0xC0000240: return "STATUS_REQUEST_ABORTED";
1450  case 0xC0000241: return "STATUS_CONNECTION_ABORTED";
1451  case 0xC0000242: return "STATUS_BAD_COMPRESSION_BUFFER";
1452  case 0xC0000243: return "STATUS_USER_MAPPED_FILE";
1453  case 0xC0000244: return "STATUS_AUDIT_FAILED";
1454  case 0xC0000245: return "STATUS_TIMER_RESOLUTION_NOT_SET";
1455  case 0xC0000246: return "STATUS_CONNECTION_COUNT_LIMIT";
1456  case 0xC0000247: return "STATUS_LOGIN_TIME_RESTRICTION";
1457  case 0xC0000248: return "STATUS_LOGIN_WKSTA_RESTRICTION";
1458  case 0xC0000249: return "STATUS_IMAGE_MP_UP_MISMATCH";
1459  case 0xC0000250: return "STATUS_INSUFFICIENT_LOGON_INFO";
1460  case 0xC0000251: return "STATUS_BAD_DLL_ENTRYPOINT";
1461  case 0xC0000252: return "STATUS_BAD_SERVICE_ENTRYPOINT";
1462  case 0xC0000253: return "STATUS_LPC_REPLY_LOST";
1463  case 0xC0000254: return "STATUS_IP_ADDRESS_CONFLICT1";
1464  case 0xC0000255: return "STATUS_IP_ADDRESS_CONFLICT2";
1465  case 0xC0000256: return "STATUS_REGISTRY_QUOTA_LIMIT";
1466  case 0xC0000257: return "STATUS_PATH_NOT_COVERED";
1467  case 0xC0000258: return "STATUS_NO_CALLBACK_ACTIVE";
1468  case 0xC0000259: return "STATUS_LICENSE_QUOTA_EXCEEDED";
1469  case 0xC000025A: return "STATUS_PWD_TOO_SHORT";
1470  case 0xC000025B: return "STATUS_PWD_TOO_RECENT";
1471  case 0xC000025C: return "STATUS_PWD_HISTORY_CONFLICT";
1472  case 0xC000025E: return "STATUS_PLUGPLAY_NO_DEVICE";
1473  case 0xC000025F: return "STATUS_UNSUPPORTED_COMPRESSION";
1474  case 0xC0000260: return "STATUS_INVALID_HW_PROFILE";
1475  case 0xC0000261: return "STATUS_INVALID_PLUGPLAY_DEVICE_PATH";
1476  case 0xC0000262: return "STATUS_DRIVER_ORDINAL_NOT_FOUND";
1477  case 0xC0000263: return "STATUS_DRIVER_ENTRYPOINT_NOT_FOUND";
1478  case 0xC0000264: return "STATUS_RESOURCE_NOT_OWNED";
1479  case 0xC0000265: return "STATUS_TOO_MANY_LINKS";
1480  case 0xC0000266: return "STATUS_QUOTA_LIST_INCONSISTENT";
1481  case 0xC0000267: return "STATUS_FILE_IS_OFFLINE";
1482  case 0xC0000268: return "STATUS_EVALUATION_EXPIRATION";
1483  case 0xC0000269: return "STATUS_ILLEGAL_DLL_RELOCATION";
1484  case 0xC000026A: return "STATUS_LICENSE_VIOLATION";
1485  case 0xC000026B: return "STATUS_DLL_INIT_FAILED_LOGOFF";
1486  case 0xC000026C: return "STATUS_DRIVER_UNABLE_TO_LOAD";
1487  case 0xC000026D: return "STATUS_DFS_UNAVAILABLE";
1488  case 0xC000026E: return "STATUS_VOLUME_DISMOUNTED";
1489  case 0xC000026F: return "STATUS_WX86_INTERNAL_ERROR";
1490  case 0xC0000270: return "STATUS_WX86_FLOAT_STACK_CHECK";
1491  case 0xC0000271: return "STATUS_VALIDATE_CONTINUE";
1492  case 0xC0000272: return "STATUS_NO_MATCH";
1493  case 0xC0000273: return "STATUS_NO_MORE_MATCHES";
1494  case 0xC0000275: return "STATUS_NOT_A_REPARSE_POINT";
1495  case 0xC0000276: return "STATUS_IO_REPARSE_TAG_INVALID";
1496  case 0xC0000277: return "STATUS_IO_REPARSE_TAG_MISMATCH";
1497  case 0xC0000278: return "STATUS_IO_REPARSE_DATA_INVALID";
1498  case 0xC0000279: return "STATUS_IO_REPARSE_TAG_NOT_HANDLED";
1499  case 0xC0000280: return "STATUS_REPARSE_POINT_NOT_RESOLVED";
1500  case 0xC0000281: return "STATUS_DIRECTORY_IS_A_REPARSE_POINT";
1501  case 0xC0000282: return "STATUS_RANGE_LIST_CONFLICT";
1502  case 0xC0000283: return "STATUS_SOURCE_ELEMENT_EMPTY";
1503  case 0xC0000284: return "STATUS_DESTINATION_ELEMENT_FULL";
1504  case 0xC0000285: return "STATUS_ILLEGAL_ELEMENT_ADDRESS";
1505  case 0xC0000286: return "STATUS_MAGAZINE_NOT_PRESENT";
1506  case 0xC0000287: return "STATUS_REINITIALIZATION_NEEDED";
1507  case 0x80000288: return "STATUS_DEVICE_REQUIRES_CLEANING";
1508  case 0x80000289: return "STATUS_DEVICE_DOOR_OPEN";
1509  case 0xC000028A: return "STATUS_ENCRYPTION_FAILED";
1510  case 0xC000028B: return "STATUS_DECRYPTION_FAILED";
1511  case 0xC000028C: return "STATUS_RANGE_NOT_FOUND";
1512  case 0xC000028D: return "STATUS_NO_RECOVERY_POLICY";
1513  case 0xC000028E: return "STATUS_NO_EFS";
1514  case 0xC000028F: return "STATUS_WRONG_EFS";
1515  case 0xC0000290: return "STATUS_NO_USER_KEYS";
1516  case 0xC0000291: return "STATUS_FILE_NOT_ENCRYPTED";
1517  case 0xC0000292: return "STATUS_NOT_EXPORT_FORMAT";
1518  case 0xC0000293: return "STATUS_FILE_ENCRYPTED";
1519  case 0x40000294: return "STATUS_WAKE_SYSTEM";
1520  case 0xC0000295: return "STATUS_WMI_GUID_NOT_FOUND";
1521  case 0xC0000296: return "STATUS_WMI_INSTANCE_NOT_FOUND";
1522  case 0xC0000297: return "STATUS_WMI_ITEMID_NOT_FOUND";
1523  case 0xC0000298: return "STATUS_WMI_TRY_AGAIN";
1524  case 0xC0000299: return "STATUS_SHARED_POLICY";
1525  case 0xC000029A: return "STATUS_POLICY_OBJECT_NOT_FOUND";
1526  case 0xC000029B: return "STATUS_POLICY_ONLY_IN_DS";
1527  case 0xC000029C: return "STATUS_VOLUME_NOT_UPGRADED";
1528  case 0xC000029D: return "STATUS_REMOTE_STORAGE_NOT_ACTIVE";
1529  case 0xC000029E: return "STATUS_REMOTE_STORAGE_MEDIA_ERROR";
1530  case 0xC000029F: return "STATUS_NO_TRACKING_SERVICE";
1531  case 0xC00002A0: return "STATUS_SERVER_SID_MISMATCH";
1532  case 0xC00002A1: return "STATUS_DS_NO_ATTRIBUTE_OR_VALUE";
1533  case 0xC00002A2: return "STATUS_DS_INVALID_ATTRIBUTE_SYNTAX";
1534  case 0xC00002A3: return "STATUS_DS_ATTRIBUTE_TYPE_UNDEFINED";
1535  case 0xC00002A4: return "STATUS_DS_ATTRIBUTE_OR_VALUE_EXISTS";
1536  case 0xC00002A5: return "STATUS_DS_BUSY";
1537  case 0xC00002A6: return "STATUS_DS_UNAVAILABLE";
1538  case 0xC00002A7: return "STATUS_DS_NO_RIDS_ALLOCATED";
1539  case 0xC00002A8: return "STATUS_DS_NO_MORE_RIDS";
1540  case 0xC00002A9: return "STATUS_DS_INCORRECT_ROLE_OWNER";
1541  case 0xC00002AA: return "STATUS_DS_RIDMGR_INIT_ERROR";
1542  case 0xC00002AB: return "STATUS_DS_OBJ_CLASS_VIOLATION";
1543  case 0xC00002AC: return "STATUS_DS_CANT_ON_NON_LEAF";
1544  case 0xC00002AD: return "STATUS_DS_CANT_ON_RDN";
1545  case 0xC00002AE: return "STATUS_DS_CANT_MOD_OBJ_CLASS";
1546  case 0xC00002AF: return "STATUS_DS_CROSS_DOM_MOVE_FAILED";
1547  case 0xC00002B0: return "STATUS_DS_GC_NOT_AVAILABLE";
1548  case 0xC00002B1: return "STATUS_DIRECTORY_SERVICE_REQUIRED";
1549  case 0xC00002B2: return "STATUS_REPARSE_ATTRIBUTE_CONFLICT";
1550  case 0xC00002B3: return "STATUS_CANT_ENABLE_DENY_ONLY";
1551  case 0xC00002B4: return "STATUS_FLOAT_MULTIPLE_FAULTS";
1552  case 0xC00002B5: return "STATUS_FLOAT_MULTIPLE_TRAPS";
1553  case 0xC00002B6: return "STATUS_DEVICE_REMOVED";
1554  case 0xC00002B7: return "STATUS_JOURNAL_DELETE_IN_PROGRESS";
1555  case 0xC00002B8: return "STATUS_JOURNAL_NOT_ACTIVE";
1556  case 0xC00002B9: return "STATUS_NOINTERFACE";
1557  case 0xC00002C1: return "STATUS_DS_ADMIN_LIMIT_EXCEEDED";
1558  case 0xC00002C2: return "STATUS_DRIVER_FAILED_SLEEP";
1559  case 0xC00002C3: return "STATUS_MUTUAL_AUTHENTICATION_FAILED";
1560  case 0xC00002C4: return "STATUS_CORRUPT_SYSTEM_FILE";
1561  case 0xC00002C5: return "STATUS_DATATYPE_MISALIGNMENT_ERROR";
1562  case 0xC00002C6: return "STATUS_WMI_READ_ONLY";
1563  case 0xC00002C7: return "STATUS_WMI_SET_FAILURE";
1564  case 0xC00002C8: return "STATUS_COMMITMENT_MINIMUM";
1565  case 0xC00002C9: return "STATUS_REG_NAT_CONSUMPTION";
1566  case 0xC00002CA: return "STATUS_TRANSPORT_FULL";
1567  case 0xC00002CB: return "STATUS_DS_SAM_INIT_FAILURE";
1568  case 0xC00002CC: return "STATUS_ONLY_IF_CONNECTED";
1569  case 0xC00002CD: return "STATUS_DS_SENSITIVE_GROUP_VIOLATION";
1570  case 0xC00002CE: return "STATUS_PNP_RESTART_ENUMERATION";
1571  case 0xC00002CF: return "STATUS_JOURNAL_ENTRY_DELETED";
1572  case 0xC00002D0: return "STATUS_DS_CANT_MOD_PRIMARYGROUPID";
1573  case 0xC00002D1: return "STATUS_SYSTEM_IMAGE_BAD_SIGNATURE";
1574  case 0xC00002D2: return "STATUS_PNP_REBOOT_REQUIRED";
1575  case 0xC00002D3: return "STATUS_POWER_STATE_INVALID";
1576  case 0xC00002D4: return "STATUS_DS_INVALID_GROUP_TYPE";
1577  case 0xC00002D5: return "STATUS_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN";
1578  case 0xC00002D6: return "STATUS_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN";
1579  case 0xC00002D7: return "STATUS_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER";
1580  case 0xC00002D8: return "STATUS_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER";
1581  case 0xC00002D9: return "STATUS_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER";
1582  case 0xC00002DA: return "STATUS_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER";
1583  case 0xC00002DB: return "STATUS_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER";
1584  case 0xC00002DC: return "STATUS_DS_HAVE_PRIMARY_MEMBERS";
1585  case 0xC00002DD: return "STATUS_WMI_NOT_SUPPORTED";
1586  case 0xC00002DE: return "STATUS_INSUFFICIENT_POWER";
1587  case 0xC00002DF: return "STATUS_SAM_NEED_BOOTKEY_PASSWORD";
1588  case 0xC00002E0: return "STATUS_SAM_NEED_BOOTKEY_FLOPPY";
1589  case 0xC00002E1: return "STATUS_DS_CANT_START";
1590  case 0xC00002E2: return "STATUS_DS_INIT_FAILURE";
1591  case 0xC00002E3: return "STATUS_SAM_INIT_FAILURE";
1592  case 0xC00002E4: return "STATUS_DS_GC_REQUIRED";
1593  case 0xC00002E5: return "STATUS_DS_LOCAL_MEMBER_OF_LOCAL_ONLY";
1594  case 0xC00002E6: return "STATUS_DS_NO_FPO_IN_UNIVERSAL_GROUPS";
1595  case 0xC00002E7: return "STATUS_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED";
1596  case 0xC00002E8: return "STATUS_MULTIPLE_FAULT_VIOLATION";
1597  case 0xC0000300: return "STATUS_NOT_SUPPORTED_ON_SBS";
1598  case 0xC0009898: return "STATUS_WOW_ASSERTION";
1599  case 0xC0010001: return "DBG_NO_STATE_CHANGE";
1600  case 0xC0010002: return "DBG_APP_NOT_IDLE";
1601  case 0xC0020001: return "RPC_NT_INVALID_STRING_BINDING";
1602  case 0xC0020002: return "RPC_NT_WRONG_KIND_OF_BINDING";
1603  case 0xC0020003: return "RPC_NT_INVALID_BINDING";
1604  case 0xC0020004: return "RPC_NT_PROTSEQ_NOT_SUPPORTED";
1605  case 0xC0020005: return "RPC_NT_INVALID_RPC_PROTSEQ";
1606  case 0xC0020006: return "RPC_NT_INVALID_STRING_UUID";
1607  case 0xC0020007: return "RPC_NT_INVALID_ENDPOINT_FORMAT";
1608  case 0xC0020008: return "RPC_NT_INVALID_NET_ADDR";
1609  case 0xC0020009: return "RPC_NT_NO_ENDPOINT_FOUND";
1610  case 0xC002000A: return "RPC_NT_INVALID_TIMEOUT";
1611  case 0xC002000B: return "RPC_NT_OBJECT_NOT_FOUND";
1612  case 0xC002000C: return "RPC_NT_ALREADY_REGISTERED";
1613  case 0xC002000D: return "RPC_NT_TYPE_ALREADY_REGISTERED";
1614  case 0xC002000E: return "RPC_NT_ALREADY_LISTENING";
1615  case 0xC002000F: return "RPC_NT_NO_PROTSEQS_REGISTERED";
1616  case 0xC0020010: return "RPC_NT_NOT_LISTENING";
1617  case 0xC0020011: return "RPC_NT_UNKNOWN_MGR_TYPE";
1618  case 0xC0020012: return "RPC_NT_UNKNOWN_IF";
1619  case 0xC0020013: return "RPC_NT_NO_BINDINGS";
1620  case 0xC0020014: return "RPC_NT_NO_PROTSEQS";
1621  case 0xC0020015: return "RPC_NT_CANT_CREATE_ENDPOINT";
1622  case 0xC0020016: return "RPC_NT_OUT_OF_RESOURCES";
1623  case 0xC0020017: return "RPC_NT_SERVER_UNAVAILABLE";
1624  case 0xC0020018: return "RPC_NT_SERVER_TOO_BUSY";
1625  case 0xC0020019: return "RPC_NT_INVALID_NETWORK_OPTIONS";
1626  case 0xC002001A: return "RPC_NT_NO_CALL_ACTIVE";
1627  case 0xC002001B: return "RPC_NT_CALL_FAILED";
1628  case 0xC002001C: return "RPC_NT_CALL_FAILED_DNE";
1629  case 0xC002001D: return "RPC_NT_PROTOCOL_ERROR";
1630  case 0xC002001F: return "RPC_NT_UNSUPPORTED_TRANS_SYN";
1631  case 0xC0020021: return "RPC_NT_UNSUPPORTED_TYPE";
1632  case 0xC0020022: return "RPC_NT_INVALID_TAG";
1633  case 0xC0020023: return "RPC_NT_INVALID_BOUND";
1634  case 0xC0020024: return "RPC_NT_NO_ENTRY_NAME";
1635  case 0xC0020025: return "RPC_NT_INVALID_NAME_SYNTAX";
1636  case 0xC0020026: return "RPC_NT_UNSUPPORTED_NAME_SYNTAX";
1637  case 0xC0020028: return "RPC_NT_UUID_NO_ADDRESS";
1638  case 0xC0020029: return "RPC_NT_DUPLICATE_ENDPOINT";
1639  case 0xC002002A: return "RPC_NT_UNKNOWN_AUTHN_TYPE";
1640  case 0xC002002B: return "RPC_NT_MAX_CALLS_TOO_SMALL";
1641  case 0xC002002C: return "RPC_NT_STRING_TOO_LONG";
1642  case 0xC002002D: return "RPC_NT_PROTSEQ_NOT_FOUND";
1643  case 0xC002002E: return "RPC_NT_PROCNUM_OUT_OF_RANGE";
1644  case 0xC002002F: return "RPC_NT_BINDING_HAS_NO_AUTH";
1645  case 0xC0020030: return "RPC_NT_UNKNOWN_AUTHN_SERVICE";
1646  case 0xC0020031: return "RPC_NT_UNKNOWN_AUTHN_LEVEL";
1647  case 0xC0020032: return "RPC_NT_INVALID_AUTH_IDENTITY";
1648  case 0xC0020033: return "RPC_NT_UNKNOWN_AUTHZ_SERVICE";
1649  case 0xC0020034: return "EPT_NT_INVALID_ENTRY";
1650  case 0xC0020035: return "EPT_NT_CANT_PERFORM_OP";
1651  case 0xC0020036: return "EPT_NT_NOT_REGISTERED";
1652  case 0xC0020037: return "RPC_NT_NOTHING_TO_EXPORT";
1653  case 0xC0020038: return "RPC_NT_INCOMPLETE_NAME";
1654  case 0xC0020039: return "RPC_NT_INVALID_VERS_OPTION";
1655  case 0xC002003A: return "RPC_NT_NO_MORE_MEMBERS";
1656  case 0xC002003B: return "RPC_NT_NOT_ALL_OBJS_UNEXPORTED";
1657  case 0xC002003C: return "RPC_NT_INTERFACE_NOT_FOUND";
1658  case 0xC002003D: return "RPC_NT_ENTRY_ALREADY_EXISTS";
1659  case 0xC002003E: return "RPC_NT_ENTRY_NOT_FOUND";
1660  case 0xC002003F: return "RPC_NT_NAME_SERVICE_UNAVAILABLE";
1661  case 0xC0020040: return "RPC_NT_INVALID_NAF_ID";
1662  case 0xC0020041: return "RPC_NT_CANNOT_SUPPORT";
1663  case 0xC0020042: return "RPC_NT_NO_CONTEXT_AVAILABLE";
1664  case 0xC0020043: return "RPC_NT_INTERNAL_ERROR";
1665  case 0xC0020044: return "RPC_NT_ZERO_DIVIDE";
1666  case 0xC0020045: return "RPC_NT_ADDRESS_ERROR";
1667  case 0xC0020046: return "RPC_NT_FP_DIV_ZERO";
1668  case 0xC0020047: return "RPC_NT_FP_UNDERFLOW";
1669  case 0xC0020048: return "RPC_NT_FP_OVERFLOW";
1670  case 0xC0030001: return "RPC_NT_NO_MORE_ENTRIES";
1671  case 0xC0030002: return "RPC_NT_SS_CHAR_TRANS_OPEN_FAIL";
1672  case 0xC0030003: return "RPC_NT_SS_CHAR_TRANS_SHORT_FILE";
1673  case 0xC0030004: return "RPC_NT_SS_IN_NULL_CONTEXT";
1674  case 0xC0030005: return "RPC_NT_SS_CONTEXT_MISMATCH";
1675  case 0xC0030006: return "RPC_NT_SS_CONTEXT_DAMAGED";
1676  case 0xC0030007: return "RPC_NT_SS_HANDLES_MISMATCH";
1677  case 0xC0030008: return "RPC_NT_SS_CANNOT_GET_CALL_HANDLE";
1678  case 0xC0030009: return "RPC_NT_NULL_REF_POINTER";
1679  case 0xC003000A: return "RPC_NT_ENUM_VALUE_OUT_OF_RANGE";
1680  case 0xC003000B: return "RPC_NT_BYTE_COUNT_TOO_SMALL";
1681  case 0xC003000C: return "RPC_NT_BAD_STUB_DATA";
1682  case 0xC0020049: return "RPC_NT_CALL_IN_PROGRESS";
1683  case 0xC002004A: return "RPC_NT_NO_MORE_BINDINGS";
1684  case 0xC002004B: return "RPC_NT_GROUP_MEMBER_NOT_FOUND";
1685  case 0xC002004C: return "EPT_NT_CANT_CREATE";
1686  case 0xC002004D: return "RPC_NT_INVALID_OBJECT";
1687  case 0xC002004F: return "RPC_NT_NO_INTERFACES";
1688  case 0xC0020050: return "RPC_NT_CALL_CANCELLED";
1689  case 0xC0020051: return "RPC_NT_BINDING_INCOMPLETE";
1690  case 0xC0020052: return "RPC_NT_COMM_FAILURE";
1691  case 0xC0020053: return "RPC_NT_UNSUPPORTED_AUTHN_LEVEL";
1692  case 0xC0020054: return "RPC_NT_NO_PRINC_NAME";
1693  case 0xC0020055: return "RPC_NT_NOT_RPC_ERROR";
1694  case 0x40020056: return "RPC_NT_UUID_LOCAL_ONLY";
1695  case 0xC0020057: return "RPC_NT_SEC_PKG_ERROR";
1696  case 0xC0020058: return "RPC_NT_NOT_CANCELLED";
1697  case 0xC0030059: return "RPC_NT_INVALID_ES_ACTION";
1698  case 0xC003005A: return "RPC_NT_WRONG_ES_VERSION";
1699  case 0xC003005B: return "RPC_NT_WRONG_STUB_VERSION";
1700  case 0xC003005C: return "RPC_NT_INVALID_PIPE_OBJECT";
1701  case 0xC003005D: return "RPC_NT_INVALID_PIPE_OPERATION";
1702  case 0xC003005E: return "RPC_NT_WRONG_PIPE_VERSION";
1703  case 0xC003005F: return "RPC_NT_PIPE_CLOSED";
1704  case 0xC0030060: return "RPC_NT_PIPE_DISCIPLINE_ERROR";
1705  case 0xC0030061: return "RPC_NT_PIPE_EMPTY";
1706  case 0xC0020062: return "RPC_NT_INVALID_ASYNC_HANDLE";
1707  case 0xC0020063: return "RPC_NT_INVALID_ASYNC_CALL";
1708  case 0x400200AF: return "RPC_NT_SEND_INCOMPLETE";
1709  case 0xC0140001: return "STATUS_ACPI_INVALID_OPCODE";
1710  case 0xC0140002: return "STATUS_ACPI_STACK_OVERFLOW";
1711  case 0xC0140003: return "STATUS_ACPI_ASSERT_FAILED";
1712  case 0xC0140004: return "STATUS_ACPI_INVALID_INDEX";
1713  case 0xC0140005: return "STATUS_ACPI_INVALID_ARGUMENT";
1714  case 0xC0140006: return "STATUS_ACPI_FATAL";
1715  case 0xC0140007: return "STATUS_ACPI_INVALID_SUPERNAME";
1716  case 0xC0140008: return "STATUS_ACPI_INVALID_ARGTYPE";
1717  case 0xC0140009: return "STATUS_ACPI_INVALID_OBJTYPE";
1718  case 0xC014000A: return "STATUS_ACPI_INVALID_TARGETTYPE";
1719  case 0xC014000B: return "STATUS_ACPI_INCORRECT_ARGUMENT_COUNT";
1720  case 0xC014000C: return "STATUS_ACPI_ADDRESS_NOT_MAPPED";
1721  case 0xC014000D: return "STATUS_ACPI_INVALID_EVENTTYPE";
1722  case 0xC014000E: return "STATUS_ACPI_HANDLER_COLLISION";
1723  case 0xC014000F: return "STATUS_ACPI_INVALID_DATA";
1724  case 0xC0140010: return "STATUS_ACPI_INVALID_REGION";
1725  case 0xC0140011: return "STATUS_ACPI_INVALID_ACCESS_SIZE";
1726  case 0xC0140012: return "STATUS_ACPI_ACQUIRE_GLOBAL_LOCK";
1727  case 0xC0140013: return "STATUS_ACPI_ALREADY_INITIALIZED";
1728  case 0xC0140014: return "STATUS_ACPI_NOT_INITIALIZED";
1729  case 0xC0140015: return "STATUS_ACPI_INVALID_MUTEX_LEVEL";
1730  case 0xC0140016: return "STATUS_ACPI_MUTEX_NOT_OWNED";
1731  case 0xC0140017: return "STATUS_ACPI_MUTEX_NOT_OWNER";
1732  case 0xC0140018: return "STATUS_ACPI_RS_ACCESS";
1733  case 0xC0140019: return "STATUS_ACPI_INVALID_TABLE";
1734  case 0xC0140020: return "STATUS_ACPI_REG_HANDLER_FAILED";
1735  case 0xC0140021: return "STATUS_ACPI_POWER_REQUEST_FAILED";
1736  case 0xC00A0001: return "STATUS_CTX_WINSTATION_NAME_INVALID";
1737  case 0xC00A0002: return "STATUS_CTX_INVALID_PD";
1738  case 0xC00A0003: return "STATUS_CTX_PD_NOT_FOUND";
1739  case 0x400A0004: return "STATUS_CTX_CDM_CONNECT";
1740  case 0x400A0005: return "STATUS_CTX_CDM_DISCONNECT";
1741  case 0xC00A0006: return "STATUS_CTX_CLOSE_PENDING";
1742  case 0xC00A0007: return "STATUS_CTX_NO_OUTBUF";
1743  case 0xC00A0008: return "STATUS_CTX_MODEM_INF_NOT_FOUND";
1744  case 0xC00A0009: return "STATUS_CTX_INVALID_MODEMNAME";
1745  case 0xC00A000A: return "STATUS_CTX_RESPONSE_ERROR";
1746  case 0xC00A000B: return "STATUS_CTX_MODEM_RESPONSE_TIMEOUT";
1747  case 0xC00A000C: return "STATUS_CTX_MODEM_RESPONSE_NO_CARRIER";
1748  case 0xC00A000D: return "STATUS_CTX_MODEM_RESPONSE_NO_DIALTONE";
1749  case 0xC00A000E: return "STATUS_CTX_MODEM_RESPONSE_BUSY";
1750  case 0xC00A000F: return "STATUS_CTX_MODEM_RESPONSE_VOICE";
1751  case 0xC00A0010: return "STATUS_CTX_TD_ERROR";
1752  case 0xC00A0012: return "STATUS_CTX_LICENSE_CLIENT_INVALID";
1753  case 0xC00A0013: return "STATUS_CTX_LICENSE_NOT_AVAILABLE";
1754  case 0xC00A0014: return "STATUS_CTX_LICENSE_EXPIRED";
1755  case 0xC00A0015: return "STATUS_CTX_WINSTATION_NOT_FOUND";
1756  case 0xC00A0016: return "STATUS_CTX_WINSTATION_NAME_COLLISION";
1757  case 0xC00A0017: return "STATUS_CTX_WINSTATION_BUSY";
1758  case 0xC00A0018: return "STATUS_CTX_BAD_VIDEO_MODE";
1759  case 0xC00A0022: return "STATUS_CTX_GRAPHICS_INVALID";
1760  case 0xC00A0024: return "STATUS_CTX_NOT_CONSOLE";
1761  case 0xC00A0026: return "STATUS_CTX_CLIENT_QUERY_TIMEOUT";
1762  case 0xC00A0027: return "STATUS_CTX_CONSOLE_DISCONNECT";
1763  case 0xC00A0028: return "STATUS_CTX_CONSOLE_CONNECT";
1764  case 0xC00A002A: return "STATUS_CTX_SHADOW_DENIED";
1765  case 0xC00A002B: return "STATUS_CTX_WINSTATION_ACCESS_DENIED";
1766  case 0xC00A002E: return "STATUS_CTX_INVALID_WD";
1767  case 0xC00A002F: return "STATUS_CTX_WD_NOT_FOUND";
1768  case 0xC00A0030: return "STATUS_CTX_SHADOW_INVALID";
1769  case 0xC00A0031: return "STATUS_CTX_SHADOW_DISABLED";
1770  case 0xC00A0032: return "STATUS_RDP_PROTOCOL_ERROR";
1771  case 0xC00A0033: return "STATUS_CTX_CLIENT_LICENSE_NOT_SET";
1772  case 0xC00A0034: return "STATUS_CTX_CLIENT_LICENSE_IN_USE";
1773  case 0xC0040035: return "STATUS_PNP_BAD_MPS_TABLE";
1774  case 0xC0040036: return "STATUS_PNP_TRANSLATION_FAILED";
1775  case 0xC0040037: return "STATUS_PNP_IRQ_TRANSLATION_FAILED";
1776  default: return "STATUS_UNKNOWN";
1777  }
1778 }
1779 
1780 #endif // DBG
ULONG DbgPrint(PCCH Format,...)
Definition: debug.c:420
#define KeQuerySystemTime(t)
Definition: env_spec_w32.h:570
#define KeGetCurrentIrql()
Definition: env_spec_w32.h:706
signed char * PCHAR
Definition: retypes.h:7
Definition: ffsdrv.h:281
#define IRP_MN_COMPRESSED
Definition: iotypes.h:4064
#define IN
Definition: typedefs.h:38
PCHAR FFSNtStatusToString(IN NTSTATUS Status)
#define IRP_MN_NOTIFY_CHANGE_DIRECTORY
Definition: rdpdr.c:56
#define IRP_MJ_CREATE
Definition: rdpdr.c:44
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ ULONG _In_ FS_INFORMATION_CLASS FsInformationClass
Definition: fltkernel.h:1329
VOID FFSDbgPrintComplete(IN PIRP Irp, IN BOOLEAN bPrint)
#define SL_INDEX_SPECIFIED
Definition: iotypes.h:1793
#define PsGetCurrentThread()
Definition: env_spec_w32.h:81
PFFS_GLOBAL FFSGlobal
Definition: init.c:22
ACPI_SIZE strlen(const char *String)
Definition: utclib.c:269
#define IRP_MJ_SHUTDOWN
_In_ PIRP Irp
Definition: csq.h:116
char CHAR
Definition: xmlstorage.h:175
#define IRP_MJ_PNP
Definition: cdrw_usr.h:52
LONG NTSTATUS
Definition: precomp.h:26
#define IRP_NOCACHE
#define IRP_MN_LOAD_FILE_SYSTEM
Definition: iotypes.h:4049
#define IRP_MN_UNLOCK_ALL_BY_KEY
Definition: iotypes.h:4056
#define IRP_MN_QUERY_DIRECTORY
Definition: rdpdr.c:55
static OUT PIO_STATUS_BLOCK OUT PVOID IN ULONG IN FILE_INFORMATION_CLASS FileInformationClass
Definition: pipe.c:75
#define _GNU_NTIFS_
struct _FFS_FCB * PFFS_FCB
ULONG DebugLevel
Definition: fbtusb.c:26
VOID FFSDbgPrintCall(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
PDEVICE_OBJECT DeviceObject
Definition: ffsdrv.h:371
ULONG ProcessNameOffset
#define PAGED_CODE()
Definition: video.h:57
#define FO_SYNCHRONOUS_IO
Definition: iotypes.h:1732
#define IRP_MN_COMPLETE
Definition: iotypes.h:4063
else
Definition: tritemp.h:161
NTFSIDENTIFIER Identifier
Definition: ntfs.h:499
#define IRP_MN_VERIFY_VOLUME
Definition: iotypes.h:4048
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
#define va_end(ap)
Definition: acmsvcex.h:90
long LONG
Definition: pedump.c:60
#define PsGetCurrentProcess
Definition: psfuncs.h:17
unsigned char BOOLEAN
smooth NULL
Definition: ftsmooth.c:416
char * va_list
Definition: acmsvcex.h:78
VOID __cdecl FFSPrintf(LONG DebugPrintLevel, PCHAR DebugMessage,...)
Definition: bufpool.h:45
#define FFSGetCurrentProcessName()
Definition: ffsdrv.h:1070
#define IRP_MJ_QUERY_VOLUME_INFORMATION
Definition: rdpdr.c:50
USHORT Milliseconds
Definition: env_spec_w32.h:717
#define IRP_MJ_DIRECTORY_CONTROL
Definition: rdpdr.c:51
_Inout_ PFILE_OBJECT FileObject
Definition: cdprocs.h:593
enum _FSINFOCLASS FS_INFORMATION_CLASS
#define IRP_MN_MOUNT_VOLUME
Definition: iotypes.h:4047
BOOLEAN RtlTimeToTimeFields(IN PLARGE_INTEGER Time, IN PTIME_FIELDS TimeFields)
enum _FILE_INFORMATION_CLASS FILE_INFORMATION_CLASS
Definition: directory.c:44
#define DBG_USER
Definition: ffsdrv.h:1032
#define IRP_MN_USER_FS_REQUEST
Definition: iotypes.h:4046
if(!(yy_init))
Definition: macro.lex.yy.c:714
#define IRP_MJ_FILE_SYSTEM_CONTROL
int strncmp(const char *String1, const char *String2, ACPI_SIZE Count)
Definition: utclib.c:534
#define IRP_MN_UNLOCK_ALL
Definition: iotypes.h:4055
* PFILE_OBJECT
Definition: iotypes.h:1954
ASSERT((InvokeOnSuccess||InvokeOnError||InvokeOnCancel) ?(CompletionRoutine !=NULL) :TRUE)
#define DBG_TRACE(fmt,...)
Definition: svchost.h:36
#define IRP_MN_KERNEL_CALL
Definition: iotypes.h:4051
#define IRP_MJ_CLOSE
Definition: rdpdr.c:45
ULONG FFSGetProcessNameOffset(VOID)
_In_ PPCI_DEVICE_PRESENCE_PARAMETERS Parameters
Definition: iotypes.h:871
ULONG Type
Definition: ntfs.h:95
#define DRIVER_NAME
Definition: ext2fs.h:136
#define IRP_MN_MDL
Definition: iotypes.h:4062
Definition: ffsdrv.h:280
#define PAGE_SIZE
Definition: env_spec_w32.h:49
#define DBG_ERROR
Definition: ffsdrv.h:1031
VOID __cdecl FFSNIPrintf(LONG DebugPrintLevel, PCHAR DebugMessage,...)
Status
Definition: gdiplustypes.h:24
#define IRP_MN_DPC
Definition: iotypes.h:4061
#define FFSPrint(arg)
Definition: ffsdrv.h:1047
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
IN PDEVICE_OBJECT DeviceObject
Definition: fatprocs.h:1560
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
Definition: iofuncs.h:2745
struct _FileName FileName
Definition: fatprocs.h:884
PFILE_OBJECT FileObject
Definition: iotypes.h:2812
#define SL_RETURN_SINGLE_ENTRY
Definition: iotypes.h:1792
int __cdecl vsprintf(char *_Dest, const char *_Format, va_list _Args)
Definition: sprintf.c:733
#define SL_EXCLUSIVE_LOCK
Definition: iotypes.h:1789
#define va_start(ap, A)
Definition: acmsvcex.h:91
#define IRP_MN_LOCK
Definition: iotypes.h:4053
#define SL_RESTART_SCAN
Definition: iotypes.h:1791
#define IRP_PAGING_IO
#define IRP_MJ_LOCK_CONTROL
Definition: rdpdr.c:53
#define IRP_MJ_READ
Definition: rdpdr.c:46
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:219
#define IRP_MJ_CLEANUP
void int int ULONGLONG int va_list * ap
Definition: winesup.h:32
#define IRP_MJ_SET_INFORMATION
Definition: rdpdr.c:49
unsigned int ULONG
Definition: retypes.h:1
#define IRP_MJ_WRITE
Definition: rdpdr.c:47
#define IRP_MJ_QUERY_INFORMATION
Definition: rdpdr.c:48
IO_STACK_LOCATION * PEXTENDED_IO_STACK_LOCATION
Definition: ext2fs.h:174
struct _NAMED_PIPE_CREATE_PARAMETERS * Parameters
Definition: iotypes.h:2771
_In_ PFCB Fcb
Definition: cdprocs.h:151
static PTIME_FIELDS TimeFields
Definition: time.c:104
return STATUS_SUCCESS
Definition: btrfs.c:2777
#define IRP_MN_UNLOCK_SINGLE
Definition: iotypes.h:4054
#define IRP_MJ_DEVICE_CONTROL
Definition: rdpdr.c:52
#define SL_FAIL_IMMEDIATELY
Definition: iotypes.h:1788