smb: fix invalid username check in smb3_fs_context_parse_param()

Since the maximum return value of strnlen(..., CIFS_MAX_USERNAME_LEN)
is CIFS_MAX_USERNAME_LEN, length check in smb3_fs_context_parse_param()
is always FALSE and invalid.

Fix the comparison in if statement.

Signed-off-by: Yiqi Sun <sunyiqixm@gmail.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
This commit is contained in:
Yiqi Sun
2025-11-11 15:05:39 +08:00
committed by Steve French
parent e8c73eb7db
commit ed6612165b

View File

@@ -1470,7 +1470,7 @@ static int smb3_fs_context_parse_param(struct fs_context *fc,
break; break;
} }
if (strnlen(param->string, CIFS_MAX_USERNAME_LEN) > if (strnlen(param->string, CIFS_MAX_USERNAME_LEN) ==
CIFS_MAX_USERNAME_LEN) { CIFS_MAX_USERNAME_LEN) {
pr_warn("username too long\n"); pr_warn("username too long\n");
goto cifs_parse_mount_err; goto cifs_parse_mount_err;