[CIFS] POSIX CIFS Extensions (continued) - POSIX Open
authorSteve French <sfrench@us.ibm.com>
Thu, 8 Feb 2007 18:11:42 +0000 (18:11 +0000)
committerSteve French <sfrench@us.ibm.com>
Thu, 8 Feb 2007 18:11:42 +0000 (18:11 +0000)
Signed-off-by: Steve French <sfrench@us.ibm.com>
fs/cifs/CHANGES
fs/cifs/cifspdu.h

index 85e3850bf2c92a29e212bc7c6b576a5a04eb27c5..a1fb03f196370b4e75c3d65f969730cceb6281db 100644 (file)
@@ -1,6 +1,8 @@
 Version 1.47
 ------------
 Fix oops in list_del during mount caused by unaligned string.
+Fix file corruption which could occur on some large file
+copies caused by writepages page i/o completion bug.
 Seek to SEEK_END forces check for update of file size for non-cached
 files.
 
index 2920ea0527f57d4b27d305c088a6ed61a3819074..529a000bee467f8452768c6832d746ed966b1420 100644 (file)
@@ -796,6 +796,8 @@ typedef struct smb_com_openx_rsp {
        __u16  ByteCount;
 } __attribute__((packed)) OPENX_RSP; 
 
+/* For encoding of POSIX Open Request - see trans2 function 0x209 data struct */
+
 /* Legacy write request for older servers */
 typedef struct smb_com_writex_req {
         struct smb_hdr hdr;     /* wct = 12 */
@@ -2096,6 +2098,19 @@ struct cifs_posix_acl { /* access conrol list  (ACL) */
 
 /* end of POSIX ACL definitions */
 
+typedef struct {
+       __u32 OpenFlags; /* same as NT CreateX */
+       __u32 PosixOpenFlags;
+       __u32 Mode;
+       __u16 Level; /* reply level requested (see QPathInfo levels) */
+       __u16 Pad;  /* reserved - MBZ */
+} __attribute__((packed)) OPEN_PSX_REQ; /* level 0x209 SetPathInfo data */
+
+typedef struct {
+       /* reply varies based on requested level */
+} __atribute__((packed)) OPEN_PSX_RSP; /* level 0x209 SetPathInfo data */
+
+
 struct file_internal_info {
        __u64  UniqueId; /* inode number */
 } __attribute__((packed));      /* level 0x3ee */