You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by da...@apache.org on 2015/09/20 05:20:48 UTC
maven-wagon git commit: Revert "[WAGON-426] Prevent fingerprints loss
in known_hosts. Append in"
Repository: maven-wagon
Updated Branches:
refs/heads/master fc34bf340 -> 8863ded43
Revert "[WAGON-426] Prevent fingerprints loss in known_hosts. Append in"
This reverts commit fc34bf340e64f42ea969b29bb83aa73d0b10d910.
Project: http://git-wip-us.apache.org/repos/asf/maven-wagon/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-wagon/commit/8863ded4
Tree: http://git-wip-us.apache.org/repos/asf/maven-wagon/tree/8863ded4
Diff: http://git-wip-us.apache.org/repos/asf/maven-wagon/diff/8863ded4
Branch: refs/heads/master
Commit: 8863ded43b40a030bef525f5a42b5adc3a0cb8de
Parents: fc34bf3
Author: Dan Tran <da...@apache.org>
Authored: Sat Sep 19 20:19:43 2015 -0700
Committer: Dan Tran <da...@apache.org>
Committed: Sat Sep 19 20:19:43 2015 -0700
----------------------------------------------------------------------
.../knownhost/AbstractKnownHostsProvider.java | 15 ++----
.../ssh/knownhost/FileKnownHostsProvider.java | 17 ++-----
.../ssh/knownhost/KnownHostsProvider.java | 3 --
.../providers/ssh/jsch/AbstractJschWagon.java | 53 +++++++++++---------
.../ssh/jsch/EmbeddedScpWagonTest.java | 6 ---
.../ssh/jsch/EmbeddedScpWagonWithKeyTest.java | 6 ---
6 files changed, 37 insertions(+), 63 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/8863ded4/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java
----------------------------------------------------------------------
diff --git a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java
index 6b9117a..19c9f3f 100644
--- a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java
+++ b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/AbstractKnownHostsProvider.java
@@ -34,7 +34,7 @@ public abstract class AbstractKnownHostsProvider
{
/**
* Valid values are ask, yes, no.
- *
+ *
* @plexus.configuration default-value="ask"
*/
private String hostKeyChecking = "ask";
@@ -43,7 +43,7 @@ public abstract class AbstractKnownHostsProvider
* the known hosts, in the openssh format
*/
protected String contents;
-
+
protected Set<KnownHostEntry> knownHosts = new HashSet<KnownHostEntry>();
public void setHostKeyChecking( String hostKeyChecking )
@@ -60,16 +60,11 @@ public abstract class AbstractKnownHostsProvider
{
return contents;
}
-
+
public void storeKnownHosts( String contents )
throws IOException
{
}
-
- public void addKnownHost( KnownHostEntry knownHost )
- throws IOException
- {
- }
-
-
+
+
}
http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/8863ded4/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java
----------------------------------------------------------------------
diff --git a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java
index 48ab250..399c1d2 100644
--- a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java
+++ b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/FileKnownHostsProvider.java
@@ -33,7 +33,7 @@ import org.codehaus.plexus.util.FileUtils;
*
* @author Juan F. Codagnone
* @since Sep 12, 2005
- *
+ *
* @plexus.component role="org.apache.maven.wagon.providers.ssh.knownhost.KnownHostsProvider"
* role-hint="file"
* instantiation-strategy="per-lookup"
@@ -72,7 +72,7 @@ public class FileKnownHostsProvider
throws IOException
{
Set<KnownHostEntry> hosts = this.loadKnownHosts( contents );
-
+
if ( ! this.knownHosts.equals( hosts ) )
{
file.getParentFile().mkdirs();
@@ -80,18 +80,7 @@ public class FileKnownHostsProvider
this.knownHosts = hosts;
}
}
-
- public void addKnownHost( KnownHostEntry knownHostEntry )
- throws IOException
- {
- if ( !this.knownHosts.contains( knownHostEntry ) )
- {
- String knownHost = knownHostEntry.getHostName() + " " + knownHostEntry.getKeyType() + " "
- + knownHostEntry.getKeyValue() + "\n";
- FileUtils.fileAppend( file.getAbsolutePath(), knownHost );
- }
- }
-
+
public File getFile()
{
return file;
http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/8863ded4/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/KnownHostsProvider.java
----------------------------------------------------------------------
diff --git a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/KnownHostsProvider.java b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/KnownHostsProvider.java
index abaebef..85ce9aa 100644
--- a/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/KnownHostsProvider.java
+++ b/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/knownhost/KnownHostsProvider.java
@@ -34,9 +34,6 @@ public interface KnownHostsProvider
void storeKnownHosts( String contents )
throws IOException;
- void addKnownHost( KnownHostEntry knownHost )
- throws IOException;
-
void setHostKeyChecking( String hostKeyChecking );
String getHostKeyChecking();
http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/8863ded4/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
----------------------------------------------------------------------
diff --git a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
index 0b3ad5a..9ae7625 100644
--- a/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
+++ b/wagon-providers/wagon-ssh/src/main/java/org/apache/maven/wagon/providers/ssh/jsch/AbstractJschWagon.java
@@ -25,6 +25,8 @@ import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
+import java.io.PrintWriter;
+import java.io.StringWriter;
import java.util.List;
import java.util.Properties;
@@ -46,7 +48,6 @@ import org.apache.maven.wagon.providers.ssh.interactive.InteractiveUserInfo;
import org.apache.maven.wagon.providers.ssh.interactive.NullInteractiveUserInfo;
import org.apache.maven.wagon.providers.ssh.jsch.interactive.UserInfoUIKeyboardInteractiveProxy;
import org.apache.maven.wagon.providers.ssh.knownhost.KnownHostChangedException;
-import org.apache.maven.wagon.providers.ssh.knownhost.KnownHostEntry;
import org.apache.maven.wagon.providers.ssh.knownhost.KnownHostsProvider;
import org.apache.maven.wagon.providers.ssh.knownhost.UnknownHostException;
import org.apache.maven.wagon.proxy.ProxyInfo;
@@ -54,6 +55,10 @@ import org.apache.maven.wagon.resource.Resource;
import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.StringInputStream;
+import com.jcraft.jsch.agentproxy.AgentProxyException;
+import com.jcraft.jsch.agentproxy.Connector;
+import com.jcraft.jsch.agentproxy.ConnectorFactory;
+import com.jcraft.jsch.agentproxy.RemoteIdentityRepository;
import com.jcraft.jsch.ChannelExec;
import com.jcraft.jsch.HostKey;
import com.jcraft.jsch.HostKeyRepository;
@@ -66,10 +71,6 @@ import com.jcraft.jsch.ProxySOCKS5;
import com.jcraft.jsch.Session;
import com.jcraft.jsch.UIKeyboardInteractive;
import com.jcraft.jsch.UserInfo;
-import com.jcraft.jsch.agentproxy.AgentProxyException;
-import com.jcraft.jsch.agentproxy.Connector;
-import com.jcraft.jsch.agentproxy.ConnectorFactory;
-import com.jcraft.jsch.agentproxy.RemoteIdentityRepository;
/**
* AbstractJschWagon
@@ -250,9 +251,24 @@ public abstract class AbstractJschWagon
session.setUserInfo( ui );
+ StringWriter stringWriter = new StringWriter();
try
{
session.connect();
+
+ if ( getKnownHostsProvider() != null )
+ {
+ PrintWriter w = new PrintWriter( stringWriter );
+
+ HostKeyRepository hkr = sch.getHostKeyRepository();
+ HostKey[] keys = hkr.getHostKey();
+
+ for ( int i = 0; keys != null && i < keys.length; i++ )
+ {
+ HostKey key = keys[i];
+ w.println( key.getHost() + " " + key.getType() + " " + key.getKey() );
+ }
+ }
}
catch ( JSchException e )
{
@@ -270,27 +286,16 @@ public abstract class AbstractJschWagon
}
}
- if ( getKnownHostsProvider() != null )
+ try
{
- HostKeyRepository hkr = sch.getHostKeyRepository();
-
- HostKey[] hk = hkr.getHostKey( host, null );
- try
- {
- for ( HostKey hostKey : hk )
- {
- KnownHostEntry knownHostEntry = new KnownHostEntry( hostKey.getHost(), hostKey.getType(),
- hostKey.getKey() );
- getKnownHostsProvider().addKnownHost( knownHostEntry );
- }
- }
- catch ( IOException e )
- {
- closeConnection();
+ getKnownHostsProvider().storeKnownHosts( stringWriter.toString() );
+ }
+ catch ( IOException e )
+ {
+ closeConnection();
- throw new AuthenticationException(
- "Connection aborted - failed to write to known_hosts. Reason: " + e.getMessage(), e );
- }
+ throw new AuthenticationException(
+ "Connection aborted - failed to write to known_hosts. Reason: " + e.getMessage(), e );
}
}
http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/8863ded4/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonTest.java
----------------------------------------------------------------------
diff --git a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonTest.java b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonTest.java
index 72dc1c0..7ff8fee 100644
--- a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonTest.java
+++ b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonTest.java
@@ -21,7 +21,6 @@ package org.apache.maven.wagon.providers.ssh.jsch;
import org.apache.maven.wagon.Wagon;
import org.apache.maven.wagon.providers.ssh.AbstractEmbeddedScpWagonTest;
-import org.apache.maven.wagon.providers.ssh.knownhost.KnownHostEntry;
import org.apache.maven.wagon.providers.ssh.knownhost.KnownHostsProvider;
import java.io.IOException;
@@ -48,11 +47,6 @@ public class EmbeddedScpWagonTest
}
- public void addKnownHost( KnownHostEntry knownHost )
- throws IOException
- {
- }
-
public void setHostKeyChecking( String hostKeyChecking )
{
}
http://git-wip-us.apache.org/repos/asf/maven-wagon/blob/8863ded4/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonWithKeyTest.java
----------------------------------------------------------------------
diff --git a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonWithKeyTest.java b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonWithKeyTest.java
index 47d642d..c46609f 100644
--- a/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonWithKeyTest.java
+++ b/wagon-providers/wagon-ssh/src/test/java/org/apache/maven/wagon/providers/ssh/jsch/EmbeddedScpWagonWithKeyTest.java
@@ -22,7 +22,6 @@ package org.apache.maven.wagon.providers.ssh.jsch;
import org.apache.maven.wagon.Wagon;
import org.apache.maven.wagon.authentication.AuthenticationInfo;
import org.apache.maven.wagon.providers.ssh.AbstractEmbeddedScpWagonWithKeyTest;
-import org.apache.maven.wagon.providers.ssh.knownhost.KnownHostEntry;
import org.apache.maven.wagon.providers.ssh.knownhost.KnownHostsProvider;
import java.io.File;
@@ -51,11 +50,6 @@ public class EmbeddedScpWagonWithKeyTest
}
- public void addKnownHost( KnownHostEntry knownHost )
- throws IOException
- {
- }
-
public void setHostKeyChecking( String hostKeyChecking )
{
}