summaryrefslogtreecommitdiff
path: root/source3/include/vfs.h
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r9483: Changed DIR to SMB_STRUCT_DIR because of the amazing stupidity of a ↵Jeremy Allison1-7/+8
UNIX vendor not understanding abstract data types :-(. Jeremy. (This used to be commit be5b4e2fa3ed30b0ff01b47d2354e5f782a12e25)
2007-10-10r9091: Fix #2954, aix 5.1 compile. Stupid aix aio.h header defines ↵Jim McDonough1-2/+2
aio_error and aio_return as macros... (This used to be commit 65adbd83fe6a29705e9831d118fb0e0f93f2ef1f)
2007-10-10r8219: Merge the new open code from HEAD to 3.0. Haven't yet run the tortureJeremy Allison1-1/+2
tests on this as it's very late NY time (just wanted to get this work into the tree). I'll test this over the weekend.... Jerry - in looking at the difference between the two trees there seem to be some printing/ntprinting.c and registry changes we might want to examine to try keep in sync. Jeremy. (This used to be commit c7fe18761e2c753afbffd3a78abff46472a9b8eb)
2007-10-10r8093: Next round. Now it compiles with --enable-socket-wrapper.Volker Lendecke1-4/+4
Volker (This used to be commit 25cbcfba30f534f3fb31627ba43421c42ccd5b0f)
2007-10-10r7963: Add aio support to 3.0.Jeremy Allison1-3/+30
Jeremy. (This used to be commit 1de27da47051af08790317f5b48b02719d6b9934)
2007-10-10r7893: Add in the extra parameters to opendir() to fix the large ↵Jeremy Allison1-2/+3
directory/insane app problem. Rev vfs version. Doesn't change the normal codepath. Jeremy. (This used to be commit 0f03a6bdcdbdf60da81e0aeffa84ac6e48fc6a04)
2007-10-10r7882: Looks like a large patch - but what it actually does is make SambaJeremy Allison1-1/+1
safe for using our headers and linking with C++ modules. Stops us from using C++ reserved keywords in our code. Jeremy (This used to be commit 9506b8e145982b1160a2f0aee5c9b7a54980940a)
2007-10-10r3844: Attempt to get the build farm in line. Some systems seem to have definedVolker Lendecke1-2/+2
rewinddir as a macro and don't like the construct to call a function pointer called rewinddir. Work around by renaming the function pointer... Volker (This used to be commit e547308d3ed307a242723076dff9974973fccc97)
2007-10-10r3642: Extend vfs to add seekdir/telldir/rewinddir. Yes I know I have toJeremy Allison1-3/+13
fix the modules too... First step in fixing out large directories problem. Jeremy. (This used to be commit 344e9dd33a936b429fefb67cd748ac009a1bab10)
2007-10-10r404: Revert the change 378 to vfs_extd_audit.c, the parseable auditingVolker Lendecke1-0/+3
Implement vfs_full_audit.c that can log every vfs.h operation. So if you change vfs.h, from now on you also have to change full_audit :-) Volker (This used to be commit 9cb9c5f7c97fe8f76735a77b321c9500d28b55b2)
2004-01-06Patch based on work from James Peach <jpeach@sgi.com> to convert over toJeremy Allison1-1/+8
using pread/pwrite. Modified a little to ensure fsp->pos is correct. Fix for #889. Jeremy. (This used to be commit 019aaaf0df091c3f67048f591e70d4353a02bb9b)
2003-08-07Shadow copy API - Original work by "Ken Cross" <kcross@nssolutions.com>, adaptedJeremy Allison1-2/+7
into a patch by "Stefan (metze) Metzmacher" <metze@metzemix.de>. Jeremy. (This used to be commit ce5c91d35dabc5ff6fb3df2b259ed186d6a7e0da)
2003-07-24Add a macro to check whether module-specific data set already or not. ↵Alexander Bokovoy1-0/+3
Returns True or False. Should support further encapsulation of VFS-specific structs (This used to be commit 180e617f54021ced270c7c8cb86dd478d809d041)
2003-06-06Added EA operations to VFS layer.Jeremy Allison1-3/+49
Jeremy. (This used to be commit 024de9213e414659296cb518a6753e510c64f614)
2003-06-04Sync VFS API changes for vfs_nt_*get_acl. Patch from Stefan Metzmacher ↵Alexander Bokovoy1-1/+1
<mezte@metzemix.de> (This used to be commit c5e8acd3b7b8a7063aa6ffde1099196daf1c317b)
2003-05-29Change get_nt_acl() to include security_info wanted. Only return this.Jeremy Allison1-3/+4
This gets us closer to W2k+ in what we return for file ACLs. Fix horribly broken make_sec_desc() that screwed up the size when given a SD with no owner or group (how did it get this bad... ?). Jeremy. (This used to be commit 183c9ed4052ab14e269ed1234ca557053f77e77a)
2003-05-14Prefix VFS API macros with SMB_ for consistency and to avoid problems with ↵Alexander Bokovoy1-4/+4
VFS_ macros at system side. We currently have one clash with AIX and its VFS_LOCK. Compiled and tested -- no new functionality or code, just plain rename of macros for yet-unreleased VFS API version. Needs to be done before a24 is out (This used to be commit c2689ed118b490e49497a76ed6a2251262018769)
2003-05-11Fix VFS layer:Alexander Bokovoy1-142/+231
1. Finally work with cascaded modules with private data storage per module 2. Convert VFS API to macro calls to simplify cascading 3. Add quota support to VFS layer (prepare to NT quota support) Patch by Stefan (metze) Metzemacher, with review of Jelmer and me Tested in past few weeks. Documentation to new VFS API for third-party developers to follow (This used to be commit 91984ef5caa2d13c5d52e1f535bd3bbbae1ec978)
2003-04-16More merges from HEAD:Jelmer Vernooij1-2/+2
- Stephan Kulow's changes (fixing warnings in libsmbclient) - VFS modules - Seperating libs (This used to be commit 6e9b7802335428c88ecf4e44a0e2395ac58e96b5)
2002-09-25sync'ing up for 3.0alpha20 releaseGerald Carter1-2/+5
(This used to be commit 65e7b5273bb58802bf0c389b77f7fcae0a1f6139)
2002-08-17sync 3.0 branch with headJelmer Vernooij1-2/+199
(This used to be commit 3928578b52cfc949be5e0ef444fce1558d75f290)
2002-03-22Stomped on some header file version numbers that have crept back in.Tim Potter1-2/+1
(This used to be commit e66bdf1229ba84f64c19e817e2c4081dbbf0bee8)
2002-03-19Sync up vfs changes from 2.2.x.Jeremy Allison1-2/+4
Jeremy. (This used to be commit ad1e858d8e72adf924ff435eab8da3e60842e2e6)
2002-03-12Added POSIX ACL layer into the vfs.Jeremy Allison1-2/+25
Jeremy. (This used to be commit 7d59445b6962547a8938928a9371651a09e26516)
2002-01-30Removed version number from file header.Tim Potter1-2/+1
Changed "SMB/Netbios" to "SMB/CIFS" in file header. (This used to be commit 6a58c9bd06d0d7502a24bf5ce5a2faf0a146edfa)
2002-01-10Getting ready to add UNIX extensions in HEAD also.Jeremy Allison1-25/+28
Jeremy (This used to be commit 6210d4aa196c944e47076e316980f76ac9c6b02d)
2001-09-04Merge of transfer file code from 2.2, fix for readbraw.Jeremy Allison1-2/+2
Jeremy. (This used to be commit c05e79453655abb67fd47a2d3dba88b4c5377e35)
2001-07-04The big character set handling changeover!Andrew Tridgell1-19/+19
This commit gets rid of all our old codepage handling and replaces it with iconv. All internal strings in Samba are now in "unix" charset, which may be multi-byte. See internals.doc and my posting to samba-technical for a more complete explanation. (This used to be commit debb471267960e56005a741817ebd227ecfc512a)
2001-06-29Ensured all the system calls in msdfs.c go through the vfs layer.Jeremy Allison1-0/+2
Added vfs calls to symlink() and readlink() with appropriate configure checks. Jeremy. (This used to be commit c24e6b41ea60ab4bac2fcd19da947851d6df3c7c)
2001-04-14configure:Jeremy Allison1-0/+2
configure.in: include/config.h.in: include/profile.h: smbd/vfs-wrap.c: smbd/vfs.c: Added fchmod and fchown to VFS (sorry Gerald - but we needed them anyway). smbd/dosmode.c: smbd/files.c: printing/printfsp.c: smbd/close.c: smbd/open.c: Fixed "dos filemode" correctly so there are no race conditions. Forces test of open of file O_WRONLY before allowing fchmod as root. Afterwards, calls standard close function that preserves POSIX locks due to POSIX-me-harder braindamage. :-). Andrew please review this code. Also - in removing the tmpdir param in smbrun an extra NULL parameter was missed in each print_run_command() call (which is a varargs fn.). Now fixed. Jeremy. (This used to be commit 32397e5bc6d995ce7ca37c82d6aedc1e5b1b6fbd)
2001-01-23include/vfs.h:Jeremy Allison1-0/+8
smbd/vfs-wrap.c: smbd/vfs.c: Added fchmod_acl and chmod_acl. lib/substitute.c: smbd/lanman.c: smbd/open.c: smbd/process.c: smbd/reply.c: smbd/service.c: Removed sessetup_user variable. Added current_user_info struct which conatins domain info etc. Added '%D' for client domain parameter. Jeremy. (This used to be commit 2844ec3d511680609d6794b8718001a1bda9e89f)
2000-11-06Added a VFS version return to init call. Allows smbd to fail an init ifJeremy Allison1-0/+8
versions don't match. Jeremy. (This used to be commit d0fbb4f5d999abade8930cc6fff231a2af6cccfb)
2000-10-06Herb's warning fixes. Also the POSIX locking fix.Jeremy Allison1-2/+2
We now use our own vfs layer to do get/set acl calls (hurrah!). Jeremy. (This used to be commit dfe77c7046cbd65ee52aea7439f21503c1eac41d)
2000-10-06Restructuring of vfs layer to include a "this" pointer - can be an fsp orJeremy Allison1-220/+39
a conn struct depending on the call. We need this to have a clean NT ACL call interface. This will break any existing VFS libraries (that's why this is pre-release code). Andrew gets credit for this one :-) :-). In addition - added Herb's WITH_PROFILE changes - Herb - please examine the changes I've made to the smbd/reply.c code you added. The original code was very ugly and I have replaced it with a START_PROFILE(x)/END_PROFILE(x) pair using the preprocessor. Please check this compiles ok with the --with-profile switch. Jeremy. (This used to be commit b07611f8159b0b3f42e7e02611be9f4d56de96f5)
2000-10-05Vector get_nt_acl/set_nt_acl via vfs. POSIX ACL support should be addedJeremy Allison1-10/+76
above this layer. Jeremy. (This used to be commit b90af886a951b7b049ed7a42e6d99c332e43897b)
2000-10-03utf-8 and EUC3 patch from Hiroshi Miura Samba User Group Japan staff.Jeremy Allison1-2/+4
mkdir high bits patch from Robert Dahlem" <Robert.Dahlem@gmx.net>. jeremy. (This used to be commit b40191d27180ab1e59935086073c4d312552f717)
2000-09-27Restructuring of the code to remove dos_ChDir/dos_GetWd and re-vector themJeremy Allison1-0/+7
through the VFS. All file access/directory access code in smbd should now go via the vfs. Added vfs_chown/vfs_chmod calls. Still looking at vfs_get_nt_acl() vfs_set_nt_acl() call API design. Jeremy. (This used to be commit f96625ec124adb6e110dc54632e006b3620a962b)
2000-08-03Added an NT_USER_TOKEN structure that is copied/passed around associatedJeremy Allison1-0/+49
with the current user. This will allow se_access_check() to quickly do a SD check without having to translate uid/gid's to SIDs. Still needs work on pipe calls. Jeremy. (This used to be commit e28d01b744b3dbd33e0e54af4e7f426fa8c082b8)
2000-05-02Moved uglyness needed in fcntl locking (64->32 bit mapping, NFSJeremy Allison1-0/+1
errors etc.) into locking/posix.c, where it is needed. fcntl_lock in lib/util.c is now very small and clean. Added (*lock) op to vfs layer. Jeremy. (This used to be commit 46092ee1410faa4e3c143d80a960a8adaa19d7fc)
2000-04-22This is a *big* checkin that may break some things, but implements theJeremy Allison1-0/+1
new open mechanism Andrew & I discussed. config.sub: configure: Included the QNX patch. include/vfs.h: smbd/vfs-wrap.c: smbd/vfs.c: Added ftruncate vfs call (needed). Note that we will also need locking calls in the vfs (to be added). lib/util_unistr.c: nmbd/nmbd_processlogon.c: Fix for NT domain logons causing nmbd to core dump. Also fix for sidsize DOS bug. locking/locking.c: Check value of ret before using it for memdup. printing/printing.c: Convert print_fsp_open to return an allocated fsp. rpc_server/srv_lsa.c: Fix for NT domain logons. I have removed all use of lp_share_modes() from the code (although I left the parameter in the table for backwards compatibility). It no longer makes sense for this to exist. smbd/close.c: Removed lp_share_modes(). smbd/fileio.c: Fixed parameters to unlock_share_entry call in panic code. smbd/files.c: Correctly set the unix_ERR_code to ERRnofids on fsp allocation fail. smbd/nttrans.c: smbd/reply.c: smbd/trans2.c: Changed all occurrences of open_file_shared/open_directory/ open_file_stat to return an fsp from the call. smbd/open.c: Changed all occurrences of open_file_shared/open_directory/ open_file_stat to return an fsp from the call. In addition I have fixed a long standing race condition in the deny mode processing w.r.t. two smbd's creating a file. Andrew, please note that your original idea of using open with O_EXCL in this case would not work (I went over the races very carefully) and so we must re-check deny modes *after* the open() call returns. This is because there is a race between the open with O_EXCL and the lock of the share mode entry. Imagine the case where the first smbd does the open with O_EXCL and a deny mode of DENY_ALL, but is pre-empted before it locks the share modes and creates the deny mode entry for DENY_ALL. A second smbd could then come in with O_RDONLY and a deny mode of DENY_NONE and the two opens would be allowed. The *only* way to fix this race is to lock the share modes after the open and then do the deny mode checks *after* this lock in the case where the file did not originally exist. This code will need extensive testing but seems to initially work. Jeremy. (This used to be commit ab0ecc39d688f16b9692fe90b991f0b89287070a)
2000-04-04Change to vfs API. POSIX states fsync should return an int, not a void.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 6c442d68afae4140e28b770343a900b5ce510b4a)
2000-02-03Busting up of source/include/smb.h into smaller pieces which can beTim Potter1-0/+147
#included by VFS modules without bringing in too much other junk. (This used to be commit 13a2cf80f65156e725a5716e62a4c44e70f5340f)
1999-12-132nd phase of head branch sync with SAMBA_2_0 - this delets all the files ↵Andrew Tridgell1-146/+0
that were in the head branch but weren't in SAMBA_2_0 (This used to be commit d7b208786590b5a28618590172b8d523627dda09)
1999-07-22Added service name to vfs_connection_struct.Tim Potter1-0/+9
Added a vfs_options struct for passing smb.conf parameters to VFS modules. (This used to be commit 38cc03ae0cccb359e31c8dca65606b66ff473762)
1999-05-11Avoid a symbol conflict with /usr/include/sys/vfs.h under AIX.Tim Potter1-0/+6
Thanks to Steve Noyd Jones <noyd@u.washington.edu> (This used to be commit 117d369aed6576b5932d3f973a64ca8b6ed921dc)
1999-04-20Broke out of smb.hTim Potter1-0/+131
Changed arguments to fsync() function to break dependency on connection_struct. (This used to be commit 373ffe77599275b5cb17fed90ca0737785133b54)