summaryrefslogtreecommitdiff
path: root/source3/smbd
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r17800: Start using struct timespec internally for file timesJeremy Allison2-120/+115
on the wire. This allows us to go to nsec resolution for systems that support it. It should also now be easy to add a correct "create time" (birth time) for systems that support it (*BSD). I'll be watching the build farm closely after this one for breakage :-). Jeremy. (This used to be commit 425280a1d23f97ef0b0be77462386d619f47b21d)
2007-10-10r17676: Fix printing bug found by kukks. Don't copy a returnJeremy Allison1-1/+1
value into an auto on the stack that gets removed when we return from the frame :-). Jeremy. (This used to be commit 85bf8a16116e5eb9d4400e809531737d45890abb)
2007-10-10r17604: Fix a bug caught by g++.Volker Lendecke1-1/+1
Jeremy, please check this! Volker (This used to be commit 8117a7b3bf3f273dd018c42864b3136dec47ec79)
2007-10-10r17569: Make 'max smbd processes' more robust. Counting on the child to ↵Volker Lendecke2-80/+78
decrement a tdb entry is not the most reliable way to count children correctly. This increments the number of children after a fork and decrements it upon SIGCLD. I'm keeping a list of children just for consistency checks, so that we at least get a debug level 0 message if something goes wrong. Volker (This used to be commit eb45de167d24d07a218307ec5a48c0029ec097c6)
2007-10-10r17568: Reformatting -- more than 100 cols is too much :-)Volker Lendecke1-3/+6
(This used to be commit 2a66abca02b5e95b66ab336f0d0e3977676d4540)
2007-10-10r17541: When returning a trans2 request, if the "max dataJeremy Allison3-27/+45
bytes returned" is less than the amount we want to send, return what we can and set STATUS_BUFFER_OVERFLOW (doserror ERRDOS,ERRbufferoverflow). Required by OS/2 to handle EA's that are too large. It's hard to test this in Samba4 smbtorture as the max data bytes returned is hard coded at 0xffff (as it is in the Samba3 client libraries also). I used a custom version of Samba4 smbtorture to test this out. Might add a "max data bytes" param to make this testable in the build farm. Confirmed by "Guenter Kukkukk (sambaos2)" <sambaos2@kukkukk.com> and Andreas Taegener <atsamba11@eideltown.de> that this fixes the issue. Jeremy. (This used to be commit ff2f1202b76991a404dae8df17c36f8135c8dc51)
2007-10-10r17453: Fix msdfs RPC management (this broke with the autogenerated dfs rpcs).Günther Deschner1-0/+1
* Remove "unknown" from dfs_Enum (samba4 dfs IDL updates to follow). * When encountering an unsupported infolevel the rpc server must reply with a dfs_info_0 structure and WERR_OK (observed from w2k3 when talking to nt4). Guenther (This used to be commit f9bef1f08f7d2a4c95c28329ac73e8646f033998)
2007-10-10r17452: Some C++ warningsVolker Lendecke1-5/+5
(This used to be commit e4b8c79a9d6f7323953121887af4f482d04a9228)
2007-10-10r17408: Let us use netgroups even without a NIS domain but just using filesSimo Sorce1-4/+3
(This used to be commit c065341d3ffc9125514f563c63d416cf7c40375f)
2007-10-10r17406: We need to do a translation of winbind separator -> '\\' inVolker Lendecke1-2/+2
lookup_name_smbconf, otherwise force user = domain+administrator can not work. Also attempt to fix the 'valid users = domain+group' bug at the same time. Volker (This used to be commit 255475901c13fde29b1b476560d969cc99712767)
2007-10-10r17402: Added lookup_name_smbconf() to be called when lookingJeremy Allison1-2/+2
up names from smb.conf. If the name is unqualified it causes the lookup to be done in WORKGROUP\name, then "Unix [users|groups]"\name rather than searching the domain. Should fix the problems with "force user" selecting a domain user by preference. Jeremy. (This used to be commit 1e1fcb5eb2ac4bd360461b29f85c07dbf460025d)
2007-10-10r17376: Fix bug #3985 - ensure in msdfs we check for ourJeremy Allison1-14/+8
netbios aliases. Reported by Björn Jacke <bjoern@j3e.de>. Probably needs to be in 3.0.23b (if Björn approves of the fix). Jeremy. (This used to be commit e9e711fe37d9aec28b329dbfe2ad3ebfc1771825)
2007-10-10r17367: Reverting the ab code. Note I'm not saying thisJeremy Allison1-3/+3
code is wrong or bad or anything, just that it needs to be discussed & reviewed on the samba-technical list before we add a platform-specific NFSv4 mapping. That way lies a lot of future pain :-). Jeremy. (This used to be commit 330899ec30ffceb798e3a8362d20e103e20b2897)
2007-10-10r17358: Re-add JFS2 NFS4 ACLs support, move readme for it into AIX-specific ↵Alexander Bokovoy1-3/+3
examples directory. (This used to be commit c085355c323c65ee782516859eed8a76b53e6035)
2007-10-10r17354: Revert -r 17353 per Volker request while gpfs compatibility layer ↵Alexander Bokovoy1-3/+3
code will be released. (This used to be commit 5b1db0151461af18d994359e86c649922fc6de65)
2007-10-10r17353: Add support for JFS2 NFS4/AIXC and GPFS acls based on NFSv4 ACLs.Alexander Bokovoy1-3/+3
(This used to be commit 72312cb2e255301f978455a559461ad83b13b6cb)
2007-10-10r17348: Some C++ warningsVolker Lendecke5-10/+11
(This used to be commit ae6b9b34e59167e3958bfdb9997fa25340b9a0a3)
2007-10-10r17347: Some C++ warnings -- 271 leftVolker Lendecke1-16/+20
(This used to be commit 641dac4f85c0e00484d90726bea1a4cb58c8235c)
2007-10-10r17316: More C++ warnings -- 456 leftVolker Lendecke3-9/+9
(This used to be commit 1e4ee728df7eeafc1b4d533240acb032f73b4f5c)
2007-10-10r17314: Optimisation for POSIX locking. If we're downgradingJeremy Allison1-1/+1
a POSIX lock (applying a read-lock) and we overlap pending read locks then send them an unlock message, we may have allowed them to proceed. Jeremy. (This used to be commit a7a0b6ba50f4cf7c5a0a29809fdff9e1266a29e7)
2007-10-10r17296: Replace the understandable parts of the quotaJeremy Allison1-17/+13
code with become_root_uid_only()/unbecome_root_uid_only() pairs. This code needs working on..... Jeremy. (This used to be commit 0661d4e26614180636bc57de0c48adf8b9ce7a21)
2007-10-10r17295: Back out the become_root_uid_only change on the POSIXJeremy Allison2-13/+12
acls code. I'm pretty sure this was safe, but become_root() does other things to the token stack that become_root_uid_only() does not, and as we're going into a vfs redirectred function I decided it wasn't safe for now. Jeremy. (This used to be commit b3e0f45488595aa96c852dab8e1349631a85dded)
2007-10-10r17294: Make the code a little cleaner. Instead of using the twoJeremy Allison1-12/+12
calls make it : become_root_uid_only() operation unbecome_root_uid_only() saving errno across the second call. Most of our internal change calls can be replaced with these simple calls. Jeremy (This used to be commit 4143aa83c029848d8ec741d9218b3fa6e3fd28dd)
2007-10-10r17293: After the results from the cluster tests in Germany,Jeremy Allison4-18/+0
fix the messaging code to call the efficient calls : save_re_uid() set_effective_uid(0); messaging_op restore_re_uid(); instead of using heavyweight become_root()/unbecome_root() pairs around all messaging code. Fixup the messaging code to ensure sec_init() is called (only once) so that non-root processes still work when sending messages. This is a lighter weight solution to become_root()/unbecome_root() (which swaps all the supplemental groups) and should be more efficient. I will migrate all server code over to using this (a similar technique should be used in the passdb backend where needed). Jeremy. (This used to be commit 4ace291278d9a44f5c577bdd3b282c1231e543df)
2007-10-10r17254: Simple flattening of an if-statement, no logic change.Volker Lendecke1-21/+27
Jeremy, I'm sure you will look at this nevertheless :-) Volker (This used to be commit 3ef34468b55771b6f6b54454fa6c9decc183c565)
2007-10-10r17249: Ensure we only set the FILE_WRITE_DATA on O_TRUNCJeremy Allison1-3/+0
in one place. Jeremy. (This used to be commit f326bae3e269046b6f087626240cddbb5dafb0e4)
2007-10-10r17248: Ensure we definately add the WRITE_DATA on O_TRUNC.Jeremy Allison1-3/+4
Jeremy. (This used to be commit 8eed82d5d5ba34cc0a6b99b9d0df45eec5f788fa)
2007-10-10r17247: When we map generic to specific we need to rememberJeremy Allison1-2/+5
to copy over the copy of the access_mask, open_access_mask. Jerry - this is a definate fix for a 3.0.23b and should also be on the patches page. CIFSFS breaks without this. Jeremy. (This used to be commit d11e71ebcccf6907f2404a04aa6bf61b12ab2709)
2007-10-10r17229: Indent-style reformatting -- getting used to the code again :-)Volker Lendecke1-51/+53
(This used to be commit 2e400fb0077ccef38fff28ef037f982624b7815b)
2007-10-10r17228: Modest reformattingVolker Lendecke1-17/+24
(This used to be commit 640b4297a400fe23418e9c1c01d4c14ce3bde5b4)
2007-10-10r17220: If we're going to fail a write with an errno, makeJeremy Allison2-1/+5
sure we return -1. Jeremy. (This used to be commit 89b83237b03066785ca4bf3b9d120519bddeffad)
2007-10-10r17179: Merge the vl-posixacls tmp branch into mainline. ItJim McDonough1-11/+3
modularizes our interface into the special posix API used on the system. Without this patch the specific API flavor is determined at compile time, something which severely limits usability on systems with more than one file system. Our first targets are AIX with its JFS and JFS2 APIs, at a later stage also GPFS. But it's certainly not limited to IBM stuff, this abstraction is also necessary for anything that copes with NFSv4 ACLs. For this we will check in handling very soon. Major contributions can be found in the copyright notices as well as the checkin log of the vl-posixacls branch. The final merge to 3_0 post-3.0.23 was done by Peter Somogyi <psomogyi@gamax.hu> (This used to be commit ca0c73f281a2a65a988094a46bb3e46a94011a53)
2007-10-10r17152: Don't handle the delete pending here, awaitJeremy Allison1-7/+0
reschedule. Jeremy. (This used to be commit 11bab9d57958659c71f053fe8dc0f9156c9f3c1f)
2007-10-10r17142: Ensure we record the correct can_read/can_writeJeremy Allison1-4/+6
from the client requested access mask. Jeremy. (This used to be commit 12490fafc7f98952bf709c4c504f8f2b5646f197)
2007-10-10r17140: Get rid of the lock release/reacquire code ! Turns outJeremy Allison1-85/+73
that create dispositions that cause O_TRUNC break oplocks. This simplifies the code - although we have to keep separate the client requested access mask and the access mask we actually use to open the file. Jeremy. (This used to be commit 3bcd52a4752ec6c2a8f678afa3b7b3646103ad60)
2007-10-10r17134: Fix a debug messageVolker Lendecke1-1/+1
(This used to be commit 40e267981174840f4f36d1863985ee010ef5074a)
2007-10-10r17131: Optimisation - when doing a stat open don't open theJeremy Allison1-1/+1
file unless we really have to (ie. O_CREAT and file doesn't exist). Jeremy. (This used to be commit 788aa15ea24e6dfb61820465b5b881829a64297a)
2007-10-10r17130: Remove unneeded unlock call.Jeremy Allison1-3/+0
Jeremy. (This used to be commit b3b5aec0eef3bdcae75ce79ffd3ecf21fb1279e7)
2007-10-10r17128: Missed a logic error in my last patch. Ensure we deal with anyJeremy Allison1-5/+42
oplocks that were granted when we had released the lock. Fix strange case where stat open grants a batch oplock on file create, but grants no oplock on file open. Jeremy. (This used to be commit b7374835e6ec0c98fc4020623f0a37c0c173b8aa)
2007-10-10r17125: Drastic problems require drastic solutions. There'sJeremy Allison2-109/+228
no way to get all the cases where kernel oplocks are on and we can't open the file and get the correct semantics (think about the open with truncate with an attribute only open - we'd need a vfs change to add the truncate(fname, len) call). So always drop the share mode lock before doing any real fd opens and then re-acquire it afterwards. We're already dealing with the race in the create case, and we deal with any other races in the same way. Volker, please examine *carefully* :-). This should fix the problems people reported with kernel oplocks being on. Jeremy. (This used to be commit 8171c4c404e9f382880c65daa0232f89e560f399)
2007-10-10r17108: Make the default timeout parameter for lock waitingJeremy Allison1-3/+3
be lp_lock_spin(). lock spin count is no longer used. I'll update the man pages. Jeremy. (This used to be commit 0451a170c9be88399202abd225af35ddc45023f0)
2007-10-10r17107: Make the 200 ms timeout value tunable in local.h...Jeremy Allison1-3/+3
Might need to be a parameter ? Jeremy. (This used to be commit 98d8d9399bb287319578daaf2a2fb42f3c48f858)
2007-10-10r17106: Match Windows timing values on locks.Jeremy Allison1-0/+5
Jeremy. (This used to be commit b5aaff665937313370e0e87225e146f9af7b7e67)
2007-10-10r17105: Fix the race Volker found - we had a non-lockedJeremy Allison4-298/+142
region between detecting a pending lock was needed and when we added the blocking lock record. Make sure that we hold the lock over all this period. Removed the old code for doing blocking locks on SMB requests that never block (the old SMBlock and friends). Discovered something interesting about the strange NT_STATUS_FILE_LOCK_CONFLICT return. If we asked for a lock with zero timeout, and we got an error of NT_STATUS_FILE_LOCK_CONFLICT, treat it as though it was a blocking lock with a timeout of 150 - 300ms. This only happens when timeout is sent as zero and can be seen quite clearly in ethereal. This is the real replacement for old do_lock_spin() code. Re-worked the blocking lock select timeout to correctly use milliseconds instead of the old second level resolution (far too coarse for this work). Jeremy. (This used to be commit b81d6d1ae95a3d3e449dde629884b565eac289d9)
2007-10-10r17100: Ooops. Fix the build...Jeremy Allison1-2/+7
Jeremy. (This used to be commit b21ca265a25b3d1e4f154ce0ee4b8757b41cf910)
2007-10-10r17098: Samba3 now cleanly passes Samba4 RAW-LOCK tortureJeremy Allison4-90/+243
test. Phew - that was painful :-). But what it means is that we now implement lock cancels and I can add lock cancels into POSIX lock handling which will fix the fast/slow system call issue with cifsfs ! Jeremy. (This used to be commit f1a9cf075b87c76c032d19da0168424c90f6cb3c)
2007-10-10r17096: Simplify share_access_check a bit: It takes the sharename instead of ↵Volker Lendecke2-4/+14
the snum, and the decision which token to use (conn or vuser) does not really belong here, it is better done in the two places where this is called. Volker (This used to be commit 0a138888adf7a0f04a38cd911e797e1a379e908b)
2007-10-10r16990: Fix bug #3921 spotted by jason@ncac.gwu.edu. CorrectlyJeremy Allison1-1/+1
obey blocking/non-blocking request for POSIX locks. Jeremy. (This used to be commit f62c01316ef3ce0351f8b34229307a75d8f9f156)
2007-10-10r16968: The function parse_processed_dfs_path() is dependent on theJeremy Allison1-5/+11
fact that check_path_syntax() will convert '\\' characters to '/'. When POSIX pathnames have been selected this doesn't happen, so we must look for the unaltered separator of '\\' instead of the modified '/'. Stevef please check this with the CIFSFS MS-DFS code ! Jeremy (This used to be commit 883bb398e58f54ee79160487b49b79a4774ef939)
2007-10-10r16945: Sync trunk -> 3.0 for 3.0.24 code. Still needJeremy Allison34-1808/+869
to do the upper layer directories but this is what everyone is waiting for.... Jeremy. (This used to be commit 9dafb7f48ca3e7af956b0a7d1720c2546fc4cfb8)