summaryrefslogtreecommitdiff
path: root/source3
AgeCommit message (Collapse)AuthorFilesLines
2000-04-28Ok - this is the *third* implementation of this (third time's the charm :-).Jeremy Allison6-1140/+148
This implementation keeps all POSIX lock records in a separate in memory tdb database only known about in locking/posix.c. In addition, the pending close fd's are also held in a tdb which has an array of fd's indexed by device and inode. The walk-split code uglyness has been moved to posix.c from brlock.c, which is the only place that needs to know about it, and the extra functions hacked into brlock to expose internal state have been removed. This implementation passes smbtorture locktest4, the only thing I need to check now for completeness is what to do about lock upgrade/downgrades which Win32 allows under some *very* strange circumstances. Jeremy. (This used to be commit 3f655de1c764b9ee1472a111621d4317f19f624d)
2000-04-28Split off of POSIX locking into separate unit as Andrew requested.Jeremy Allison1-0/+1208
Done so I don't lose my edits... :-). Jeremy. (This used to be commit 31a57be658f3fa3569a552e9c5d30174f5a51649)
2000-04-28Added info level 1005 to netsharegetinfo (is the share a DFS root)Shirish Kalele5-2/+52
Added dfs_server announcement in set_default_server_announce_type() (This used to be commit 99d07e13520b04d99999938d259d56fa65c8a8ea)
2000-04-28Added tdb_get/set_int_byblob, which takes a size_t len and then implementedJeremy Allison2-7/+21
the tdb_get/set_int string functions in terms of them. Will be useful in storing POSIX pending close records (which are ints but indexed by dev/inode pairs). Jeremy. (This used to be commit d69e4c6a48746459f973144393529b1f40680d2f)
2000-04-28Forgot to close when "posix locking" is set to False.Jeremy Allison1-2/+5
Jeremy. (This used to be commit b812f09ba8ef074c9ff0747ea03a1e33f1ebbe71)
2000-04-28Added optimization where we are single opener (don't free POSIX locks).Jeremy Allison1-1/+21
Jeremy. (This used to be commit a2deb91128d59ad04f4ec858ffe4e30f2afb0edd)
2000-04-28Made changes suggested by Andrew review.Jeremy Allison3-53/+54
fd_close now calls fd_close_posix() directly. set_posix_lock/release_posix_lock() now handle the reference counting. More changes due when this gets moved to the file locking/posix.c Jeremy. (This used to be commit 239abd48f049c6a8d2bbc0636eacf347ab77588c)
2000-04-27Ok - this is more subtle than it looks :-).Jeremy Allison5-13/+17
When a file is being closed, once it passes the fnum and tid tests then the locking context should be ignored when removing all locks. This is what is done in the brl close case, but when you have outstanding POSIX locks, then you cannot remove all the brl locks in one go, you have to get the lock list and call do_unlock individually. As this uses global_smbpid as the locking context, you need to make sure that this is set correctly for the specific lock being removed. I now do this by storing the smbpid in each entry in the unlock list returned from the query call. I removed the smbpid from fsp (not needed) and things seem ok (even with the stupid smbpid tricks that smbtorture plays :-). Jeremy. (This used to be commit 6baa96bb466915cc17e8cbad50254d6bd47b967b)
2000-04-27Fixed subtle unlocking bug when a file is closed. We need to store theJeremy Allison6-18/+39
smbpid used when a file was opened in the files_struct. Else we use the wrong global_smbpid when we are closing the file and trying to remove the brl locks - this causes the brl locks to be left when the file is closed as the samba_context check fails. Jeremy. (This used to be commit 2746e5602e493e5b022764b4b839eb4d2f14363b)
2000-04-27Did the rewrite Andrew wanted where all knowledge of POSIX locking isJeremy Allison4-122/+181
removed from the smbd/open.c code. We now use a dlink list of structures indexed by dev/inode to store all pending fd's for close. This could be rewritten to use lib/hash.c if this is discovered to be too slow in use. Andrew, please take a look and let me know if this is what you had in mind. Jeremy. (This used to be commit 0487841120a7584da9a2b83b9574562c415d7024)
2000-04-27Fixed crash bugs Andrew pointed out with LOCK4 smbtortureJeremy Allison3-15/+16
test. Was miscounting posix locks, plus was not taking into account the case where other_fsp == fsp in the 'move locks' case. DOH ! This code will be re-written anyway :-). Jeremy. (This used to be commit 5278ec016cb24d8263fe6e7c1d389f466270ef24)
2000-04-27Fixed range check on writeX.Jeremy Allison1-1/+4
Jeremy. (This used to be commit 9cde198108439358e99128fa9a1b3000e33f5414)
2000-04-27Tidyup of smbecho.Jeremy Allison1-2/+4
Jeremy. (This used to be commit 4a4b7a994bbe327216f736133edc51cf9a351716)
2000-04-27quick hack to get smbtorture working againAndrew Tridgell1-0/+2
(This used to be commit 2d37c1f98f45646546ee76743f9df90b1c0b01ae)
2000-04-25Added the hard code :-).Jeremy Allison4-78/+469
HEAD should now map brl locks correctly into POSIX locks, including the really nasty case of large range unlock. There is a lot of pretty ASCII art in locking/brlock.c explaining exactly how this code works. If it is unclear, please ask me. Jeremy. (This used to be commit 135855dbd3b8934a49229b81646cd4469acba926)
2000-04-25moved trans2.h and nterr.h into includes.h with all our other includesAndrew Tridgell32-85/+97
(This used to be commit d7cd7c88fdabb01d9e40ae8a657737907a21ac37)
2000-04-25split clientgen.c into several partsAndrew Tridgell11-3062/+3300
the next step is splitting out the auth code, to make adding lukes NTLMSSP support easier (This used to be commit 10c5470835b43116ed48b3137c3b9cc867a20989)
2000-04-25added TDB_MODIFY flag - patch from from lukeAndrew Tridgell3-5/+30
(This used to be commit 90b574296e06cd6ed4fedc1e5a8ae412a5e78b45)
2000-04-25fixed a memory leak in nmblookupAndrew Tridgell1-0/+2
(This used to be commit 49865ea06c96b01a5e5dec84d64b78bf26129be3)
2000-04-25fixed a memory leak of devmode in spoolssAndrew Tridgell1-0/+3
this stuff is screaming out for talloc() rather than malloc/free (This used to be commit e9576124cbe8322ed7bee9f4e72b5d1753ee0bac)
2000-04-25don't qsort a list less than 2 entriesAndrew Tridgell1-1/+3
(This used to be commit 6faa3c23ae6d8aab52f8d6689e04bde9b3029804)
2000-04-24Added the code that keeps fd's open across a close if there are other fsp'sJeremy Allison3-37/+144
open on the same dev/inode pair with existing POSIX locks. This is done at the smbd/open layer, so smbd just calls fd_close() and the transfer of any open fd's is done under the covers of fd_close(). When an fsp is closed and no other fsp's open on the same dev/inode pair have existing POSIX locks then all fd's associated with this fsp are closed. Now only the hard part of doing the POSIX range unlock code when read locks overlap remains for full POSIX/SMB lock integration.... Jeremy. (This used to be commit 1df48ed55ee303b6d84d7277fd79761cfe5f7052)
2000-04-24Now that fsp's are created on successful file open, the structure memberJeremy Allison12-36/+47
fsp->open is no longer needed (if an fsp pointer is valid, then it's open :-). NB for Luke, this patch also did not apply to TNG. TNG is not yet identical w.r.t file serving with HEAD. This makes it impossible for me to help maintain TNG. Please fix asap. lib/substitute.c: Removed unused variable (pidstr). Jeremy. (This used to be commit 389b700a26e8a308a0dff6fc038c38068aa0119a)
2000-04-24dump in a binary formatAndrew Tridgell1-3/+45
(This used to be commit 41af3232dba90832684ad8260ce0bb05e077cb02)
2000-04-24use an size_t not a ssize_t when checking for out of bounds errorsAndrew Tridgell1-1/+1
(This used to be commit 044af3cf977e3172b3b1ce3f71457d5b0a4fc1b2)
2000-04-24moved INSURE hook into util.cAndrew Tridgell1-23/+0
(This used to be commit 2fba24ef0e4cae64c5a179370c83d8bbf4e70bb8)
2000-04-24fixed another memory leakAndrew Tridgell1-0/+1
(This used to be commit 780713f67a848ade49c523cda96015ab46337cde)
2000-04-24fixed a parameter bug found by insureAndrew Tridgell1-1/+1
(This used to be commit a559a8066fb162c4da0a5046c49a105eabf131d9)
2000-04-24moved the INSURE hook into util.cAndrew Tridgell1-0/+26
(This used to be commit 8c726b9764bac0bc95cf9877e172c9e1262e576d)
2000-04-23more pstring/fstring errors found by insureAndrew Tridgell1-15/+16
(This used to be commit ba1931bb6596b538549e712cb8898b1ed19f5adc)
2000-04-23fixed a locking database bug - it was actually harmless except thatAndrew Tridgell1-2/+10
smbstatus could display the wrong filename when files change dev/inum after a rename (This used to be commit 990b16fcf7af74f376db157a3e5de7bb68c1a4a1)
2000-04-23don't close high fd's in smbrun when using insure (prevents closingAndrew Tridgell1-1/+3
error fd) (This used to be commit defbedd198f02f7bb9af70436f5a25ab754b5fb6)
2000-04-23another fstring/pstring fixAndrew Tridgell1-1/+1
(This used to be commit 91ed7d8ffe8208d06191c64f5332954ec6bf75da)
2000-04-23fixed another spoolss memory leakAndrew Tridgell2-2/+2
I am falling in love with insure - it is finding _lots_ of memory problems (This used to be commit d9b4076293a4d37e1558ad63a3f522385ee3e521)
2000-04-23fixed a memory leak I caused last week with my lines[] changesAndrew Tridgell1-6/+1
(This used to be commit 4c889d08aed3cebba54abbc96f28a2d1c545a4b5)
2000-04-23split out standard_sub_basic() again to fix a bug where %p was beingAndrew Tridgell1-14/+29
substituted in the loadparm code and thus leaving lpq with no printer (This used to be commit b7c7a4d564d36885aa7c3efb2a87caec470df7fe)
2000-04-23we can't pass a fstring to a routine expecting a pstringAndrew Tridgell1-1/+1
(This used to be commit 8af70f288723e4597bc8639fc0cbec44af2e50c7)
2000-04-23check for a valid snum when running a printing commandAndrew Tridgell1-0/+5
(This used to be commit 381ddb464fd0da671d567177f1ded10f67952692)
2000-04-23Makefile.in change for split of printfsp.cAndrew Tridgell1-1/+2
(This used to be commit 980a81651a043f2281f6a8b863d31438212b584a)
2000-04-23split fsp specific routines out of printing.c to fix linking problemAndrew Tridgell2-65/+91
in TNG (This used to be commit 82df25b28b94b0041676fb433e0e677acb544579)
2000-04-23fixed two uninitialised memory referencesAndrew Tridgell1-2/+2
(This used to be commit e4ddd1a4a96b7f723d3d92e4334f4033e1dbc8a8)
2000-04-23trick to get full stack trace when using the free version of insureAndrew Tridgell1-0/+24
(This used to be commit bb9b3e03deebe23cf3fe10c2cb9b67a730e086a2)
2000-04-23insure caught an uninitialised memory reference - ensure it starts asAndrew Tridgell1-0/+2
zero (This used to be commit 53077295b76487a6eafc6b14b69a91074a02aa35)
2000-04-23avoided a memory leak in the ubi code by deleting a mangled cacheAndrew Tridgell1-1/+11
entry before adding to ensure that we don't ever add a duplicate entry this code can be removed when ubi gets fixed (This used to be commit 062d79bf8ba5308803393c7b9140d1f77db3690f)
2000-04-23fixed a prs memory leak (weren't freeing input buffer)Andrew Tridgell1-0/+1
(This used to be commit be7186b0dd2779fc9f98b4c9f77874ef3ded37d6)
2000-04-23if using insure then don't close fd 2Andrew Tridgell1-1/+4
(This used to be commit 1c6322473afcf9065fa25777d1b0627f133af3f6)
2000-04-22return NULL for a zero size memdupAndrew Tridgell1-0/+1
(This used to be commit 9416b58b9c2ff898cdae2cb81ab1e150ef9f0e89)
2000-04-22don't copy a null groups listAndrew Tridgell1-2/+6
(This used to be commit d0fc1675df35e65488a19d7f5929792fba347b07)
2000-04-22fixed overlapping strcpy() found by insureAndrew Tridgell1-9/+6
(This used to be commit 1106fa7f24d229c3877263b7a7dde359556435e6)
2000-04-22fixed uninitialised snumAndrew Tridgell1-0/+1
(This used to be commit 14251aab2ec00aa7f3e6a6e791e78732cb5a9eda)