OSDN Git Service

cifs: make build_path_from_dentry() return const char *
authorAl Viro <viro@zeniv.linux.org.uk>
Thu, 18 Mar 2021 19:47:35 +0000 (15:47 -0400)
committerSteve French <stfrench@microsoft.com>
Sun, 25 Apr 2021 21:28:23 +0000 (16:28 -0500)
... and adjust the callers.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/cifs/cifsproto.h
fs/cifs/dir.c
fs/cifs/file.c
fs/cifs/inode.c
fs/cifs/ioctl.c
fs/cifs/link.c
fs/cifs/readdir.c
fs/cifs/smb2ops.c
fs/cifs/xattr.c

index a46594c..ed6ea0c 100644 (file)
@@ -69,7 +69,7 @@ extern int init_cifs_idmap(void);
 extern void exit_cifs_idmap(void);
 extern int init_cifs_spnego(void);
 extern void exit_cifs_spnego(void);
-extern char *build_path_from_dentry(struct dentry *);
+extern const char *build_path_from_dentry(struct dentry *);
 extern char *build_path_from_dentry_optional_prefix(struct dentry *direntry,
                                                    bool prefix);
 extern char *cifs_build_path_to_root(struct smb3_fs_context *ctx,
index a3fb81e..01e26f8 100644 (file)
@@ -78,7 +78,7 @@ cifs_build_path_to_root(struct smb3_fs_context *ctx, struct cifs_sb_info *cifs_s
 }
 
 /* Note: caller must free return buffer */
-char *
+const char *
 build_path_from_dentry(struct dentry *direntry)
 {
        struct cifs_sb_info *cifs_sb = CIFS_SB(direntry->d_sb);
@@ -233,7 +233,7 @@ cifs_do_create(struct inode *inode, struct dentry *direntry, unsigned int xid,
        int desired_access;
        struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
        struct cifs_tcon *tcon = tlink_tcon(tlink);
-       char *full_path = NULL;
+       const char *full_path = NULL;
        FILE_ALL_INFO *buf = NULL;
        struct inode *newinode = NULL;
        int disposition;
@@ -619,7 +619,7 @@ int cifs_mknod(struct user_namespace *mnt_userns, struct inode *inode,
        struct cifs_sb_info *cifs_sb;
        struct tcon_link *tlink;
        struct cifs_tcon *tcon;
-       char *full_path = NULL;
+       const char *full_path = NULL;
 
        if (!old_valid_dev(device_number))
                return -EINVAL;
@@ -660,7 +660,7 @@ cifs_lookup(struct inode *parent_dir_inode, struct dentry *direntry,
        struct tcon_link *tlink;
        struct cifs_tcon *pTcon;
        struct inode *newInode = NULL;
-       char *full_path = NULL;
+       const char *full_path = NULL;
 
        xid = get_xid();
 
index d903709..af49b39 100644 (file)
@@ -530,7 +530,7 @@ int cifs_open(struct inode *inode, struct file *file)
        struct cifs_tcon *tcon;
        struct tcon_link *tlink;
        struct cifsFileInfo *cfile = NULL;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        bool posix_open_ok = false;
        struct cifs_fid fid;
        struct cifs_pending_open open;
@@ -689,7 +689,7 @@ cifs_reopen_file(struct cifsFileInfo *cfile, bool can_flush)
        struct TCP_Server_Info *server;
        struct cifsInodeInfo *cinode;
        struct inode *inode;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        int desired_access;
        int disposition = FILE_OPEN;
        int create_options = CREATE_NOT_DIR;
@@ -2072,7 +2072,7 @@ cifs_get_writable_path(struct cifs_tcon *tcon, const char *name,
        struct list_head *tmp;
        struct cifsFileInfo *cfile;
        struct cifsInodeInfo *cinode;
-       char *full_path;
+       const char *full_path;
 
        *ret_file = NULL;
 
@@ -2107,7 +2107,7 @@ cifs_get_readable_path(struct cifs_tcon *tcon, const char *name,
        struct list_head *tmp;
        struct cifsFileInfo *cfile;
        struct cifsInodeInfo *cinode;
-       char *full_path;
+       const char *full_path;
 
        *ret_file = NULL;
 
index c6e7bb4..0b29893 100644 (file)
@@ -1609,7 +1609,7 @@ int cifs_unlink(struct inode *dir, struct dentry *dentry)
 {
        int rc = 0;
        unsigned int xid;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        struct inode *inode = d_inode(dentry);
        struct cifsInodeInfo *cifs_inode;
        struct super_block *sb = dir->i_sb;
@@ -1866,7 +1866,7 @@ int cifs_mkdir(struct user_namespace *mnt_userns, struct inode *inode,
        struct tcon_link *tlink;
        struct cifs_tcon *tcon;
        struct TCP_Server_Info *server;
-       char *full_path;
+       const char *full_path;
 
        cifs_dbg(FYI, "In cifs_mkdir, mode = %04ho inode = 0x%p\n",
                 mode, inode);
@@ -1938,7 +1938,7 @@ int cifs_rmdir(struct inode *inode, struct dentry *direntry)
        struct tcon_link *tlink;
        struct cifs_tcon *tcon;
        struct TCP_Server_Info *server;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        struct cifsInodeInfo *cifsInode;
 
        cifs_dbg(FYI, "cifs_rmdir, inode = 0x%p\n", inode);
@@ -2072,8 +2072,8 @@ cifs_rename2(struct user_namespace *mnt_userns, struct inode *source_dir,
             struct dentry *source_dentry, struct inode *target_dir,
             struct dentry *target_dentry, unsigned int flags)
 {
-       char *from_name = NULL;
-       char *to_name = NULL;
+       const char *from_name = NULL;
+       const char *to_name = NULL;
        struct cifs_sb_info *cifs_sb;
        struct tcon_link *tlink;
        struct cifs_tcon *tcon;
@@ -2317,7 +2317,7 @@ int cifs_revalidate_dentry_attr(struct dentry *dentry)
        int rc = 0;
        struct inode *inode = d_inode(dentry);
        struct super_block *sb = dentry->d_sb;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        int count = 0;
 
        if (inode == NULL)
@@ -2613,7 +2613,7 @@ cifs_setattr_unix(struct dentry *direntry, struct iattr *attrs)
 {
        int rc;
        unsigned int xid;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        struct inode *inode = d_inode(direntry);
        struct cifsInodeInfo *cifsInode = CIFS_I(inode);
        struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
@@ -2764,7 +2764,7 @@ cifs_setattr_nounix(struct dentry *direntry, struct iattr *attrs)
        struct cifsInodeInfo *cifsInode = CIFS_I(inode);
        struct cifsFileInfo *wfile;
        struct cifs_tcon *tcon;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        int rc = -EACCES;
        __u32 dosattr = 0;
        __u64 mode = NO_CHANGE_64;
index dcde44f..aba573d 100644 (file)
@@ -42,7 +42,7 @@ static long cifs_ioctl_query_info(unsigned int xid, struct file *filep,
        struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
        struct cifs_tcon *tcon = cifs_sb_master_tcon(cifs_sb);
        struct dentry *dentry = filep->f_path.dentry;
-       unsigned char *path;
+       const unsigned char *path;
        __le16 *utf16_path = NULL, root_path;
        int rc = 0;
 
index 7c5878a..18e0e31 100644 (file)
@@ -510,8 +510,8 @@ cifs_hardlink(struct dentry *old_file, struct inode *inode,
 {
        int rc = -EACCES;
        unsigned int xid;
-       char *from_name = NULL;
-       char *to_name = NULL;
+       const char *from_name = NULL;
+       const char *to_name = NULL;
        struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
        struct tcon_link *tlink;
        struct cifs_tcon *tcon;
@@ -600,7 +600,7 @@ cifs_get_link(struct dentry *direntry, struct inode *inode,
 {
        int rc = -ENOMEM;
        unsigned int xid;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        char *target_path = NULL;
        struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
        struct tcon_link *tlink = NULL;
@@ -669,7 +669,7 @@ cifs_symlink(struct user_namespace *mnt_userns, struct inode *inode,
        struct cifs_sb_info *cifs_sb = CIFS_SB(inode->i_sb);
        struct tcon_link *tlink;
        struct cifs_tcon *pTcon;
-       char *full_path = NULL;
+       const char *full_path = NULL;
        struct inode *newinode = NULL;
 
        xid = get_xid();
index 7225b2c..67c3177 100644 (file)
@@ -942,7 +942,7 @@ int cifs_readdir(struct file *file, struct dir_context *ctx)
        char *tmp_buf = NULL;
        char *end_of_smb;
        unsigned int max_len;
-       char *full_path = NULL;
+       const char *full_path = NULL;
 
        xid = get_xid();
 
index 81b1e0e..30cfbeb 100644 (file)
@@ -2221,7 +2221,7 @@ smb3_notify(const unsigned int xid, struct file *pfile,
        struct cifs_open_parms oparms;
        struct cifs_fid fid;
        struct cifs_tcon *tcon;
-       unsigned char *path = NULL;
+       const unsigned char *path = NULL;
        __le16 *utf16_path = NULL;
        u8 oplock = SMB2_OPLOCK_LEVEL_NONE;
        int rc = 0;
index bac05dd..0195a9b 100644 (file)
@@ -112,7 +112,7 @@ static int cifs_xattr_set(const struct xattr_handler *handler,
        struct cifs_sb_info *cifs_sb = CIFS_SB(sb);
        struct tcon_link *tlink;
        struct cifs_tcon *pTcon;
-       char *full_path;
+       const char *full_path;
 
        tlink = cifs_sb_tlink(cifs_sb);
        if (IS_ERR(tlink))
@@ -297,7 +297,7 @@ static int cifs_xattr_get(const struct xattr_handler *handler,
        struct cifs_sb_info *cifs_sb = CIFS_SB(sb);
        struct tcon_link *tlink;
        struct cifs_tcon *pTcon;
-       char *full_path;
+       const char *full_path;
 
        tlink = cifs_sb_tlink(cifs_sb);
        if (IS_ERR(tlink))
@@ -414,7 +414,7 @@ ssize_t cifs_listxattr(struct dentry *direntry, char *data, size_t buf_size)
        struct cifs_sb_info *cifs_sb = CIFS_SB(direntry->d_sb);
        struct tcon_link *tlink;
        struct cifs_tcon *pTcon;
-       char *full_path;
+       const char *full_path;
 
        if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_NO_XATTR)
                return -EOPNOTSUPP;