summaryrefslogtreecommitdiff
path: root/source3/include/vfs.h
diff options
context:
space:
mode:
authorSteven Danneman <steven.danneman@isilon.com>2009-01-22 20:14:38 -0800
committerSteven Danneman <steven.danneman@isilon.com>2009-02-09 23:56:16 -0800
commitaf0e199b31ea4132e369508d72888757887b3327 (patch)
tree38be76f86b5c7b226785ed8c5cec559fab775756 /source3/include/vfs.h
parent9a7491e83177ba32e30f29e1b84b8b8be9888953 (diff)
downloadsamba-af0e199b31ea4132e369508d72888757887b3327.tar.gz
samba-af0e199b31ea4132e369508d72888757887b3327.tar.bz2
samba-af0e199b31ea4132e369508d72888757887b3327.zip
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
Diffstat (limited to 'source3/include/vfs.h')
-rw-r--r--source3/include/vfs.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/source3/include/vfs.h b/source3/include/vfs.h
index 228f090600..6aea0ae6a0 100644
--- a/source3/include/vfs.h
+++ b/source3/include/vfs.h
@@ -113,6 +113,7 @@
/* Leave at 25 - not yet released. Add create_file call. -- tprouty. */
/* Leave at 25 - not yet released. Add create time to ntimes. -- tstecher. */
/* Leave at 25 - not yet released. Add get_alloc_size call. -- tprouty. */
+/* Leave at 25 - not yet released. Add SMB_STRUCT_STAT to readdir. - sdann */
#define SMB_VFS_INTERFACE_VERSION 25
@@ -303,7 +304,9 @@ struct vfs_ops {
/* Directory operations */
SMB_STRUCT_DIR *(*opendir)(struct vfs_handle_struct *handle, const char *fname, const char *mask, uint32 attributes);
- SMB_STRUCT_DIRENT *(*readdir)(struct vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp);
+ SMB_STRUCT_DIRENT *(*readdir)(struct vfs_handle_struct *handle,
+ SMB_STRUCT_DIR *dirp,
+ SMB_STRUCT_STAT *sbuf);
void (*seekdir)(struct vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp, long offset);
long (*telldir)(struct vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp);
void (*rewind_dir)(struct vfs_handle_struct *handle, SMB_STRUCT_DIR *dirp);