1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
Commit Graph

819 Commits

Author SHA1 Message Date
Aravind Srinivasan
e046b382f2 s3: Add a new VFS op called SMB_VFS_TRANSLATE_NAME
This vop is designed to work in tandem with SMB_VFS_READDIR to allow
vfs modules to make modifications to arbitrary filenames before
they're consumed by callers.  Subsequently the core directory
enumeration code in smbd is now changed to free the memory that may be
allocated in a module.  This vop enables the new version of catia in
the following patch.

Signed-off-by: Tim Prouty <tprouty@samba.org>
2009-08-28 16:38:57 -07:00
Stefan Metzmacher
09fe57923a s3:streams: check for :$DATA only in the backend (fix bug #6642)
We need to allow "\\$Extend\\$Quota:$Q:$INDEX_ALLOCATION" to pass
check_path(), so that the Quota Dialog works.

metze
2009-08-27 16:45:40 +02:00
tprouty
17829cbc82 s3 onefs: Canonicalize the ACL in the correct order 2009-08-26 10:41:55 -07:00
tprouty
3ad9d108a7 s3: Allow full_audit to play nice with smbd if it's using syslog
Explictly pass the facility from both smbd and full_audit to syslog.
Really the only major change is to not call openlog() in full_audit if
WITH_SYSLOG is defined, which implies that smbd is already using
syslog.  This allows full audit to piggy-back on the same ident as
smbd, while still differentiating the logging via the facility.
2009-08-26 10:41:54 -07:00
tprouty
22ee1cd7db s3 audit: Change create_file in full_audit to print whether a directory or file was requested
full_audit will now print out whether the createfile was requested for
a file or directory.  The create disposition is also printed out.
2009-08-26 10:41:54 -07:00
Jeremy Allison
c69f92d16d Second attempt at fix for bug 6529 - Offline files conflict with Vista and Office 2003.
Confirmation from reporter that this fixes the issue in master on ext3/ext4.
Back-ports to follow.
Jeremy.
2009-08-24 20:57:37 -07:00
Volker Lendecke
c54a8db006 Make refusal of SEC_DESC_DACL_PROTECTED configurable
This adds a parameter "gpfs:refuse_dacl_protected" that defaults to false.

GPFS has no place to store the SEC_DESC_DACL_PROTECTED ACL bit. With this
parameter we give customers an option to either ignore this bit or refuse
setting an ACL with it.
2009-08-19 11:39:44 +02:00
Jeremy Allison
a023b6c64b Use defined names rather than numeric constants to make code
clearer.
Jeremy.
2009-08-14 15:06:11 -07:00
Michael Adam
12864ffd51 gpfs.so: map the file_inherit and dir_inherit flags away for files
GPFS sets inherits dir_inhert and file_inherit flags
to files, too, which confuses windows, and seems to
be wrong anyways.

So when mapping a nfs4 acl to a windows acl, we map these
flags away for files.

Michael
2009-08-14 23:23:20 +02:00
Jeremy Allison
d91edeaa94 When mapping EA's into a TDB, don't remove the EA
until the last link to the file is gone (fixes the
build farm RAW-RENAME test with xattr's in tdb's).
Jeremy.
2009-08-12 16:27:17 -07:00
Jeremy Allison
d6270df748 Add "store create time" parameter (docs to follow)
that stores the create time in the user.DosTimestamps EA.
Jeremy.
2009-08-12 13:00:54 -07:00
Jeremy Allison
1ddd10b56a Fix some warnings in the AIX ACL code.
Jeremy.
2009-08-12 10:58:00 -07:00
Jeremy Allison
d296c774c5 Move the checks for null timestamps down below the VFS_NTIMES
layer (as it's done in onefs). This simplifies greatly the
code in smb_set_file_time() w.r.t. changenotify messages.
Jeremy.
2009-08-07 12:38:31 -07:00
Alexander Bokovoy
20d93b5b60 Fix breakage for connect function after API change (connect -> connect_fn) 2009-08-02 20:31:19 +03:00
Tim Prouty
9b461ad7eb s3: Attempt to fix hpuxacl module 2009-07-29 10:12:23 -07:00
Volker Lendecke
94a139afe5 shadow_copy2: The system getrealfilename() can't deal with a 0-length fname
This fixes viewing the content of snapshots in the share root directory. We
have to treat the filename that *just* consists of "@GMT-YYYY.MM.DD-HH.MM.SS"
like the share root, which is the current working directory.
2009-07-29 06:28:50 -04:00
Jeremy Allison
9297b975f5 Fix the build breakage by #including modules/vfs_acl_common.c
into acl_tdb and acl_xattr. Duplicates the code size, but keeps
the code in common so I don't have to do bug fixes in two places
(which is what I really cared about).
Jeremy.
2009-07-27 12:09:40 -07:00
Volker Lendecke
b9756de20a Cleanup patch after "new VFS" 2009-07-25 13:12:08 -04:00
Volker Lendecke
db5d3465ab Cleanup patch after "struct stat_ex" 2009-07-25 13:12:06 -04:00
Tim Prouty
247a77a422 s3 onefs: Fix the onefs modules after the big refactoring 2009-07-24 18:46:07 -07:00
Jeremy Allison
ff547a23ae Factor out common code into vfs_acl_common.c.
Jeremy.
2009-07-24 17:06:41 -07:00
Jeremy Allison
c472bca42c Make acl_tdb match acl_xattr. Large duplication of
code here needs tidying up. Compiles but not yet tested.
Jeremy.
2009-07-24 14:47:52 -07:00
Jeremy Allison
1bab4fdaaf Fix hash function in acl_xattr to be SHA256, make
the hash function selectable. Upgrade version.
Compiles but not fully tested yet (coming). Make
vfs_acl_tdb.c compile - this needs updating to
match acl_xattr (also coming soon).
Jeremy.
2009-07-24 14:09:42 -07:00
Volker Lendecke
d2403dc231 Move the "enum _vfs_op_type" to full_audit
It's only used there now. Someone should now go in and simplify full_audit...
:-)
2009-07-24 11:42:05 -04:00
Volker Lendecke
033185e2a1 Make the smbd VFS typesafe 2009-07-24 11:42:05 -04:00
Volker Lendecke
68028a73b6 Some more VFS type errors 2009-07-24 02:16:17 +02:00
Volker Lendecke
19245509fc Fix some C++ warnings 2009-07-24 02:15:28 +02:00
Tim Prouty
23c703a01e s3: Remove unnecessary callers of get_full_smb_filename
This often times means explicitly denying certain operations on a stream
as they are not supported or don't make sense at a particular level.  At
some point in the future these can be enabled, but for now it's better to
remove ambiguity
2009-07-21 12:04:59 -07:00
Tim Prouty
c9b8a01714 s3: Finish plumbing the fsp->fsp_name smb_fname conversion through the modules. 2009-07-20 17:26:57 -07:00
Volker Lendecke
ce378e7c51 Fix a few type errors in VFS modules 2009-07-19 02:36:59 +02:00
Christian Ambach
bd58a14617 reject ACLs with DESC_DACL_PROTECTED on GPFS
as GPFS does not support the ACE4_FLAG_NO_PROPAGATE NFSv4 flag (which would be the mapping for the DESC_DACL_PROTECTED flag), the status of this flag is currently silently ignored by Samba. That means that if you deselect the "Allow inheritable permissions..." checkbox in Windows' ACL dialog and then apply the ACL, the flag will be back immediately.

To make sure that automatic migration with e.g. robocopy does not lead to ACLs silently (and unintentionally) changed, this patch adds an explicit check for this flag and if set, it will return NT_STATUS_NOT_SUPPORTED so errors are shown up on the Windows side and the Administrator is aware of the ACLs not being settable like intended

Signed-off-by: Christian Ambach <christian.ambach@de.ibm.com>
2009-07-14 09:21:26 +02:00
Jeremy Allison
361aa19e69 Add hash values to the xattr ACLS to determine when
an underlying POSIX ACL is changed out from under us.
Passes RAW-ACL test up to "invalid owner" problem when
trying to create a file owned by Everyone. Now needs
porting to modules/vfs_acl_tdb.c
Jeremy.
2009-07-10 15:50:40 -07:00
Tim Prouty
02aad05e0e s3: Prepare open.c to switch fsp_name to an smb_filename struct 2009-07-08 21:36:04 -07:00
Tim Prouty
3a7d372e2e s3: Change the share_mode_lock struct to store a base_name and stream_name 2009-07-08 21:36:04 -07:00
Tim Prouty
161e182b65 s3: Remove is_ntfs_stream_name() and split_ntfs_stream_name()
Actually I moved split_ntfs_stream_name into torture.c which is the one
consumer of it.  This could probably be changed at some point.
2009-07-08 21:36:04 -07:00
Tim Prouty
1a1d10d22f s3: Plumb smb_filename through dos_mode() and related funtions 2009-07-08 21:36:03 -07:00
Tim Prouty
69c8795b67 s3: convert unix_mode to take an smb_filename 2009-07-08 21:36:03 -07:00
Tim Prouty
dad9131183 s3 onefs: Fix a few bugs from the smb_filename migration 2009-07-07 21:33:48 -07:00
Volker Lendecke
5ab0677b45 Attempt to fix the build of vfs_catia.c -- Tim, please check! 2009-07-07 20:43:21 +02:00
Tim Prouty
431e63cd8b s3: Update streaminfo implementations now that only base names are passed through the vfs 2009-07-06 15:38:47 -07:00
Tim Prouty
fd73ab5782 s3 audit: Fix a memory leak 2009-07-06 15:38:47 -07:00
Tim Prouty
3cb0e521e1 s3: Plumb smb_filename through SMB_VFS_NTIMES 2009-07-06 15:38:42 -07:00
Tim Prouty
f39232a8fb s3 catia: Remove pointless VOPs from catia 2009-07-06 15:38:41 -07:00
Tim Prouty
99bd4fda0c s3: Plumb smb_filename around SMB_VFS_CHFLAGS
SMB_VFS_CHFLAGS isn't actually getting the smb_filename struct for now
since it only operates on the basefile.  This is the strategy for all
path-based operations that will never actually operate on a stream.

By clarifying the meaning of path based operations that don't take an
smb_filename struct, modules that implement streams such as vfs_onefs
no longer need to implement SMB_VFS_CHFLAGS to ensure it's only called
on the base_name.
2009-07-06 15:38:41 -07:00
Tim Prouty
258952aa85 s3: Plumb smb_filename through SMB_VFS_UNLINK 2009-07-06 15:38:36 -07:00
Tim Prouty
133e915a81 s3 audit: Remove some recently introduced memory leaks in the audit modules 2009-07-06 15:38:36 -07:00
Tim Prouty
1b8ffb36b1 s3 audit: Remove the usesless static function declarations from the audit modules 2009-07-06 15:38:35 -07:00
Tim Prouty
e4a85da570 s3 onefs: Fix failure in POSIX smbtorture test
The return value of readlink was a bool instead of an int,
which caused the length of the returned value to never be
>1.
2009-07-06 15:38:35 -07:00
Tim Prouty
5a09ba460c s3: Plumb smb_filename through SMB_VFS_RENAME 2009-07-06 15:38:29 -07:00
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