This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push: new f650ea788d Simplify code. Based on PR #651 by wonyongChoi05 f650ea788d is described below commit f650ea788df8067baa4267ac4df806ba1bff1853 Author: Mark Thomas <ma...@apache.org> AuthorDate: Tue Sep 5 11:22:49 2023 +0100 Simplify code. Based on PR #651 by wonyongChoi05 --- java/org/apache/coyote/ajp/AjpProcessor.java | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/java/org/apache/coyote/ajp/AjpProcessor.java b/java/org/apache/coyote/ajp/AjpProcessor.java index ccf2e78ba1..9b6063ef33 100644 --- a/java/org/apache/coyote/ajp/AjpProcessor.java +++ b/java/org/apache/coyote/ajp/AjpProcessor.java @@ -26,9 +26,11 @@ import java.security.NoSuchProviderException; import java.security.cert.CertificateException; import java.security.cert.CertificateFactory; import java.security.cert.X509Certificate; +import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; +import java.util.List; import java.util.Map; import java.util.Set; import java.util.regex.Pattern; @@ -1131,10 +1133,10 @@ public class AjpProcessor extends AbstractProcessor { @Override protected final void populateSslRequestAttributes() { if (!certificates.isNull()) { + List<X509Certificate> jsseCerts = new ArrayList<>(); ByteChunk certData = certificates.getByteChunk(); - X509Certificate jsseCerts[] = null; - ByteArrayInputStream bais = new ByteArrayInputStream(certData.getBytes(), certData.getStart(), - certData.getLength()); + ByteArrayInputStream bais = + new ByteArrayInputStream(certData.getBytes(), certData.getStart(), certData.getLength()); // Fill the elements. try { CertificateFactory cf; @@ -1146,21 +1148,13 @@ public class AjpProcessor extends AbstractProcessor { } while (bais.available() > 0) { X509Certificate cert = (X509Certificate) cf.generateCertificate(bais); - if (jsseCerts == null) { - jsseCerts = new X509Certificate[1]; - jsseCerts[0] = cert; - } else { - X509Certificate[] temp = new X509Certificate[jsseCerts.length + 1]; - System.arraycopy(jsseCerts, 0, temp, 0, jsseCerts.length); - temp[jsseCerts.length] = cert; - jsseCerts = temp; - } + jsseCerts.add(cert); } } catch (CertificateException | NoSuchProviderException e) { getLog().error(sm.getString("ajpprocessor.certs.fail"), e); return; } - request.setAttribute(SSLSupport.CERTIFICATE_KEY, jsseCerts); + request.setAttribute(SSLSupport.CERTIFICATE_KEY, jsseCerts.toArray(new X509Certificate[0])); } } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org