Re: [PATCH] smb: client: fix regression with guest option

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



merged into cifs-2.6.git for-next pending additional testing/review

Presumably we could also update cifs-utils (mount.cifs.c) to
workaround this as well.  Thoughts?

On Wed, Mar 12, 2025 at 8:51 AM Paulo Alcantara <pc@xxxxxxxxxxxxx> wrote:
>
> When mounting a CIFS share with 'guest' mount option, mount.cifs(8)
> will set empty password= and password2= options.  Currently we only
> handle empty strings from user= and password= options, so the mount
> will fail with
>
>         cifs: Bad value for 'password2'
>
> Fix this by handling empty string from password2= option as well.
>
> Link: https://bbs.archlinux.org/viewtopic.php?id=303927
> Reported-by: Adam Williamson <awilliam@xxxxxxxxxx>
> Closes: https://lore.kernel.org/r/83c00b5fea81c07f6897a5dd3ef50fd3b290f56c.camel@xxxxxxxxxx
> Fixes: 35f834265e0d ("smb3: fix broken reconnect when password changing on the server by allowing password rotation")
> Signed-off-by: Paulo Alcantara (Red Hat) <pc@xxxxxxxxxxxxx>
> ---
>  fs/smb/client/fs_context.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/fs/smb/client/fs_context.c b/fs/smb/client/fs_context.c
> index da5973c228ed..8c73d4d60d1a 100644
> --- a/fs/smb/client/fs_context.c
> +++ b/fs/smb/client/fs_context.c
> @@ -171,6 +171,7 @@ const struct fs_parameter_spec smb3_fs_parameters[] = {
>         fsparam_string("username", Opt_user),
>         fsparam_string("pass", Opt_pass),
>         fsparam_string("password", Opt_pass),
> +       fsparam_string("pass2", Opt_pass2),
>         fsparam_string("password2", Opt_pass2),
>         fsparam_string("ip", Opt_ip),
>         fsparam_string("addr", Opt_ip),
> @@ -1131,6 +1132,9 @@ static int smb3_fs_context_parse_param(struct fs_context *fc,
>                 } else if (!strcmp("user", param->key) || !strcmp("username", param->key)) {
>                         skip_parsing = true;
>                         opt = Opt_user;
> +               } else if (!strcmp("pass2", param->key) || !strcmp("password2", param->key)) {
> +                       skip_parsing = true;
> +                       opt = Opt_pass2;
>                 }
>         }
>
> --
> 2.48.1
>


-- 
Thanks,

Steve





[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux