Displaying 10 results from an estimated 10 matches for "do_hard_links".
2004 Jan 25
2
scan for first existing hard-link file
...om]->F_NEXT = NULL;
+ hlink_list[from]->F_INDEX = to;
+ hlink_list[from]->F_NEXT = head;
+ hlink_list[from]->flags |= FLAG_HLINK_LAST;
hlink_list[to++] = head;
} else {
free((char*)head->link_u.idev);
@@ -136,7 +137,7 @@ static void hard_link_one(char *hlink1,
void do_hard_links(void)
{
#if SUPPORT_HARD_LINKS
- struct file_struct *file;
+ struct file_struct *file, *first;
char hlink1[MAXPATHLEN];
char *hlink2;
STRUCT_STAT st1, st2;
@@ -146,10 +147,10 @@ void do_hard_links(void)
return;
for (i = 0; i < hlink_count; i++) {
- file = hlink_list[i];
- if (li...
2004 Jul 11
0
[PATCH] [TRIVIAL] whitespace + variable rename
...t file_struct *file = flist->files[i];
recv_generator(local_name ? local_name : f_name_to(file, fbuf),
! file, i, f);
}
phase++;
if (verbose > 2)
rprintf(FINFO,"generate_files phase=%d\n",phase);
! write_int(f,-1);
if (preserve_hard_links)
do_hard_links();
--- 596,616 ----
if (verbose > 2)
rprintf(FINFO,"generate_files phase=%d\n",phase);
! write_int(f_out,-1);
/* files can cycle through the system more than once
* to catch initial checksum errors */
while ((i = get_redo_num()) != -1) {
struct file_struct *...
2003 Sep 05
1
new option suggestion '--backup-only'
..., f);
} else {
int mode = local_file_list->files[i]->mode;
delete_one(f, S_ISDIR(mode) != 0);
}
- deletion_count++;
+ if (!backup_only)
+ deletion_count++;
}
}
flist_free(local_file_list);
@@ -535,15 +537,17 @@
}
}
- if (preserve_hard_links)
- do_hard_links();
-
- /* now we need to fix any directory permissions that were
- modified during the transfer */
- for (i = 0; i < flist->count; i++) {
- file = flist->files[i];
- if (!file->basename || !S_ISDIR(file->mode)) continue;
- recv_generator(local_name?local_name:f_name(file),flis...
2003 Dec 17
2
TODO hardlink performance optimizations
...nks within the file list and does
> not send checksums for them, though it does send other metadata.
>
> The sender sends the device number and inode with file entries, so
> that files are uniquely identified.
>
> The receiver goes through and creates hard links (do_hard_links)
> after all data has been written, but before directory permissions
> are set.
>
> At the moment device and inum are sent as 4-byte integers, which
> will probably cause problems on large filesystems. On Linux the
> kernel uses 64-bit ino_t's internally, and p...
2004 Feb 09
1
[patch] Add `--link-by-hash' option.
...*find_hashfiles(char *hashname, int64 size, long *fnbr);
+struct hashfile_struct *compare_hashfiles(int fd,struct hashfile_struct *files);
+void link_by_hash(char *fname,struct file_struct *file);
void init_hard_links(struct file_list *flist);
int check_hard_link(struct file_struct *file);
void do_hard_links(void);
2004 Feb 23
0
[patch] Add `--link-by-hash' option (rev 4).
...ashname, int64 size, long *fnbr);
+struct hashfile_struct *compare_hashfiles(int fd,struct hashfile_struct *files);
+int link_by_hash(char *fnametmp,char *fname,struct file_struct *file);
void init_hard_links(struct file_list *flist);
int hard_link_check(struct file_struct *file, int skip);
void do_hard_links(void);
patchwork diff receiver.c
--- receiver.c 2004-02-23 10:22:51.000000000 -0500
+++ receiver.c 2004-02-23 10:22:51.000000000 -0500
@@ -186,10 +186,11 @@
static int receive_data(int f_in,struct map_struct *mapbuf,int fd,char *fname,
- OFF_T total_size)
+ OFF_T total_size,char *md4)
{...
2004 Feb 17
0
[patch] Add `--link-by-hash' option (rev 3).
...ashname, int64 size, long *fnbr);
+struct hashfile_struct *compare_hashfiles(int fd,struct hashfile_struct *files);
+int link_by_hash(char *fnametmp,char *fname,struct file_struct *file);
void init_hard_links(struct file_list *flist);
int hard_link_check(struct file_struct *file, int skip);
void do_hard_links(void);
patchwork diff receiver.c
--- receiver.c 2004-02-17 10:36:44.000000000 -0500
+++ receiver.c 2004-02-17 13:10:23.000000000 -0500
@@ -186,10 +186,11 @@
static int receive_data(int f_in,struct map_struct *mapbuf,int fd,char *fname,
- OFF_T total_size)
+ OFF_T total_size,char *md4)
{...
2004 Feb 23
0
[patch] Add `--link-by-hash' option (rev 5).
...ashname, int64 size, long *fnbr);
+struct hashfile_struct *compare_hashfiles(int fd,struct hashfile_struct *files);
+int link_by_hash(char *fnametmp,char *fname,struct file_struct *file);
void init_hard_links(struct file_list *flist);
int hard_link_check(struct file_struct *file, int skip);
void do_hard_links(void);
patchwork diff receiver.c
--- receiver.c 2004-02-23 10:22:51.000000000 -0500
+++ receiver.c 2004-02-23 10:22:51.000000000 -0500
@@ -186,10 +186,11 @@
static int receive_data(int f_in,struct map_struct *mapbuf,int fd,char *fname,
- OFF_T total_size)
+ OFF_T total_size,char *md4)
{...
2004 Feb 16
1
[patch] Add `--link-by-hash' option (rev 2).
...hfiles(char *hashname, int64 size, long *fnbr);
+struct hashfile_struct *compare_hashfiles(int fd,struct hashfile_struct *files);
+void link_by_hash(char *fname,struct file_struct *file);
void init_hard_links(struct file_list *flist);
int hard_link_check(struct file_struct *file, int skip);
void do_hard_links(void);
patchwork diff receiver.c
--- receiver.c 2004-02-16 10:24:39.000000000 -0500
+++ receiver.c 2004-02-16 10:19:41.000000000 -0500
@@ -186,10 +186,11 @@
static int receive_data(int f_in,struct map_struct *mapbuf,int fd,char *fname,
- OFF_T total_size)
+ OFF_T total_size,char *md4)
{...
2003 Oct 03
2
Cygwin/rsync Hang Problem Testing Results
People of cygwin & rsync,
I recently attempted to get cygwin and rsync working to solve a
backup/mirroring need in my computer life. Well, as you might guess, I
ran into a little but of trouble.
Strangely enough, rsync seemed to be regularly hanging when I attempted
to do a "get" (sycronize a remote to a local dir). Well, considering I
want to automate this, that was not going