Bug 6405 - Error parsing commandline in version 3.0.6
Summary: Error parsing commandline in version 3.0.6
Status: RESOLVED INVALID
Alias: None
Product: rsync
Classification: Unclassified
Component: core (show other bugs)
Version: 3.0.6
Hardware: Sparc Solaris
: P3 normal (vote)
Target Milestone: ---
Assignee: Wayne Davison
QA Contact: Rsync QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-25 07:29 UTC by Christian Japes
Modified: 2010-04-24 15:38 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christian Japes 2009-05-25 07:29:31 UTC
Hello,

currently I'm having problems with version 3.0.6 which I don't have with version 3.0.5.
This is what happens:

bin/rsync -vvauxSpz rsync://xxx.xxx.com:11000::cadappl_sde/cadappl_sde/ictools/tetramax .
opening connection using: ssh rsync rsync --server --sender -vvulogDtprxSze.is . "//xxx.xxx.com:11000::cadappl_sde/cadappl_sde/ictools/tetramax"
ssh: Could not resolve hostname rsync: host/servname not known
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(600) [receiver=3.0.6]

Obviuosly there is a problem extracting the hostname from the rsync://... expression. I tried this on both Solaris and Linux.

Regards,

Christian
Comment 1 Wayne Davison 2009-05-25 13:33:54 UTC
Double-colon syntax is used when you don't use an rsync:// prefix.  So you should either use a valid URL, or double-colon syntax, not try to combine them:

rsync://xxx.xxx.com:11000/cadappl_sde/ictools/tetramax

--port=11000 xxx.xxx.com::cadappl_sde/ictools/tetramax

Older rsync versions would ignore the strange "::cadappl_sde" suffix on the hostname, but the improved parser in 3.0.6 won't let you get away with supplying such a weird string -- since it's not a valid URL, it assumes you're trying to connect to host "rsync" via ssh.
Comment 2 Eugene Portnoy 2010-04-23 20:40:12 UTC
Hi,

The reason I reopened the bug is that parsing of rsync:// handles fails even under simpler circumstances, not involving a double colon.

~$ rsync -vv /var/tmp/test.bz2 rsync://automatiks@localhost:1873:/automatiks
opening connection using: ssh rsync rsync --server -vve.s . "//automatiks@localhost:1873:/automatiks"
ssh: Could not resolve hostname rsync: Name or service not known
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(600) [sender=3.0.6]

I have an ssh tunnel opened from local port 1873 to port 873 on a remote host (it is behind a firewall) and I obviously need to specify port in the command line.

I'm running v3.0.6 on ARM, Linux.

Thanks for your help,
Eugene
Comment 3 Wayne Davison 2010-04-24 15:38:37 UTC
You have a superfluous colon after the port number.