[vlc-devel] [PATCH] smb2: add "smb-force-v1" option

Thomas Guillem thomas at gllm.fr
Thu Oct 17 14:33:19 CEST 2019


Please discard this patch in favor of "dsm: add "smb-force-v1".

That way, the hack is on the deprecated module, and not the proper one.

On Thu, Oct 17, 2019, at 13:30, Thomas Guillem wrote:
> ---
>  modules/access/smb2.c | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/modules/access/smb2.c b/modules/access/smb2.c
> index 923e6d57e04..99f2446401a 100644
> --- a/modules/access/smb2.c
> +++ b/modules/access/smb2.c
> @@ -61,6 +61,13 @@
>  static int Open(vlc_object_t *);
>  static void Close(vlc_object_t *);
>  
> +#define SMB_FORCE_V1_TEXT N_("Force the SMBv1 protocol (At your own 
> risk)")
> +#define SMB_FORCE_V1_LONGTEXT \
> +    N_("Enable it, at your own risk, if you can't connect to Windows 
> shares. " \
> +    "If this option is needed, you should seriously consider to update 
> your " \
> +    "Windows / Samba server and disable the SMBv1 protocol since this 
> protocol " \
> +    "is not safe at all.")
> +
>  vlc_module_begin()
>      set_shortname("smb2")
>      set_description(N_("SMB2 / SMB3 input"))
> @@ -71,6 +78,7 @@ vlc_module_begin()
>      add_string("smb-user", NULL, SMB_USER_TEXT, SMB_USER_LONGTEXT, 
> false)
>      add_password("smb-pwd", NULL, SMB_PASS_TEXT, SMB_PASS_LONGTEXT)
>      add_string("smb-domain", NULL, SMB_DOMAIN_TEXT, 
> SMB_DOMAIN_LONGTEXT, false)
> +    add_bool("smb-force-v1", false, SMB_FORCE_V1_TEXT, 
> SMB_FORCE_V1_LONGTEXT, false)
>      add_shortcut("smb", "smb2")
>      set_callbacks(Open, Close)
>  vlc_module_end()
> @@ -603,6 +611,13 @@ Open(vlc_object_t *p_obj)
>      struct smb2_url *smb2_url = NULL;
>      char *var_domain = NULL;
>  
> +    if (var_InheritBool(p_obj, "smb-force-v1"))
> +    {
> +        msg_Warn(access, "SMB 2/3 disabled by the user, using *unsafe* SMB 1");
> +        /* Return an error and use libdsm for the SMB 1 connection. */
> +        return VLC_EGENERIC;
> +    }
> +
>      if (unlikely(sys == NULL))
>          return VLC_ENOMEM;
>      access->p_sys = sys;
> -- 
> 2.20.1
> 
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list