- } /* end for */
- }
-}
-
-void write_batch_delta_file(char *buff, int bytes_to_write)
-{
- static int fdb_delta_open = 1;
- char filename[MAXPATHLEN];
-
- if (fdb_delta_open) {
- /* Set up file extension */
- strlcpy(filename, batch_prefix, sizeof(filename));
- strlcat(filename, rsync_delta_file, sizeof(filename));
-
- /*
- * Open batch delta file for writing;
- * create it if it doesn't exist
- */
- fdb_delta = do_open(filename, O_WRONLY | O_CREAT | O_TRUNC,
- S_IREAD | S_IWRITE);
- if (fdb_delta == -1) {
- rprintf(FERROR, "Batch file %s open error: %s\n",
- filename, strerror(errno));
- close(fdb_delta);
- exit_cleanup(1);
- }
- fdb_delta_open = 0;
- }
-
- /* Write buffer to batch delta file */
-
- if (write(fdb_delta, buff, bytes_to_write) == -1) {
- rprintf(FERROR, "Batch file %s write error: %s\n",
- filename, strerror(errno));
- close(fdb_delta);
- exit_cleanup(1);
- }
-}
-
-void close_batch_delta_file(void)
-{
- close(fdb_delta);
-}
-
-int read_batch_delta_file(char *buff, int len)
-{
- static int fdb_delta_open = 1;
- int bytes_read;
- char filename[MAXPATHLEN];
-
- if (fdb_delta_open) {
- /* Set up file extension */
- strlcpy(filename, batch_prefix, sizeof(filename));
- strlcat(filename, rsync_delta_file, sizeof(filename));
-
- /* Open batch flist file for reading */
- fdb_delta = do_open(filename, O_RDONLY, 0);
- if (fdb_delta == -1) {
- rprintf(FERROR, "Batch file %s open error: %s\n",
- filename, strerror(errno));
- close(fdb_delta);
- exit_cleanup(1);
- }
- fdb_delta_open = 0;
- }
-
- /* Read delta batch file */
-
- bytes_read = read(fdb_delta, buff, len);
-
- if (bytes_read == -1) {
- rprintf(FERROR, "Batch file %s read error: %s\n",
- filename, strerror(errno));
- close(fdb_delta);
- exit_cleanup(1);
- }
-
- return bytes_read;
-}
-
-void show_flist(int index, struct file_struct **fptr)
-{
- /* for debugging show_flist(flist->count, flist->files * */
-
- int i;
- for (i = 0; i < index; i++) {
- rprintf(FINFO, "flist->flags=%#x\n", fptr[i]->flags);
- rprintf(FINFO, "flist->modtime=%#lx\n",
- (long unsigned) fptr[i]->modtime);
- rprintf(FINFO, "flist->length=%.0f\n",
- (double) fptr[i]->length);
- rprintf(FINFO, "flist->mode=%#o\n", (int) fptr[i]->mode);
- rprintf(FINFO, "flist->basename=%s\n", fptr[i]->basename);
- if (fptr[i]->dirname)
- rprintf(FINFO, "flist->dirname=%s\n",
- fptr[i]->dirname);
- if (fptr[i]->basedir)
- rprintf(FINFO, "flist->basedir=%s\n",
- fptr[i]->basedir);