Displaying 9 results from an estimated 9 matches for "piped_child".
2004 May 29
1
[patch] Filename conversion
...ter: %s\n", fname_convert_cmd);
+		split_on_spaces(fname_convert_cmd, args);
+		/* Invoke child pipe with non-blocking IO and without registering it for
+		   autocleanup (the latter may blow up the all_pids table, and is not needed
+		   since we have our own cleanup handler. */
+		conv_pid = piped_child(args, &conv_read_fd, &conv_write_fd, 0, 0);
+		set_nonblocking(conv_write_fd);
+		set_nonblocking(conv_read_fd);
+	}
+}
+
+/**
+ * Kills the filename converter process. Should be called when the file
+ * list creation is done. We assume that the converter will terminate
+ * soon after its s...
2009 Nov 08
1
dup error of rsync 3.0.6-1 under cygwin 1.7.0-62 and 63
...ier rsync on cygwin successfully for a
long. I have now moved to cygwin 1.7.0, which required
moving to rsync 3.0.6-1 at the same time. (The -1 is
for minor cygwin-specific patches.)
When I do almost any command with rsync, such as the one
below, it breaks at a dup2 after a fork in pipe.c (routine
piped_child). Windows gives error code 6, which is translated
by cygwin to errno 9 = EBADF, and rsync then terminates.
rsync -avzuP foo roc:talks/
Even
rsync -r .
fails the same way, though it does not need a network
connection.
Steven Monai suggests that the problem may be a mismatch
in protocol (30 vers...
2004 Sep 28
3
Truncated output from "rsync -e ssh ... 2>&1 | tee"
...slower.
After poking around with strace, it seems that rsync's child ssh sets its
stdERR non-blocking, and that stderr has been inherited unchanged
from the top-level rsync.  (The rsync has supplied pipes for its child's
stdin and stdout, but left the stderr alone;
see rsync-2.6.2/pipe.c::piped_child().)
Because of the "2>&1", the top-level stderr is a dup of
the top-level stdout, so ssh has inadvertantly made rsync's
stdOUT non-blocking.  Rsync is not expecting that, and does
not check the return code from fflush(stdout), so it can
silently drop lines from stdout.
(See th...
2003 Jul 24
0
(no subject)
...8 05:05:53 2003
--- rsync-2.5.6-remotebatch/main.c	Wed Jul 23 15:55:18 2003
***************
*** 263,270 ****
  	}
  
  	if (local_server) {
- 		if (read_batch)
- 		    create_flist_from_batch(); /* sets batch_flist */
  		ret = local_child(argc, args, f_in, f_out, child_main);
  	} else {
  		ret = piped_child(args,f_in,f_out);
--- 263,268 ----
***************
*** 505,515 ****
  
  	if (delete_mode && !delete_excluded)
  		recv_exclude_list(f_in);
! 
! 	if (read_batch)
! 	    flist = batch_flist;
! 	else
! 	    flist = recv_file_list(f_in);
  	if (!flist) {
  		rprintf(FERROR,"server_recv: r...
2004 Oct 13
0
[Bug 1924] New: unable to rsync between a PC with cygwin and a unix machine using rsh
...(FINFO,"cmd=");
		for (i=0;i<argc;i++)
			rprintf(FINFO,"%s ",args[i]);
		rprintf(FINFO,"\n");
	}
	if (local_server) {
		if (read_batch)
			create_flist_from_batch(); /* sets batch_flist */
		ret = local_child(argc, args, f_in, f_out, child_main);
	} else {
		ret = piped_child(args,f_in,f_out);
	}
	if (dir) free(dir);
	return ret;
oom:
	out_of_memory("do_cmd");
	return 0; /* not reached */
}
--------------------------------------------------------------------------
-- 
Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email
------- You are re...
2003 Nov 17
0
[PATCH] --source-filter && --dest-filter for rsync 2.5.6
...,
+			command[0], strerror(errno));
+		exit_cleanup(RERR_IPC);
+	}
+
+	return pid;
+}
diff -ur rsync-2.5.6/proto.h rsync-2.5.6-filtered/proto.h
--- rsync-2.5.6/proto.h	2003-01-27 04:35:09.000000000 +0100
+++ rsync-2.5.6-filtered/proto.h	2003-11-16 13:20:48.000000000 +0100
@@ -181,6 +181,8 @@
 pid_t piped_child(char **command, int *f_in, int *f_out);
 pid_t local_child(int argc, char **argv,int *f_in,int *f_out,
 		  int (*child_main)(int, char*[]));
+pid_t run_filter(char *command[], int in, int *pipe_to_filter);
+pid_t run_filter_on_file(char *command[], int out, int in);
 void end_progress(OFF_T size);...
2004 Jul 12
2
[PATCH] Batch-mode rewrite
...nical record.
+ 	 */
+ 
  	if (am_server) {
  		if (am_sender) {
  			int64 w;
***************
*** 300,307 ****
  	}
  
  	if (local_server) {
- 		if (read_batch)
- 			create_flist_from_batch(); /* sets batch_flist */
  		ret = local_child(argc, args, f_in, f_out, child_main);
  	} else {
  		ret = piped_child(args,f_in,f_out);
--- 321,326 ----
***************
*** 461,466 ****
--- 480,491 ----
  
  		recv_files(f_in,flist,local_name);
  		io_flush(FULL_FLUSH);
+ 
+ 		/* This test for read_batch is needed because of a
+ 		 * protocol dependency on am_server state, see
+ 		 * report().  We are quite fortun...
2001 Aug 06
1
merge rsync+ into rsync (was Re: rsync-2.4.7 NEWS file)
> Just curious: what about the rsync+ patch?
Thanks for the reminder.
I've just committed Jos's rsync+ patch onto the
"branch_mbp_rsyncplus_merge" branch.  If it works OK and nobody
screams I will move it across onto the main tree tomorrow or
Wednesday.
I see the patch doesn't add documentation about the new options to the
man page, so we should fix that in the future.
2002 Feb 07
1
Latest version of the batch mode cleanup patch
...p; !local_server) {
 		if (!cmd)
 			cmd = getenv(RSYNC_RSH_ENV);
 		if (!cmd)
@@ -230,7 +230,7 @@
 
 	if (local_server) {
 		if (read_batch)
-		    create_flist_from_batch();
+		    create_flist_from_batch(); /* sets batch_flist */
 		ret = local_child(argc, args, f_in, f_out);
 	} else {
 		ret = piped_child(args,f_in,f_out);
@@ -443,8 +443,8 @@
 	extern int am_daemon;
 	extern int module_id;
 	extern int am_sender;
-	extern int read_batch;   /* dw */
-	extern struct file_list *batch_flist;  /* dw */
+	extern int read_batch;
+	extern struct file_list *batch_flist;
 
 	if (verbose > 2)
 		rprintf(FIN...