Message ID | dc18955dda8844bf7b27dfd2cce50f7c62eb82e5.1617720952.git.maciek.borzecki@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | cifs: escape spaces in share names | expand |
Good catch - added one other minor thing, whitespace in share name could be a space or a tab, so changed that line to: + seq_escape(m, devname, " \t"); from + seq_escape(m, devname, " "); On Wed, Apr 7, 2021 at 12:35 AM Maciek Borzecki <maciek.borzecki@gmail.com> wrote: > > Commit 653a5efb849a ("cifs: update super_operations to show_devname") > introduced the display of devname for cifs mounts. However, when mounting > a share which has a whitespace in the name, that exact share name is also > displayed in mountinfo. Make sure that all whitespace is escaped. > > Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com> > --- > fs/cifs/cifsfs.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c > index 099ad9f3660bb28db1b6a9aea9538282b41c6455..3c6cb85b95e207df222248f10cc9df937cdda24e 100644 > --- a/fs/cifs/cifsfs.c > +++ b/fs/cifs/cifsfs.c > @@ -476,7 +476,8 @@ static int cifs_show_devname(struct seq_file *m, struct dentry *root) > seq_puts(m, "none"); > else { > convert_delimiter(devname, '/'); > - seq_puts(m, devname); > + /* escape all spaces in share names */ > + seq_escape(m, devname, " "); > kfree(devname); > } > return 0; > -- > 2.31.1 >
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c index 099ad9f3660bb28db1b6a9aea9538282b41c6455..3c6cb85b95e207df222248f10cc9df937cdda24e 100644 --- a/fs/cifs/cifsfs.c +++ b/fs/cifs/cifsfs.c @@ -476,7 +476,8 @@ static int cifs_show_devname(struct seq_file *m, struct dentry *root) seq_puts(m, "none"); else { convert_delimiter(devname, '/'); - seq_puts(m, devname); + /* escape all spaces in share names */ + seq_escape(m, devname, " "); kfree(devname); } return 0;
Commit 653a5efb849a ("cifs: update super_operations to show_devname") introduced the display of devname for cifs mounts. However, when mounting a share which has a whitespace in the name, that exact share name is also displayed in mountinfo. Make sure that all whitespace is escaped. Signed-off-by: Maciek Borzecki <maciek.borzecki@gmail.com> --- fs/cifs/cifsfs.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)