From d4979e7727ef94de469e66b74a9bee6f9742d4c0 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Tue, 23 Dec 1997 11:30:58 +0000 Subject: Fixed security bug when 'force user' and 'user only' are set. Reported by Brian McCauley . Jeremy. (This used to be commit 00067800a25d6f5fe11e833a01d5a7a1e76dcc11) --- source3/smbd/uid.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'source3/smbd/uid.c') diff --git a/source3/smbd/uid.c b/source3/smbd/uid.c index b36fa4df06..46a2de4f17 100644 --- a/source3/smbd/uid.c +++ b/source3/smbd/uid.c @@ -222,10 +222,13 @@ BOOL become_user(connection_struct *conn, int cnum, uint16 vuid) snum = conn->service; + if((vuser != NULL) && !check_user_ok(conn, vuser, snum)) + return False; + if (conn->force_user || lp_security() == SEC_SHARE || - !(vuser) || (vuser->guest) || - !check_user_ok(conn, vuser, snum)) + !(vuser) || (vuser->guest) + ) { uid = conn->uid; gid = conn->gid; -- cgit