Re: [PATCH v3] cifs: dump Security Type info in DebugData

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

 



the updated version of this one has been merged into cifs-2.6.git for-next

On Fri, Jun 5, 2020 at 10:17 AM Kenneth D'souza <kdsouza@xxxxxxxxxx> wrote:
>
> Currently the end user is unaware with what sec type the
> cifs share is mounted if no sec=<type> option is parsed.
> With this patch one can easily check from DebugData.
>
> Example:
> 1) Name: x.x.x.x Uses: 1 Capability: 0x8001f3fc Session Status: 1 Security type: RawNTLMSSP
>
> Signed-off-by: Kenneth D'souza <kdsouza@xxxxxxxxxx>
> Signed-off-by: Roberto Bergantinos Corpas <rbergant@xxxxxxxxxx>
> ---
>  fs/cifs/cifs_debug.c |  4 ++++
>  fs/cifs/cifsglob.h   | 18 ++++++++++++++++++
>  2 files changed, 22 insertions(+)
>
> diff --git a/fs/cifs/cifs_debug.c b/fs/cifs/cifs_debug.c
> index 916567d770f5..9caca784376b 100644
> --- a/fs/cifs/cifs_debug.c
> +++ b/fs/cifs/cifs_debug.c
> @@ -375,6 +375,10 @@ static int cifs_debug_data_proc_show(struct seq_file *m, void *v)
>                                 ses->ses_count, ses->serverOS, ses->serverNOS,
>                                 ses->capabilities, ses->status);
>                         }
> +
> +                       seq_printf(m,"Security type: %s\n",
> +                                       get_security_type_str(server->ops->select_sectype(server, ses->sectype)));
> +
>                         if (server->rdma)
>                                 seq_printf(m, "RDMA\n\t");
>                         seq_printf(m, "TCP status: %d Instance: %d\n\tLocal Users To "
> diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
> index 39b708d9d86d..d8ef01039e71 100644
> --- a/fs/cifs/cifsglob.h
> +++ b/fs/cifs/cifsglob.h
> @@ -1994,6 +1994,24 @@ extern struct smb_version_values smb302_values;
>  extern struct smb_version_operations smb311_operations;
>  extern struct smb_version_values smb311_values;
>
> +static inline char *get_security_type_str(enum securityEnum sectype)
> +{
> +       switch (sectype) {
> +       case RawNTLMSSP:
> +               return "RawNTLMSSP";
> +       case Kerberos:
> +               return "Kerberos";
> +       case NTLMv2:
> +               return "NTLMv2";
> +       case NTLM:
> +               return "NTLM";
> +       case LANMAN:
> +               return "LANMAN";
> +       default:
> +               return "Unknown";
> +       }
> +}
> +
>  static inline bool is_smb1_server(struct TCP_Server_Info *server)
>  {
>         return strcmp(server->vals->version_string, SMB1_VERSION_STRING) == 0;
> --
> 2.21.1
>


-- 
Thanks,

Steve



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

  Powered by Linux