summaryrefslogtreecommitdiff
path: root/source3/modules/vfs_default.c
AgeCommit message (Collapse)AuthorFilesLines
2011-10-01Move FSCTL handling into the VFS. Initial code changes. Passes smbtorture ↵Richard Sharpe1-0/+335
NTTRANS-FSCTL. Test added to selftests.
2011-09-30s3: Re-add (), fix a gcc hintVolker Lendecke1-1/+1
Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Fri Sep 30 15:06:47 CEST 2011 on sn-devel-104
2011-09-27Free the memory talloc'dRichard Sharpe1-1/+6
Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Tue Sep 27 18:51:47 CEST 2011 on sn-devel-104
2011-06-01Remove the char * argument from the SMB_VFS_GETWD() call. Now alwaysJeremy Allison1-4/+2
returns malloc'ed memory. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed Jun 1 04:06:12 CEST 2011 on sn-devel-104
2011-06-01Change sys_getcd() to take no arguments and always return malloc'ed memory ↵Jeremy Allison1-2/+4
(or NULL). Part of the efforts to remove PATH_MAX on modern systems.
2011-05-31s3: Remove SHADOW_COPY_DATA typedefVolker Lendecke1-1/+4
2011-05-04s3-vfs: make vfswrap_llistxattr and vfswrap_flistxattr static.Günther Deschner1-2/+2
Guenther Autobuild-User: Günther Deschner <gd@samba.org> Autobuild-Date: Wed May 4 12:31:10 CEST 2011 on sn-devel-104
2011-04-21s3-vfs: rename open function to open_fn.Günther Deschner1-5/+1
This should finally fix the AIX build and allow to remove AIX specific ifdefs. Guenther Signed-off-by: Jeremy Allison <jra@samba.org> Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Thu Apr 21 02:01:20 CEST 2011 on sn-devel-104
2011-04-20s3-smbd: fix the AIX 5.3 build.Günther Deschner1-0/+4
(AIX defines open to be open64) Guenther
2011-04-14s3: only include smb profiling where needed.Günther Deschner1-0/+1
Guenther Autobuild-User: Günther Deschner <gd@samba.org> Autobuild-Date: Thu Apr 14 01:31:39 CEST 2011 on sn-devel-104
2011-03-30s3: only include ntioctl.h where needed.Günther Deschner1-0/+1
Guenther
2011-03-30s3-vfs: include smbd/smbd.h in vfs modules.Günther Deschner1-0/+2
Guenther
2011-03-30s3-includes: only include system/filesys.h when needed.Günther Deschner1-0/+1
Guenther
2011-03-02s3: Pass smb_filename through the set_offline vfs opVolker Lendecke1-1/+2
2011-03-02s3: Pass smb_filename through the is_offline vfs opVolker Lendecke1-2/+13
2011-02-09Correctly plumb in VFS_FDOPENDIR.Jeremy Allison1-0/+1
2011-02-09Add fdopendir to the VFS. We will use this to reuse a directory fd already ↵Jeremy Allison1-0/+14
open by NtCreateX. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Wed Feb 9 00:55:22 CET 2011 on sn-devel-104
2011-02-01s3: Fix bug 7940 -- fall back for utimes callsVolker Lendecke1-4/+14
There are systems where ./configure has detected advanced utimes calls which are then not available on other kernels. We should do a proper fallback. Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Tue Feb 1 22:37:35 CET 2011 on sn-devel-104
2010-12-21Keep track of the sparse status of an open file handle. Allows bypass ofJeremy Allison1-1/+1
strict allocation on sparse files. Files opened as POSIX opens are always sparse. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Tue Dec 21 04:12:22 CET 2010 on sn-devel-104
2010-12-21Added call out to a Linux-compatible fallocate() when we need to extend a fileJeremy Allison1-2/+3
allocation extent without changing end-of-file size. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Tue Dec 21 02:41:24 CET 2010 on sn-devel-104
2010-12-18Rename vfs operation posix_fallocate to just fallocate and add the ↵Jeremy Allison1-9/+17
vfs_fallocate_mode parameter. It turns out we need the fallocate operations to be able to both allocate and extend filesize, and to allocate and not extend filesize, and posix_fallocate can only do the former. So by defining the vfs op as posix_fallocate we lose the opportunity to use any underlying syscalls (like Linux fallocate) that can do the latter as well. We don't currently use the non-extending filesize call, but now I've changed the vfs op definition we can in the future. For the moment simply map the fallocate op onto posix_fallocate for the VFS_FALLOCATE_EXTEND_SIZE case and return ENOSYS for the VFS_FALLOCATE_KEEP_SIZE case. Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Sat Dec 18 08:59:27 CET 2010 on sn-devel-104
2010-12-16Do more vfs_stat_fsp calls instead of FSTAT - ensures fsp->fsp_name->st is ↵Jeremy Allison1-13/+20
kept up to date. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Thu Dec 16 23:41:06 CET 2010 on sn-devel-104
2010-12-03Replace lseek()/write()/lseek() triple with pwrite call. We already emulate thisJeremy Allison1-12/+2
inside pwrite under the covers. Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Fri Dec 3 03:39:42 CET 2010 on sn-devel-104
2010-12-03Merge the two conflicting allocation codes into one function, ↵Jeremy Allison1-22/+4
vfs_slow_fallocate() and use that from both the truncate and fill_sparse functions. Jeremy.
2010-12-03Oops. Missed adding vfswrap_posix_fallocate to vfs_default_fns table.Jeremy Allison1-0/+1
Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Fri Dec 3 02:26:23 CET 2010 on sn-devel-104
2010-12-02Move posix_fallocate into the VFS where it belongs.Jeremy Allison1-2/+15
Jeremy.
2010-12-01s3: Fix a typoVolker Lendecke1-1/+1
2010-11-20Move the uglyness of #ifdef REALPATH_TAKES_NULL into the vfs_defaultJeremy Allison1-2/+15
module, change the signature of VFS_REALPATH to always return a malloc'ed string. Needed to make some privileges work I plan on doing shortly easier to code. Jeremy. Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Sat Nov 20 02:15:50 CET 2010 on sn-devel-104
2010-10-28s3: Fix bug 7759Volodymyr Khomenko1-16/+18
2010-10-15Fix bug #7734 - When creating files with "inherit ACLs" set to true, we ↵Jeremy Allison1-1/+1
neglect to apply appropriate create masks. Jeremy.
2010-05-18s3-secdesc: remove "typedef struct security_descriptor SEC_DESC".Günther Deschner1-3/+5
Guenther
2010-03-08s3: remove cross-device rename support from vfs_defaultBjörn Jacke1-116/+0
cross-device rename support has some major limitations: - on huge files clients will timeout or hang - ACLs and EA information is not retained Usually a client will have to handle this. A Windows Server with a reparse point will also just return NT_STATUS_NOT_SAME_DEVICE. We will now by default do the same. I will add a vfs module which will restore the old cross-device renames.
2010-03-05Fix for bug #7189 - Open txt files with notepad on samba shares creates problem.Jeremy Allison1-1/+3
Ensure we don't use any of the create_options for Samba private use. Add a new parameter to the VFS_CREATE call (private_flags) which is only used internally. Renumber NTCREATEX_OPTIONS_PRIVATE_DENY_DOS and NTCREATEX_OPTIONS_PRIVATE_DENY_FCB to match the S4 code). Rev. the VFS interface to version 28. Jeremy.
2009-12-09s3: keep subsecond times on cross-filesystem moves and don't follow linksBjörn Jacke1-0/+22
2009-12-08s3: make sys_posix_fallocate more genericBjörn Jacke1-14/+11
this is in preparation for other preallocation methods to be introduced.
2009-12-08s3: allocate only "new" space, not "old" sparse space in the posix_fallocate ↵Björn Jacke1-2/+3
path this makes the posix_fallocate path work analogous to the manual allocate path.
2009-12-03ѕ3: remove superfluous option checkBjörn Jacke1-13/+10
this function is only called when strict alloc is set, no reason to check that twice.
2009-12-02s3: prefer posix_fallocate for doing "strict allocate"Björn Jacke1-4/+21
posix_fallocate is more efficient than manual zero'ing the file. When preallocation in kernel space is supported it's extremely fast. Support for preallocation at fs layer via posix_fallocate and fallocate at kernel site can be found in Linux kernel 2.6.23/glibc 2.10 with ext4, XFS and OCFS2. Other systems that I know of which support fast preallocation in kernel space are AIX 6.1 with JFS2 and recent Solaris versions with ZFS maybe UFS2, too. People who have a system with preallocation in kernel space might want to set "strict allocate = yes". This reduces file fragentation and it's also safer for setups with quota being turned on. As of today most systems still don't have preallocation in kernel space, and that's why "strict allocate = no" will stay the default for now.
2009-11-29s3: Restore "fake directory create times" as a share parameterVolker Lendecke1-3/+3
2009-11-29s3: "copy_reg" only looks at mode, uid, gid, atime and mtime (no birthtime)Volker Lendecke1-2/+1
2009-11-29s3: Pass the "fake dir create times" parameter to sys_*statVolker Lendecke1-4/+8
Step 0 to restore it as a per-share paramter
2009-11-18s3: Replace some create_synthetic_smb_fname() callsVolker Lendecke1-11/+7
In very hot codepaths like the statcache copy_smb_filename and the subsequent recursive talloc_free is noticable in the CPU load.
2009-11-18s3: Do not talloc in readdirVolker Lendecke1-9/+7
This is a hot codepath (called from the stat cache)
2009-11-17Remove "store create time" code, cause create time to be storedJeremy Allison1-3/+1
in the "user.DOSATTRIB" EA. From the docs: In Samba 3.5.0 and above the "user.DOSATTRIB" extended attribute has been extended to store the create time for a file as well as the DOS attributes. This is done in a backwards compatible way so files created by Samba 3.5.0 and above can still have the DOS attribute read from this extended attribute by earlier versions of Samba, but they will not be able to read the create time stored there. Storing the create time separately from the normal filesystem meta-data allows Samba to faithfully reproduce NTFS semantics on top of a POSIX filesystem. Passes make test but will need more testing. Jeremy.
2009-11-11s3:vfs_fs_capabilities: fix a debug messageMichael Adam1-1/+1
Michael
2009-11-04s3: add support for full windows timestamps resolution on filesBjörn Jacke1-6/+13
setting nanosecond timestamps using utimensat() was first supported by Linux kernel 2.6.22 and glibc 2.6. It's specified in POSIX.1-2008. This effectively makes us use Windows' full 100ns timestamp resolution - actually just an improvement from 10^-6 to 10^-7. For now Linux CIFS vfs will also just be able to make use of 100ns resolution, not 1ns.
2009-10-06s3: Add access_mask to the flock VFS callAbhidnya P Chirmule1-2/+2
2009-10-01Fix bug #6769 - symlink unlink does nothing.Jeremy Allison1-1/+5
Always use LSTAT for POSIX pathnames. Jeremy.
2009-09-24s3:vfs_default - correct function parametersMatthias Dieter Wallnöfer1-1/+2
2009-09-09Fix compile in a usually non-selected define.Jeremy Allison1-1/+1
Jeremy.