(tomcat) 01/04: Add a method to filter the parsed headers.

2024-04-26 Thread markt
This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 10.1.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git

commit a13938a854c8f8c86c07acc314b5bfed39a62290
Author: Mark Thomas 
AuthorDate: Fri Apr 26 15:46:32 2024 +0100

Add a method to filter the parsed headers.

This will (eventually) be used by the refactored trailer header parsing
---
 java/org/apache/tomcat/util/http/MimeHeaders.java | 16 
 1 file changed, 16 insertions(+)

diff --git a/java/org/apache/tomcat/util/http/MimeHeaders.java 
b/java/org/apache/tomcat/util/http/MimeHeaders.java
index 48ec279a09..5a67d76f7a 100644
--- a/java/org/apache/tomcat/util/http/MimeHeaders.java
+++ b/java/org/apache/tomcat/util/http/MimeHeaders.java
@@ -23,6 +23,7 @@ import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Set;
 
 import org.apache.tomcat.util.buf.MessageBytes;
 import org.apache.tomcat.util.buf.StringUtils;
@@ -167,6 +168,21 @@ public class MimeHeaders {
 }
 
 
+public void filter(Set allowedHeaders) {
+int j = -1;
+for (int i = 0; i < count; i++) {
+String name = headers[i].getName().toStringType();
+if (allowedHeaders.contains(name)) {
+++j;
+if (j != i) {
+headers[j] = headers[i];
+}
+}
+}
+count = ++j;
+}
+
+
 public void duplicate(MimeHeaders source) throws IOException {
 for (int i = 0; i < source.size(); i++) {
 MimeHeaderField mhf = createHeader();


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



(tomcat) 01/04: Add a method to filter the parsed headers.

2024-04-26 Thread markt
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

commit 43622a07488a297dbd8ad4d0c72d2ff4d8c24f90
Author: Mark Thomas 
AuthorDate: Fri Apr 26 15:46:32 2024 +0100

Add a method to filter the parsed headers.

This will (eventually) be used by the refactored trailer header parsing
---
 java/org/apache/tomcat/util/http/MimeHeaders.java | 16 
 1 file changed, 16 insertions(+)

diff --git a/java/org/apache/tomcat/util/http/MimeHeaders.java 
b/java/org/apache/tomcat/util/http/MimeHeaders.java
index cfc419199c..43b089451d 100644
--- a/java/org/apache/tomcat/util/http/MimeHeaders.java
+++ b/java/org/apache/tomcat/util/http/MimeHeaders.java
@@ -23,6 +23,7 @@ import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.Set;
 
 import org.apache.tomcat.util.buf.MessageBytes;
 import org.apache.tomcat.util.buf.StringUtils;
@@ -162,6 +163,21 @@ public class MimeHeaders {
 }
 
 
+public void filter(Set allowedHeaders) {
+int j = -1;
+for (int i = 0; i < count; i++) {
+String name = headers[i].getName().toStringType();
+if (allowedHeaders.contains(name)) {
+++j;
+if (j != i) {
+headers[j] = headers[i];
+}
+}
+}
+count = ++j;
+}
+
+
 public void duplicate(MimeHeaders source) throws IOException {
 for (int i = 0; i < source.size(); i++) {
 MimeHeaderField mhf = createHeader();


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org