Fix pattern validation 34/114134/1
authorDan Timoney <dtimoney@att.com>
Wed, 21 Oct 2020 20:16:06 +0000 (16:16 -0400)
committerDan Timoney <dtimoney@att.com>
Wed, 21 Oct 2020 20:16:06 +0000 (16:16 -0400)
Pattern validation incorrectly disallows period as part of file
name

Change-Id: I3b3692093e16c41c312b326246a5dee83f674ee0
Issue-ID: CCSDK-2918
Signed-off-by: Dan Timoney <dtimoney@att.com>
utils/provider/src/main/java/org/onap/ccsdk/sli/core/utils/EnvVarFileResolver.java
utils/provider/src/main/java/org/onap/ccsdk/sli/core/utils/PathValidator.java

index 29d35d6..518fb30 100755 (executable)
@@ -62,7 +62,7 @@ public abstract class EnvVarFileResolver implements PropertiesFileResolver {
         final File fileFromEnvVariable;
         if (!Strings.isNullOrEmpty(propDirectoryFromEnvVariable)) {
             fileFromEnvVariable = Paths.get(propDirectoryFromEnvVariable).resolve(filename).toFile();
-            if(PathValidator.isValidFilePath(fileFromEnvVariable.getAbsolutePath()) && fileFromEnvVariable.exists()) {
+            if(PathValidator.isValidPropertiesPath(fileFromEnvVariable.getAbsolutePath()) && fileFromEnvVariable.exists()) {
                 return Optional.of(fileFromEnvVariable);
             }
         }
index 9735250..08f0fc0 100644 (file)
@@ -3,15 +3,15 @@ import java.util.regex.Pattern;
 
 public class PathValidator {
     public static boolean isValidXmlPath(String path) {
-        Pattern allowList = Pattern.compile("[-\\w/\\/]+\\.xml$");
+        Pattern allowList = Pattern.compile("[-.\\w/\\/]+\\.xml$");
         return (allowList.matcher(path).matches());
     }
     public static boolean isValidPropertiesPath(String path) {
-        Pattern allowList = Pattern.compile("[-\\w/\\/]+\\.properties$");
+        Pattern allowList = Pattern.compile("[-.\\w/\\/]+\\.properties$");
         return (allowList.matcher(path).matches());
     }
     public static boolean isValidFilePath(String path) {
-        Pattern allowList = Pattern.compile("[-\\w/\\/]+");
+        Pattern allowList = Pattern.compile("[-.\\w/\\/]+$");
         return (allowList.matcher(path).matches());
     }
 }