1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-02 09:47:23 +03:00

Patch from "Esh, Andrew" <Andrew_Esh@adaptec.com> to fix core dump bug

in add groupmem code.
Jeremy.
(This used to be commit 7e7077e9e363f46cea93767f0463581dbec87063)
This commit is contained in:
Jeremy Allison 2003-05-16 18:30:19 +00:00
parent f93f79d6ed
commit de7cd07a29

View File

@ -3512,6 +3512,7 @@ NTSTATUS _samr_add_groupmem(pipes_struct *p, SAMR_Q_ADD_GROUPMEM *q_u, SAMR_R_AD
DOM_SID group_sid;
DOM_SID user_sid;
fstring group_sid_str;
uid_t uid;
struct passwd *pwd;
struct group *grp;
fstring grp_name;
@ -3553,7 +3554,19 @@ NTSTATUS _samr_add_groupmem(pipes_struct *p, SAMR_Q_ADD_GROUPMEM *q_u, SAMR_R_AD
pdb_free_sam(&sam_user);
return NT_STATUS_NO_SUCH_USER;
}
/* check a real user exist before we run the script to add a user to a group */
if (NT_STATUS_IS_ERR(sid_to_uid(pdb_get_user_sid(sam_user), &uid))) {
pdb_free_sam(&sam_user);
return NT_STATUS_NO_SUCH_USER;
}
pdb_free_sam(&sam_user);
if ((pwd=getpwuid_alloc(uid)) == NULL) {
return NT_STATUS_NO_SUCH_USER;
}
if ((grp=getgrgid(map.gid)) == NULL) {
passwd_free(&pwd);
return NT_STATUS_NO_SUCH_GROUP;