Lines Matching defs:st

294 	STRUCT_STAT st;
311 if (link_stat(fbuf, &st, keep_dirlinks) < 0
312 || !S_ISDIR(st.st_mode))
315 delete_in_dir(flist, fbuf, file, &st);
323 int unchanged_attrs(struct file_struct *file, STRUCT_STAT *st)
326 && (st->st_mode & CHMOD_BITS) != (file->mode & CHMOD_BITS))
329 if (am_root && preserve_uid && st->st_uid != file->uid)
332 if (preserve_gid && file->gid != GID_NONE && st->st_gid != file->gid)
338 void itemize(struct file_struct *file, int ndx, int statret, STRUCT_STAT *st,
346 if (S_ISREG(file->mode) && file->length != st->st_size)
350 || (keep_time && cmp_time(file->modtime, st->st_mtime) != 0))
352 if ((file->mode & CHMOD_BITS) != (st->st_mode & CHMOD_BITS))
354 if (preserve_uid && am_root && file->uid != st->st_uid)
357 && st->st_gid != file->gid)
384 int unchanged_file(char *fn, struct file_struct *file, STRUCT_STAT *st)
386 if (st->st_size != file->length)
391 if (always_checksum && S_ISREG(st->st_mode)) {
393 file_checksum(fn, sum, st->st_size);
403 return cmp_time(st->st_mtime, file->modtime) == 0;
715 STRUCT_STAT st;
720 if (link_stat(fnamebuf, &st, 0) < 0 || S_ISDIR(st.st_mode)
721 || !unchanged_attrs(file, &st))
734 if (!IS_SPECIAL(st.st_mode) || st.st_rdev != file->u.rdev)
737 if (!IS_DEVICE(st.st_mode) || st.st_rdev != file->u.rdev)
768 itemize(file, ndx, 0, &st, changes, 0, lp);
801 STRUCT_STAT st, real_st, partial_st;
864 && do_stat(dn, &st) < 0
884 statret = link_stat(fname, &st,
902 && S_ISDIR(st.st_mode) == S_ISDIR(file->mode);
903 file->mode = dest_mode(file->mode, st.st_mode, exists);
912 if (statret == 0 && !S_ISDIR(st.st_mode)) {
913 if (delete_item(fname, st.st_mode, del_opts) < 0)
928 itemize(file, ndx, sr, &st,
948 if (set_file_attrs(fname, file, statret ? NULL : &st, 0)
953 delete_in_dir(the_file_list, fname, file, &st);
958 && hard_link_check(file, ndx, fname, statret, &st,
978 if (!S_ISDIR(st.st_mode)
986 itemize(file, ndx, 0, &st, 0,
989 set_file_attrs(fname, file, &st,
1004 if (delete_item(fname, st.st_mode, del_opts) < 0)
1006 if (!S_ISLNK(st.st_mode))
1023 && hard_link_check(file, ndx, fname, -1, &st,
1032 itemize(file, ndx, statret, &st,
1068 || (st.st_mode & ~CHMOD_BITS) != (file->mode & ~CHMOD_BITS)
1069 || st.st_rdev != file->u.rdev) {
1071 && delete_item(fname, st.st_mode, del_opts) < 0)
1074 && hard_link_check(file, ndx, fname, -1, &st,
1077 if ((IS_DEVICE(file->mode) && !IS_DEVICE(st.st_mode))
1078 || (IS_SPECIAL(file->mode) && !IS_SPECIAL(st.st_mode)))
1091 itemize(file, ndx, statret, &st,
1105 itemize(file, ndx, statret, &st, 0, 0, NULL);
1106 set_file_attrs(fname, file, &st, maybe_ATTRS_REPORT);
1146 && cmp_time(st.st_mtime, file->modtime) > 0) {
1168 if (statret == 0 && !S_ISREG(st.st_mode)) {
1169 if (delete_item(fname, st.st_mode, del_opts) != 0)
1176 int j = try_dests_reg(file, fname, ndx, fnamecmpbuf, &st,
1191 real_st = st;
1210 st.st_size = fuzzy_file->length;
1219 && hard_link_check(file, ndx, fname, statret, &st,
1229 if (append_mode && st.st_size > file->length)
1236 else if (unchanged_file(fnamecmp, file, &st)) {
1245 set_file_attrs(fname, file, &st, maybe_ATTRS_REPORT);
1261 st = partial_st;
1285 && hard_link_check(file, ndx, fname, statret, &st,
1321 fnamecmp, (double)st.st_size);
1356 generate_and_send_sums(fd, st.st_size, f_out, f_copy);