Subject: Re: Out of file structures

From: Jeremy Allison <[email-masked]>
Date: Wed, 14 Jul 1999 10:54:15 +1000

Michael Reinelt wrote:

> is there already a solution to the "ERROR! Out of file
> structures"-problem? I get this error in two situations, one being a
> read from an NT-Workstation, the other being a write access.

This is a known bug. Here is the fix that'll be in
2.0.5.

Sorry for the problem,

Regards,

        Jeremy Allison,
        Samba Team.

Index: smbd/nttrans.c
===================================================================
RCS file: /data/cvs/samba/source/smbd/nttrans.c,v
retrieving revision 1.59.2.35.2.1
retrieving revision 1.59.2.35.2.3
diff -u -r1.59.2.35.2.1 -r1.59.2.35.2.3
--- nttrans.c   1999/05/19 19:19:35     1.59.2.35.2.1
+++ nttrans.c   1999/06/23 01:06:25     1.59.2.35.2.3
@@ -784,14 +784,13 @@
                        if(errno == EISDIR) {
 
                                /*
-                                * We only fall back to directory open if no
oplock was
-                                * requested and no read/write data was
requested.
+                                * Fail the open if it was explicitly a
non-directory file.
                                 */
 
-                               if(oplock_request || (desired_access &
(FILE_READ_DATA|FILE_WRITE_DATA|
-                                                                                              
FILE_APPEND_DATA|FILE_READ_ATTRIBUTES|FILE_READ_EA|
-                                                                                              
FILE_WRITE_ATTRIBUTES|FILE_WRITE_EA))) {
+                               if (create_options & FILE_NON_DIRECTORY_FILE) {
                                        SSVAL(outbuf, smb_flg2,
FLAGS2_32_BIT_ERROR_CODES);
+                                       file_free(fsp);
+                                       restore_case_semantics(file_attributes);
                                        return(ERROR(0,
0xc0000000|NT_STATUS_FILE_IS_A_DIRECTORY));
                                }
        
------------end patch------------------------------
-- 
--------------------------------------------------------
Buying an operating system without source is like buying
a self-assembly Space Shuttle with no instructions.
--------------------------------------------------------