Repository: incubator-slider Updated Branches: refs/heads/develop 481bd3209 -> a41785a0f
SLIDER-1153 Code issues - null pointer deferences found (Jian He via gourksaha) Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/a41785a0 Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/a41785a0 Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/a41785a0 Branch: refs/heads/develop Commit: a41785a0f8dbd8b502af383ba268158b9cba6fc8 Parents: 481bd32 Author: Gour Saha <gourks...@apache.org> Authored: Mon Jul 25 10:30:22 2016 -0700 Committer: Gour Saha <gourks...@apache.org> Committed: Mon Jul 25 10:30:22 2016 -0700 ---------------------------------------------------------------------- .../main/java/org/apache/slider/common/tools/SliderUtils.java | 6 ++++++ .../java/org/apache/slider/server/avro/RoleHistoryWriter.java | 6 ++++++ .../apache/slider/server/services/security/SecurityUtils.java | 3 +++ 3 files changed, 15 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/a41785a0/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java ---------------------------------------------------------------------- diff --git a/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java b/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java index ef62745..73e0879 100644 --- a/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java +++ b/slider-core/src/main/java/org/apache/slider/common/tools/SliderUtils.java @@ -1379,6 +1379,9 @@ public final class SliderUtils { File srcFolder = new File(srcPath); FilenameFilter jarFilter = createJarFilter(); File[] listOfJars = srcFolder.listFiles(jarFilter); + if (listOfJars == null || listOfJars.length == 0) { + return; + } for (File jarFile : listOfJars) { LocalResource res = sliderFileSystem.submitFile(jarFile, tempPath, libDir, jarFile.getName()); providerResources.put(libDir + "/" + jarFile.getName(), res); @@ -1981,6 +1984,9 @@ public final class SliderUtils { if (node.isDirectory()) { String[] subNode = node.list(filter); + if (subNode == null || subNode.length == 0) { + return; + } for (String filename : subNode) { generateFileList(fileList, new File(node, filename), rootFolder, relative, filter); http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/a41785a0/slider-core/src/main/java/org/apache/slider/server/avro/RoleHistoryWriter.java ---------------------------------------------------------------------- diff --git a/slider-core/src/main/java/org/apache/slider/server/avro/RoleHistoryWriter.java b/slider-core/src/main/java/org/apache/slider/server/avro/RoleHistoryWriter.java index b76f228..49d8fb2 100644 --- a/slider-core/src/main/java/org/apache/slider/server/avro/RoleHistoryWriter.java +++ b/slider-core/src/main/java/org/apache/slider/server/avro/RoleHistoryWriter.java @@ -220,6 +220,9 @@ public class RoleHistoryWriter { //read header : no entry -> EOF RoleHistoryRecord record = reader.read(null, decoder); + if (record == null) { + throw new IOException("Role History Header not found at start of file."); + } Object entry = record.getEntry(); if (!(entry instanceof RoleHistoryHeader)) { throw new IOException("Role History Header not found at start of file"); @@ -238,6 +241,9 @@ public class RoleHistoryWriter { try { while (footer == null) { record = reader.read(null, decoder); + if (record == null) { + throw new IOException("Null record after " + records + " records"); + } entry = record.getEntry(); if (entry instanceof RoleHistoryHeader) { http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/a41785a0/slider-core/src/main/java/org/apache/slider/server/services/security/SecurityUtils.java ---------------------------------------------------------------------- diff --git a/slider-core/src/main/java/org/apache/slider/server/services/security/SecurityUtils.java b/slider-core/src/main/java/org/apache/slider/server/services/security/SecurityUtils.java index 9beb2d8..0f1cd72 100644 --- a/slider-core/src/main/java/org/apache/slider/server/services/security/SecurityUtils.java +++ b/slider-core/src/main/java/org/apache/slider/server/services/security/SecurityUtils.java @@ -159,6 +159,9 @@ public class SecurityUtils { boolean persistPassword) { String keyStoreLocation = configMap.getOption( SliderXmlConfKeys.KEY_KEYSTORE_LOCATION, getDefaultKeystoreLocation()); + if (keyStoreLocation == null) { + LOG.error(SliderXmlConfKeys.KEY_KEYSTORE_LOCATION + " is not specified."); + } File secDirFile = new File(keyStoreLocation).getParentFile(); if (!secDirFile.exists()) { // create entire required directory structure