Figured out a new flags bit with gentest and ethereal....
authorJeremy Allison <jra@samba.org>
Wed, 25 Feb 2004 02:15:34 +0000 (02:15 +0000)
committerJeremy Allison <jra@samba.org>
Wed, 25 Feb 2004 02:15:34 +0000 (02:15 +0000)
Jeremy.
(This used to be commit b4b684f1155b1abccb69cca7bca9819625dbfead)

source3/include/smb.h
source3/smbd/nttrans.c

index c5284751d33584a19272e144adf06160d07a0728..374b820a379e069289762c220b38d51dbd0d3997 100644 (file)
@@ -1085,6 +1085,7 @@ struct bitmap {
 #define REQUEST_OPLOCK 2
 #define REQUEST_BATCH_OPLOCK 4
 #define OPEN_DIRECTORY 8
+#define EXTENDED_RESPONSE_REQUIRED 0x10
 
 /* ShareAccess field. */
 #define FILE_SHARE_NONE 0 /* Cannot be used in bitmask. */
index a432e2aaea9f96be5a0b2eeaa420759ccd6f7eb2..8c3d1eefba8cc57a3cfb5019747aacae35866383 100644 (file)
@@ -974,9 +974,12 @@ create_options = 0x%x root_dir_fid = 0x%x\n", flags, desired_access, file_attrib
        SOFF_T(p, 0, get_allocation_size(fsp,&sbuf));
        p += 8;
        SOFF_T(p,0,file_len);
-       p += 12;
+       p += 8;
+       if (flags & EXTENDED_RESPONSE_REQUIRED)
+               SSVAL(p,2,0x7);
+       p += 4;
        SCVAL(p,0,fsp->is_directory ? 1 : 0);
-       
+
        DEBUG(5,("reply_ntcreate_and_X: fnum = %d, open name = %s\n", fsp->fnum, fsp->fsp_name));
 
        result = chain_reply(inbuf,outbuf,length,bufsize);
@@ -1454,6 +1457,11 @@ static int call_nt_transact_create(connection_struct *conn, char *inbuf, char *o
        SOFF_T(p, 0, get_allocation_size(fsp,&sbuf));
        p += 8;
        SOFF_T(p,0,file_len);
+       p += 8;
+       if (flags & EXTENDED_RESPONSE_REQUIRED)
+               SSVAL(p,2,0x7);
+       p += 4;
+       SCVAL(p,0,fsp->is_directory ? 1 : 0);
 
        DEBUG(5,("call_nt_transact_create: open name = %s\n", fname));