summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2006-11-14 21:02:16 +0000
committerGerald Carter <jerry@samba.org>2006-11-14 21:02:16 +0000
commitfb8355e356d8cd0a3fab9a0f4f8102c38d804489 (patch)
tree9e192008683a64ca461a1756a2d510d80c9cadac /source
parentea48314643fc8b0d94ffe5befe27f98099033db6 (diff)
downloadsamba-fb8355e356d8cd0a3fab9a0f4f8102c38d804489.tar.gz
samba-fb8355e356d8cd0a3fab9a0f4f8102c38d804489.tar.xz
samba-fb8355e356d8cd0a3fab9a0f4f8102c38d804489.zip
r19706: merge up to r19705 from SAMBA_3_0 (good for 3.0.23d now)
Diffstat (limited to 'source')
-rw-r--r--source/nsswitch/pam_winbind.c1
-rw-r--r--source/smbd/service.c9
2 files changed, 9 insertions, 1 deletions
diff --git a/source/nsswitch/pam_winbind.c b/source/nsswitch/pam_winbind.c
index fe0236b4987..e2b9c29e8c8 100644
--- a/source/nsswitch/pam_winbind.c
+++ b/source/nsswitch/pam_winbind.c
@@ -861,7 +861,6 @@ const char *get_conf_item_string(int argc,
_pam_log(LOG_INFO, "no \"=\" delimiter for \"%s\" found\n", item);
goto out;
}
- SAFE_FREE(parm);
_pam_log_debug(ctrl, LOG_INFO, "PAM config: %s '%s'\n", item, p+1);
return p + 1;
}
diff --git a/source/smbd/service.c b/source/smbd/service.c
index 0989bf77d55..1cad6fb136a 100644
--- a/source/smbd/service.c
+++ b/source/smbd/service.c
@@ -422,6 +422,9 @@ static NTSTATUS find_forced_group(BOOL force_user,
BOOL user_must_be_member = False;
gid_t gid;
+ ZERO_STRUCTP(pgroup_sid);
+ *pgid = (gid_t)-1;
+
mem_ctx = talloc_new(NULL);
if (mem_ctx == NULL) {
DEBUG(0, ("talloc_new failed\n"));
@@ -477,6 +480,12 @@ static NTSTATUS find_forced_group(BOOL force_user,
*pgid = gid;
DEBUG(3,("Forced group %s for member %s\n",
groupname, username));
+ } else {
+ DEBUG(0,("find_forced_group: forced user %s is not a member "
+ "of forced group %s. Disallowing access.\n",
+ username, groupname ));
+ result = NT_STATUS_MEMBER_NOT_IN_GROUP;
+ goto done;
}
} else {
sid_copy(pgroup_sid, &group_sid);