summaryrefslogtreecommitdiff
path: root/source3/smbd
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r20982: Fix a segfault -- I wonder why my make test did not show this earlier...Volker Lendecke1-1/+2
(This used to be commit 4984b0627c84cc192868238c0936ca1a38628cd8)
2007-10-10r20966: Only attempt to reload the config file atfer the fork point if weJames Peach1-2/+6
are in daemon mode. If we are in inetd mode, there's really no point in rechecking it so soon. (This used to be commit 029d4bb5e3ea02a8a396adc3ca564a714bcdfdb8)
2007-10-10r20933: Fix the build without inotifyVolker Lendecke1-2/+2
(This used to be commit 4587d8097255c8b8fb8990bc8a13f8145986d29d)
2007-10-10r20932: This is the basic infrastructure for inotify support. This is far ↵Volker Lendecke2-0/+268
from being complete, in particular the various mask bits are not correctly supported yet. Checkin in now, I want to see how the build farm likes it. Volker (This used to be commit c9a5d011a91359b242f6c26f46e96ecea6a44a3b)
2007-10-10r20931: This changes the notify infrastructure from a polling-based to an ↵Volker Lendecke10-774/+472
event-driven based approach. The only remaining hook into the backend is now void *(*notify_add)(TALLOC_CTX *mem_ctx, struct event_context *event_ctx, files_struct *fsp, uint32 *filter); (Should we put this through the VFS, so that others can more easily plug in?) The trick here is that the backend can pick filter bits that the main smbd should not handle anymore. Thanks to tridge for this idea. The backend can notify the main smbd process via void notify_fsp(files_struct *fsp, uint32 action, char *name); The core patch is not big, what makes this more than 1800 lines are the individual backends that are considerably changed but can be reviewed one by one. Based on this I'll continue with inotify now. Volker (This used to be commit 9cd6a8a82792b7b6967141565d043b6337836a5d)
2007-10-10r20916: Add in the delete on close final fix - but only enabledJeremy Allison4-0/+54
with -DDEVELOPER. Jeremy. (This used to be commit 7f817067a70930ee3502ea3373173e0c23733253)
2007-10-10r20883: W00t! I now understand how "delete on close" reallyJeremy Allison2-9/+42
works - even with the strange "initial delete on close" semantics. The "initial delete on close" flag isn't committed to the share mode db until the handle is closed, and is discarded if any real "delete on close" was set. This allows me to remove the "initial_delete_on_close" flag from the share db, and move it into a BOOL in files_struct. Warning ! You must do a make clean after this. Cope with the wrinkle in directory delete on close which is done differently from files. We now pass all Samba4 smbtortute BASE-DELETE tests except for the one checking that files can't be created in a directory which has the delete on close set (possibly expensive to fix). Jeremy. (This used to be commit f2df77a1497958c1ea791f1d2f4446b5fc3389b3)
2007-10-10r20878: Fix build with --enable-profilingVolker Lendecke1-1/+0
(This used to be commit eb14d0ea83273c60aee900557aa5dceb77bb8127)
2007-10-10r20877: Random notify fixesVolker Lendecke1-13/+8
(This used to be commit 2f1bfc53733ac3debc6a8b51642ab191869cd792)
2007-10-10r20873: Some correctness fixes w.r.t. Samba4 torture BASE-DELETE.Jeremy Allison6-21/+55
Allow us to correctly refuse to set delete on close on a non-empty directory. There are still some delete-on-close wrinkles to be fixed, but I understand how to do that better now. I'll fix this tomorrow. Jeremy. (This used to be commit 029635885825a5562e7974a6f5675cce3bf1b5dc)
2007-10-10r20858: change_notify_reply_packet is staticVolker Lendecke1-2/+4
(This used to be commit a1d0644d156c360d52fb837d3eecddb202135ebe)
2007-10-10r20856: Make "struct notify_mid_map" private to notify.cVolker Lendecke1-0/+11
(This used to be commit beecef0c70521d28dd88552d661281d9c585eb22)
2007-10-10r20854: Ok, now I think we're at a point where looking at notify starts to ↵Volker Lendecke6-37/+567
make sense again :-) Volker (This used to be commit 5533cdeec1b0cdee39b1d89e2320587dc9281ee6)
2007-10-10r20846: Before this gets out of control...Volker Lendecke3-29/+51
This add a struct event_context and infrastructure for fd events to smbd. This is step zero to import lib/events. Jeremy, I rely on you to watch the change in receive_message_or_smb() closely. For the normal code path this should be the only relevant change. The rest is either not yet used or is cosmetic. Volker (This used to be commit cd07f93a8aecb24c056e33b1ad3447a41959810f)
2007-10-10r20845: Somehow I missed this one - should have been part of theJeremy Allison1-4/+7
previous commit :-(. Jeremy. (This used to be commit 8fe3829e8a884ce2ddb91121d46b7a3a385874c1)
2007-10-10r20844: Somewhat radical change - this may break the build (I willJeremy Allison6-257/+306
watch carefully - so I'm doing it in one transaction so I can roll back). Change check_name(), reduce_name() and dptr_create() to return NTSTATUS. This helps a lot in error path processing and especially in reduce_name() allows us to ditch the flaky and error-prone saving of errno and return errors directly. Jeremy. (This used to be commit 6133a694aa429d638320e39ffe1c49d172583ccf)
2007-10-10r20843: Get rid of last BOOL ok.Jeremy Allison1-58/+59
Jeremy. (This used to be commit a36d446fb612f87654c645f6507d413b95efaf21)
2007-10-10r20842: Only one more BOOL ok to go...Jeremy Allison1-12/+6
Jeremy. (This used to be commit de0bf477dab1d57b5f7bc6bf70d8e76f9bfac63f)
2007-10-10r20841: Remove more BOOL ok.Jeremy Allison1-6/+6
Jeremy. (This used to be commit c6b651966039b1c21facd4c4789bf873b5b49426)
2007-10-10r20840: Keep removing the old BOOL ok logic.Jeremy Allison1-5/+9
Jeremy. (This used to be commit 224ff059915b2c92ec86d2c3c4b10c3bc552ffa2)
2007-10-10r20833: ReformattingVolker Lendecke1-23/+41
(This used to be commit 2c2d5308a23df0b6b078bc647ad550c43b51ee1e)
2007-10-10r20796: Fix the same problem Jeremy has fixed (improper handling of deferred ↵Volker Lendecke1-6/+10
opens) for delete_driver_files. Proper fix pending... :-) Jeremy, please check. Volker (This used to be commit 21b8f15dd5ad567efeacf5ba22dc4d8c64b09b76)
2007-10-10r20781: Fix a couple of paths found by Volker where we weren'tJeremy Allison2-1/+13
correctly handling deferred opens. Jeremy. (This used to be commit e47b79d1cef279a1de1128d114d423c1fd2b1e8d)
2007-10-10r20759: Dummy checkin to let the build farm pick up the new smbtorture4Volker Lendecke1-1/+2
(This used to be commit 14c88b560e5c8fd59b84333e92337805620ccd7c)
2007-10-10r20743: Remove another BOOL ok from reply_getatr.Jeremy Allison1-20/+15
Jeremy. (This used to be commit c154f430710a4646fac42774817dfed7b936b087)
2007-10-10r20742: Rename chkpth -> checkpath for sanity's sake :-).Jeremy Allison2-36/+36
Start removing unneeded "BOOL ok" from this reply.c (this logic is old, old, old..... :-). Jeremy. (This used to be commit 3d52268095c605a80dfcd371769198a332baa0a5)
2007-10-10r20740: Get rid of some if-statementsVolker Lendecke1-14/+10
(This used to be commit db93c1b98d5445071ad0af229afed1f11ab0a862)
2007-10-10r20724: Get closer to passing RAW-OPEN. If the client is usingJeremy Allison1-12/+10
create disposition of FILE_CREATE then there's no need to check can_delete_file_in_directory(). Jeremy. (This used to be commit eb32b60efc4c332295ff6fc7e5d575f4b40e8ff6)
2007-10-10r20722: RAW-CHKPATH should now pass, build farm shouldJeremy Allison1-4/+13
go back to normal. Sorry about that. Jeremy. (This used to be commit d4127034fb89185fe7464d57c9f56f7914da6141)
2007-10-10r20721: Fix the search unix_convert error returns. Only openJeremy Allison3-27/+37
to go... Jeremy. (This used to be commit 89f03a8db40365f99c6755ff19a4bfbf8d1bd316)
2007-10-10r20720: Fix the chkpath problem, still looking at findfirst.Jeremy Allison2-1/+13
Jeremy. (This used to be commit c5be0082ef60cd041121a9c36f4af934cd60562d)
2007-10-10r20718: Sync up the filename path parsing changes from SAMBA_3_0_24.Jeremy Allison6-612/+387
The only difference between the two trees now w.r.t file serving are the changes to smbd/open.c in this branch I need to review. Jeremy. (This used to be commit f4474edf6a0c71001dbd01429ef70bafad6abd74)
2007-10-10r20700: In the main processing loop we select() on the fam socket. If it ↵Volker Lendecke1-0/+13
fires, it might be possible that we hang in the receive_smb() although that socket is not the reason for the select() to return. This immediately reacts to the fam socket to become readable, and goes into the select loop again. This fixes delays in files showing up in Windows. Jeremy, James please review this and merge to 3_0_24 if appropriate. Thanks, Volker (This used to be commit c846153b2ed2f9aca82491888e391ccbe239e88a)
2007-10-10r20699: This is an attempt to fix bug 4326.Volker Lendecke1-1/+2
James, can you please confirm this and merge it to 3_0_24? For me it fixes the segfault. Thanks, Volker (This used to be commit a841b7659ba7b76b2da7993e1f4402aa0e11716f)
2007-10-10r20635: Add placeholder to ensure we don't go into theJeremy Allison1-0/+11
wcard unlink if bad_path was set. The error returned here is almost certainly incorrect and will need testing properly with smbtorture, but I don't want to forget about this path (yes Volker I know this is currently incorrect :-). Jeremy. (This used to be commit 06e20c287898d21e437ab117eb5eeeaf2420ba78)
2007-10-10r20634: A *LOT* more work is necessary before touching notify remotely ↵Volker Lendecke6-563/+35
starts to make sense. Until then, remove it from the tree to keep the diff between 3_0_24 and 3_0 small. Volker (This used to be commit f146a85e74c84e78a11e616a1cbeaeef4693a0e0)
2007-10-10r20632: The extended RAW-SAMBA3BADPATH test led me to some wrong assumptions, inVolker Lendecke1-53/+59
particular the NT_STATUS_INVALID_PARAMETER thing was badly wrong. Remove the changes based on it. Using gentest is much more effective in this respect, but it will take a while to figure out the wildcard error handling of W2k3. Volker (This used to be commit 58b8a242a7f08c1292d24fc73df170dbcd68c10d)
2007-10-10r20628: Looks bigger than it is. This is just re-indenting the if (dirname) ↵Volker Lendecke1-40/+38
that we've taken care of above. Volker (This used to be commit 5e1da363bb3f2675beb9fd9240301bb432e5239b)
2007-10-10r20627: orig_name is not needed anymore, and slightly simplify logic by ↵Volker Lendecke1-9/+8
doing early returns. Volker (This used to be commit 614651c6a72742173de5fa8723403880acc37c09)
2007-10-10r20619: bad_path is handled somewhere else, so can_delete does not need it ↵Volker Lendecke1-11/+3
anymore (This used to be commit 1798987128be579a1a4574294a7c3094040ebaf2)
2007-10-10r20618: Fix a bug in bad_path handling that also exists in 3.0.23: For ↵Volker Lendecke1-0/+5
reply_unlink under Linux we returned NT_STATUS_NOT_A_DIRECTORY. This is because in the bad_path==True condition lstat(2) returns ENOTDIR and not ENOENT. Not sure if we want to necessarily replicate the INVALID_PARAMETER here, but this is what W2k3 does. Jeremy, I tried to call you, but you were not around. So I'll leave it up to you to merge this. Volker (This used to be commit b1edc3d053104204b966eed67d070ad5da40f17b)
2007-10-10r20617: Do not notify if the delete failedVolker Lendecke1-5/+7
(This used to be commit c86fbdf8cc8f6f17b23e647bd1f4714c6095b860)
2007-10-10r20612: A checkin I've wanted to do for ages: For bad_path==False ↵Volker Lendecke3-50/+21
set_bad_path_error is equivalent to UNIX_ERROR. Expand the last reference. Lets see if I can kill that as well :-) Volker (This used to be commit 794d5d38f19601bb5b30b965b41b844aacf1caeb)
2007-10-10r20611: All but one callers to set_bad_path_error have had the ↵Volker Lendecke3-15/+29
bad_path==True argument being handled further up. Volker (This used to be commit 358673c36697a16aa87f9cebbace34abf16ed28e)
2007-10-10r20608: ENOENT->NT_STATUS_OBJECT_NAME_NOT_FOUND is covered in the standard ↵Volker Lendecke1-6/+2
unix error mapping table (This used to be commit 816c19aaeb812a94fd5669174c9beec60ce1a73f)
2007-10-10r20607: Next micro-step for reply_setatrVolker Lendecke1-8/+6
(This used to be commit cea9a01434490fb8a17c3f12db7a092efda21186)
2007-10-10r20606: bad_path == True has been covered further up in reply_setatr.Volker Lendecke1-1/+2
I'm checking in micro-steps to make them independently checkable. This code just very severely needs cleanup, but I don't want to break anything. So, be patient with me, please :-) Volker (This used to be commit c16775486baa89901f0d5126cb926c9e5a807743)
2007-10-10r20605: Simplify logic in reply_setatr slightlyVolker Lendecke1-4/+2
(This used to be commit f19db8f33ed3749f6b72ae3a4cee83574c606e88)
2007-10-10r20602: Fix coverity ID 339. SMB_ASSERT does not panic without -DDEVELOPER.Volker Lendecke1-1/+4
Volker (This used to be commit 33b5950bec407e295b2c6139e21d062e376df330)
2007-10-10r20597: Survive some of the notify mask tests.Volker Lendecke3-10/+24
(This used to be commit e4a2e63272dc5b20413597179d06b0185c4a6817)