summaryrefslogtreecommitdiff
path: root/source3/smbd/service.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2009-03-03 16:08:56 -0800
committerJeremy Allison <jra@samba.org>2009-03-03 16:08:56 -0800
commit35f4ea221e75ebb4101cbacc6bc24bd1a3604f0f (patch)
tree8e05a69ae8d2a4e306393eeb1e8501ba0c9c1614 /source3/smbd/service.c
parent243d4e8a0846f9b873573ec504fb2f811be7d25c (diff)
downloadsamba-35f4ea221e75ebb4101cbacc6bc24bd1a3604f0f.tar.gz
samba-35f4ea221e75ebb4101cbacc6bc24bd1a3604f0f.tar.bz2
samba-35f4ea221e75ebb4101cbacc6bc24bd1a3604f0f.zip
Fix bug #6155 - "force group" is no longer working as expected.
We need to store the "force group" uid separately from the conn->server_info token as we need to apply it separately also. Volker PLEASE CHECK ! Jeremy.
Diffstat (limited to 'source3/smbd/service.c')
-rw-r--r--source3/smbd/service.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/source3/smbd/service.c b/source3/smbd/service.c
index dcdd69f997..eb16a2601e 100644
--- a/source3/smbd/service.c
+++ b/source3/smbd/service.c
@@ -833,6 +833,14 @@ static connection_struct *make_connection_snum(int snum, user_struct *vuser,
*pstatus = status;
return NULL;
}
+
+ /*
+ * We need to cache this gid, to use within
+ * change_to_user() separately from the conn->server_info
+ * struct. We only use conn->server_info directly if
+ * "force_user" was set.
+ */
+ conn->force_group_gid = conn->server_info->utok.gid;
}
conn->vuid = (vuser != NULL) ? vuser->vuid : UID_FIELD_INVALID;