1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-25 23:21:54 +03:00
Commit Graph

770 Commits

Author SHA1 Message Date
Christian Ambach
5e7da42f6e do not merge ACEs with different SMB_ACE4_INHERIT_ONLY_ACE flag, this leads to wrong inheritance flags in the ACL e.g. (on GPFS) user:10000036:rwxc:allow (X)READ/LIST (X)WRITE/CREATE (X)MKDIR (X)SYNCHRONIZE (X)READ_ACL (X)READ_ATTR (X)READ_NAMED (X)DELETE (X)DELETE_CHILD (X)CHOWN (X)EXEC/SEARCH (X)WRITE_ACL (X)WRITE_ATTR (X)WRITE_NAMED
user:10000036:rwxc:allow:FileInherit:DirInherit:InheritOnly
 (X)READ/LIST (X)WRITE/CREATE (X)MKDIR (X)SYNCHRONIZE (X)READ_ACL  (X)READ_ATTR  (X)READ_NAMED
 (X)DELETE    (X)DELETE_CHILD (X)CHOWN (X)EXEC/SEARCH (X)WRITE_ACL (X)WRITE_ATTR (X)WRITE_NAMED

group:10000005:rwxc:allow
 (X)READ/LIST (X)WRITE/CREATE (X)MKDIR (X)SYNCHRONIZE (X)READ_ACL  (X)READ_ATTR  (X)READ_NAMED
 (X)DELETE    (X)DELETE_CHILD (X)CHOWN (X)EXEC/SEARCH (X)WRITE_ACL (X)WRITE_ATTR (X)WRITE_NAMED

group:10000005:rwxc:allow:FileInherit:DirInherit:InheritOnly
 (X)READ/LIST (X)WRITE/CREATE (X)MKDIR (X)SYNCHRONIZE (X)READ_ACL  (X)READ_ATTR  (X)READ_NAMED
 (X)DELETE    (X)DELETE_CHILD (X)CHOWN (X)EXEC/SEARCH (X)WRITE_ACL (X)WRITE_ATTR (X)WRITE_NAMED

would be merged to

user:10000036:rwxc:allow:FileInherit:DirInherit:InheritOnly
 (X)READ/LIST (X)WRITE/CREATE (X)MKDIR (X)SYNCHRONIZE (X)READ_ACL  (X)READ_ATTR  (X)READ_NAMED
 (X)DELETE    (X)DELETE_CHILD (X)CHOWN (X)EXEC/SEARCH (X)WRITE_ACL (X)WRITE_ATTR (X)WRITE_NAMED

group:10000005:rwxc:allow:FileInherit:DirInherit:InheritOnly
 (X)READ/LIST (X)WRITE/CREATE (X)MKDIR (X)SYNCHRONIZE (X)READ_ACL  (X)READ_ATTR  (X)READ_NAMED
 (X)DELETE    (X)DELETE_CHILD (X)CHOWN (X)EXEC/SEARCH (X)WRITE_ACL (X)WRITE_ATTR (X)WRITE_NAMED

so the explicit right for the user on the parent directory will be gone (the InheritOnly flag only accounts to subdirectories)
thus leaving the user without access to the directory itself

Signed-off-by: Christian Ambach <christian.ambach@de.ibm.com>
2009-07-06 12:28:52 +02:00
Stefan Metzmacher
b292af0c38 s3:onefs_open: remove unused variable passed to parent_dirname()
metze
2009-07-01 12:53:41 +02:00
Tim Prouty
2ccd501220 s3 onefs: Plumb smb_filename through onefs createfile path 2009-06-25 18:25:47 -07:00
Volker Lendecke
6a66114f25 Add a \n to a debug message in smbacl4_nfs42win 2009-06-25 14:47:27 +02:00
Tim Prouty
e129384d7c s3: Plumb smb_filename through SMB_VFS_STAT and SMB_VFS_LSTAT
This patch introduces two new temporary helper functions
vfs_stat_smb_fname and vfs_lstat_smb_fname.  They basically allowed me
to call the new smb_filename version of stat, while avoiding plumbing
it through callers that are still too inconvenient.  As the conversion
moves along, I will be able to remove callers of this, with the goal
being to remove all callers.

There was also a bug in create_synthetic_smb_fname_split (also a
temporary utility function) that caused it to incorrectly handle
filenames with ':'s in them when in posix mode.  This is now fixed.
2009-06-24 21:15:25 -07:00
Tim Prouty
5eac92697e s3 onefs: Remove dfs resolution from create_file() now that it's being done at a higher level 2009-06-17 20:11:53 -07:00
Tim Prouty
4e3656b8d1 s3: Change SMB_VFS_OPEN to take an smb_filename struct
This was a little messy because of all of the vfs modules I had to
touch.  Most of them were pretty straight forward, but the streams
modules required a little attention to handle smb_filename.  Since the
use of smb_filename enables the vfs modules to access the raw,
over-the-wire stream, a little bit of the handling that was being done
by split_ntfs_stream_name has now been shifted into the individual
stream modules.  It may be a little more code, but overall it gives
more flexibility to the streams modules, while also allowing correct
stream handling.
2009-06-17 20:11:53 -07:00
Tim Prouty
5cfac1a1bd s3: Plumb smb_filename from create_file all of the way down to fd_open
I used the smb_filename struct everywhere that was feasible for the
first pass.  There are still some places in this path that need to be
changed to use smb_filename, but this is a good start.

I also:
- Removed fname/path arguments from a few functions that weren't
  really using them.
- Added a utility function for detecting whether an smb_filename is a
  stream.
2009-06-17 20:11:53 -07:00
Tim Prouty
537aa4cf51 s3 onefs: Fix reading over the end of the array, because the incorrect array was being read. 2009-06-15 14:11:39 -07:00
Tim Prouty
6f335036fd s3 onefs: Change onefs modules to use the new createfile api 2009-06-15 14:03:40 -07:00
Tim Prouty
04afa4b6b5 s3: Plumb smb_filename through SMB_VFS_CREATE_FILE 2009-06-12 16:14:50 -07:00
Tim Prouty
2481d8dcd0 s3: Remove unix_convert handling from createfile implementations 2009-06-10 13:13:27 -07:00
Volker Lendecke
e0a6a344be Support getting gpfs birthtime 2009-06-02 18:15:20 +02:00
Mathias Dietz
15e10c6a84 Store winattrs in GPFS
1. Store win attributes in gpfs instead of posix bits.
    2. use of path based winattr calls of gpfs.

    Signed-off-by: Mathias Dietz <mdietz@de.ibm.com>
2009-06-02 17:03:59 +02:00
Volker Lendecke
84090c95a5 Add a "connectpath" operation to the shadow_copy2 module 2009-06-02 11:58:22 +02:00
Volker Lendecke
56efcb7b72 Add SMB_VFS_CONNECTPATH operation
This is required for the shadow_copy2 module and "wide links = no". The file
system snapshots by nature are typically outside of share directory. So the
REALPATH result fails the wide links = no test.
2009-06-02 11:58:22 +02:00
Tim Prouty
5c623e6c2e s3 onefs: update the onefs module to be compliant with stat_ex 2009-05-28 15:13:53 -07:00
Volker Lendecke
4df33ec4a7 Fix the build of nfs4_acls.c 2009-05-27 11:54:15 +02:00
Volker Lendecke
a8ffc286a4 Fix a size_t/int warning 2009-05-27 11:54:14 +02:00
Volker Lendecke
49ca690b4b Introduce "struct stat_ex" as a replacement for SMB_STRUCT_STAT
This patch introduces

struct stat_ex {
        dev_t           st_ex_dev;
        ino_t           st_ex_ino;
        mode_t          st_ex_mode;
        nlink_t         st_ex_nlink;
        uid_t           st_ex_uid;
        gid_t           st_ex_gid;
        dev_t           st_ex_rdev;
        off_t           st_ex_size;
        struct timespec st_ex_atime;
        struct timespec st_ex_mtime;
        struct timespec st_ex_ctime;
        struct timespec st_ex_btime; /* birthtime */
        blksize_t       st_ex_blksize;
        blkcnt_t        st_ex_blocks;
};
typedef struct stat_ex SMB_STRUCT_STAT;

It is really large because due to the friendly libc headers playing macro
tricks with fields like st_ino, so I renamed them to st_ex_xxx.

Why this change? To support birthtime, we already have quite a few #ifdef's at
places where it does not really belong. With a stat struct that we control, we
can consolidate the nanosecond timestamps and the birthtime deep in the VFS
stat calls.

At this moment it is triggered by a request to support the birthtime field for
GPFS. GPFS does not extend the system level struct stat, but instead has a
separate call that gets us the additional information beyond posix. Without
being able to do that within the VFS stat calls, that support would have to be
scattered around the main smbd code.

It will very likely break all the onefs modules, but I think the changes will
be reasonably easy to do.
2009-05-26 17:48:23 +02:00
Tim Prouty
cfc68fc9d9 s3 onefs: Fix invalid argument from the unix_convert smb_filename struct patch 2009-05-21 12:17:33 -07:00
Tim Prouty
c1a21d085d s3: Change unix_convert (and its callers) to use struct smb_filename
This is the first of a series of patches that change path based
operations to operate on a struct smb_filename instead of a char *.
This same concept already exists in source4.

My goals for this series of patches are to eventually:

1) Solve the stream vs. posix filename that contains a colon ambiguity
   that currently exists.
2) Make unix_convert the only function that parses the stream name.
3) Clean up the unix_convert API.
4) Change all path based vfs operation to take a struct smb_filename.
5) Make is_ntfs_stream_name() a constant operation that can simply
   check the state of struct smb_filename rather than re-parse the
   filename.
6) Eliminate the need for split_ntfs_stream_name() to exist.

My strategy is to start from the inside at unix_convert() and work my
way out through the vfs layer, call by call.  This first patch does
just that, by changing unix_convert and all of its callers to operate
on struct smb_filename.  Since this is such a large change, I plan on
pushing the patches in phases, where each phase keeps full
compatibility and passes make test.

The API of unix_convert has been simplified from:

NTSTATUS unix_convert(TALLOC_CTX *ctx,
		      connection_struct *conn,
		      const char *orig_path,
		      bool allow_wcard_last_component,
		      char **pp_conv_path,
		      char **pp_saved_last_component,
		      SMB_STRUCT_STAT *pst)
to:

NTSTATUS unix_convert(TALLOC_CTX *ctx,
		      connection_struct *conn,
		      const char *orig_path,
		      struct smb_filename *smb_fname,
		      uint32_t ucf_flags)

Currently the smb_filename struct looks like:

struct smb_filename {
       char *base_name;
       char *stream_name;
       char *original_lcomp;
       SMB_STRUCT_STAT st;
};

One key point here is the decision to break up the base_name and
stream_name.  I have introduced a helper function called
get_full_smb_filename() that takes an smb_filename struct and
allocates the full_name.  I changed the callers of unix_convert() to
subsequently call get_full_smb_filename() for the time being, but I
plan to eventually eliminate get_full_smb_filename().
2009-05-20 17:40:15 -07:00
Volker Lendecke
f024ca961e Use SMB_VFS_NEXT_CLOSE. This VFS stuff is really opaque to me...
Thanks Michael to provide some transparency :-)
2009-05-20 15:44:27 +02:00
Volker Lendecke
54973d0422 Fix bug disclosed by lock8 torture test
We have to drop the gpfs level share modes, regardless of whether we put
the file into the pending close queue.
2009-05-20 15:15:57 +02:00
Aravind Srinivasan
bb454b5fd9 s3 onefs: Removing an incorrect TALLOC_FREE
Signed-off-by: Tim Prouty <tprouty@samba.org>
2009-05-19 10:01:15 -07:00
Volker Lendecke
5fb3b8e377 Move down the become_root()/unbecome_root() calls into the VFS modules
The aio_fork module does not need this, as it does not communicate via signals
but with pipes. Watching a strace log with those become_root() calls in aio.c
is absolutely awful, and it does affect performance.
2009-05-18 13:38:56 +02:00
Volker Lendecke
67a2e62991 In aio_fork, we have to close all fd's, we might hold a gpfs share mode
Keeping such an fd open prohibits another open of that same file.
2009-05-18 10:42:22 +02:00
Volker Lendecke
8b9c5f0483 Fix a race condition in vfs_aio_fork with gpfs share modes 2009-05-18 10:42:22 +02:00
Zack Kirsch
3627ceb5e2 s3 onefs: Self-contend level2 oplocks on BRL 2009-05-12 17:53:16 -07:00
Tim Prouty
c2482d6b23 s3 onefs: Fix ignore sacl parameter 2009-05-12 17:52:00 -07:00
Jeremy Allison
ad9d64ee1b Clean up assignments to iov_base, ensure it's always cast to void *. This should quieten some warnings with picky compilers on the buildfarm.
Jeremy.
2009-05-12 11:45:37 -07:00
Jeremy Allison
b4c9cfb2af Fix a bunch of compiler warnings about wrong format types.
Should make Solaris 10 builds look cleaner.
Jeremy.
2009-05-11 21:56:57 -07:00
tprouty
3242c6caf7 s3 onefs: Turn up the debug level for non-error cases 2009-05-05 16:43:53 -07:00
tprouty
69d61453df s3: Fix trans2 path to use case-insensitive stat optimization
Often times before creating a file, a client will first query to see
if it already exists.  Since some systems have a case-insensitive stat
that is called from unix_convert, we can definitively return
STATUS_NO_SUCH_FILE to the client without scanning the whole
directory.

This code path is taken from trans2querypathinfo, but trans2findfirst
still does a full directory scan even though the get_real_filename
(the case-insensitive stat vfs call) can prevent this.

This patch adds the get_real_filename call to the trans2find* path,
and also changes the vfs_default behavior for
SMB_VFS_GET_REAL_FILENAME.  Previously, in the absence of a
get_real_filename implementation, we would fallback to the full
directory scan.  The default behavior now returns -1 and sets errno to
EOPNOTSUPP.  This allows SMB_VFS_GET_REALFILENAME to be called from
trans2* and unix_convert.
2009-05-05 16:43:53 -07:00
Steven Danneman
798389c49a s3:onefs.so Change system function names
Addendum to c49730e1.  Use newer cookie conversion names.
2009-05-05 14:42:19 -07:00
Steven Danneman
c49730e15b s3:onefs.so fix issue with missing entries when enumerating directories
This bug prompted several, fairly large changes to the of OneFS's
readdirplus() within Samba.

One fundamental problem is that we kept our cache cursor pointed at the
next entry to be returned from onefs_readdir(), while the resume cookie
needed to refill the cache such that our cursor would be on this entry,
was located in the previous cache entry.  This meant that to correctly handle
seekdir() cases which could be found within the existing cache, and cases
where a cache reload was needed, required that the cache always hold
at least two entries: the entry we wished to return, and the previous entry
which held the resume cookie.  Since the readdirplus() syscall gives us no
guarantee that it will always return these two direntries, there was a
fundamental problem with this design.

To fix this problem, I have rearchitected the onefs_readdir() path to keep
its pointer on the entry which contains the resume_cookie, not the entry
which will be returned next.  Essentially, I changed onefs_readdir() from a
"return an entry then increment the cursor" model to "increment the cursor
then return an entry".  By doing this, we only require that a single entry
be within the cache: the entry containing the resume cookie.

Second, there have been numerous off-by-one bugs in my implementation of
onefs_seekdir() which did a mapping between the 64-bit resume cookie
returned by readdirplus() and its own monotonically increasing "location"
offset.  Furthermore, this design caused a somewhat frequent waste of
cycles, as in some cases we'd need to re-enumerate the entire directory to
recover the current "location" from an old resume cookie.  As this code was
somewhat difficult to understand, prone to bugs, and innefficient in some
cases I decided it was better to wholesale replace it now, rather than later.

It is possible to algorithmically map the 64-bit resume cookies from
readdirplus() into 32-bit offset values which SMB requires.  The onefs.so
module now calls into a system library to do this conversion.  This greatly
simplifies both the seekdir() and telldir() paths and is more efficient.
2009-05-04 15:02:17 -07:00
Volker Lendecke
c33291d49f Fix annoying debug messages when no snapshots are used
Not being able to open the shadow copy directory is the same as having no
shadow copy support at all. The VFS module should in this case not log with
debug level 0 and set ENOSYS to indicate "no shadow copies used" to the higher
levels.
2009-04-28 11:21:49 +02:00
Tim Prouty
161bd7f78f s3 onefs: Fix case-insensitivity for mangled names
onefs_get_real_filename needs to demangle the filename before doing
the case-insensitive estat
2009-04-07 10:44:50 -07:00
Volker Lendecke
a2d5fe4a05 Make some functions static to vfs_gpfs.c 2009-04-06 13:29:59 +02:00
Volker Lendecke
f2e17a4b24 Add prototype for smbd_gpfs_get_realfilename_path 2009-04-06 13:29:59 +02:00
Volker Lendecke
54c2fe6583 Fix two c++ warnings in vfs_gpfs.c 2009-04-06 13:29:59 +02:00
Tim Prouty
87fe4d732d s3 onefs: Quiet a log message about oplocks being requested on streams 2009-04-01 20:06:18 -07:00
Tim Prouty
7424665061 s3 onefs: Add missing newlines to debug statements in the onefs module 2009-03-31 17:31:50 -07:00
Zack Kirsch
bfc7bb49ff s3 onefs: Async failures are resulting in SMB_ASSERT->smb_panic while running many of the LOCK torture tests.
Return true from the onefs cancel function if we've errored, which can happen
when the CBRL domain is configured to only give out 1 lock. :)
2009-03-31 17:29:07 -07:00
Scott Urban
ee22c417f3 s3: added per-client statistics to onefs perfcount module
* we now track, uid, remote ip, and local ip per CIFS operation
* removed perfcount_set_client() from perfcount interface as it's
  unecessary
2009-03-27 17:33:26 -07:00
Volker Lendecke
9e70a960b7 Fix the build of nfsv4_acls.c
.. after adding smb_iconv_convenience to ndr_size_security_descriptor()
2009-03-27 11:10:50 +01:00
Jeremy Allison
1f83aafac8 Try and fix the build farm RAW-STREAMS errors. Ordering of
modules shouldn't matter, so as vfs_streams_depot doesn't
implement get/setxattrs then call into the full VFS stack
at the top.
Jeremy
2009-03-26 15:30:42 -07:00
Steven Danneman
365b5cfcbe Add missing newlines to debug statements 2009-03-25 12:53:06 -07:00
David Kwan
ad98eae02e s3 onefs: Change error status to NT_ACCESS_DENIED for errors in SET_SECURITY_DESC 2009-03-24 17:27:37 -07:00
Tim Prouty
130582f170 s3 OneFS: Remove usage of non-existant function
The function was removed in:
c16c90a1cb
2009-03-23 11:57:13 -07:00
Volker Lendecke
14df86e9e3 Use StrCaseCmp in the dirsort module 2009-03-22 11:44:13 +01:00
Andy Kelk
2835d0d463 Add dirsort module 2009-03-22 11:44:13 +01:00
Tim Prouty
710948c788 s3 onefs: Correctly error out when the read returns EOF
Also add some more debugging.
2009-03-18 16:51:41 -07:00
Tim Prouty
c3227b6233 s3: Don't return in a void funtion 2009-03-13 22:02:53 -07:00
Dave Richards
5df46fa35b s3 OneFS: Add kernel strict locking support 2009-03-13 14:21:40 -07:00
Dave Richards
1fcc11ff25 s3: Add strict lock/unlock calls to the vfs layer to replace is_locked 2009-03-13 14:16:55 -07:00
Volker Lendecke
3d280639c4 Add a vfs_preopen module to hide fs latencies 2009-03-10 18:11:56 +01:00
Tim Prouty
04f5f73905 s3 OneFS: Use the public open_streams_for_delete 2009-03-04 18:32:13 -08:00
Jeremy Allison
f85aa66ca2 Fix crashes when running RAW-ACLs against system with tdb ACL modules
(caused by the POSIX pathname fixes).
Jeremy.
2009-03-04 14:48:33 -08:00
Volker Lendecke
e8484e01ed Make use of gpfs_get_real_filename optional 2009-03-04 11:23:12 +01:00
Tim Prouty
243d4e8a08 s3 OneFS: Add parameter to ignore streams 2009-03-03 13:06:16 -08:00
Tim Prouty
664268a287 s3 OneFS: Refactor config code and cleanup includes 2009-03-01 16:39:55 -08:00
Jeremy Allison
a6d0a93fc2 Use fsp->posix_open in preference if we have it.
Jeremy.
2009-02-25 14:50:19 -08:00
Jeremy Allison
9b8bb1ad95 Ensure ACL modules work with POSIX paths.
Jeremy.
2009-02-25 14:12:51 -08:00
Tim Prouty
01493737c8 s3 OneFS: Add .snapshot directory configuration handling 2009-02-25 13:57:11 -08:00
Jeremy Allison
76ca297ecf Fix use of streams modules with CIFSFS client.
Jeremy.
2009-02-25 13:46:21 -08:00
Tim Prouty
afc7e45a4c s3 OneFS: Fix uninitialized variable 2009-02-24 21:55:44 -08:00
Dan Sledz
4e024b3f87 s3: onefs_acl.c cleanup
Remove some duplicate code.
Add a \n to a debugging statement
2009-02-24 15:53:02 -08:00
todd stecher
95bf60b39d S3: Add in profile counters for new vfs and syscall entries. 2009-02-24 15:53:01 -08:00
Tim Prouty
7bcaaf14fb s3 OneFS: Add a parameter that unconditionally allows execute access 2009-02-23 23:21:48 -08:00
Jeremy Allison
faa1100d22 More warning fixes for Solaris.
Jeremy.
2009-02-23 16:22:43 -08:00
Jeremy Allison
2033b44c3f More warning fixes for Solaris.
Jeremy.
2009-02-23 15:44:34 -08:00
Jeremy Allison
0b62cdbed0 Quieten down a boatload of shadowed variable warnings on Solaris.
Makes real problems easier to spot.
Jeremy.
2009-02-23 15:03:29 -08:00
Tim Prouty
8ec9903426 s3 OneFS: Add an atomic sendfile implementation 2009-02-21 17:10:42 -08:00
Zack Kirsch
5300dc6288 s3 OneFS: Add debugging for createfile_flags 2009-02-20 16:42:50 -08:00
Steven Danneman
5bd7f9c61b s3: OneFS implementation of change notify
The OneFS Samba implementation of change notify is modeled after the
usage of Linux's inotify kernel subsystem.  A single call is made
into the onefs.so VFS module to initialize kernel tracking of certain
file change events.  When these events occur a kernel notification is
sent to smbd and the notification event is translated and given to the
general Samba Change Notify layer through a callback function.

The most difficult aspect is converting an SMB CompletionFilter to
a matching ifs_event mask, and then back to an appropriate change
notify action.  Currently, not all possible cases are handled by the
this module, but the most prevalent ones, which are tested by
smbtorture, are implemented.
2009-02-20 14:10:31 -08:00
Jeremy Allison
e6a5f11865 Fix bug #6133 - Cannot delete non-ACL files on Solaris/ZFS/NFSv4 ACL filesystem.
As the NFSv4 ACL mapping code doesn't map write directory into the DELETE_CHILD
permission bit (which we require before allowing a delete) no one can delete
files without an explicit DELETE_CHILD bit set on the directory. Add this mapping.
Jeremy.
2009-02-20 08:23:52 -08:00
Tim Prouty
73d5f14c04 s3 OneFS: Add shadow copy module 2009-02-19 21:09:31 -08:00
Tim Prouty
53bcd162ee s3 OneFS: Add file_id_create implementation to take advantage of snapshots 2009-02-19 21:09:30 -08:00
Tim Prouty
e4675ce8db s3: Add extid to the dev/inode pair
This extends the file_id struct to add an additional generic uint64_t
field: extid.  For backwards compatibility with dev/inodes stored in
xattr_tdbs and acl_tdbs, the ext id is ignored for these databases.
This patch should cause no functional change on systems that don't use
SMB_VFS_FILE_ID_CREATE to set the extid.

Existing code that uses the smb_share_mode library will need to be
updated to be compatibile with the new extid.
2009-02-19 20:58:26 -08:00
Tim Prouty
6fbebb5369 s3: Modify SMB_VFS_FILE_ID_CREATE to take a stat struct
Since file_id_create_dev is incompatible with the concept of file_ids,
it is now static and in the one file that needs it.
2009-02-19 20:58:01 -08:00
Zack Kirsch
96b3242f12 s3 OneFS: Fixes "inherit permissions" and "nt acl support" for Onefs. 2009-02-19 00:15:44 -08:00
todd stecher
fdcd5a3a20 S3: Make changes to perfcount API set for when a single request leads to multiple replies
(e.g. reply_echo). Change test and onefs modules to match new api set (thanks Volker!).
2009-02-19 00:01:00 -08:00
Zack Kirsch
053e1873c5 s3: OneFS: Pass in the client's fnum to the ifs_cbrl syscall. 2009-02-18 20:50:05 -08:00
Aravind Srinivasan
176e885720 s3: Fix OneFS bug opening streams with truncating disposition
Do not attempt to delete streams on a truncating open, if the name we're
opening is itself a stream
2009-02-18 20:50:05 -08:00
Aravind Srinivasan
8e8aa27e1b s3: Fix streams enumeration bug in OneFS implementation
Previously, we didn’t call SMB_VFS_OPEN_DIR from the streams module,
instead we called fdopendir(). As a result we failed to populate the
dir_state list in the readdirplus module. So when we tried to view the
stream data, we will always returned NULL.

To solve this I separated onefs_opendir() and the initialization of
the dir_state list. This is done by introducing a new utility function
“onefs_rdp_add_dir_state()”, which initializes the dir_state structure
and adds it to the dir_state list.  This function is called from the
streams module before calling readdir().
2009-02-18 20:49:31 -08:00
Tim Prouty
57a31ef203 s3 perfcount: Fix segfault with smbclient 'echo 3 foo' 2009-02-16 00:29:20 -08:00
Tim Prouty
6bd7e2b097 s3 OneFS: Add defaults to the fake timestamp parameters 2009-02-16 00:29:20 -08:00
Volker Lendecke
b08e24a44c Replace a // style comment with a /* */ one 2009-02-14 22:01:02 +01:00
Volker Lendecke
ef3672a655 Fix some C++ warnings 2009-02-14 22:01:02 +01:00
Tim Prouty
85eccea0b4 s3 OneFS: Add recvfile implementation 2009-02-13 21:36:42 -08:00
Holger Hetterich
4261cae2eb Enable total anonymization in vfs_smb_traffic_analyzer, by mapping any user names to the one given by anonymize_prefix, without generating a hash number. This setting is optional and is compatible with the module configuration format of Samba 3.3. 2009-02-13 17:22:25 -08:00
Aravind Srinivasan
6085ba3dec s3 OneFS: Add vfs implementation for SMB_VFS_GET_REAL_FILE_NAME 2009-02-13 12:59:30 -08:00
todd stecher
dbe2588e46 s3: Test module for perfcount system
Add 'perfcount module = pc_test' to exercise this module. Results are
logged into smb.log every 50 operations (configurable via smb.conf).
2009-02-13 12:59:30 -08:00
Zack Kirsch
a3531314dd OneFS implementation of BRL VFS ops:
* Much of the beginning should look familiar, as I re-used the OneFS oplock
  callback record concept. This was necessary to keep our own state around - it
  really only consists of a lock state, per asynchronous lock that is currently
  unsatisfied.  The onefs_cbrl_callback_records map to BLRs by the id.
* There are 4 states an async lock can be in. NONE means there is no async
  currently out for the lock, as opposed to ASYNC. DONE means we've locked
  *every* lock (keep in mind a request can ask for multiple locks at a time.)
  ERROR is an error.
* onefs_cbrl_async_success: The lock_num is incremented, and the state changed,
  so that when process_blocking_lock_queue is run, we will try the *next* lock,
  rather than the same one again.
* onefs_brl_lock_windows() has some complicated logic:
    * We do a no-op if we're passed a BLR and the matching state is ASYNC --
      this means Samba is trying to get the same lock twice, and we just need
      to wait longer, so we return an error.
    * PENDING lock calls happen when the lock is being queued on the BLQ -- we
      do async in this case.
    * We also do async in the case that we're passed a BLR, but the lock is not
      pending. This is an async lock being probed by process_blocking_lock_queue.
    * We do a sync lock for any normal first request of a lock.
    * Failure is returned, but it doesn't go to the client unless the lock has
      actually timed out.
2009-02-13 10:08:55 -08:00
Zack Kirsch
813273c87e Add VFS ops for Windows BRL: Lock, Unlock and Cancel:
This patch adds 3 new VFS OPs for Windows byte range locking: BRL_LOCK_WINDOWS,
BRL_UNLOCK_WINDOWS and BRL_CANCEL_WINDOWS. Specifically:

* I renamed brl_lock_windows, brl_unlock_windows and brl_lock_cancel to
  *_default as the default implementations of the VFS ops.
* The blocking_lock_record (BLR) is now passed into the brl_lock_windows and
  brl_cancel_windows paths. The Onefs implementation uses it - future
  implementations may find it useful too.
* Created brl_lock_cancel to do what brl_lock/brl_unlock do: set up a
  lock_struct and call either the Posix or Windows lock function. These happen
  to be the same for the default implementation.
* Added helper functions: increment_current_lock_count() and
  decrement_current_lock_count().
* Minor spelling correction in brl_timeout_fn: brl -> blr.
* Changed blocking_lock_cancel() to return the BLR that it has cancelled. This
  allows us to assert its the lock that we wanted to cancel. If this assert ever
  fires, this path will need to take in the BLR to cancel, rather than choosing
  on its own.
* Adds a small helper function: find_blocking_lock_record_by_id(). Used by the
  OneFS implementation, but could be useful for others.
2009-02-13 10:08:40 -08:00
Steven Danneman
dc19a60e50 s3 onefs: rename custom parameter to plural to match previous usage 2009-02-12 14:08:56 -08:00
todd stecher
1884b92872 s3 OneFS: Expand the usage of the ignore sacl parameter 2009-02-11 12:26:47 -08:00
todd stecher
a45c5c607a S3: Add in missing full audit entries. 2009-02-10 14:43:15 -08:00
Steven Danneman
11f60a62a1 s3: OneFS bulk directory enumeration support
OneFS provides the bulk directory enumeration syscall readdirplus().  This
syscall has the same semantics as the NFSv3 READDIRPLUS command, returning
a batch of directory entries with prefetched stat information via one
syscall.

This commit wraps the readdirplus() call in the existing POSIX
readdir/seekdir VFS interface.  By default a batch of 128 directory entries
are optimistically read from the kernel into a global cache, and fed to
iterative calls of VFS_OP_READDIR.

The global buffers could be avoided in the future by hanging connection
specific buffers off the conn struct.

Added new parameter "onefs:use readdirplus" which toggles usage of this
code on or off.
2009-02-09 23:56:17 -08:00
Steven Danneman
6272f4c2f4 s3: Added SMB_VFS_INIT_SEARCH_OP to initialize data at the beginning of SMB search requests.
By default this VFS call is a NOOP, but the onefs vfs module takes advantage
of it to initialize direntry search caches at the beginning of each
TRANS2_FIND_FIRST, TRANS2_FIND_NEXT, SMBffirst, SMBsearch, and SMBunique
2009-02-09 23:56:17 -08:00
Steven Danneman
af0e199b31 Add an optional SMB_STRUCT_SMB parameter to VFS_OP_READDIR
* this allows VFS implementations that prefetch stat information on
  readdir to return it through one VFS call
* backwards compatibility is maintained by passing in NULL
* if the system readdir doesn't return stat info, the stat struct is
  set to invalid
2009-02-09 23:56:16 -08:00
Tim Prouty
9a7491e831 s3 OneFS: Change ACLs to do a stat-only open before get/set_security_descriptor
This ensures that getting/stting a security descriptor does not
contend an oplock.  The correct access checks will be still be done in
the kernel on the get/set rather than the open.
2009-02-09 23:47:46 -08:00
Tim Prouty
16d2c2fa58 s3 OneFS: Add kernel oplocks implementation
A few functions in oplocks_onefs.c need to be accessed from the onefs
vfs module.  It would be ideal if oplocks were implemented at the vfs
layer, but since they aren't yet, a new header is added to
source3/include to make these functions available to the onefs vfs
module.  oplocks_onefs.o doesn't need to be linked into the onefs vfs
module explicitly, since it is already linked into smbd by default.
2009-02-09 23:47:45 -08:00
Tim Prouty
122dbbf00a s3 vfs: Add a destructor to the fsp extension data API
I'm not certain if the dummy pointer is needed in struct vfs_fsp_data,
but I added it to be consistent with the comment below.
2009-02-09 23:46:12 -08:00
todd stecher
f8c0d2fe01 S3 OneFS: Add in Isilon specific performance counter module 2009-02-09 13:23:44 -08:00
todd stecher
5d070483ac s3 OneFS: Fake Timestamps
This checkin enables setting arbitrary timestamps on files matching
the pattern stored in smb.conf. This was a customer request for a
specific workflow.

Changes include:
1) configuration state machine to avoid tons of string comparisons on
   each and every stat.

2) Code to adjust post-stat() times to match time now, or sloptime +
   time now.
2009-02-09 00:36:39 -08:00
Miguel Suarez
a4c5054b5a Fix bug #6085 - In vfs_default.c change utime( ) call. 2009-02-03 14:36:50 -08:00
Tim Prouty
8b7a1394aa s3 onefs: Fix onefs ACLs to work with updated ACL syscall 2009-01-30 15:44:07 -08:00
Tim Prouty
60d058442e s3 onefs: Add the OneFS implementation of SMB_VFS_GET_ALLOC_SIZE 2009-01-29 15:29:33 -08:00
Tim Prouty
b8f7cdbd79 s3: Add a new SMB_VFS_GET_ALLOC_SIZE vfs operation
This allows module implementors to customize what allocation size is
returned to the client.
2009-01-29 15:29:33 -08:00
Stefan Metzmacher
b8c416fe2a s3:smbd: convert aio to use tevent_signal
metze
2009-01-27 15:28:09 +01:00
todd stecher
c23f0f13b4 Modify OneFS module to support new NTIMES interfaces 2009-01-23 21:05:38 -08:00
todd stecher
48b0016cff Extend NTIMES to allow setting create_time
1) Add in smb_file_time struct to clarify code and make room for createtime.
2) Get and set create time from SMB messages.
3) Fixup existing VFS modules + examples Some OS'es allow for the
setting of the birthtime through kernel interfaces. This value is
generically used for Windows createtime, but is not settable in the
code today.
2009-01-23 21:05:38 -08:00
Dan Sledz
b7eabeb347 s3: OneFS unmappable sids support.
Updates the onefs vfs module to add configurable behavior to deal
with sids that are unknown to us.  The best examples are aces that
come from robocopy/xcopy.

Adds the following share level options (which are specific to the vfs_onefs
module):

onefs: ignore unmappable sids (Default = false)
If this option is set to true, sids which could not be resolved to
a uid/gid are ignored.  If an unmappable sid is encountered as the owner
or group, the owner/group is converted to BUILTIN\Administrators.

onefs: unmappable sids ignore list (Default = empty)
Only the sids in the list are ignored.

onefs: ignore sacls (Default = false)
SACLs are ignored

onefs: unmappable sids deny everyone (Default = false)
If an unmappable sid is found in a deny ACE, the ACE's identity is
changed to Everyone.
2009-01-23 13:49:12 -08:00
Jeremy Allison
b30b1cfcaf Apply same logic fix for #4308 Excel save operation corrupts file ACLs
to NFSv4 ACL code as this uses the same flawed logic as posix_acls.c.
Jeremy.
2009-01-22 16:21:02 -08:00
Jeremy Allison
634cc6b64a Fix logic error in try_chown - we shouldn't arbitrarily chown
to ourselves unless that was passed in.
Jeremy.
2009-01-22 15:57:41 -08:00
Karolin Seeger
3089cfcc4b s3/vfs_extd_audit: Don't ignore "syslog = 0".
This fixes bug #5956.
Thanks to Oskar Wycislak <cantorek [at] gmail.com> for reporting
and providing a patch!

Karolin
2009-01-21 18:32:38 +01:00
Stefan Metzmacher
554a89df0c s3:vfs_fileid: readd "fileid:algorithm" as option.
"fileid:mapping" is still supported as fallback.

metze
2009-01-16 15:16:58 +01:00
Tim Prouty
abf37b3e23 s3: Remove an incorrect const 2009-01-15 21:59:20 -08:00
Michael Adam
2fb694df23 s3:vfs_xattr_tdb: don't leak state_path() to talloc_tos in xattr_tdb_init().
Michael
2009-01-16 01:02:21 +01:00
Michael Adam
2f06192523 s3:vfs_acl_tdb: don't leak state_path() to talloc_tos() in acl_tdb_init()
Michael
2009-01-16 01:02:21 +01:00
Steven Danneman
4a578ec50b Covert several persistant tdb files to use state_path() instead of lock_path() 2009-01-12 17:46:15 -08:00
Tim Prouty
44937c55ff s3: Fix uninitialized variable in OneFS streams 2009-01-11 23:29:14 -08:00
Tim Prouty
a1e428914b s3: Add OneFS alternate data streams implementation 2009-01-11 22:13:36 -08:00
Tim Prouty
5c48ba6563 s3: General cleanup of the open path in the OneFS vfs module 2009-01-11 22:13:36 -08:00
Tim Prouty
29384794cc s3: Remove rendundant op_tuple entry in xattr streams 2009-01-09 11:50:28 -08:00
Stefan Metzmacher
c34d5f445a s3:events: change event_add_timed() prototype to match samba4
metze
2009-01-05 15:07:35 +01:00
Volker Lendecke
21b7b000fb Use talloc_tos in vfs_full_audit.c:do_log 2009-01-05 13:42:27 +01:00
Volker Lendecke
3305fa2798 Fix a bad memleak in vfs_full_audit 2009-01-05 13:42:26 +01:00
Volker Lendecke
6d4fd789f6 Add create_file to vfs_op_names 2009-01-05 13:09:32 +01:00
Volker Lendecke
34d0cb4f17 Fix bug 6012: Add "get_real_filename" to full_audit
Thanks to Hodur <coil93@gmail.com> for testing!

Volker
2009-01-05 13:09:31 +01:00
Tim Prouty
c0b98297b4 s3: Remove a few unnecessary checks from the streams depot module and fix to work with NTRENAME
Handling of error codes when renaming a file to a stream and a stream
to a file is now done in rename_internals_fsp.

The NTRENAME stream path only passes in the stream name, so the new
base can now be different from the old base.
2009-01-04 19:31:30 -08:00
Tim Prouty
7ae992b622 s3: Remove a few unnecessary checks from the streams xattr module
Handling of error codes when renaming a file to a stream and a stream
to a file is now done in rename_internals_fsp.

The NTRENAME stream path only passes in the stream name, so the new
base can now be different from the old base.
2009-01-04 19:31:30 -08:00
Volker Lendecke
19b783cce9 Async wrapper for open_socket_out_send/recv 2009-01-04 16:42:40 +01:00
Volker Lendecke
fafb9ecc61 open_socket_out is always used with SOCK_STREAM, remove argument "type" 2009-01-03 19:22:06 +01:00
Tim Prouty
4d82f69f88 s3: Fix caller of print_fsp_open 2008-12-31 21:24:25 -08:00
Jeremy Allison
07e0094365 Fix all warnings in source3 with gcc4.3.
Jeremy.
2008-12-31 18:06:57 -08:00
Volker Lendecke
972295f80a Rename parent_dirname_talloc() to parent_dirname() 2008-12-31 19:33:25 +01:00
Volker Lendecke
5f0b633c72 Use parent_dirname_talloc instead of parent_dirname in vfswrap_mkdir 2008-12-31 19:33:24 +01:00
Kai Blin
daaa2c8231 Try to fix the build by fixing some typos in the vfs code 2008-12-26 14:10:38 +01:00
Jeremy Allison
5184baa959 Fix bug #5990 - strict allocate should be checked before ftruncate
reported by and based on a patch by Yasuma Takeda
<yasuma@osstech.co.jp>.
Jeremy.
2008-12-25 12:13:12 -08:00
Jeremy Allison
4283ae489b Merge branch 'master' of ssh://jra@git.samba.org/data/git/samba 2008-12-18 15:40:05 -08:00
Jeremy Allison
f9bb8fbe83 Comment out the parent inheritance code (this is incorrect) as was
done for POSIX ACLs.
Jeremy.
2008-12-18 15:38:28 -08:00
Aravind Srinivasan
28894f9b82 s3: Add statvfs implementation to the onefs vfs module 2008-12-17 18:13:20 -08:00
Tim Prouty
8e1db7eab1 s3: Fix a few build warnings 2008-12-15 23:30:49 -08:00
Volker Lendecke
110bb22449 Make use of smbd_gpfs_get_realfilename_path in unix_convert
(cherry picked from commit b37684ffce)

Signed-off-by: Michael Adam <obnox@samba.org>
2008-12-10 23:57:23 +01:00
Volker Lendecke
de8bb17255 Fix nonempty blank lines in vfs_gpfs.c
Signed-off-by: Michael Adam <obnox@samba.org>
2008-12-10 23:56:17 +01:00
Volker Lendecke
8e0cce5b38 s3:modules/gpfs: Fix nonempty blank lines 2008-12-10 23:33:02 +01:00
Volker Lendecke
7c2bdead9e Revert "Fix some merge omissions for GPFS"
This reverts commit a0efc4cffb.

This one should have been done with careful cherry-picks, sorry.

Volker
2008-12-10 23:14:46 +01:00
Volker Lendecke
8d64182659 Revert "Fix nonempty blank lines in vfs_gpfs.c"
This reverts commit a4b52118d4.
2008-12-10 23:14:16 +01:00
Volker Lendecke
1896ccb247 Revert "Make use of smbd_gpfs_get_realfilename_path in unix_convert"
This reverts commit b37684ffce.
2008-12-10 23:14:01 +01:00
Volker Lendecke
7ad9676864 Revert "Fix the build"
This reverts commit c044b09572.
2008-12-10 23:13:34 +01:00
Volker Lendecke
c044b09572 Fix the build
Crap, too many trees and no instant, infinitely fast rebuild
2008-12-10 19:02:11 +01:00
Volker Lendecke
b37684ffce Make use of smbd_gpfs_get_realfilename_path in unix_convert 2008-12-10 18:30:23 +01:00
Volker Lendecke
a4b52118d4 Fix nonempty blank lines in vfs_gpfs.c 2008-12-10 18:28:43 +01:00
Volker Lendecke
a0efc4cffb Fix some merge omissions for GPFS 2008-12-10 18:27:10 +01:00
Volker Lendecke
21b9dec990 Pass the get_real_filename operation through the VFS
This is done to help file systems that can tell us about the real upper/lower
case combination given a case-insensitive file name. The sample I will soon
push is the gpfs module (recent gpfs has a get_real_filename function), others
might have a similar function to help alleviate the 1million files in a single
directory problem.

Jeremy, please comment!

Thanks,

Volker
2008-12-10 18:05:26 +01:00
Tim Prouty
7b9f6dda13 s3: [3/3]: Fix a delete on close divergence from windows and the associated torture test
This third patch cleans up by removing all of the code that is made
obsolete by the first patch.  It should cause no functional changes.
2008-12-09 18:06:49 -08:00
Tim Prouty
e0711ffa52 s3: Add the OneFS SMB_VFS_CREATE_FILE implementation
This is the first pass at extending the onefs vfs module to support
the CIFS-specific enhancements available on OneFS.  Most of this patch
is massaging the sama open path to work with ifs_createfile.

ifs_createfile is a CIFS-specific syscall for opening/files and
directories.  It adds support for:
- Full in-kernel access checks using a windows access_mask
- Cluster-coherent share mode locks
- Cluster-coherent oplocks
- Streams
- Setting security descriptors at create time
- Setting dos_attributes at create time

This patch does not implement the samba side of the streams support or
oplocks support.  Tests that expect oplocks to be granted or streams
to be supported will fail.  This will be remedied in upcoming patches.
2008-12-09 14:51:48 -08:00
Tim Prouty
51e7f79b3b s3: Add onefs_open.c with code copied verbatim from smbd/open.c
This is an intermediate step that makes it much easier to see how the
OneFS SMB_VFS_CREATE_FILE implementation diverges from stock samba.
The goal is that more common code can be refactored into utility
functions.
2008-12-09 14:51:48 -08:00
Henning Henkel
09b4a9513c Fix bug #5929 - vfs_prealloc does not build with option --with-cluster-support and GPFS 2008-12-04 13:55:12 -08:00
Tim Prouty
5844012285 s3: Change SMB_VFS_CREATE_FILE to take a create_file_flags argument
This replaces the is_dos_path bool with a more future-proof argument.
The next step is to plumb INTERNAL_OPEN_ONLY through this flag instead
of overridding the oplock_request.
2008-12-03 17:51:44 -08:00
Tim Prouty
61b4597e3c s3: Add SMB_VFS_CREATE_FILE to vfs_full_audit module 2008-12-03 17:50:57 -08:00
Tim Prouty
f995a7af2a s3: Add new "is_dos_path" argument to SMB_VFS_CREATE_FILE
Now unix paths can be differentiated from windows paths so the
underlying create_file implementations can convert paths correctly.
2008-12-03 17:50:37 -08:00
Tim Prouty
f38d7f20a8 s3: Add SMB_VFS_CREATE_FILE to the vfs layer
Modify all callers of create_file to go through SMB_VFS_CREATE_FILE
2008-12-03 17:50:17 -08:00
Steven Danneman
85b8cccab0 Add support for OneFS ACLs
Add to the OneFS VFS module, support for NTFS ACLs through the calls:

SMB_VFS_FGET_NT_ACL()
SMB_VFS_GET_NT_ACL()
SMB_VFS_FSET_NT_ACL()

Also create several new onefs specific smb.conf parameters in onefs.h
2008-12-02 20:35:45 -08:00
Tim Prouty
239f815e30 Add OneFS VFS module skeleton.
Also set configure to autodetect OneFS OS and build this VFS module.
2008-12-02 20:35:45 -08:00
Stefan Metzmacher
65169a43b3 s3:streams_xattr: fstat should do a stat on the base file
The behavior of stat and fstat should be the same.

metze
2008-12-01 14:26:58 -08:00
Stefan Metzmacher
a8004a4ef5 s3:streams_xattr: recheck fsp->fsp_name after a rename
metze
2008-12-01 14:25:20 -08:00
Stefan Metzmacher
b0c0b949fe s3:streams_depot: add an option to disable the xattr checks
streams_depot:check_valid=no is useful when the filesystem
has no xattr support and files are only published via samba.

metze
2008-12-01 14:20:21 -08:00
Stefan Metzmacher
d53f82a1cf s3:streams_depot: fix valgrind bug lp_parm_const_string() doesn't talloc the default value
metze
2008-12-01 14:11:33 -08:00
Stefan Metzmacher
549c2cb7a8 s3:streams_depot: add support for stream renames
metze
2008-12-01 14:10:04 -08:00
Stefan Metzmacher
ce310f666d s3:streams_depot: map 'file::$DATA' to just 'file'
metze
2008-12-01 13:59:21 -08:00
Stefan Metzmacher
9ae1a17c95 s3:streams_xattr: add support for renaming streams
metze
2008-12-01 13:54:53 -08:00
Michael Adam
e021ecea45 s3:vfs_tsmsm: fix potential segfault (freeing uninitialized buffer)
Michael
2008-12-01 06:21:29 +01:00
Michael Adam
afbfbd7f4c [s3]zfsacl: "return" is not a function.
Michael
2008-11-25 11:29:41 +01:00
Nils Goroll
bf04324592 [s3]zfsacl: Prevent calling POSIX ACL vfs methods on zfs share.
This is a proposed fix for Bugs #5135 and #5446.

Signed-off-by: Michael Adam <obnox@samba.org>
2008-11-25 11:29:40 +01:00
Mathias Dietz
51b840a07e Search for gpfs functions in both libgpfs_gpl.so an libgpfs.so
As of GPFS 3.2.1 PTF8 libgpfs will be available as GPL, so we don't need the
special libgpfs_gpl lib anymore. For backwards compatibility with pre-PTF8 GPFS
installations, still look there.
2008-11-24 16:22:05 +01:00
Jeremy Allison
d205766e60 Fix a C90 error.
Jeremy.
2008-11-21 22:51:20 -08:00
Jeremy Allison
338303eb37 Rever 83ff6979f5 - "Fix the logic bug that caused us to
run into kernel oplocks on an open for a stream inside a file with stream_xattr module. On
opening the base_fsp we must break existing oplocks." as it broke make test.
Jeremy.
2008-11-21 22:48:37 -08:00
Jeremy Allison
83ff6979f5 Fix the logic bug that caused us to run into kernel oplocks on an open for a stream inside a file with stream_xattr module. On opening the base_fsp we must break existing oplocks.
Jeremy.
2008-11-21 18:20:38 -08:00
Jeremy Allison
dcc4661d4a Merge branch 'master' of ssh://jra@git.samba.org/data/git/samba 2008-11-21 18:20:33 -08:00
Michael Adam
3d30d5945c [s3]nfs4_acls: make prototype header match definition for smb_set_nt_acl_nfs4()
Add the const from nfs4_acls.c to nfs4_acls.h
This fixes my build of the zfsacl module on solaris.

Michael
2008-11-22 01:53:37 +01:00
Jeremy Allison
ecd8c5d307 Use fxattr calls whenever possible (trying to work around the strange Linux kernel oplock bug).
Jeremy.
2008-11-21 16:02:31 -08:00
Jeremy Allison
8d674e351a Second part of the fix for bug #5903 - vfs_streams_xattr breaks contents of the file
(also fix a bad merge of the previous patch from 3.3).
Jeremy.
2008-11-21 15:42:03 -08:00
Jeremy Allison
53903d9eb1 Fix the build, by some cut-and-paste error I got two versions of the same functions here.
Jeremy.
2008-11-20 10:45:18 -08:00
Jeremy Allison
31a8c4df13 Fix build farm breakage. 2008-11-19 14:51:55 -08:00
Jeremy Allison
d532197042 Add functions to delete NTACL on posix ACL set.
Jeremy.
2008-11-19 12:24:53 -08:00
Jeremy Allison
d8df43e65d Fix bug #5900 reported by monyo@samba.gr.jp - vfs_readonly.so does not work.
Jeremy.
2008-11-17 14:13:20 -08:00
TAKAHASHI Motonobu
e711d76157 Fix bug 5901: Default for streams_depot location 2008-11-16 13:18:56 +01:00
Jeremy Allison
4c7033df5d Move v2 from timestamp to 16-byte hash. Got the change in before on disk format is fixed.
Jeremy.
2008-11-13 17:18:41 -08:00
Michael Adam
dee2c61ce0 [s3]vfs_acl_tdb: fix the build.
ndr_push_struct_blob has a different signature in master as well.

Michael
2008-11-11 10:30:29 +01:00
Jeremy Allison
d6be0ba672 Fix the build (ndr_pull_struct_blob has a different signature in master).
Jeremy.
2008-11-10 20:18:01 -08:00
Jeremy Allison
8076e50fad Added vfs_acl_tdb.c module to do ACLs completely in userspace. Passes all of RAW-ACLS except for the last test which uses a non-POSIX chown. More testing/documentation to follow.
Jeremy.
2008-11-10 17:57:22 -08:00
Jeremy Allison
813bf8b4f4 Fix a subtle logic bug in the adaption of se_create_child_secdesc(), pass RAW-ACL inheritance tests. Only access masks for SD get/set left to fix.
Jeremy.
2008-11-08 22:57:57 -08:00
Jeremy Allison
87f563c230 Start factoring out the inheritance differences.
Jeremy.
2008-11-06 01:58:56 -08:00
Jeremy Allison
24c598b1b9 Don't call FSET_NT_ACL on file create if there's no SD to set. Leave the default ACL in place.
Jeremy.
2008-11-06 01:40:21 -08:00
Jeremy Allison
4af3c2830a Only one more issue with NULL ACL test left to solve.
Jeremy.
2008-11-06 01:01:01 -08:00
Jeremy Allison
f640135d12 Fix crash in module, get more of the NULL acl test right.
Jeremy.
2008-11-06 00:50:56 -08:00