summaryrefslogtreecommitdiffstats
path: root/source3/lib/sessionid_tdb.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/lib/sessionid_tdb.c')
-rw-r--r--source3/lib/sessionid_tdb.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/source3/lib/sessionid_tdb.c b/source3/lib/sessionid_tdb.c
index 7a196119419..fd6cf75c2fd 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;