[Bug 58286] Crash in jk-status on Windows (when producing HTML output)
https://bz.apache.org/bugzilla/show_bug.cgi?id=58286 Chinoy Guptachanged: What|Removed |Added CC||chinoygu...@gmail.com --- Comment #4 from Chinoy Gupta --- Is 1.2.42 release planned in near future or should we integrate this fix now? -- 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 58286] Crash in jk-status on Windows (when producing HTML output)
https://bz.apache.org/bugzilla/show_bug.cgi?id=58286 --- Comment #5 from Rainer Jung--- If you can easily integrate now, I suggest you do so. There are currently only two post 1.2.41 fixes, this one here and one about atomics on some niche platforms (not Windows, not Linux 64 Bit). This one here affects all Windows users, but one of the frequently used providers for Windows binaries (ApacheLounge) has now included the fix in his 1.2.41 build. So it seems there is no high pressure for a release. I worked a bit on our own Windows build system, so I hope we can finally provide good quality binaries for Windows for 1.2.42. I want to update the docs and probably have a look at some of the old outstanding ISAPI redirector bugs. So personally I don't plan a release very soon (not this month, maybe much later depending on what happens in the meantime). -- 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 58286] Crash in jk-status on Windows (when producing HTML output)
https://bz.apache.org/bugzilla/show_bug.cgi?id=58286 --- Comment #6 from Chinoy Gupta--- Thanks for the prompt reply. Based on your comment, it might be some time before the next release comes out. So I will look into integrating it now only. -- 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 58313] Data race inside the non-thread-safe HashMap org.apache.catalina.connector.OutputBuffer.encoders
https://bz.apache.org/bugzilla/show_bug.cgi?id=58313 --- Comment #1 from Mark Thomas--- I agree that this is an issue. A switch to ConcurrentHashMap should address the immediate problem. The idea behind clearEncoders() is a good one. The encoders are expensive objects and don't scale well. We don't really want to keep the Map around during an async request. On the otherhand, we don't really want to have to keep re-creating it. I'm wondering about ways to improve the currenty approach. I'm going to do some simple testing to see how an approach based on pools of encoders would perform. -- 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
buildbot success in ASF Buildbot on tomcat-trunk
The Buildbot has detected a restored build on builder tomcat-trunk while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/191 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-commit' triggered this build Build Source Stamp: [branch tomcat/trunk] 1700854 Blamelist: remm Build succeeded! Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1700854 - in /tomcat/trunk/java/org/apache: catalina/connector/Request.java coyote/Request.java coyote/http2/Http2UpgradeHandler.java coyote/http2/StreamProcessor.java tomcat/util/net/Abs
Author: remm Date: Wed Sep 2 17:27:11 2015 New Revision: 1700854 URL: http://svn.apache.org/r1700854 Log: Add a sendfile override on the request, since HTTP/2 doesn't support it (it's not just in SSL). HTTP/2 could have simulated sendfile eventually. Modified: tomcat/trunk/java/org/apache/catalina/connector/Request.java tomcat/trunk/java/org/apache/coyote/Request.java tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java tomcat/trunk/java/org/apache/tomcat/util/net/AbstractJsseEndpoint.java Modified: tomcat/trunk/java/org/apache/catalina/connector/Request.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/Request.java?rev=1700854=1700853=1700854=diff == --- tomcat/trunk/java/org/apache/catalina/connector/Request.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/Request.java Wed Sep 2 17:27:11 2015 @@ -3310,7 +3310,7 @@ public class Request public Object get(Request request, String name) { return Boolean.valueOf( request.getConnector().getProtocolHandler( -).isSendfileSupported()); +).isSendfileSupported() && request.getCoyoteRequest().getSendfile()); } @Override public void set(Request request, String name, Object value) { Modified: tomcat/trunk/java/org/apache/coyote/Request.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/Request.java?rev=1700854=1700853=1700854=diff == --- tomcat/trunk/java/org/apache/coyote/Request.java (original) +++ tomcat/trunk/java/org/apache/coyote/Request.java Wed Sep 2 17:27:11 2015 @@ -140,6 +140,7 @@ public final class Request { private final RequestInfo reqProcessorMX=new RequestInfo(this); +private boolean sendfile = true; protected volatile ReadListener listener; @@ -422,6 +423,14 @@ public final class Request { this.available = available; } +public boolean getSendfile() { +return sendfile; +} + +public void setSendfile(boolean sendfile) { +this.sendfile = sendfile; +} + public boolean isFinished() { AtomicBoolean result = new AtomicBoolean(false); action(ActionCode.REQUEST_BODY_FULLY_READ, result); @@ -522,6 +531,7 @@ public final class Request { localPort = -1; remotePort = -1; available = 0; +sendfile = true; serverCookies.recycle(); parameters.recycle(); Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java?rev=1700854=1700853=1700854=diff == --- tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java Wed Sep 2 17:27:11 2015 @@ -295,7 +295,7 @@ public class Http2UpgradeHandler extends result = SocketState.UPGRADED; break; -case OPEN_WRITE: +case OPEN_WRITE: processWrites(); result = SocketState.UPGRADED; Modified: tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java?rev=1700854=1700853=1700854=diff == --- tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/StreamProcessor.java Wed Sep 2 17:27:11 2015 @@ -54,6 +54,8 @@ public class StreamProcessor extends Abs @Override public void run() { try { +// No sendfile for HTTP/2 +request.setSendfile(false); adapter.service(request, response); // Ensure the response is complete response.action(ActionCode.CLOSE, null); Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AbstractJsseEndpoint.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AbstractJsseEndpoint.java?rev=1700854=1700853=1700854=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/AbstractJsseEndpoint.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/AbstractJsseEndpoint.java Wed Sep 2 17:27:11 2015 @@ -97,11 +97,6 @@ public abstract class AbstractJsseEndpoi
svn commit: r1700872 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/connector/OutputBuffer.java webapps/docs/changelog.xml
Author: markt Date: Wed Sep 2 19:03:51 2015 New Revision: 1700872 URL: http://svn.apache.org/r1700872 Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58313 Fix concurrent access of encoders map when clearing encoders prior to switch to async. Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/catalina/connector/OutputBuffer.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc7.0.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Sep 2 19:03:51 2015 @@ -1,2 +1,2 @@ -/tomcat/tc8.0.x/trunk:1636525,1637336,1637685,1637709,1638726,1640089,1640276,1640349,1640363,1640366,1640642,1640672,1640674,1640689,1640884,1641001,1641065,1641067,1641375,1641638,1641723,1641726,1641729-1641730,1641736,1641988,1642669-1642670,1642698,1642701,1643205,1643215,1643217,1643230,1643232,1643273,1643285,1643329-1643330,1643511,1643513,1643521,1643539,1643571,1643581-1643582,1643635,1643655,1643738,1643964,1644018,1644333,1644954,1644992,1645014,1645360,1645456,1645627,1645642,1645686,1645903-1645904,1645908-1645909,1645913,1645920,1646458,1646460-1646462,1646735,1646738-1646741,1646744,1646746,1646748-1646755,1646757,1646759-1646760,1647043,1648816,1651420-1651422,1651844,1652926,1652939-1652940,1652973,1653798,1653817,1653841,1654042,1654161,1654736,1654767,1654787,1656592,1659907,1662986,1663265,1663278,1663325,1663535,1663567,1663679,1663997,1664175,1664321,1664872,1665061,1665086,1666027,1666395,1666503,1666506,1666560,1666570,1666581,1666759,1666967,1666988,1667553 -1667555,1667558,1667617,1667633,1667637,1667747,1667767,1667873,1668028,1668137,1668634,1669432,1669801,1669840,1669895-1669896,1670398,1670435,1670592,1670605-1670607,1670609,1670632,1670720,1670725,1670727,1670731,1671114,1672273,1672285,1673759,1674220,1674295,1675469,1675488,1675595,1675831,1676232,1676367-1676369,1676382,1676394,1676483,1676556,1676635,1678178,1679536,1679988,1680256,1681124,1681182,1681730,1681840,1681864,1681869,1682010,1682034,1682047,1682052-1682053,1682062,1682064,1682070,1682312,1682325,1682331,1682386,1684367,1684385,1685759,1685774,1685827,1685892,1687341,1688904,1689358,1689657,1692850,1693093,1693108,1693324,1694060,1694115,1694291,1694427,1694431,1694503,1694549,1694789,1694873,1694881,1695356,1695372,1695823-1695825,1696200,1696281,1696379,1696468,1700608 -/tomcat/trunk:1156115-1157160,1157162-1157859,1157862-1157942,1157945-1160347,1160349-1163716,1163718-1166689,1166691-1174340,1174342-1175596,1175598-1175611,1175613-1175932,1175934-1177783,1177785-1177980,1178006-1180720,1180722-1183094,1183096-1187753,1187755,1187775,1187801,1187806,1187809,1187826-1188312,1188314-1188401,1188646-1188840,1188842-1190176,1190178-1195223,1195225-1195953,1195955,1195957-1201238,1201240-1203345,1203347-1206623,1206625-1208046,1208073,1208096,1208114,1208145,1208772,1209194-1212125,1212127-1220291,1220293,1220295-1221321,1221323-1222329,1222332-1222401,1222405-1222795,1222850-1222950,1222969-1225326,1225328-1225463,1225465,1225627,1225629-1226534,1226536-1228908,1228911-1228923,1228927-1229532,1229534-1230766,1230768-1231625,1231627-1233414,1233419-1235207,1235209-1237425,1237427,1237429-1237977,1237981,1237985,1237995,1238070,1238073,1239024-1239048,1239050-1239062,1239135,1239256,1239258-1239485,1239785-1240046,1240101,1240106,1240109,1240112,1240114 ,1240116,1240118,1240121,1240329,1240474-1240850,1240857,1241087,1241160,1241408-1241822,1241908-1241909,1241912-1242110,1242371-1292130,1292134-1292458,1292464-1292670,1292672-1292776,1292780-1293392,1293397-1297017,1297019-1297963,1297965-1299820,1300108,1300111-1300460,1300520-1300948,1300997,1301006,1301280,1302332,1302348,1302608-1302610,1302649,1302837,1303138,1303163,1303338,1303521,1303587,1303698,1303803,1303852,1304011,1304035,1304037,1304135,1304249,1304253,1304260,1304271,1304275,1304468,1304895,1304930-1304932,1305194,1305943,1305965,1306556,1306579-1306580,1307084,1307310,1307511-1307512,1307579,1307591,1307597,1310636,1310639-1310640,1310642,1310701,1311212,1311995,1327617,1327670,1331766,1333161,1333173,1333827,1334787,1335026,1335257,1335547,1335692,1335711,1335731,1336515,1336813,1336864,1336868,1336884,1337419,1337426,1337546,1337572,1337591-1337595,1337643,1337707,1337719,1337734,1337741,1337745,1338151-1338154,1338178,1342027,1342029,1342315,1342320,1342476,1342
svn commit: r1700900 - in /tomcat/tc6.0.x/trunk: STATUS.txt java/org/apache/catalina/util/RequestUtil.java
Author: markt Date: Wed Sep 2 20:46:17 2015 New Revision: 1700900 URL: http://svn.apache.org/r1700900 Log: Update proposal Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1700900=1700899=1700900=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Wed Sep 2 20:46:17 2015 @@ -62,13 +62,13 @@ PATCHES PROPOSED TO BACKPORT: * Back-port fixes for Javadoc, formatting, clean-up and edge cases for URL normalization - http://people.apache.org/~markt/patches/2015-09-01-url-normalization-tc6-v1.patch + http://people.apache.org/~markt/patches/2015-09-02-url-normalization-tc6-v2.patch +1: markt -1: * Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58313 http://svn.apache.org/r1700872 - NNot required for async but still required because of Comet + Not required for async but still required because of Comet +1: markt -1: Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java?rev=1700900=1700899=1700900=diff == --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java Wed Sep 2 20:46:17 2015 @@ -5,9 +5,9 @@ * 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. @@ -91,11 +91,15 @@ public final class RequestUtil { * try to perform security checks for malicious input. * * @param path Relative path to be normalized + * + * @return The normalized path or null if the path cannot be + * normalized */ public static String normalize(String path) { return normalize(path, true); } + /** * Normalize a relative URI path that may have relative values ("/./", * "/../", and so on ) it it. WARNING - This method is @@ -104,11 +108,15 @@ public final class RequestUtil { * * @param path Relative path to be normalized * @param replaceBackSlash Should '\\' be replaced with '/' + * + * @return The normalized path or null if the path cannot be + * normalized */ public static String normalize(String path, boolean replaceBackSlash) { -if (path == null) +if (path == null) { return null; +} // Create a place for the normalized path String normalized = path; @@ -116,9 +124,6 @@ public final class RequestUtil { if (replaceBackSlash && normalized.indexOf('\\') >= 0) normalized = normalized.replace('\\', '/'); -if (normalized.equals("/.")) -return "/"; - // Add a leading "/" if necessary if (!normalized.startsWith("/")) normalized = "/" + normalized; @@ -126,36 +131,44 @@ public final class RequestUtil { // Resolve occurrences of "//" in the normalized path while (true) { int index = normalized.indexOf("//"); -if (index < 0) +if (index < 0) { break; -normalized = normalized.substring(0, index) + -normalized.substring(index + 1); +} +normalized = normalized.substring(0, index) + normalized.substring(index + 1); } // Resolve occurrences of "/./" in the normalized path while (true) { int index = normalized.indexOf("/./"); -if (index < 0) +if (index < 0) { break; -normalized = normalized.substring(0, index) + -normalized.substring(index + 2); +} +normalized = normalized.substring(0, index) + normalized.substring(index + 2); } // Resolve occurrences of "/../" in the normalized path while (true) { int index = normalized.indexOf("/../"); -if (index < 0) +if (index < 0) { break; -if (index == 0) -return (null); // Trying to go outside our context +} +if (index == 0) { +return null; // Trying to go outside our context +}
buildbot failure in ASF Buildbot on tomcat-trunk
The Buildbot has detected a new failure on builder tomcat-trunk while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/194 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-commit' triggered this build Build Source Stamp: [branch tomcat/trunk] 1700895 Blamelist: markt 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: svn commit: r1700900 - in /tomcat/tc6.0.x/trunk: STATUS.txt java/org/apache/catalina/util/RequestUtil.java
Am 02.09.2015 um 23:08 schrieb Konstantin Kolinko: 2015-09-03 0:00 GMT+03:00 Mark Thomas: On 02/09/2015 21:46, ma...@apache.org wrote: Author: markt Date: Wed Sep 2 20:46:17 2015 New Revision: 1700900 URL: http://svn.apache.org/r1700900 Log: Update proposal Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java Bah. I applied the patch as well. Any chance of a couple of quick +1's from other committers so I don't have to revert it? +1 mine as well: +1 Rainer - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 58194] Tomcat crash EXCEPTION_ACCESS_VIOLATION in tcnative-1.dll
https://bz.apache.org/bugzilla/show_bug.cgi?id=58194 p...@tourplan.com changed: What|Removed |Added CC||p...@tourplan.com -- 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 58194] Tomcat crash EXCEPTION_ACCESS_VIOLATION in tcnative-1.dll
https://bz.apache.org/bugzilla/show_bug.cgi?id=58194 p...@tourplan.com changed: What|Removed |Added OS||All --- Comment #1 from p...@tourplan.com --- A client recently experienced what could be the same problem (version 1.1.24 of tc-native-1.dll running on Windows Server 2008 R2 Standard). # Problematic frame: # C [tcnative-1.dll+0x11532] Java_org_apache_tomcat_jni_OS_info+0x742 ... Stack: [0x13e1,0x13f1], sp=0x13f0e870, free space=1018k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C [tcnative-1.dll+0x11532] Java_org_apache_tomcat_jni_OS_info+0x742 Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) J org.apache.tomcat.jni.Address.get(IJ)J -- 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: r1700891 - /tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java
Author: markt Date: Wed Sep 2 20:27:54 2015 New Revision: 1700891 URL: http://svn.apache.org/r1700891 Log: Key encoder cache on Charset rather than encoding name Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java?rev=1700891=1700890=1700891=diff == --- tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Wed Sep 2 20:27:54 2015 @@ -18,6 +18,7 @@ package org.apache.catalina.connector; import java.io.IOException; import java.io.Writer; +import java.nio.charset.Charset; import java.security.AccessController; import java.security.PrivilegedActionException; import java.security.PrivilegedExceptionAction; @@ -29,6 +30,7 @@ import javax.servlet.http.HttpServletRes import org.apache.catalina.Globals; import org.apache.coyote.ActionCode; import org.apache.coyote.Response; +import org.apache.tomcat.util.buf.B2CConverter; import org.apache.tomcat.util.buf.ByteChunk; import org.apache.tomcat.util.buf.C2BConverter; import org.apache.tomcat.util.buf.CharChunk; @@ -119,7 +121,7 @@ public class OutputBuffer extends Writer /** * List of encoders. */ -protected final ConcurrentHashMapencoders = new ConcurrentHashMap<>(); +protected final ConcurrentHashMap encoders = new ConcurrentHashMap<>(); /** @@ -556,8 +558,7 @@ public class OutputBuffer extends Writer } -protected void setConverter() -throws IOException { +protected void setConverter() throws IOException { if (coyoteResponse != null) { enc = coyoteResponse.getCharacterEncoding(); @@ -566,10 +567,13 @@ public class OutputBuffer extends Writer if (enc == null) { enc = DEFAULT_ENCODING; } -conv = encoders.get(enc); + +Charset charset = B2CConverter.getCharset(enc); +conv = encoders.get(charset); + if (conv == null) { if (Globals.IS_SECURITY_ENABLED){ -try{ +try { conv = AccessController.doPrivileged( new PrivilegedExceptionAction(){ @@ -577,10 +581,9 @@ public class OutputBuffer extends Writer public C2BConverter run() throws IOException{ return new C2BConverter(enc); } - } ); -}catch(PrivilegedActionException ex){ +} catch (PrivilegedActionException ex) { Exception e = ex.getException(); if (e instanceof IOException) { throw (IOException)e; @@ -590,15 +593,13 @@ public class OutputBuffer extends Writer conv = new C2BConverter(enc); } -encoders.put(enc, conv); - +encoders.put(charset, conv); } } // BufferedOutputStream compatibility - public long getContentWritten() { return bytesWritten + charsWritten; } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1700896 - in /tomcat/trunk: java/org/apache/tomcat/util/http/RequestUtil.java test/org/apache/tomcat/util/http/TestRequestUtil.java
Author: markt Date: Wed Sep 2 20:39:00 2015 New Revision: 1700896 URL: http://svn.apache.org/r1700896 Log: More normalization edge cases Modified: tomcat/trunk/java/org/apache/tomcat/util/http/RequestUtil.java tomcat/trunk/test/org/apache/tomcat/util/http/TestRequestUtil.java Modified: tomcat/trunk/java/org/apache/tomcat/util/http/RequestUtil.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/http/RequestUtil.java?rev=1700896=1700895=1700896=diff == --- tomcat/trunk/java/org/apache/tomcat/util/http/RequestUtil.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/http/RequestUtil.java Wed Sep 2 20:39:00 2015 @@ -67,14 +67,6 @@ public class RequestUtil { if (!normalized.startsWith("/")) normalized = "/" + normalized; -if (normalized.equals("/.")) { -return "/"; -} - -if (normalized.equals("/..")) { -return null; // Trying to go outside our context -} - // Resolve occurrences of "//" in the normalized path while (true) { int index = normalized.indexOf("//"); @@ -106,6 +98,14 @@ public class RequestUtil { normalized = normalized.substring(0, index2) + normalized.substring(index + 3); } +if (normalized.equals("/.")) { +return "/"; +} + +if (normalized.equals("/..")) { +return null; // Trying to go outside our context +} + // Return the normalized path that we have completed return normalized; } Modified: tomcat/trunk/test/org/apache/tomcat/util/http/TestRequestUtil.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/util/http/TestRequestUtil.java?rev=1700896=1700895=1700896=diff == --- tomcat/trunk/test/org/apache/tomcat/util/http/TestRequestUtil.java (original) +++ tomcat/trunk/test/org/apache/tomcat/util/http/TestRequestUtil.java Wed Sep 2 20:39:00 2015 @@ -87,6 +87,36 @@ public class TestRequestUtil { doTestNormalize("..", null); } +@Test +public void testNormalize14() { +doTestNormalize("//..", null); +} + +@Test +public void testNormalize15() { +doTestNormalize("//../", null); +} + +@Test +public void testNormalize16() { +doTestNormalize("/./..", null); +} + +@Test +public void testNormalize17() { +doTestNormalize("/./../", null); +} + +@Test +public void testNormalize18() { +doTestNormalize("/a/../..", null); +} + +@Test +public void testNormalize19() { +doTestNormalize("/a/../../", null); +} + private void doTestNormalize(String input, String expected) { assertEquals(expected,RequestUtil.normalize(input)); } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1700871 - in /tomcat/tc8.0.x/trunk: ./ java/org/apache/catalina/connector/OutputBuffer.java webapps/docs/changelog.xml
Author: markt Date: Wed Sep 2 19:00:49 2015 New Revision: 1700871 URL: http://svn.apache.org/r1700871 Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58313 Fix concurrent access of encoders map when clearing encoders prior to switch to async. Modified: tomcat/tc8.0.x/trunk/ (props changed) tomcat/tc8.0.x/trunk/java/org/apache/catalina/connector/OutputBuffer.java tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.0.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Sep 2 19:00:49 2015 @@ -1 +1 @@ -/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886,1644890,1644892 ,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041,1653471,1653550,1653574,1653797,1653815-1653816,1653819,1653840,1653857,1653888,1653972,1654013,1654030,1654050,1654123,1654148,1654159,1654513,1654515,1654517,1654522,1654524,1654725,1654735,1654766,1654785,1654851-1654852,1654978,1655122-1655124,1655126-1655127,1655129-1655130,1655132-1655133,1655312,1655438,1655441,1655454,168,1656087,1656299,1656319,1656331,1656345,1656350,1656590,1656648-1656650,1656657,1657041,1657054,1657374,1657492,1657510,1657565,1657580,1657584,1657586,1657589,1657592,1657607,1657609,1657682,1657 907,1658207,1658734,1658781,1658790,1658799,1658802,1658804,1658833,1658840,1658966,1659043,1659053,1659059,1659188-1659189,1659216,1659263,1659293,1659304,1659306-1659307,1659382,1659384,1659428,1659471,1659486,1659505,1659516,1659521,1659524,1659559,1659562,1659803,1659806,1659814,1659833,1659862,1659905,1659919,1659948,1659967,1659983-1659984,1660060,1660074,1660077,1660133,1660168,1660331-1660332,1660353,1660358,1660924,1661386,1661867,1661972,1661990,1662200,1662308-1662309,1662548,1662614,1662736,1662985,1662988-1662989,1663264,1663277,1663298,1663534,1663562,1663676,1663715,1663754,1663768,1663772,1663781,1663893,1663995,1664143,1664163,1664174,1664301,1664317,1664347,1664657,1664659,1664710,1664863-1664864,1664866,1665085,1665292,1665559,1665653,1665661,1665672,1665694,1665697,1665736,1665779,1665976-1665977,1665980-1665981,1665985-1665986,1665989,1665998,1666004,1666008,1666013,1666017,1666024,1666116,1666386-1666387,1666494,1666496,1666552,1666569,1666579,137,149,1 666757,1666966,1666972,1666985,1666995,1666997,1667292,1667402,1667406,1667546,1667615,1667630,1667636,1667688,1667764,1667871,1668026,1668135,1668193,1668593,1668596,1668630,1668639,1668843,1669353,1669370,1669451,1669800,1669838,1669876,1669882,1670394,1670433,1670591,1670598-1670600,1670610,1670631,1670719,1670724,1670726,1670730,1670940,1671112,1672272,1672284,1673754,1674294,1675461,1675486,1675594,1675830,1676231,1676250-1676251,1676364,1676381,1676393,1676479,1676525,1676552,1676615,1676630,1676634,1676721,1676926,1676943,1677140,1677802,1678011,1678162,1678174,1678339,1678426-1678427,1678694,1678701,1679534,1679708,1679710,1679716,1680034,1680246,1681056,1681123,1681138,1681280,1681283,1681286,1681450,1681697,1681701,1681729,1681770,1681779,1681793,1681807,1681837-1681838,1681854,1681862,1681958,1682028,1682033,1682311,1682315,1682317,1682320,1682324,1682330,1682842,1684172,1684366,1684383,1684526-1684527,1684549-1684550,1685556,1685591,1685739,1685744,1685772,1685816,168582
svn commit: r1700895 - /tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java
Author: markt Date: Wed Sep 2 20:33:57 2015 New Revision: 1700895 URL: http://svn.apache.org/r1700895 Log: Replacement is preferred. It makes errors more obvious while still enabling the app to continue. Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java?rev=1700895=1700894=1700895=diff == --- tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java Wed Sep 2 20:33:57 2015 @@ -40,8 +40,6 @@ public final class C2BConverter { public C2BConverter(Charset charset) { encoder = charset.newEncoder(); -// FIXME: See if unmappable/malformed behavior configuration is needed -//in practice encoder.onUnmappableCharacter(CodingErrorAction.REPLACE) .onMalformedInput(CodingErrorAction.REPLACE); char[] left = new char[4]; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot failure in ASF Buildbot on tomcat-6-trunk
The Buildbot has detected a new failure on builder tomcat-6-trunk while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-6-trunk/builds/4 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-6-commit' triggered this build Build Source Stamp: [branch tomcat/tc6.0.x/trunk] 1700900 Blamelist: markt BUILD FAILED: failed Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot exception in ASF Buildbot on tomcat-7-trunk
The Buildbot has detected a build exception on builder tomcat-7-trunk while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-7-trunk/builds/58 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-7-commit' triggered this build Build Source Stamp: [branch tomcat/tc7.0.x/trunk] 1700898 Blamelist: markt BUILD FAILED: exception upload_2 Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot success in ASF Buildbot on tomcat-trunk
The Buildbot has detected a restored build on builder tomcat-trunk while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/195 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-commit' triggered this build Build Source Stamp: [branch tomcat/trunk] 1700896 Blamelist: markt Build succeeded! Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1700900 - in /tomcat/tc6.0.x/trunk: STATUS.txt java/org/apache/catalina/util/RequestUtil.java
On 02/09/2015 21:46, ma...@apache.org wrote: > Author: markt > Date: Wed Sep 2 20:46:17 2015 > New Revision: 1700900 > > URL: http://svn.apache.org/r1700900 > Log: > Update proposal > > Modified: > tomcat/tc6.0.x/trunk/STATUS.txt > tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java Bah. I applied the patch as well. Any chance of a couple of quick +1's from other committers so I don't have to revert it? Mark > > Modified: tomcat/tc6.0.x/trunk/STATUS.txt > URL: > http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1700900=1700899=1700900=diff > == > --- tomcat/tc6.0.x/trunk/STATUS.txt (original) > +++ tomcat/tc6.0.x/trunk/STATUS.txt Wed Sep 2 20:46:17 2015 > @@ -62,13 +62,13 @@ PATCHES PROPOSED TO BACKPORT: > > * Back-port fixes for Javadoc, formatting, clean-up and edge cases for URL >normalization > - > http://people.apache.org/~markt/patches/2015-09-01-url-normalization-tc6-v1.patch > + > http://people.apache.org/~markt/patches/2015-09-02-url-normalization-tc6-v2.patch >+1: markt >-1: > > * Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58313 >http://svn.apache.org/r1700872 > - NNot required for async but still required because of Comet > + Not required for async but still required because of Comet >+1: markt >-1: > > > Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java > URL: > http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java?rev=1700900=1700899=1700900=diff > == > --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java > (original) > +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java Wed > Sep 2 20:46:17 2015 > @@ -5,9 +5,9 @@ > * 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. > @@ -91,11 +91,15 @@ public final class RequestUtil { > * try to perform security checks for malicious input. > * > * @param path Relative path to be normalized > + * > + * @return The normalized path or null if the path cannot be > + * normalized > */ > public static String normalize(String path) { > return normalize(path, true); > } > > + > /** > * Normalize a relative URI path that may have relative values ("/./", > * "/../", and so on ) it it. WARNING - This method is > @@ -104,11 +108,15 @@ public final class RequestUtil { > * > * @param path Relative path to be normalized > * @param replaceBackSlash Should '\\' be replaced with '/' > + * > + * @return The normalized path or null if the path cannot be > + * normalized > */ > public static String normalize(String path, boolean replaceBackSlash) { > > -if (path == null) > +if (path == null) { > return null; > +} > > // Create a place for the normalized path > String normalized = path; > @@ -116,9 +124,6 @@ public final class RequestUtil { > if (replaceBackSlash && normalized.indexOf('\\') >= 0) > normalized = normalized.replace('\\', '/'); > > -if (normalized.equals("/.")) > -return "/"; > - > // Add a leading "/" if necessary > if (!normalized.startsWith("/")) > normalized = "/" + normalized; > @@ -126,36 +131,44 @@ public final class RequestUtil { > // Resolve occurrences of "//" in the normalized path > while (true) { > int index = normalized.indexOf("//"); > -if (index < 0) > +if (index < 0) { > break; > -normalized = normalized.substring(0, index) + > -normalized.substring(index + 1); > +} > +normalized = normalized.substring(0, index) + > normalized.substring(index + 1); > } > > // Resolve occurrences of "/./" in the normalized path > while (true) { > int index = normalized.indexOf("/./"); > -if (index < 0) > +if (index < 0) { > break; > -normalized = normalized.substring(0, index) + > -normalized.substring(index + 2); > +} > +normalized = normalized.substring(0, index) + > normalized.substring(index + 2); > } > > //
svn commit: r1700890 - /tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java
Author: markt Date: Wed Sep 2 20:21:14 2015 New Revision: 1700890 URL: http://svn.apache.org/r1700890 Log: Small simplification Use 'conv == null' to indicate that conv has not been set rather than a separate flag. Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java?rev=1700890=1700889=1700890=diff == --- tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Wed Sep 2 20:21:14 2015 @@ -117,12 +117,6 @@ public class OutputBuffer extends Writer /** - * Encoder is set. - */ -private boolean gotEnc = false; - - -/** * List of encoders. */ protected final ConcurrentHashMapencoders = new ConcurrentHashMap<>(); @@ -238,11 +232,11 @@ public class OutputBuffer extends Writer suspended = false; doFlush = false; -if (conv!= null) { +if (conv != null) { conv.recycle(); +conv = null; } -gotEnc = false; enc = null; } @@ -555,13 +549,10 @@ public class OutputBuffer extends Writer } -public void checkConverter() -throws IOException { - -if (!gotEnc) { +public void checkConverter() throws IOException { +if (conv == null) { setConverter(); } - } @@ -572,7 +563,6 @@ public class OutputBuffer extends Writer enc = coyoteResponse.getCharacterEncoding(); } -gotEnc = true; if (enc == null) { enc = DEFAULT_ENCODING; } @@ -641,7 +631,7 @@ public class OutputBuffer extends Writer bytesWritten = 0; charsWritten = 0; if (resetWriterStreamFlags) { -gotEnc = false; +conv = null; enc = null; } initial = true; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1700892 - in /tomcat/trunk/java/org/apache: catalina/connector/OutputBuffer.java tomcat/util/buf/C2BConverter.java tomcat/util/buf/UEncoder.java
Author: markt Date: Wed Sep 2 20:31:25 2015 New Revision: 1700892 URL: http://svn.apache.org/r1700892 Log: Use Charset rather than encoding name to create C2BConvertor Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java tomcat/trunk/java/org/apache/tomcat/util/buf/UEncoder.java Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java?rev=1700892=1700891=1700892=diff == --- tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Wed Sep 2 20:31:25 2015 @@ -568,7 +568,7 @@ public class OutputBuffer extends Writer enc = DEFAULT_ENCODING; } -Charset charset = B2CConverter.getCharset(enc); +final Charset charset = B2CConverter.getCharset(enc); conv = encoders.get(charset); if (conv == null) { @@ -579,7 +579,7 @@ public class OutputBuffer extends Writer @Override public C2BConverter run() throws IOException{ -return new C2BConverter(enc); +return new C2BConverter(charset); } } ); @@ -590,7 +590,7 @@ public class OutputBuffer extends Writer } } } else { -conv = new C2BConverter(enc); +conv = new C2BConverter(charset); } encoders.put(charset, conv); Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java?rev=1700892=1700891=1700892=diff == --- tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/buf/C2BConverter.java Wed Sep 2 20:31:25 2015 @@ -19,6 +19,7 @@ package org.apache.tomcat.util.buf; import java.io.IOException; import java.nio.ByteBuffer; import java.nio.CharBuffer; +import java.nio.charset.Charset; import java.nio.charset.CharsetEncoder; import java.nio.charset.CoderResult; import java.nio.charset.CodingErrorAction; @@ -37,8 +38,8 @@ public final class C2BConverter { */ private final CharBuffer leftovers; -public C2BConverter(String encoding) throws IOException { -encoder = B2CConverter.getCharset(encoding).newEncoder(); +public C2BConverter(Charset charset) { +encoder = charset.newEncoder(); // FIXME: See if unmappable/malformed behavior configuration is needed //in practice encoder.onUnmappableCharacter(CodingErrorAction.REPLACE) Modified: tomcat/trunk/java/org/apache/tomcat/util/buf/UEncoder.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/buf/UEncoder.java?rev=1700892=1700891=1700892=diff == --- tomcat/trunk/java/org/apache/tomcat/util/buf/UEncoder.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/buf/UEncoder.java Wed Sep 2 20:31:25 2015 @@ -17,6 +17,7 @@ package org.apache.tomcat.util.buf; import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.util.BitSet; /** @@ -57,8 +58,6 @@ public final class UEncoder { private CharChunk output=null; private final boolean readOnlySafeChars; -private final String ENCODING = "UTF8"; - public UEncoder() { this.safeChars = initialSafeChars(); readOnlySafeChars = false; @@ -93,6 +92,9 @@ public final class UEncoder { * @param s string to be encoded * @param start the beginning index, inclusive * @param end the ending index, exclusive +* +* @return A new CharChunk contained the URL encoded string +* * @throws IOException If an I/O error occurs */ public CharChunk encodeURL(String s, int start, int end) @@ -101,7 +103,7 @@ public final class UEncoder { bb = new ByteChunk(8); // small enough. cb = new CharChunk(2); // small enough. output = new CharChunk(64); // small enough. - c2b = new C2BConverter(ENCODING); + c2b = new C2BConverter(StandardCharsets.UTF_8); } else { bb.recycle(); cb.recycle(); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1700898 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/tomcat/util/http/RequestUtil.java test/org/apache/tomcat/util/http/TestRequestUtil.java webapps/docs/changelog.xml
Author: markt Date: Wed Sep 2 20:42:34 2015 New Revision: 1700898 URL: http://svn.apache.org/r1700898 Log: More normalization edge cases Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/RequestUtil.java tomcat/tc7.0.x/trunk/test/org/apache/tomcat/util/http/TestRequestUtil.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc7.0.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Sep 2 20:42:34 2015 @@ -1,2 +1,2 @@ -/tomcat/tc8.0.x/trunk:1636525,1637336,1637685,1637709,1638726,1640089,1640276,1640349,1640363,1640366,1640642,1640672,1640674,1640689,1640884,1641001,1641065,1641067,1641375,1641638,1641723,1641726,1641729-1641730,1641736,1641988,1642669-1642670,1642698,1642701,1643205,1643215,1643217,1643230,1643232,1643273,1643285,1643329-1643330,1643511,1643513,1643521,1643539,1643571,1643581-1643582,1643635,1643655,1643738,1643964,1644018,1644333,1644954,1644992,1645014,1645360,1645456,1645627,1645642,1645686,1645903-1645904,1645908-1645909,1645913,1645920,1646458,1646460-1646462,1646735,1646738-1646741,1646744,1646746,1646748-1646755,1646757,1646759-1646760,1647043,1648816,1651420-1651422,1651844,1652926,1652939-1652940,1652973,1653798,1653817,1653841,1654042,1654161,1654736,1654767,1654787,1656592,1659907,1662986,1663265,1663278,1663325,1663535,1663567,1663679,1663997,1664175,1664321,1664872,1665061,1665086,1666027,1666395,1666503,1666506,1666560,1666570,1666581,1666759,1666967,1666988,1667553 -1667555,1667558,1667617,1667633,1667637,1667747,1667767,1667873,1668028,1668137,1668634,1669432,1669801,1669840,1669895-1669896,1670398,1670435,1670592,1670605-1670607,1670609,1670632,1670720,1670725,1670727,1670731,1671114,1672273,1672285,1673759,1674220,1674295,1675469,1675488,1675595,1675831,1676232,1676367-1676369,1676382,1676394,1676483,1676556,1676635,1678178,1679536,1679988,1680256,1681124,1681182,1681730,1681840,1681864,1681869,1682010,1682034,1682047,1682052-1682053,1682062,1682064,1682070,1682312,1682325,1682331,1682386,1684367,1684385,1685759,1685774,1685827,1685892,1687341,1688904,1689358,1689657,1692850,1693093,1693108,1693324,1694060,1694115,1694291,1694427,1694431,1694503,1694549,1694789,1694873,1694881,1695356,1695372,1695823-1695825,1696200,1696281,1696379,1696468,1700608,1700871 -/tomcat/trunk:1156115-1157160,1157162-1157859,1157862-1157942,1157945-1160347,1160349-1163716,1163718-1166689,1166691-1174340,1174342-1175596,1175598-1175611,1175613-1175932,1175934-1177783,1177785-1177980,1178006-1180720,1180722-1183094,1183096-1187753,1187755,1187775,1187801,1187806,1187809,1187826-1188312,1188314-1188401,1188646-1188840,1188842-1190176,1190178-1195223,1195225-1195953,1195955,1195957-1201238,1201240-1203345,1203347-1206623,1206625-1208046,1208073,1208096,1208114,1208145,1208772,1209194-1212125,1212127-1220291,1220293,1220295-1221321,1221323-1222329,1222332-1222401,1222405-1222795,1222850-1222950,1222969-1225326,1225328-1225463,1225465,1225627,1225629-1226534,1226536-1228908,1228911-1228923,1228927-1229532,1229534-1230766,1230768-1231625,1231627-1233414,1233419-1235207,1235209-1237425,1237427,1237429-1237977,1237981,1237985,1237995,1238070,1238073,1239024-1239048,1239050-1239062,1239135,1239256,1239258-1239485,1239785-1240046,1240101,1240106,1240109,1240112,1240114 ,1240116,1240118,1240121,1240329,1240474-1240850,1240857,1241087,1241160,1241408-1241822,1241908-1241909,1241912-1242110,1242371-1292130,1292134-1292458,1292464-1292670,1292672-1292776,1292780-1293392,1293397-1297017,1297019-1297963,1297965-1299820,1300108,1300111-1300460,1300520-1300948,1300997,1301006,1301280,1302332,1302348,1302608-1302610,1302649,1302837,1303138,1303163,1303338,1303521,1303587,1303698,1303803,1303852,1304011,1304035,1304037,1304135,1304249,1304253,1304260,1304271,1304275,1304468,1304895,1304930-1304932,1305194,1305943,1305965,1306556,1306579-1306580,1307084,1307310,1307511-1307512,1307579,1307591,1307597,1310636,1310639-1310640,1310642,1310701,1311212,1311995,1327617,1327670,1331766,1333161,1333173,1333827,1334787,1335026,1335257,1335547,1335692,1335711,1335731,1336515,1336813,1336864,1336868,1336884,1337419,1337426,1337546,1337572,1337591-1337595,1337643,1337707,1337719,1337734,1337741,1337745,1338151-1338154,1338178,1342027,1342029,1342315,1342320,1342476,1342
svn commit: r1700870 - /tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java
Author: markt Date: Wed Sep 2 18:57:28 2015 New Revision: 1700870 URL: http://svn.apache.org/r1700870 Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58313 Fix concurrent access of encoders map when clearing encoders prior to switch to async. Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Modified: tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java?rev=1700870=1700869=1700870=diff == --- tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/OutputBuffer.java Wed Sep 2 18:57:28 2015 @@ -21,7 +21,7 @@ import java.io.Writer; import java.security.AccessController; import java.security.PrivilegedActionException; import java.security.PrivilegedExceptionAction; -import java.util.HashMap; +import java.util.concurrent.ConcurrentHashMap; import javax.servlet.WriteListener; import javax.servlet.http.HttpServletResponse; @@ -125,7 +125,7 @@ public class OutputBuffer extends Writer /** * List of encoders. */ -protected final HashMapencoders = new HashMap<>(); +protected final ConcurrentHashMap encoders = new ConcurrentHashMap<>(); /** - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1700873 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: markt Date: Wed Sep 2 19:07:25 2015 New Revision: 1700873 URL: http://svn.apache.org/r1700873 Log: Proposal Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1700873=1700872=1700873=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Wed Sep 2 19:07:25 2015 @@ -66,6 +66,12 @@ PATCHES PROPOSED TO BACKPORT: +1: markt -1: +* Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58313 + http://svn.apache.org/r1700872 + NNot required for async but still required because of Comet + +1: markt + -1: + PATCHES/ISSUES THAT ARE STALLED: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 58313] Data race inside the non-thread-safe HashMap org.apache.catalina.connector.OutputBuffer.encoders
https://bz.apache.org/bugzilla/show_bug.cgi?id=58313 Mark Thomaschanged: What|Removed |Added Version|trunk |unspecified Product|Tomcat 8|Tomcat 6 Component|Catalina|Catalina --- Comment #2 from Mark Thomas --- Fixed in trunk, 8.0.x (for 8.0.27 onwards) and 7.0.x (for 7.0.65 onwards). Back-port proposed for 6.0.x. -- 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: r1700897 - in /tomcat/tc8.0.x/trunk: ./ java/org/apache/tomcat/util/http/RequestUtil.java test/org/apache/tomcat/util/http/TestRequestUtil.java webapps/docs/changelog.xml
Author: markt Date: Wed Sep 2 20:41:30 2015 New Revision: 1700897 URL: http://svn.apache.org/r1700897 Log: More normalization edge cases Modified: tomcat/tc8.0.x/trunk/ (props changed) tomcat/tc8.0.x/trunk/java/org/apache/tomcat/util/http/RequestUtil.java tomcat/tc8.0.x/trunk/test/org/apache/tomcat/util/http/TestRequestUtil.java tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.0.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Sep 2 20:41:30 2015 @@ -1 +1 @@ -/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886,1644890,1644892 ,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041,1653471,1653550,1653574,1653797,1653815-1653816,1653819,1653840,1653857,1653888,1653972,1654013,1654030,1654050,1654123,1654148,1654159,1654513,1654515,1654517,1654522,1654524,1654725,1654735,1654766,1654785,1654851-1654852,1654978,1655122-1655124,1655126-1655127,1655129-1655130,1655132-1655133,1655312,1655438,1655441,1655454,168,1656087,1656299,1656319,1656331,1656345,1656350,1656590,1656648-1656650,1656657,1657041,1657054,1657374,1657492,1657510,1657565,1657580,1657584,1657586,1657589,1657592,1657607,1657609,1657682,1657 907,1658207,1658734,1658781,1658790,1658799,1658802,1658804,1658833,1658840,1658966,1659043,1659053,1659059,1659188-1659189,1659216,1659263,1659293,1659304,1659306-1659307,1659382,1659384,1659428,1659471,1659486,1659505,1659516,1659521,1659524,1659559,1659562,1659803,1659806,1659814,1659833,1659862,1659905,1659919,1659948,1659967,1659983-1659984,1660060,1660074,1660077,1660133,1660168,1660331-1660332,1660353,1660358,1660924,1661386,1661867,1661972,1661990,1662200,1662308-1662309,1662548,1662614,1662736,1662985,1662988-1662989,1663264,1663277,1663298,1663534,1663562,1663676,1663715,1663754,1663768,1663772,1663781,1663893,1663995,1664143,1664163,1664174,1664301,1664317,1664347,1664657,1664659,1664710,1664863-1664864,1664866,1665085,1665292,1665559,1665653,1665661,1665672,1665694,1665697,1665736,1665779,1665976-1665977,1665980-1665981,1665985-1665986,1665989,1665998,1666004,1666008,1666013,1666017,1666024,1666116,1666386-1666387,1666494,1666496,1666552,1666569,1666579,137,149,1 666757,1666966,1666972,1666985,1666995,1666997,1667292,1667402,1667406,1667546,1667615,1667630,1667636,1667688,1667764,1667871,1668026,1668135,1668193,1668593,1668596,1668630,1668639,1668843,1669353,1669370,1669451,1669800,1669838,1669876,1669882,1670394,1670433,1670591,1670598-1670600,1670610,1670631,1670719,1670724,1670726,1670730,1670940,1671112,1672272,1672284,1673754,1674294,1675461,1675486,1675594,1675830,1676231,1676250-1676251,1676364,1676381,1676393,1676479,1676525,1676552,1676615,1676630,1676634,1676721,1676926,1676943,1677140,1677802,1678011,1678162,1678174,1678339,1678426-1678427,1678694,1678701,1679534,1679708,1679710,1679716,1680034,1680246,1681056,1681123,1681138,1681280,1681283,1681286,1681450,1681697,1681701,1681729,1681770,1681779,1681793,1681807,1681837-1681838,1681854,1681862,1681958,1682028,1682033,1682311,1682315,1682317,1682320,1682324,1682330,1682842,1684172,1684366,1684383,1684526-1684527,1684549-1684550,1685556,1685591,1685739,1685744,1685772,1685816,168582
Re: svn commit: r1700900 - in /tomcat/tc6.0.x/trunk: STATUS.txt java/org/apache/catalina/util/RequestUtil.java
2015-09-03 0:00 GMT+03:00 Mark Thomas: > On 02/09/2015 21:46, ma...@apache.org wrote: >> Author: markt >> Date: Wed Sep 2 20:46:17 2015 >> New Revision: 1700900 >> >> URL: http://svn.apache.org/r1700900 >> Log: >> Update proposal >> >> Modified: >> tomcat/tc6.0.x/trunk/STATUS.txt >> tomcat/tc6.0.x/trunk/java/org/apache/catalina/util/RequestUtil.java > > Bah. I applied the patch as well. > > Any chance of a couple of quick +1's from other committers so I don't > have to revert it? > +1 Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot exception in ASF Buildbot on tomcat-trunk
The Buildbot has detected a build exception on builder tomcat-trunk while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/190 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-commit' triggered this build Build Source Stamp: [branch tomcat/trunk] 1700765 Blamelist: jfclere BUILD FAILED: exception upload_2 Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1700763 - in /tomcat/jk/trunk/xdocs/webserver_howto: apache.xml iis.xml
Author: kkolinko Date: Wed Sep 2 10:52:46 2015 New Revision: 1700763 URL: http://svn.apache.org/r1700763 Log: Correct a typo in documentation (reviewing r1700600) Modified: tomcat/jk/trunk/xdocs/webserver_howto/apache.xml tomcat/jk/trunk/xdocs/webserver_howto/iis.xml Modified: tomcat/jk/trunk/xdocs/webserver_howto/apache.xml URL: http://svn.apache.org/viewvc/tomcat/jk/trunk/xdocs/webserver_howto/apache.xml?rev=1700763=1700762=1700763=diff == --- tomcat/jk/trunk/xdocs/webserver_howto/apache.xml (original) +++ tomcat/jk/trunk/xdocs/webserver_howto/apache.xml Wed Sep 2 10:52:46 2015 @@ -1110,7 +1110,7 @@ configurations for debug and release bui to build against the web server versions 2.0, 2.2 and 2.4. -Finally choose "Build Solution" in the "Build" menue. +Finally choose "Build Solution" in the "Build" menu. The resulting file mod_jk.so (and the debug symbol file Modified: tomcat/jk/trunk/xdocs/webserver_howto/iis.xml URL: http://svn.apache.org/viewvc/tomcat/jk/trunk/xdocs/webserver_howto/iis.xml?rev=1700763=1700762=1700763=diff == --- tomcat/jk/trunk/xdocs/webserver_howto/iis.xml (original) +++ tomcat/jk/trunk/xdocs/webserver_howto/iis.xml Wed Sep 2 10:52:46 2015 @@ -501,7 +501,7 @@ During IDE startup choose "Yes" in all c Next choose "Debug" or "Release" in the Configuration dropdown. -Finally choose "Build Solution" in the "Build" menue. +Finally choose "Build Solution" in the "Build" menu. The resulting file isapi_redirect.dll (and the debug symbol file - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org