diff options
author | Jeremy Allison <jra@samba.org> | 2013-07-09 16:21:18 -0700 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2013-08-07 11:16:08 +0200 |
commit | dc2320a29828b1787e49c3ec5609b36e08433328 (patch) | |
tree | 79d8c7847be80f557108494d6d605fc25b13cce1 | |
parent | 36bca0236ded85f6565678f8ac711796c82b652d (diff) | |
download | samba-dc2320a29828b1787e49c3ec5609b36e08433328.tar.gz |
Ensure we never return an EA name to a Windows client it can't handle.
Bug 9992 - Windows error 0x800700FE when copying files with xattr names containing ":"
Signed-off-by: Jeremy Allison <jra@samba.org>
-rw-r--r-- | source3/smbd/trans2.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index 7bce6ead1e..8532240fb9 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -345,6 +345,15 @@ static NTSTATUS get_ea_list_from_file_path(TALLOC_CTX *mem_ctx, connection_struc || samba_private_attr_name(names[i])) continue; + /* + * Filter out any underlying POSIX EA names + * that a Windows client can't handle. + */ + if (!lp_posix_pathnames() && + is_invalid_windows_ea_name(names[i])) { + continue; + } + listp = talloc(mem_ctx, struct ea_list); if (listp == NULL) { return NT_STATUS_NO_MEMORY; |