X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/981555bddb2179cf37447856c0642674d0191bef..65fc84b32e2a558cca3a66587ac4cd06e16f1471:/batch.c diff --git a/batch.c b/batch.c index 632c6077..dc96c1df 100644 --- a/batch.c +++ b/batch.c @@ -29,8 +29,8 @@ void write_batch_flist_info(int flist_count, struct file_struct **files) int i, f, save_pv; int64 save_written; - i = strlcpy(filename, batch_prefix, sizeof filename); - strlcpy(filename + i, rsync_flist_file, sizeof filename - i); + stringjoin(filename, sizeof filename, + batch_prefix, rsync_flist_file, NULL); f = do_open(filename, O_WRONLY|O_CREAT|O_TRUNC, S_IREAD|S_IWRITE); if (f < 0) { @@ -45,8 +45,10 @@ void write_batch_flist_info(int flist_count, struct file_struct **files) write_int(f, protocol_version); write_int(f, flist_count); - for (i = 0; i < flist_count; i++) - send_file_entry(files[i], f, files[i]->flags & LIVE_FLAGS); + for (i = 0; i < flist_count; i++) { + send_file_entry(files[i], f, files[i]->flags & FLAG_TOP_DIR ? + XMIT_TOP_DIR : 0); + } send_file_entry(NULL, f, 0); protocol_version = save_pv; @@ -64,8 +66,8 @@ void write_batch_argvs_file(int argc, char *argv[]) char buff2[MAXPATHLEN + 6]; char filename[MAXPATHLEN]; - i = strlcpy(filename, batch_prefix, sizeof filename); - strlcpy(filename+i, rsync_argvs_file, sizeof filename - i); + stringjoin(filename, sizeof filename, + batch_prefix, rsync_argvs_file, NULL); f = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IREAD | S_IWRITE | S_IEXEC); @@ -124,8 +126,8 @@ struct file_list *create_flist_from_batch(void) int i, f, save_pv; int64 save_read; - i = strlcpy(filename, batch_prefix, sizeof filename); - strlcpy(filename + i, rsync_flist_file, sizeof filename - i); + stringjoin(filename, sizeof filename, + batch_prefix, rsync_flist_file, NULL); f = do_open(filename, O_RDONLY, 0); if (f < 0) { @@ -149,7 +151,7 @@ struct file_list *create_flist_from_batch(void) out_of_memory("create_flist_from_batch"); for (i = 0; (flags = read_byte(f)) != 0; i++) { - if (protocol_version >= 28 && (flags & EXTENDED_FLAGS)) + if (protocol_version >= 28 && (flags & XMIT_EXTENDED_FLAGS)) flags |= read_byte(f) << 8; receive_file_entry(&batch_flist->files[i], flags, f); } @@ -193,8 +195,8 @@ void write_batch_csum_info(int *flist_entry, struct sum_struct *s) char filename[MAXPATHLEN]; if (f_csums < 0) { - int n = strlcpy(filename, batch_prefix, sizeof filename); - strlcpy(filename + n, rsync_csums_file, sizeof filename - n); + stringjoin(filename, sizeof filename, + batch_prefix, rsync_csums_file, NULL); f_csums = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IREAD | S_IWRITE); @@ -242,8 +244,8 @@ void read_batch_csum_info(int flist_entry, struct sum_struct *s, char filename[MAXPATHLEN]; if (f_csums < 0) { - int n = strlcpy(filename, batch_prefix, sizeof filename); - strlcpy(filename + n, rsync_csums_file, sizeof filename - n); + stringjoin(filename, sizeof filename, + batch_prefix, rsync_csums_file, NULL); f_csums = do_open(filename, O_RDONLY, 0); if (f_csums < 0) { @@ -284,8 +286,8 @@ void write_batch_delta_file(char *buff, int bytes_to_write) char filename[MAXPATHLEN]; if (f_delta < 0) { - int n = strlcpy(filename, batch_prefix, sizeof filename); - strlcpy(filename + n, rsync_delta_file, sizeof filename - n); + stringjoin(filename, sizeof filename, + batch_prefix, rsync_delta_file, NULL); f_delta = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC, S_IREAD | S_IWRITE); @@ -316,8 +318,8 @@ int read_batch_delta_file(char *buff, int len) char filename[MAXPATHLEN]; if (f_delta < 0) { - int n = strlcpy(filename, batch_prefix, sizeof filename); - strlcpy(filename + n, rsync_delta_file, sizeof filename - n); + stringjoin(filename, sizeof filename, + batch_prefix, rsync_delta_file, NULL); f_delta = do_open(filename, O_RDONLY, 0); if (f_delta < 0) {