summaryrefslogtreecommitdiff
path: root/source4/ntvfs/common
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r20646: first preparations for cluster enablement. This changes "Andrew Tridgell3-15/+15
uint32_t server_id to struct server_id server_id; which allows a server ID to have an node number. The node number will be zero in non-clustered case. This is the most basic hook needed for clustering, and ctdb. (This used to be commit 2365abaa991d57d68c6ebe9be608e01c907102eb)
2007-10-10r19428: moved tdbutil.c from lib/tdb/common/ to lib/util/util_tdb.cAndrew Tridgell1-1/+1
tdbutil.c is Samba specific, so should not be part of the generic tdb library (This used to be commit 979dd24f5e44605fc1603b690913b8c31be7478f)
2007-10-10r17930: Merge noinclude branch:Jelmer Vernooij2-2/+1
* Move dlinklist.h, smb.h to subsystem-specific directories * Clean up ads.h and move what is left of it to dsdb/ (only place where it's used) (This used to be commit f7afa1cb77f3cfa7020b57de12e6003db7cfcc42)
2007-10-10r17206: Add a modular API for share configuration.Simo Sorce2-4/+8
Commit the classic backwards compatible module which is the default one (This used to be commit a89cc346b9296cb49929898d257a064a6c2bae86)
2007-10-10r15854: more talloc_set_destructor() typesafe fixesAndrew Tridgell2-4/+2
(This used to be commit 61c6100617589ac6df4f527877241464cacbf8b3)
2007-10-10r15797: fixed a notify bug, where a notify_remove() is beyond the current maxAndrew Tridgell1-0/+5
depth (This used to be commit 2ebcfcc6dadd4a420431c733bb12fe7719057fd6)
2007-10-10r15734: This is a major change to the NTVFS subsystem:Stefan Metzmacher1-11/+11
- to use a struct ntvfs_handle instead of a uint16_t fnum. (to make it independend from the frontend protocol) - the allocation of handles now is provided by the frontend (smbsrv_*) via callbacks and not by each backend module - this also makes sure that file handles are only passed to the ntvfs subsystem when the tcon and session matches, so modules can rely on this and need to check this. - this allows multiple modules in the ntvfs module chain to allocate file handles. This can be used for virtual files like "\\$Extend\\$Quota:$Q:$INDEX_ALLOCATION"... - also this will make SMB2 with 128 bit file handles possible metze (This used to be commit 287fc1c22d670f6e568014b420f7f4cb31dc7958)
2007-10-10r15614: the byte range locking error handling caches the last failed lockStefan Metzmacher1-43/+89
per file handle and not per tree connect metze (This used to be commit 5d825261c0b8341f0a7f0f6d96d83807352566f4)
2007-10-10r15613: the snum doesn't identify the tcon, but the brl_context pointer doesStefan Metzmacher1-10/+9
metze (This used to be commit 5e256f4b78441269de2e53c9582f3237e4220f6c)
2007-10-10r15612: look at the lock_type and not at the notify_ptr being NULL or notStefan Metzmacher1-2/+3
metze (This used to be commit 7fa6d736913af2d1d2215ca1a04ed8763ccb3d45)
2007-10-10r15328: Move some functions around, remove dependencies.Jelmer Vernooij1-1/+0
Remove some autogenerated headers (which had prototypes now autogenerated by pidl) Remove ndr_security.h from a few places - it's no longer necessary (This used to be commit c19c2b51d3e1ad347120b06a22bda5ec586c22e8)
2007-10-10r15207: Introduce PRIVATE_DEPENDENCIES and PUBLIC_DEPENDENCIES as replacementJelmer Vernooij1-1/+1
for REQUIRED_SUBSYSTEMS. (This used to be commit adc8a019b6da256f104abed1b82bfde6998a2ac9)
2007-10-10r15048: started on the server side implementation of oplocks. The code is notAndrew Tridgell1-22/+83
functional yet, I'm committing so it doesn't diverge too much from other peoples work. It is disabled by default. (This used to be commit ba0b8a218dfe1ef6cdf7de724fb30650301369dd)
2007-10-10r14993: Make subsystems againJelmer Vernooij1-4/+1
(This used to be commit d55b040bd280c86423f2a620dfc0341accb23cc4)
2007-10-10r14966: make more functions _PUBLIC_Stefan Metzmacher1-19/+19
metze (This used to be commit 193f7da254cce40ab30fda9e99b8cd07e0b0a0a8)
2007-10-10r14964: - move sidmap code from ntvfs_common to SAMDBStefan Metzmacher4-574/+43
- make ntvfs_common a library - create sys_notify library metze (This used to be commit a3e1d56cf7b688c515f5d6d4d43e0b24c2261d15)
2007-10-10r14960: don't declare variables mid-functionAndrew Tridgell1-1/+2
(This used to be commit 4537de9289ce025a240fe46a708434c195138d20)
2007-10-10r14959: allow change notify to be disabled completely usingAndrew Tridgell1-0/+19
notify:enable=False (This used to be commit 2a8f093105f3047a3697f29aadcc9c48c6ac88e1)
2007-10-10r14956: change the notify search to be much more efficient by using aAndrew Tridgell1-83/+167
per-depth bisection search. This makes the notify_trigger() call log(N) which makes us scale well for large numbers of outstanding notifies (This used to be commit 16fd00925fdbf77e7a403ad501bf6ea429404c76)
2007-10-10r14951: - remove unused var 'path'Stefan Metzmacher1-12/+7
- fix compiler warning metze (This used to be commit 4d7de8b251e006a469adf2793dae422e128844c5)
2007-10-10r14945: allow the notify backend to be specified per shareAndrew Tridgell1-2/+2
(This used to be commit 467027e7730a3bc56f152df7e2ec272905e19584)
2007-10-10r14939: don't use a void pointerStefan Metzmacher1-1/+1
metze (This used to be commit 03906b2b13c000ad9683f6bb1e336075655e1367)
2007-10-10r14920: allow a notify backend to separately specify if it has handled theAndrew Tridgell1-21/+40
given mask for the current directory and sub-directories. This allows us to setup the less efficient internal handling for subdirectories, while using the kernel inotify service for the current directory if available. It also allows inotify to handle only some of the filter bits, leaving the other filter bits for the user space handler. (This used to be commit 7c3d989fa44c7f57853a825337159f476d7dff80)
2007-10-10r14918: cleaner handling of systems without inotifyAndrew Tridgell1-24/+33
(This used to be commit cf17ff15b15942f0ce068dd0a94b3b565a9b93cb)
2007-10-10r14877: added support for the kernel inotify mechanism. This passes basicAndrew Tridgell1-48/+89
tests, but still needs some more work to ensure we correctly cope with events that may generate both a system inotify event and a internal notify event. The system inotify events won't handle recursion, and don't understand things like streams. This also adds the ntvfs/sysdep/ directory, which is meant for system dependent code that is not tied to a particular ntvfs backend. The inotify code is a good example of that. (This used to be commit eadadbb44adb3c4081d6ff1d85a9b850a0227059)
2007-10-10r14860: create libcli/security/security.hStefan Metzmacher1-1/+1
metze (This used to be commit 9ec706238c173992dc938d537bdf1103bf519dbf)
2007-10-10r14838: fix the build. Looks like I still haven't quite got the hang of theAndrew Tridgell1-1/+1
new dependency/proto system :-) (This used to be commit 63ae3f21e3471895ba83df1c2fdc4147090f7fdb)
2007-10-10r14835: split out the config rules for the ntvfs/common/ directoryAndrew Tridgell1-0/+13
(This used to be commit 33495d19cf0263f6df5ec935f51c68bde84b1d01)
2007-10-10r14822: if we use the snum used by the lp_* functions instead of the wire TID,Stefan Metzmacher1-10/+10
then don't use tid as name... metze (This used to be commit d41d48caf209fec9f5f04d38d75277b1cfeed22f)
2007-10-10r14805: use tdb_lock_bystring() to prevent race conditions in notify add/removeAndrew Tridgell1-5/+56
(This used to be commit a6be44f78ca2eaecbf0b6d8598addba5a11ae966)
2007-10-10r14803: copy with the root directory, which has /. on the end of the pathAndrew Tridgell1-0/+17
(This used to be commit 16742cd28621d205f21c855e5635be1dfc3f2b69)
2007-10-10r14800: use tdb_get_seqnum() in the change notify code to avoid reloading theAndrew Tridgell1-2/+13
notify record if the tdb has not changed. This makes the notify_trigger() call much faster, which is important as it is called on just about every file operation (This used to be commit d09b8761bfda7dfbb4c7a5c4a4f4359ba01923a3)
2007-10-10r14797: added checking of the filter in notify requestsAndrew Tridgell1-5/+9
(This used to be commit 1db0a5a7f4c1ff915d91bc15d8e40cc90a78961d)
2007-10-10r14755: the change notify code now passes most of the RAW-NOTIFY test. StillAndrew Tridgell1-4/+3
more work to do though (This used to be commit 4d234b37e528137b5c00f6bbb84c2d6939fea324)
2007-10-10r14736: - the ntvfs subsystem should not know about smb_server.hStefan Metzmacher2-2/+1
- the process module subsystem should not know about smb_server.h - the smb_server module should not know about process models metze (This used to be commit bac95bb8f4ad35a31ee666f5916ff9b2f292d964)
2007-10-10r14616: added notify change support to the posix backendAndrew Tridgell1-0/+402
It doesn't fully work yet, and doesn't yet have all the efficiency that is planned, but it doesn't break anything and I wanted to get the code in the tree to minimise the chance of collisions with the work metze is doing. (This used to be commit 1624ea88e6eef89caacc36e7513aa79df0d579b9)
2007-10-10r14464: Don't include ndr_BASENAME.h files unless strictly required, insteadJelmer Vernooij1-0/+1
try to include just the BASENAME.h files (containing only structs) (This used to be commit 3dd477ca5147f28a962b8437e2611a8222d706bd)
2007-10-10r13924: Split more prototypes out of include/proto.h + initial work on headerJelmer Vernooij1-0/+2
file dependencies (This used to be commit 122835876748a3eaf5e8d31ad1abddab9acb8781)
2007-10-10r13739: a fairly major overhaul of the opendb code to allow the BASE-DELETEAndrew Tridgell1-233/+241
test to pass. To try to make the code a bit more understandable, I moved to using an IDL description of the opendb tdb record format. One of the larger changes was to make directory opens and creates go via the opendb code, so directory operations now obey all the share mode restrictions, as well as delete on close semantics. I also changed the period over which the opendb locks are held, to try to minimise races due to two open operations happening at the same time. (This used to be commit cd2602d05725e1734b0862131dd91601c6b6d51a)
2007-10-10r13708: fix compiler warningsStefan Metzmacher1-3/+3
metze (This used to be commit 830c42afda70c616ccd32703c6e7c47f38c2271c)
2007-10-10r13701: removed some unnecessary castsAndrew Tridgell1-5/+5
(This used to be commit f7d0ac936380102e087d4b7c336d7feb68b62314)
2007-10-10r13658: More moving around of files:Jelmer Vernooij1-3/+4
- Collect the generic utility functions into a lib/util/ (a la GLib is for the GNOME folks) - Remove even more files from include/ (This used to be commit ba62880f5b05c2a505dc7f54676b231197a7e707)
2007-10-10r13281: Use TALLOC_CTX * not a void *, and use tmp_ctx as the name for ↵Andrew Bartlett1-58/+59
consistancy. (I was chasing ghosts in this code, and decided to do a cleanup while I was there). Andrew Bartlett (This used to be commit c05f6be09a0cffdd0b87483f5b3751cc3f96e7f5)
2007-10-10r13276: start to work towards the BASE-DELETE test passing. This changeAndrew Tridgell1-11/+22
ensures that we give the right error code to opens that are denied due to the file having delete pending set (This used to be commit c5b709fae66f9135e5c0e2eeb2e25dd8837b64de)
2007-10-10r12694: Move some headers to the directory of the subsystem they belong to.Jelmer Vernooij2-2/+3
(This used to be commit c722f665c90103f3ed57621c460e32ad33e7a8a3)
2007-10-10r12608: Remove some unused #include lines.Jelmer Vernooij1-2/+0
(This used to be commit 70e7449318aa0e9d2639c76730a7d1683b2f4981)
2007-10-10r12542: Move some more prototypes out to seperate headersJelmer Vernooij1-0/+3
(This used to be commit 0aca5fd5130d980d07398f3291d294202aefe3c2)
2007-10-10r10810: This adds the hooks required to communicate the current user from theAndrew Bartlett1-1/+1
authenticated session down into LDB. This associates a session info structure with the open LDB, allowing a future ldb_ntacl module to allow/deny operations on that basis. Along the way, I cleaned up a few things, and added new helper functions to assist. In particular the LSA pipe uses simpler queries for some of the setup. In ldap_server, I have removed the 'ldasrv:hacked' module, which hasn't been worked on (other than making it continue to compile) since January, and I think the features of this module are being put into ldb anyway. I have also changed the partitions in ldap_server to be initialised after the connection, with the private pointer used to associate the ldb with the incoming session. Andrew Bartlett (This used to be commit fd7203789a2c0929eecea8125b57b833a67fed71)
2007-10-10r10148: Use samdb_base_dn() to find the local domain.Andrew Bartlett1-2/+2
Andrew Bartlett (This used to be commit 4969f86ac29aa1c4371a5cd01551f45c7fdb4cb2)
2007-10-10r7860: switch our ldb storage format to use a NDR encoded objectSid. This isAndrew Tridgell1-71/+26
quite a large change as we had lots of code that assumed that objectSid was a string in S- format. metze and simo tried to convince me to use NDR format months ago, but I didn't listen, so its fair that I have the pain of fixing all the code now :-) This builds on the ldb_register_samba_handlers() and ldif handlers code I did earlier this week. There are still three parts of this conversion I have not finished: - the ltdb index records need to use the string form of the objectSid (to keep the DNs sane). Until that it done I have disabled indexing on objectSid, which is a big performance hit, but allows us to pass all our tests while I rejig the indexing system to use a externally supplied conversion function - I haven't yet put in place the code that allows client to use the "S-xxx-yyy" form for objectSid in ldap search expressions. w2k3 supports this, presumably by looking for the "S-" prefix to determine what type of objectSid form is being used by the client. I have been working on ways to handle this, but am not happy with them yet so they aren't part of this patch - I need to change pidl to generate push functions that take a "const void *" instead of a "void*" for the data pointer. That will fix the couple of new warnings this code generates. Luckily it many places the conversion to NDR formatted records actually simplified the code, as it means we no longer need as many calls to dom_sid_parse_talloc(). In some places it got more complex, but not many. (This used to be commit d40bc2fa8ddd43560315688eebdbe98bdd02756c)