mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-10-23 06:14:18 -04:00
Cast some F_OWNER()/F_GROUP() values to make sure that we don't get
a signed/unsigned compiler warning on some systems.
This commit is contained in:
1 parent
63186ec077
commit
858d45f160
3 files changed
+10
-10
No files matched your search
@@ -412,7 +412,7 @@ static void send_file_entry(int f, struct file_struct *file, int ndx)
|
||||
} else if (protocol_version < 28)
|
||||
rdev = MAKEDEV(0, 0);
|
||||
if (preserve_uid) {
|
||||
if (F_OWNER(file) == uid && *lastname)
|
||||
if ((uid_t)F_OWNER(file) == uid && *lastname)
|
||||
flags |= XMIT_SAME_UID;
|
||||
else {
|
||||
uid = F_OWNER(file);
|
||||
@@ -424,7 +424,7 @@ static void send_file_entry(int f, struct file_struct *file, int ndx)
|
||||
}
|
||||
}
|
||||
if (preserve_gid) {
|
||||
if (F_GROUP(file) == gid && *lastname)
|
||||
if ((gid_t)F_GROUP(file) == gid && *lastname)
|
||||
flags |= XMIT_SAME_GID;
|
||||
else {
|
||||
gid = F_GROUP(file);
|
||||
|
||||
+4
-4
@@ -521,10 +521,10 @@ int unchanged_attrs(const char *fname, struct file_struct *file, statx *sxp)
|
||||
if (preserve_perms && !BITS_EQUAL(sxp->st.st_mode, file->mode, CHMOD_BITS))
|
||||
return 0;
|
||||
|
||||
if (am_root && preserve_uid && sxp->st.st_uid != F_OWNER(file))
|
||||
if (am_root && preserve_uid && sxp->st.st_uid != (uid_t)F_OWNER(file))
|
||||
return 0;
|
||||
|
||||
if (preserve_gid && !(file->flags & FLAG_SKIP_GROUP) && sxp->st.st_gid != F_GROUP(file))
|
||||
if (preserve_gid && !(file->flags & FLAG_SKIP_GROUP) && sxp->st.st_gid != (gid_t)F_GROUP(file))
|
||||
return 0;
|
||||
|
||||
#ifdef SUPPORT_ACLS
|
||||
@@ -565,10 +565,10 @@ void itemize(const char *fnamecmp, struct file_struct *file, int ndx, int statre
|
||||
iflags |= ITEM_REPORT_TIME;
|
||||
if (!BITS_EQUAL(sxp->st.st_mode, file->mode, CHMOD_BITS))
|
||||
iflags |= ITEM_REPORT_PERMS;
|
||||
if (preserve_uid && am_root && F_OWNER(file) != sxp->st.st_uid)
|
||||
if (preserve_uid && am_root && (uid_t)F_OWNER(file) != sxp->st.st_uid)
|
||||
iflags |= ITEM_REPORT_OWNER;
|
||||
if (preserve_gid && !(file->flags & FLAG_SKIP_GROUP)
|
||||
&& sxp->st.st_gid != F_GROUP(file))
|
||||
&& sxp->st.st_gid != (gid_t)F_GROUP(file))
|
||||
iflags |= ITEM_REPORT_GROUP;
|
||||
#ifdef SUPPORT_ACLS
|
||||
if (preserve_acls && !S_ISLNK(file->mode)) {
|
||||
|
||||
@@ -322,9 +322,9 @@ int set_file_attrs(const char *fname, struct file_struct *file, statx *sxp,
|
||||
updated = 1;
|
||||
}
|
||||
|
||||
change_uid = am_root && preserve_uid && sxp->st.st_uid != F_OWNER(file);
|
||||
change_uid = am_root && preserve_uid && sxp->st.st_uid != (uid_t)F_OWNER(file);
|
||||
change_gid = preserve_gid && !(file->flags & FLAG_SKIP_GROUP)
|
||||
&& sxp->st.st_gid != F_GROUP(file);
|
||||
&& sxp->st.st_gid != (gid_t)F_GROUP(file);
|
||||
#if !defined HAVE_LCHOWN && !defined CHOWN_MODIFIES_SYMLINK
|
||||
if (S_ISLNK(sxp->st.st_mode))
|
||||
;
|
||||
@@ -346,8 +346,8 @@ int set_file_attrs(const char *fname, struct file_struct *file, statx *sxp,
|
||||
if (am_root < 0) {
|
||||
;
|
||||
} else if (do_lchown(fname,
|
||||
change_uid ? F_OWNER(file) : sxp->st.st_uid,
|
||||
change_gid ? F_GROUP(file) : sxp->st.st_gid) != 0) {
|
||||
change_uid ? (uid_t)F_OWNER(file) : sxp->st.st_uid,
|
||||
change_gid ? (gid_t)F_GROUP(file) : sxp->st.st_gid) != 0) {
|
||||
/* shouldn't have attempted to change uid or gid
|
||||
* unless have the privilege */
|
||||
rsyserr(FERROR, errno, "%s %s failed",
|
||||
|
||||
Reference in new issue
Block a user