summaryrefslogtreecommitdiff
path: root/source4/ntvfs/posix/vfs_posix.c
AgeCommit message (Collapse)AuthorFilesLines
2009-05-20Have ntvfs_connect() accept union smb_tcon *tcon instead of char* sharenameSam Liddicott1-1/+29
This change brings ntvfs_connect into compliance with other ntvfs functions which take an ntvfs module, an ntvfs request and an smb io union. It now becomes the responsibility of ntvfs modules to examine tcon->generic.level themselves and derive the share name and any other options directly; e.g. const char *sharename; switch (tcon->generic.level) { case RAW_TCON_TCON: sharename = tcon->tcon.in.service; break; case RAW_TCON_TCONX: sharename = tcon->tconx.in.path; break; case RAW_TCON_SMB2: default: return NT_STATUS_INVALID_LEVEL; } if (strncmp(sharename, "\\\\", 2) == 0) { char *p = strchr(sharename+2, '\\'); if (p) { sharename = p + 1; } } service.c smbsrv_tcon_backend() is called before ntvfs_connect and fills in some of the tcon->..out values. For the case of RAW_TCON_TCONX, it filles out tcon->tconx.out.tid and tcon->tconx.out.options For the case of RAW_TCON_TCON it fills out tcon->tcon.out.tid and tcon->tcon.out.max_xmit Thus the ntvfs_connect function for vfs modules may override these values if desired, but are not required to. ntvfs_connect functions are required to fill in the tcon->tconx.out.*_type fields, for RAW_TCON_TCONX, perhaps something like: if (tcon->generic.level == RAW_TCON_TCONX) { tcon->tconx.out.fs_type = ntvfs->ctx->fs_type; tcon->tconx.out.dev_type = ntvfs->ctx->dev_type; } Signed-off-by: Sam Liddicott <sam@liddicott.com> (I fixed the ntvfs_connect() in the smb_server/smb2/ and the RAW_TCON_SMB2 switch case in the modules) Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-02-05s4:pvfs: use talloc_get_type() to cast from void *Stefan Metzmacher1-1/+2
metze
2009-01-30Fix the mess with ldb includes.Simo Sorce1-1/+0
Separate again the public from the private headers. Add a new header specific for modules. Also add service function for modules as now ldb_context and ldb_module are opaque structures for them.
2008-10-11Fix include paths to new location of libutil.Jelmer Vernooij1-1/+1
2008-09-16Fix last few includes to use new tdb location.Jelmer Vernooij1-1/+1
2008-06-28pvfs: create a pvfs_acl subsystemStefan Metzmacher1-0/+7
That means that the pvfs_acl implementations no longer register as ntvfs modules (which was wrong) metze (This used to be commit 89e90556ec57fce24faf0ed3d6fe262edd974b28)
2008-06-03pvfs: add posix:writetimeupdatedelay optionStefan Metzmacher1-0/+4
metze (This used to be commit c3ba19ca62affced96b927fcbe63cf5d075aed22)
2008-04-16Use readily available event context.Jelmer Vernooij1-1/+1
(This used to be commit 2823fca23a4cacc996c808f22cba50b4482b5921)
2008-04-02ntvfs: Use wbclient for pvfs_acl and pvfs_acl_nfs4Kai Blin1-2/+4
(This used to be commit ac5e5fee1db2999053dee82d1fcf97ca8799c9b5)
2008-02-26pvfs: add posix:oplocktimeout=30 optionStefan Metzmacher1-0/+4
metze (This used to be commit 5abc57ddab558c13db3864d13afc2ad3b1641d1c)
2007-12-21r26440: Remove more uses of global_loadparm.Jelmer Vernooij1-0/+1
(This used to be commit 8858cf39722f192865e531164c72039fd18d7a8d)
2007-12-21r26355: Eliminate global_loadparm in more places.Jelmer Vernooij1-0/+1
(This used to be commit 5d589a0d94bd76a9b4c9fc748854e8098ea43c4d)
2007-12-21r26353: Remove use of global_loadparm.Jelmer Vernooij1-1/+1
(This used to be commit 17637e4490e42db6cdef619286c4d5a0982e9d1a)
2007-12-21r26228: Store loadparm context in auth context, move more loadparm_contexts ↵Jelmer Vernooij1-2/+2
up the call stack. (This used to be commit ba75f1613a9aac69dd5df94dd8a2b37820acd166)
2007-12-21r26003: Split up DB_WRAP, as first step in an attempt to sanitize dependencies.Jelmer Vernooij1-1/+2
(This used to be commit 56dfcb4f2f8e74c9d8b2fe3a0df043781188a555)
2007-10-10r25554: Convert last instances of BOOL, True and False to the standard types.Jelmer Vernooij1-2/+2
(This used to be commit 566aa14139510788548a874e9213d91317f83ca9)
2007-10-10r23792: convert Samba4 to GPLv3Andrew Tridgell1-3/+2
There are still a few tidyups of old FSF addresses to come (in both s3 and s4). More commits soon. (This used to be commit fcf38a38ac691abd0fa51b89dc951a08e89fdafa)
2007-10-10r23697: use the file perm options in the posix backendAndrew Tridgell1-0/+13
(This used to be commit 701d06ac016c69fcd9ac92b5afefa2346c9bc26f)
2007-10-10r20624: added AIO read to pvfs backendAndrew Tridgell1-2/+3
(This used to be commit d6e20d6d8c5c207e7f04b0d0523224437b209917)
2007-10-10r19199: split out the xattr NTACL code into a separate part of the posixAndrew Tridgell1-0/+3
backend, allowing other ACL backends to be added. The xattr backend is still the default backend (This used to be commit 90f044e63b12d32228310c7529382198bd7e6dfe)
2007-10-10r17206: Add a modular API for share configuration.Simo Sorce1-20/+31
Commit the classic backwards compatible module which is the default one (This used to be commit a89cc346b9296cb49929898d257a064a6c2bae86)
2007-10-10r15855: more talloc_set_destructor() typesafe fixes. nearly done ...Andrew Tridgell1-2/+1
(This used to be commit 396d82a231b6e3a91178db08b706626d4d4b420c)
2007-10-10r15734: This is a major change to the NTVFS subsystem:Stefan Metzmacher1-4/+0
- 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-10r15613: the snum doesn't identify the tcon, but the brl_context pointer doesStefan Metzmacher1-2/+1
metze (This used to be commit 5e256f4b78441269de2e53c9582f3237e4220f6c)
2007-10-10r15188: Restore svn rev. 15183, 15184 and 15185, which I inadvertantly clobberedJames Peach1-2/+3
in r15186. I don't think I should be allowed to use quilt and svn at the same time any more :( (This used to be commit e0ca5ead27743c84f5d9310a05d6d718862ead1d)
2007-10-10r15186: Introduce ISDOT and ISDOTDOT macros for testing whether a filename isJames Peach1-3/+2
"." for "..". These express the intention better that strcmp or strequal and improve searchability via cscope/ctags. (This used to be commit 7e4ad7e8e5ec266b969e3075c4ad7f021571f24e)
2007-10-10r15185: Force all NTVFS modules to provide a critical sizes structure soJames Peach1-2/+3
the version information can be checked when modules are registered. (This used to be commit 95eb55806339fc5409c0adf137ebd5bffd7098ac)
2007-10-10r15048: started on the server side implementation of oplocks. The code is notAndrew Tridgell1-3/+1
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-10r14964: - move sidmap code from ntvfs_common to SAMDBStefan Metzmacher1-1/+9
- make ntvfs_common a library - create sys_notify library metze (This used to be commit a3e1d56cf7b688c515f5d6d4d43e0b24c2261d15)
2007-10-10r14959: allow change notify to be disabled completely usingAndrew Tridgell1-3/+1
notify:enable=False (This used to be commit 2a8f093105f3047a3697f29aadcc9c48c6ac88e1)
2007-10-10r14945: allow the notify backend to be specified per shareAndrew Tridgell1-1/+2
(This used to be commit 467027e7730a3bc56f152df7e2ec272905e19584)
2007-10-10r14933: fix the handling of notify filters to be much closer to the behaviourAndrew Tridgell1-1/+1
of w2k3. The behaviour is particularly tricky for rename. (This used to be commit 4d3b8d95498a328ffc08ecb62d9531b6bfe4e2b5)
2007-10-10r14877: added support for the kernel inotify mechanism. This passes basicAndrew Tridgell1-1/+3
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-10r14736: - the ntvfs subsystem should not know about smb_server.hStefan Metzmacher1-1/+0
- 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/+8
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-10r14540: fix a talloc hierachie problem,Stefan Metzmacher1-5/+29
make sure file and search handles are cleaned up before anything else in the pvfs_state struct, as there destructors reply on a valid pvfs_state struct metze (This used to be commit aaa5d377b9b6145a83c0e686c7fbb7b561ae8988)
2007-10-10r14464: Don't include ndr_BASENAME.h files unless strictly required, insteadJelmer Vernooij1-1/+1
try to include just the BASENAME.h files (containing only structs) (This used to be commit 3dd477ca5147f28a962b8437e2611a8222d706bd)
2007-10-10r14456: don't access the smbsrv_tcon inside the ntvfs modulesStefan Metzmacher1-14/+13
metze (This used to be commit 5709c1c4e1a561dd9af98cfefbbbdac9b18765b7)
2007-10-10r14173: change smb interface structures to always useStefan Metzmacher1-2/+3
a union smb_file, to abtract - const char *path fot qpathinfo and setpathinfo - uint16_t fnum for SMB - smb2_handle handle for SMB2 the idea is to later add a struct ntvfs_handle *ntvfs so that the ntvfs subsystem don't need to know the difference between SMB and SMB2 metze (This used to be commit 2ef3f5970901b5accdb50f0d0115b5d46b0c788f)
2007-10-10r14157: - pass a struct ntvfs_request to the ntvfs layerStefan Metzmacher1-8/+7
(for now we just do #define ntvfs_request smbsrv_request, but it's the first step...) - rename ntvfs_openfile() -> ntvfs_open() - fix the talloc hierachie in some places in the ntvfs_map_*() code metze (This used to be commit ed9ed1f48f602354810937c0b0de850b44322191)
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-10r13099: allow shares that point to /Andrew Tridgell1-1/+3
(This used to be commit ac4b8b98392cba69d0d06bce8e9023769ee301d8)
2007-10-10r12019: - let us only reference libblkid stuff in one fileStefan Metzmacher1-3/+0
- and make it it bit simpler, by caching the GUID struct instead of the device name - and this also removes all compiler warnings... metze (This used to be commit f4f0d626e00116e85a91962bf8534c1fbb69334c)
2007-10-10r8535: no longer rely on seekdir working after a closedir. Instead, keepAndrew Tridgell1-0/+3
directories open, but close search states based on an inactivity timer, with a default of a 5 minute timeout (This used to be commit 2e8d154e7dfb9b320a1344e957a39e96e1eefadd)
2007-10-10r7795: use a share specific allocation roundingAndrew Tridgell1-1/+2
(This used to be commit 9adacb0d1620d4cfadd515239b853977cf03a719)
2007-10-10r7792: make the allocation size rounding in pvfs configurableAndrew Tridgell1-0/+3
(This used to be commit 1f35642bed1129d0834906b3e94e8868992d6eb9)
2007-10-10r7557: trigger a probe at tconx time to see if xattrs are really supported byAndrew Tridgell1-0/+5
the filesystem (This used to be commit 71e281ae2fe2ce169aeb09f72376a60d28845808)
2007-10-10r6599: Fix formating using 'linux' C styleAlexander Bokovoy1-0/+3
Fix memory handling for blkid caches which need to be cleared when session is done. (This used to be commit c623cc60541f747f0a801eb77d97bb0a3bb6956f)
2007-10-10r5501: check the return of talloc with the NT_STATUS_HAVE_NO_MEMORY()Stefan Metzmacher1-15/+9
macro... metze (This used to be commit 9ec6c0e97765e60ef195296f17d6a27b5d0dcca9)