Merged Steve French's fix for OS/2 EA return error being removed.
authorJeremy Allison <jra@samba.org>
Mon, 9 Sep 2002 21:48:23 +0000 (21:48 +0000)
committerJeremy Allison <jra@samba.org>
Mon, 9 Sep 2002 21:48:23 +0000 (21:48 +0000)
Jeremy.

source/include/trans2.h
source/smbd/trans2.c

index fb265fdb1a88d5a27a71543c9d06b0b67cad5de0..3468d3b9950a1647629b4d713fe4ff129bcc84df 100644 (file)
@@ -193,16 +193,19 @@ Byte offset   Type     name                description
 } FSINFO;
 *************************************************************/
 
-#define SMB_INFO_STANDARD               1
-#define SMB_INFO_QUERY_EA_SIZE          2
-#define SMB_INFO_QUERY_EAS_FROM_LIST    3
-#define SMB_INFO_QUERY_ALL_EAS          4
+#define SMB_INFO_STANDARD               1  /* FILESTATUS3 struct */
+#define SMB_INFO_SET_EA                 2  /* EAOP2 struct, only valid on set not query */
+#define SMB_INFO_QUERY_EA_SIZE          2  /* FILESTATUS4 struct, only valid on query not set */
+#define SMB_INFO_QUERY_EAS_FROM_LIST    3  /* only valid on query not set */
+#define SMB_INFO_QUERY_ALL_EAS          4  /* only valid on query not set */
 #define SMB_INFO_IS_NAME_VALID          6
-#define SMB_QUERY_FS_LABEL_INFO                        0x101
-#define SMB_QUERY_FS_VOLUME_INFO               0x102
-#define SMB_QUERY_FS_SIZE_INFO                 0x103
-#define SMB_QUERY_FS_DEVICE_INFO               0x104
-#define SMB_QUERY_FS_ATTRIBUTE_INFO            0x105
+#define SMB_INFO_STANDARD_LONG          11  /* similar to level 1, ie struct FileStatus3 */
+#define SMB_QUERY_EA_SIZE_LONG          12  /* similar to level 2, ie struct FileStatus4 */
+#define SMB_QUERY_FS_LABEL_INFO         0x101
+#define SMB_QUERY_FS_VOLUME_INFO        0x102
+#define SMB_QUERY_FS_SIZE_INFO          0x103
+#define SMB_QUERY_FS_DEVICE_INFO        0x104
+#define SMB_QUERY_FS_ATTRIBUTE_INFO     0x105
 
 
 #define l2_vol_fdateCreation 0
index d21d6d2cda457f379354fa199fa8a906f7ba79d6..de65cda2d09b21d958a0a4359fef8efde3c0a294 100644 (file)
@@ -2349,7 +2349,6 @@ static int call_trans2setfilepathinfo(connection_struct *conn,
 
        switch (info_level) {
                case SMB_INFO_STANDARD:
-               case SMB_INFO_QUERY_EA_SIZE:
                {
                        if (total_data < l1_cbFile+4)
                                return(ERROR_DOS(ERRDOS,ERRinvalidparam));
@@ -2366,6 +2365,9 @@ static int call_trans2setfilepathinfo(connection_struct *conn,
                        break;
                }
 
+               case SMB_INFO_SET_EA:
+                       return(ERROR_DOS(ERRDOS,ERReasnotsupported));
+
                /* XXXX um, i don't think this is right.
                        it's also not in the cifs6.txt spec.
                */