Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liblongpath-rsync
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liblongpath
liblongpath-rsync
Commits
4ade505c
Commit
4ade505c
authored
May 20, 2007
by
Wayne Davison
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
- Use F_OWNER() and F_GROUP() instead of F_UID() and F_GID().
- Use the new FLAG_SKIP_GROUP define.
parent
1564cd5a
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
19 additions
and
21 deletions
+19
-21
generator.c
generator.c
+5
-5
log.c
log.c
+5
-5
rsync.c
rsync.c
+9
-11
No files found.
generator.c
View file @
4ade505c
...
...
@@ -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_
UID
(
file
))
if
(
am_root
&&
preserve_uid
&&
sxp
->
st
.
st_uid
!=
F_
OWNER
(
file
))
return
0
;
if
(
preserve_gid
&&
F_GID
(
file
)
!=
GID_NONE
&&
sxp
->
st
.
st_gid
!=
F_GID
(
file
))
if
(
preserve_gid
&&
!
(
file
->
flags
&
FLAG_SKIP_GROUP
)
&&
sxp
->
st
.
st_gid
!=
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_
UID
(
file
)
!=
sxp
->
st
.
st_uid
)
if
(
preserve_uid
&&
am_root
&&
F_
OWNER
(
file
)
!=
sxp
->
st
.
st_uid
)
iflags
|=
ITEM_REPORT_OWNER
;
if
(
preserve_gid
&&
F_GID
(
file
)
!=
GID_NONE
&&
sxp
->
st
.
st_gid
!=
F_G
ID
(
file
))
if
(
preserve_gid
&&
!
(
file
->
flags
&
FLAG_SKIP_GROUP
)
&&
sxp
->
st
.
st_gid
!=
F_G
ROUP
(
file
))
iflags
|=
ITEM_REPORT_GROUP
;
#ifdef SUPPORT_ACLS
if
(
preserve_acls
&&
!
S_ISLNK
(
file
->
mode
))
{
...
...
log.c
View file @
4ade505c
...
...
@@ -481,18 +481,18 @@ static void log_formatted(enum logcode code, const char *format, const char *op,
n
=
buf2
;
break
;
case
'U'
:
strlcat
(
fmt
,
"
ld
"
,
sizeof
fmt
);
strlcat
(
fmt
,
"
u
"
,
sizeof
fmt
);
snprintf
(
buf2
,
sizeof
buf2
,
fmt
,
preserve_uid
?
(
long
)
F_UID
(
file
)
:
0
);
preserve_uid
?
F_OWNER
(
file
)
:
0
);
n
=
buf2
;
break
;
case
'G'
:
if
(
!
preserve_gid
||
F_GID
(
file
)
==
GID_NONE
)
if
(
!
preserve_gid
||
file
->
flags
&
FLAG_SKIP_GROUP
)
n
=
"DEFAULT"
;
else
{
strlcat
(
fmt
,
"
ld
"
,
sizeof
fmt
);
strlcat
(
fmt
,
"
u
"
,
sizeof
fmt
);
snprintf
(
buf2
,
sizeof
buf2
,
fmt
,
(
long
)
F_GID
(
file
));
F_GROUP
(
file
));
n
=
buf2
;
}
break
;
...
...
rsync.c
View file @
4ade505c
...
...
@@ -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_
UID
(
file
);
change_gid
=
preserve_gid
&&
F_GID
(
file
)
!=
GID_NONE
&&
sxp
->
st
.
st_gid
!=
F_GID
(
file
);
change_uid
=
am_root
&&
preserve_uid
&&
sxp
->
st
.
st_uid
!=
F_
OWNER
(
file
);
change_gid
=
preserve_gid
&&
!
(
file
->
flags
&
FLAG_SKIP_GROUP
)
&&
sxp
->
st
.
st_gid
!=
F_GROUP
(
file
);
#if !defined HAVE_LCHOWN && !defined CHOWN_MODIFIES_SYMLINK
if
(
S_ISLNK
(
sxp
->
st
.
st_mode
))
;
...
...
@@ -334,22 +334,20 @@ int set_file_attrs(const char *fname, struct file_struct *file, statx *sxp,
if
(
verbose
>
2
)
{
if
(
change_uid
)
{
rprintf
(
FINFO
,
"set uid of %s from %ld to %ld
\n
"
,
fname
,
(
long
)
sxp
->
st
.
st_uid
,
(
long
)
F_UID
(
file
));
"set uid of %s from %u to %u
\n
"
,
fname
,
(
unsigned
)
sxp
->
st
.
st_uid
,
F_OWNER
(
file
));
}
if
(
change_gid
)
{
rprintf
(
FINFO
,
"set gid of %s from %ld to %ld
\n
"
,
fname
,
(
long
)
sxp
->
st
.
st_gid
,
(
long
)
F_GID
(
file
));
"set gid of %s from %u to %u
\n
"
,
fname
,
(
unsigned
)
sxp
->
st
.
st_gid
,
F_GROUP
(
file
));
}
}
if
(
am_root
<
0
)
{
;
}
else
if
(
do_lchown
(
fname
,
change_uid
?
F_
UID
(
file
)
:
sxp
->
st
.
st_uid
,
change_gid
?
F_G
ID
(
file
)
:
sxp
->
st
.
st_gid
)
!=
0
)
{
change_uid
?
F_
OWNER
(
file
)
:
sxp
->
st
.
st_uid
,
change_gid
?
F_G
ROUP
(
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"
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment