]> git.samba.org - metze/samba/wip.git/blobdiff - source3/modules/onefs.h
Modify OneFS module to support new NTIMES interfaces
[metze/samba/wip.git] / source3 / modules / onefs.h
index 884f1416611752ab3a0eeecd5de40f9d9f4966cf..9c1c1647ba55a36ed7054463198aa55195ff6d59 100644 (file)
@@ -45,6 +45,14 @@ enum onefs_acl_wire_format
 #define PARM_SIMPLE_FILE_SHARING_COMPATIBILITY_MODE_DEFAULT false
 #define PARM_CREATOR_OWNER_GETS_FULL_CONTROL "creator owner gets full control"
 #define PARM_CREATOR_OWNER_GETS_FULL_CONTROL_DEFAULT true
+#define PARM_UNMAPPABLE_SIDS_DENY_EVERYONE "unmappable sids deny everyone"
+#define PARM_UNMAPPABLE_SIDS_DENY_EVERYONE_DEFAULT false
+#define PARM_UNMAPPABLE_SIDS_IGNORE "ignore unmappable sids"
+#define PARM_UNMAPPABLE_SIDS_IGNORE_DEFAULT false
+#define PARM_UNMAPPABLE_SIDS_IGNORE_LIST "unmappable sids ignore list"
+#define PARM_UNMAPPABLE_SIDS_IGNORE_LIST_DEFAULT NULL
+#define PARM_IGNORE_SACL "ignore sacl"
+#define PARM_IGNORE_SACL_DEFAULT false
 
 /*
  * vfs interface handlers
@@ -67,6 +75,35 @@ NTSTATUS onefs_create_file(vfs_handle_struct *handle,
                           int *pinfo,
                           SMB_STRUCT_STAT *psbuf);
 
+int onefs_close(vfs_handle_struct *handle, struct files_struct *fsp);
+
+int onefs_rename(vfs_handle_struct *handle, const char *oldname,
+                const char *newname);
+
+int onefs_stat(vfs_handle_struct *handle, const char *fname,
+              SMB_STRUCT_STAT *sbuf);
+
+int onefs_fstat(vfs_handle_struct *handle, struct files_struct *fsp,
+               SMB_STRUCT_STAT *sbuf);
+
+int onefs_lstat(vfs_handle_struct *handle, const char *path,
+               SMB_STRUCT_STAT *sbuf);
+
+int onefs_unlink(vfs_handle_struct *handle, const char *path);
+
+int onefs_chflags(vfs_handle_struct *handle, const char *path,
+                 unsigned int flags);
+
+NTSTATUS onefs_streaminfo(vfs_handle_struct *handle,
+                         struct files_struct *fsp,
+                         const char *fname,
+                         TALLOC_CTX *mem_ctx,
+                         unsigned int *num_streams,
+                         struct stream_struct **streams);
+
+int onefs_vtimes_streams(vfs_handle_struct *handle, const char *fname,
+                        int flags, struct timespec times[3]);
+
 NTSTATUS onefs_fget_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
                           uint32 security_info, SEC_DESC **ppdesc);
 
@@ -75,13 +112,14 @@ NTSTATUS onefs_get_nt_acl(vfs_handle_struct *handle, const char* name,
 
 NTSTATUS onefs_fset_nt_acl(vfs_handle_struct *handle, files_struct *fsp,
                           uint32 security_info_sent, SEC_DESC *psd);
-
-
 /*
  * Utility functions
  */
 NTSTATUS onefs_samba_sd_to_sd(uint32 security_info_sent, SEC_DESC *psd,
-                             struct ifs_security_descriptor *sd);
+                             struct ifs_security_descriptor *sd, int snum);
+
+NTSTATUS onefs_split_ntfs_stream_name(TALLOC_CTX *mem_ctx, const char *fname,
+                                     char **pbase, char **pstream);
 
 /*
  * System Interfaces