You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by gn...@apache.org on 2015/04/10 17:42:12 UTC
karaf git commit: [KARAF-3651] The karaf client can cause a NPE in
org.apache.sshd.common.util.Buffer.putString(Buffer.java:434)
Repository: karaf
Updated Branches:
refs/heads/karaf-2.x 26eaa5bf2 -> b35da8bd8
[KARAF-3651] The karaf client can cause a NPE in org.apache.sshd.common.util.Buffer.putString(Buffer.java:434)
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/b35da8bd
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/b35da8bd
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/b35da8bd
Branch: refs/heads/karaf-2.x
Commit: b35da8bd8674ec4ef15e5c0d335d4c712580c5b4
Parents: 26eaa5b
Author: Guillaume Nodet <gn...@gmail.com>
Authored: Fri Apr 10 17:36:11 2015 +0200
Committer: Guillaume Nodet <gn...@gmail.com>
Committed: Fri Apr 10 17:41:40 2015 +0200
----------------------------------------------------------------------
.../main/java/org/apache/karaf/client/Main.java | 33 +++++++++++---------
1 file changed, 18 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/b35da8bd/client/src/main/java/org/apache/karaf/client/Main.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/org/apache/karaf/client/Main.java b/client/src/main/java/org/apache/karaf/client/Main.java
index 6dc6b04..97d4412 100644
--- a/client/src/main/java/org/apache/karaf/client/Main.java
+++ b/client/src/main/java/org/apache/karaf/client/Main.java
@@ -221,32 +221,35 @@ public class Main {
SshAgent agent = null;
int exitStatus = 0;
try {
-
- final Console console = System.console();
client = SshClient.setUpDefaultClient();
setupAgent(user, client, keyFile);
- client.setUserInteraction(new UserInteraction() {
- public void welcome(String banner) {
- System.out.println(banner);
- }
+ final Console console = System.console();
+ if (console != null) {
+ client.setUserInteraction(new UserInteraction() {
+ public void welcome(String banner) {
+ System.out.println(banner);
+ }
- public String[] interactive(String destination, String name, String instruction, String[] prompt, boolean[] echo) {
- String[] answers = new String[prompt.length];
- try {
- for (int i = 0; i < prompt.length; i++) {
- if (console != null) {
+ public String[] interactive(String destination, String name, String instruction, String[] prompt, boolean[] echo) {
+ String[] answers = new String[prompt.length];
+ try {
+ for (int i = 0; i < prompt.length; i++) {
if (echo[i]) {
answers[i] = console.readLine(prompt[i] + " ");
} else {
answers[i] = new String(console.readPassword(prompt[i] + " "));
}
+ if (answers[i] == null) {
+ return null;
+ }
}
+ return answers;
+ } catch (IOError e) {
+ return null;
}
- } catch (IOError e) {
}
- return answers;
- }
- });
+ });
+ }
client.start();
if (console != null) {
console.printf("Logging in as %s\n", user);