[Bug 60411] Rewrite's redirect implementation does not correspond to the documentation
https://bz.apache.org/bugzilla/show_bug.cgi?id=60411 --- Comment #7 from daftartogel --- Bermain togel ya harus http://178.128.89.241";>Bandar Togel Resmi . Jika tidak, kamu bisa kena tipu. Rupiahtoto dijmin bandar togel resmi. silakan daftar togel resmi dan dapatkan banyak cuan yang bisa buat jajan. Jangan tanggung, kamu daftar saja di sini http://199.188.206.85/";>http://199.188.206.85/ atau klik link ini ya https://david-lila.com/";>Bandar Togel Terpercaya -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat Native 1.2.30
On Tue, Jun 1, 2021 at 11:53 AM Mark Thomas wrote: > Resending with correct subject line... > > Version 1.2.30 includes the following changes compared to 1.2.28 > > - Fix an issue where some Windows systems in some configurations would >only listen on IPv6 addresses on dual stack systems even though >configured to listen on both IPv6 and IPv4 addresses. > > - Complete the fix for BZ 65181 > > - Correct constants used for Windows versions. Expand versions >supported. > > The proposed release artefacts can be found at [1], > and the build was done using tag [2]. > > The Apache Tomcat Native 1.2.30 release is > [X] Stable, go ahead and release > [ ] Broken because of ... > Rémy > > Thanks, > > Mark > > > [1] > > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/native/1.2.30 > [2] > > https://gitbox.apache.org/repos/asf?p=tomcat-native.git;a=commit;h=8b1baaa1af07c07a9f44f9adb31b7dbdabd6ff39 > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > >
[Bug 65340] Hpack decode NegativeArraySizeException: -1
https://bz.apache.org/bugzilla/show_bug.cgi?id=65340 --- Comment #11 from Remy Maucherat --- This is correct, the original code has the fix now. I'll do that. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch main updated: 65340: Fix NegativeArraySizeException exception in hpack decoder
This is an automated email from the ASF dual-hosted git repository. remm 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 5869763 65340: Fix NegativeArraySizeException exception in hpack decoder 5869763 is described below commit 586976338dddb70a0e40619726261f667548b563 Author: remm AuthorDate: Thu Jun 3 10:53:21 2021 +0200 65340: Fix NegativeArraySizeException exception in hpack decoder Submitted by Thomas. --- java/org/apache/coyote/http2/HpackDecoder.java | 2 +- webapps/docs/changelog.xml | 7 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/java/org/apache/coyote/http2/HpackDecoder.java b/java/org/apache/coyote/http2/HpackDecoder.java index 517dc0b..02802ad 100644 --- a/java/org/apache/coyote/http2/HpackDecoder.java +++ b/java/org/apache/coyote/http2/HpackDecoder.java @@ -213,7 +213,7 @@ public class HpackDecoder { byte data = buffer.get(buffer.position()); int length = Hpack.decodeInteger(buffer, 7); -if (buffer.remaining() < length) { +if (buffer.remaining() < length || length == -1) { return null; } boolean huffman = (data & 0b1000) != 0; diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index adbabfb..f56b524 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -176,6 +176,13 @@ Simplify AprEndpoint socket bind for all platforms. (michaelo) + +65340: Add missing check for a negative return value for +Hpack.decodeInteger in the HpackDecoder, +which could cause a NegativeArraySizeException exception. +Submitted by Thomas, and verified the fix is present in the donated +hpack code in a further update. (remm) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 10.0.x updated: 65340: Fix NegativeArraySizeException exception in hpack decoder
This is an automated email from the ASF dual-hosted git repository. remm pushed a commit to branch 10.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/10.0.x by this push: new c074807 65340: Fix NegativeArraySizeException exception in hpack decoder c074807 is described below commit c07480764579cfeb334fdf354ae0fd8320264e20 Author: remm AuthorDate: Thu Jun 3 10:53:21 2021 +0200 65340: Fix NegativeArraySizeException exception in hpack decoder Submitted by Thomas. --- java/org/apache/coyote/http2/HpackDecoder.java | 2 +- webapps/docs/changelog.xml | 7 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/java/org/apache/coyote/http2/HpackDecoder.java b/java/org/apache/coyote/http2/HpackDecoder.java index 517dc0b..02802ad 100644 --- a/java/org/apache/coyote/http2/HpackDecoder.java +++ b/java/org/apache/coyote/http2/HpackDecoder.java @@ -213,7 +213,7 @@ public class HpackDecoder { byte data = buffer.get(buffer.position()); int length = Hpack.decodeInteger(buffer, 7); -if (buffer.remaining() < length) { +if (buffer.remaining() < length || length == -1) { return null; } boolean huffman = (data & 0b1000) != 0; diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index 41b1899..e25ae94 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -155,6 +155,13 @@ Simplify AprEndpoint socket bind for all platforms. (michaelo) + +65340: Add missing check for a negative return value for +Hpack.decodeInteger in the HpackDecoder, +which could cause a NegativeArraySizeException exception. +Submitted by Thomas, and verified the fix is present in the donated +hpack code in a further update. (remm) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 9.0.x updated: 65340: Fix NegativeArraySizeException exception in hpack decoder
This is an automated email from the ASF dual-hosted git repository. remm pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/9.0.x by this push: new 56c256a 65340: Fix NegativeArraySizeException exception in hpack decoder 56c256a is described below commit 56c256a5969489ef6731f0f1c1726f8c2184c44b Author: remm AuthorDate: Thu Jun 3 10:53:21 2021 +0200 65340: Fix NegativeArraySizeException exception in hpack decoder Submitted by Thomas. --- java/org/apache/coyote/http2/HpackDecoder.java | 2 +- webapps/docs/changelog.xml | 7 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/java/org/apache/coyote/http2/HpackDecoder.java b/java/org/apache/coyote/http2/HpackDecoder.java index 517dc0b..02802ad 100644 --- a/java/org/apache/coyote/http2/HpackDecoder.java +++ b/java/org/apache/coyote/http2/HpackDecoder.java @@ -213,7 +213,7 @@ public class HpackDecoder { byte data = buffer.get(buffer.position()); int length = Hpack.decodeInteger(buffer, 7); -if (buffer.remaining() < length) { +if (buffer.remaining() < length || length == -1) { return null; } boolean huffman = (data & 0b1000) != 0; diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index f26eaf9..b2074d0 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -181,6 +181,13 @@ Optimize NIO selector handling for Java 11. (remm) + +65340: Add missing check for a negative return value for +Hpack.decodeInteger in the HpackDecoder, +which could cause a NegativeArraySizeException exception. +Submitted by Thomas, and verified the fix is present in the donated +hpack code in a further update. (remm) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 8.5.x updated: 65340: Fix NegativeArraySizeException exception in hpack decoder
This is an automated email from the ASF dual-hosted git repository. remm pushed a commit to branch 8.5.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/8.5.x by this push: new b90ed2f 65340: Fix NegativeArraySizeException exception in hpack decoder b90ed2f is described below commit b90ed2f58ad781cb1b9aa58d91243ded00a0bb83 Author: remm AuthorDate: Thu Jun 3 10:53:21 2021 +0200 65340: Fix NegativeArraySizeException exception in hpack decoder Submitted by Thomas. --- java/org/apache/coyote/http2/HpackDecoder.java | 2 +- webapps/docs/changelog.xml | 7 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/java/org/apache/coyote/http2/HpackDecoder.java b/java/org/apache/coyote/http2/HpackDecoder.java index 517dc0b..02802ad 100644 --- a/java/org/apache/coyote/http2/HpackDecoder.java +++ b/java/org/apache/coyote/http2/HpackDecoder.java @@ -213,7 +213,7 @@ public class HpackDecoder { byte data = buffer.get(buffer.position()); int length = Hpack.decodeInteger(buffer, 7); -if (buffer.remaining() < length) { +if (buffer.remaining() < length || length == -1) { return null; } boolean huffman = (data & 0b1000) != 0; diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index 9cd71f5..8be9dfb 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -169,6 +169,13 @@ Simplify AprEndpoint socket bind for all platforms. (michaelo) + +65340: Add missing check for a negative return value for +Hpack.decodeInteger in the HpackDecoder, +which could cause a NegativeArraySizeException exception. +Submitted by Thomas, and verified the fix is present in the donated +hpack code in a further update. (remm) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65340] Hpack decode NegativeArraySizeException: -1
https://bz.apache.org/bugzilla/show_bug.cgi?id=65340 Remy Maucherat changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #12 from Remy Maucherat --- The fix will be in 10.0.7, 9.0.47 and 8.5.67. Thanks. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65339] UserDatabaseRealm does not rely on cached roles only
https://bz.apache.org/bugzilla/show_bug.cgi?id=65339 Remy Maucherat changed: What|Removed |Added Status|NEW |RESOLVED OS||All Resolution|--- |WONTFIX --- Comment #1 from Remy Maucherat --- It was agreed upon that this was the main point of the user database. Ultimately, if the feature is dropped, we might as well drop that realm since the memory one is the only implementation [it was never intended to be the case, Craig wanted more but it didn't happen]. The main problem with dropping it is it's in the default configuration, so it would cause a huge mess. Note: If clustering or serialization comes into play, then the principal will get disconnected from the database and it will become a regular static GenericPrincipal. In an enhancement, I could add creative code to automatically reconnect (the db info would need to be added to the principal which is easy to do). -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65342] IllegalArgumentException "endpointClass cannot be null" after upgrade to 9.0.46
https://bz.apache.org/bugzilla/show_bug.cgi?id=65342 Mark Thomas changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #3 from Mark Thomas --- Fixed in: - 10.0.x for 10.0.7 onwards - 9.0.x for 9.0.47 onwards - 8.5.x for 8.5.67 onwards -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65340] Hpack decode NegativeArraySizeException: -1
https://bz.apache.org/bugzilla/show_bug.cgi?id=65340 --- Comment #13 from Joakim Erdfelt --- Does this HPACK fix also address the HPACK index issue reported (at the Jetty issue tracker) against Tomcat? https://github.com/eclipse/jetty.project/issues/6341 -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65350] New: The index ID of the request header that Jetty sent to Tomcat was not found in the index table on the Tomcat side
https://bz.apache.org/bugzilla/show_bug.cgi?id=65350 Bug ID: 65350 Summary: The index ID of the request header that Jetty sent to Tomcat was not found in the index table on the Tomcat side Product: Tomcat 9 Version: 9.0.45 Hardware: PC OS: Linux Status: NEW Severity: critical Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: qingdaoh...@163.com Target Milestone: - Jetty version 9.4.41.v20210516 OS type/version Centos 7 I use jetty http client to call tomcat server in h2c protocol. I encountered the following exception after running about 8 hours. It seems the header tables are not sync between jetty and tomcat. java.lang.NullPointerException at org.apache.coyote.http2.HpackDecoder.handleIndex(HpackDecoder.java:267) at org.apache.coyote.http2.HpackDecoder.decode(HpackDecoder.java:109) at org.apache.coyote.http2.Http2Parser.readHeaderPayload(Http2Parser.java:486) at org.apache.coyote.http2.Http2Parser.readHeadersFrame(Http2Parser.java:270) at org.apache.coyote.http2.Http2AsyncParser$FrameCompletionHandler.completed(Http2AsyncParser.java:251) at org.apache.coyote.http2.Http2AsyncParser$FrameCompletionHandler.completed(Http2AsyncParser.java:164) at org.apache.tomcat.util.net.SocketWrapperBase$VectoredIOCompletionHandler.completed(SocketWrapperBase.java:1089) at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper$NioOperationState.run(NioEndpoint.java:1621) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:829) -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65351] New: Regression in UserDatabaseRealm: Groups are no longer considered in hasRole
https://bz.apache.org/bugzilla/show_bug.cgi?id=65351 Bug ID: 65351 Summary: Regression in UserDatabaseRealm: Groups are no longer considered in hasRole Product: Tomcat 10 Version: 10.0.6 Hardware: All OS: All Status: NEW Severity: regression Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: c.kl...@datagis.com Target Milestone: -- There's a regression bug in the reworked UserDatabaseRealm. The method User.isInRole(Role) called in line 276 (that's in the UserDatabasePrincipal class) does NOT consider roles inherited from Groups, the user is a member of. Although the method's documentation states this explicitly, its name actually does not really suggest this behavior :( A new method User.hasEffectiveRole(Role) (or isInEffectiveRole to stay consistent with the naming scheme) would be one of the possible options: public boolean isInEffectiveRole(Role role) { synchronized (groups) { for (Group group : groups) { if (group.isInRole(role)) { return true; } } } return false; } Otherwise, group -> role expansion must be performed in the hasRole method in class UserDatabasePrincipal. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch main updated: Fix missing code from the original hasRole
This is an automated email from the ASF dual-hosted git repository. remm 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 74ce2d0 Fix missing code from the original hasRole 74ce2d0 is described below commit 74ce2d085bb2c08778b9d668c3e38cdcb647f65f Author: remm AuthorDate: Thu Jun 3 16:49:52 2021 +0200 Fix missing code from the original hasRole Otherwise groups were not considered. No idea why I removed it. Submitted by Carsten Klein. --- java/org/apache/catalina/realm/UserDatabaseRealm.java | 12 +++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/java/org/apache/catalina/realm/UserDatabaseRealm.java b/java/org/apache/catalina/realm/UserDatabaseRealm.java index 714fd50..bb27099 100644 --- a/java/org/apache/catalina/realm/UserDatabaseRealm.java +++ b/java/org/apache/catalina/realm/UserDatabaseRealm.java @@ -273,7 +273,17 @@ public class UserDatabaseRealm extends RealmBase { if (dbrole == null) { return false; } -return user.isInRole(dbrole); +if (user.isInRole(dbrole)) { +return true; +} +Iterator groups = user.getGroups(); +while (groups.hasNext()) { +Group group = groups.next(); +if (group.isInRole(dbrole)) { +return true; +} +} +return false; } private Object writeReplace() { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 10.0.x updated: Fix missing code from the original hasRole
This is an automated email from the ASF dual-hosted git repository. remm pushed a commit to branch 10.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/10.0.x by this push: new 08e6194 Fix missing code from the original hasRole 08e6194 is described below commit 08e619471ec708130d81ac112f1a2ed338891664 Author: remm AuthorDate: Thu Jun 3 16:49:52 2021 +0200 Fix missing code from the original hasRole Otherwise groups were not considered. No idea why I removed it. Submitted by Carsten Klein. --- java/org/apache/catalina/realm/UserDatabaseRealm.java | 12 +++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/java/org/apache/catalina/realm/UserDatabaseRealm.java b/java/org/apache/catalina/realm/UserDatabaseRealm.java index 714fd50..bb27099 100644 --- a/java/org/apache/catalina/realm/UserDatabaseRealm.java +++ b/java/org/apache/catalina/realm/UserDatabaseRealm.java @@ -273,7 +273,17 @@ public class UserDatabaseRealm extends RealmBase { if (dbrole == null) { return false; } -return user.isInRole(dbrole); +if (user.isInRole(dbrole)) { +return true; +} +Iterator groups = user.getGroups(); +while (groups.hasNext()) { +Group group = groups.next(); +if (group.isInRole(dbrole)) { +return true; +} +} +return false; } private Object writeReplace() { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 9.0.x updated: Fix missing code from the original hasRole
This is an automated email from the ASF dual-hosted git repository. remm pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/9.0.x by this push: new 2db0abd Fix missing code from the original hasRole 2db0abd is described below commit 2db0abd4af49cb3bb01cfe20f90049f760252f9f Author: remm AuthorDate: Thu Jun 3 16:49:52 2021 +0200 Fix missing code from the original hasRole Otherwise groups were not considered. No idea why I removed it. Submitted by Carsten Klein. --- java/org/apache/catalina/realm/UserDatabaseRealm.java | 12 +++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/java/org/apache/catalina/realm/UserDatabaseRealm.java b/java/org/apache/catalina/realm/UserDatabaseRealm.java index 181e2ec..f4a86ef 100644 --- a/java/org/apache/catalina/realm/UserDatabaseRealm.java +++ b/java/org/apache/catalina/realm/UserDatabaseRealm.java @@ -273,7 +273,17 @@ public class UserDatabaseRealm extends RealmBase { if (dbrole == null) { return false; } -return user.isInRole(dbrole); +if (user.isInRole(dbrole)) { +return true; +} +Iterator groups = user.getGroups(); +while (groups.hasNext()) { +Group group = groups.next(); +if (group.isInRole(dbrole)) { +return true; +} +} +return false; } private Object writeReplace() { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 8.5.x updated: Fix missing code from the original hasRole
This is an automated email from the ASF dual-hosted git repository. remm pushed a commit to branch 8.5.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/8.5.x by this push: new 482bea4 Fix missing code from the original hasRole 482bea4 is described below commit 482bea4dcfbd52865ff36c04a4896872bbe32bfa Author: remm AuthorDate: Thu Jun 3 16:49:52 2021 +0200 Fix missing code from the original hasRole Otherwise groups were not considered. No idea why I removed it. Submitted by Carsten Klein. --- java/org/apache/catalina/realm/UserDatabaseRealm.java | 12 +++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/java/org/apache/catalina/realm/UserDatabaseRealm.java b/java/org/apache/catalina/realm/UserDatabaseRealm.java index 76757da..eb63a5c 100644 --- a/java/org/apache/catalina/realm/UserDatabaseRealm.java +++ b/java/org/apache/catalina/realm/UserDatabaseRealm.java @@ -289,7 +289,17 @@ public class UserDatabaseRealm extends RealmBase { if (dbrole == null) { return false; } -return user.isInRole(dbrole); +if (user.isInRole(dbrole)) { +return true; +} +Iterator groups = user.getGroups(); +while (groups.hasNext()) { +Group group = groups.next(); +if (group.isInRole(dbrole)) { +return true; +} +} +return false; } private Object writeReplace() { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65351] Regression in UserDatabaseRealm: Groups are no longer considered in hasRole
https://bz.apache.org/bugzilla/show_bug.cgi?id=65351 --- Comment #1 from cklein05 --- Provided method was not complete, in order to test for all/effective roles, of course (my bad). Testing explicitly assigned roles is still required so, this should be the correct version: public boolean isInEffectiveRole(Role role) { if (isInRole(role)) { return true; } synchronized (groups) { for (Group group : groups) { if (group.isInRole(role)) { return true; } } } return false; } -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65351] Regression in UserDatabaseRealm: Groups are no longer considered in hasRole
https://bz.apache.org/bugzilla/show_bug.cgi?id=65351 Remy Maucherat changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #2 from Remy Maucherat --- (In reply to cklein05 from comment #1) > Provided method was not complete, in order to test for all/effective roles, > of course (my bad). Testing explicitly assigned roles is still required so, > this should be the correct version: Makes sense. I simply took the original hasRole override code I removed for no reason. Seems like a case of badcutandpaste-itis. We still need to decide on what to do with the database realm, since without an expansion to more database types I cannot see what it can be used for. > public boolean isInEffectiveRole(Role role) { > if (isInRole(role)) { > return true; > } > synchronized (groups) { > for (Group group : groups) { > if (group.isInRole(role)) { > return true; > } > } > } > return false; > } -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65351] Regression in UserDatabaseRealm: Groups are no longer considered in hasRole
https://bz.apache.org/bugzilla/show_bug.cgi?id=65351 --- Comment #3 from cklein05 --- That way it should work again :) Nor sure whether I can help much with that decision. The UserDatabaseRealm is the default one and MemoryRealm's Realm states it's not intended for production use. Changing this will be a lot of work and could only be done for the HEAD version (otherwise we'll use the live update feature for existing setups - same as with my initial PR). Since I'm interested in porting back my enhancement (which now honors live updates of the UserDatabase with the UserDatabaseRealm as well), I favor a solution that works for all versions of Tomcat. Also, for my mind, MemoryRealm has some more drawbacks so, I don't recommend making it the new standard Realm: - Unfortunate realm name: People know what a UserDatabase is. Although they might as well know what Memory is, due to the realm's name it's not so obvious, that this Realm is feed by the tomcat-users.xml file. - Location of the XML file must/could explicitly be specified by the (real) path through the 'pathname' configuration attribute. It's no JNDI resource. If you really want to remove UserDatabaseRealm, could this probably be done AFTER my enhancement is in place (hopefully) and ported back to the other versions? -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch main updated: Clean-up. Fix indents.
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 f495c46 Clean-up. Fix indents. f495c46 is described below commit f495c461ecc881a4b21a40c1b1994ebdfdc7af31 Author: Mark Thomas AuthorDate: Thu Jun 3 16:52:16 2021 +0100 Clean-up. Fix indents. --- java/jakarta/servlet/http/HttpServlet.java | 26 +- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/java/jakarta/servlet/http/HttpServlet.java b/java/jakarta/servlet/http/HttpServlet.java index 15ad35c..9c001b6 100644 --- a/java/jakarta/servlet/http/HttpServlet.java +++ b/java/jakarta/servlet/http/HttpServlet.java @@ -87,10 +87,8 @@ public abstract class HttpServlet extends GenericServlet { private static final String HEADER_IFMODSINCE = "If-Modified-Since"; private static final String HEADER_LASTMOD = "Last-Modified"; -private static final String LSTRING_FILE = -"jakarta.servlet.http.LocalStrings"; -private static final ResourceBundle lStrings = -ResourceBundle.getBundle(LSTRING_FILE); +private static final String LSTRING_FILE = "jakarta.servlet.http.LocalStrings"; +private static final ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); private final Object cachedAllowHeaderValueLock = new Object(); private volatile String cachedAllowHeaderValue = null; @@ -509,13 +507,9 @@ public abstract class HttpServlet extends GenericServlet { Method[] thisMethods = c.getDeclaredMethods(); if ((parentMethods != null) && (parentMethods.length > 0)) { -Method[] allMethods = -new Method[parentMethods.length + thisMethods.length]; -System.arraycopy(parentMethods, 0, allMethods, 0, - parentMethods.length); -System.arraycopy(thisMethods, 0, allMethods, parentMethods.length, - thisMethods.length); - +Method[] allMethods = new Method[parentMethods.length + thisMethods.length]; +System.arraycopy(parentMethods, 0, allMethods, 0, parentMethods.length); +System.arraycopy(thisMethods, 0, allMethods, parentMethods.length, thisMethods.length); thisMethods = allMethods; } @@ -602,8 +596,8 @@ public abstract class HttpServlet extends GenericServlet { int responseLength; String CRLF = "\r\n"; -StringBuilder buffer = new StringBuilder("TRACE ").append(req.getRequestURI()) -.append(" ").append(req.getProtocol()); +StringBuilder buffer = +new StringBuilder("TRACE ").append(req.getRequestURI()).append(" ").append(req.getProtocol()); Enumeration reqHeaderEnum = req.getHeaderNames(); @@ -908,10 +902,8 @@ class NoBodyResponse extends HttpServletResponseWrapper { // file private class NoBodyOutputStream extends ServletOutputStream { -private static final String LSTRING_FILE = -"jakarta.servlet.http.LocalStrings"; -private static final ResourceBundle lStrings = -ResourceBundle.getBundle(LSTRING_FILE); +private static final String LSTRING_FILE = "jakarta.servlet.http.LocalStrings"; +private static final ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); private final HttpServletResponse response; private boolean flushed = false; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 10.0.x updated: Clean-up. Fix indents.
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 10.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/10.0.x by this push: new 718b0ea Clean-up. Fix indents. 718b0ea is described below commit 718b0eaecd17e2bafd24fcca03180b5cd126c20b Author: Mark Thomas AuthorDate: Thu Jun 3 16:52:16 2021 +0100 Clean-up. Fix indents. --- java/jakarta/servlet/http/HttpServlet.java | 26 +- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/java/jakarta/servlet/http/HttpServlet.java b/java/jakarta/servlet/http/HttpServlet.java index 15ad35c..9c001b6 100644 --- a/java/jakarta/servlet/http/HttpServlet.java +++ b/java/jakarta/servlet/http/HttpServlet.java @@ -87,10 +87,8 @@ public abstract class HttpServlet extends GenericServlet { private static final String HEADER_IFMODSINCE = "If-Modified-Since"; private static final String HEADER_LASTMOD = "Last-Modified"; -private static final String LSTRING_FILE = -"jakarta.servlet.http.LocalStrings"; -private static final ResourceBundle lStrings = -ResourceBundle.getBundle(LSTRING_FILE); +private static final String LSTRING_FILE = "jakarta.servlet.http.LocalStrings"; +private static final ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); private final Object cachedAllowHeaderValueLock = new Object(); private volatile String cachedAllowHeaderValue = null; @@ -509,13 +507,9 @@ public abstract class HttpServlet extends GenericServlet { Method[] thisMethods = c.getDeclaredMethods(); if ((parentMethods != null) && (parentMethods.length > 0)) { -Method[] allMethods = -new Method[parentMethods.length + thisMethods.length]; -System.arraycopy(parentMethods, 0, allMethods, 0, - parentMethods.length); -System.arraycopy(thisMethods, 0, allMethods, parentMethods.length, - thisMethods.length); - +Method[] allMethods = new Method[parentMethods.length + thisMethods.length]; +System.arraycopy(parentMethods, 0, allMethods, 0, parentMethods.length); +System.arraycopy(thisMethods, 0, allMethods, parentMethods.length, thisMethods.length); thisMethods = allMethods; } @@ -602,8 +596,8 @@ public abstract class HttpServlet extends GenericServlet { int responseLength; String CRLF = "\r\n"; -StringBuilder buffer = new StringBuilder("TRACE ").append(req.getRequestURI()) -.append(" ").append(req.getProtocol()); +StringBuilder buffer = +new StringBuilder("TRACE ").append(req.getRequestURI()).append(" ").append(req.getProtocol()); Enumeration reqHeaderEnum = req.getHeaderNames(); @@ -908,10 +902,8 @@ class NoBodyResponse extends HttpServletResponseWrapper { // file private class NoBodyOutputStream extends ServletOutputStream { -private static final String LSTRING_FILE = -"jakarta.servlet.http.LocalStrings"; -private static final ResourceBundle lStrings = -ResourceBundle.getBundle(LSTRING_FILE); +private static final String LSTRING_FILE = "jakarta.servlet.http.LocalStrings"; +private static final ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); private final HttpServletResponse response; private boolean flushed = false; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 9.0.x updated: Clean-up. Fix indents.
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/9.0.x by this push: new f57e8dd Clean-up. Fix indents. f57e8dd is described below commit f57e8dd63c7c32575f13228be6c221217889d15f Author: Mark Thomas AuthorDate: Thu Jun 3 16:52:16 2021 +0100 Clean-up. Fix indents. --- java/javax/servlet/http/HttpServlet.java | 26 +- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/java/javax/servlet/http/HttpServlet.java b/java/javax/servlet/http/HttpServlet.java index 49d77e8..1b252a2 100644 --- a/java/javax/servlet/http/HttpServlet.java +++ b/java/javax/servlet/http/HttpServlet.java @@ -87,10 +87,8 @@ public abstract class HttpServlet extends GenericServlet { private static final String HEADER_IFMODSINCE = "If-Modified-Since"; private static final String HEADER_LASTMOD = "Last-Modified"; -private static final String LSTRING_FILE = -"javax.servlet.http.LocalStrings"; -private static final ResourceBundle lStrings = -ResourceBundle.getBundle(LSTRING_FILE); +private static final String LSTRING_FILE = "javax.servlet.http.LocalStrings"; +private static final ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); /** @@ -423,13 +421,9 @@ public abstract class HttpServlet extends GenericServlet { Method[] thisMethods = c.getDeclaredMethods(); if ((parentMethods != null) && (parentMethods.length > 0)) { -Method[] allMethods = -new Method[parentMethods.length + thisMethods.length]; -System.arraycopy(parentMethods, 0, allMethods, 0, - parentMethods.length); -System.arraycopy(thisMethods, 0, allMethods, parentMethods.length, - thisMethods.length); - +Method[] allMethods = new Method[parentMethods.length + thisMethods.length]; +System.arraycopy(parentMethods, 0, allMethods, 0, parentMethods.length); +System.arraycopy(thisMethods, 0, allMethods, parentMethods.length, thisMethods.length); thisMethods = allMethods; } @@ -593,8 +587,8 @@ public abstract class HttpServlet extends GenericServlet { int responseLength; String CRLF = "\r\n"; -StringBuilder buffer = new StringBuilder("TRACE ").append(req.getRequestURI()) -.append(" ").append(req.getProtocol()); +StringBuilder buffer = +new StringBuilder("TRACE ").append(req.getRequestURI()).append(" ").append(req.getProtocol()); Enumeration reqHeaderEnum = req.getHeaderNames(); @@ -864,10 +858,8 @@ class NoBodyResponse extends HttpServletResponseWrapper { // file private class NoBodyOutputStream extends ServletOutputStream { -private static final String LSTRING_FILE = -"javax.servlet.http.LocalStrings"; -private static final ResourceBundle lStrings = -ResourceBundle.getBundle(LSTRING_FILE); +private static final String LSTRING_FILE = "javax.servlet.http.LocalStrings"; +private static final ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); private final HttpServletResponse response; private boolean flushed = false; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 8.5.x updated: Clean-up. Fix indents.
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 8.5.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/8.5.x by this push: new 0704475 Clean-up. Fix indents. 0704475 is described below commit 0704475028478757eb31578e2b9fe24dbd0da8da Author: Mark Thomas AuthorDate: Thu Jun 3 16:52:16 2021 +0100 Clean-up. Fix indents. --- java/javax/servlet/http/HttpServlet.java | 26 +- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/java/javax/servlet/http/HttpServlet.java b/java/javax/servlet/http/HttpServlet.java index 49d77e8..1b252a2 100644 --- a/java/javax/servlet/http/HttpServlet.java +++ b/java/javax/servlet/http/HttpServlet.java @@ -87,10 +87,8 @@ public abstract class HttpServlet extends GenericServlet { private static final String HEADER_IFMODSINCE = "If-Modified-Since"; private static final String HEADER_LASTMOD = "Last-Modified"; -private static final String LSTRING_FILE = -"javax.servlet.http.LocalStrings"; -private static final ResourceBundle lStrings = -ResourceBundle.getBundle(LSTRING_FILE); +private static final String LSTRING_FILE = "javax.servlet.http.LocalStrings"; +private static final ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); /** @@ -423,13 +421,9 @@ public abstract class HttpServlet extends GenericServlet { Method[] thisMethods = c.getDeclaredMethods(); if ((parentMethods != null) && (parentMethods.length > 0)) { -Method[] allMethods = -new Method[parentMethods.length + thisMethods.length]; -System.arraycopy(parentMethods, 0, allMethods, 0, - parentMethods.length); -System.arraycopy(thisMethods, 0, allMethods, parentMethods.length, - thisMethods.length); - +Method[] allMethods = new Method[parentMethods.length + thisMethods.length]; +System.arraycopy(parentMethods, 0, allMethods, 0, parentMethods.length); +System.arraycopy(thisMethods, 0, allMethods, parentMethods.length, thisMethods.length); thisMethods = allMethods; } @@ -593,8 +587,8 @@ public abstract class HttpServlet extends GenericServlet { int responseLength; String CRLF = "\r\n"; -StringBuilder buffer = new StringBuilder("TRACE ").append(req.getRequestURI()) -.append(" ").append(req.getProtocol()); +StringBuilder buffer = +new StringBuilder("TRACE ").append(req.getRequestURI()).append(" ").append(req.getProtocol()); Enumeration reqHeaderEnum = req.getHeaderNames(); @@ -864,10 +858,8 @@ class NoBodyResponse extends HttpServletResponseWrapper { // file private class NoBodyOutputStream extends ServletOutputStream { -private static final String LSTRING_FILE = -"javax.servlet.http.LocalStrings"; -private static final ResourceBundle lStrings = -ResourceBundle.getBundle(LSTRING_FILE); +private static final String LSTRING_FILE = "javax.servlet.http.LocalStrings"; +private static final ResourceBundle lStrings = ResourceBundle.getBundle(LSTRING_FILE); private final HttpServletResponse response; private boolean flushed = false; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 65351] Regression in UserDatabaseRealm: Groups are no longer considered in hasRole
https://bz.apache.org/bugzilla/show_bug.cgi?id=65351 --- Comment #4 from Remy Maucherat --- (In reply to cklein05 from comment #3) > If you really want to remove UserDatabaseRealm, could this probably be done > AFTER my enhancement is in place (hopefully) and ported back to the other > versions? You have more than enough time to do anything you like ! Even if it gets removed (maybe ...) it would still take a while. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[GitHub] [tomcat] rohini2021 opened a new pull request #421: Change log level from error to debug
rohini2021 opened a new pull request #421: URL: https://github.com/apache/tomcat/pull/421 Currently, in reconnectIfExpired(), reconnection failure is producing an error level log. This causes a lot of false positive in our alerting systems. This should be changed to debug level log. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat Native 1.2.30
On 01/06/2021 10:53, Mark Thomas wrote: The Apache Tomcat Native 1.2.30 release is [X] Stable, go ahead and release [ ] Broken because of ... Unit tests pass with latest 10.1.x on Windows, MacOS and Linux. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch main updated: No need for these internal classes to be package visible.
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 13f85a8 No need for these internal classes to be package visible. 13f85a8 is described below commit 13f85a87233564c1d1e8cb017bfc2415caab62b0 Author: Mark Thomas AuthorDate: Thu Jun 3 17:41:53 2021 +0100 No need for these internal classes to be package visible. While the (removed in this commit) comments indicate that NoBodyOutputStream and NoBodyResponse were intended to be private to HttpServlet, there were implemented as package private. Refactor so they are private to HttpServlet. --- java/jakarta/servlet/http/HttpServlet.java | 245 ++--- 1 file changed, 118 insertions(+), 127 deletions(-) diff --git a/java/jakarta/servlet/http/HttpServlet.java b/java/jakarta/servlet/http/HttpServlet.java index 9c001b6..77e8c62 100644 --- a/java/jakarta/servlet/http/HttpServlet.java +++ b/java/jakarta/servlet/http/HttpServlet.java @@ -800,167 +800,158 @@ public abstract class HttpServlet extends GenericServlet { return true; } } -} -/* - * A response wrapper for use in (dumb) "HEAD" support. - * This just swallows that body, counting the bytes in order to set - * the content length appropriately. All other methods delegate to the - * wrapped HTTP Servlet Response object. - */ -// file private -class NoBodyResponse extends HttpServletResponseWrapper { -private final NoBodyOutputStream noBody; -private PrintWriter writer; -private boolean didSetContentLength; - -// file private -NoBodyResponse(HttpServletResponse r) { -super(r); -noBody = new NoBodyOutputStream(this); -} +/* + * A response wrapper for use in (dumb) "HEAD" support. + * This just swallows that body, counting the bytes in order to set + * the content length appropriately. All other methods delegate to the + * wrapped HTTP Servlet Response object. + */ +private static class NoBodyResponse extends HttpServletResponseWrapper { +private final NoBodyOutputStream noBody; +private PrintWriter writer; +private boolean didSetContentLength; + +private NoBodyResponse(HttpServletResponse r) { +super(r); +noBody = new NoBodyOutputStream(this); +} -// file private -void setContentLength() { -if (!didSetContentLength) { -if (writer != null) { -writer.flush(); +private void setContentLength() { +if (!didSetContentLength) { +if (writer != null) { +writer.flush(); +} +super.setContentLength(noBody.getContentLength()); } -super.setContentLength(noBody.getContentLength()); } -} -// SERVLET RESPONSE interface methods - -@Override -public void setContentLength(int len) { -super.setContentLength(len); -didSetContentLength = true; -} +@Override +public void setContentLength(int len) { +super.setContentLength(len); +didSetContentLength = true; +} -@Override -public void setContentLengthLong(long len) { -super.setContentLengthLong(len); -didSetContentLength = true; -} +@Override +public void setContentLengthLong(long len) { +super.setContentLengthLong(len); +didSetContentLength = true; +} -@Override -public void setHeader(String name, String value) { -super.setHeader(name, value); -checkHeader(name); -} +@Override +public void setHeader(String name, String value) { +super.setHeader(name, value); +checkHeader(name); +} -@Override -public void addHeader(String name, String value) { -super.addHeader(name, value); -checkHeader(name); -} +@Override +public void addHeader(String name, String value) { +super.addHeader(name, value); +checkHeader(name); +} -@Override -public void setIntHeader(String name, int value) { -super.setIntHeader(name, value); -checkHeader(name); -} +@Override +public void setIntHeader(String name, int value) { +super.setIntHeader(name, value); +checkHeader(name); +} -@Override -public void addIntHeader(String name, int value) { -super.addIntHeader(name, value); -checkHeader(name); -} +@Override +public void addIntHeader(String name, int value) { +super.addIntHeader(name, value); +checkHeader(name); +} -private void checkHeader(String name) { -if ("content-leng
[tomcat] branch 10.0.x updated: No need for these internal classes to be package visible.
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 10.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/10.0.x by this push: new 65a8499 No need for these internal classes to be package visible. 65a8499 is described below commit 65a849911966ffbfbe93275cca11deefaa22c079 Author: Mark Thomas AuthorDate: Thu Jun 3 17:41:53 2021 +0100 No need for these internal classes to be package visible. While the (removed in this commit) comments indicate that NoBodyOutputStream and NoBodyResponse were intended to be private to HttpServlet, there were implemented as package private. Refactor so they are private to HttpServlet. --- java/jakarta/servlet/http/HttpServlet.java | 245 ++--- 1 file changed, 118 insertions(+), 127 deletions(-) diff --git a/java/jakarta/servlet/http/HttpServlet.java b/java/jakarta/servlet/http/HttpServlet.java index 9c001b6..77e8c62 100644 --- a/java/jakarta/servlet/http/HttpServlet.java +++ b/java/jakarta/servlet/http/HttpServlet.java @@ -800,167 +800,158 @@ public abstract class HttpServlet extends GenericServlet { return true; } } -} -/* - * A response wrapper for use in (dumb) "HEAD" support. - * This just swallows that body, counting the bytes in order to set - * the content length appropriately. All other methods delegate to the - * wrapped HTTP Servlet Response object. - */ -// file private -class NoBodyResponse extends HttpServletResponseWrapper { -private final NoBodyOutputStream noBody; -private PrintWriter writer; -private boolean didSetContentLength; - -// file private -NoBodyResponse(HttpServletResponse r) { -super(r); -noBody = new NoBodyOutputStream(this); -} +/* + * A response wrapper for use in (dumb) "HEAD" support. + * This just swallows that body, counting the bytes in order to set + * the content length appropriately. All other methods delegate to the + * wrapped HTTP Servlet Response object. + */ +private static class NoBodyResponse extends HttpServletResponseWrapper { +private final NoBodyOutputStream noBody; +private PrintWriter writer; +private boolean didSetContentLength; + +private NoBodyResponse(HttpServletResponse r) { +super(r); +noBody = new NoBodyOutputStream(this); +} -// file private -void setContentLength() { -if (!didSetContentLength) { -if (writer != null) { -writer.flush(); +private void setContentLength() { +if (!didSetContentLength) { +if (writer != null) { +writer.flush(); +} +super.setContentLength(noBody.getContentLength()); } -super.setContentLength(noBody.getContentLength()); } -} -// SERVLET RESPONSE interface methods - -@Override -public void setContentLength(int len) { -super.setContentLength(len); -didSetContentLength = true; -} +@Override +public void setContentLength(int len) { +super.setContentLength(len); +didSetContentLength = true; +} -@Override -public void setContentLengthLong(long len) { -super.setContentLengthLong(len); -didSetContentLength = true; -} +@Override +public void setContentLengthLong(long len) { +super.setContentLengthLong(len); +didSetContentLength = true; +} -@Override -public void setHeader(String name, String value) { -super.setHeader(name, value); -checkHeader(name); -} +@Override +public void setHeader(String name, String value) { +super.setHeader(name, value); +checkHeader(name); +} -@Override -public void addHeader(String name, String value) { -super.addHeader(name, value); -checkHeader(name); -} +@Override +public void addHeader(String name, String value) { +super.addHeader(name, value); +checkHeader(name); +} -@Override -public void setIntHeader(String name, int value) { -super.setIntHeader(name, value); -checkHeader(name); -} +@Override +public void setIntHeader(String name, int value) { +super.setIntHeader(name, value); +checkHeader(name); +} -@Override -public void addIntHeader(String name, int value) { -super.addIntHeader(name, value); -checkHeader(name); -} +@Override +public void addIntHeader(String name, int value) { +super.addIntHeader(name, value); +checkHeader(name); +} -private void checkHeader(String name) { -if ("content-
[tomcat] branch 9.0.x updated: No need for these internal classes to be package visible.
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/9.0.x by this push: new 8eb557e No need for these internal classes to be package visible. 8eb557e is described below commit 8eb557efc3d76bfc2670a652999c4cb093631b80 Author: Mark Thomas AuthorDate: Thu Jun 3 17:41:53 2021 +0100 No need for these internal classes to be package visible. While the (removed in this commit) comments indicate that NoBodyOutputStream and NoBodyResponse were intended to be private to HttpServlet, there were implemented as package private. Refactor so they are private to HttpServlet. --- java/javax/servlet/http/HttpServlet.java | 245 +++ 1 file changed, 118 insertions(+), 127 deletions(-) diff --git a/java/javax/servlet/http/HttpServlet.java b/java/javax/servlet/http/HttpServlet.java index 1b252a2..16c346d 100644 --- a/java/javax/servlet/http/HttpServlet.java +++ b/java/javax/servlet/http/HttpServlet.java @@ -756,167 +756,158 @@ public abstract class HttpServlet extends GenericServlet { } service(request, response); } -} -/* - * A response wrapper for use in (dumb) "HEAD" support. - * This just swallows that body, counting the bytes in order to set - * the content length appropriately. All other methods delegate to the - * wrapped HTTP Servlet Response object. - */ -// file private -class NoBodyResponse extends HttpServletResponseWrapper { -private final NoBodyOutputStream noBody; -private PrintWriter writer; -private boolean didSetContentLength; - -// file private -NoBodyResponse(HttpServletResponse r) { -super(r); -noBody = new NoBodyOutputStream(this); -} +/* + * A response wrapper for use in (dumb) "HEAD" support. + * This just swallows that body, counting the bytes in order to set + * the content length appropriately. All other methods delegate to the + * wrapped HTTP Servlet Response object. + */ +private static class NoBodyResponse extends HttpServletResponseWrapper { +private final NoBodyOutputStream noBody; +private PrintWriter writer; +private boolean didSetContentLength; + +private NoBodyResponse(HttpServletResponse r) { +super(r); +noBody = new NoBodyOutputStream(this); +} -// file private -void setContentLength() { -if (!didSetContentLength) { -if (writer != null) { -writer.flush(); +private void setContentLength() { +if (!didSetContentLength) { +if (writer != null) { +writer.flush(); +} +super.setContentLength(noBody.getContentLength()); } -super.setContentLength(noBody.getContentLength()); } -} -// SERVLET RESPONSE interface methods - -@Override -public void setContentLength(int len) { -super.setContentLength(len); -didSetContentLength = true; -} +@Override +public void setContentLength(int len) { +super.setContentLength(len); +didSetContentLength = true; +} -@Override -public void setContentLengthLong(long len) { -super.setContentLengthLong(len); -didSetContentLength = true; -} +@Override +public void setContentLengthLong(long len) { +super.setContentLengthLong(len); +didSetContentLength = true; +} -@Override -public void setHeader(String name, String value) { -super.setHeader(name, value); -checkHeader(name); -} +@Override +public void setHeader(String name, String value) { +super.setHeader(name, value); +checkHeader(name); +} -@Override -public void addHeader(String name, String value) { -super.addHeader(name, value); -checkHeader(name); -} +@Override +public void addHeader(String name, String value) { +super.addHeader(name, value); +checkHeader(name); +} -@Override -public void setIntHeader(String name, int value) { -super.setIntHeader(name, value); -checkHeader(name); -} +@Override +public void setIntHeader(String name, int value) { +super.setIntHeader(name, value); +checkHeader(name); +} -@Override -public void addIntHeader(String name, int value) { -super.addIntHeader(name, value); -checkHeader(name); -} +@Override +public void addIntHeader(String name, int value) { +super.addIntHeader(name, value); +checkHeader(name); +} -private void checkHeader(String name) { -if ("content
[tomcat] branch 8.5.x updated: No need for these internal classes to be package visible.
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 8.5.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/8.5.x by this push: new b94f034 No need for these internal classes to be package visible. b94f034 is described below commit b94f03444aef0a4de40203311837be31bbebcfd9 Author: Mark Thomas AuthorDate: Thu Jun 3 17:41:53 2021 +0100 No need for these internal classes to be package visible. While the (removed in this commit) comments indicate that NoBodyOutputStream and NoBodyResponse were intended to be private to HttpServlet, there were implemented as package private. Refactor so they are private to HttpServlet. --- java/javax/servlet/http/HttpServlet.java | 245 +++ 1 file changed, 118 insertions(+), 127 deletions(-) diff --git a/java/javax/servlet/http/HttpServlet.java b/java/javax/servlet/http/HttpServlet.java index 1b252a2..16c346d 100644 --- a/java/javax/servlet/http/HttpServlet.java +++ b/java/javax/servlet/http/HttpServlet.java @@ -756,167 +756,158 @@ public abstract class HttpServlet extends GenericServlet { } service(request, response); } -} -/* - * A response wrapper for use in (dumb) "HEAD" support. - * This just swallows that body, counting the bytes in order to set - * the content length appropriately. All other methods delegate to the - * wrapped HTTP Servlet Response object. - */ -// file private -class NoBodyResponse extends HttpServletResponseWrapper { -private final NoBodyOutputStream noBody; -private PrintWriter writer; -private boolean didSetContentLength; - -// file private -NoBodyResponse(HttpServletResponse r) { -super(r); -noBody = new NoBodyOutputStream(this); -} +/* + * A response wrapper for use in (dumb) "HEAD" support. + * This just swallows that body, counting the bytes in order to set + * the content length appropriately. All other methods delegate to the + * wrapped HTTP Servlet Response object. + */ +private static class NoBodyResponse extends HttpServletResponseWrapper { +private final NoBodyOutputStream noBody; +private PrintWriter writer; +private boolean didSetContentLength; + +private NoBodyResponse(HttpServletResponse r) { +super(r); +noBody = new NoBodyOutputStream(this); +} -// file private -void setContentLength() { -if (!didSetContentLength) { -if (writer != null) { -writer.flush(); +private void setContentLength() { +if (!didSetContentLength) { +if (writer != null) { +writer.flush(); +} +super.setContentLength(noBody.getContentLength()); } -super.setContentLength(noBody.getContentLength()); } -} -// SERVLET RESPONSE interface methods - -@Override -public void setContentLength(int len) { -super.setContentLength(len); -didSetContentLength = true; -} +@Override +public void setContentLength(int len) { +super.setContentLength(len); +didSetContentLength = true; +} -@Override -public void setContentLengthLong(long len) { -super.setContentLengthLong(len); -didSetContentLength = true; -} +@Override +public void setContentLengthLong(long len) { +super.setContentLengthLong(len); +didSetContentLength = true; +} -@Override -public void setHeader(String name, String value) { -super.setHeader(name, value); -checkHeader(name); -} +@Override +public void setHeader(String name, String value) { +super.setHeader(name, value); +checkHeader(name); +} -@Override -public void addHeader(String name, String value) { -super.addHeader(name, value); -checkHeader(name); -} +@Override +public void addHeader(String name, String value) { +super.addHeader(name, value); +checkHeader(name); +} -@Override -public void setIntHeader(String name, int value) { -super.setIntHeader(name, value); -checkHeader(name); -} +@Override +public void setIntHeader(String name, int value) { +super.setIntHeader(name, value); +checkHeader(name); +} -@Override -public void addIntHeader(String name, int value) { -super.addIntHeader(name, value); -checkHeader(name); -} +@Override +public void addIntHeader(String name, int value) { +super.addIntHeader(name, value); +checkHeader(name); +} -private void checkHeader(String name) { -if ("content
HttpServlet
Hi all, If you are wondering about my recent interest in HttpServlet, a discussion in the Jakarta Servlet project [1] got me looking more closely at our own doHead() implementation. Given the common ancestry, it won't be surprising that we have some of the same issues. So far, I have: - don't handle reset() or resetBuffer() - use int rather than long for content-length - flush after bufferSize bytes rather than bufferSize + 1 bytes This last one looks to be Tomcat specific. The current code works and I am extremely wary of introducing an off-by-one error into the HTTP output buffer therefore I'm almost certainly going to wait until after the current release round to fix that issue. I have a parameterised unit test that creates a few thousand individual tests that has a fair number of failures right now. If I get that test passing in time, and the fixes are limited to the doHead() method, then I may commit those fixes in time for the next set of releases. Mark [1] https://github.com/eclipse-ee4j/servlet-api/pull/356 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot failure in on tomcat-8.5.x
The Buildbot has detected a new failure on builder tomcat-8.5.x while building tomcat. Full details are available at: https://ci.apache.org/builders/tomcat-8.5.x/builds/13 Buildbot URL: https://ci.apache.org/ Buildslave for this Build: asf946_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-8.5-commit' triggered this build Build Source Stamp: [branch 8.5.x] b94f03444aef0a4de40203311837be31bbebcfd9 Blamelist: Mark Thomas ,remm BUILD FAILED: failed compile_1 Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Apache Tomcat 10.0.2: generated _jsp.class file has empty local variable table
> Il giorno 31 mag 2021, alle ore 20:58, Konstantin Kolinko > ha scritto: > > Citing from the NOTICE file: > > Java compilation software for JSP pages is provided by the Eclipse > JDT Core Batch Compiler component, which is open source software. Hello Konstantin, and thank you for the answer. I noticed the ecj jar in the lib directory so I kind of guessed that ecj was used as a compiler. What I am looking for is the Tomcat code that invokes ecj, so I can get the exact ecj invocation parameters and reproduce from the command line what Tomcat does. I also conjecture that, after compilation of the .java file, some kind of bytecode manipulation is performed on the resulting class file, e.g., to inject JSP-specific debug information as SourceDebugExtension attributes. So I want to read the code and see whether this is true, in the case I need to pinpoint whether the problem is in ecj or in the (possible) subsequent bytecode manipulation routines. Best, Pietro - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch main updated: Fix long content-length handling for doHead()
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 fefe4de Fix long content-length handling for doHead() fefe4de is described below commit fefe4de781449493000a633488aa11198434cf3e Author: Mark Thomas AuthorDate: Thu Jun 3 18:57:02 2021 +0100 Fix long content-length handling for doHead() --- java/jakarta/servlet/http/HttpServlet.java | 6 +++--- webapps/docs/changelog.xml | 6 ++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/java/jakarta/servlet/http/HttpServlet.java b/java/jakarta/servlet/http/HttpServlet.java index 77e8c62..86a5a7b 100644 --- a/java/jakarta/servlet/http/HttpServlet.java +++ b/java/jakarta/servlet/http/HttpServlet.java @@ -823,7 +823,7 @@ public abstract class HttpServlet extends GenericServlet { if (writer != null) { writer.flush(); } -super.setContentLength(noBody.getContentLength()); +super.setContentLengthLong(noBody.getContentLength()); } } @@ -899,13 +899,13 @@ public abstract class HttpServlet extends GenericServlet { private final HttpServletResponse response; private boolean flushed = false; -private int contentLength = 0; +private long contentLength = 0; private NoBodyOutputStream(HttpServletResponse response) { this.response = response; } -private int getContentLength() { +private long getContentLength() { return contentLength; } diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index f56b524..cd79722 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -164,6 +164,12 @@ Refactor principal handling in UserDatabaseRealm using an inner class that extends GenericPrincipal. (remm) + +Enable the default doHead()) implementation in +HttpServlet to correctly handle responses where the content +length needs to be represented as a long since it is larger than the +maximum value that can be represented by an int. (markt) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 10.0.x updated: Fix long content-length handling for doHead()
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 10.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/10.0.x by this push: new 6defa8b Fix long content-length handling for doHead() 6defa8b is described below commit 6defa8be6908110a0f78126c55ccb3a9b1a7ce63 Author: Mark Thomas AuthorDate: Thu Jun 3 18:57:02 2021 +0100 Fix long content-length handling for doHead() --- java/jakarta/servlet/http/HttpServlet.java | 6 +++--- webapps/docs/changelog.xml | 6 ++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/java/jakarta/servlet/http/HttpServlet.java b/java/jakarta/servlet/http/HttpServlet.java index 77e8c62..86a5a7b 100644 --- a/java/jakarta/servlet/http/HttpServlet.java +++ b/java/jakarta/servlet/http/HttpServlet.java @@ -823,7 +823,7 @@ public abstract class HttpServlet extends GenericServlet { if (writer != null) { writer.flush(); } -super.setContentLength(noBody.getContentLength()); +super.setContentLengthLong(noBody.getContentLength()); } } @@ -899,13 +899,13 @@ public abstract class HttpServlet extends GenericServlet { private final HttpServletResponse response; private boolean flushed = false; -private int contentLength = 0; +private long contentLength = 0; private NoBodyOutputStream(HttpServletResponse response) { this.response = response; } -private int getContentLength() { +private long getContentLength() { return contentLength; } diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index e25ae94..07f3e5b 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -143,6 +143,12 @@ Refactor principal handling in UserDatabaseRealm using an inner class that extends GenericPrincipal. (remm) + +Enable the default doHead()) implementation in +HttpServlet to correctly handle responses where the content +length needs to be represented as a long since it is larger than the +maximum value that can be represented by an int. (markt) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 9.0.x updated: Fix long content-length handling for doHead()
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/9.0.x by this push: new 92b8be7 Fix long content-length handling for doHead() 92b8be7 is described below commit 92b8be7031ff23a47d4b22e1a6b8bbe7c962fb9d Author: Mark Thomas AuthorDate: Thu Jun 3 18:57:02 2021 +0100 Fix long content-length handling for doHead() --- java/javax/servlet/http/HttpServlet.java | 6 +++--- webapps/docs/changelog.xml | 6 ++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/java/javax/servlet/http/HttpServlet.java b/java/javax/servlet/http/HttpServlet.java index 16c346d..3b5b6ad 100644 --- a/java/javax/servlet/http/HttpServlet.java +++ b/java/javax/servlet/http/HttpServlet.java @@ -779,7 +779,7 @@ public abstract class HttpServlet extends GenericServlet { if (writer != null) { writer.flush(); } -super.setContentLength(noBody.getContentLength()); +super.setContentLengthLong(noBody.getContentLength()); } } @@ -855,13 +855,13 @@ public abstract class HttpServlet extends GenericServlet { private final HttpServletResponse response; private boolean flushed = false; -private int contentLength = 0; +private long contentLength = 0; private NoBodyOutputStream(HttpServletResponse response) { this.response = response; } -private int getContentLength() { +private long getContentLength() { return contentLength; } diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index b2074d0..9c525d6 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -152,6 +152,12 @@ Refactor principal handling in UserDatabaseRealm using an inner class that extends GenericPrincipal. (remm) + +Enable the default doHead()) implementation in +HttpServlet to correctly handle responses where the content +length needs to be represented as a long since it is larger than the +maximum value that can be represented by an int. (markt) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 8.5.x updated: Fix long content-length handling for doHead()
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 8.5.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/8.5.x by this push: new 939d6cc Fix long content-length handling for doHead() 939d6cc is described below commit 939d6cc6bfe32add6b3da45536b86603efa790bf Author: Mark Thomas AuthorDate: Thu Jun 3 18:57:02 2021 +0100 Fix long content-length handling for doHead() --- java/javax/servlet/http/HttpServlet.java | 6 +++--- webapps/docs/changelog.xml | 6 ++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/java/javax/servlet/http/HttpServlet.java b/java/javax/servlet/http/HttpServlet.java index 16c346d..3b5b6ad 100644 --- a/java/javax/servlet/http/HttpServlet.java +++ b/java/javax/servlet/http/HttpServlet.java @@ -779,7 +779,7 @@ public abstract class HttpServlet extends GenericServlet { if (writer != null) { writer.flush(); } -super.setContentLength(noBody.getContentLength()); +super.setContentLengthLong(noBody.getContentLength()); } } @@ -855,13 +855,13 @@ public abstract class HttpServlet extends GenericServlet { private final HttpServletResponse response; private boolean flushed = false; -private int contentLength = 0; +private long contentLength = 0; private NoBodyOutputStream(HttpServletResponse response) { this.response = response; } -private int getContentLength() { +private long getContentLength() { return contentLength; } diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml index 8be9dfb..e2b2aae 100644 --- a/webapps/docs/changelog.xml +++ b/webapps/docs/changelog.xml @@ -152,6 +152,12 @@ Refactor principal handling in UserDatabaseRealm using an inner class that extends GenericPrincipal. (remm) + +Enable the default doHead()) implementation in +HttpServlet to correctly handle responses where the content +length needs to be represented as a long since it is larger than the +maximum value that can be represented by an int. (markt) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Apache Tomcat 10.0.2: generated _jsp.class file has empty local variable table
On 03/06/2021 18:56, Pietro Braione wrote: Il giorno 31 mag 2021, alle ore 20:58, Konstantin Kolinko ha scritto: Citing from the NOTICE file: Java compilation software for JSP pages is provided by the Eclipse JDT Core Batch Compiler component, which is open source software. Hello Konstantin, and thank you for the answer. I noticed the ecj jar in the lib directory so I kind of guessed that ecj was used as a compiler. What I am looking for is the Tomcat code that invokes ecj, so I can get the exact ecj invocation parameters and reproduce from the command line what Tomcat does. I also conjecture that, after compilation of the .java file, some kind of bytecode manipulation is performed on the resulting class file, e.g., to inject JSP-specific debug information as SourceDebugExtension attributes. So I want to read the code and see whether this is true, in the case I need to pinpoint whether the problem is in ecj or in the (possible) subsequent bytecode manipulation routines. Have you tried searching the Tomcat source code for references to "jdt"? Github provides a handy on-line search so you don't even need to clone the repo. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1890440 - in /tomcat/site/trunk: docs/ci.html xdocs/ci.xml
Author: markt Date: Thu Jun 3 18:13:43 2021 New Revision: 1890440 URL: http://svn.apache.org/viewvc?rev=1890440&view=rev Log: CI switchover complete Modified: tomcat/site/trunk/docs/ci.html tomcat/site/trunk/xdocs/ci.xml Modified: tomcat/site/trunk/docs/ci.html URL: http://svn.apache.org/viewvc/tomcat/site/trunk/docs/ci.html?rev=1890440&r1=1890439&r2=1890440&view=diff == --- tomcat/site/trunk/docs/ci.html (original) +++ tomcat/site/trunk/docs/ci.html Thu Jun 3 18:13:43 2021 @@ -27,11 +27,11 @@ currently developed not yet released ver prepared and published by ASF Buildbot, using the latest source code. - https://ci.apache.org/projects/tomcat/tomcat10/docs/index.html"; rel="nofollow">Tomcat 10.1.x (main) + https://ci.apache.org/projects/tomcat/tomcat-10.1.x/docs/index.html"; rel="nofollow">Tomcat 10.1.x (main) https://ci.apache.org/projects/tomcat/tomcat-10.0.x/docs/index.html"; rel="nofollow">Tomcat 10.0.x - https://ci.apache.org/projects/tomcat/tomcat9/docs/index.html"; rel="nofollow">Tomcat 9.0.x + https://ci.apache.org/projects/tomcat/tomcat-9.0.x/docs/index.html"; rel="nofollow">Tomcat 9.0.x https://ci.apache.org/projects/tomcat/tomcat-8.5.x/docs/index.html"; rel="nofollow">Tomcat 8.5.x - https://ci.apache.org/projects/tomcat/tomcat7/docs/index.html"; rel="nofollow">Tomcat 7.0.x + https://ci.apache.org/projects/tomcat/tomcat-7.0.x/docs/index.html"; rel="nofollow">Tomcat 7.0.x Build results @@ -47,15 +47,15 @@ prepared and published by ASF Buildbot, Source path: https://github.com/apache/tomcat";>https://github.com/apache/tomcat - https://ci.apache.org/builders/tomcat-trunk";>Build status page for tomcat-trunkThis builder is triggered after each commit. It does a release build and runs tests (using multiple parallel threads). - https://ci.apache.org/builders/tomcat-trunk-periodic";>Build status page for tomcat-trunk-periodicThis builder is triggered once a day. It runs tests serially and generates a coverage report. - https://ci.apache.org/projects/tomcat/tomcat10/"; rel="nofollow">Published files: + https://ci.apache.org/builders/tomcat-10.1.x";>Build status page for tomcat-trunkThis builder is triggered after each commit. It does a release build and runs tests (using multiple parallel threads). + https://ci.apache.org/builders/tomcat-10.1.x-periodic";>Build status page for tomcat-trunk-periodicThis builder is triggered once a day. It runs tests serially and generates a coverage report. + https://ci.apache.org/projects/tomcat/tomcat-10.1.x/"; rel="nofollow">Published files: - https://ci.apache.org/projects/tomcat/tomcat10/docs/index.html"; rel="nofollow">Documentation - https://ci.apache.org/projects/tomcat/tomcat10/logs/"; rel="nofollow">JUnit logs + https://ci.apache.org/projects/tomcat/tomcat-10.1.x/docs/index.html"; rel="nofollow">Documentation + https://ci.apache.org/projects/tomcat/tomcat-10.1.x/logs/"; rel="nofollow">JUnit logs by revision number. The recent ones are at the bottom. - https://ci.apache.org/projects/tomcat/tomcat10/coverage/"; rel="nofollow">Coverage report - https://ci.apache.org/projects/tomcat/tomcat10/rat-output.html"; rel="nofollow">RAT report + https://ci.apache.org/projects/tomcat/tomcat-10.1.x/coverage/"; rel="nofollow">Coverage report + https://ci.apache.org/projects/tomcat/tomcat-10.1.x/rat-output.html"; rel="nofollow">RAT report @@ -85,15 +85,15 @@ prepared and published by ASF Buildbot, Source path: https://github.com/apache/tomcat/tree/9.0.x";>https://github.com/apache/tomcat/tree/9.0.x - https://ci.apache.org/builders/tomcat-9-trunk";>Build status page for tomcat-9-trunkThis builder is triggered after each commit. It does a release build and runs tests (using multiple parallel threads). - https://ci.apache.org/builders/tomcat-9-periodic";>Build status page for tomcat-9-trunk-periodicThis builder is triggered once a day. It runs tests serially and generates a coverage report. - https://ci.apache.org/projects/tomcat/tomcat9/"; rel="nofollow">Published files: + https://ci.apache.org/builders/tomcat-9.0.x";>Build status page for tomcat-9-trunkThis builder is triggered after each commit. It does a release build and runs tests (using multiple parallel threads). + https://ci.apache.org/builders/tomcat-9.0.x-periodic";>Build status page for tomcat-9-trunk-periodicThis builder is triggered once a day. It runs tests serially and generates a coverage report. + https://ci.apache.org/projects/tomcat/tomcat-9.0.x/"; rel="nofollow">Published files: - https://ci.apache.org/projects/tomcat/tomcat9/docs/index.html"; rel="nofollow">Documentation - https://ci.apache.org/projects/tomcat/tomcat9/log
buildbot failure in on tomcat-9.0.x
The Buildbot has detected a new failure on builder tomcat-9.0.x while building tomcat. Full details are available at: https://ci.apache.org/builders/tomcat-9.0.x/builds/10 Buildbot URL: https://ci.apache.org/ Buildslave for this Build: asf946_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-9.0-commit' triggered this build Build Source Stamp: [branch 9.0.x] 8eb557efc3d76bfc2670a652999c4cb093631b80 Blamelist: Mark Thomas BUILD FAILED: failed compile_1 Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 9.0.x updated: Correctly handle inner classes (and fix failing test)
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 9.0.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/9.0.x by this push: new 29b7edf Correctly handle inner classes (and fix failing test) 29b7edf is described below commit 29b7edffe423755b003c81a87b702bd0b2d880de Author: Mark Thomas AuthorDate: Mon Feb 17 16:41:05 2020 + Correctly handle inner classes (and fix failing test) --- test/javax/el/TestImportHandlerStandardPackages.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/javax/el/TestImportHandlerStandardPackages.java b/test/javax/el/TestImportHandlerStandardPackages.java index 660f665..bf7e2d8 100644 --- a/test/javax/el/TestImportHandlerStandardPackages.java +++ b/test/javax/el/TestImportHandlerStandardPackages.java @@ -125,7 +125,7 @@ public class TestImportHandlerStandardPackages { // Skip directories continue; } -Class clazz = Class.forName(packageName + "." + name); +Class clazz = Class.forName(packageName + "." + name.replaceAll("\\.", "\\$")); if (!Modifier.isPublic(clazz.getModifiers())) { // Skip non-public classes continue; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 8.5.x updated: Correctly handle inner classes (and fix failing test)
This is an automated email from the ASF dual-hosted git repository. markt pushed a commit to branch 8.5.x in repository https://gitbox.apache.org/repos/asf/tomcat.git The following commit(s) were added to refs/heads/8.5.x by this push: new 0c6247b Correctly handle inner classes (and fix failing test) 0c6247b is described below commit 0c6247b6bd1fe91b820f9420433f29b22ef8bd07 Author: Mark Thomas AuthorDate: Mon Feb 17 16:41:05 2020 + Correctly handle inner classes (and fix failing test) --- test/javax/el/TestImportHandlerStandardPackages.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/javax/el/TestImportHandlerStandardPackages.java b/test/javax/el/TestImportHandlerStandardPackages.java index 30b0886..2f40de8 100644 --- a/test/javax/el/TestImportHandlerStandardPackages.java +++ b/test/javax/el/TestImportHandlerStandardPackages.java @@ -132,7 +132,7 @@ public class TestImportHandlerStandardPackages { // Skip directories continue; } -Class clazz = Class.forName(packageName + "." + name); +Class clazz = Class.forName(packageName + "." + name.replaceAll("\\.", "\\$")); if (!Modifier.isPublic(clazz.getModifiers())) { // Skip non-public classes continue; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot success in on tomcat-9.0.x
The Buildbot has detected a restored build on builder tomcat-9.0.x while building tomcat. Full details are available at: https://ci.apache.org/builders/tomcat-9.0.x/builds/12 Buildbot URL: https://ci.apache.org/ Buildslave for this Build: asf946_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-9.0-commit' triggered this build Build Source Stamp: [branch 9.0.x] 29b7edffe423755b003c81a87b702bd0b2d880de Blamelist: Mark Thomas Build succeeded! Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org