Fix a deadlock in openrsync when big files are synced using the hash
authorclaudio <claudio@openbsd.org>
Mon, 19 Feb 2024 16:39:18 +0000 (16:39 +0000)
committerclaudio <claudio@openbsd.org>
Mon, 19 Feb 2024 16:39:18 +0000 (16:39 +0000)
commit0e1879aafc8d52781267651a6455236cadaf2b54
tree4f65a88fde1518ebc865b08f7ba957b630dfccb2
parentceb3ec2b6935864e3c7f2943570b9a974797d24a
Fix a deadlock in openrsync when big files are synced using the hash
algorithm. Make sure the sender does not run ahead of itself and end
stalling in a read from network that never shows up. Instead ensure
that all queued data is pushed out before accepting new data.

Problem found by and fix developed with Kyle Evans (kevans freebsd.org)
OK tb@ deraadt@
usr.bin/rsync/sender.c