diff options
Diffstat (limited to '')
-rw-r--r-- | librpc/idl/initshutdown.idl | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/librpc/idl/initshutdown.idl b/librpc/idl/initshutdown.idl new file mode 100644 index 0000000..63cf62b --- /dev/null +++ b/librpc/idl/initshutdown.idl @@ -0,0 +1,91 @@ +#include "idl_types.h" + +/* + initshutdown interface definition +*/ + +import "lsa.idl"; + +[ + uuid("894de0c0-0d55-11d3-a322-00c04fa321a1"), + version(1.0), + endpoint("ncacn_np:[\\pipe\\InitShutdown]"), + pointer_default(unique), + helpstring("Init shutdown service") +] interface initshutdown +{ + typedef [v1_enum] enum { + SHTDN_REASON_MAJOR_OTHER = 0x00000000, + SHTDN_REASON_MAJOR_HARDWARE = 0x00010000, + SHTDN_REASON_MAJOR_OPERATINGSYSTEM = 0x00020000, + SHTDN_REASON_MAJOR_SOFTWARE = 0x00030000, + SHTDN_REASON_MAJOR_APPLICATION = 0x00040000, + SHTDN_REASON_MAJOR_SYSTEM = 0x00050000, + SHTDN_REASON_MAJOR_POWER = 0x00060000, + SHTDN_REASON_MAJOR_LEGACY_API = 0x00070000 + } initshutdown_ReasonMajor; + + typedef [v1_enum] enum { + SHTDN_REASON_MINOR_OTHER = 0x00000000, + SHTDN_REASON_MINOR_MAINTENANCE = 0x00000001, + SHTDN_REASON_MINOR_INSTALLATION = 0x00000002, + SHTDN_REASON_MINOR_UPGRADE = 0x00000003, + SHTDN_REASON_MINOR_RECONFIG = 0x00000004, + SHTDN_REASON_MINOR_HUNG = 0x00000005, + SHTDN_REASON_MINOR_UNSTABLE = 0x00000006, + SHTDN_REASON_MINOR_DISK = 0x00000007, + SHTDN_REASON_MINOR_PROCESSOR = 0x00000008, + SHTDN_REASON_MINOR_NETWORKCARD = 0x00000009, + SHTDN_REASON_MINOR_POWER_SUPPLY = 0x0000000a, + SHTDN_REASON_MINOR_CORDUNPLUGGED = 0x0000000b, + SHTDN_REASON_MINOR_ENVIRONMENT = 0x0000000c, + SHTDN_REASON_MINOR_HARDWARE_DRIVER = 0x0000000d, + SHTDN_REASON_MINOR_OTHERDRIVER = 0x0000000e, + SHTDN_REASON_MINOR_BLUESCREEN = 0x0000000f, + SHTDN_REASON_MINOR_SERVICEPACK = 0x00000010, + SHTDN_REASON_MINOR_HOTFIX = 0x00000011, + SHTDN_REASON_MINOR_SECURITYFIX = 0x00000012, + SHTDN_REASON_MINOR_SECURITY = 0x00000013, + SHTDN_REASON_MINOR_NETWORK_CONNECTIVITY = 0x00000014, + SHTDN_REASON_MINOR_WMI = 0x00000015, + SHTDN_REASON_MINOR_SERVICEPACK_UNINSTALL= 0x00000016, + SHTDN_REASON_MINOR_HOTFIX_UNINSTALL = 0x00000017, + SHTDN_REASON_MINOR_SECURITYFIX_UNINSTALL= 0x00000018, + SHTDN_REASON_MINOR_MMC = 0x00000019, + SHTDN_REASON_MINOR_TERMSRV = 0x00000020 + } initshutdown_ReasonMinor; + + typedef [bitmap32bit] bitmap { + SHTDN_REASON_FLAG_USER_DEFINED = 0x40000000, + SHTDN_REASON_FLAG_PLANNED = 0x80000000 + } initshutdown_ReasonFlags; + + WERROR initshutdown_Init( + [in,unique] uint16 *hostname, + /* + * Note: lsa_String and winreg_String both result + * in WERR_INVALID_PARAMETER + */ + [in,unique] lsa_StringLarge *message, + [in] uint32 timeout, + [in] uint8 force_apps, + [in] uint8 do_reboot + ); + + WERROR initshutdown_Abort( + [in,unique] uint16 *server + ); + + WERROR initshutdown_InitEx( + [in,unique] uint16 *hostname, + /* + * Note: lsa_String and winreg_String both result + * in WERR_INVALID_PARAMETER + */ + [in,unique] lsa_StringLarge *message, + [in] uint32 timeout, + [in] uint8 force_apps, + [in] uint8 do_reboot, + [in] uint32 reason + ); +} |