cifs: prepare SMB2_query_directory to be used with compounding
[linux-2.6-microblaze.git] / fs / cifs / smb2pdu.h
index f264e1d..4c43dbd 100644 (file)
@@ -25,6 +25,7 @@
 #define _SMB2PDU_H
 
 #include <net/sock.h>
+#include <cifsacl.h>
 
 /*
  * Note that, due to trying to use names similar to the protocol specifications,
@@ -855,6 +856,15 @@ struct crt_query_id_ctxt {
        __u8    Name[8];
 } __packed;
 
+struct crt_sd_ctxt {
+       struct create_context ccontext;
+       __u8    Name[8];
+       struct smb3_sd sd;
+       struct smb3_acl acl;
+       /* Followed by at least 4 ACEs */
+} __packed;
+
+
 #define COPY_CHUNK_RES_KEY_SIZE        24
 struct resume_key_req {
        char ResumeKey[COPY_CHUNK_RES_KEY_SIZE];
@@ -1272,6 +1282,8 @@ struct smb2_echo_rsp {
 #define SMB2_INDEX_SPECIFIED           0x04
 #define SMB2_REOPEN                    0x10
 
+#define SMB2_QUERY_DIRECTORY_IOV_SIZE 2
+
 struct smb2_query_directory_req {
        struct smb2_sync_hdr sync_hdr;
        __le16 StructureSize; /* Must be 33 */
@@ -1570,6 +1582,17 @@ struct smb2_file_eof_info { /* encoding of request for level 10 */
        __le64 EndOfFile; /* new end of file value */
 } __packed; /* level 20 Set */
 
+struct smb2_file_network_open_info {
+       __le64 CreationTime;
+       __le64 LastAccessTime;
+       __le64 LastWriteTime;
+       __le64 ChangeTime;
+       __le64 AllocationSize;
+       __le64 EndOfFile;
+       __le32 Attributes;
+       __le32 Reserved;
+} __packed; /* level 34 Query also similar returned in close rsp and open rsp */
+
 extern char smb2_padding[7];
 
 #endif                         /* _SMB2PDU_H */