2022-08-02 19:19:02

by Enzo Matsumiya

[permalink] [raw]
Subject: [RFC PATCH v2 0/5] Rename "cifs" module to "smbfs"

Hi,

As part of the ongoing effort to remove the "cifs" nomenclature from the
Linux SMB client, I'm proposing the rename of the module to "smbfs".

As it's widely known, CIFS is associated to SMB1.0, which, in turn, is
associated with the security issues it presented in the past. Using
"SMBFS" makes clear what's the protocol in use for outsiders, but also
unties it from any particular protocol version. It also fits in the
already existing "fs/smbfs_common" and "fs/ksmbd" naming scheme.

This short patch series only changes directory names and includes/ifdefs in
headers and source code, and updates docs to reflect the rename. Other
than that, no source code/functionality is modified (WIP though).

Patch 1/5: effectively changes the module name to "smbfs" and create a
"cifs" module alias to maintain compatibility (a warning
should be added to indicate the complete removal/isolation of
CIFS/SMB1.0 code).
Patch 2/5: rename source-code directory to "fs/smb"
Patch 3/5: update documentation references to "fs/cifs" or "cifs.ko" or
"cifs module" to use "fs/smb" or "smbfs" where appropriate
Patch 4/5: updates the module description to something more concise
Patch 5/5: show a warning on module load indicating that the current
existing module aliases might be removed in the future

Reviews, feedback, suggestions all welcome.


Cheers,

Enzo Matsumiya (5):
cifs: change module name to "smbfs.ko"
smbfs: rename directory "fs/cifs" -> "fs/smb"
smbfs: update doc references
smbfs: update module description
smbfs: show a warning about new name

Documentation/admin-guide/index.rst | 2 +-
.../admin-guide/{cifs => smbfs}/authors.rst | 0
.../admin-guide/{cifs => smbfs}/changes.rst | 4 +-
.../admin-guide/{cifs => smbfs}/index.rst | 0
.../{cifs => smbfs}/introduction.rst | 0
.../admin-guide/{cifs => smbfs}/todo.rst | 8 +-
.../admin-guide/{cifs => smbfs}/usage.rst | 154 +++++++++---------
.../{cifs => smbfs}/winucase_convert.pl | 0
Documentation/filesystems/index.rst | 2 +-
.../filesystems/{cifs => smbfs}/cifsroot.rst | 14 +-
.../filesystems/{cifs => smbfs}/index.rst | 0
.../filesystems/{cifs => smbfs}/ksmbd.rst | 2 +-
Documentation/networking/dns_resolver.rst | 2 +-
.../translations/zh_CN/admin-guide/index.rst | 2 +-
.../translations/zh_TW/admin-guide/index.rst | 2 +-
fs/Kconfig | 6 +-
fs/Makefile | 2 +-
fs/cifs/Makefile | 34 ----
fs/{cifs => smb}/Kconfig | 108 ++++++------
fs/smb/Makefile | 34 ++++
fs/{cifs => smb}/asn1.c | 0
fs/{cifs => smb}/cifs_debug.c | 72 ++++----
fs/{cifs => smb}/cifs_debug.h | 4 +-
fs/{cifs => smb}/cifs_dfs_ref.c | 2 +-
fs/{cifs => smb}/cifs_fs_sb.h | 0
fs/{cifs => smb}/cifs_ioctl.h | 0
fs/{cifs => smb}/cifs_spnego.c | 4 +-
fs/{cifs => smb}/cifs_spnego.h | 0
.../cifs_spnego_negtokeninit.asn1 | 0
fs/{cifs => smb}/cifs_swn.c | 0
fs/{cifs => smb}/cifs_swn.h | 4 +-
fs/{cifs => smb}/cifs_unicode.c | 0
fs/{cifs => smb}/cifs_unicode.h | 0
fs/{cifs => smb}/cifs_uniupr.h | 0
fs/{cifs => smb}/cifsacl.c | 6 +-
fs/{cifs => smb}/cifsacl.h | 0
fs/{cifs => smb}/cifsencrypt.c | 0
fs/{cifs => smb}/cifsglob.h | 26 +--
fs/{cifs => smb}/cifspdu.h | 6 +-
fs/{cifs => smb}/cifsproto.h | 10 +-
fs/{cifs => smb}/cifsroot.c | 0
fs/{cifs => smb}/cifssmb.c | 14 +-
fs/{cifs => smb}/connect.c | 36 ++--
fs/{cifs/cifsfs.c => smb/core.c} | 57 ++++---
fs/{cifs => smb}/dfs_cache.c | 2 +-
fs/{cifs => smb}/dfs_cache.h | 0
fs/{cifs => smb}/dir.c | 2 +-
fs/{cifs => smb}/dns_resolve.c | 0
fs/{cifs => smb}/dns_resolve.h | 0
fs/{cifs => smb}/export.c | 8 +-
fs/{cifs => smb}/file.c | 16 +-
fs/{cifs => smb}/fs_context.c | 20 +--
fs/{cifs => smb}/fs_context.h | 0
fs/{cifs => smb}/fscache.c | 0
fs/{cifs => smb}/fscache.h | 6 +-
fs/{cifs => smb}/inode.c | 10 +-
fs/{cifs => smb}/ioctl.c | 6 +-
fs/{cifs => smb}/link.c | 2 +-
fs/{cifs => smb}/misc.c | 14 +-
fs/{cifs => smb}/netlink.c | 0
fs/{cifs => smb}/netlink.h | 0
fs/{cifs => smb}/netmisc.c | 2 +-
fs/{cifs => smb}/nterr.c | 0
fs/{cifs => smb}/nterr.h | 0
fs/{cifs => smb}/ntlmssp.h | 2 +-
fs/{cifs => smb}/readdir.c | 4 +-
fs/{cifs => smb}/rfc1002pdu.h | 0
fs/{cifs => smb}/sess.c | 10 +-
fs/{cifs => smb}/smb1ops.c | 4 +-
fs/{cifs => smb}/smb2file.c | 2 +-
fs/{cifs => smb}/smb2glob.h | 0
fs/{cifs => smb}/smb2inode.c | 2 +-
fs/{cifs => smb}/smb2maperror.c | 0
fs/{cifs => smb}/smb2misc.c | 0
fs/{cifs => smb}/smb2ops.c | 32 ++--
fs/{cifs => smb}/smb2pdu.c | 22 +--
fs/{cifs => smb}/smb2pdu.h | 0
fs/{cifs => smb}/smb2proto.h | 0
fs/{cifs => smb}/smb2status.h | 0
fs/{cifs => smb}/smb2transport.c | 2 +-
fs/{cifs => smb}/smbdirect.c | 0
fs/{cifs => smb}/smbdirect.h | 2 +-
fs/{cifs => smb}/smbencrypt.c | 0
fs/{cifs => smb}/smberr.h | 0
fs/{cifs/cifsfs.h => smb/smbfs.h} | 12 +-
fs/{cifs => smb}/trace.c | 0
fs/{cifs => smb}/trace.h | 0
fs/{cifs => smb}/transport.c | 4 +-
fs/{cifs => smb}/unc.c | 0
fs/{cifs => smb}/winucase.c | 0
fs/{cifs => smb}/xattr.c | 18 +-
91 files changed, 410 insertions(+), 411 deletions(-)
rename Documentation/admin-guide/{cifs => smbfs}/authors.rst (100%)
rename Documentation/admin-guide/{cifs => smbfs}/changes.rst (74%)
rename Documentation/admin-guide/{cifs => smbfs}/index.rst (100%)
rename Documentation/admin-guide/{cifs => smbfs}/introduction.rst (100%)
rename Documentation/admin-guide/{cifs => smbfs}/todo.rst (96%)
rename Documentation/admin-guide/{cifs => smbfs}/usage.rst (88%)
rename Documentation/admin-guide/{cifs => smbfs}/winucase_convert.pl (100%)
rename Documentation/filesystems/{cifs => smbfs}/cifsroot.rst (86%)
rename Documentation/filesystems/{cifs => smbfs}/index.rst (100%)
rename Documentation/filesystems/{cifs => smbfs}/ksmbd.rst (99%)
delete mode 100644 fs/cifs/Makefile
rename fs/{cifs => smb}/Kconfig (72%)
create mode 100644 fs/smb/Makefile
rename fs/{cifs => smb}/asn1.c (100%)
rename fs/{cifs => smb}/cifs_debug.c (96%)
rename fs/{cifs => smb}/cifs_debug.h (98%)
rename fs/{cifs => smb}/cifs_dfs_ref.c (99%)
rename fs/{cifs => smb}/cifs_fs_sb.h (100%)
rename fs/{cifs => smb}/cifs_ioctl.h (100%)
rename fs/{cifs => smb}/cifs_spnego.c (98%)
rename fs/{cifs => smb}/cifs_spnego.h (100%)
rename fs/{cifs => smb}/cifs_spnego_negtokeninit.asn1 (100%)
rename fs/{cifs => smb}/cifs_swn.c (100%)
rename fs/{cifs => smb}/cifs_swn.h (95%)
rename fs/{cifs => smb}/cifs_unicode.c (100%)
rename fs/{cifs => smb}/cifs_unicode.h (100%)
rename fs/{cifs => smb}/cifs_uniupr.h (100%)
rename fs/{cifs => smb}/cifsacl.c (99%)
rename fs/{cifs => smb}/cifsacl.h (100%)
rename fs/{cifs => smb}/cifsencrypt.c (100%)
rename fs/{cifs => smb}/cifsglob.h (99%)
rename fs/{cifs => smb}/cifspdu.h (99%)
rename fs/{cifs => smb}/cifsproto.h (99%)
rename fs/{cifs => smb}/cifsroot.c (100%)
rename fs/{cifs => smb}/cifssmb.c (99%)
rename fs/{cifs => smb}/connect.c (99%)
rename fs/{cifs/cifsfs.c => smb/core.c} (98%)
rename fs/{cifs => smb}/dfs_cache.c (99%)
rename fs/{cifs => smb}/dfs_cache.h (100%)
rename fs/{cifs => smb}/dir.c (99%)
rename fs/{cifs => smb}/dns_resolve.c (100%)
rename fs/{cifs => smb}/dns_resolve.h (100%)
rename fs/{cifs => smb}/export.c (91%)
rename fs/{cifs => smb}/file.c (99%)
rename fs/{cifs => smb}/fs_context.c (99%)
rename fs/{cifs => smb}/fs_context.h (100%)
rename fs/{cifs => smb}/fscache.c (100%)
rename fs/{cifs => smb}/fscache.h (98%)
rename fs/{cifs => smb}/inode.c (99%)
rename fs/{cifs => smb}/ioctl.c (99%)
rename fs/{cifs => smb}/link.c (99%)
rename fs/{cifs => smb}/misc.c (99%)
rename fs/{cifs => smb}/netlink.c (100%)
rename fs/{cifs => smb}/netlink.h (100%)
rename fs/{cifs => smb}/netmisc.c (99%)
rename fs/{cifs => smb}/nterr.c (100%)
rename fs/{cifs => smb}/nterr.h (100%)
rename fs/{cifs => smb}/ntlmssp.h (98%)
rename fs/{cifs => smb}/readdir.c (99%)
rename fs/{cifs => smb}/rfc1002pdu.h (100%)
rename fs/{cifs => smb}/sess.c (99%)
rename fs/{cifs => smb}/smb1ops.c (99%)
rename fs/{cifs => smb}/smb2file.c (99%)
rename fs/{cifs => smb}/smb2glob.h (100%)
rename fs/{cifs => smb}/smb2inode.c (99%)
rename fs/{cifs => smb}/smb2maperror.c (100%)
rename fs/{cifs => smb}/smb2misc.c (100%)
rename fs/{cifs => smb}/smb2ops.c (99%)
rename fs/{cifs => smb}/smb2pdu.c (99%)
rename fs/{cifs => smb}/smb2pdu.h (100%)
rename fs/{cifs => smb}/smb2proto.h (100%)
rename fs/{cifs => smb}/smb2status.h (100%)
rename fs/{cifs => smb}/smb2transport.c (99%)
rename fs/{cifs => smb}/smbdirect.c (100%)
rename fs/{cifs => smb}/smbdirect.h (99%)
rename fs/{cifs => smb}/smbencrypt.c (100%)
rename fs/{cifs => smb}/smberr.h (100%)
rename fs/{cifs/cifsfs.h => smb/smbfs.h} (97%)
rename fs/{cifs => smb}/trace.c (100%)
rename fs/{cifs => smb}/trace.h (100%)
rename fs/{cifs => smb}/transport.c (99%)
rename fs/{cifs => smb}/unc.c (100%)
rename fs/{cifs => smb}/winucase.c (100%)
rename fs/{cifs => smb}/xattr.c (98%)

--
2.35.3



2022-08-02 19:37:28

by Enzo Matsumiya

[permalink] [raw]
Subject: Re: [RFC PATCH v2 0/5] Rename "cifs" module to "smbfs"

On 08/02, Matthew Wilcox wrote:
>On Tue, Aug 02, 2022 at 04:00:43PM -0300, Enzo Matsumiya wrote:
>> Hi,
>>
>> As part of the ongoing effort to remove the "cifs" nomenclature from the
>> Linux SMB client, I'm proposing the rename of the module to "smbfs".
>>
>> As it's widely known, CIFS is associated to SMB1.0, which, in turn, is
>> associated with the security issues it presented in the past. Using
>> "SMBFS" makes clear what's the protocol in use for outsiders, but also
>> unties it from any particular protocol version. It also fits in the
>> already existing "fs/smbfs_common" and "fs/ksmbd" naming scheme.
>>
>> This short patch series only changes directory names and includes/ifdefs in
>> headers and source code, and updates docs to reflect the rename. Other
>> than that, no source code/functionality is modified (WIP though).
>
>Why did you not reply to Jeff Layton's concern before posting a v2?

Hm, I was pretty sure I did. Sorry about that, I got confused on how my
mail client organized the replies to the initial thread.

Replying to Jeff right now.

2022-08-02 19:37:38

by Matthew Wilcox

[permalink] [raw]
Subject: Re: [RFC PATCH v2 0/5] Rename "cifs" module to "smbfs"

On Tue, Aug 02, 2022 at 04:00:43PM -0300, Enzo Matsumiya wrote:
> Hi,
>
> As part of the ongoing effort to remove the "cifs" nomenclature from the
> Linux SMB client, I'm proposing the rename of the module to "smbfs".
>
> As it's widely known, CIFS is associated to SMB1.0, which, in turn, is
> associated with the security issues it presented in the past. Using
> "SMBFS" makes clear what's the protocol in use for outsiders, but also
> unties it from any particular protocol version. It also fits in the
> already existing "fs/smbfs_common" and "fs/ksmbd" naming scheme.
>
> This short patch series only changes directory names and includes/ifdefs in
> headers and source code, and updates docs to reflect the rename. Other
> than that, no source code/functionality is modified (WIP though).

Why did you not reply to Jeff Layton's concern before posting a v2?