summaryrefslogtreecommitdiff
path: root/source3/smbd
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r15088: Remove all time() and gettimeofday() calls out of the mainlineJeremy Allison4-26/+17
packet processing code. Only do these when needed (ie. in the idle timeout code). We drop an unneccessary global here too. Jeremy. (This used to be commit 8272a5ab0605fcf95527143c4f909aa1008e5b94)
2007-10-10r15084: Try and squeeze more out of the non-read/write code path.Jeremy Allison1-3/+12
Jeremy. (This used to be commit 23dcff4d50d1d35b7ddee0d0cb79c16a312f179c)
2007-10-10r15083: Using talloc with destructors is nice and all, but in thisJeremy Allison1-14/+14
case it's in a performace critical path and it *hurts* us. Go back to plain malloc/free with an explicit destructor call. Jeremy. (This used to be commit 1c99aed563c29e1b3d70939878af747a0660bfec)
2007-10-10r15035: It seems that many preprocessors do not like comments in macro args..Volker Lendecke1-1/+4
(This used to be commit efc833dcba052e52c46eeba71a1ebe248be9cb05)
2007-10-10r15030: On a performace hunt... Remove as many extraneousJeremy Allison4-29/+25
memset's as possible. Jeremy. (This used to be commit 1217ed392b75aa8bfefa9c3f1ec5fa3bba841ee0)
2007-10-10r15022: Fix core dumps on normal server exit.Jeremy Allison2-9/+9
Jeremy. (This used to be commit 13c3abf03187f84874b5754b54de5d3fe2dea188)
2007-10-10r15020: Fix issue with samba4 netbench torture tester,Jeremy Allison1-1/+8
it sends break replies to "break to none from level2" requests and it shouldn't. Just don't log a debug level zero message. Jeremy. (This used to be commit dc6a13da33a031d0c2374b692737dbe9215f0f74)
2007-10-10r15018: Merge Volker's ipc/trans2/nttrans changes overJeremy Allison9-894/+1561
into 3.0. Also merge the new POSIX lock code - this is not enabled unless -DDEVELOPER is defined. This doesn't yet map onto underlying system POSIX locks. Updates vfs to allow lock queries. Jeremy. (This used to be commit 08e52ead03304ff04229e1bfe544ff40e2564fc7)
2007-10-10r14989: Fix from Mathias Dietz <MDIETZ@de.ibm.com>. EPERM can beJeremy Allison1-1/+1
a valid return from getting an xattr. Don't disable if we get it. Jeremy. (This used to be commit 7769b678f22d8ab4aa8aef55966813355bf2ce6d)
2007-10-10r14986: Fix OS/2 directory delete bug found by kukks.Jeremy Allison2-8/+30
(Thanks a lot for all your hard work on this). We were caching the results of *all* directory scans, not just the results that match the client wildcard. This actually made no sense, as only matches on the client wildcard can be returned to the client and so might need to be searched for in the cache. This fixes the directory cache to only cache entries that we return to the client. Jeremy. (This used to be commit c88af597d042390ff11b26fe802b0b10d0faa6ce)
2007-10-10r14954: Fix #3569 based on William Jojo's work. AIX alsoJeremy Allison1-1/+1
has the linear posix locking issue which causes CLEAR_IF_FIRST to cause performance problems. As we know we're in a daemon architecture with long-lived parent we can avoid this in the Samba case. Add a comment explaining this. Jeremy. (This used to be commit 3cd5c3df0d1b98dfa90663973ab13b5d3dbf737e)
2007-10-10r14898: This change is an attempt to improve the quality of the information thatJames Peach3-79/+89
is produced when a process exits abnormally. First, we coalesce the core dumping code so that we greatly improve our odds of being able to produce a core file, even in the case of a memory fault. I've removed duplicates of dump_core() and split it in two to reduce the amount of work needed to actually do the dump. Second, we refactor the exit_server code path to always log an explanation and a stack trace. My goal is to always produce enough log information for us to be able to explain any server exit, though there is a risk that this could produce too much log information on a flaky network. Finally, smbcontrol has gained a smbd fault injection operation to test the changes above. This is only enabled for developer builds. (This used to be commit 56bc02d64498eb3faf89f0c5452b9299daea8e95)
2007-10-10r14883: add 'smbd:sharedelay' option, so that we can speed up BASE-DENY2 in ↵Stefan Metzmacher1-1/+8
make test as done in samba4 metze (This used to be commit b98dd258a74a1e1b4e967e6176a5a92986d03123)
2007-10-10r14855: Various fixes:Gerald Carter1-7/+9
* depreacte 'acl group control' after discussion with Jeremy and implement functionality as part of 'dos filemode' * fix winbindd on a non-member server to expand local groups * prevent code previously only used by smbd from blindly turning _NO_WINBINDD back on (This used to be commit 4ab372f4cab22225716b5c9a9a08f0c1dbc9928d)
2007-10-10r14849: Fix >= that should be >. Too strict conditionJeremy Allison1-2/+2
checked by Volker. Jeremy. (This used to be commit 9a763da07385bf9af437cab8dd680f2e13fca3c3)
2007-10-10r14847: Tell static checkers that exit_server() doesn'tJeremy Allison1-5/+10
return. Jeremy. (This used to be commit 9c5e26a56aaaf1143b43e61d208ddaeb96f2ffcb)
2007-10-10r14790: Fix possible null deref. Coverity #277.Jeremy Allison1-1/+3
Jeremy. (This used to be commit 2454af392a71989ecddb2dbb17a9217658102523)
2007-10-10r14746: Add the Samba4 replacements for opendir/readdir etc. toJeremy Allison1-1/+1
Samba3 - with some 64-bit macro madness. Attempt to fix the broken directory handling in the *BSD-of-the-month club. Jeremy. (This used to be commit fd98427f64f4206c01f16f82fadf24f5863878db)
2007-10-10r14695: Patch from Björn Jacke:Volker Lendecke1-5/+7
- add DMAPI/XDSM support for AIX - find JFS DMAPI libs on Linux when only they are available Volker (This used to be commit b6b72f8c6a03001ae75457c9e7a78e189bea5a3f)
2007-10-10r14669: Remove duplicate source caused by running patch(1) once too often.James Peach1-272/+0
(This used to be commit 0ebbfc867c71002eaf921f4f4d8aa7d7b78973a7)
2007-10-10r14668: Set the FILE_STATUS_OFFLINE bit by observing the events a DMAPI-basedJames Peach4-1/+614
HSM is interested in. Tested on both IRIX and SLES9. (This used to be commit 514a767c57f8194547e5b708ad2573ab9a0719c6)
2007-10-10r14618: add --no-process-group to all server programmsStefan Metzmacher1-2/+5
to make the following possible: timelimit 20000 bin/nmbd -F -S --no-process-group timelimit 20000 bin/smbd -F -S --no-process-group this is needed to 'make test' working without losing child processes metze (This used to be commit c3a9f30e2a12cc852c9fa3a7d161f5c6ee0694ce)
2007-10-10r14602: Fix another logic bug in new oplock handling. JustJeremy Allison1-12/+17
because lck->num_share_modes != 0 doesn't mean that there *are* other valid share modes. They may be all marked "UNUSED" or be deferred open entries. In that case don't downgrade the granted oplock to level2 needlessly - a client can have an exclusive oplock in this case. The original code handled this correctly in the lck->num_share_modes == 0 case but not in the case where there were no valid share modes but lck->num_share_modes != 0. I'll clean up my Samba4 torture tester for this and commit it tomorrow. Jeremy. (This used to be commit 306061c93d9181262298516fefd83444f5a65ce5)
2007-10-10r14600: Refactor capability interface from being IRIX-specific to using onlyJames Peach2-2/+2
the POSIX interface. Note that this removes support for inherited capabilities. This wasn't used, and probably should not be. (This used to be commit 763f4c01488a96aec000c18bca313da37ed1df1b)
2007-10-10r14596: Fix a logic bug with multiple oplock contention.Jeremy Allison1-18/+33
The sad thing is the core of this bug fix is just removing a paranoia "exit_server" call, as the rest of the logic was already correct :-). Lots of comments to explain the logic added. I will look at adding tests to exercise this, might be possible. Jeremy. (This used to be commit c2488db727e1a00f112be7b169de9e6208e311f3)
2007-10-10r14574: Allow use of sendfile as long as the write cache has not been enabledJames Peach1-3/+4
on the particular file we are performing I/O on, irrespective of whether the write cache is globally enabled (This used to be commit 0809e2cb1dfff1cd0e8631b23b415cb2d8a67312)
2007-10-10r14559: Oplocks have changed, process_smb can be static againVolker Lendecke1-3/+2
(This used to be commit 19e9bc03f81d8d000b683cf5c5f478ba25ddeb0d)
2007-10-10r14460: SMBexit closes by pid and vuid. Tested with smbtorture.Jeremy Allison2-4/+4
Jeremy. (This used to be commit 71e81580421225d5b35a25d46a7b6064a826685c)
2007-10-10r14387: Try and fix the coverity issues (#53, #54) with negativeJeremy Allison2-6/+6
sink by ensuring all uses of rpcstr_push are consistent with a size_t dest size arg. Jeremy. (This used to be commit f65d7afe1977d9d85046732842f9643716c15088)
2007-10-10r14357: Try and fix Coverity #169 by making the pointerJeremy Allison1-4/+6
aliasing clearer. This isn't a bug but a code clarification. Jeremy. line, and those below, will be ignored-- M source/smbd/posix_acls.c (This used to be commit b8397c9f33424e0d1ed3ff849e1c99812f978000)
2007-10-10r14336: Try and quieten coverity #53 and #54. Make it obviousJeremy Allison1-2/+2
we're using -1 as a special size_t case by casting. Jeremy. (This used to be commit 415530bd082bf351f5e4c1fd32408f123ed77f85)
2007-10-10r14229: Something Coverity hasn't caught (yet) but I've gottenJeremy Allison1-3/+5
sensitive to null derefs. get_timed_events_timeout() can potentially return NULL. Cope with this. Jeremy. (This used to be commit 04838078723613628b298b7a87622df30432cf64)
2007-10-10r14207: Convert the lp_acl_compatibility() param into an enum.James Peach1-3/+3
(This used to be commit 5429c495c538e416010cf44e1d6fb771770a72ae)
2007-10-10r14170: Paranioa fix for sesssetup.Jeremy Allison1-0/+5
Fix Coverity bug #26. Guard against NULL ref. Jeremy. (This used to be commit c0f906ac8de850f4566b6b3be4e3c7d245e6e252)
2007-10-10r14168: Fix Coverity #219. I think this is a false coverityJeremy Allison1-1/+4
warning as it seems to get confused with assignment and comparison. Clarify the code anyway. Jeremy. (This used to be commit 754818f8cc0849bddf84b7a534cd65e8dcd932ac)
2007-10-10r14130: Remove make_server_info_pac alltogether, make_server_info_info3 doesGünther Deschner1-3/+3
already do what we need. Guenther (This used to be commit 773e33c9717ae04f48983ddc49f7619a97523603)
2007-10-10r14112: * fix checks on return code from register_vuid() which could actuallyGerald Carter2-5/+20
fail and we would still return success in the SMBsesssetup reply :-( * Make sure to create the local token for the server_fino struct in reply_spnego_kerberos() so that register_vuid() does not fail. (how did this ever work?) (This used to be commit 8dafa45b97020d1aceb027a85e18401c965bf402)
2007-10-10r14111: Work around additional typedefs in the gamin implementationJames Peach1-4/+11
of the FAM API. (This used to be commit dc96ce90e50da9a82f941b0b534c0681c8477f5e)
2007-10-10r14075: * add support for long variable names in smb.conf in the form of %(....)Gerald Carter1-4/+9
* add support for %(DomainSID) * replace standard_sub_XXX() functions with wrappers around their alloc_sub_XXX() counterparts * add support for using SIDs in read list, et. al. (anything that is checked by nt_token_contains_name_in_list()) (This used to be commit 71d960250d2c6d01096a03e98884d3f9c395baa0)
2007-10-10r13983: Fix Coverity bug # 111Volker Lendecke1-0/+1
(This used to be commit 08d7fd31ab250bc6ba3922b36aa7b0cfef1e5bf1)
2007-10-10r13980: Fix Coverity bug # 63. Jeremy, could you take a look at this?Volker Lendecke1-5/+16
Thanks, Volker (This used to be commit 49043a756dfa6a973d5605f42068df351a4a9ab5)
2007-10-10r13916: Fix Coverity bug #29. Looks like my code. I wonder how much there is ↵Volker Lendecke1-0/+1
still lurking... Volker (This used to be commit 1345a52794f4f55173ed677af3d0714e88bf17c6)
2007-10-10r13915: Fixed a very interesting class of realloc() bugs found by Coverity.Jeremy Allison6-64/+216
realloc can return NULL in one of two cases - (1) the realloc failed, (2) realloc succeeded but the new size requested was zero, in which case this is identical to a free() call. The error paths dealing with these two cases should be different, but mostly weren't. Secondly the standard idiom for dealing with realloc when you know the new size is non-zero is the following : tmp = realloc(p, size); if (!tmp) { SAFE_FREE(p); return error; } else { p = tmp; } However, there were *many* *many* places in Samba where we were using the old (broken) idiom of : p = realloc(p, size) if (!p) { return error; } which will leak the memory pointed to by p on realloc fail. This commit (hopefully) fixes all these cases by moving to a standard idiom of : p = SMB_REALLOC(p, size) if (!p) { return error; } Where if the realloc returns null due to the realloc failing or size == 0 we *guarentee* that the storage pointed to by p has been freed. This allows me to remove a lot of code that was dealing with the standard (more verbose) method that required a tmp pointer. This is almost always what you want. When a realloc fails you never usually want the old memory, you want to free it and get into your error processing asap. For the 11 remaining cases where we really do need to keep the old pointer I have invented the new macro SMB_REALLOC_KEEP_OLD_ON_ERROR, which can be used as follows : tmp = SMB_REALLOC_KEEP_OLD_ON_ERROR(p, size); if (!tmp) { SAFE_FREE(p); return error; } else { p = tmp; } SMB_REALLOC_KEEP_OLD_ON_ERROR guarentees never to free the pointer p, even on size == 0 or realloc fail. All this is done by a hidden extra argument to Realloc(), BOOL free_old_on_error which is set appropriately by the SMB_REALLOC and SMB_REALLOC_KEEP_OLD_ON_ERROR macros (and their array counterparts). It remains to be seen what this will do to our Coverity bug count :-). Jeremy. (This used to be commit 1d710d06a214f3f1740e80e0bffd6aab44aac2b0)
2007-10-10r13771: BUG 3534: ignore lines in the username map file with no right hand ↵Gerald Carter1-2/+4
list rather than bailing out (This used to be commit acff5163ca7be59e01438f7cf63faef9ed54b820)
2007-10-10r13759: As pointed out by Volker, it isn't much good creatingJeremy Allison1-0/+15
a new empty acl in remove_posix_acl if you don't bother to set it on the file in question :-). Jeremy. (This used to be commit 12eccc8fe4ed043698970de42921757eb0448c84)
2007-10-10r13748: Don't reference memory after we just freed it (Doh!).Jeremy Allison1-2/+3
Thanks to tridge's changes to the directory delete on close tests for catching this. Jeremy. (This used to be commit 01ef957d4846191071f95393e6e76e48d4c6aa24)
2007-10-10r13724: Remove unused variable. Bug #3559 fromJeremy Allison1-2/+2
jason@ncac.gwu.edu. Jeremy. (This used to be commit 0295ed3d5c3bb34ef29d01100a6156a754377930)
2007-10-10r13711: * Correctly handle acb_info/acct_flags as uint32 not as uint16.Günther Deschner1-3/+3
* Fix a couple of related parsing issues. * in the info3 reply in a samlogon, return the ACB-flags (instead of returning zero) Guenther (This used to be commit 5b89e8bc24f0fdc8b52d5c9e849aba723df34ea7)
2007-10-10r13694: Committing patch from Aleksey Fedoseev <aleksey at fedoseev dot net> ↵Volker Lendecke1-1/+1
to NULL out a pointer after talloc_destroy(). Volker (This used to be commit 788e52eb5d17a8f5b41b6ad5244ccf448fc81a36)
2007-10-10r13675: * patch from Bjoern JACKE <samba@j3e.de> to remove theGerald Carter1-15/+4
artificial RO bit on directories in user profiles when profile acls = yes. (This used to be commit b698e83a82f96db4a4a6ffa4b61af50c943deff0)