Fixing an issue to do with setting of correct groups for tasks. Contributed by Aaron T Myers.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1301820 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
f58e3c8b12
commit
be5181ff2d
|
@ -526,6 +526,17 @@ int set_user(const char *user) {
|
|||
if (user_detail == NULL) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (geteuid() == user_detail->pw_uid) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (initgroups(user, user_detail->pw_gid) != 0) {
|
||||
fprintf(LOGFILE, "Error setting supplementary groups for user %s: %s\n",
|
||||
user, strerror(errno));
|
||||
return -1;
|
||||
}
|
||||
|
||||
return change_effective_user(user_detail->pw_uid, user_detail->pw_gid);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue