4.6.1 Client Request Buffer

The client request buffer for the RopCopyFolder ROP [MS-OXCROPS] section 2.2.4.8) example consists of a 31-byte sequence, formatted as follows.

 0000: 36 00 00 01 01 01 01 01-00 00 00 0E 8E DF 36 46
 0010: 00 6F 00 6C 00 64 00 65-00 72 00 31 00 00 00

The first seven bytes of the request buffer map to the RopId and LogonID fields, as described in [MS-OXCROPS] section 2.2.4.8.1, and the SourceHandleIndex, DestHandleIndex, WantAsynchronous, WantRecursive, and UseUnicode fields of the RopCopyFolder ROP format, as described in section 2.2.1.8.1.

  
 0000: 36 00 00 01 01 01 01

RopId: 0x36 (RopCopyFolder ROP)

LogonID: 0x00

SourceHandleIndex: 0x00. The location of where the handle for the parent folder of the folder to copy is stored.

DestHandleIndex: 0x01. The location where the handle for the destination folder is stored.

WantAsynchronous: 0x01 (TRUE). The ROP is executed asynchronously.

WantRecursive: 0x01 (TRUE). The operation recursively copies all subfolders, messages, and properties.

UseUnicode: 0x01 (TRUE). The value of the NewFolderName field is in Unicode format.

The next eight bytes are the FolderId field, as described in section 2.2.1.8.1.

  
 0006: 01 00 00 00 0E 8E DF 36

FolderId: 0001-00000E8EDF36

The remaining 16 bytes of the request buffer specify the new name of the folder.

  
 000E: 46 00 6F 00 6C 00 64 00-65 00 72 00 31 00 00 00

NewFolderName: "Folder1"