Please review, I was not able to test it today.
(the { in the while clause is on a separate line because it would break
the 80 char limit)
Martijn
[EMAIL PROTECTED] schreef:
Author: jkf
Date: Mon Oct 1 13:07:17 2007
New Revision: 581055
URL: http://svn.apache.org/viewvc?rev=581055&view=rev
Log:
pr 43521, @ in filename not allowed anymore since @ allowed in password.
Modified:
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/ssh/Scp.java
Modified:
ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/ssh/Scp.java
URL:
http://svn.apache.org/viewvc/ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/ssh/Scp.java?rev=581055&r1=581054&r2=581055&view=diff
==============================================================================
--- ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/ssh/Scp.java
(original)
+++ ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/optional/ssh/Scp.java
Mon Oct 1 13:07:17 2007
@@ -310,10 +310,21 @@
}
private String parseUri(String uri) {
- int indexOfAt = uri.lastIndexOf('@');
+
+ int indexOfAt = uri.indexOf('@');
int indexOfColon = uri.indexOf(':');
+
if (indexOfColon > -1 && indexOfColon < indexOfAt) {
// user:[EMAIL PROTECTED]:/path notation
+ // everything upto the last @ before the last : is considered
+ // password. (so if the path contains an @ and a : it will not
work)
+ int indexOfCurrentAt = indexOfAt;
+ int indexOfLastColon = uri.lastIndexOf(':');
+ while (indexOfCurrentAt > -1 && indexOfCurrentAt <
indexOfLastColon)
+ {
+ indexOfAt = indexOfCurrentAt;
+ indexOfCurrentAt = uri.indexOf('@', indexOfCurrentAt + 1);
+ }
setUsername(uri.substring(0, indexOfColon));
setPassword(uri.substring(indexOfColon + 1, indexOfAt));
} else {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]