summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Prouty <tprouty@samba.org>2009-02-18 23:10:41 -0800
committerTim Prouty <tprouty@samba.org>2009-02-18 23:48:35 -0800
commitab025bf0fe80c3ed84a3fe0ee3aac053f05154f8 (patch)
tree4ec0cb2418e9290e5f23d84c91cd4626ad739ca6
parent7a2c4acf8631813889982f6059f17a1954308906 (diff)
downloadsamba-ab025bf0fe80c3ed84a3fe0ee3aac053f05154f8.tar.gz
samba-ab025bf0fe80c3ed84a3fe0ee3aac053f05154f8.tar.bz2
samba-ab025bf0fe80c3ed84a3fe0ee3aac053f05154f8.zip
s3: Fix 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. Port 176e8857203944bc332844b700749120ce90c891 to standard open path
-rw-r--r--source3/smbd/open.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index f7a52d7bd2..9971ffa679 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -1975,7 +1975,7 @@ static NTSTATUS open_file_ntcreate(connection_struct *conn,
SMB_ASSERT(lck != NULL);
/* Delete streams if create_disposition requires it */
- if (file_existed && clear_ads) {
+ if (file_existed && clear_ads && !is_ntfs_stream_name(fname)) {
status = delete_all_streams(conn, fname);
if (!NT_STATUS_IS_OK(status)) {
TALLOC_FREE(lck);