Linux CIFS filesystem development
 help / color / mirror / Atom feed
* [PATCH 1/2] ksmbd: set unique value to volume serial field in FS_VOLUME_INFORMATION
@ 2021-10-31  1:04 Namjae Jeon
  2021-10-31  1:04 ` [PATCH 2/2] ksmbd: remove md4 leftovers Namjae Jeon
  0 siblings, 1 reply; 3+ messages in thread
From: Namjae Jeon @ 2021-10-31  1:04 UTC (permalink / raw)
  To: linux-cifs; +Cc: Namjae Jeon, Steve French

Steve French reported ksmbd set fixed value to volume serial field in
FS_VOLUME_INFORMATION. Volume serial value needs to be set to a unique
value for client fscache. This patch set crc value that is generated
with share name, path name and netbios name to volume serial.

Reported-by: Steve French <smfrench@gmail.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
---
 fs/ksmbd/Kconfig   | 1 +
 fs/ksmbd/server.c  | 1 +
 fs/ksmbd/smb2pdu.c | 9 ++++++++-
 3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/fs/ksmbd/Kconfig b/fs/ksmbd/Kconfig
index b83cbd756ae5..6af339cfdc04 100644
--- a/fs/ksmbd/Kconfig
+++ b/fs/ksmbd/Kconfig
@@ -19,6 +19,7 @@ config SMB_SERVER
 	select CRYPTO_GCM
 	select ASN1
 	select OID_REGISTRY
+	select CRC32
 	default n
 	help
 	  Choose Y here if you want to allow SMB3 compliant clients
diff --git a/fs/ksmbd/server.c b/fs/ksmbd/server.c
index 2a2b2135bfde..36d368e59a64 100644
--- a/fs/ksmbd/server.c
+++ b/fs/ksmbd/server.c
@@ -632,5 +632,6 @@ MODULE_SOFTDEP("pre: sha512");
 MODULE_SOFTDEP("pre: aead2");
 MODULE_SOFTDEP("pre: ccm");
 MODULE_SOFTDEP("pre: gcm");
+MODULE_SOFTDEP("pre: crc32");
 module_init(ksmbd_server_init)
 module_exit(ksmbd_server_exit)
diff --git a/fs/ksmbd/smb2pdu.c b/fs/ksmbd/smb2pdu.c
index a925e0f67fb8..04f82b5870c3 100644
--- a/fs/ksmbd/smb2pdu.c
+++ b/fs/ksmbd/smb2pdu.c
@@ -4892,11 +4892,18 @@ static int smb2_get_info_filesystem(struct ksmbd_work *work,
 	{
 		struct filesystem_vol_info *info;
 		size_t sz;
+		unsigned int serial_crc = 0;
 
 		info = (struct filesystem_vol_info *)(rsp->Buffer);
 		info->VolumeCreationTime = 0;
+		serial_crc = crc32_le(serial_crc, share->name,
+				      strlen(share->name));
+		serial_crc = crc32_le(serial_crc, share->path,
+				      strlen(share->path));
+		serial_crc = crc32_le(serial_crc, ksmbd_netbios_name(),
+				      strlen(ksmbd_netbios_name()));
 		/* Taking dummy value of serial number*/
-		info->SerialNumber = cpu_to_le32(0xbc3ac512);
+		info->SerialNumber = cpu_to_le32(serial_crc);
 		len = smbConvertToUTF16((__le16 *)info->VolumeLabel,
 					share->name, PATH_MAX,
 					conn->local_nls, 0);
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] ksmbd: remove md4 leftovers
  2021-10-31  1:04 [PATCH 1/2] ksmbd: set unique value to volume serial field in FS_VOLUME_INFORMATION Namjae Jeon
@ 2021-10-31  1:04 ` Namjae Jeon
  2021-11-01  1:33   ` Hyunchul Lee
  0 siblings, 1 reply; 3+ messages in thread
From: Namjae Jeon @ 2021-10-31  1:04 UTC (permalink / raw)
  To: linux-cifs; +Cc: Namjae Jeon

As NTLM authentication is removed, md4 is no longer used.
ksmbd remove md4 leftovers, i.e. select CRYPTO_MD4, MODULE_SOFTDEP md4.

Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
---
 fs/ksmbd/Kconfig  | 1 -
 fs/ksmbd/server.c | 1 -
 2 files changed, 2 deletions(-)

diff --git a/fs/ksmbd/Kconfig b/fs/ksmbd/Kconfig
index 6af339cfdc04..e1fe17747ed6 100644
--- a/fs/ksmbd/Kconfig
+++ b/fs/ksmbd/Kconfig
@@ -6,7 +6,6 @@ config SMB_SERVER
 	select NLS
 	select NLS_UTF8
 	select CRYPTO
-	select CRYPTO_MD4
 	select CRYPTO_MD5
 	select CRYPTO_HMAC
 	select CRYPTO_ECB
diff --git a/fs/ksmbd/server.c b/fs/ksmbd/server.c
index 36d368e59a64..2e12f6d8483b 100644
--- a/fs/ksmbd/server.c
+++ b/fs/ksmbd/server.c
@@ -622,7 +622,6 @@ MODULE_DESCRIPTION("Linux kernel CIFS/SMB SERVER");
 MODULE_LICENSE("GPL");
 MODULE_SOFTDEP("pre: ecb");
 MODULE_SOFTDEP("pre: hmac");
-MODULE_SOFTDEP("pre: md4");
 MODULE_SOFTDEP("pre: md5");
 MODULE_SOFTDEP("pre: nls");
 MODULE_SOFTDEP("pre: aes");
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 2/2] ksmbd: remove md4 leftovers
  2021-10-31  1:04 ` [PATCH 2/2] ksmbd: remove md4 leftovers Namjae Jeon
@ 2021-11-01  1:33   ` Hyunchul Lee
  0 siblings, 0 replies; 3+ messages in thread
From: Hyunchul Lee @ 2021-11-01  1:33 UTC (permalink / raw)
  To: Namjae Jeon; +Cc: linux-cifs

Acked-by: Hyunchul Lee <hyc.lee@gmail.com>

2021년 10월 31일 (일) 오전 10:17, Namjae Jeon <linkinjeon@kernel.org>님이 작성:
>
> As NTLM authentication is removed, md4 is no longer used.
> ksmbd remove md4 leftovers, i.e. select CRYPTO_MD4, MODULE_SOFTDEP md4.
>
> Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
> ---
>  fs/ksmbd/Kconfig  | 1 -
>  fs/ksmbd/server.c | 1 -
>  2 files changed, 2 deletions(-)
>
> diff --git a/fs/ksmbd/Kconfig b/fs/ksmbd/Kconfig
> index 6af339cfdc04..e1fe17747ed6 100644
> --- a/fs/ksmbd/Kconfig
> +++ b/fs/ksmbd/Kconfig
> @@ -6,7 +6,6 @@ config SMB_SERVER
>         select NLS
>         select NLS_UTF8
>         select CRYPTO
> -       select CRYPTO_MD4
>         select CRYPTO_MD5
>         select CRYPTO_HMAC
>         select CRYPTO_ECB
> diff --git a/fs/ksmbd/server.c b/fs/ksmbd/server.c
> index 36d368e59a64..2e12f6d8483b 100644
> --- a/fs/ksmbd/server.c
> +++ b/fs/ksmbd/server.c
> @@ -622,7 +622,6 @@ MODULE_DESCRIPTION("Linux kernel CIFS/SMB SERVER");
>  MODULE_LICENSE("GPL");
>  MODULE_SOFTDEP("pre: ecb");
>  MODULE_SOFTDEP("pre: hmac");
> -MODULE_SOFTDEP("pre: md4");
>  MODULE_SOFTDEP("pre: md5");
>  MODULE_SOFTDEP("pre: nls");
>  MODULE_SOFTDEP("pre: aes");
> --
> 2.25.1
>


-- 
Thanks,
Hyunchul

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-11-01  1:33 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-10-31  1:04 [PATCH 1/2] ksmbd: set unique value to volume serial field in FS_VOLUME_INFORMATION Namjae Jeon
2021-10-31  1:04 ` [PATCH 2/2] ksmbd: remove md4 leftovers Namjae Jeon
2021-11-01  1:33   ` Hyunchul Lee

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox