diff mbox series

[v2] cifs: dump Security Type info in DebugData

Message ID 20200604154441.23822-1-kdsouza@redhat.com (mailing list archive)
State New, archived
Headers show
Series [v2] cifs: dump Security Type info in DebugData | expand

Commit Message

Kenneth Dsouza June 4, 2020, 3:44 p.m. UTC
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@redhat.com>
Signed-off-by: Roberto Bergantinos Corpas <rbergant@redhat.com>
---
 fs/cifs/cifs_debug.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Aurélien Aptel June 4, 2020, 5:21 p.m. UTC | #1
Kenneth D'souza <kdsouza@redhat.com> writes:
> 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.

LGTM but I would move the security_types next to the enum definition in
cifsglob.h somehow, so that it will be harder to forget to update one if
the other changes.

Since it is in a header, maybe via an inline func with a
switch... simple but more verbose. Or X-macros [1] magic (might be
overkill).

1: https://www.geeksforgeeks.org/x-macros-in-c/

Cheers,
Kenneth Dsouza June 5, 2020, 3:20 p.m. UTC | #2
Aurélien, Implemented your suggestion.
Sent v3 for the same.

On Thu, Jun 4, 2020 at 10:51 PM Aurélien Aptel <aaptel@suse.com> wrote:
>
> Kenneth D'souza <kdsouza@redhat.com> writes:
> > 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.
>
> LGTM but I would move the security_types next to the enum definition in
> cifsglob.h somehow, so that it will be harder to forget to update one if
> the other changes.
>
> Since it is in a header, maybe via an inline func with a
> switch... simple but more verbose. Or X-macros [1] magic (might be
> overkill).
>
> 1: https://www.geeksforgeeks.org/x-macros-in-c/
>
> Cheers,
> --
> Aurélien Aptel / SUSE Labs Samba Team
> GPG: 1839 CB5F 9F5B FB9B AA97  8C99 03C8 A49B 521B D5D3
> SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, 90409 Nürnberg, DE
> GF: Felix Imendörffer, Mary Higgins, Sri Rasiah HRB 247165 (AG München)
>
diff mbox series

Patch

diff --git a/fs/cifs/cifs_debug.c b/fs/cifs/cifs_debug.c
index 916567d770f5..3ad1a98fd567 100644
--- a/fs/cifs/cifs_debug.c
+++ b/fs/cifs/cifs_debug.c
@@ -221,6 +221,8 @@  static int cifs_debug_data_proc_show(struct seq_file *m, void *v)
 	struct cifs_ses *ses;
 	struct cifs_tcon *tcon;
 	int i, j;
+	const char *security_types[] = {"Unspecified", "LANMAN", "NTLM",
+                                       "NTLMv2", "RawNTLMSSP", "Kerberos"};
 
 	seq_puts(m,
 		    "Display Internal CIFS Data Structures for Debugging\n"
@@ -375,6 +377,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",
+                                      security_types[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 "