Advertisement
MagicAndre1981

ntifs.h updates in Windows 10 WDK (Build 10586)

Nov 8th, 2015
535
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. C:\Program Files (x86)\Windows Kits\10\Include\10.0.10586.0\km\ntifs.h got some updates:
  2.  
  3.  
  4. #define SECURITY_USERMANAGER_ID_BASE_RID    (0x0000005DL)
  5. #define SECURITY_USERMANAGER_ID_RID_COUNT   (6L)
  6.  
  7. #define SECURITY_WINRM_ID_BASE_RID    (0x0000005EL)
  8. #define SECURITY_WINRM_ID_RID_COUNT   (6L)
  9.  
  10. typedef struct _SE_ADT_PARAMETER_ARRAY_EX {
  11.  
  12.     ULONG CategoryId;
  13.     ULONG AuditId;
  14.     ULONG Version;
  15.     ULONG ParameterCount;
  16.     ULONG Length;
  17.     USHORT FlatSubCategoryId;
  18.     USHORT Type;
  19.     ULONG Flags;
  20.     SE_ADT_PARAMETER_ARRAY_ENTRY Parameters[ SE_MAX_AUDIT_PARAMETERS ];
  21.  
  22. } SE_ADT_PARAMETER_ARRAY_EX, *PSE_ADT_PARAMETER_ARRAY_EX;
  23.  
  24. // V2 Drops support for LM hash, but adds the credential key
  25. typedef struct _MSV1_0_SUPPLEMENTAL_CREDENTIAL_V2 {
  26.     ULONG Version;
  27.     ULONG Flags;
  28.     UCHAR NtPassword[MSV1_0_OWF_PASSWORD_LENGTH];
  29.     UCHAR CredentialKey[MSV1_0_OWF_PASSWORD_LENGTH];
  30. } MSV1_0_SUPPLEMENTAL_CREDENTIAL_V2, *PMSV1_0_SUPPLEMENTAL_CREDENTIAL_V2;
  31.  
  32. #if (_WIN32_WINNT >= _WIN32_WINNT_WINTHRESHOLD)
  33. #define FSCTL_QUERY_VOLUME_CONTAINER_STATE       CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 228, METHOD_BUFFERED, FILE_ANY_ACCESS)
  34. #define FSCTL_SET_LAYER_ROOT                     CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 229, METHOD_BUFFERED, FILE_ANY_ACCESS) // CONTAINER_ROOT_INFO_INPUT CONTAINER_ROOT_INFO_OUTPUT
  35. #endif
  36.  
  37. //  TODO_WIN32_WINNT_WIN10_TH2
  38. #if (_WIN32_WINNT >= _WIN32_WINNT_WINTHRESHOLD)
  39. #define FSCTL_QUERY_DIRECT_ACCESS_EXTENTS        CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 230, METHOD_NEITHER, FILE_ANY_ACCESS)
  40. #define FSCTL_NOTIFY_STORAGE_SPACE_ALLOCATION    CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 231, METHOD_BUFFERED, FILE_ANY_ACCESS)
  41. #define FSCTL_SSDI_STORAGE_REQUEST               CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 232, METHOD_BUFFERED, FILE_ANY_ACCESS)
  42.  
  43.  
  44. #define FILE_STORAGE_TIER_FLAG_PARITY             (0x00800000)
  45.  
  46. #if (_WIN32_WINNT >= _WIN32_WINNT_WINTHRESHOLD)
  47.  
  48. typedef struct _CONTAINER_VOLUME_STATE {
  49.     ULONG Flags;
  50. } CONTAINER_VOLUME_STATE, *PCONTAINER_VOLUME_STATE;
  51.  
  52. #define CONTAINER_VOLUME_STATE_HOSTING_CONTAINER    (0x00000001)
  53.  
  54.  
  55. typedef struct _CONTAINER_ROOT_INFO_INPUT {
  56.     ULONG Flags;
  57. } CONTAINER_ROOT_INFO_INPUT, *PCONTAINER_ROOT_INFO_INPUT;
  58.  
  59. typedef struct _CONTAINER_ROOT_INFO_OUTPUT {
  60.     USHORT ContainerRootIdLength;
  61.     UCHAR ContainerRootId[ANYSIZE_ARRAY];
  62. } CONTAINER_ROOT_INFO_OUTPUT, *PCONTAINER_ROOT_INFO_OUTPUT;
  63.  
  64. #define CONTAINER_ROOT_INFO_FLAG_SCRATCH_ROOT       (0x00000001)
  65. #define CONTAINER_ROOT_INFO_FLAG_LAYER_ROOT         (0x00000002)
  66.  
  67. #endif
  68.  
  69. //
  70. //  Tag allocated to DropBox for HSM
  71. //  GUID: C5BB0F16-68E9-4456-B6B9-5F5EE5F89965
  72. //
  73.  
  74. #define IO_REPARSE_TAG_DROPBOX_HSM              (0x00000044L)
  75.  
  76.  
  77. typedef enum _SharedVirtualDiskSupportType
  78. {
  79. //
  80.     // The target device supports Continuous Data
  81.     // Protection (log based) snapshots.
  82.     //
  83.     SharedVirtualDiskCDPSnapshotsSupported = 7
  84. } SharedVirtualDiskSupportType;
  85.  
  86. #if (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)
  87. NTKERNELAPI
  88. VOID
  89. SeAuditFipsCryptoSelftests(
  90.     _In_ BOOLEAN bSuccess,
  91.     _In_ ULONG SelftestCode
  92.     );
  93. #endif
  94.  
  95. //
  96. //  Registration version post threshold.
  97. //
  98. #define FSRTL_UNC_REGISTRATION_VERSION_0201  0x0201
  99.  
  100. #endif
  101.  
  102. //
  103. //  FSRTL_UNC_REGISTRATION_VERSION_0201 is available in post threshold only.
  104. //  Change NTDDI_WINTHRESHOLD to appropriate value when new
  105. //  version is avaialble.
  106. //
  107. #if (NTDDI_VERSION >= NTDDI_WINTHRESHOLD)    /* ABRACADABRA_THRESHOLD */
  108.  
  109. #define FSRTL_UNC_REGISTRATION_CURRENT_VERSION FSRTL_UNC_REGISTRATION_VERSION_0201  // Current version is 2.1
  110.  
  111. #elif (NTDDI_VERSION >= NTDDI_WINBLUE)    /* ABRACADABRA_THRESHOLD */
  112.  
  113. #define FSRTL_UNC_REGISTRATION_CURRENT_VERSION FSRTL_UNC_REGISTRATION_VERSION_0200  // Current version is 2.0
  114.  
  115. #endif
  116.  
  117. #if (NTDDI_VERSION >= NTDDI_THRESHOLD)
  118.  
  119. #define ATOMIC_CREATE_ECP_IN_FLAG_SPARSE_SPECIFIED          0x0001
  120. #define ATOMIC_CREATE_ECP_IN_FLAG_REPARSE_POINT_SPECIFIED   0x0002
  121. #define ATOMIC_CREATE_ECP_IN_FLAG_EOF_SPECIFIED             0x0004
  122. #define ATOMIC_CREATE_ECP_IN_FLAG_VDL_SPECIFIED             0x0008
  123. #define ATOMIC_CREATE_ECP_IN_FLAG_OPERATION_MASK            0x00ff
  124.  
  125. #define ATOMIC_CREATE_ECP_IN_FLAG_BEST_EFFORT               0x0100
  126.  
  127. #define ATOMIC_CREATE_ECP_OUT_FLAG_SPARSE_SET               0x0001
  128. #define ATOMIC_CREATE_ECP_OUT_FLAG_REPARSE_POINT_SET        0x0002
  129. #define ATOMIC_CREATE_ECP_OUT_FLAG_EOF_SET                  0x0004
  130. #define ATOMIC_CREATE_ECP_OUT_FLAG_VDL_SET                  0x0008
  131. #define ATOMIC_CREATE_ECP_OUT_FLAG_OPERATION_MASK           0x00ff
  132.  
  133. typedef struct _ATOMIC_CREATE_ECP_CONTEXT {
  134.  
  135.     //
  136.     //  Size of this context structure.
  137.     //
  138.  
  139.     USHORT Size;
  140.  
  141.     //
  142.     //  ATOMIC_CREATE_ECP_IN_FLAG_xxx flags.
  143.     //
  144.  
  145.     USHORT InFlags;
  146.  
  147.     //
  148.     //  ATOMIC_CREATE_ECP_OUT_FLAG_xxx flags.
  149.     //
  150.  
  151.     USHORT OutFlags;
  152.  
  153.     //
  154.     //  Size of the ReparseBuffer below.
  155.     //
  156.     //  This can't exceed MAXIMUM_REPARSE_DATA_BUFFER_SIZE (16K).
  157.     //
  158.  
  159.     USHORT ReparseBufferLength;
  160.  
  161.     //
  162.     //  Optional REPARSE_DATA_BUFFER or REPARSE_GUID_DATA_BUFFER.
  163.     //
  164.  
  165.     _Field_size_bytes_opt_(ReparseBufferLength) PREPARSE_DATA_BUFFER ReparseBuffer;
  166.  
  167.     //
  168.     //  Optional file size.
  169.     //
  170.  
  171.     LONGLONG FileSize;
  172.  
  173.     //
  174.     //  Optional valid data length.
  175.     //
  176.  
  177.     LONGLONG ValidDataLength;
  178.  
  179. } ATOMIC_CREATE_ECP_CONTEXT, *PATOMIC_CREATE_ECP_CONTEXT;
  180.  
  181. //
  182. //  The GUID used for the ATOMIC_CREATE_ECP_CONTEXT structure.
  183. //
  184. //  {4720bd83-52ac-4104-a130-d1ec6a8cc8e5}
  185. //
  186.  
  187. DEFINE_GUID( GUID_ECP_ATOMIC_CREATE,
  188.              0x4720bd83,
  189.              0x52ac,
  190.              0x4104,
  191.              0xa1, 0x30, 0xd1, 0xec, 0x6a, 0x8c, 0xc8, 0xe5 );
  192.  
  193. #endif
  194.  
  195.  
  196. typedef struct _SEC_TOKEN_BINDING {
  197.     unsigned char MajorVersion;                 // Supported major version of the Token Binding protocol
  198.     unsigned char MinorVersion;                 // Supported minor version of the Token Binding protocol
  199.     unsigned short KeyParametersSize;           // Size in bytes of the Token Binding key parameter IDs array
  200.     unsigned char KeyParameters[ANYSIZE_ARRAY]; // Token Binding key parameter IDs, most preferred first
  201. } SEC_TOKEN_BINDING, *PSEC_TOKEN_BINDING;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement