Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #if !defined SENTINEL_Reason
      7 #define SENTINEL_Reason
      8 
      9 #define SHTDN_REASON_FLAG_COMMENT_REQUIRED 0x01000000
     10 #define SHTDN_REASON_FLAG_DIRTY_PROBLEM_ID_REQUIRED 0x02000000
     11 #define SHTDN_REASON_FLAG_CLEAN_UI 0x04000000
     12 #define SHTDN_REASON_FLAG_DIRTY_UI 0x08000000
     13 #define SHTDN_REASON_FLAG_USER_DEFINED 0x40000000
     14 #define SHTDN_REASON_FLAG_PLANNED 0x80000000
     15 #define SHTDN_REASON_MAJOR_OTHER 0x00000000
     16 #define SHTDN_REASON_MAJOR_NONE 0x00000000
     17 #define SHTDN_REASON_MAJOR_HARDWARE 0x00010000
     18 #define SHTDN_REASON_MAJOR_OPERATINGSYSTEM 0x00020000
     19 #define SHTDN_REASON_MAJOR_SOFTWARE 0x00030000
     20 #define SHTDN_REASON_MAJOR_APPLICATION 0x00040000
     21 #define SHTDN_REASON_MAJOR_SYSTEM 0x00050000
     22 #define SHTDN_REASON_MAJOR_POWER 0x00060000
     23 #define SHTDN_REASON_MAJOR_LEGACY_API 0x00070000
     24 #define SHTDN_REASON_MINOR_OTHER 0x00000000
     25 #define SHTDN_REASON_MINOR_NONE 0x000000ff
     26 #define SHTDN_REASON_MINOR_MAINTENANCE 0x00000001
     27 #define SHTDN_REASON_MINOR_INSTALLATION 0x00000002
     28 #define SHTDN_REASON_MINOR_UPGRADE 0x00000003
     29 #define SHTDN_REASON_MINOR_RECONFIG 0x00000004
     30 #define SHTDN_REASON_MINOR_HUNG 0x00000005
     31 #define SHTDN_REASON_MINOR_UNSTABLE 0x00000006
     32 #define SHTDN_REASON_MINOR_DISK 0x00000007
     33 #define SHTDN_REASON_MINOR_PROCESSOR 0x00000008
     34 #define SHTDN_REASON_MINOR_NETWORKCARD 0x00000009
     35 #define SHTDN_REASON_MINOR_POWER_SUPPLY 0x0000000a
     36 #define SHTDN_REASON_MINOR_CORDUNPLUGGED 0x0000000b
     37 #define SHTDN_REASON_MINOR_ENVIRONMENT 0x0000000c
     38 #define SHTDN_REASON_MINOR_HARDWARE_DRIVER 0x0000000d
     39 #define SHTDN_REASON_MINOR_OTHERDRIVER 0x0000000e
     40 #define SHTDN_REASON_MINOR_BLUESCREEN 0x0000000F
     41 #define SHTDN_REASON_MINOR_SERVICEPACK 0x00000010
     42 #define SHTDN_REASON_MINOR_HOTFIX 0x00000011
     43 #define SHTDN_REASON_MINOR_SECURITYFIX 0x00000012
     44 #define SHTDN_REASON_MINOR_SECURITY 0x00000013
     45 #define SHTDN_REASON_MINOR_NETWORK_CONNECTIVITY 0x00000014
     46 #define SHTDN_REASON_MINOR_WMI 0x00000015
     47 #define SHTDN_REASON_MINOR_SERVICEPACK_UNINSTALL 0x00000016
     48 #define SHTDN_REASON_MINOR_HOTFIX_UNINSTALL 0x00000017
     49 #define SHTDN_REASON_MINOR_SECURITYFIX_UNINSTALL 0x00000018
     50 #define SHTDN_REASON_MINOR_MMC 0x00000019
     51 #define SHTDN_REASON_MINOR_SYSTEMRESTORE 0x0000001a
     52 #define SHTDN_REASON_MINOR_TERMSRV 0x00000020
     53 #define SHTDN_REASON_MINOR_DC_PROMOTION 0x00000021
     54 #define SHTDN_REASON_MINOR_DC_DEMOTION 0x00000022
     55 #define SHTDN_REASON_UNKNOWN SHTDN_REASON_MINOR_NONE
     56 #define SHTDN_REASON_LEGACY_API (SHTDN_REASON_MAJOR_LEGACY_API | SHTDN_REASON_FLAG_PLANNED)
     57 #define SHTDN_REASON_VALID_BIT_MASK 0xc0ffffff
     58 
     59 #define PCLEANUI (SHTDN_REASON_FLAG_PLANNED | SHTDN_REASON_FLAG_CLEAN_UI)
     60 #define UCLEANUI (SHTDN_REASON_FLAG_CLEAN_UI)
     61 #define PDIRTYUI (SHTDN_REASON_FLAG_PLANNED | SHTDN_REASON_FLAG_DIRTY_UI)
     62 #define UDIRTYUI (SHTDN_REASON_FLAG_DIRTY_UI)
     63 
     64 #define MAX_REASON_NAME_LEN 64
     65 #define MAX_REASON_DESC_LEN 256
     66 #define MAX_REASON_BUGID_LEN 32
     67 #define MAX_REASON_COMMENT_LEN 512
     68 #define SHUTDOWN_TYPE_LEN 32
     69 
     70 #define POLICY_SHOWREASONUI_NEVER 0
     71 #define POLICY_SHOWREASONUI_ALWAYS 1
     72 #define POLICY_SHOWREASONUI_WORKSTATIONONLY 2
     73 #define POLICY_SHOWREASONUI_SERVERONLY 3
     74 
     75 #define SNAPSHOT_POLICY_NEVER 0
     76 #define SNAPSHOT_POLICY_ALWAYS 1
     77 #define SNAPSHOT_POLICY_UNPLANNED 2
     78 
     79 #define MAX_NUM_REASONS 256
     80 #endif
     81