diff --git a/mingw-w64-headers/ddk/include/ddk/scsi.h b/mingw-w64-headers/ddk/include/ddk/scsi.h
index 962b2a9..94f20b4 100644
--- a/mingw-w64-headers/ddk/include/ddk/scsi.h
+++ b/mingw-w64-headers/ddk/include/ddk/scsi.h
@@ -113,12 +113,15 @@
 #define NOTIFICATION_BUSY_EVENT_NO_EVENT            0x0
 #define NOTIFICATION_BUSY_EVENT_NO_CHANGE           0x0
 #define NOTIFICATION_BUSY_EVENT_BUSY                0x1
+#define NOTIFICATION_BUSY_EVENT_LO_CHANGE           0x2
 
 #define NOTIFICATION_BUSY_STATUS_NO_EVENT           0x0
 #define NOTIFICATION_BUSY_STATUS_POWER              0x1
 #define NOTIFICATION_BUSY_STATUS_IMMEDIATE          0x2
 #define NOTIFICATION_BUSY_STATUS_DEFERRED           0x3
 
+#define SECURITY_PROTOCOL_IEEE1667  0xEE
+
 #define DVD_FORMAT_LEAD_IN          0x00
 #define DVD_FORMAT_COPYRIGHT        0x01
 #define DVD_FORMAT_DISK_KEY         0x02
@@ -292,6 +295,7 @@
 #define SCSIOP_CHANGE_DEFINITION        0x40
 #define SCSIOP_WRITE_SAME               0x41
 #define SCSIOP_READ_SUB_CHANNEL         0x42
+#define SCSIOP_UNMAP                    0x42
 #define SCSIOP_READ_TOC                 0x43
 #define SCSIOP_READ_HEADER              0x44
 #define SCSIOP_REPORT_DENSITY_SUPPORT   0x44
@@ -299,6 +303,7 @@
 #define SCSIOP_GET_CONFIGURATION        0x46
 #define SCSIOP_PLAY_AUDIO_MSF           0x47
 #define SCSIOP_PLAY_TRACK_INDEX         0x48
+#define SCSIOP_SANITIZE                 0x48
 #define SCSIOP_PLAY_TRACK_RELATIVE      0x49
 #define SCSIOP_GET_EVENT_STATUS         0x4A
 #define SCSIOP_PAUSE_RESUME             0x4B
@@ -330,6 +335,7 @@
 #define SCSIOP_BLANK                    0xA1
 #define SCSIOP_ATA_PASSTHROUGH12        0xA1
 #define SCSIOP_SEND_EVENT               0xA2
+#define SCSIOP_SECURITY_PROTOCOL_IN     0xA2
 #define SCSIOP_SEND_KEY                 0xA3
 #define SCSIOP_MAINTENANCE_IN           0xA3
 #define SCSIOP_REPORT_KEY               0xA4
@@ -355,6 +361,7 @@
 #define SCSIOP_SET_LIMITS12             0xB3
 #define SCSIOP_READ_ELEMENT_STATUS_ATTACHED 0xB4
 #define SCSIOP_REQUEST_VOL_ELEMENT      0xB5
+#define SCSIOP_SECURITY_PROTOCOL_OUT    0xB5
 #define SCSIOP_SEND_VOLUME_TAG          0xB6
 #define SCSIOP_SET_STREAMING            0xB6
 #define SCSIOP_READ_DEFECT_DATA         0xB7
@@ -380,11 +387,15 @@
 #define SCSIOP_READ_REVERSE16           0x81
 #define SCSIOP_REGENERATE16             0x82
 #define SCSIOP_EXTENDED_COPY            0x83
+#define SCSIOP_POPULATE_TOKEN           0x83
+#define SCSIOP_WRITE_USING_TOKEN        0x83
 #define SCSIOP_RECEIVE_COPY_RESULTS     0x84
+#define SCSIOP_RECEIVE_ROD_TOKEN_INFORMATION 0x84
 #define SCSIOP_ATA_PASSTHROUGH16        0x85
 #define SCSIOP_ACCESS_CONTROL_IN        0x86
 #define SCSIOP_ACCESS_CONTROL_OUT       0x87
 #define SCSIOP_READ16                   0x88
+#define SCSIOP_COMPARE_AND_WRITE        0x89
 #define SCSIOP_WRITE16                  0x8A
 #define SCSIOP_READ_ATTRIBUTES          0x8C
 #define SCSIOP_WRITE_ATTRIBUTES         0x8D
@@ -397,10 +408,62 @@
 #define SCSIOP_LOCATE16                 0x92
 #define SCSIOP_WRITE_SAME16             0x93
 #define SCSIOP_ERASE16                  0x93
+#define SCSIOP_ZBC_OUT                  0x94
+#define SCSIOP_ZBC_IN                   0x95
+#define SCSIOP_READ_DATA_BUFF16         0x9B
 #define SCSIOP_READ_CAPACITY16          0x9E
+#define SCSIOP_GET_LBA_STATUS           0x9E
+#define SCSIOP_GET_PHYSICAL_ELEMENT_STATUS 0x9E
+#define SCSIOP_REMOVE_ELEMENT_AND_TRUNCATE 0x9E
 #define SCSIOP_SERVICE_ACTION_IN16      0x9E
 #define SCSIOP_SERVICE_ACTION_OUT16     0x9F
 
+#define SCSIOP_OPERATION32              0x7F
+
+#define SERVICE_ACTION_OVERWRITE        0x01
+#define SERVICE_ACTION_BLOCK_ERASE      0x02
+#define SERVICE_ACTION_CRYPTO_ERASE     0x03
+#define SERVICE_ACTION_EXIT_FAILURE     0x1f
+
+#define SERVICE_ACTION_XDWRITE          0x0004
+#define SERVICE_ACTION_XPWRITE          0x0006
+#define SERVICE_ACTION_XDWRITEREAD      0x0007
+#define SERVICE_ACTION_WRITE            0x000B
+#define SERVICE_ACTION_WRITE_VERIFY     0x000C
+#define SERVICE_ACTION_WRITE_SAME       0x000D
+#define SERVICE_ACTION_ORWRITE          0x000E
+
+#define SERVICE_ACTION_POPULATE_TOKEN     0x10
+#define SERVICE_ACTION_WRITE_USING_TOKEN 0x11
+
+#define SERVICE_ACTION_RECEIVE_TOKEN_INFORMATION 0x07
+
+#define SERVICE_ACTION_CLOSE_ZONE           0x01
+#define SERVICE_ACTION_FINISH_ZONE          0x02
+#define SERVICE_ACTION_OPEN_ZONE            0x03
+#define SERVICE_ACTION_RESET_WRITE_POINTER  0x04
+
+#define SERVICE_ACTION_REPORT_ZONES         0x00
+
+#define REPORT_ZONES_OPTION_LIST_ALL_ZONES               0x00
+#define REPORT_ZONES_OPTION_LIST_EMPTY_ZONES             0x01
+#define REPORT_ZONES_OPTION_LIST_IMPLICITLY_OPENED_ZONES 0x02
+#define REPORT_ZONES_OPTION_LIST_EXPLICITLY_OPENED_ZONES 0x03
+#define REPORT_ZONES_OPTION_LIST_CLOSED_ZONES            0x04
+#define REPORT_ZONES_OPTION_LIST_FULL_ZONES              0x05
+#define REPORT_ZONES_OPTION_LIST_READ_ONLY_ZONES         0x06
+#define REPORT_ZONES_OPTION_LIST_OFFLINE_ZONES           0x07
+#define REPORT_ZONES_OPTION_LIST_RWP_ZONES               0x10
+#define REPORT_ZONES_OPTION_LIST_NON_SEQUENTIAL_WRITE_RESOURCES_ACTIVE_ZONES 0x11
+#define REPORT_ZONES_OPTION_LIST_NOT_WRITE_POINTER_ZONES 0x3F
+
+#define SERVICE_ACTION_READ_CAPACITY16              0x10
+#define SERVICE_ACTION_GET_LBA_STATUS               0x12
+#define SERVICE_ACTION_GET_PHYSICAL_ELEMENT_STATUS  0x17
+#define SERVICE_ACTION_REMOVE_ELEMENT_AND_TRUNCATE  0x18
+#define SERVICE_ACTION_REPORT_TIMESTAMP             0x0F
+#define SERVICE_ACTION_SET_TIMESTAMP                0x0F
+
 #define CDB_RETURN_ON_COMPLETION   0
 #define CDB_RETURN_IMMEDIATE       1
 
@@ -454,6 +517,9 @@
 #define START_UNIT_CODE 0x01
 #define STOP_UNIT_CODE 0x00
 
+#define OFFSET_VER_DESCRIPTOR_ONE (FIELD_OFFSET(INQUIRYDATA, VersionDescriptors[0]))
+#define OFFSET_VER_DESCRIPTOR_EIGHT (FIELD_OFFSET(INQUIRYDATA, VersionDescriptors[8]))
+
 /* INQUIRYDATA.DeviceType constants */
 #define DIRECT_ACCESS_DEVICE              0x00
 #define SEQUENTIAL_ACCESS_DEVICE          0x01
@@ -471,6 +537,8 @@
 #define OPTICAL_CARD_READER_WRITER_DEVICE 0x0F
 #define BRIDGE_CONTROLLER_DEVICE          0x10
 #define OBJECT_BASED_STORAGE_DEVICE       0x11
+#define HOST_MANAGED_ZONED_BLOCK_DEVICE   0x14
+#define UNKNOWN_OR_NO_DEVICE              0x1F
 #define LOGICAL_UNIT_NOT_PRESENT_DEVICE   0x7F
 
 #define DEVICE_QUALIFIER_ACTIVE           0x00
@@ -785,6 +853,26 @@
     UCHAR VerificationLength[3];
     UCHAR Control;
   } CDB6VERIFY;
+  struct _RECEIVE_DIAGNOSTIC {
+    UCHAR OperationCode;
+    UCHAR PageCodeValid:1;
+    UCHAR Reserved:7;
+    UCHAR PageCode;
+    UCHAR AllocationLength[2];
+    UCHAR Control;
+  } RECEIVE_DIAGNOSTIC;
+  struct _SEND_DIAGNOSTIC {
+    UCHAR OperationCode;
+    UCHAR UnitOffline:1;
+    UCHAR DeviceOffline:1;
+    UCHAR SelfTest:1;
+    UCHAR Reserved1:1;
+    UCHAR PageFormat:1;
+    UCHAR SelfTestCode:3;
+    UCHAR Reserved2;
+    UCHAR ParameterListLength[2];
+    UCHAR Control;
+  } SEND_DIAGNOSTIC;
   struct _CDB6FORMAT {
     UCHAR OperationCode;
     UCHAR FormatControl:5;
@@ -833,6 +921,66 @@
      UCHAR Reserved2;
      UCHAR Control;
   } CDB16;
+  struct _READ_BUFFER_10 {
+    UCHAR OperationCode;
+    UCHAR Mode:5;
+    UCHAR ModeSpecific:3;
+    UCHAR BufferId;
+    UCHAR BufferOffset[3];
+    UCHAR AllocationLength[3];
+    UCHAR Control;
+  } READ_BUFFER_10;
+  struct _READ_BUFFER_16 {
+    UCHAR OperationCode;
+    UCHAR Mode:5;
+    UCHAR ModeSpecific:3;
+    UCHAR BufferOffset[8];
+    UCHAR AllocationLength[4];
+    UCHAR BufferId;
+    UCHAR Control;
+  } READ_BUFFER_16;
+  struct _SECURITY_PROTOCOL_IN {
+    UCHAR OperationCode;
+    UCHAR SecurityProtocol;
+    UCHAR SecurityProtocolSpecific[2];
+    UCHAR Reserved1:7;
+    UCHAR INC_512:1;
+    UCHAR Reserved2;
+    UCHAR AllocationLength[4];
+    UCHAR Reserved3;
+    UCHAR Control;
+  } SECURITY_PROTOCOL_IN;
+  struct _SECURITY_PROTOCOL_OUT {
+    UCHAR OperationCode;
+    UCHAR SecurityProtocol;
+    UCHAR SecurityProtocolSpecific[2];
+    UCHAR Reserved1:7;
+    UCHAR INC_512:1;
+    UCHAR Reserved2;
+    UCHAR AllocationLength[4];
+    UCHAR Reserved3;
+    UCHAR Control;
+  } SECURITY_PROTOCOL_OUT;
+  struct _UNMAP {
+    UCHAR OperationCode;
+    UCHAR Anchor:1;
+    UCHAR Reserved1:7;
+    UCHAR Reserved2[4];
+    UCHAR GroupNumber:5;
+    UCHAR Reserved3:3;
+    UCHAR AllocationLength[2];
+    UCHAR Control;
+  } UNMAP;
+  struct _SANITIZE {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR AUSE:1;
+    UCHAR Reserved1:1;
+    UCHAR Immediate:1;
+    UCHAR Reserved2[5];
+    UCHAR ParameterListLength[2];
+    UCHAR Control;
+  } SANITIZE;
   struct _PAUSE_RESUME {
     UCHAR OperationCode;
     UCHAR Reserved1:5;
@@ -865,9 +1013,8 @@
   } READ_DISK_INFORMATION;
   struct _READ_TRACK_INFORMATION {
     UCHAR OperationCode;
-    UCHAR Track:1;
-    UCHAR Reserved1:3;
-    UCHAR Reserved2:1;
+    UCHAR Track:2;
+    UCHAR Reserved4:3;
     UCHAR Lun:3;
     UCHAR BlockAddress[4];
     UCHAR Reserved3;
@@ -975,24 +1122,22 @@
     UCHAR CMSF:1;
     UCHAR ExpectedSectorType:3;
     UCHAR Lun:3;
-    struct _LBA {
-      UCHAR StartingBlockAddress[4];
-      UCHAR PlayLength[4];
-    };
-    struct _MSF {
-      UCHAR Reserved1;
-      UCHAR StartingM;
-      UCHAR StartingS;
-      UCHAR StartingF;
-      UCHAR EndingM;
-      UCHAR EndingS;
-      UCHAR EndingF;
-      UCHAR Reserved2;
-    };
     _ANONYMOUS_UNION union {
-      struct _LBA LBA;
-      struct _MSF MSF;
-    } DUMMYUNIONNAME;
+      struct {
+        UCHAR StartingBlockAddress[4];
+        UCHAR PlayLength[4];
+      } LBA;
+      struct {
+        UCHAR Reserved1;
+        UCHAR StartingM;
+        UCHAR StartingS;
+        UCHAR StartingF;
+        UCHAR EndingM;
+        UCHAR EndingS;
+        UCHAR EndingF;
+        UCHAR Reserved2;
+      } MSF;
+    };
     UCHAR Audio:1;
     UCHAR Composite:1;
     UCHAR Port1:1;
@@ -1105,10 +1250,36 @@
     UCHAR TransferBlockByte1;
     UCHAR Control;
   } NEC_READ_CDDA;
+#if NTDDI_VERSION >= NTDDI_WIN8
   struct _MODE_SENSE {
     UCHAR OperationCode;
     UCHAR Reserved1:3;
     UCHAR Dbd:1;
+    UCHAR Reserved2:4;
+    UCHAR PageCode:6;
+    UCHAR Pc:2;
+    UCHAR SubPageCode;
+    UCHAR AllocationLength;
+    UCHAR Control;
+  } MODE_SENSE;
+  struct _MODE_SENSE10 {
+    UCHAR OperationCode;
+    UCHAR Reserved1:3;
+    UCHAR Dbd:1;
+    UCHAR LongLBAAccepted:1;
+    UCHAR Reserved2:3;
+    UCHAR PageCode:6;
+    UCHAR Pc:2;
+    UCHAR SubPageCode;
+    UCHAR Reserved3[3];
+    UCHAR AllocationLength[2];
+    UCHAR Control;
+  } MODE_SENSE10;
+#else
+    struct _MODE_SENSE {
+    UCHAR OperationCode;
+    UCHAR Reserved1:3;
+    UCHAR Dbd:1;
     UCHAR Reserved2:1;
     UCHAR LogicalUnitNumber:3;
     UCHAR PageCode:6;
@@ -1129,6 +1300,7 @@
     UCHAR AllocationLength[2];
     UCHAR Control;
   } MODE_SENSE10;
+#endif /* NTDDI_VERSION >= NTDDI_WIN8 */
   struct _MODE_SELECT {
     UCHAR OperationCode;
     UCHAR SPBit:1;
@@ -1170,7 +1342,10 @@
     UCHAR LogicalUnitNumber:3;
     UCHAR PageCode:6;
     UCHAR PCBit:2;
-    UCHAR Reserved2;
+    _ANONYMOUS_UNION union {
+      UCHAR SubPageCode;
+      UCHAR Reserved2;
+    };
     UCHAR Reserved3;
     UCHAR ParameterPointer[2];
     UCHAR AllocationLength[2];
@@ -1548,10 +1723,28 @@
     UCHAR ParameterListLength[2];
     UCHAR Control;
   } PERSISTENT_RESERVE_OUT;
+  struct _REPORT_TIMESTAMP {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR Reserved2[4];
+    UCHAR AllocationLength[4];
+    UCHAR Reserved3;
+    UCHAR Control;
+  } REPORT_TIMESTAMP;
+  struct _SET_TIMESTAMP {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR Reserved2[4];
+    UCHAR ParameterListLength[4];
+    UCHAR Reserved3;
+    UCHAR Control;
+  } SET_TIMESTAMP;
   struct _GET_CONFIGURATION {
     UCHAR OperationCode;
-    UCHAR RequestType:1;
-    UCHAR Reserved1:7;
+    UCHAR RequestType:2;
+    UCHAR Reserved1:6;
     UCHAR StartingFeature[2];
     UCHAR Reserved2[3];
     UCHAR AllocationLength[2];
@@ -1598,6 +1791,27 @@
     UCHAR Streaming:1;
     UCHAR Control;
   } WRITE12;
+  struct _ATA_PASSTHROUGH12 {
+    UCHAR OperationCode;
+    UCHAR Reserved1:1;
+    UCHAR Protocol:4;
+    UCHAR MultipleCount:3;
+    UCHAR TLength:2;
+    UCHAR ByteBlock:1;
+    UCHAR TDir:1;
+    UCHAR Reserved2:1;
+    UCHAR CkCond:1;
+    UCHAR Offline:2;
+    UCHAR Features;
+    UCHAR SectorCount;
+    UCHAR LbaLow;
+    UCHAR LbaMid;
+    UCHAR LbaHigh;
+    UCHAR Device;
+    UCHAR Command;
+    UCHAR Reserved3;
+    UCHAR Control;
+  } ATA_PASSTHROUGH12;
   struct _READ16 {
     UCHAR OperationCode;
     UCHAR Reserved1:3;
@@ -1656,6 +1870,142 @@
     UCHAR Reserved2:7;
     UCHAR Control;
   } READ_CAPACITY16;
+  struct _ATA_PASSTHROUGH16 {
+    UCHAR OperationCode;
+    UCHAR Extend:1;
+    UCHAR Protocol:4;
+    UCHAR MultipleCount:3;
+    UCHAR TLength:2;
+    UCHAR ByteBlock:1;
+    UCHAR TDir:1;
+    UCHAR Reserved1:1;
+    UCHAR CkCond:1;
+    UCHAR Offline:2;
+    UCHAR Features15_8;
+    UCHAR Features7_0;
+    UCHAR SectorCount15_8;
+    UCHAR SectorCount7_0;
+    UCHAR LbaLow15_8;
+    UCHAR LbaLow7_0;
+    UCHAR LbaMid15_8;
+    UCHAR LbaMid7_0;
+    UCHAR LbaHigh15_8;
+    UCHAR LbaHigh7_0;
+    UCHAR Device;
+    UCHAR Command;
+    UCHAR Control;
+  } ATA_PASSTHROUGH16;
+  struct _GET_LBA_STATUS {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR StartingLBA[8];
+    UCHAR AllocationLength[4];
+    UCHAR Reserved2;
+    UCHAR Control;
+  } GET_LBA_STATUS;
+  struct _TOKEN_OPERATION {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR Reserved2[4];
+    UCHAR ListIdentifier[4];
+    UCHAR ParameterListLength[4];
+    UCHAR GroupNumber: 5;
+    UCHAR Reserved3: 3;
+    UCHAR Control;
+  } TOKEN_OPERATION;
+  struct _RECEIVE_TOKEN_INFORMATION {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR ListIdentifier[4];
+    UCHAR Reserved2[4];
+    UCHAR AllocationLength[4];
+    UCHAR Reserved3;
+    UCHAR Control;
+  } RECEIVE_TOKEN_INFORMATION;
+  struct _WRITE_BUFFER {
+    UCHAR OperationCode;
+    UCHAR Mode:5;
+    UCHAR ModeSpecific:3;
+    UCHAR BufferID;
+    UCHAR BufferOffset[3];
+    UCHAR ParameterListLength[3];
+    UCHAR Control;
+  } WRITE_BUFFER;
+  struct _CLOSE_ZONE {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR ZoneId[8];
+    UCHAR Reserved2[4];
+    UCHAR All:1;
+    UCHAR Reserved3:7;
+    UCHAR Control;
+  } CLOSE_ZONE;
+  struct _FINISH_ZONE {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR ZoneId[8];
+    UCHAR Reserved2[4];
+    UCHAR All:1;
+    UCHAR Reserved3:7;
+    UCHAR Control;
+  } FINISH_ZONE;
+  struct _OPEN_ZONE {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR ZoneId[8];
+    UCHAR Reserved2[4];
+    UCHAR All:1;
+    UCHAR Reserved3:7;
+    UCHAR Control;
+  } OPEN_ZONE;
+  struct _RESET_WRITE_POINTER {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR ZoneId[8];
+    UCHAR Reserved2[4];
+    UCHAR All:1;
+    UCHAR Reserved3:7;
+    UCHAR Control;
+  } RESET_WRITE_POINTER;
+  struct _REPORT_ZONES {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR ZoneStartLBA[8];
+    UCHAR AllocationLength[4];
+    UCHAR ReportingOptions:6;
+    UCHAR Reserved3:1;
+    UCHAR Partial:1;
+    UCHAR Control;
+  } REPORT_ZONES;
+  struct _GET_PHYSICAL_ELEMENT_STATUS {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR Reserved2[4];
+    UCHAR StartingElement[4];
+    UCHAR AllocationLength[4];
+    UCHAR ReportType:4;
+    UCHAR Reserved3:2;
+    UCHAR Filter:2;
+    UCHAR Control;
+  } GET_PHYSICAL_ELEMENT_STATUS;
+  struct _REMOVE_ELEMENT_AND_TRUNCATE {
+    UCHAR OperationCode;
+    UCHAR ServiceAction:5;
+    UCHAR Reserved1:3;
+    UCHAR RequestedCapacity[8];
+    UCHAR ElementIdentifier[4];
+    UCHAR Reserved2;
+    UCHAR Control;
+  } REMOVE_ELEMENT_AND_TRUNCATE;
   ULONG AsUlong[4];
   UCHAR AsByte[16];
 } CDB, *PCDB;
@@ -1726,6 +2076,12 @@
   UCHAR Time[2];
 } NOTIFICATION_BUSY_STATUS, *PNOTIFICATION_BUSY_STATUS;
 
+typedef struct _SUPPORTED_SECURITY_PROTOCOLS_PARAMETER_DATA {
+  UCHAR Reserved1[6];
+  UCHAR SupportedSecurityListLength[2];
+  UCHAR SupportedSecurityProtocol[0];
+} SUPPORTED_SECURITY_PROTOCOLS_PARAMETER_DATA, *PSUPPORTED_SECURITY_PROTOCOLS_PARAMETER_DATA;
+
 typedef struct _READ_DVD_STRUCTURES_HEADER {
   UCHAR Length[2];
   UCHAR Reserved[2];
