s3: VFS: Change SMB_VFS_CHDIR to use const struct smb_filename * instead of const...
[sfrench/samba-autobuild/.git] / source3 / include / vfs.h
index 115a9dc01c68089265e70d28f188c1c711495ec1..f5ac5b5c82ea9d7ec08de4ee785479e175054b7e 100644 (file)
                to const struct smb_filename * */
 /* Version 37 - Change readlink from const char *
                to const struct smb_filename * */
+/* Version 37 - Change symlink from const char *
+               to const struct smb_filename * */
+/* Version 37 - Change chdir from const char *
+               to const struct smb_filename * */
 
 #define SMB_VFS_INTERFACE_VERSION 37
 
@@ -729,7 +733,8 @@ struct vfs_fn_pointers {
                        const struct smb_filename *smb_fname,
                        uid_t uid,
                        gid_t gid);
-       int (*chdir_fn)(struct vfs_handle_struct *handle, const char *path);
+       int (*chdir_fn)(struct vfs_handle_struct *handle,
+                        const struct smb_filename *smb_fname);
        char *(*getwd_fn)(struct vfs_handle_struct *handle);
        int (*ntimes_fn)(struct vfs_handle_struct *handle,
                         const struct smb_filename *smb_fname,
@@ -745,7 +750,9 @@ struct vfs_fn_pointers {
                               uint32_t share_mode, uint32_t access_mask);
        int (*linux_setlease_fn)(struct vfs_handle_struct *handle, struct files_struct *fsp, int leasetype);
        bool (*getlock_fn)(struct vfs_handle_struct *handle, struct files_struct *fsp, off_t *poffset, off_t *pcount, int *ptype, pid_t *ppid);
-       int (*symlink_fn)(struct vfs_handle_struct *handle, const char *oldpath, const char *newpath);
+       int (*symlink_fn)(struct vfs_handle_struct *handle,
+                               const char *link_contents,
+                               const struct smb_filename *new_smb_fname);
        int (*readlink_fn)(struct vfs_handle_struct *handle,
                                const struct smb_filename *smb_fname,
                                char *buf,
@@ -1228,7 +1235,8 @@ int smb_vfs_call_lchown(struct vfs_handle_struct *handle,
                        const struct smb_filename *smb_fname,
                        uid_t uid,
                        gid_t gid);
-int smb_vfs_call_chdir(struct vfs_handle_struct *handle, const char *path);
+int smb_vfs_call_chdir(struct vfs_handle_struct *handle,
+                       const struct smb_filename *smb_fname);
 char *smb_vfs_call_getwd(struct vfs_handle_struct *handle);
 int smb_vfs_call_ntimes(struct vfs_handle_struct *handle,
                        const struct smb_filename *smb_fname,
@@ -1251,8 +1259,9 @@ int smb_vfs_call_linux_setlease(struct vfs_handle_struct *handle,
 bool smb_vfs_call_getlock(struct vfs_handle_struct *handle,
                          struct files_struct *fsp, off_t *poffset,
                          off_t *pcount, int *ptype, pid_t *ppid);
-int smb_vfs_call_symlink(struct vfs_handle_struct *handle, const char *oldpath,
-                        const char *newpath);
+int smb_vfs_call_symlink(struct vfs_handle_struct *handle,
+                       const char *link_contents,
+                       const struct smb_filename *new_smb_fname);
 int smb_vfs_call_readlink(struct vfs_handle_struct *handle,
                        const struct smb_filename *smb_fname,
                        char *buf,