From 02e1e1dd48413b2b8e7eea6debd978e4a750674e Mon Sep 17 00:00:00 2001 From: labkey-tchad Date: Wed, 4 Jun 2025 11:41:41 -0700 Subject: [PATCH 1/2] CSP allow list API helper --- core/src/org/labkey/core/admin/AdminController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/org/labkey/core/admin/AdminController.java b/core/src/org/labkey/core/admin/AdminController.java index d7835a6c098..27c104ce1bb 100644 --- a/core/src/org/labkey/core/admin/AdminController.java +++ b/core/src/org/labkey/core/admin/AdminController.java @@ -11223,7 +11223,7 @@ public void setExistingValue(String existingValue) public String getExistingValues() { // The JSP JavaScript delimits with "\n". Not sure where these "\r"s are coming from, but we need to strip them. - return _existingValues.replace("\r", ""); + return StringUtils.trimToEmpty(_existingValues).replace("\r", ""); } @SuppressWarnings("unused") From 9621f158850b464874160602dcf5e57448e0df92 Mon Sep 17 00:00:00 2001 From: labkey-tchad Date: Wed, 4 Jun 2025 12:33:02 -0700 Subject: [PATCH 2/2] Clear CSP allow list via api --- core/src/org/labkey/core/admin/AdminController.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/core/src/org/labkey/core/admin/AdminController.java b/core/src/org/labkey/core/admin/AdminController.java index 27c104ce1bb..894e35e1083 100644 --- a/core/src/org/labkey/core/admin/AdminController.java +++ b/core/src/org/labkey/core/admin/AdminController.java @@ -11220,10 +11220,12 @@ public void setExistingValue(String existingValue) _existingValue = existingValue; } - public String getExistingValues() + public List getExistingValues() { - // The JSP JavaScript delimits with "\n". Not sure where these "\r"s are coming from, but we need to strip them. - return StringUtils.trimToEmpty(_existingValues).replace("\r", ""); + return Arrays.stream(StringUtils.trimToEmpty(_existingValues).split("\n")) + .map(String::trim) + .filter(s -> !s.isEmpty()) + .toList(); } @SuppressWarnings("unused") @@ -11250,7 +11252,7 @@ private AllowedHost getAllowedHost(String value, BindException errors) private List getExistingAllowedHosts(BindException errors) { - List existing = Arrays.stream(getExistingValues().split("\n")) + List existing = getExistingValues().stream() .map(value-> getAllowedHost(value, errors)) .toList();