Commit 86692050 authored by David Dykstra's avatar David Dykstra

When comparing -1 to a group id, cast -1 with gid_t because on some systems

such as sunos4 gid_t is an unsigned short.  This prevented the just-added
non-mapped group test from working on sunos4.
parent 460f6b99
......@@ -180,8 +180,8 @@ int set_perms(char *fname,struct file_struct *file,STRUCT_STAT *st,
}
change_uid = am_root && preserve_uid && st->st_uid != file->uid;
change_gid = !am_daemon && preserve_gid && file->gid != -1 \
&& st->st_gid != file->gid;
change_gid = !am_daemon && preserve_gid && file->gid != (gid_t) -1 && \
st->st_gid != file->gid;
if (change_gid && !am_root) {
/* enforce bsd-style group semantics: non-root can only
change to groups that the user is a member of */
......
......@@ -126,7 +126,7 @@ static gid_t match_gid(gid_t gid)
if (am_root)
last_out = gid;
else
last_out = -1;
last_out = (gid_t) -1;
return last_out;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment