You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2019/12/18 06:48:15 UTC
[karaf] branch karaf-4.2.x updated: Some misc bug fixes
This is an automated email from the ASF dual-hosted git repository.
jbonofre pushed a commit to branch karaf-4.2.x
in repository https://gitbox.apache.org/repos/asf/karaf.git
The following commit(s) were added to refs/heads/karaf-4.2.x by this push:
new ecd33a3 Some misc bug fixes
ecd33a3 is described below
commit ecd33a34e1a74fd7b2b743466eb1253dfb7dc6ea
Author: Colm O hEigeartaigh <co...@apache.org>
AuthorDate: Tue Dec 17 12:19:53 2019 +0000
Some misc bug fixes
(cherry picked from commit 80b766b46380e0a63700b00ac16fb701002e49cd)
---
client/src/main/java/org/apache/karaf/client/Main.java | 2 +-
.../org/apache/karaf/features/internal/service/Blacklist.java | 2 +-
.../org/apache/karaf/features/internal/service/Overrides.java | 2 +-
.../java/org/apache/karaf/http/core/internal/ProxyServlet.java | 2 +-
.../org/apache/karaf/jaas/boot/principal/ClientPrincipal.java | 8 ++++++++
.../java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java | 6 +++---
obr/src/main/java/org/apache/karaf/obr/command/util/FileUtil.java | 8 ++++----
.../src/main/java/org/apache/karaf/tooling/KarMojo.java | 3 +--
.../src/main/java/org/apache/karaf/tooling/RunMojo.java | 4 ++++
9 files changed, 24 insertions(+), 13 deletions(-)
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 65e0a0a..fdcd5d8 100644
--- a/client/src/main/java/org/apache/karaf/client/Main.java
+++ b/client/src/main/java/org/apache/karaf/client/Main.java
@@ -372,7 +372,7 @@ public class Main {
session = future.getSession();
} catch (RuntimeSshException ex) {
if (retries++ < config.getRetryAttempts()) {
- Thread.sleep(config.getRetryDelay() * 1000);
+ Thread.sleep(config.getRetryDelay() * 1000L);
System.out.println("retrying (attempt " + retries + ") ...");
} else {
throw ex;
diff --git a/features/core/src/main/java/org/apache/karaf/features/internal/service/Blacklist.java b/features/core/src/main/java/org/apache/karaf/features/internal/service/Blacklist.java
index fe3d86e..7c4171a 100644
--- a/features/core/src/main/java/org/apache/karaf/features/internal/service/Blacklist.java
+++ b/features/core/src/main/java/org/apache/karaf/features/internal/service/Blacklist.java
@@ -78,7 +78,7 @@ public class Blacklist {
.filter(line -> !line.isEmpty() && !line.startsWith("#"))
.forEach(blacklist::add);
} catch (FileNotFoundException e) {
- LOGGER.debug("Unable to load blacklist bundles list", e.toString());
+ LOGGER.debug("Unable to load blacklist bundles list {}", e.toString());
} catch (Exception e) {
LOGGER.debug("Unable to load blacklist bundles list", e);
}
diff --git a/features/core/src/main/java/org/apache/karaf/features/internal/service/Overrides.java b/features/core/src/main/java/org/apache/karaf/features/internal/service/Overrides.java
index d9b5d4a..014ba37 100644
--- a/features/core/src/main/java/org/apache/karaf/features/internal/service/Overrides.java
+++ b/features/core/src/main/java/org/apache/karaf/features/internal/service/Overrides.java
@@ -160,7 +160,7 @@ public final class Overrides {
}
}
} catch (FileNotFoundException e) {
- LOGGER.debug("Unable to load overrides bundles list", e.toString());
+ LOGGER.debug("Unable to load overrides bundles list {}", e.toString());
} catch (Exception e) {
LOGGER.debug("Unable to load overrides bundles list", e);
}
diff --git a/http/src/main/java/org/apache/karaf/http/core/internal/ProxyServlet.java b/http/src/main/java/org/apache/karaf/http/core/internal/ProxyServlet.java
index 318f3e6..f70e546 100644
--- a/http/src/main/java/org/apache/karaf/http/core/internal/ProxyServlet.java
+++ b/http/src/main/java/org/apache/karaf/http/core/internal/ProxyServlet.java
@@ -188,7 +188,7 @@ public class ProxyServlet extends HttpServlet {
// check if the proxy is a redirect
if (statusCode >= HttpServletResponse.SC_MULTIPLE_CHOICES && statusCode < HttpServletResponse.SC_NOT_MODIFIED) {
Header locationHeader = proxyResponse.getLastHeader(HttpHeaders.LOCATION);
- if (locationHeader != null) {
+ if (locationHeader == null) {
throw new ServletException("Received a redirect (" + statusCode + ") but without location (" + HttpHeaders.LOCATION + " header)");
}
// modify the redirect to go to this proxy servlet rather than the proxied host
diff --git a/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/ClientPrincipal.java b/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/ClientPrincipal.java
index e76aec1..e419246 100644
--- a/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/ClientPrincipal.java
+++ b/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/ClientPrincipal.java
@@ -42,6 +42,14 @@ public class ClientPrincipal implements Principal, Serializable {
}
@Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ ClientPrincipal that = (ClientPrincipal) o;
+ return Objects.equals(getName(), that.getName());
+ }
+
+ @Override
public int hashCode() {
return Objects.hash(getName());
}
diff --git a/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java b/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java
index 059b623..5536a46 100644
--- a/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java
+++ b/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java
@@ -2,9 +2,9 @@
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -65,7 +65,7 @@ public class GroupPrincipal implements Group, Serializable {
}
public boolean isMember(Principal member) {
- return members.contains(member.getName());
+ return members.containsKey(member.getName());
}
public Enumeration<? extends Principal> members() {
diff --git a/obr/src/main/java/org/apache/karaf/obr/command/util/FileUtil.java b/obr/src/main/java/org/apache/karaf/obr/command/util/FileUtil.java
index 7d49cec..7725d58 100644
--- a/obr/src/main/java/org/apache/karaf/obr/command/util/FileUtil.java
+++ b/obr/src/main/java/org/apache/karaf/obr/command/util/FileUtil.java
@@ -80,10 +80,10 @@ public class FileUtil
if (extract)
{
- JarInputStream jis = new JarInputStream(new FileInputStream(file));
- out.println("Extracting...");
- unjar(jis, dir);
- jis.close();
+ try (JarInputStream jis = new JarInputStream(new FileInputStream(file))) {
+ out.println("Extracting...");
+ unjar(jis, dir);
+ }
file.delete();
}
}
diff --git a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/KarMojo.java b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/KarMojo.java
index 2a77f2b..c4731ec 100644
--- a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/KarMojo.java
+++ b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/KarMojo.java
@@ -288,8 +288,7 @@ public class KarMojo extends MojoSupport {
metadata.setVersioning(versioning);
MetadataXpp3Writer metadataWriter = new MetadataXpp3Writer();
- try {
- Writer writer = new FileWriter(metadataTarget);
+ try (Writer writer = new FileWriter(metadataTarget)) {
metadataWriter.write(writer, metadata);
} catch (Exception e) {
getLog().warn("Could not create maven-metadata-local.xml", e);
diff --git a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/RunMojo.java b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/RunMojo.java
index ffa3582..ae439fe 100644
--- a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/RunMojo.java
+++ b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/RunMojo.java
@@ -257,6 +257,10 @@ public class RunMojo extends MojoSupport {
String name = entry.getName();
name = name.substring(name.indexOf("/") + 1);
File file = new File(targetDir, name);
+ if (!file.getCanonicalPath().startsWith(targetDir.getCanonicalPath())) {
+ throw new IOException("Archive cannot contain paths with .. characters");
+ }
+
if (entry.isDirectory()) {
file.mkdirs();
}