diff options
author | Rodrigo Osorio <rodrigo@FreeBSD.org> | 2021-05-07 11:04:57 +0000 |
---|---|---|
committer | Rodrigo Osorio <rodrigo@FreeBSD.org> | 2021-05-07 11:32:56 +0000 |
commit | 527ea9781603f01f3647e8d5fe49586292021407 (patch) | |
tree | 697ec38a29078a1f3a3502a5659ad905774edd41 | |
parent | 28491722dab2b210cf21f0fbaf721db42f2e7f75 (diff) | |
download | ports-527ea9781603f01f3647e8d5fe49586292021407.tar.gz ports-527ea9781603f01f3647e8d5fe49586292021407.zip |
net/rsync: Add patch to fix time limit options
In latest version, upstream project breaks
time limit options implementation. The fix
allows the use of this option in both receiver
and sender mode. A merger request was submitted
to upstream project[1] but not yet merged.
Bump portrevision.
[1] https://github.com/WayneD/rsync/pull/179
Reported by: philip
Tested by: philip
-rw-r--r-- | net/rsync/Makefile | 1 | ||||
-rw-r--r-- | net/rsync/files/patch-io.c | 27 |
2 files changed, 28 insertions, 0 deletions
diff --git a/net/rsync/Makefile b/net/rsync/Makefile index 41b414df5db9..0f9df25989e8 100644 --- a/net/rsync/Makefile +++ b/net/rsync/Makefile @@ -2,6 +2,7 @@ PORTNAME= rsync DISTVERSION= 3.2.3 +PORTREVISION= 1 CATEGORIES= net MASTER_SITES= https://www.mirrorservice.org/sites/rsync.samba.org/src/ \ http://rsync.mirror.garr.it/src/ \ diff --git a/net/rsync/files/patch-io.c b/net/rsync/files/patch-io.c new file mode 100644 index 000000000000..4e051d32c9c9 --- /dev/null +++ b/net/rsync/files/patch-io.c @@ -0,0 +1,27 @@ +--- io.c.orig ++++ io.c +@@ -787,18 +787,19 @@ + if (msgs2stderr == 1 && DEBUG_GTE(IO, 2)) + rprintf(FINFO, "[%s] recv=%ld\n", who_am_i(), (long)n); + +- if (io_timeout || stop_at_utime) { ++ if (io_timeout) { + last_io_in = time(NULL); +- if (stop_at_utime && last_io_in >= stop_at_utime) { +- rprintf(FERROR, "stopping at requested limit\n"); +- exit_cleanup(RERR_TIMEOUT); +- } + if (io_timeout && flags & PIO_NEED_INPUT) + maybe_send_keepalive(last_io_in, 0); + } + stats.total_read += n; + + iobuf.in.len += n; ++ } ++ ++ if (stop_at_utime && time(NULL) >= stop_at_utime) { ++ rprintf(FERROR, "stopping at requested limit\n"); ++ exit_cleanup(RERR_TIMEOUT); + } + + if (out && FD_ISSET(iobuf.out_fd, &w_fds)) { |