Revision Summary Date Revision History Revision Comments 7/20/2007 0.1 Major MCPP Milestone 5 Initial Availability 9/28/2007 1.0 Updated and revised the technical content. 10/23/2007 2.0 Major Updated and revised the technical content. 11/30/2007 2.1 Minor Clarified the meaning of the technical content. 1/25/2008 2.1.1 Editorial Changed language and formatting in the technical content. 3/14/2008 2.1.2 Editorial Changed language and formatting in the technical content. 5/16/2008 2.1.3 Editorial Changed language and formatting in the technical content. 6/20/2008 2.2 Minor Clarified the meaning of the technical content. 7/25/2008 3.0 Major Updated and revised the technical content.
8/29/2008 3.0.1 Editorial Changed language and formatting in the technical content. 10/24/2008 3.1 Minor Clarified the meaning of the technical content. 12/5/2008 4.0 Major Updated and revised the technical content. 1/16/2009 5.0 Major Updated and revised the technical content. 2/27/2009 6.0 Major Updated and revised the technical content. 4/10/2009 6.0.1 Editorial Changed language and formatting in the technical content. 5/22/2009 7.0 Major Updated and revised the technical content. 7/2/2009 8.0 Major Updated and revised the technical content. 8/14/2009 9.0 Updated and revised the technical content. 9/25/2009 10.0 Major Updated and revised the
technical content. 11/6/2009 11.0 Major Updated and revised the technical content. 12/18/2009 12.0 Updated and revised the technical content. 1/29/2010 13.0 Updated and revised the technical content. 3/12/2010 14.0 Major Updated and revised the technical content. 4/23/2010 14.1 Minor Clarified the meaning of the technical content. 6/4/2010 15.0 Major Updated and revised the technical content. 7/16/2010 15.0 None No changes to the meaning, language, or formatting of the technical content. 8/27/2010 15.0 None No changes to the meaning, language, or formatting of the technical content. 10/8/2010 15.0 None No changes to the meaning,
language, or formatting of the technical content. 11/19/2010 15.0 None No changes to the meaning, language, or formatting of the technical content. 1/7/2011 15.0 None No changes to the meaning, language, or formatting of the technical content. 2/11/2011 16.0 Major Updated and revised the technical content. 3/25/2011 17.0 Major Updated and revised the technical content. 5/6/2011 17.0 None No changes to the meaning, language, or formatting of the technical content. 6/17/2011 17.1 Minor Clarified the meaning of the technical content. 9/23/2011 17.1 None No changes to the meaning, language, or formatting of the
technical content. 12/16/2011 18.0 Major Updated and revised the technical content. 3/30/2012 18.0 None No changes to the meaning, language, or formatting of the technical content. 7/12/2012 19.0 Major Updated and revised the technical content. 10/25/2012 20.0 Major Updated and revised the technical content. 1/31/2013 20.0 None No changes to the meaning, language, or formatting of the technical content. 8/8/2013 21.0 Updated and revised the technical content. 11/14/2013 21.0 None No changes to the meaning, language, or formatting of the technical content. 2/13/2014 21.0 None No changes to the meaning, language, or
formatting of the technical content. 5/15/2014 21.0 None No changes to the meaning, language, or formatting of the technical content. 6/30/2015 22.0 Major Significantly changed the technical content. 10/16/2015 22.0 None No changes to the meaning, language, or formatting of the technical content. 7/14/2016 23.0 Major Significantly changed the technical content. 6/1/2017 24.0 Major Significantly changed the technical content.
Value Meaning IRP_MN_QUERY_DIRECTORY 0x00000001 Query directory request IRP_MN_NOTIFY_CHANGE_DIRECTORY 0x00000002 Notify change directory request Device Create Request (DR_CREATE_REQ) This header initiates a create request. This message can have different purposes depending on the device for it is issued. The device type is determined by the DeviceId field in the header. 0 1 2 3 4 5 6 7 8 9 1 0 1 2 3 4 5 6 7 8 9 2 0 1 2 3 4 5 6 7 8 9 3 0 1 DeviceIoRequest (24 bytes) ... ... DesiredAccess AllocationSize ... FileAttributes SharedAccess CreateDisposition CreateOptions PathLength Path (variable) ... DeviceIoRequest (24 bytes): A DR_DEVICE_IOREQUEST header. The MajorFunction field in this header MUST be set to IRP_MJ_CREATE. DesiredAccess (4 bytes): A 32-bit unsigned integer that specifies the level of access. This field is specified in section 2.2.13. AllocationSize (8 A 64-bit unsigned integer that specifies the initial allocation size for the file.
0x00000002 RDPDR_IRP_MJ_CLOSE 0x00000004 Unused, always set. RDPDR_IRP_MJ_READ 0x00000008 Unused, always set. RDPDR_IRP_MJ_WRITE 0x00000010 Unused, always set. RDPDR_IRP_MJ_FLUSH_BUFFERS 0x00000020 Unused, always set. RDPDR_IRP_MJ_SHUTDOWN 0x00000040 Unused, always set. RDPDR_IRP_MJ_DEVICE_CONTROL 0x00000080 Unused, always set. RDPDR_IRP_MJ_QUERY_VOLUME_INFORMATION 0x00000100 Unused, always set. RDPDR_IRP_MJ_SET_VOLUME_INFORMATION 0x00000200 Unused, always set. RDPDR_IRP_MJ_QUERY_INFORMATION 0x00000400 Unused, always set. RDPDR_IRP_MJ_SET_INFORMATION 0x00000800 Unused, always set. RDPDR_IRP_MJ_DIRECTORY_CONTROL 0x00001000 Unused, always set. RDPDR_IRP_MJ_LOCK_CONTROL 0x00002000 Unused, always set. RDPDR_IRP_MJ_QUERY_SECURITY 0x00004000 Enable Security requests (IRP_MJ_QUERY_SECURITY). RDPDR_IRP_MJ_SET_SECURITY 0x00008000 Enable Set Security requests (IRP_MJ_SET_SECURITY). ioCode2 (4 bytes): A 32-bit unsigned integer that is currently reserved for future use, and MUST be set to 0. extendedPDU (4 bytes): A 32-bit unsigned integer that specifies extended flags. This field MUST be set as a bitmask of the following values. Value Meaning RDPDR_DEVICE_REMOVE_PDUS 0x00000001 Allow the client to send packets. RDPDR_CLIENT_DISPLAY_NAME_PDU 0x00000002 Unused, always set.
... FsInformationClass Length Padding (24 bytes) ... ... QueryVolumeBuffer (variable) ... DeviceIoRequest (24 bytes): A header. The MajorFunction field in the DR_DEVICE_IOREQUEST header MUST be set to IRP_MJ_QUERY_VOLUME_INFORMATION. FsInformationClass (4 bytes): A 32-bit unsigned integer. The possible values for this field are specified in section 2.5. This field MUST contain one of the following values. Value Meaning FileFsVolumeInformation 0x00000001 Used to information for a volume on which a file system is mounted. The Reserved field of the FileFsVolumeInformation structure ([MS-FSCC] section 2.5.9) MUST NOT be present. FileFsSizeInformation 0x00000003 Used to query sector size information for a file system volume. FileFsAttributeInformation 0x00000005 Used to query attribute information for a file system. FileFsFullSizeInformation 0x00000007 Used to query sector size information for a file system volume. FileFsDeviceInformation 0x00000004 Used to query device information for a file system volume. Length (4 bytes): A 32-bit unsigned integer that specifies the number of bytes in the QueryVolumeBuffer field. Padding (24 bytes): An array of 24 bytes. This field is unused and MUST be ignored. QueryVolumeBuffer (variable): A variable-length array of bytes. The size of the array is specified by the Length field. The content of this field is based on the value of the FsInformationClass field, which determines the different structures that MUST be contained in the QueryVolumeBuffer field. For a complete list of these structures, refer to [MS-FSCC] section 2.5. The "File system information class" table defines all the possible values for the FsInformationClass field. Server Drive Set Volume Information Request (DR_DRIVE_SET_VOLUME_INFORMATION_REQ) The server issues a set volume information request on a redirected file system device.
Index A Abstract data model client ( 55, 58) server ( 55, 63) 13 C 13 35 15 16 86 Client ( 55, 58) abstract data model ( 55, 58) higher-layer triggered events ( 56, 59) initialization ( 56, 59) local events ( 58, 63) message processing ( 56, 59) 63 sequencing rules ( 56, 59) timer events ( 58, 63) timers ( 55, 59) 35 14 D Data model - abstract client ( 55, 58) server ( 55, 63) 14 17 21 25 23 27 31 35 29 30 28 35 28 31 30 20 24 24 18 36 37 38 49 39 50 48 37 48 47 54 46 53 45 53 42 51 40 50 38 49 43 52 41 51 38 50 21 26 22 26 60 12 36 35 E 68 69 71 72 73 76 73 72 81 80 78 77 74 79 78 76 70 76 69 70 73 70 72 69 76 81 79 78 73 79 77 75 70