The branch, master has been updated
       via  8935242 Add protocol version to smbstatus output
      from  b328bb0 s4-torture: add print_test_purge

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 8935242489fdcc17b20b3cd54f96ba6de5870230
Author: Mathias Dietz <mdi...@de.ibm.com>
Date:   Wed Mar 5 16:26:20 2014 +0100

    Add protocol version to smbstatus output
    
    Signed-off-by: Mathias Dietz <mdi...@de.ibm.com>
    Reviewed-by: Stefan Metzmacher <me...@samba.org>
    Reviewed-by: Volker Lendecke <v...@samba.org>
    
    Autobuild-User(master): Stefan Metzmacher <me...@samba.org>
    Autobuild-Date(master): Thu May 22 18:37:27 CEST 2014 on sn-devel-104

-----------------------------------------------------------------------

Summary of changes:
 source3/include/session.h   |    1 +
 source3/lib/sessionid_tdb.c |   28 ++++++++++++++++++++++++++++
 source3/utils/status.c      |    8 ++++----
 3 files changed, 33 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/include/session.h b/source3/include/session.h
index 2aca1df..ba96ae3 100644
--- a/source3/include/session.h
+++ b/source3/include/session.h
@@ -38,5 +38,6 @@ struct sessionid {
        struct server_id pid;
        fstring ip_addr_str;
        time_t connect_start;
+       fstring protocol_ver;
 };
 
diff --git a/source3/lib/sessionid_tdb.c b/source3/lib/sessionid_tdb.c
index 7a19611..fd6cf75 100644
--- a/source3/lib/sessionid_tdb.c
+++ b/source3/lib/sessionid_tdb.c
@@ -45,6 +45,34 @@ static int sessionid_traverse_read_fn(struct 
smbXsrv_session_global0 *global,
                .pid = global->channels[0].server_id,
        };
 
+       switch(global->connection_dialect){
+       case SMB2_DIALECT_REVISION_000:
+               fstrcpy(session.protocol_ver, "NT1");
+               break;
+       case SMB2_DIALECT_REVISION_202:
+               fstrcpy(session.protocol_ver, "SMB2_02");
+               break;
+       case SMB2_DIALECT_REVISION_210:
+               fstrcpy(session.protocol_ver, "SMB2_10");
+               break;
+       case SMB2_DIALECT_REVISION_222:
+               fstrcpy(session.protocol_ver, "SMB2_22");
+               break;
+       case SMB2_DIALECT_REVISION_224:
+               fstrcpy(session.protocol_ver, "SMB2_24");
+               break;
+       case SMB3_DIALECT_REVISION_300:
+               fstrcpy(session.protocol_ver, "SMB3_00");
+               break;
+       case SMB3_DIALECT_REVISION_302:
+               fstrcpy(session.protocol_ver, "SMB3_02");
+               break;
+       default:
+               fstr_sprintf(session.protocol_ver, "Unknown (0x%04x)",
+                            global->connection_dialect);
+               break;
+       }
+
        if (session_info != NULL) {
                session.uid = session_info->unix_token->uid;
                session.gid = session_info->unix_token->gid;
diff --git a/source3/utils/status.c b/source3/utils/status.c
index 40d38c9..61a450e 100644
--- a/source3/utils/status.c
+++ b/source3/utils/status.c
@@ -303,10 +303,10 @@ static int traverse_sessionid(const char *key, struct 
sessionid *session,
                }
        }
 
-       d_printf("%-7s   %-12s  %-12s  %-12s (%s)\n",
+       d_printf("%-7s   %-12s  %-12s  %-12s (%s) %-12s\n",
                 procid_str_static(&session->pid),
                 uid_str, gid_str,
-                session->remote_machine, session->hostname);
+                session->remote_machine, session->hostname, 
session->protocol_ver);
 
        return 0;
 }
@@ -472,8 +472,8 @@ int main(int argc, const char *argv[])
 
        if ( show_processes ) {
                d_printf("\nSamba version %s\n",samba_version_string());
-               d_printf("PID     Username      Group         Machine           
             \n");
-               
d_printf("-------------------------------------------------------------------\n");
+               d_printf("PID     Username      Group         Machine           
 Protocol Version       \n");
+               
d_printf("------------------------------------------------------------------------------\n");
 
                sessionid_traverse_read(traverse_sessionid, NULL);
 


-- 
Samba Shared Repository

Reply via email to