summaryrefslogtreecommitdiff
path: root/source4/ntvfs/ntvfs.h
Commit message (Collapse)AuthorAgeFilesLines
* s4:ntvfs: add '_fn' suffix to all ntvfs_ops function pointersStefan Metzmacher2012-06-131-34/+34
| | | | | | | | | | | This hopefully fixes the build on systems where _LARGE_FILES triggers defines of syscalls e.g. '#define lseek lseek64' on AIX. metze Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Wed Jun 13 11:03:15 CEST 2012 on sn-devel-104
* librpc/idr Use the Samba3 notify.idl in common.Andrew Bartlett2011-06-091-1/+1
| | | | | | | | | The extra fields in the structure that Samba4 does not use should not bother it. Andrew Bartlett Signed-off-by: Andrew Tridgell <tridge@samba.org>
* server_id.idl: Bring server_id.idl in commonAndrew Bartlett2011-06-091-1/+1
| | | | | | Andrew Bartlett Signed-off-by: Andrew Tridgell <tridge@samba.org>
* s4-messaging Rename messaging -> imessagingAndrew Bartlett2011-05-031-2/+2
| | | | | | | This avoid symbol and structure conflicts between Samba3 and Samba4, and chooses a less generic name. Andrew Bartlett
* s4-idl: rename s4 server_id.idl to server_id4.idlAndrew Tridgell2011-02-181-1/+1
| | | | | | this avoids a conflict with the new s3 server_id.idl Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
* s4:ntvfs rename notify.idl to s4_notify.idl until we can merge this IDLAndrew Bartlett2010-05-241-1/+1
| | | | | | | | This IDL is almost common, but the source3 version has a hand-marshalled server_id. The s3compat build has problems with two different idl files of the same name. Andrew Bartlett
* s4:ntvfs: remove socket_address based functionsStefan Metzmacher2010-04-271-3/+0
| | | | metze
* s4:ntvfs: add tsocket based addresses to ntvfs_contextStefan Metzmacher2010-04-271-0/+2
| | | | metze
* Have ntvfs_connect() accept union smb_tcon *tcon instead of char* sharenameSam Liddicott2009-05-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* s4:ntvfs: s/private/private_dataStefan Metzmacher2009-02-021-5/+5
| | | | metze
* s4:lib/tevent: rename structsStefan Metzmacher2008-12-291-1/+1
| | | | | | | | | | | | | | | | | | | | list="" list="$list event_context:tevent_context" list="$list fd_event:tevent_fd" list="$list timed_event:tevent_timer" for s in $list; do o=`echo $s | cut -d ':' -f1` n=`echo $s | cut -d ':' -f2` r=`git grep "struct $o" |cut -d ':' -f1 |sort -u` files=`echo "$r" | grep -v source3 | grep -v nsswitch | grep -v packaging4` for f in $files; do cat $f | sed -e "s/struct $o/struct $n/g" > $f.tmp mv $f.tmp $f done done metze
* Rename dom_sid.idl -> server_id.idl (since it no longer actually contains ↵Jelmer Vernooij2008-12-161-0/+1
| | | | the dom_sid). No longer include it from security.idl.
* Let ntvfs request transport close via ntvfs_request stateSam Liddicott2008-12-051-0/+1
| | | | | | | | | | | | | [I can't swear that this covers all the smb2 cases, there are some reply functions that I can't trace properly] Add NTVFS_ASYNC_STATE_CLOSE bit to ntvfs_request->async_states->state so that the ntvfs layer can signify that the client transport should be closed, most useful for proxy servies, and most likely due to a forwarding transport having been closed. Signed-off-by: Sam Liddicott <sam@liddicott.com> Signed-off-by: Stefan Metzmacher <metze@samba.org>
* Fix includes.Jelmer Vernooij2008-10-151-0/+1
|
* smbpid is 32 bit, and update SMB2 locking per MS-SMB2 Andrew Tridgell2008-06-021-1/+1
| | | | | The UNLOCK bit is only used from the first lock structure (This used to be commit 9483b7c137b61d3029a1e1e7d8d8d0723b541129)
* ntvfs: pass down the client capabilities into the ntvfs layerStefan Metzmacher2008-03-061-0/+16
| | | | | | | | | | | Note that we don't use any protocol specific values here. For now only NTVFS_CLIENT_CAP_LEVEL_II_OPLOCKS is defined others should be defined, when we find out that the ntvfs layer needs to know about it. metze (This used to be commit cc42cd5f6753ca582677fa6f403f0419eec5ab10)
* updated SMB2 tcon as per WSPP docsAndrew Tridgell2008-02-131-3/+5
| | | | (This used to be commit 5913e3e549e71affc66c28cacb6563331fb0c790)
* r26353: Remove use of global_loadparm.Jelmer Vernooij2007-12-211-0/+1
| | | | (This used to be commit 17637e4490e42db6cdef619286c4d5a0982e9d1a)
* r24712: No longer expose the 'BOOL' data type in any interfaces.Jelmer Vernooij2007-10-101-2/+2
| | | | (This used to be commit 1ce32673d960c8b05b6c1b1b99e1976a402417ae)
* r23792: convert Samba4 to GPLv3Andrew Tridgell2007-10-101-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)
* r23067: use 'const union smb_search_data *file' also in the server code to ↵Stefan Metzmacher2007-10-101-2/+2
| | | | | | | | | get rid of compiler warnings in the cifs backend metze (This used to be commit 34ef07b1f5acdad27edd80de8de4c6de7f879f9b)
* r20898: make it work to include ntvfs/ntvfs.h multiple timesStefan Metzmacher2007-10-101-0/+5
| | | | | metze (This used to be commit 6814f38f000e9d44bdf25ca5bc1d69fd82522614)
* r20646: first preparations for cluster enablement. This changes "Andrew Tridgell2007-10-101-1/+1
| | | | | | | | | | | 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)
* r17206: Add a modular API for share configuration.Simo Sorce2007-10-101-3/+2
| | | | | Commit the classic backwards compatible module which is the default one (This used to be commit a89cc346b9296cb49929898d257a064a6c2bae86)
* r16980: - make struct smb_notify a union and add levels ↵Stefan Metzmacher2007-10-101-1/+1
| | | | | | | | | RAW_NOTIFY_NTTRANS,RAW_NOTIFY_SMB2 - parse SMB2 Notify reponse metze (This used to be commit de50e0ccddfad16ad7b254770f4c52c1abe707b9)
* r16950: remove the smb mid from the ntvfs layer and keep a list of pendingStefan Metzmacher2007-10-101-3/+0
| | | | | | | | requests on the smbsrv_connection, to be able to match then on ntcancel metze (This used to be commit 04f0d3d03179b6060fd013b867d13caa92ec6460)
* r15734: This is a major change to the NTVFS subsystem:Stefan Metzmacher2007-10-101-2/+36
| | | | | | | | | | | | | | | | | - 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)
* r15387: Fix installation of dcerpc headers, remove more instances of uint_tJelmer Vernooij2007-10-101-1/+1
| | | | (This used to be commit 9e9bfd04c6db013453b900e201df9c09e8777a22)
* r15188: Restore svn rev. 15183, 15184 and 15185, which I inadvertantly clobberedJames Peach2007-10-101-0/+11
| | | | | | 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)
* r15186: Introduce ISDOT and ISDOTDOT macros for testing whether a filename isJames Peach2007-10-101-11/+0
| | | | | | "." for "..". These express the intention better that strcmp or strequal and improve searchability via cscope/ctags. (This used to be commit 7e4ad7e8e5ec266b969e3075c4ad7f021571f24e)
* r15183: Hoist the critical sizes initialiser into a header so that modulesJames Peach2007-10-101-0/+11
| | | | | | can have standard access to critical sizes. Add a convenience function to determine whether two critical sizes differ. (This used to be commit 7ced96d2d348701734cc4cdf3f8899dbce8cd0f7)
* r14736: - the ntvfs subsystem should not know about smb_server.hStefan Metzmacher2007-10-101-0/+2
| | | | | | | | - 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)
* r14616: added notify change support to the posix backendAndrew Tridgell2007-10-101-0/+1
| | | | | | | | 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)
* r14542: Remove librpc, libndr and libnbt from includes.hJelmer Vernooij2007-10-101-1/+1
| | | | (This used to be commit 51b4270513752d2eafbe77f9de598de16ef84a1f)
* r14541: separate smbsrv_request and ntvfs_request,Stefan Metzmacher2007-10-101-2/+24
| | | | | | | | | | with this it's now possible to write a ntvfs_test programm like the vfstest in samba3 also smb2 support will be possible later metze (This used to be commit 7253153691e35cd206346fbd4e9b9f95c042f602)
* r14539: get rid of a pointless union layer in struct smb_notifyAndrew Tridgell2007-10-101-1/+1
| | | | (This used to be commit 1e1c5593817e84c59c1a10b5a3c1957e363e5198)
* r14487: split smbsrv_request into two parts, one will be moved to ntvfs_requestStefan Metzmacher2007-10-101-0/+6
| | | | | | | but I don't to get the commit to large, to I'll do this tomorrow... metze (This used to be commit 10e627032d7d04f1ebf6efed248c426614f5aa6f)
* r14456: don't access the smbsrv_tcon inside the ntvfs modulesStefan Metzmacher2007-10-101-2/+25
| | | | | metze (This used to be commit 5709c1c4e1a561dd9af98cfefbbbdac9b18765b7)
* r14380: Reduce the size of structs.hJelmer Vernooij2007-10-101-0/+2
| | | | (This used to be commit 1a16a6f1dfa66499af43a6b88b3ea69a6a75f1fe)
* r14173: change smb interface structures to always useStefan Metzmacher2007-10-101-5/+5
| | | | | | | | | | | | | 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)
* r14157: - pass a struct ntvfs_request to the ntvfs layerStefan Metzmacher2007-10-101-78/+106
| | | | | | | | | | (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)
* r14011: - added a ntvfs_notify op to allow backends to support change notifyAndrew Tridgell2007-10-101-0/+4
| | | | | | | | - converted the nttrans server side code to be async (needed for change notify) This is the start of some work on supporting change notify via a new approach. More soon. (This used to be commit 0ad70bfd83b4a03c0e67f11f63822b833be67aa1)
* r12528: Add seperate proto headers for ntvfs, tdr, smb_server and nbt_server.Jelmer Vernooij2007-10-101-0/+2
| | | | (This used to be commit 87f665a1d5ba74289974bf9d8f9441c162e6f1b1)
* r3528: added support for the SMBntcancel() operation, which cancels anyAndrew Tridgell2007-10-101-0/+4
| | | | | | | outstanding async operation (triggering an immediate timeout). pvfs now passes the RAW-MUX test (This used to be commit 3423e2f41461d054067ef168b9b986f62cc8f77c)
* r3522: added async support to most of the ntvfs_map_*() functions, allowing ↵Andrew Tridgell2007-10-101-1/+1
| | | | | | | functions like SMBopenx, SMBread and SMBwrite to be performed async (This used to be commit 9e80eb18ae8c4a4a8cdf2f32f0c869fbbc3832b4)
* r3461: another place where "open" was used as a structure elementAndrew Tridgell2007-10-101-1/+1
| | | | (This used to be commit 1087ea830e7aead86d54a1836512e88554afc919)
* r3336: use a struct ntvfs_async_state to be able to do async chaning of ↵Stefan Metzmacher2007-10-101-0/+33
| | | | | | | | | | | | | | | ntvfs modules the idea is that a passthru module can use ntvfs_async_state_push() before calling ntvfs_next_*() and in the _send function it calls ntvfs_async_state_pop() and then call the upper layer send_fn itself - ntvfs_nbench is now fully async - the ntvfs_map_*() functions and the trans(2) mapping functions are not converted yet metze (This used to be commit fde64c0dc142b53d128c8ba09af048dc58d8ef3a)
* r3039: This solves the problem of async handlers in ntvfs backends not beingAndrew Tridgell2007-10-101-1/+5
| | | | | | | | | | | | | | in the right state when called. For example, when we use the unixuid handler in the chain of handlers, and a backend decides to continue a call asynchronously then we need to ensure that the continuation happens with the right security context. The solution is to add a new ntvfs operation ntvfs_async_setup(), which calls all the way down through the layers, setting up anything that is required, and takes a private pointer. The backend wanting to make a async calls can use ntvfs_async_setup() to ensure that the modules above it are called when doing async processing. (This used to be commit a256e71029727fa1659ade6257085df537308c7d)
* r2751: this is a new ntvfs design which tries to solve:Stefan Metzmacher2007-10-101-35/+82
| | | | | | | | | | | - the stacking of modules - finding the modules private data - hide the ntvfs details from the calling layer - I set NTVFS_INTERFACE_VERSION 0 till we are closer to release (because we need to solve some async problems with the module stacking) metze (This used to be commit 3ff03b5cb21bb79afdd3b1609be9635f6688a539)
* r2660: - converted the libcli/raw/ library to use talloc_increase_ref_count()Andrew Tridgell2007-10-101-0/+3
| | | | | | | | | | | rather than manual reference counts - properly support SMBexit in the cifs and posix backends - added a logoff method to all backends With these changes the RAW-CONTEXT test now passes against the posix backend (This used to be commit c315d6ac1cc40546fde1474702a6d66d07ee13c8)