[Bug 10551] New: Daemon infinite loop when no matched user in secrets
samba-bugs at samba.org
samba-bugs at samba.org
Sun Apr 13 04:41:23 MDT 2014
https://bugzilla.samba.org/show_bug.cgi?id=10551
Summary: Daemon infinite loop when no matched user in secrets
Product: rsync
Version: 3.1.1
Platform: x64
OS/Version: Linux
Status: NEW
Severity: major
Priority: P5
Component: core
AssignedTo: wayned at samba.org
ReportedBy: ryan at finnie.org
QAContact: rsync-qa at samba.org
Created attachment 9850
--> https://bugzilla.samba.org/attachment.cgi?id=9850
Strace output of infinite loop
Hello. Given a test module:
[test-module]
path = /tmp
auth users = *
secrets file = /tmp/rsyncd.secrets
and secrets file:
gooduser:goodpass
and running a daemon, good user / good password and good user / bad password
work as expected:
$ RSYNC_PASSWORD=goodpass rsync rsync://gooduser@host/test-module/
drwxrwxrwt 12,288 2014/04/13 03:31:34 .
$ RSYNC_PASSWORD=badpass rsync rsync://gooduser@host/test-module/
@ERROR: auth failed on module test-module
rsync error: error starting client-server protocol (code 5) at main.c(1653)
[Receiver=3.1.0]
But specifying a nonexistent username puts the daemon into an infinite loop.
$ RSYNC_PASSWORD=badpass rsync rsync://baduser@host/test-module/
A partial strace is attached, but basically it reads to the end of
rsync.d.secrets, then loops:
27953 select(5, [4], NULL, [4], {60, 0}) = 1 (in [4], left {59, 999999})
27953 read(4, "", 1) = 0
The parent process remains open for other connections, but the child process
goes into a CPU spin.
I've done a git bisect, and the problem appears to have been introduced with
commit 5ebe9a46d7f3c846a6d665cb8c6ab8b79508a6df (Add @group auth and overrides
to "auth user" daemon config.).
--
Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the rsync
mailing list