[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
(usagi-users 03183) xinetd/rsync server don't finish in case of IPv6 connection is encrypted
- To: Maillist USAGI-users <usagi-users@xxxxxxxxxxxxxx>
- Subject: (usagi-users 03183) xinetd/rsync server don't finish in case of IPv6 connection is encrypted
- From: Peter Bieringer <pb@xxxxxxxxxxxx>
- Date: Sat, 01 Jan 2005 17:56:22 +0100
- Reply-to: usagi-users@xxxxxxxxxxxxxx
Hi,
I ran into a very strange problem here:
2 hosts are connected via SixXS tunnels.
On one host a rsync server is running, on demand started by xinetd.
On the other host, a rsync client pushes files to the rsync server.
If I ran this connection over unencrypted IPv6, it works perfectly fine,
even if I stop the client by SIGINT (CTRL-C) [note, you have to wait until
real file transfer started]
rsync server usually starts 2 processes:
18719 ? Ss 0:00 rsync --daemon --config=/etc/rsyncd.conf
18722 ? S 0:00 rsync --daemon --config=/etc/rsyncd.conf
Both are gone away after SIGINT
If I ran this connection over encrypted IPv6 (either transport or tunnel),
the first one (with flags Ss) didn't go away after SIGINT. That's a problem
because it's counted to "max connections", means after 3 times SIGINT,
server is no longer accepting connections.
19017 ? Ss 0:00 rsync --daemon --config=/etc/rsyncd.conf
19027 ? S 0:00 rsync --daemon --config=/etc/rsyncd.conf
But the process does nothing:
# strace -p 19017
Process 19017 attached - interrupt to quit
select(1, NULL, [0], NULL, {56, 776000} <unfinished ...>
Process 19017 detached
ltrace shows nothing
# lsof -p 19017
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
rsync 19017 peter cwd DIR 22,65 4096 14286877 /path/to/dir
rsync 19017 peter rtd DIR 22,65 4096 14286877 /path/to/dir
rsync 19017 peter txt REG 3,1 195268 112570 /usr/bin/rsync
rsync 19017 peter mem REG 3,1 47432 289250
/lib/libnss_nisplus-2.3.3.so
rsync 19017 peter mem REG 3,1 18452 289238
/lib/libnss_dns-2.3.3.so
rsync 19017 peter mem REG 3,1 43072 289241
/lib/libnss_files-2.3.3.so
rsync 19017 peter mem REG 3,1 1414984 401009
/lib/tls/i486/libc-2.3.3.so
rsync 19017 peter mem REG 3,1 98176 289205 /lib/ld-2.3.3.so
rsync 19017 peter mem REG 3,1 82008 289224
/lib/libnsl-2.3.3.so
rsync 19017 peter mem REG 3,1 71356 289254
/lib/libresolv-2.3.3.so
rsync 19017 peter mem REG 3,1 26532 176598
/usr/lib/libpopt.so.0.0.0
rsync 19017 peter 0u sock 0,4 326075 can't identify
protocol
rsync 19017 peter 1u CHR 1,3 2057 /dev/null
rsync 19017 peter 2u CHR 1,3 2057 /dev/null
rsync 19017 peter 3u unix 0x0e8c6940 326076 socket
rsync 19017 peter 4uw REG 3,1 0 275890
/var/run/rsyncd.lock
rsync 19017 peter 5u unix 0x0a618040 326153 socket
I can't kill the process with SIGTERM, I have to use SIGKILL
Note that it also happen if rsync is started directly e.g. with
# rsync -v --address=2001:6f8:900:**** -6 --daemon
Result:
19834 ? Ss 0:00 rsync -v --address=2001:6f8:900:*** -6 --daemon
19837 ? S 0:00 rsync -v --address=2001:6f8:900:*** -6 --daemon
19855 ? S 0:00 rsync -v --address=2001:6f8:900:*** -6 --daemon
19858 ? S 0:00 rsync -v --address=2001:6f8:900:*** -6 --daemon
-> can't kill the processes with SIGTERM
Versions:
rsync: 2.6.3-1
kernel: 2.6.9-1.681_FC3 (from Fedora Core 3)
ipsec: Openswan IPsec U2.2.0
xinetd: 2.3.13-4
Perhaps anyone has an idea, what's going on or how to do better debugging.
Peter
--
Dr. Peter Bieringer http://www.bieringer.de/pb/
GPG/PGP Key 0x958F422D mailto: pb at bieringer dot de
Deep Space 6 Co-Founder and Core Member http://www.deepspace6.net/