Fixed
Created: Jul 8, 2015
Updated: Sep 8, 2018
Resolved Date: Sep 20, 2015
Found In Version: 7.0
Fix Version: 7.0.0.10
Severity: Standard
Applicable for: Wind River Linux 7
Component/s: Userspace
If we change system time backwards, rsync daemon may hung. The defect have been fixed in rsync 3.1.0. The change log is 'Fix an issue in the msleep() function if time jumps backwards' on http://ubuntuhandbook.org/index.php/2013/09/rsync-3-1-0-released-with-new-options-and-improvements/
1. create and build a project:/WindRiver-4.3/wrlinux-4/wrlinux/../ldat/configure --enable-board=common_pc_64 --enable-kernel=standard --enable-rootfs=glibc_std --with-product-dir=/WindRiver-4.3/wrlinux-4/wrlinux
2. configure and startup rsync service
copy attached 'rsyncd.conf' to /etc
echo '"root:123456" > /etc/backserver.pas
chmod 600 /etc/backserver.pas
change 'disable = yes' to 'disable = no' in '/etc/xinetd.d/rsync'
/etc/init.d/xinetd restart
echo "123456" > /root/my.secrets
chmod 600 /root/my.secrets
mkdir /root/a
mkdir /root/b
dd if=/dev/zero of=/root/b/1 bs=1M count=1
dd if=/dev/zero of=/root/b/2 bs=1M count=1
dd if=/dev/zero of=/root/b/3 bs=1M count=1
dd if=/dev/zero of=/root/b/4 bs=1M count=1
dd if=/dev/zero of=/root/b/5 bs=1M count=1
3. start testcase
./change-time-loop.sh > /dev/null &
./rsync-loop.sh
4. after while there will print error info as below, and we can see that rsync deamon hung by 'ps'
rsync error: error starting client-server protocol (code 5) at main.c(1383) [sender=2.6.9]
@ERROR: max connections (4) reached -- try again later