summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/gitblit/utils/StringUtils.java
diff options
context:
space:
mode:
authorFlorian Zschocke <f.zschocke+git@gmail.com>2020-04-04 19:43:35 +0200
committerFlorian Zschocke <f.zschocke+git@gmail.com>2020-04-05 12:34:54 +0200
commit803d4171bf24e82612c526d65de77aa580c8a62f (patch)
tree6917807d508763d1d7f3bd824e901289af0d5ce6 /src/main/java/com/gitblit/utils/StringUtils.java
parente47647b00d566d64d311042981e6b1798f683e4a (diff)
downloadgitblit-803d4171bf24e82612c526d65de77aa580c8a62f.tar.gz
gitblit-803d4171bf24e82612c526d65de77aa580c8a62f.zip
Delete password from memory in AuthenticationManager
Zero out the password to remove it from memory after use. This is only a first step, implementing it for one method: `AuthenticationManager.authenticate(String, char[], String)`.
Diffstat (limited to 'src/main/java/com/gitblit/utils/StringUtils.java')
-rw-r--r--src/main/java/com/gitblit/utils/StringUtils.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/main/java/com/gitblit/utils/StringUtils.java b/src/main/java/com/gitblit/utils/StringUtils.java
index b192c80b..442acbbf 100644
--- a/src/main/java/com/gitblit/utils/StringUtils.java
+++ b/src/main/java/com/gitblit/utils/StringUtils.java
@@ -57,6 +57,21 @@ public class StringUtils {
}
/**
+ * Returns true if the character array represents an empty String.
+ * An empty character sequence is defined as a sequence that
+ * either has no characters at all, or no characters above
+ * '\u0020' (space).
+ *
+ * @param value
+ * @return true if value is null or represents an empty String
+ */
+ public static boolean isEmpty(char[] value) {
+ if (value == null || value.length == 0) return true;
+ for ( char c : value) if (c > '\u0020') return false;
+ return true;
+ }
+
+ /**
* Replaces carriage returns and line feeds with html line breaks.
*
* @param string