summaryrefslogtreecommitdiffstats
path: root/source/smbd/close.c
Commit message (Collapse)AuthorAgeFilesLines
* Added code to let NT do a 'delete on close' request on an openJeremy Allison1999-01-211-1/+20
| | | | | | directory handle. WinCenter (multi-user NT system) is doing this. This code still needs testing.... Jeremy.
* lib/signal.c: Added CatchChildLeaveStatus() call needed in smbd/open.c and ↵Jeremy Allison1998-12-291-7/+10
| | | | | | | | | | | | | | | | | | | | | | | smbd/chgpasswd.c. smbd/chgpasswd.c smbd/open.c: Ensure that we replace SIGCLD handler with CatchChildLeaveStatus() *before* we expect to reap a child status - and reset it to CatchChild() after we've done the sys_waitpid(). The original CatchChild() code would eat the status code from the zombie in the signal handler, meaning that the sys_waitpid() calls in check_access_allowed_for_current_user() and chgpasswd would never return a status. smbd/open.c: smbd/reply.c: smbd/close.c: Check error return on close() calls - ensure a valid error return is sent back to the client. This catches the "file truncated" bug when a user has run out of quota (or space) and the ENOSPC error is returned on the *close()* call, not the write() (eg. on an nfs mounted drive). smbd/fileio.c: Added check for ESPIPE on sys_lseek() in file_seek() to allow people to use Windows clients to communicate with UNIX fifo's (like they could in 1.9.18). Jeremy.
* lib/access.c: Added checks for invalid '*' or '?' characters in hosts ↵Jeremy Allison1998-12-091-8/+3
| | | | | | | | | | allow/deny that could silently deny access. Log them if they occur. smbd/close.c smbd/oplock.c smbd/reply.c: Removed a global oplock variable (hurrah!). Removal of the oplocks flags and any kernel oplocks is now done in either close() or in reply_locking() by calling release_file_oplock(). Jeremy.
* debug string with no %s parameter. oopsLuke Leighton1998-10-271-1/+2
|
* Handle the case where multiple smbd have the file open, some of whomJeremy Allison1998-10-231-2/+11
| | | | | | don't have the ALLOW_DELETE_ON_CLOSE share flag enabled. Told you this was fiddly code :-). Jeremy.
* Reasonably large change to give us *exactly* correct NT delete on close ↵Jeremy Allison1998-10-231-0/+1
| | | | | | | | | | | | | | semantics. This was trickier than it looks :-). Check out the new DELETE_ON_CLOSE flag in the share modes and the new code that iterates through all open files on the same device and inode in files.c and trans2.c Also changed the code that modifies share mode entries to take generic function pointers rather than doing a specific thing so this sort of change should be easier in the future. Jeremy.
* include/smb.h: Added #defines for lots of things - makes our code a *lot* ↵Jeremy Allison1998-10-231-1/+2
| | | | | | | | | | | | | easier to read. lib/util.c: Fixed Luke's set_first_token() function - should return void. smbd/close.c: Move delete_on_close into file_fd_struct structure. smbd/ipc.c: Changed local_machine back to fstring. smbd/nttrans.c: Use defines for mapping share modes. smbd/open.c: Move delete_on_close into file_fd_struct structure, added code for ALLOW_SHARE_DELETE. smbd/reply.c: Use defines for mapping share modes. smbd/trans2.c: Move delete_on_close into file_fd_struct structure. Jeremy.
* Ok - this is the 'expose 64 bit to the clients' checkin.Jeremy Allison1998-09-111-1/+15
| | | | | | | | | | I have tested it by creating a 'holey' 20GB file - checking that it shows up correctl in the NT file view (it does) and am busily copying it to NULL: on the NT box. All good so far.... :-). Also implemented NT 'delete on close' semantics. Jeremy.
* Bugfix for leak in reference counted file struct.Jeremy Allison1998-09-051-1/+2
| | | | | Added "nt smb support" parameter to allow NT SMB's to be turned off. Jeremy.
* configure.in, configure: include/config.h.in: Added stropts and poll.Jeremy Allison1998-08-311-2/+2
| | | | | | | | | | | include/smb.h: Moved old typedefs of uint8 etc. into include/includes.h where all the other defines live (changed them from typedefs to defines). Other changes : changed from using uint32 to SMB_DEV_T and SMB_INO_T in preparation for moving to size independed (ie. 64 bit clean) device and inode access. Stat call wrapper comes next :-). Jeremy.
* Fixes for the problem in blocking locks with file_fsp returning theJeremy Allison1998-08-211-2/+2
| | | | | | chain_fsp on close (if you don't know what this means, consider yourself lucky - this one took a day to track down :-). Jeremy.
* Makefile.in: Moved blocking lock code into smbd/blocking.c for link purposes.Jeremy Allison1998-08-191-4/+2
| | | | | | | | | | | include/includes.h: Added nterr.h. locking/locking.c: Moved blocking lock code into smbd/blocking.c for link purposes. smbd/close.c: Added blocking lock removal to file close. smbd/filename.c: Tidied up unix_convert() so I could read it (:-) in preparation for the stat_cache code. smbd/nttrans.c: Added WRITE_ATTRIBUTES check. smbd/reply.c: Fixed multibyte char problem in wildcard mask. Jeremy.
* this completes the splitup of server.c.Andrew Tridgell1998-08-171-0/+170
the splitup was done with an axe, not a scalpel, so there are some rough edges. I mostly wanted to get the general form right with fine tuning of what goes where to come later. Still, this is better than what we had before where server.c was a general repository for anything that didn't fit elsewhere.