summaryrefslogtreecommitdiffstats
path: root/source4/ntvfs
Commit message (Collapse)AuthorAgeFilesLines
* s4: fixed some shadowed variable warningsAndrew Tridgell2009-09-083-9/+9
|
* no need to shout about getting an oplockAndrew Tridgell2009-08-121-1/+1
|
* fixed a problem with group policy writes causing policy corruptionAndrew Tridgell2009-08-053-4/+48
| | | | | | | | | | | | This bug was caused by two things: 1) in the unix ACL mapping, we were not taking into account group write permssions for the SEC_STD_DELETE flag 2) when a file is created using OVERWRITE mode, a fchmod() would fail if the user is not the file owner. We resolve that by only doing the fchmod() if the mapped file attribute does not match the desired file attribute
* fixed the sense of the pvfs_acl uwrap checkAndrew Tridgell2009-08-051-1/+1
|
* make the UID_WRAPPER skip checks at runtimeAndrew Tridgell2009-08-051-7/+7
| | | | | | | This fixes two issues pointed out by Andrew. It adds a runtime uwrap_enabled() call that wraps the skips needed for uid emulation. It also makes the skip in the directory_create_or_exist() function only change the uid checking code, not the permissions code
* added a uid_wrapper libraryAndrew Tridgell2009-08-052-1/+9
| | | | | | | | | | | | | | | | | | | | This library intercepts seteuid and related calls, and simulates them in a manner similar to the nss_wrapper and socket_wrapper libraries. This allows us to enable the vfs_unixuid NTVFS module in the build farm, which means we are more likely to catch errors in the token manipulation. The simulation is not complete, but it is enough for Samba4 for now. The major areas of incompleteness are: - no emulation of setreuid, setresuid or saved uids. These would be needed for use in Samba3 - no emulation of ruid changing. That would also be needed for Samba3 - no attempt to emulate file ownership changing, so code that (for example) tests whether st.st_uid matches geteuid() needs special handling
* fixed support for readx greater than 64kAndrew Tridgell2009-08-041-2/+2
| | | | | This fixes bug 6547, where smbclient in S3 reads more than 64k at a time with readx.
* Cosmetic correctionMatthias Dieter Wallnöfer2009-07-191-1/+1
| | | | | Changes the order of two commands. First set up the "priv" structure, then assign it to the "ntvfs" structure.
* s4:ntvfs/ipc: replace unnesessary talloc_reference() by a simple talloc_strdup()Stefan Metzmacher2009-07-151-1/+2
| | | | metze
* s3:ntvfs/posix: avoid unnesessary talloc_reference()Stefan Metzmacher2009-07-151-1/+4
| | | | | | | | | | | | This caused the panics on the RAW-SETFILEINFO.RENAME test, because we returned an empty strings. The problem was: ERROR: talloc_steal with references at ntvfs/posix/pvfs_setfileinfo.c:215 reference at ntvfs/posix/pvfs_resolve.c:799 metze
* Upgrade ntvfs_map_*info to ntvfs_map_async_setup/ntvfs_map_async_finishSam Liddicott2009-06-261-33/+80
| | | | | | | | | | | | | ntvfs_map_fsinfo, ntvfs_map_qpathinfo, ntvfs_map_qfileinfo used an old synchronous mapping technique, acceptable on the grounds that they were only used by the simple vfs which was synchronous. Other vfs may/do use these functions, and by upgrading them to use the ntvfs_map_async_setup/ntvfs_map_async_finish framework, they can now be used asynchronously. Signed-off-by: Sam Liddicott <sam@liddicott.com> Signed-off-by: Stefan Metzmacher <metze@samba.org>
* fixed handling of change notify buffer overrunsAndrew Tridgell2009-06-051-2/+9
| | | | | | | When the notify buffer overruns and there are no pending notify requests, the notify buffer doesn't actually get destroyed, it just gets put in a state where new notifies are discarded and the next notify change request will return 0 changes.
* libwbclient: Add async call framework.Kai Blin2009-05-301-1/+1
|
* Have ntvfs_connect() accept union smb_tcon *tcon instead of char* sharenameSam Liddicott2009-05-2011-17/+191
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Add a new non-convenience version of push_codepoint.Jelmer Vernooij2009-04-231-2/+2
|
* use the tevent nesting code to avoid the uid problem in the VFSAndrew Tridgell2009-03-191-0/+66
| | | | | | | | | | | backend The vfs_unixuid module changes the uid of the process when executing operations on behalf of the user. Within the VFS backend we may rely on semi-async calls, such as winbind calls, which will call the event loop again. To cope with this we need to ensure that while inside those calls we revert the uid to root, then revert back to the connected user when we have finished with the semi-async calls.
* s4:ntvfs_generic: use talloc_get_type() to remote compiler warningsStefan Metzmacher2009-02-131-3/+5
| | | | metze
* s4:pvfs_aio: fix compiler warningStefan Metzmacher2009-02-051-1/+1
| | | | metze
* s4:pvfs: remove compiler warningStefan Metzmacher2009-02-051-2/+1
| | | | metze
* s4:pvfs: use talloc_get_type() to cast from void *Stefan Metzmacher2009-02-0517-49/+102
| | | | metze
* s4:pvfs: fix some talloc related compiler warningsStefan Metzmacher2009-02-054-4/+8
| | | | metze
* s4:libcliraw: s/private/private_dataStefan Metzmacher2009-02-021-12/+12
| | | | metze
* s4:ntvfs/unixuid: s/private/privStefan Metzmacher2009-02-021-23/+23
| | | | metze
* s4:ntvfs/smb2: s/private/pStefan Metzmacher2009-02-021-39/+39
| | | | metze
* s4:ntvfs/simple: s/private/pStefan Metzmacher2009-02-022-52/+52
| | | | metze
* s4:ntvfs/posix: s/private/private_dataStefan Metzmacher2009-02-023-10/+10
| | | | metze
* s4:ntvfs/nbench: s/private/nprivatesStefan Metzmacher2009-02-021-4/+4
| | | | metze
* s4:ntvfs/ipc: s/private/iprivStefan Metzmacher2009-02-021-44/+44
| | | | metze
* s4:ntvfs/common: s/private/private_dataStefan Metzmacher2009-02-023-10/+10
| | | | metze
* s4:ntvfs/cifs_posix_cli: s/private/pStefan Metzmacher2009-02-022-52/+52
| | | | metze
* s4:ntvfs/cifs/: s/private/pStefan Metzmacher2009-02-021-108/+108
| | | | metze
* s4:ntvfs: s/private/private_dataStefan Metzmacher2009-02-022-21/+21
| | | | metze
* Fix the mess with ldb includes.Simo Sorce2009-01-303-2/+2
| | | | | | | | 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.
* added support for stream renames in Samba4Andrew Tridgell2009-01-073-18/+285
| | | | | | | | | This allows the RAW-STREAMS test to work again. We still have some limitations though: - renames of a stream to the default stream doesn't work - delete on close handling between streams and the main file is still broken
* tevent: move samba4 stuff from libtevent.m4 to samba.m4Stefan Metzmacher2009-01-042-3/+2
| | | | metze
* s4:sysdep/inotify: use tevent_fd_set_auto_close()Stefan Metzmacher2009-01-031-3/+17
| | | | metze
* s4:lib/tevent: rename structsStefan Metzmacher2008-12-2915-25/+25
| | | | | | | | | | | | | | | | | | | | 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
* s4:pvfs_aio: use teventStefan Metzmacher2008-12-292-12/+12
| | | | metze
* s4:sys_lease_linux: use teventStefan Metzmacher2008-12-292-8/+8
| | | | metze
* s4:cluster: remove old/broken ctdb codeStefan Metzmacher2008-12-292-6/+1
| | | | | | | | We don't need a full copy of ctdb... If we want to readd cluster support, we should just use a ctdb client library. metze
* s4: Revert "r24284: change brlock_tdb.c to use the dbwrap API. This actually ↵Stefan Metzmacher2008-12-292-72/+101
| | | | | | | | | | | makes the" This reverts commit 4792285282e2ec78ccb0ebc3cac6465d1d26ef10. Conflicts: source4/ntvfs/common/brlock_tdb.c source4/ntvfs/common/config.mk
* Fix more compiler warnings.Jelmer Vernooij2008-12-231-2/+0
|
* Use 32-bit smbpid in interface as required by SMB2, in line withJelmer Vernooij2008-12-232-5/+5
| | | | 1bdd08227e7d046305705050f21f0f1b6dd6994a.
* Fix more compiler warnings in various places.Jelmer Vernooij2008-12-231-3/+3
|
* s4: Fix include path to work with teventTim Prouty2008-12-181-1/+1
|
* s4:ntvfs_generic: pass RAW-OPEN againStefan Metzmacher2008-12-181-0/+2
| | | | | | | This is the samba4 version of commit 9391dad85d08bb0939f4db1472c6cf063ebea892 metze
* s4: fix LIBEVENTS dependencies and use more forward declarationsStefan Metzmacher2008-12-174-2/+4
| | | | | | | We should only include events.h where we really need it and prefer forward declarations of 'struct event_context' 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.
* vfs_cifs - Use ntvfs request transport close to close downstream sessionSam Liddicott2008-12-051-1/+11
| | | | | | | When upstream session closes, close the downstream session Signed-off-by: Sam Liddicott <sam@liddicott.com> Signed-off-by: Stefan Metzmacher <metze@samba.org>
* 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>