[PATCH] Ensure conn->vuid is set correctly
Ralph Böhme
slow at samba.org
Thu Mar 22 07:51:17 UTC 2018
On Thu, Mar 22, 2018 at 08:36:13AM +0100, Ralph Böhme via samba-technical wrote:
> Just stumbled over the problem that conn->vuid is never set again after being
> invalidated by a SMB session reauth (smbd_smb2_reauth_generic_return ->
> conn_clear_vuid_caches for SMB2).
>
> Patch attached. Please review&push if happy. Thanks!
pushed the attached slightly modified version after feedback and review from
metze.
-slow
--
Ralph Boehme, Samba Team https://samba.org/
Samba Developer, SerNet GmbH https://sernet.de/en/samba/
GPG Key Fingerprint: FAE2 C608 8A24 2520 51C5
59E4 AA1E 9B71 2639 9E46
-------------- next part --------------
From a5affc527bc1e304a53f8fab90718ae14f1c1822 Mon Sep 17 00:00:00 2001
From: Ralph Boehme <slow at samba.org>
Date: Thu, 22 Mar 2018 08:03:58 +0100
Subject: [PATCH] s3: smbd: always set vuid in check_user_ok()
A SMB session reauth will have invalidated conn->vuid via
conn_clear_vuid_caches().
Ensure conn->vuid always has the vuid of the current user in
check_user_ok().
Bug: https://bugzilla.samba.org/show_bug.cgi?id=13351
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
---
source3/smbd/uid.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/source3/smbd/uid.c b/source3/smbd/uid.c
index 6eb53920abf..b24ae3cc3b0 100644
--- a/source3/smbd/uid.c
+++ b/source3/smbd/uid.c
@@ -202,6 +202,7 @@ static bool check_user_ok(connection_struct *conn,
conn->session_info = ent->session_info;
conn->read_only = ent->read_only;
conn->share_access = ent->share_access;
+ conn->vuid = ent->vuid;
return(True);
}
}
@@ -250,6 +251,7 @@ static bool check_user_ok(connection_struct *conn,
ent->share_access = share_access;
free_conn_session_info_if_unused(conn);
conn->session_info = ent->session_info;
+ conn->vuid = ent->vuid;
if (vuid == UID_FIELD_INVALID) {
/*
* Not strictly needed, just make it really
--
2.13.6
More information about the samba-technical
mailing list