[tomcat-jakartaee-migration] branch main updated: Provide workaround for issue #46
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-jakartaee-migration.git The following commit(s) were added to refs/heads/main by this push: new 0af36b6 Provide workaround for issue #46 0af36b6 is described below commit 0af36b612e058ea75db91f8075906e1fcdea9e39 Author: Mark Thomas AuthorDate: Wed Apr 19 08:05:31 2023 +0100 Provide workaround for issue #46 --- CHANGES.md | 1 + src/main/java/org/apache/tomcat/jakartaee/Migration.java| 13 + .../org/apache/tomcat/jakartaee/LocalStrings.properties | 1 + 3 files changed, 15 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 719a9c9..b071d4c 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -7,6 +7,7 @@ - Update OSGI servlet specification versions if present in manifest file. PR[#42](https://github.com/apache/tomcat-jakartaee-migration/pull/42) provided by Ivan Furnadjiev. (markt) - Update Commons BCEL to 6.7.0. (markt) - Update Commons Compress to 1.23.0. (markt) +- Provided workaround for the known JDK bug identified as the cause of migration failures in issue [#46](https://github.com/apache/tomcat-jakartaee-migration/issues/46). (markt/ebourg) ## 1.0.6 diff --git a/src/main/java/org/apache/tomcat/jakartaee/Migration.java b/src/main/java/org/apache/tomcat/jakartaee/Migration.java index 950ce23..ba76abe 100644 --- a/src/main/java/org/apache/tomcat/jakartaee/Migration.java +++ b/src/main/java/org/apache/tomcat/jakartaee/Migration.java @@ -40,6 +40,7 @@ import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream; import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream; import org.apache.commons.compress.archivers.zip.ZipFile; +import org.apache.commons.compress.archivers.zip.ZipShort; import org.apache.commons.compress.utils.SeekableInMemoryByteChannel; import org.apache.commons.io.IOUtils; import org.apache.commons.io.input.CloseShieldInputStream; @@ -55,6 +56,9 @@ public class Migration { private static final Set DEFAULT_EXCLUDES = new HashSet<>(); +private static final ZipShort EXTRA_FIELD_ZIP64 = new ZipShort(1); +private static final long ZIP64_THRESHOLD_LENGTH = 0xL; + static { // Apache Commons DEFAULT_EXCLUDES.add("commons-codec-*.jar"); @@ -306,6 +310,15 @@ public class Migration { logger.log(Level.WARNING, sm.getString("migration.skipSignatureFile", srcName)); continue; } +if (srcZipEntry.getSize() > ZIP64_THRESHOLD_LENGTH || +srcZipEntry.getCompressedSize() > ZIP64_THRESHOLD_LENGTH) { +logger.log(Level.WARNING, sm.getString("migration.jdk8303866", srcName)); +} else { +// Avoid JDK bug - https://bugs.openjdk.org/browse/JDK-8303866 +if (srcZipEntry.getExtraField(EXTRA_FIELD_ZIP64) != null) { +srcZipEntry.removeExtraField(EXTRA_FIELD_ZIP64); +} +} String destName = profile.convert(srcName); if (srcZipEntry.getMethod() == ZipEntry.STORED) { ByteArrayOutputStream tempBuffer = new ByteArrayOutputStream((int) (srcZipEntry.getSize() * 1.05)); diff --git a/src/main/resources/org/apache/tomcat/jakartaee/LocalStrings.properties b/src/main/resources/org/apache/tomcat/jakartaee/LocalStrings.properties index 003ecaf..66b4285 100644 --- a/src/main/resources/org/apache/tomcat/jakartaee/LocalStrings.properties +++ b/src/main/resources/org/apache/tomcat/jakartaee/LocalStrings.properties @@ -26,6 +26,7 @@ migration.alreadyRunning=Migration is already running migration.done=Migration completed successfully in [{0}] milliseconds migration.error=Error performing migration migration.execute=Performing migration from source [{0}] to destination [{1}] with Jakarta EE specification profile [{2}] +migration.jdk8303866=Due to size of [{0}], migrated JAR will fail if used in a JDK without the fix for https://bugs.openjdk.org/browse/JDK-8303866 - Using an in memory migration rather than a streaming migration may work-around the issue. migration.mkdirError=Error creating destination directory [{0}]a migration.skip=Migration skipped for archive [{0}] because it is excluded (the archive was copied unchanged) migration.skipSignatureFile=Drop cryptographic signature file [{0}] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[GitHub] [tomcat-jakartaee-migration] markt-asf commented on issue #46: "java.util.zip.ZipException: invalid entry size (expected 0 but got 913 bytes)" when opening migrated jar with `java.util.zip.Zi
markt-asf commented on issue #46: URL: https://github.com/apache/tomcat-jakartaee-migration/issues/46#issuecomment-1514233727 I was also working on a fix. I've combined your fix and mine and committed it. My local test and the unit tests pass. -- 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. To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org 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
[GitHub] [tomcat-jakartaee-migration] markt-asf closed issue #46: "java.util.zip.ZipException: invalid entry size (expected 0 but got 913 bytes)" when opening migrated jar with `java.util.zip.ZipInput
markt-asf closed issue #46: "java.util.zip.ZipException: invalid entry size (expected 0 but got 913 bytes)" when opening migrated jar with `java.util.zip.ZipInputStream` URL: https://github.com/apache/tomcat-jakartaee-migration/issues/46 -- 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. To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org 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
[GitHub] [tomcat-jakartaee-migration] ebourg commented on issue #46: "java.util.zip.ZipException: invalid entry size (expected 0 but got 913 bytes)" when opening migrated jar with `java.util.zip.ZipIn
ebourg commented on issue #46: URL: https://github.com/apache/tomcat-jakartaee-migration/issues/46#issuecomment-1514246160 @eirbjo Many thanks for your input, that was really helpful. Good luck with your JDK PR -- 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. To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org 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
[VOTE][RESULT] Release Apache Tomcat 11.0.0-M5
The following votes were cast: Binding: +1: lihan, remm, markt Non-binding: +1: Dimitris Soumis No other votes were cast. The vote therefore passes. Thanks to everyone who contributed to this release. Mark On 13/04/2023 00:20, Mark Thomas wrote: The proposed Apache Tomcat 11.0.0-M5 release is now available for voting. Apache Tomcat 11.0.0-M5 is a milestone release of the 11.0.x branch and has been made to provide users with early access to the new features in Apache Tomcat 11.0.x so that they may provide feedback. The notable changes compared to the previous milestone include: - Reduce the default value of maxParameterCount from 10,000 to 1,000. - Correct a regression in the fix for bug 66442 that meant that streams without a response body did not decrement the active stream count when completing leading to ERR_HTTP2_SERVER_REFUSED_STREAM for some connections. - Expand the validation of the value of the Sec-Websocket-Key header in the HTTP upgrade request that initiates a WebSocket connection. The value is not decoded but it is checked for the correct length and that only valid characters from the base64 alphabet are used. For full details, see the change log: https://nightlies.apache.org/tomcat/tomcat-11.0.x/docs/changelog.html Applications that run on Tomcat 9 and earlier will not run on Tomcat 11 without changes. Java EE applications designed for Tomcat 9 and earlier may be placed in the $CATALINA_BASE/webapps-javaee directory and Tomcat will automatically convert them to Jakarta EE and copy them to the webapps directory. Applications using deprecated APIs may require further changes. It can be obtained from: https://dist.apache.org/repos/dist/dev/tomcat/tomcat-11/v11.0.0-M5/ The Maven staging repo is: https://repository.apache.org/content/repositories/orgapachetomcat-1427 The tag is: https://github.com/apache/tomcat/tree/11.0.0-M5 06977fbea3c82c3d29e544203983dd3b49a632f1 The proposed 11.0.0-M5 release is: [ ] Broken - do not release [ ] Alpha - go ahead and release as 11.0.0-M5 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r61365 - /dev/tomcat/tomcat-11/v11.0.0-M5/ /release/tomcat/tomcat-11/v11.0.0-M5/
Author: markt Date: Wed Apr 19 07:24:54 2023 New Revision: 61365 Log: Release Tomcat 11.0.0-M5 Added: release/tomcat/tomcat-11/v11.0.0-M5/ - copied from r61364, dev/tomcat/tomcat-11/v11.0.0-M5/ Removed: dev/tomcat/tomcat-11/v11.0.0-M5/ - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[GitHub] [tomcat-jakartaee-migration] eirbjo commented on issue #46: "java.util.zip.ZipException: invalid entry size (expected 0 but got 913 bytes)" when opening migrated jar with `java.util.zip.ZipIn
eirbjo commented on issue #46: URL: https://github.com/apache/tomcat-jakartaee-migration/issues/46#issuecomment-1514256218 > @eirbjo Many thanks for your input, that was really helpful. Good luck with your JDK PR Thanks, I hope this Tomcat issue helps showcase that this really is a practical and real issue which should be addressed in the JDK. BTW: I tested the jar in question with my PR, and it parsed just fine. -- 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. To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org 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
svn commit: r61366 - in /release/tomcat: tomcat-10/v10.1.6/ tomcat-11/v11.0.0-M3/
Author: markt Date: Wed Apr 19 07:26:27 2023 New Revision: 61366 Log: Drop older Tomcat releases from CDN Removed: release/tomcat/tomcat-10/v10.1.6/ release/tomcat/tomcat-11/v11.0.0-M3/ - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 66549] Performance issue while accessing application between servers Application hosted on AIX to WINDOWS(Apache Tomcat Configured)
https://bz.apache.org/bugzilla/show_bug.cgi?id=66549 Mark Thomas changed: What|Removed |Added Version|Tomcat 8.5.84 |8.5.84 -- 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
svn commit: r1909236 - in /tomcat/site/trunk: ./ docs/tomcat-11.0-doc/ docs/tomcat-11.0-doc/annotationapi/ docs/tomcat-11.0-doc/annotationapi/jakarta/annotation/ docs/tomcat-11.0-doc/annotationapi/jak
Author: markt Date: Wed Apr 19 08:26:22 2023 New Revision: 1909236 URL: http://svn.apache.org/viewvc?rev=1909236&view=rev Log: Update docs for Tomcat 11.0.0-M5 (alpha) release [This commit notification would consist of 73 parts, which exceeds the limit of 50 ones, so it was shortened to the summary.] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1909237 - in /tomcat/site/trunk: docs/download-11.html docs/index.html docs/migration-11.0.html docs/oldnews.html docs/whichversion.html xdocs/download-11.xml xdocs/index.xml xdocs/migrat
Author: markt Date: Wed Apr 19 08:28:00 2023 New Revision: 1909237 URL: http://svn.apache.org/viewvc?rev=1909237&view=rev Log: Update site for release of Tomcat 11.0.0-M5 (alpha) Modified: tomcat/site/trunk/docs/download-11.html tomcat/site/trunk/docs/index.html tomcat/site/trunk/docs/migration-11.0.html tomcat/site/trunk/docs/oldnews.html tomcat/site/trunk/docs/whichversion.html tomcat/site/trunk/xdocs/download-11.xml tomcat/site/trunk/xdocs/index.xml tomcat/site/trunk/xdocs/migration-11.0.xml tomcat/site/trunk/xdocs/oldnews.xml tomcat/site/trunk/xdocs/whichversion.xml Modified: tomcat/site/trunk/docs/download-11.html URL: http://svn.apache.org/viewvc/tomcat/site/trunk/docs/download-11.html?rev=1909237&r1=1909236&r2=1909237&view=diff == --- tomcat/site/trunk/docs/download-11.html (original) +++ tomcat/site/trunk/docs/download-11.html Wed Apr 19 08:28:00 2023 @@ -19,7 +19,7 @@ Quick Navigation -[define v]11.0.0-M4[end] +[define v]11.0.0-M5[end] https://downloads.apache.org/tomcat/tomcat-11/KEYS";>KEYS | [v] (alpha) | Browse | Modified: tomcat/site/trunk/docs/index.html URL: http://svn.apache.org/viewvc/tomcat/site/trunk/docs/index.html?rev=1909237&r1=1909236&r2=1909237&view=diff == --- tomcat/site/trunk/docs/index.html (original) +++ tomcat/site/trunk/docs/index.html Wed Apr 19 08:28:00 2023 @@ -34,6 +34,40 @@ wiki page. Apache Tomcat, Tomcat, Apache, the Apache feather, and the Apache Tomcat project logo are trademarks of the Apache Software Foundation. +2023-04-19 Tomcat 11.0.0-M4 Released + +The Apache Tomcat Project is proud to announce the release of version 11.0.0-M5 +(alpha) of Apache Tomcat. This release is a milestone release and is targeted at +Jakarta EE 11. +Users of Tomcat 10 onwards should be aware that, as a result of the move from +Java EE to Jakarta EE as part of the transfer of Java EE to the Eclipse +Foundation, the primary package for all implemented APIs has changed from +javax.* to jakarta.*. This will almost certainly +require code changes to enable applications to migrate from Tomcat 9 and earlier +to Tomcat 10 and later. A +https://github.com/apache/tomcat-jakartaee-migration";>migration +tool is available to aid this process. +The notable changes in this release are: + +Reduce the default value of maxParameterCount from 10,000 to 1,000. +Correct a regression in the fix for bug 66442 that meant that streams +without a response body did not decrement the active stream count when +completing leading to ERR_HTTP2_SERVER_REFUSED_STREAM for some +connections. +Expand the validation of the value of the Sec-Websocket-Key header in the +HTTP upgrade request that initiates a WebSocket connection. The value is not +decoded but it is checked for the correct length and that only valid +characters from the base64 alphabet are used. + + +Full details of these changes, and all the other changes, are available in the +Tomcat 11 +(alpha) changelog. + + + +https://tomcat.apache.org/download-11.cgi";>Download + 2023-04-18 Tomcat 9.0.74 Released The Apache Tomcat Project is proud to announce the release of version 9.0.74 @@ -58,41 +92,6 @@ changelog. https://tomcat.apache.org/download-90.cgi";>Download -2023-03-06 Tomcat 11.0.0-M4 Released - -The Apache Tomcat Project is proud to announce the release of version 11.0.0-M4 -(alpha) of Apache Tomcat. This release is a milestone release and is targeted at -Jakarta EE 11. -Users of Tomcat 10 onwards should be aware that, as a result of the move from -Java EE to Jakarta EE as part of the transfer of Java EE to the Eclipse -Foundation, the primary package for all implemented APIs has changed from -javax.* to jakarta.*. This will almost certainly -require code changes to enable applications to migrate from Tomcat 9 and earlier -to Tomcat 10 and later. A -https://github.com/apache/tomcat-jakartaee-migration";>migration -tool is under development to aid this process. -The notable changes in this release are: - - Revert the switch to using the ServiceLoader mechanism to load the custom - URL protocol handlers that Tomcat uses. The original system property based - approach has been restored. - Provide an implementation of the sub-set of JavaBeans support that does - not depend on the java.beans package. This for use by Expression Language - when the java.desktop module (which is where the java.beans package - resides) is not available. - Restore inline state after async operation in NIO2, to account the fact - that unexpected exceptions are sometimes thrown by the implementation. - Patch submitted by zhougang. - - -Full details of these changes, and all the other changes, are available in the -Tomcat 11 -(alpha) changelog. - - - -https://tomcat.apa
[ANN] Apache Tomcat 11.0.0-M5 (alpha) available
The Apache Tomcat team announces the immediate availability of Apache Tomcat 11.0.0-M5 (alpha). Apache Tomcat 11 is an open source software implementation of the Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Authentication and Jakarta Annotations specifications. Users of Tomcat 10 onwards should be aware that, as a result of the move from Java EE to Jakarta EE as part of the transfer of Java EE to the Eclipse Foundation, the primary package for all implemented APIs has changed from javax.* to jakarta.*. This will almost certainly require code changes to enable applications to migrate from Tomcat 9 and earlier to Tomcat 10 and later. A migration tool is available to aid this process. Apache Tomcat 11.0.0-M5 is a milestone release of the 11.0.x branch and has been made to provide users with early access to the new features in Apache Tomcat 11.0.x so that they may provide feedback. The notable changes compared to 11.0.0-M4 include: - Reduce the default value of maxParameterCount from 10,000 to 1,000. - Correct a regression in the fix for bug 66442 that meant that streams without a response body did not decrement the active stream count when completing leading to ERR_HTTP2_SERVER_REFUSED_STREAM for some connections. - Expand the validation of the value of the Sec-Websocket-Key header in the HTTP upgrade request that initiates a WebSocket connection. The value is not decoded but it is checked for the correct length and that only valid characters from the base64 alphabet are used. Please refer to the change log for the complete list of changes: http://tomcat.apache.org/tomcat-11.0-doc/changelog.html Downloads: http://tomcat.apache.org/download-11.cgi Migration guides from Apache Tomcat 8.5.x, 9.0.x and 10.1.x: http://tomcat.apache.org/migration.html Enjoy! - The Apache Tomcat team - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1909239 - in /tomcat/site/trunk: docs/index.html xdocs/index.xml
Author: markt Date: Wed Apr 19 08:36:09 2023 New Revision: 1909239 URL: http://svn.apache.org/viewvc?rev=1909239&view=rev Log: Fix version in section heading Modified: tomcat/site/trunk/docs/index.html tomcat/site/trunk/xdocs/index.xml Modified: tomcat/site/trunk/docs/index.html URL: http://svn.apache.org/viewvc/tomcat/site/trunk/docs/index.html?rev=1909239&r1=1909238&r2=1909239&view=diff == --- tomcat/site/trunk/docs/index.html (original) +++ tomcat/site/trunk/docs/index.html Wed Apr 19 08:36:09 2023 @@ -34,7 +34,7 @@ wiki page. Apache Tomcat, Tomcat, Apache, the Apache feather, and the Apache Tomcat project logo are trademarks of the Apache Software Foundation. -2023-04-19 Tomcat 11.0.0-M4 Released +2023-04-19 Tomcat 11.0.0-M5 Released The Apache Tomcat Project is proud to announce the release of version 11.0.0-M5 (alpha) of Apache Tomcat. This release is a milestone release and is targeted at Modified: tomcat/site/trunk/xdocs/index.xml URL: http://svn.apache.org/viewvc/tomcat/site/trunk/xdocs/index.xml?rev=1909239&r1=1909238&r2=1909239&view=diff == --- tomcat/site/trunk/xdocs/index.xml (original) +++ tomcat/site/trunk/xdocs/index.xml Wed Apr 19 08:36:09 2023 @@ -55,7 +55,7 @@ project logo are trademarks of the Apach - + The Apache Tomcat Project is proud to announce the release of version 11.0.0-M5 (alpha) of Apache Tomcat. This release is a milestone release and is targeted at - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
New unit test failure for JDK21 EA (new charset)
Hi there, I get a (not very important) unit test failure for all tags of this month when running with openjdk version "21-ea" 2023-09-19 OpenJDK Runtime Environment (build 21-ea+16-1326) OpenJDK 64-Bit Server VM (build 21-ea+16-1326, mixed mode, sharing) Test output is: Testsuite: org.apache.tomcat.util.buf.TestCharsetCache Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.36 sec - Standard Output --- "gb18030-2022" - --- Testcase: testAllKnownCharsets took 0.326 sec FAILED null junit.framework.AssertionFailedError at org.apache.tomcat.util.buf.TestCharsetCache.testAllKnownCharsets(TestCharsetCache.java:76) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) According to https://jdk.java.net/21/release-notes, this new charset was introduced in JVM21 EA build 12. My failure is for build 16, I have not tested it with the current build 18. Thanks and regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [tomcat] branch 8.5.x updated: Support RFC 7616. Add support for multiple algorithms.
Hi Mark, only with Java 1.7.0 and TC 8.5 the new test throws an ERROR. It occurs many times, all almost looking the same, here's an example: 16-Apr-2023 22:47:40.891 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testDigestAuthentication[12: Algorithms[MD5,SHA-256,SHA-512-256], Algorithm[MD5], PwdDigest[false], AuthExpected[user]]] 16-Apr-2023 22:47:40.893 WARNING [main] org.apache.catalina.authenticator.DigestAuthenticator.initAlgorithms Unable to configure DIGEST authentication to use the algorithms [SHA-512/256] as [{1}] is not supported by the JRE. java.security.NoSuchAlgorithmException: SHA-512/256 MessageDigest not available at sun.security.jca.GetInstance.getInstance(GetInstance.java:159) at java.security.Security.getImpl(Security.java:695) at java.security.MessageDigest.getInstance(MessageDigest.java:167) at org.apache.tomcat.util.security.ConcurrentMessageDigest.init(ConcurrentMessageDigest.java:118) at org.apache.catalina.authenticator.DigestAuthenticator.initAlgorithms(DigestAuthenticator.java:248) at org.apache.catalina.authenticator.DigestAuthenticator.setAlgorithms(DigestAuthenticator.java:235) at org.apache.catalina.authenticator.TestDigestAuthenticatorAlgorithms.testDigestAuthentication(TestDigestAuthenticatorAlgorithms.java:171) Probably on of the troubles supporting the ols JVM version provides. Thanks and regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [tomcat] branch 8.5.x updated: Align with 9.0.x
Hi Mark, Am 08.03.23 um 20:15 schrieb ma...@apache.org: ... diff --git a/test/org/apache/tomcat/websocket/TestWsWebSocketContainerSSL.java b/test/org/apache/tomcat/websocket/TestWsWebSocketContainerSSL.java new file mode 100644 index 00..eb44ac6aed --- /dev/null +++ b/test/org/apache/tomcat/websocket/TestWsWebSocketContainerSSL.java @@ -0,0 +1,76 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.tomcat.websocket; + +import java.net.URI; +import java.util.Queue; +import java.util.concurrent.CountDownLatch; +import java.util.concurrent.TimeUnit; + +import javax.websocket.ClientEndpointConfig; +import javax.websocket.ContainerProvider; +import javax.websocket.Session; +import javax.websocket.WebSocketContainer; + +import org.junit.Assert; +import org.junit.Test; + +import org.apache.catalina.Context; +import org.apache.catalina.servlets.DefaultServlet; +import org.apache.catalina.startup.Tomcat; +import org.apache.tomcat.util.net.TesterSupport; +import org.apache.tomcat.websocket.TesterMessageCountClient.BasicText; +import org.apache.tomcat.websocket.TesterMessageCountClient.TesterProgrammaticEndpoint; + +public class TestWsWebSocketContainerSSL extends WebSocketBaseTest { + +private static final String MESSAGE_STRING_1 = "qwerty"; + +@Test +public void testConnectToServerEndpointSSL() throws Exception { + +Tomcat tomcat = getTomcatInstance(); +// No file system docBase required +Context ctx = tomcat.addContext("", null); +ctx.addApplicationListener(TesterEchoServer.Config.class.getName()); +Tomcat.addServlet(ctx, "default", new DefaultServlet()); +ctx.addServletMappingDecoded("/", "default"); + +TesterSupport.initSsl(tomcat); + +tomcat.start(); + +WebSocketContainer wsContainer = ContainerProvider.getWebSocketContainer(); +ClientEndpointConfig clientEndpointConfig = ClientEndpointConfig.Builder.create().build(); + clientEndpointConfig.getUserProperties().put(org.apache.tomcat.websocket.Constants.SSL_TRUSTSTORE_PROPERTY, +TesterSupport.CA_JKS); +Session wsSession = wsContainer.connectToServer(TesterProgrammaticEndpoint.class, clientEndpointConfig, +new URI("wss://localhost" + ":" + getPort() + TesterEchoServer.Config.PATH_ASYNC)); +CountDownLatch latch = new CountDownLatch(1); +BasicText handler = new BasicText(latch); +wsSession.addMessageHandler(handler); +wsSession.getBasicRemote().sendText(MESSAGE_STRING_1); + +boolean latchResult = handler.getLatch().await(10, TimeUnit.SECONDS); + +Assert.assertTrue(latchResult); + +Queue messages = handler.getMessages(); +Assert.assertEquals(1, messages.size()); +Assert.assertEquals(MESSAGE_STRING_1, messages.peek()); +} +} ... this new test fails for TC 8.5.88 with Java 1.7.0 and tcnative with OpenSSL 3.x. Not failing with newer JVM version or JSSE. tcnative is 1.2.36 OpenSSL 3.0.8, tcnative 2.0.3 build with OpenSSL 3.0.8 or OpenSSL 3.1.0beta1. Using 1.2.36 with OpenSSL 1.1.1t is not failing. Error output is: Testsuite: org.apache.tomcat.websocket.TestWsWebSocketContainerSSL Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 2.853 sec - Standard Error - 17-Apr-2023 00:28:31.122 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testConnectToServerEndpointSSL] 17-Apr-2023 00:28:31.506 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded Apache Tomcat Native library [1.2.36] using APR version [1.7.2sp1]. 17-Apr-2023 00:28:31.506 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true], UDS [{4}]. 17-Apr-2023 00:28:31.506 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true] 17-Apr-2023 00:28:31.514 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 3.0.8 7 Feb 2023] 17-Apr-2023 00:28:32.406 INFO
[tomcat] branch 8.5.x updated: Fix failures on Java 7 where SHA_512_256 is not available
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 47c92c5fa7 Fix failures on Java 7 where SHA_512_256 is not available 47c92c5fa7 is described below commit 47c92c5fa70976eb9546b002a83b3932c3e680ab Author: Mark Thomas AuthorDate: Wed Apr 19 12:03:55 2023 +0100 Fix failures on Java 7 where SHA_512_256 is not available --- .../TestDigestAuthenticatorAlgorithms.java | 46 -- 1 file changed, 34 insertions(+), 12 deletions(-) diff --git a/test/org/apache/catalina/authenticator/TestDigestAuthenticatorAlgorithms.java b/test/org/apache/catalina/authenticator/TestDigestAuthenticatorAlgorithms.java index 66e51187b5..99a1b83675 100644 --- a/test/org/apache/catalina/authenticator/TestDigestAuthenticatorAlgorithms.java +++ b/test/org/apache/catalina/authenticator/TestDigestAuthenticatorAlgorithms.java @@ -16,6 +16,8 @@ */ package org.apache.catalina.authenticator; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -57,25 +59,42 @@ public class TestDigestAuthenticatorAlgorithms extends TomcatBaseTest { private static String REALM_NAME = "TestRealm"; private static String CNONCE = "cnonce"; +private static final boolean HAS_SHA_512_256; + private static final List> ALGORITHM_PERMUTATIONS = new ArrayList<>(); static { +boolean digestSupported = false; +try { +MessageDigest.getInstance(AuthDigest.SHA_512_256.getJavaName()); +digestSupported = true; +} catch (NoSuchAlgorithmException nsae) { +// Ignore +} +HAS_SHA_512_256 = digestSupported; + ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5)); ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_256, AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_512_256, AuthDigest.SHA_256)); +if (HAS_SHA_512_256) { +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_256, AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_512_256, AuthDigest.SHA_256)); +} ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256)); ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.MD5)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.MD5, AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.SHA_512_256, AuthDigest.MD5)); - -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.MD5)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.MD5, AuthDigest.SHA_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.SHA_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.SHA_256, AuthDigest.MD5)); +if (HAS_SHA_512_256) { +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.MD5, AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.SHA_512_256, AuthDigest.MD5)); +} + +if (HAS_SHA_512_256) { +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.MD5)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.MD5, AuthDigest.SHA_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.SHA_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.SHA_256, AuthDigest.MD5)); +} } @Parameterized.Parameters(name = "{index}: Algorithms[{0}], Algorithm[{1}], PwdDigest[{2}], AuthExpected[{3}]") @@ -90,6 +109,9 @@ public class TestDigestAuthenticatorAlgorithms extends TomcatBaseTest { } , algorithms); for (AuthDigest algorithm
[tomcat] branch 8.5.x updated: Provide correct parameters for error message
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 5c161bb660 Provide correct parameters for error message 5c161bb660 is described below commit 5c161bb6602d366ef53a79149ade932dd0f80f43 Author: Mark Thomas AuthorDate: Wed Apr 19 12:04:16 2023 +0100 Provide correct parameters for error message --- java/org/apache/catalina/authenticator/DigestAuthenticator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/org/apache/catalina/authenticator/DigestAuthenticator.java b/java/org/apache/catalina/authenticator/DigestAuthenticator.java index 47b8835a5a..0295cc21ca 100644 --- a/java/org/apache/catalina/authenticator/DigestAuthenticator.java +++ b/java/org/apache/catalina/authenticator/DigestAuthenticator.java @@ -248,7 +248,7 @@ public class DigestAuthenticator extends AuthenticatorBase { ConcurrentMessageDigest.init(algorithm.getJavaName()); } catch (NoSuchAlgorithmException e) { // In theory, a JRE can choose not to implement SHA-512/256 - log.warn(sm.getString("digestAuthenticator.unsupportedAlgorithm", algorithm.getJavaName()), e); + log.warn(sm.getString("digestAuthenticator.unsupportedAlgorithm", algorithms, algorithm.getJavaName()), e); algorithmIterator.remove(); } } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [tomcat] branch 8.5.x updated: Support RFC 7616. Add support for multiple algorithms.
On 19/04/2023 11:29, Rainer Jung wrote: Hi Mark, only with Java 1.7.0 and TC 8.5 the new test throws an ERROR. It occurs many times, all almost looking the same, here's an example: Thanks for the heads up. This is now fixed. 16-Apr-2023 22:47:40.891 INFO [main] org.apache.catalina.startup.LoggingBaseTest.setUp Starting test case [testDigestAuthentication[12: Algorithms[MD5,SHA-256,SHA-512-256], Algorithm[MD5], PwdDigest[false], AuthExpected[user]]] 16-Apr-2023 22:47:40.893 WARNING [main] org.apache.catalina.authenticator.DigestAuthenticator.initAlgorithms Unable to configure DIGEST authentication to use the algorithms [SHA-512/256] as [{1}] is not supported by the JRE. And so is this broken error message. Mark java.security.NoSuchAlgorithmException: SHA-512/256 MessageDigest not available at sun.security.jca.GetInstance.getInstance(GetInstance.java:159) at java.security.Security.getImpl(Security.java:695) at java.security.MessageDigest.getInstance(MessageDigest.java:167) at org.apache.tomcat.util.security.ConcurrentMessageDigest.init(ConcurrentMessageDigest.java:118) at org.apache.catalina.authenticator.DigestAuthenticator.initAlgorithms(DigestAuthenticator.java:248) at org.apache.catalina.authenticator.DigestAuthenticator.setAlgorithms(DigestAuthenticator.java:235) at org.apache.catalina.authenticator.TestDigestAuthenticatorAlgorithms.testDigestAuthentication(TestDigestAuthenticatorAlgorithms.java:171) Probably on of the troubles supporting the ols JVM version provides. Thanks and regards, Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch main updated: Provide correct parameters for error message
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 dda468b4d2 Provide correct parameters for error message dda468b4d2 is described below commit dda468b4d24dc9546a2e41516016b5d8e7e92752 Author: Mark Thomas AuthorDate: Wed Apr 19 12:04:16 2023 +0100 Provide correct parameters for error message --- java/org/apache/catalina/authenticator/DigestAuthenticator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/org/apache/catalina/authenticator/DigestAuthenticator.java b/java/org/apache/catalina/authenticator/DigestAuthenticator.java index 2843abdbe0..065efce308 100644 --- a/java/org/apache/catalina/authenticator/DigestAuthenticator.java +++ b/java/org/apache/catalina/authenticator/DigestAuthenticator.java @@ -243,7 +243,7 @@ public class DigestAuthenticator extends AuthenticatorBase { ConcurrentMessageDigest.init(algorithm.getJavaName()); } catch (NoSuchAlgorithmException e) { // In theory, a JRE can choose not to implement SHA-512/256 - log.warn(sm.getString("digestAuthenticator.unsupportedAlgorithm", algorithm.getJavaName()), e); + log.warn(sm.getString("digestAuthenticator.unsupportedAlgorithm", algorithms, algorithm.getJavaName()), e); algorithmIterator.remove(); } } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[tomcat] branch 10.1.x updated: Provide correct parameters for error message
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 The following commit(s) were added to refs/heads/10.1.x by this push: new c3bb477ffb Provide correct parameters for error message c3bb477ffb is described below commit c3bb477ffbc5065347787d455199592a678a25a4 Author: Mark Thomas AuthorDate: Wed Apr 19 12:04:16 2023 +0100 Provide correct parameters for error message --- java/org/apache/catalina/authenticator/DigestAuthenticator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/org/apache/catalina/authenticator/DigestAuthenticator.java b/java/org/apache/catalina/authenticator/DigestAuthenticator.java index f80f2181e9..d65eda065d 100644 --- a/java/org/apache/catalina/authenticator/DigestAuthenticator.java +++ b/java/org/apache/catalina/authenticator/DigestAuthenticator.java @@ -243,7 +243,7 @@ public class DigestAuthenticator extends AuthenticatorBase { ConcurrentMessageDigest.init(algorithm.getJavaName()); } catch (NoSuchAlgorithmException e) { // In theory, a JRE can choose not to implement SHA-512/256 - log.warn(sm.getString("digestAuthenticator.unsupportedAlgorithm", algorithm.getJavaName()), e); + log.warn(sm.getString("digestAuthenticator.unsupportedAlgorithm", algorithms, algorithm.getJavaName()), e); algorithmIterator.remove(); } } - 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: Provide correct parameters for error message
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 e023970237 Provide correct parameters for error message e023970237 is described below commit e023970237f766be688ea50f9db89591ba44d130 Author: Mark Thomas AuthorDate: Wed Apr 19 12:04:16 2023 +0100 Provide correct parameters for error message --- java/org/apache/catalina/authenticator/DigestAuthenticator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/org/apache/catalina/authenticator/DigestAuthenticator.java b/java/org/apache/catalina/authenticator/DigestAuthenticator.java index 5fa8b3e69b..49f7eced9f 100644 --- a/java/org/apache/catalina/authenticator/DigestAuthenticator.java +++ b/java/org/apache/catalina/authenticator/DigestAuthenticator.java @@ -243,7 +243,7 @@ public class DigestAuthenticator extends AuthenticatorBase { ConcurrentMessageDigest.init(algorithm.getJavaName()); } catch (NoSuchAlgorithmException e) { // In theory, a JRE can choose not to implement SHA-512/256 - log.warn(sm.getString("digestAuthenticator.unsupportedAlgorithm", algorithm.getJavaName()), e); + log.warn(sm.getString("digestAuthenticator.unsupportedAlgorithm", algorithms, algorithm.getJavaName()), e); algorithmIterator.remove(); } } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat 10.1.8
On Fri, Apr 14, 2023 at 11:17 PM Christopher Schultz < ch...@christopherschultz.net> wrote: > The proposed Apache Tomcat 10.1.8 release is now available for > voting. > > The notable changes compared to 10.1.7 are: > > - Reduce the default value of maxParameterCount from 10,000 to 1,000. > > - Correct a regression in the fix for bug 66442 that meant that streams >without a response body did not decrement the active stream count >when completing leading to ERR_HTTP2_SERVER_REFUSED_STREAM for some >connections. > > - Expand the validation of the value of the Sec-Websocket-Key header in >the HTTP upgrade request that initiates a WebSocket connection. The >value is not decoded but it is checked for the correct length and that >only valid characters from the base64 alphabet are used. > > - Implement RFC 9239; note the MIME types for Javascript has changed >to text/javascript. > > For full details, see the change log: > https://nightlies.apache.org/tomcat/tomcat-10.1.x/docs/changelog.html > > Applications that run on Tomcat 9 and earlier will not run on Tomcat 10 > without changes. Java EE applications designed for Tomcat 9 and earlier > may be placed in the $CATALINA_BASE/webapps-javaee directory and Tomcat > will automatically convert them to Jakarta EE and copy them to the > webapps directory. > > It can be obtained from: > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-10/v10.1.8/ > > The Maven staging repo is: > https://repository.apache.org/content/repositories/orgapachetomcat-1429 > > The tag is: > https://github.com/apache/tomcat/tree/10.1.8 > 477b206c9f05d2e70438a440bd40ab523662 > > The proposed 10.1.8 release is: > [ ] Broken - do not release > [X ] Stable - go ahead and release as 10.1.8 > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > >
Re: [tomcat] branch 8.5.x updated: Fix failures on Java 7 where SHA_512_256 is not available
Mark, On 4/19/23 07:04, ma...@apache.org wrote: 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 47c92c5fa7 Fix failures on Java 7 where SHA_512_256 is not available 47c92c5fa7 is described below commit 47c92c5fa70976eb9546b002a83b3932c3e680ab Author: Mark Thomas AuthorDate: Wed Apr 19 12:03:55 2023 +0100 Fix failures on Java 7 where SHA_512_256 is not available Any reason not to just do this with all of the various algorithms? Also, I didn't check, but do we explicitly clear-out the "disabled algorithms" when running tests, to ensure we test everything and don't cause any failures due to certain algorithms (e.g. MD5 vvia TLS) being disabled? -chris --- .../TestDigestAuthenticatorAlgorithms.java | 46 -- 1 file changed, 34 insertions(+), 12 deletions(-) diff --git a/test/org/apache/catalina/authenticator/TestDigestAuthenticatorAlgorithms.java b/test/org/apache/catalina/authenticator/TestDigestAuthenticatorAlgorithms.java index 66e51187b5..99a1b83675 100644 --- a/test/org/apache/catalina/authenticator/TestDigestAuthenticatorAlgorithms.java +++ b/test/org/apache/catalina/authenticator/TestDigestAuthenticatorAlgorithms.java @@ -16,6 +16,8 @@ */ package org.apache.catalina.authenticator; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -57,25 +59,42 @@ public class TestDigestAuthenticatorAlgorithms extends TomcatBaseTest { private static String REALM_NAME = "TestRealm"; private static String CNONCE = "cnonce"; +private static final boolean HAS_SHA_512_256; + private static final List> ALGORITHM_PERMUTATIONS = new ArrayList<>(); static { +boolean digestSupported = false; +try { +MessageDigest.getInstance(AuthDigest.SHA_512_256.getJavaName()); +digestSupported = true; +} catch (NoSuchAlgorithmException nsae) { +// Ignore +} +HAS_SHA_512_256 = digestSupported; + ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5)); ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_256, AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_512_256, AuthDigest.SHA_256)); +if (HAS_SHA_512_256) { +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_256, AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.MD5, AuthDigest.SHA_512_256, AuthDigest.SHA_256)); +} ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256)); ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.MD5)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.MD5, AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.SHA_512_256, AuthDigest.MD5)); - -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.MD5)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.MD5, AuthDigest.SHA_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.SHA_256)); -ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.SHA_256, AuthDigest.MD5)); +if (HAS_SHA_512_256) { +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.MD5, AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_256, AuthDigest.SHA_512_256, AuthDigest.MD5)); +} + +if (HAS_SHA_512_256) { +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.MD5)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.MD5, AuthDigest.SHA_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SHA_512_256, AuthDigest.SHA_256)); +ALGORITHM_PERMUTATIONS.add(Arrays.asList(AuthDigest.SH
Re: [VOTE] Release Apache Tomcat 8.5.88
All, On 4/14/23 16:38, Christopher Schultz wrote: The proposed Apache Tomcat 8.5.88 release is now available for voting. The notable changes compared to 8.5.87 are: - Reduce the default value of maxParameterCount from 10,000 to 1,000. - Correct a regression in the fix for bug 66442 that meant that streams without a response body did not decrement the active stream count when completing, leading to ERR_HTTP2_SERVER_REFUSED_STREAM for some connections. - Refactor synchronization blocks locking on SocketWrapper to use ReentrantLock to support users wishing to experiment with project Loom. - Implement RFC 9239; note the MIME types for Javascript has changed to text/javascript. Along with lots of other bug fixes and improvements. For full details, see the changelog: https://nightlies.apache.org/tomcat/tomcat-8.5.x/docs/changelog.html It can be obtained from: https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.88/ The Maven staging repo is: https://repository.apache.org/content/repositories/orgapachetomcat-1430 The tag is: https://github.com/apache/tomcat/tree/8.5.88/ The proposed 8.5.88 release is: [ ] Broken - do not release [X] Stable - go ahead and release as 8.5.88 (stable) Works with a plain-servlet-based application in a development environment. Unit tests for PEM files fail due to a known environmental issue. Details: * Environment * Java (build): openjdk version "1.8.0_292" OpenJDK Runtime Environment (build 1.8.0_292-8u292-b10-0+deb9u1-b10) OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode) * Java (test): openjdk version "1.8.0_292" OpenJDK Runtime Environment (build 1.8.0_292-8u292-b10-0+deb9u1-b10) OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode) * OS: Linux 5.10.0-19-amd64 x86_64 * cc: cc (Debian 10.2.1-6) 10.2.1 20210110 * make: GNU Make 4.3 * OpenSSL: OpenSSL 1.1.1 11 Sep 2018 * APR: 1.7.0 * * Valid SHA-512 signature for apache-tomcat-8.5.88.zip * Valid GPG signature for apache-tomcat-8.5.88.zip * Valid SHA-512 signature for apache-tomcat-8.5.88.tar.gz * Valid GPG signature for apache-tomcat-8.5.88.tar.gz * Valid SHA-512 signature for apache-tomcat-8.5.88.exe * Valid GPG signature for apache-tomcat-8.5.88.exe * Valid Windows Digital Signature for apache-tomcat-8.5.88.exe * Valid SHA512 signature for apache-tomcat-8.5.88-src.zip * Valid GPG signature for apache-tomcat-8.5.88-src.zip * Valid SHA512 signature for apache-tomcat-8.5.88-src.tar.gz * Valid GPG signature for apache-tomcat-8.5.88-src.tar.gz * * Binary Zip and tarball: Same * Source Zip and tarball: Same * * Building dependencies returned: 0 * tcnative builds cleanly * Tomcat builds cleanly * Junit Tests: FAILED * * Tests that failed: * org.apache.tomcat.util.net.jsse.TestPEMFile.APR.txt * org.apache.tomcat.util.net.jsse.TestPEMFile.NIO.txt * org.apache.tomcat.util.net.jsse.TestPEMFile.NIO2.txt - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Checkstyle version for 8.5.x
All, I'm having trouble running my test suite on 8.5.88 on MacOS and the latest failure is that the Checkstyle plug-in has .class files with version 55 and Java 8 only supports up to version 52. This is 1.8.0_232 from AdoptOpenJDK. Is the intent of Tomcat 8.5.x to be buildable with older releases, or are we requiring Java 11 to perform a complete build (which includes checkstyle)? -chris - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [tomcat] branch 8.5.x updated: Fix failures on Java 7 where SHA_512_256 is not available
On 19/04/2023 14:16, Christopher Schultz wrote: Mark, On 4/19/23 07:04, ma...@apache.org wrote: 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 47c92c5fa7 Fix failures on Java 7 where SHA_512_256 is not available 47c92c5fa7 is described below commit 47c92c5fa70976eb9546b002a83b3932c3e680ab Author: Mark Thomas AuthorDate: Wed Apr 19 12:03:55 2023 +0100 Fix failures on Java 7 where SHA_512_256 is not available Any reason not to just do this with all of the various algorithms? The JLS requires that the other algorithms used by that test are supported. Also, I didn't check, but do we explicitly clear-out the "disabled algorithms" when running tests, to ensure we test everything and don't cause any failures due to certain algorithms (e.g. MD5 vvia TLS) being disabled? From memory, we handle that on a case by case basis. Some we skip the test, some we explicitly enable everything. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Checkstyle version for 8.5.x
On 19/04/2023 14:50, Christopher Schultz wrote: All, I'm having trouble running my test suite on 8.5.88 on MacOS and the latest failure is that the Checkstyle plug-in has .class files with version 55 and Java 8 only supports up to version 52. This is 1.8.0_232 from AdoptOpenJDK. Is the intent of Tomcat 8.5.x to be buildable with older releases, or are we requiring Java 11 to perform a complete build (which includes checkstyle)? You should be able to build it with Java 7 (you'll need to set some properties in build.properties) but if you want all the extras (including CheckStyle) you need to use Java 11. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[VOTE][RESULT] Release Apache Tomcat 8.5.88
All, The following votes were cast: +1: markt[*], remm, fschumacher, schultz There were no other votes, therefore the vote passed. Thanks, -chris [*] markt had a report that the build was not byte-for-byte reproducible with a specific compiler configuration which does not impact the release in the eyes of the PMC. On 4/14/23 16:38, Christopher Schultz wrote: The proposed Apache Tomcat 8.5.88 release is now available for voting. The notable changes compared to 8.5.87 are: - Reduce the default value of maxParameterCount from 10,000 to 1,000. - Correct a regression in the fix for bug 66442 that meant that streams without a response body did not decrement the active stream count when completing, leading to ERR_HTTP2_SERVER_REFUSED_STREAM for some connections. - Refactor synchronization blocks locking on SocketWrapper to use ReentrantLock to support users wishing to experiment with project Loom. - Implement RFC 9239; note the MIME types for Javascript has changed to text/javascript. Along with lots of other bug fixes and improvements. For full details, see the changelog: https://nightlies.apache.org/tomcat/tomcat-8.5.x/docs/changelog.html It can be obtained from: https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.88/ The Maven staging repo is: https://repository.apache.org/content/repositories/orgapachetomcat-1430 The tag is: https://github.com/apache/tomcat/tree/8.5.88/ The proposed 8.5.88 release is: [ ] Broken - do not release [ ] Stable - go ahead and release as 8.5.88 (stable) - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[VOTE][RESULT] Release Apache Tomcat 10.1.8
All, The following votes were cast: +1: markt[*], lihan, remm, fschumacher, schultz Non-binding: +1: Dimitris Soumis There were no other votes cast, therefore the vote passes. Thanks, -chris On 4/14/23 16:08, Christopher Schultz wrote: The proposed Apache Tomcat 10.1.8 release is now available for voting. The notable changes compared to 10.1.7 are: - Reduce the default value of maxParameterCount from 10,000 to 1,000. - Correct a regression in the fix for bug 66442 that meant that streams without a response body did not decrement the active stream count when completing leading to ERR_HTTP2_SERVER_REFUSED_STREAM for some connections. - Expand the validation of the value of the Sec-Websocket-Key header in the HTTP upgrade request that initiates a WebSocket connection. The value is not decoded but it is checked for the correct length and that only valid characters from the base64 alphabet are used. - Implement RFC 9239; note the MIME types for Javascript has changed to text/javascript. For full details, see the change log: https://nightlies.apache.org/tomcat/tomcat-10.1.x/docs/changelog.html Applications that run on Tomcat 9 and earlier will not run on Tomcat 10 without changes. Java EE applications designed for Tomcat 9 and earlier may be placed in the $CATALINA_BASE/webapps-javaee directory and Tomcat will automatically convert them to Jakarta EE and copy them to the webapps directory. It can be obtained from: https://dist.apache.org/repos/dist/dev/tomcat/tomcat-10/v10.1.8/ The Maven staging repo is: https://repository.apache.org/content/repositories/orgapachetomcat-1429 The tag is: https://github.com/apache/tomcat/tree/10.1.8 477b206c9f05d2e70438a440bd40ab523662 The proposed 10.1.8 release is: [ ] Broken - do not release [ ] Stable - go ahead and release as 10.1.8 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r61370 - /dev/tomcat/tomcat-8/v8.5.88/ /release/tomcat/tomcat-8/v8.5.88/
Author: schultz Date: Wed Apr 19 17:11:19 2023 New Revision: 61370 Log: Promote Tomcat 8.5.88 to release. Added: release/tomcat/tomcat-8/v8.5.88/ - copied from r61369, dev/tomcat/tomcat-8/v8.5.88/ Removed: dev/tomcat/tomcat-8/v8.5.88/ - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r61371 - /dev/tomcat/tomcat-10/v10.1.8/ /release/tomcat/tomcat-10/v10.1.8/
Author: schultz Date: Wed Apr 19 17:12:01 2023 New Revision: 61371 Log: Promote Tomcat 10.1.8 to release. Added: release/tomcat/tomcat-10/v10.1.8/ - copied from r61370, dev/tomcat/tomcat-10/v10.1.8/ Removed: dev/tomcat/tomcat-10/v10.1.8/ - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1909254 - /tomcat/site/trunk/tools/migration.pl
Author: schultz Date: Wed Apr 19 17:35:17 2023 New Revision: 1909254 URL: http://svn.apache.org/viewvc?rev=1909254&view=rev Log: Incluce selected attirbute value ="selected" because this is XML and not HTML. Modified: tomcat/site/trunk/tools/migration.pl Modified: tomcat/site/trunk/tools/migration.pl URL: http://svn.apache.org/viewvc/tomcat/site/trunk/tools/migration.pl?rev=1909254&r1=1909253&r2=1909254&view=diff == --- tomcat/site/trunk/tools/migration.pl (original) +++ tomcat/site/trunk/tools/migration.pl Wed Apr 19 17:35:17 2023 @@ -65,7 +65,7 @@ while(<>) { if ( // ) { $found_old_release_unselected = 1; - s/">/" selected>/; + s/">/" selected="selected">/; print; # Dump the altered line @@ -84,7 +84,7 @@ while(<>) { print; # Dump the altered line # Add the new release at the end - print "$new_release\n"; + print "$new_release\n"; } else { print; } - 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 TLS based test when running with Java 7, APR & OpenSSl 3+
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 4fecf7ce9c Fix TLS based test when running with Java 7, APR & OpenSSl 3+ 4fecf7ce9c is described below commit 4fecf7ce9cecd658d1ac53f740cb3dac83f1c1a0 Author: Mark Thomas AuthorDate: Wed Apr 19 18:45:08 2023 +0100 Fix TLS based test when running with Java 7, APR & OpenSSl 3+ Based on similar fix in TestWebSocketFrameClientSSL --- test/org/apache/tomcat/websocket/TestWsWebSocketContainerSSL.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test/org/apache/tomcat/websocket/TestWsWebSocketContainerSSL.java b/test/org/apache/tomcat/websocket/TestWsWebSocketContainerSSL.java index eb44ac6aed..58bbacf4db 100644 --- a/test/org/apache/tomcat/websocket/TestWsWebSocketContainerSSL.java +++ b/test/org/apache/tomcat/websocket/TestWsWebSocketContainerSSL.java @@ -58,6 +58,9 @@ public class TestWsWebSocketContainerSSL extends WebSocketBaseTest { ClientEndpointConfig clientEndpointConfig = ClientEndpointConfig.Builder.create().build(); clientEndpointConfig.getUserProperties().put(org.apache.tomcat.websocket.Constants.SSL_TRUSTSTORE_PROPERTY, TesterSupport.CA_JKS); +// Java 7 doesn't default to TLSv1.2 but the tests do + clientEndpointConfig.getUserProperties().put(org.apache.tomcat.websocket.Constants.SSL_PROTOCOLS_PROPERTY, +TesterSupport.isTlsv13Available() ? "TLSv1.3" : "TLSv1.2"); Session wsSession = wsContainer.connectToServer(TesterProgrammaticEndpoint.class, clientEndpointConfig, new URI("wss://localhost" + ":" + getPort() + TesterEchoServer.Config.PATH_ASYNC)); CountDownLatch latch = new CountDownLatch(1); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1909258 - in /tomcat/site/trunk: ./ docs/ docs/tomcat-8.5-doc/ docs/tomcat-8.5-doc/annotationapi/ docs/tomcat-8.5-doc/annotationapi/javax/annotation/ docs/tomcat-8.5-doc/annotationapi/jav
Author: schultz Date: Wed Apr 19 20:25:56 2023 New Revision: 1909258 URL: http://svn.apache.org/viewvc?rev=1909258&view=rev Log: Update to announce Tomcat 8.5.88 release. [This commit notification would consist of 111 parts, which exceeds the limit of 50 ones, so it was shortened to the summary.] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1909259 - in /tomcat/site/trunk/docs/tomcat-8.5-doc/api/org/apache/catalina: authenticator/DigestAuthenticator.AuthDigest.html valves/JsonAccessLogValve.html
Author: schultz Date: Wed Apr 19 20:26:51 2023 New Revision: 1909259 URL: http://svn.apache.org/viewvc?rev=1909259&view=rev Log: Add new missing javadoc files. Added: tomcat/site/trunk/docs/tomcat-8.5-doc/api/org/apache/catalina/authenticator/DigestAuthenticator.AuthDigest.html tomcat/site/trunk/docs/tomcat-8.5-doc/api/org/apache/catalina/valves/JsonAccessLogValve.html Added: tomcat/site/trunk/docs/tomcat-8.5-doc/api/org/apache/catalina/authenticator/DigestAuthenticator.AuthDigest.html URL: http://svn.apache.org/viewvc/tomcat/site/trunk/docs/tomcat-8.5-doc/api/org/apache/catalina/authenticator/DigestAuthenticator.AuthDigest.html?rev=1909259&view=auto == --- tomcat/site/trunk/docs/tomcat-8.5-doc/api/org/apache/catalina/authenticator/DigestAuthenticator.AuthDigest.html (added) +++ tomcat/site/trunk/docs/tomcat-8.5-doc/api/org/apache/catalina/authenticator/DigestAuthenticator.AuthDigest.html Wed Apr 19 20:26:51 2023 @@ -0,0 +1,425 @@ + + + + + +DigestAuthenticator.AuthDigest (Apache Tomcat 8.5.88 API Documentation) + + + + + + + + + + + + + +var data = {"i0":10,"i1":10,"i2":9,"i3":9}; +var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; +var altColor = "altColor"; +var rowColor = "rowColor"; +var tableTab = "tableTab"; +var activeTableTab = "activeTableTab"; +var pathtoroot = "../../../../"; +var useModuleDirectories = true; +loadScripts(document, 'script'); + +JavaScript is disabled on your browser. + + + + + + + + +Skip navigation links + + + + +Overview +Package +Class +Tree +Deprecated +Index +Help + +Apache Tomcat 8.5.88 + + + +All Classes + + +SEARCH: + + + + + + + + +JavaScript is disabled on your browser. + + + + +Summary: +Nested | +Enum Constants | +Field | +Method + + +Detail: +Enum Constants | +Field | +Method + + + + + + + + + + + + + + + +Package org.apache.catalina.authenticator +Enum DigestAuthenticator.AuthDigest + + + +java.lang.Object + + +java.lang.Enum+ + +org.apache.catalina.authenticator.DigestAuthenticator.AuthDigest + + + + + + + + + +All Implemented Interfaces: +java.io.Serializable, java.lang.Comparable + + +Enclosing class: +DigestAuthenticator + + +public static enum DigestAuthenticator.AuthDigest +extends java.lang.Enum +This enum exists because RFC 7616 and Java use different names for some digests. + + + + + + + + + + + + +Enum Constant Summary + +Enum Constants + +Enum Constant +Description + + +MD5 + + + +SHA_256 + + + +SHA_512_256 + + + + + + + + + + + + +Method Summary + +All Methods Static Methods Instance Methods Concrete Methods + +Modifier and Type +Method +Description + + +java.lang.String +getJavaName() + + + +java.lang.String +getRfcName() + + + +static DigestAuthenticator.AuthDigest +valueOf(java.lang.String name) + +Returns the enum constant of this type with the specified name. + + + +static DigestAuthenticator.AuthDigest[] +values() + +Returns an array containing the constants of this enum type, in +the order they are declared. + + + + + + + +Methods inherited from class java.lang.Enum +clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf + + + + + +Methods inherited from class java.lang.Object +getClass, notify, notifyAll, wait, wait, wait + + + + + + + + + + + + + + + + +Enum Constant Detail + + + + + +MD5 +public static final DigestAuthenticator.AuthDigest MD5 + + + + + + + +SHA_256 +public static final DigestAuthenticator.AuthDigest SHA_256 + + + + + + + +SHA_512_256 +public static final DigestAuthenticator.AuthDigest SHA_512_256 + + + + + + + + + + + +Method Detail + + + + + +values +public static DigestAuthenticator.AuthDigest[] values() +Returns an array containing the constants of this enum type, in +the order they are declared. This method may be used to iterate +over the constants as follows: + +for (DigestAuthenticator.AuthDigest c : DigestAuthenticator.AuthDigest.values()) + System.out.println(c); + + +Returns: +an array containing the constants of this enum type, in the order they are declared + + + + + + + + +valueOf +public static DigestAuthenticator.AuthDigest valueOf(java.lang.String name) +Returns the enum constant of this type with the specified name. +The string must match exactly an ide
[ANN] Apache Tomcat 8.5.88 available
The Apache Tomcat team announces the immediate availability of Apache Tomcat 8.5.88. Apache Tomcat 8 is an open source software implementation of the Java Servlet, JavaServer Pages, Java Unified Expression Language, Java WebSocket and JASPIC technologies. Apache Tomcat 8.5.88 is a bugfix and feature release. The notable changes compared to 8.5.87 include: - Reduce the default value of maxParameterCount from 10,000 to 1,000. - Correct a regression in the fix for bug 66442 that meant that streams without a response body did not decrement the active stream count when completing, leading to ERR_HTTP2_SERVER_REFUSED_STREAM for some connections. - Refactor synchronization blocks locking on SocketWrapper to use ReentrantLock to support users wishing to experiment with project Loom. - Implement RFC 9239; note the MIME types for Javascript has changed to text/javascript. Along with lots of other bug fixes and improvements. Please refer to the change log for the complete list of changes: https://tomcat.apache.org/tomcat-8.5-doc/changelog.html Downloads: https://tomcat.apache.org/download-80.cgi Migration guides from Apache Tomcat 7.x and 8.0: https://tomcat.apache.org/migration.html Please note that Tomcat 8.5.x will reach End-of-life (EOL) on 31 March 2024. For more information please visit https://tomcat.apache.org/tomcat-85-eol.html Enjoy! - The Apache Tomcat team - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1909260 - /tomcat/site/trunk/tools/update-version.sh
Author: schultz Date: Wed Apr 19 20:33:09 2023 New Revision: 1909260 URL: http://svn.apache.org/viewvc?rev=1909260&view=rev Log: Use corret migration filename. Modified: tomcat/site/trunk/tools/update-version.sh Modified: tomcat/site/trunk/tools/update-version.sh URL: http://svn.apache.org/viewvc/tomcat/site/trunk/tools/update-version.sh?rev=1909260&r1=1909259&r2=1909260&view=diff == --- tomcat/site/trunk/tools/update-version.sh (original) +++ tomcat/site/trunk/tools/update-version.sh Wed Apr 19 20:33:09 2023 @@ -62,7 +62,7 @@ if [ "8.5" = "${MINOR_RELEASE}" ] ; then elif [ "9.0" = "${MINOR_RELEASE}" ] ; then MIGRATION_FILENAME=xdocs/migration-90.xml else - MIGRATION_FILENAME=xdocs/migration-${RELEASE}.xml + MIGRATION_FILENAME=xdocs/migration-${MINOR_RELEASE}.xml fi # build.properties.default - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1909261 - in /tomcat/site/trunk: ./ docs/ docs/tomcat-10.1-doc/ docs/tomcat-10.1-doc/annotationapi/ docs/tomcat-10.1-doc/annotationapi/jakarta/annotation/ docs/tomcat-10.1-doc/annotationa
Author: schultz Date: Wed Apr 19 20:34:38 2023 New Revision: 1909261 URL: http://svn.apache.org/viewvc?rev=1909261&view=rev Log: Announce Tomcat 10.1.8. [This commit notification would consist of 117 parts, which exceeds the limit of 50 ones, so it was shortened to the summary.] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r61374 - /release/tomcat/tomcat-8/v8.5.87/
Author: schultz Date: Wed Apr 19 20:36:40 2023 New Revision: 61374 Log: Drop old release. Removed: release/tomcat/tomcat-8/v8.5.87/ - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r61376 - /release/tomcat/tomcat-10/v10.1.7/
Author: schultz Date: Wed Apr 19 20:38:33 2023 New Revision: 61376 Log: Drop old release. Removed: release/tomcat/tomcat-10/v10.1.7/ - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 66574] New: Deadlock in websocket code
https://bz.apache.org/bugzilla/show_bug.cgi?id=66574 Bug ID: 66574 Summary: Deadlock in websocket code Product: Tomcat 9 Version: 9.0.74 Hardware: PC OS: Linux Status: NEW Severity: regression Priority: P2 Component: WebSocket Assignee: dev@tomcat.apache.org Reporter: boris_pet...@live.com Target Milestone: - I believe this is a regression from 9.0.73 - that is, I never encountered that issue with 9.0.73 (which of course doesn't say that it wasn't there but with 9.0.74 it happens very often so...). I think it's closely related to (or the same as) these: https://bz.apache.org/bugzilla/show_bug.cgi?id=63191 https://bz.apache.org/bugzilla/show_bug.cgi?id=66531 The first issue I opened a few years ago. Then, around Tomcat 9.0.71 it stopped appearing and all was fine. 9.0.72 seemed fine as well as 9.0.73. But now 9.0.74 seems to have introduced it again (or something new). Here are the relevant stack traces: - "thread name" #615 [2030] daemon prio=5 os_prio=0 cpu=667.09ms elapsed=57804.86s tid=0x7fc189c87000 nid=2030 waiting on condition [0x7fc0bb57c000] java.lang.Thread.State: WAITING (parking) at jdk.internal.misc.Unsafe.park(java.base@19.0.2/Native Method) - parking to wait for <0x000743e004f8> (a java.util.concurrent.locks.ReentrantLock$NonfairSync) at java.util.concurrent.locks.LockSupport.park(java.base@19.0.2/LockSupport.java:221) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(java.base@19.0.2/AbstractQueuedSynchronizer.java:715) at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(java.base@19.0.2/AbstractQueuedSynchronizer.java:938) at java.util.concurrent.locks.ReentrantLock$Sync.lock(java.base@19.0.2/ReentrantLock.java:153) at java.util.concurrent.locks.ReentrantLock.lock(java.base@19.0.2/ReentrantLock.java:322) at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:654) at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:636) at org.apache.tomcat.websocket.WsSession.close(WsSession.java:624) at org.cometd.server.websocket.javax.WebSocketEndPoint$Delegate.close(WebSocketEndPoint.java:119) at org.cometd.server.websocket.common.AbstractWebSocketEndPoint.lambda$onMessage$0(AbstractWebSocketEndPoint.java:70) at org.cometd.server.websocket.common.AbstractWebSocketEndPoint$$Lambda$1929/0x0007c10e7078.accept(Unknown Source) at org.cometd.bayeux.Promise$2.fail(Promise.java:108) at org.cometd.server.websocket.common.AbstractWebSocketEndPoint$$Lambda$1953/0x0007c111c440.accept(Unknown Source) at org.cometd.bayeux.Promise$2.fail(Promise.java:108) at org.cometd.server.websocket.common.AbstractWebSocketEndPoint$Entry.fail(AbstractWebSocketEndPoint.java:645) at org.cometd.server.websocket.common.AbstractWebSocketEndPoint$Flusher.lambda$onCompleteFailure$0(AbstractWebSocketEndPoint.java:612) at org.cometd.server.websocket.common.AbstractWebSocketEndPoint$Flusher$$Lambda$2642/0x0007c13f9800.accept(Unknown Source) at java.util.ArrayList.forEach(java.base@19.0.2/ArrayList.java:1511) at org.cometd.server.websocket.common.AbstractWebSocketEndPoint$Flusher.onCompleteFailure(AbstractWebSocketEndPoint.java:612) at org.eclipse.jetty.util.IteratingCallback.failed(IteratingCallback.java:417) at org.cometd.server.websocket.javax.WebSocketEndPoint$Delegate.lambda$send$0(WebSocketEndPoint.java:106) at org.cometd.server.websocket.javax.WebSocketEndPoint$Delegate$$Lambda$1954/0x0007c111d438.onResult(Unknown Source) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase$TextMessageSendHandler.onResult(WsRemoteEndpointImplBase.java:846) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.endMessage(WsRemoteEndpointImplBase.java:442) at org.apache.tomcat.websocket.WsRemoteEndpointImplBase$EndMessageHandler.onResult(WsRemoteEndpointImplBase.java:563) at org.apache.tomcat.websocket.server.WsRemoteEndpointImplServer$OnResultRunnable.run(WsRemoteEndpointImplServer.java:395) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(java.base@19.0.2/Thread.java:1589) Locked ownable synchronizers: - <0x0006cf2712d8> (a org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker) - "other thread name" #713 [2702] daemon prio=5 os_prio=0 cpu=523.94ms elapsed=53545.41s tid=0x7fc187e92000 nid=2702 waiting on condition [0x7fc0c107c000] java.lang.Thread.State: WAITING (parki