summaryrefslogtreecommitdiff
path: root/source3/smbd/notify.c
AgeCommit message (Collapse)AuthorFilesLines
2012-04-17s3: New notify implementationVolker Lendecke1-29/+7
From notify_internal.c: /* * The notify database is split up into two databases: One * relatively static index db and the real notify db with the * volatile entries. */ This change is necessary to make notify scale better in a cluster
2012-03-26s3: Pass filters explicitly through vfs notify watchVolker Lendecke1-2/+2
This removes a dependency on "struct notify_entry" and makes the nature of the API more explicit. We depend upon the VFS module to mask out elements from e->filter and e->subdir_filter that it took over to handle. Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Mon Mar 26 17:45:44 CEST 2012 on sn-devel-104
2012-03-23s3: Remove the sys_notify dependency from notify_internalVolker Lendecke1-18/+27
Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Fri Mar 23 12:12:51 CET 2012 on sn-devel-104
2012-03-21s3: Move the notify_ctx to the smbd_server_connectionVolker Lendecke1-3/+4
We only need one notify_ctx per smbd. The notify_array can become quite large. It's based on absolute paths, so there's no point in having a copy of the complete array in memory multiple times. Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Wed Mar 21 14:26:07 CET 2012 on sn-devel-104
2012-03-21s3: Remove "conn" param from sys_notify_context_createVolker Lendecke1-2/+1
2012-03-21s3: Remove "conn" from sys_notify_contextVolker Lendecke1-1/+0
2012-03-21s3: Pass "conn" to sys_notify_watch()Volker Lendecke1-1/+2
2012-03-21s3: Pass "conn" to notify_add()Volker Lendecke1-1/+2
2012-03-21s3: Pass "path" through vfs_notify_watchVolker Lendecke1-2/+3
2012-03-16s3-notify: Lift "/." handling up one levelVolker Lendecke1-0/+9
This slightly simplifies the code Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Fri Mar 16 14:28:44 CET 2012 on sn-devel-104
2012-03-09s3: asprintf->talloc_asprintfVolker Lendecke1-4/+6
Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Fri Mar 9 19:01:06 CET 2012 on sn-devel-104
2012-03-09s3: Replace a SMB_ASSERT with an error returnVolker Lendecke1-1/+5
2011-06-09s3-talloc Change TALLOC_ZERO_P() to talloc_zero()Andrew Bartlett1-1/+1
Using the standard macro makes it easier to move code into common, as TALLOC_ZERO_P isn't standard talloc.
2011-06-09s3-talloc Change TALLOC_P() to talloc()Andrew Bartlett1-1/+1
Using the standard macro makes it easier to move code into common, as TALLOC_P isn't standard talloc.
2011-06-09s3-talloc Change TALLOC_REALLOC_ARRAY() to talloc_realloc()Andrew Bartlett1-1/+1
Using the standard macro makes it easier to move code into common, as TALLOC_REALLOC_ARRAY isn't standard talloc. Andrew Bartlett
2011-03-30s3: include smbd/smbd.h where needed.Günther Deschner1-0/+1
Guenther
2010-07-07s3-notify: use autogenerated FILE_NOTIFY_INFORMATION marshalling in smbd.Günther Deschner1-52/+29
Guenther
2010-07-06s3:smbd: Align change notify replies on 4-byte boundaryChere Zhou1-0/+10
MS-CIFS section 2.2.7.4.2 states this is mandatory. WinXP clients don't seem to care, but a Win7 client will send an immediate Close() to the directory handle when receiving an incorrectly aligned change notify response.
2010-06-12s3: Explicitly pass sconn to the remove_pending_change_notify_request_by_midVolker Lendecke1-2/+2
2010-06-12s3: change_notify_reply() does not need its "conn" argumentVolker Lendecke1-11/+8
2010-06-12s3: Explicitly pass sconn to the change_notify_remove_requestVolker Lendecke1-7/+9
2010-06-12s3: Remove smbd_server_conn from change_notify_add_requestVolker Lendecke1-1/+1
2010-06-12s3: Remove sconn arg from smbd_notify_cancel_by_smbreqVolker Lendecke1-2/+2
2010-05-06s3: only include gen_ndr headers where needed.Günther Deschner1-0/+1
This shrinks include/includes.h.gch by the size of 7 MB and reduces build time as follows: ccache build w/o patch real 4m21.529s ccache build with patch real 3m6.402s pch build w/o patch real 4m26.318s pch build with patch real 3m6.932s Guenther
2010-04-12Move to using 64-bit mid values in our internal open file database.Jeremy Allison1-2/+2
This will allow us to share logic much easier between SMB1 and SMB2 servers. Jeremy
2009-11-18s3: Replace some create_synthetic_smb_fname() callsVolker Lendecke1-10/+6
In very hot codepaths like the statcache copy_smb_filename and the subsequent recursive talloc_free is noticable in the CPU load.
2009-08-17s3:smbd: add smbd_notify_cancel_by_smbreq()Stefan Metzmacher1-0/+20
This function will be used by the SMB2 notify code. metze
2009-07-20s3: Change fsp->fsp_name to be an smb_filename struct!Tim Prouty1-3/+4
2009-07-02s3:smbd: make change_notify_reply() more generic and hide send_nt_replies() ↵Stefan Metzmacher1-12/+22
behind a callback This prepares change notify support for SMB2. metze
2009-07-02s3:smbd: simplify the notify code a bit and always reply via ↵Stefan Metzmacher1-33/+24
change_notify_reply() -> send_nt_replies() metze
2009-07-02s3:smbd: move global notify_changes_by_mid to smbd_server_connectionStefan Metzmacher1-3/+6
metze
2009-06-24s3: Plumb smb_filename through SMB_VFS_STAT and SMB_VFS_LSTATTim Prouty1-11/+21
This patch introduces two new temporary helper functions vfs_stat_smb_fname and vfs_lstat_smb_fname. They basically allowed me to call the new smb_filename version of stat, while avoiding plumbing it through callers that are still too inconvenient. As the conversion moves along, I will be able to remove callers of this, with the goal being to remove all callers. There was also a bug in create_synthetic_smb_fname_split (also a temporary utility function) that caused it to incorrectly handle filenames with ':'s in them when in posix mode. This is now fixed.
2009-04-16Add notify_onelevel.tdbVolker Lendecke1-0/+10
This optimizes non-recursive notifys. For non-recursive notifies we can use a per-directory file-id indexed notify record. This matters for the Windows Explorer and IIS cases which do not use recursive notifies. In these cases, we do not have to shuffle around the whole notify record on every change. For the cluster case, this improves correctness of the notifies, ctdb only distributes the tdb seqnum once a second, so we can lose notifies.
2009-04-13Use convert_string_talloc, thanks Andrew!Volker Lendecke1-1/+1
2009-04-11Fix a memleak in an unlikely error path in change_notify_create()Volker Lendecke1-0/+1
2009-04-11Use talloc_tos() for a temp convert_string_allocate()Volker Lendecke1-3/+3
2009-03-23s3:smbd: use new simplified snb_signing code in the serverStefan Metzmacher1-4/+3
We keep the seqnum/mid mapping in the smb_request structure. This also moves one global variable into the smbd_server_connection struct. metze
2009-02-20s3: Make change notify immediately return a catch-all packet on underlying errorSteven Danneman1-1/+14
* This allows a problem in the underlying CN backend to be bubbled up to the general CN layer so a catch-all reply can be returned * We now also return a catch-all response immediately if the server-side event queue becomes too big
2009-02-20s3: Modifications to generic notify structures to allow implementation of ↵Steven Danneman1-0/+2
OneFS notify. The OneFS kernel based change notify system takes an fd of the directory to watch in it's initialization syscall. Since we already have this directory open, this commit plumbs that fd down to the VFS layer via the notify_entry struct. We also need to know if the watch is taken out on a snapshot directory. The full file_id struct is also passed down to make this determination. The file_id marshalling wrappers are hand written here, but should eventually be auto-generated by moving the struct file_id into the idl.
2009-02-09S3: New module interface for SMB message statistics gatheringtodd stecher1-1/+1
This changelist allows for the addition of custom performance monitoring modules through smb.conf. Entrypoints in the main message processing code have been added to capture the command, subop, ioctl, identity and message size statistics.
2009-01-08s3:smbd: move all globals and static variables in globals.[ch]Stefan Metzmacher1-2/+1
The goal is to move all this variables into a big context structure. metze
2008-11-18Fix bug #5908 - Samba 3.0.32 - internal change notify on share directory fails"Dina Fine1-0/+3
2008-11-08Converting notify.c to store a request, not an inbufVolker Lendecke1-55/+28
2008-11-04Make "inbuf" a talloc child of "smb_request" for normal smb requestsVolker Lendecke1-0/+1
This is necessary if we want to keep the whole smb_request for deferred ops. The explicit settings of req->inbuf will be removed once all those deferring operations are converted to store the whole request and not just the inbuf.
2008-06-17Add some debug to notifyVolker Lendecke1-0/+6
(This used to be commit 4394235378f85ccb911d662d95f1545a14240bdf)
2008-04-11Cleanup size_t return values in convert_string_allocateTim Prouty1-4/+3
This patch is the first iteration of an inside-out conversion to cleanup functions in charcnv.c returning size_t == -1 to indicate failure. (This used to be commit 59124382d2894a1b194b48dd82bc5f956959eb48)
2008-03-17Coverity fixesMarc VanHeyningen1-1/+1
(This used to be commit 3fc85d22590550f0539215d020e4411bf5b14363)
2008-01-11Fix CID 505 - don't copy uninitialized memory.Jeremy Allison1-0/+1
Jeremy. (This used to be commit 0d2c77e8d3a83f2c5e78fa076f22919ef9d124b9)
2008-01-08 ensure uni_name.buffer is initialisedJeremy Allison1-0/+2
merge from http://samba.org/~tridge/3_0-ctdb Jeremy. (This used to be commit dec77b387cd9024eb33bb0617c7543814e9c9212)
2008-01-04Refactor the crypto code after a very helpful conversationJeremy Allison1-20/+26
with Volker. Mostly making sure we have data on the incoming packet type, not stored in the smb header. Jeremy. (This used to be commit c4e5a505043965eec77b5bb9bc60957e8f3b97c8)