Displaying 3 results from an estimated 3 matches for "bufferidx".
Did you mean:
buffered
2003 Jan 03
0
[Fwd: Re: rsync windows -> unix still hanging :(]
.../cvsroot/rsync/io.c,v
retrieving revision 1.105
diff -r1.105 io.c
44,45c44,45
< static int multiplex_in_fd;
< static int multiplex_out_fd;
---
> static int multiplex_in_fd = -1;
> static int multiplex_out_fd = -1;
288a289,291
> static char *buffer;
> static size_t bufferIdx = 0;
> static size_t bufferSz;
290c293
< if (!io_multiplexing_in || fd != multiplex_in_fd)
---
> if (fd != multiplex_in_fd)
292a296,305
> if (!io_multiplexing_in && remaining == 0) {
> if (!buffer) {
> bufferSz = 2 * IO_BUFFER_SIZE;...
2002 Dec 09
2
Rsync performance increase through buffering
...plex_in_fd;
-static int multiplex_out_fd;
+static int multiplex_in_fd = -1;
+static int multiplex_out_fd = -1;
static time_t last_io;
static int no_flush;
@@ -286,17 +286,31 @@
static size_t remaining;
int tag, ret = 0;
char line[1024];
+ static char *buffer;
+ static size_t bufferIdx = 0;
+ static size_t bufferSz;
- if (!io_multiplexing_in || fd != multiplex_in_fd)
+ if (fd != multiplex_in_fd)
return read_timeout(fd, buf, len);
+ if (!io_multiplexing_in && remaining == 0) {
+ if (!buffer) {
+ bufferSz = 2 * IO_BUFFER_SIZE;
+ buffer = malloc(bufferSz...
2004 Jan 17
1
--delete-sent-files (AKA --move-files)
...\n", tag, len);
+ exit_cleanup(RERR_STREAMIO);
+ }
+ read_loop(fd, buf, 4);
+ io_multiplex_write(MSG_SUCCESS, buf, 4);
+ break;
case MSG_INFO:
case MSG_ERROR:
case MSG_LOG:
@@ -637,6 +645,16 @@ static int read_unbuffered(int fd, char
}
read_loop(fd, buffer, remaining);
bufferIdx = 0;
+ break;
+ case MSG_SUCCESS:
+ if (remaining != 4) {
+ rprintf(FERROR, "invalid multi-message %d:%ld\n",
+ tag, (long)remaining);
+ exit_cleanup(RERR_STREAMIO);
+ }
+ read_loop(fd, line, 4);
+ successful_send(IVAL(line, 0));
+ remaining = 0;
break;
case...