summaryrefslogtreecommitdiff
path: root/source4/ntvfs/posix
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2008-05-28 13:42:29 +1000
committerAndrew Bartlett <abartlet@samba.org>2008-05-28 13:42:29 +1000
commit0f2d8eacf5217b04c88420513a1a1f52e374d659 (patch)
tree0bfa7b93a0ba286db7839279ddb1f1279e658131 /source4/ntvfs/posix
parentbaa2dffdf34c2f3aa150695c60742d616eeb3b09 (diff)
parentbb264d3a1f212be7eca4b38e61db19de8a26e158 (diff)
downloadsamba-0f2d8eacf5217b04c88420513a1a1f52e374d659.tar.gz
samba-0f2d8eacf5217b04c88420513a1a1f52e374d659.tar.bz2
samba-0f2d8eacf5217b04c88420513a1a1f52e374d659.zip
Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into 4-0-abartlet
(This used to be commit 3038dd8a4ffae4113f49547a9d4d6b1c8c46397a)
Diffstat (limited to 'source4/ntvfs/posix')
-rw-r--r--source4/ntvfs/posix/pvfs_qfileinfo.c9
-rw-r--r--source4/ntvfs/posix/pvfs_read.c2
-rw-r--r--source4/ntvfs/posix/pvfs_write.c2
3 files changed, 11 insertions, 2 deletions
diff --git a/source4/ntvfs/posix/pvfs_qfileinfo.c b/source4/ntvfs/posix/pvfs_qfileinfo.c
index 6e3092b744..c663466985 100644
--- a/source4/ntvfs/posix/pvfs_qfileinfo.c
+++ b/source4/ntvfs/posix/pvfs_qfileinfo.c
@@ -178,6 +178,15 @@ static NTSTATUS pvfs_map_fileinfo(struct pvfs_state *pvfs,
case RAW_FILEINFO_ALL_EAS:
return pvfs_query_all_eas(pvfs, req, name, fd, &info->all_eas.out);
+ case RAW_FILEINFO_SMB2_ALL_EAS: {
+ NTSTATUS status = pvfs_query_all_eas(pvfs, req, name, fd, &info->all_eas.out);
+ if (NT_STATUS_IS_OK(status) &&
+ info->all_eas.out.num_eas == 0) {
+ return NT_STATUS_NO_EAS_ON_FILE;
+ }
+ return status;
+ }
+
case RAW_FILEINFO_IS_NAME_VALID:
return NT_STATUS_OK;
diff --git a/source4/ntvfs/posix/pvfs_read.c b/source4/ntvfs/posix/pvfs_read.c
index a01a8a57e3..8e1a59473f 100644
--- a/source4/ntvfs/posix/pvfs_read.c
+++ b/source4/ntvfs/posix/pvfs_read.c
@@ -46,7 +46,7 @@ NTSTATUS pvfs_read(struct ntvfs_module_context *ntvfs,
}
if (f->handle->fd == -1) {
- return NT_STATUS_FILE_IS_A_DIRECTORY;
+ return NT_STATUS_INVALID_DEVICE_REQUEST;
}
mask = SEC_FILE_READ_DATA;
diff --git a/source4/ntvfs/posix/pvfs_write.c b/source4/ntvfs/posix/pvfs_write.c
index dda8c83407..1f662f13fc 100644
--- a/source4/ntvfs/posix/pvfs_write.c
+++ b/source4/ntvfs/posix/pvfs_write.c
@@ -45,7 +45,7 @@ NTSTATUS pvfs_write(struct ntvfs_module_context *ntvfs,
}
if (f->handle->fd == -1) {
- return NT_STATUS_FILE_IS_A_DIRECTORY;
+ return NT_STATUS_INVALID_DEVICE_REQUEST;
}
if (!(f->access_mask & (SEC_FILE_WRITE_DATA | SEC_FILE_APPEND_DATA))) {