Another xattr "internal abbrev" fix for an xattr object that is
[rsync/rsync.git] / util.c
diff --git a/util.c b/util.c
index 7434193..477f5bc 100644 (file)
--- a/util.c
+++ b/util.c
@@ -147,8 +147,9 @@ int set_modtime(const char *fname, time_t modtime, mode_t mode)
                t[1].tv_usec = 0;
 # ifdef HAVE_LUTIMES
                if (S_ISLNK(mode)) {
-                       lutimes(fname, t);
-                       return 0; /* ignore errors */
+                       if (lutimes(fname, t) < 0 && errno != ENOSYS)
+                               return -1;
+                       return 0;
                }
 # endif
                return utimes(fname, t);
@@ -465,31 +466,27 @@ void kill_all(int sig)
 }
 
 /** Turn a user name into a uid */
-int name_to_uid(const char *name, uid_t *uid)
+int name_to_uid(const char *name, uid_t *uid_p)
 {
        struct passwd *pass;
        if (!name || !*name)
                return 0;
-       pass = getpwnam(name);
-       if (pass) {
-               *uid = pass->pw_uid;
-               return 1;
-       }
-       return 0;
+       if (!(pass = getpwnam(name)))
+               return 0;
+       *uid_p = pass->pw_uid;
+       return 1;
 }
 
 /** Turn a group name into a gid */
-int name_to_gid(const char *name, gid_t *gid)
+int name_to_gid(const char *name, gid_t *gid_p)
 {
        struct group *grp;
        if (!name || !*name)
                return 0;
-       grp = getgrnam(name);
-       if (grp) {
-               *gid = grp->gr_gid;
-               return 1;
-       }
-       return 0;
+       if (!(grp = getgrnam(name)))
+               return 0;
+       *gid_p = grp->gr_gid;
+       return 1;
 }
 
 /** Lock a byte range in a open file */
@@ -898,6 +895,9 @@ int push_dir(const char *dir, int set_path_only)
                curr_dir_depth = count_dir_elements(curr_dir + module_dirlen);
        }
 
+       if (verbose >= 5)
+               rprintf(FINFO, "[%s] dir is now %s\n", who_am_i(), curr_dir);
+
        return 1;
 }