[Bug 53138] Not able to download a file size of 740KB using NIO connector in tomcat version 7.0.27. But with the same configuration I was able to download that in tomcat 7.0.26.
https://bz.apache.org/bugzilla/show_bug.cgi?id=53138 Christopher Schultz changed: What|Removed |Added Summary|Not able to download a file |Not able to download a file |size of 740KB using NIO |size of 740KB using NIO |connector in tomcat version |connector in tomcat version |7.0.27. This issue is still |7.0.27. But with the same |happening in Tomcat 8, |configuration I was able to |inconsistently, but |download that in tomcat |frequently, and not |7.0.26. |depending of file size. | --- Comment #16 from Christopher Schultz --- Revert bug description. It's still insanely long, but there is no need to thrash web indexers on this old issue. -- 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 60963] Optimize class loading for unpackWARs=false case
https://bz.apache.org/bugzilla/show_bug.cgi?id=60963 --- Comment #4 from Christopher Schultz --- It looks like isInWAR in getJarInputStreamWrapper can be leaked. Will calling getWebResourceSet().closeJarFile undo this performance optimization? For ZipInputStreamWithPosition constructor, should you do this instead: super(new PushbackCountingInputStream(in, 512)); That seems a little cleaner. -- 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
[VOTE] Release Apache Tomcat 9.0.0.M20
The proposed Apache Tomcat 9.0.0.M20 release is now available for voting. This is a milestone release for the 9.0.x branch. It should be noted that, as a milestone release: - Servlet 4.0 is not finalised - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0 The major changes compared to the 9.0.0.M19 release are: - Correct a regression that broke JMX operations (including the Manager web application) if the operation took parameters - Add JMX support for Tribes components - Calls to isReady() no longer throw exceptions after timeouts for async servlets Along with lots of other bug fixes and improvements For full details, see the changelog: http://svn.apache.org/repos/asf/tomcat/trunk/webapps/docs/changelog.xml It can be obtained from: https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.0.M20/ The Maven staging repo is: https://repository.apache.org/content/repositories/orgapachetomcat-1131/ The svn tag is: http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M20/ The proposed 9.0.0.M20 release is: [ ] Broken - do not release [ ] Alpha - go ahead and release as 9.0.0.M20 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[ANN] TomcatCon prices rise after April 16th
All, If you haven't already got your ticket to join us at TomcatCon in Miami, now is a great time to get it before prices rise on 17th April. The schedule can be found at: https://apachecon2017.sched.com/overview/type/TomcatCon and registration is open at: http://events.linuxfoundation.org/events/apachecon-north-america/attend/register- with standard pricing ($800) through Sunday 16th April saving 20% on the late registration fee. Note that registration for TomcatCon includes access to ApacheCon and Apache Big Data. See you in Miami! Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r19128 - in /dev/tomcat/tomcat-9/v9.0.0.M20: ./ bin/ bin/embed/ bin/extras/ src/
Author: markt Date: Wed Apr 12 19:50:52 2017 New Revision: 19128 Log: Upload 9.0.0.M20 for voting Added: dev/tomcat/tomcat-9/v9.0.0.M20/ dev/tomcat/tomcat-9/v9.0.0.M20/KEYS dev/tomcat/tomcat-9/v9.0.0.M20/README.html dev/tomcat/tomcat-9/v9.0.0.M20/RELEASE-NOTES dev/tomcat/tomcat-9/v9.0.0.M20/bin/ dev/tomcat/tomcat-9/v9.0.0.M20/bin/README.html dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-deployer.tar.gz (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-deployer.tar.gz.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-deployer.tar.gz.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-deployer.tar.gz.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-deployer.zip (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-deployer.zip.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-deployer.zip.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-deployer.zip.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-fulldocs.tar.gz (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-fulldocs.tar.gz.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-fulldocs.tar.gz.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-fulldocs.tar.gz.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-windows-x64.zip (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-windows-x64.zip.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-windows-x64.zip.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-windows-x64.zip.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-windows-x86.zip (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-windows-x86.zip.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-windows-x86.zip.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20-windows-x86.zip.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.exe (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.exe.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.exe.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.exe.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.tar.gz (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.tar.gz.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.tar.gz.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.tar.gz.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.zip (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.zip.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.zip.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/apache-tomcat-9.0.0.M20.zip.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/ dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/apache-tomcat-9.0.0.M20-embed.tar.gz (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/apache-tomcat-9.0.0.M20-embed.tar.gz.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/apache-tomcat-9.0.0.M20-embed.tar.gz.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/apache-tomcat-9.0.0.M20-embed.tar.gz.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/apache-tomcat-9.0.0.M20-embed.zip (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/apache-tomcat-9.0.0.M20-embed.zip.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/apache-tomcat-9.0.0.M20-embed.zip.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/embed/apache-tomcat-9.0.0.M20-embed.zip.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/ dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/catalina-jmx-remote.jar (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/catalina-jmx-remote.jar.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/catalina-jmx-remote.jar.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/catalina-jmx-remote.jar.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/catalina-ws.jar (with props) dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/catalina-ws.jar.asc dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/catalina-ws.jar.md5 dev/tomcat/tomcat-9/v9.0.0.M20/bin/extras/catalina-ws.jar.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/src/ dev/tomcat/tomcat-9/v9.0.0.M20/src/apache-tomcat-9.0.0.M20-src.tar.gz (with props) dev/tomcat/tomcat-9/v9.0.0.M20/src/apache-tomcat-9.0.0.M20-src.tar.gz.asc dev/tomcat/tomcat-9/v9.0.0.M20/src/apache-tomcat-9.0.0.M20-src.tar.gz.md5 dev/tomcat/tomcat-9/v9.0.0.M20/src/apache-tomcat-9.0.0.M20-src.tar.gz.sha1 dev/tomcat/tomcat-9/v9.0.0.M20/src/apache-tomcat-9.0.0.M20-src.zip (with props) dev/tomcat/tomcat-9/v9.0.0.M20/src/apache-tomcat-9.0.0.M20-src.zip.asc dev/tomcat/tomcat-9/v9.0.0.M20/src/apache-tomcat-9.0.0.M20-src.zip.md5 dev/tomc
svn commit: r1791176 - in /tomcat/tags/TOMCAT_9_0_0_M20: ./ build.properties.default webapps/docs/changelog.xml
Author: markt Date: Wed Apr 12 19:17:46 2017 New Revision: 1791176 URL: http://svn.apache.org/viewvc?rev=1791176&view=rev Log: Tag 9.0.0.M20 Added: tomcat/tags/TOMCAT_9_0_0_M20/ - copied from r1791174, tomcat/trunk/ Modified: tomcat/tags/TOMCAT_9_0_0_M20/build.properties.default tomcat/tags/TOMCAT_9_0_0_M20/webapps/docs/changelog.xml Modified: tomcat/tags/TOMCAT_9_0_0_M20/build.properties.default URL: http://svn.apache.org/viewvc/tomcat/tags/TOMCAT_9_0_0_M20/build.properties.default?rev=1791176&r1=1791174&r2=1791176&view=diff == --- tomcat/tags/TOMCAT_9_0_0_M20/build.properties.default (original) +++ tomcat/tags/TOMCAT_9_0_0_M20/build.properties.default Wed Apr 12 19:17:46 2017 @@ -27,7 +27,7 @@ version.major=9 version.minor=0 version.build=0 version.patch=0 -version.suffix=.M20-dev +version.suffix=.M20 # - Build control flags - # Note enabling validation uses Checkstyle which is LGPL licensed Modified: tomcat/tags/TOMCAT_9_0_0_M20/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tags/TOMCAT_9_0_0_M20/webapps/docs/changelog.xml?rev=1791176&r1=1791174&r2=1791176&view=diff == --- tomcat/tags/TOMCAT_9_0_0_M20/webapps/docs/changelog.xml (original) +++ tomcat/tags/TOMCAT_9_0_0_M20/webapps/docs/changelog.xml Wed Apr 12 19:17:46 2017 @@ -44,7 +44,7 @@ They eventually become mixed with the numbered issues. (I.e., numbered issues do not "pop up" wrt. others). --> - + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 57830] Add support for ProxyProtocol
https://bz.apache.org/bugzilla/show_bug.cgi?id=57830 --- Comment #18 from Christopher Schultz --- The PROXY protocol should be "easy" to roll into an existing class: just have a look at the first few bytes of a request to see if it's got a valid "PROXY" command in there. If so, validate the source IP (the proxy), set all of the source IP information (the client's actual IP, port, etc.), and consume the "PROXY" command so that the following code just sees the raw request. I'm not familiar enough with the channel-unwrapping internals of Tomcat to know how best to implement it in the current pipeline. The best I would be able to do is validate that the patch actually works. Which I have not yet done :( -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: ServletOutputStream#isReady throws ISE
2017-04-12 18:34 GMT+03:00 Mark Thomas : > > On 12/04/17 16:05, Violeta Georgieva wrote: > > > > > Ok > > I'm going to commit a change. > > If you are quick, it will make it in before I tag 9.0.x and 8.5.x. > I committed the changes. Thanks, Violeta > Mark > > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org >
svn commit: r1791139 - in /tomcat/tc8.5.x/trunk: ./ java/org/apache/catalina/connector/InputBuffer.java webapps/docs/changelog.xml
Author: violetagg Date: Wed Apr 12 16:02:39 2017 New Revision: 1791139 URL: http://svn.apache.org/viewvc?rev=1791139&view=rev Log: When there is no javax.servlet.ReadListener registered then a call to javax.servlet.ServletInputStream#isReady will return 'false' instead of throwing IllegalStateException. Modified: tomcat/tc8.5.x/trunk/ (props changed) tomcat/tc8.5.x/trunk/java/org/apache/catalina/connector/InputBuffer.java tomcat/tc8.5.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.5.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Apr 12 16:02:39 2017 @@ -1 +1 @@ -/tomcat/trunk:1734785,1734799,1734845,1734928,1735041,1735044,1735480,1735577,1735597,1735599-1735600,1735615,1736145,1736162,1736209,1736280,1736297,1736299,1736489,1736646,1736703,1736836,1736849,1737104-1737105,1737112,1737117,1737119-1737120,1737155,1737157,1737192,1737280,1737339,1737632,1737664,1737715,1737748,1737785,1737834,1737860,1737903,1737959,1738005,1738007,1738014-1738015,1738018,1738022,1738039,1738043,1738059-1738060,1738147,1738149,1738174-1738175,1738261,1738589,1738623-1738625,1738643,1738816,1738850,1738855,1738946-1738948,1738953-1738954,1738979,1738982,1739079-1739081,1739087,1739113,1739153,1739172,1739176,1739191,1739474,1739726,1739762,1739775,1739814,1739817-1739818,1739975,1740131,1740324,1740465,1740495,1740508-1740509,1740520,1740535,1740707,1740803,1740810,1740969,1740980,1740991,1740997,1741015,1741033,1741036,1741058,1741060,1741080,1741147,1741159,1741164,1741173,1741181,1741190,1741197,1741202,1741208,1741213,1741221,1741225,1741232,1741409,1741501 ,1741677,1741892,1741896,1741984,1742023,1742042,1742071,1742090,1742093,1742101,1742105,1742111,1742139,1742146,1742148,1742166,1742181,1742184,1742187,1742246,1742248-1742251,1742263-1742264,1742268,1742276,1742369,1742387,1742448,1742509-1742512,1742917,1742919,1742933,1742975-1742976,1742984,1742986,1743019,1743115,1743117,1743124-1743125,1743134,1743425,1743554,1743679,1743696-1743698,1743700-1743701,1744058,1744064-1744065,1744125,1744194,1744229,1744270,1744323,1744432,1744684,1744697,1744705,1744713,1744760,1744786,1745083,1745142-1745143,1745145,1745177,1745179-1745180,1745227,1745248,1745254,1745337,1745467,1745473,1745576,1745735,1745744,1746304,1746306-1746307,1746319,1746327,1746338,1746340-1746341,1746344,1746427,1746441,1746473,1746490,1746492,1746495-1746496,1746499-1746501,1746503-1746507,1746509,1746549,1746551,1746554,1746556,1746558,1746584,1746620,1746649,1746724,1746939,1746989,1747014,1747028,1747035,1747210,1747225,1747234,1747253,1747404,1747506,1747536,1747 924,1747980,1747993,1748001,1748253,1748452,1748547,1748629,1748676,1748715,1749287,1749296,1749328,1749373,1749465,1749506,1749508,1749665-1749666,1749763,1749865-1749866,1749898,1749978,1749980,1750011,1750015,1750056,1750480,1750617,1750634,1750692,1750697,1750700,1750703,1750707,1750714,1750718,1750723,1750774,1750899,1750975,1750995,1751061,1751097,1751173,1751438,1751447,1751463,1751702,1752212,1752737,1752745,1753078,1753080,1753358,1753363,1754111,1754140-1754141,1754281,1754310,1754445,1754467,1754494,1754496,1754528,1754532-1754533,1754613,1754714,1754874,1754941,1754944,1754950-1754951,1755005,1755007,1755009,1755132,1755180-1755181,1755185,1755190,1755204-1755206,1755208,1755214,1755224,1755227,1755230,1755629,1755646-1755647,1755650,1755653,1755675,1755680,1755683,1755693,1755717,1755731-1755737,1755812,1755828,1755884,1755890,1755918-1755919,1755942,1755958,1755960,1755970,1755993,1756013,1756019,1756039,1756056,1756083-1756114,1756175,1756288-1756289,1756408-1756410,1 756778,1756798,1756878,1756898,1756939,1757123-1757124,1757126,1757128,1757132-1757133,1757136,1757145,1757167-1757168,1757175,1757180,1757182,1757195,1757271,1757278,1757347,1757353-1757354,1757363,1757374,1757399,1757406,1757408,1757485,1757495,1757499,1757527,1757578,1757684,1757722,1757727,1757790,1757799,1757813,1757853,1757883,1757903,1757976,1757997,1758000,1758058,1758072-1758075,1758078-1758079,1758223,1758257,1758261,1758276,1758292,1758369,1758378-1758383,1758421,1758423,1758425-1758427,1758430,1758443,1758448,1758459,1758483,1758486-1758487,1758499,1758525,1758556,1758580,1758582,1758584,1758588,1758842,1759019,1759212,1759224,1759227,1759252,1759274,1759513-1759516,1759611,1759757,1759785-1759790,1760005,1760022,1760109-1760110,1760135,1760200-1760201,1760227,1760300,1760397,1760446,1760454,1760640,1760648,1761057,1761422,1761491,1761498,1761500-1761501,1761550,1761553,1761572,1761574,1761625-1761626,1761628,1761682,1761740,1761752,1762051-1762053,1762123,1762168,176217 2,1762182,1762201-1762202,1762204,1762208,1762288,1762296,1762324,1762348,1762353,1762362,1762374,1762492,1762503,1762505,1762541,1762608,1762710,1762753,1762766,1762769,1762944,1762947,1762953,1763167,1763179,1763232,1763259,1763271-1763272,1763276-1763277,1763319-1763320,1763370,1763372,1763375,1763377,17
svn commit: r1791138 - in /tomcat/tc8.5.x/trunk: ./ java/org/apache/coyote/Response.java webapps/docs/changelog.xml
Author: violetagg Date: Wed Apr 12 15:56:23 2017 New Revision: 1791138 URL: http://svn.apache.org/viewvc?rev=1791138&view=rev Log: When there is no javax.servlet.WriteListener registered then a call to javax.servlet.ServletOutputStream#isReady will return 'false' instead of throwing IllegalStateException. Modified: tomcat/tc8.5.x/trunk/ (props changed) tomcat/tc8.5.x/trunk/java/org/apache/coyote/Response.java tomcat/tc8.5.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.5.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Apr 12 15:56:23 2017 @@ -1 +1 @@ -/tomcat/trunk:1734785,1734799,1734845,1734928,1735041,1735044,1735480,1735577,1735597,1735599-1735600,1735615,1736145,1736162,1736209,1736280,1736297,1736299,1736489,1736646,1736703,1736836,1736849,1737104-1737105,1737112,1737117,1737119-1737120,1737155,1737157,1737192,1737280,1737339,1737632,1737664,1737715,1737748,1737785,1737834,1737860,1737903,1737959,1738005,1738007,1738014-1738015,1738018,1738022,1738039,1738043,1738059-1738060,1738147,1738149,1738174-1738175,1738261,1738589,1738623-1738625,1738643,1738816,1738850,1738855,1738946-1738948,1738953-1738954,1738979,1738982,1739079-1739081,1739087,1739113,1739153,1739172,1739176,1739191,1739474,1739726,1739762,1739775,1739814,1739817-1739818,1739975,1740131,1740324,1740465,1740495,1740508-1740509,1740520,1740535,1740707,1740803,1740810,1740969,1740980,1740991,1740997,1741015,1741033,1741036,1741058,1741060,1741080,1741147,1741159,1741164,1741173,1741181,1741190,1741197,1741202,1741208,1741213,1741221,1741225,1741232,1741409,1741501 ,1741677,1741892,1741896,1741984,1742023,1742042,1742071,1742090,1742093,1742101,1742105,1742111,1742139,1742146,1742148,1742166,1742181,1742184,1742187,1742246,1742248-1742251,1742263-1742264,1742268,1742276,1742369,1742387,1742448,1742509-1742512,1742917,1742919,1742933,1742975-1742976,1742984,1742986,1743019,1743115,1743117,1743124-1743125,1743134,1743425,1743554,1743679,1743696-1743698,1743700-1743701,1744058,1744064-1744065,1744125,1744194,1744229,1744270,1744323,1744432,1744684,1744697,1744705,1744713,1744760,1744786,1745083,1745142-1745143,1745145,1745177,1745179-1745180,1745227,1745248,1745254,1745337,1745467,1745473,1745576,1745735,1745744,1746304,1746306-1746307,1746319,1746327,1746338,1746340-1746341,1746344,1746427,1746441,1746473,1746490,1746492,1746495-1746496,1746499-1746501,1746503-1746507,1746509,1746549,1746551,1746554,1746556,1746558,1746584,1746620,1746649,1746724,1746939,1746989,1747014,1747028,1747035,1747210,1747225,1747234,1747253,1747404,1747506,1747536,1747 924,1747980,1747993,1748001,1748253,1748452,1748547,1748629,1748676,1748715,1749287,1749296,1749328,1749373,1749465,1749506,1749508,1749665-1749666,1749763,1749865-1749866,1749898,1749978,1749980,1750011,1750015,1750056,1750480,1750617,1750634,1750692,1750697,1750700,1750703,1750707,1750714,1750718,1750723,1750774,1750899,1750975,1750995,1751061,1751097,1751173,1751438,1751447,1751463,1751702,1752212,1752737,1752745,1753078,1753080,1753358,1753363,1754111,1754140-1754141,1754281,1754310,1754445,1754467,1754494,1754496,1754528,1754532-1754533,1754613,1754714,1754874,1754941,1754944,1754950-1754951,1755005,1755007,1755009,1755132,1755180-1755181,1755185,1755190,1755204-1755206,1755208,1755214,1755224,1755227,1755230,1755629,1755646-1755647,1755650,1755653,1755675,1755680,1755683,1755693,1755717,1755731-1755737,1755812,1755828,1755884,1755890,1755918-1755919,1755942,1755958,1755960,1755970,1755993,1756013,1756019,1756039,1756056,1756083-1756114,1756175,1756288-1756289,1756408-1756410,1 756778,1756798,1756878,1756898,1756939,1757123-1757124,1757126,1757128,1757132-1757133,1757136,1757145,1757167-1757168,1757175,1757180,1757182,1757195,1757271,1757278,1757347,1757353-1757354,1757363,1757374,1757399,1757406,1757408,1757485,1757495,1757499,1757527,1757578,1757684,1757722,1757727,1757790,1757799,1757813,1757853,1757883,1757903,1757976,1757997,1758000,1758058,1758072-1758075,1758078-1758079,1758223,1758257,1758261,1758276,1758292,1758369,1758378-1758383,1758421,1758423,1758425-1758427,1758430,1758443,1758448,1758459,1758483,1758486-1758487,1758499,1758525,1758556,1758580,1758582,1758584,1758588,1758842,1759019,1759212,1759224,1759227,1759252,1759274,1759513-1759516,1759611,1759757,1759785-1759790,1760005,1760022,1760109-1760110,1760135,1760200-1760201,1760227,1760300,1760397,1760446,1760454,1760640,1760648,1761057,1761422,1761491,1761498,1761500-1761501,1761550,1761553,1761572,1761574,1761625-1761626,1761628,1761682,1761740,1761752,1762051-1762053,1762123,1762168,176217 2,1762182,1762201-1762202,1762204,1762208,1762288,1762296,1762324,1762348,1762353,1762362,1762374,1762492,1762503,1762505,1762541,1762608,1762710,1762753,1762766,1762769,1762944,1762947,1762953,1763167,1763179,1763232,1763259,1763271-1763272,1763276-1763277,1763319-1763320,1763370,1763372,1763375,1763377,1763393,1763412
[Bug 60769] Problem with Jsp character encoding configuration
https://bz.apache.org/bugzilla/show_bug.cgi?id=60769 --- Comment #3 from Lazar --- Hello Marc, I noticed that the second scenario is still failing if the encoding is more exotic - I tried with IBM871 - IBM EBCDIC (Icelandic). I debugged a little and noticed that EncodingDetector.getPrologEncoding() returns null although there is an encoding attribute specified in the prolog. Then the if on lines 67 - 73 in EncodingDetector goes in the second branch as if there is no encoding specified in the prolog. I attach sample2.war, with which I reproduced it. It is essentially the same as sample1.war, only the encoding in enctest.jspx is IBM871. Probably this is an issue with the XMLStreamReader? -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1791134 - in /tomcat/trunk: java/org/apache/coyote/Response.java webapps/docs/changelog.xml
2017-04-12 18:36 GMT+03:00 Mark Thomas : > > On 12/04/17 16:34, violet...@apache.org wrote: > > Author: violetagg > > Date: Wed Apr 12 15:34:26 2017 > > New Revision: 1791134 > > > > URL: http://svn.apache.org/viewvc?rev=1791134&view=rev > > Log: > > When there is no javax.servlet.WriteListener registered then a call to javax.servlet.ServletOutputStream#isReady will return 'false' instead of throwing IllegalStateException. > > What about the ReadListener? done > > Mark > > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org >
svn commit: r1791137 - in /tomcat/trunk: java/org/apache/catalina/connector/InputBuffer.java webapps/docs/changelog.xml
Author: violetagg Date: Wed Apr 12 15:52:06 2017 New Revision: 1791137 URL: http://svn.apache.org/viewvc?rev=1791137&view=rev Log: When there is no javax.servlet.ReadListener registered then a call to javax.servlet.ServletInputStream#isReady will return 'false' instead of throwing IllegalStateException. Modified: tomcat/trunk/java/org/apache/catalina/connector/InputBuffer.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/connector/InputBuffer.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/InputBuffer.java?rev=1791137&r1=1791136&r2=1791137&view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/InputBuffer.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/InputBuffer.java Wed Apr 12 15:52:06 2017 @@ -34,6 +34,8 @@ import org.apache.catalina.security.Secu import org.apache.coyote.ActionCode; import org.apache.coyote.ContainerThreadMarker; import org.apache.coyote.Request; +import org.apache.juli.logging.Log; +import org.apache.juli.logging.LogFactory; import org.apache.tomcat.util.buf.B2CConverter; import org.apache.tomcat.util.buf.ByteChunk; import org.apache.tomcat.util.collections.SynchronizedStack; @@ -56,6 +58,8 @@ public class InputBuffer extends Reader */ protected static final StringManager sm = StringManager.getManager(InputBuffer.class); +private static final Log log = LogFactory.getLog(InputBuffer.class); + public static final int DEFAULT_BUFFER_SIZE = 8 * 1024; // The buffer can be used for byte[] and char[] reading @@ -271,7 +275,10 @@ public class InputBuffer extends Reader public boolean isReady() { if (coyoteRequest.getReadListener() == null) { -throw new IllegalStateException(sm.getString("inputBuffer.requiresNonBlocking")); +if (log.isDebugEnabled()) { +log.debug(sm.getString("inputBuffer.requiresNonBlocking")); +} +return false; } if (isFinished()) { // If this is a non-container thread, need to trigger a read Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1791137&r1=1791136&r2=1791137&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Wed Apr 12 15:52:06 2017 @@ -96,6 +96,12 @@ will return false instead of throwing IllegalStateException. (violetagg) + +When there is no javax.servlet.ReadListener registered +then a call to javax.servlet.ServletInputStream#isReady +will return false instead of throwing +IllegalStateException. (violetagg) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 60769] Problem with Jsp character encoding configuration
https://bz.apache.org/bugzilla/show_bug.cgi?id=60769 --- Comment #2 from Lazar --- Created attachment 34908 --> https://bz.apache.org/bugzilla/attachment.cgi?id=34908&action=edit A sample reproducing the problem with exotic encoding -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1791134 - in /tomcat/trunk: java/org/apache/coyote/Response.java webapps/docs/changelog.xml
2017-04-12 18:36 GMT+03:00 Mark Thomas : > > On 12/04/17 16:34, violet...@apache.org wrote: > > Author: violetagg > > Date: Wed Apr 12 15:34:26 2017 > > New Revision: 1791134 > > > > URL: http://svn.apache.org/viewvc?rev=1791134&view=rev > > Log: > > When there is no javax.servlet.WriteListener registered then a call to javax.servlet.ServletOutputStream#isReady will return 'false' instead of throwing IllegalStateException. > > What about the ReadListener? > give me a moment to check " boolean isReady(). The isReady method returns true if data can be read without blocking. If no data can be read without blocking it returns false. If isReady returns false it is illegal to call the read method and an IllegalStateException MUST be thrown. " > Mark > > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org >
svn commit: r1791136 - /tomcat/trunk/webapps/docs/changelog.xml
Author: violetagg Date: Wed Apr 12 15:41:54 2017 New Revision: 1791136 URL: http://svn.apache.org/viewvc?rev=1791136&view=rev Log: Fix typos Modified: tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1791136&r1=1791135&r2=1791136&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Wed Apr 12 15:41:54 2017 @@ -66,7 +66,7 @@ 47214: Refactor code so that explicitly referenced inner -classes are given explit names rather than being anonymous. (markt) +classes are given explicit names rather than being anonymous. (markt) 59825: Log a message that lists the components in the @@ -113,7 +113,7 @@ 47214: Refactor code so that explicitly referenced inner -classes are given explit names rather than being anonymous. (markt) +classes are given explicit names rather than being anonymous. (markt) 60925: Improve the handling of access to properties defined @@ -149,7 +149,7 @@ messages. Based on a patch by Michael Osipov. (markt) -Review i18n property files, remove unencessary escaping and consistently +Review i18n property files, remove unnecessary escaping and consistently use [...] to delimit inserted values. (markt) - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1791134 - in /tomcat/trunk: java/org/apache/coyote/Response.java webapps/docs/changelog.xml
On 12/04/17 16:34, violet...@apache.org wrote: > Author: violetagg > Date: Wed Apr 12 15:34:26 2017 > New Revision: 1791134 > > URL: http://svn.apache.org/viewvc?rev=1791134&view=rev > Log: > When there is no javax.servlet.WriteListener registered then a call to > javax.servlet.ServletOutputStream#isReady will return 'false' instead of > throwing IllegalStateException. What about the ReadListener? Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791134 - in /tomcat/trunk: java/org/apache/coyote/Response.java webapps/docs/changelog.xml
Author: violetagg Date: Wed Apr 12 15:34:26 2017 New Revision: 1791134 URL: http://svn.apache.org/viewvc?rev=1791134&view=rev Log: When there is no javax.servlet.WriteListener registered then a call to javax.servlet.ServletOutputStream#isReady will return 'false' instead of throwing IllegalStateException. Modified: tomcat/trunk/java/org/apache/coyote/Response.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/coyote/Response.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/Response.java?rev=1791134&r1=1791133&r2=1791134&view=diff == --- tomcat/trunk/java/org/apache/coyote/Response.java (original) +++ tomcat/trunk/java/org/apache/coyote/Response.java Wed Apr 12 15:34:26 2017 @@ -25,6 +25,8 @@ import java.util.concurrent.atomic.Atomi import javax.servlet.WriteListener; +import org.apache.juli.logging.Log; +import org.apache.juli.logging.LogFactory; import org.apache.tomcat.util.buf.MessageBytes; import org.apache.tomcat.util.http.MimeHeaders; import org.apache.tomcat.util.http.parser.MediaType; @@ -44,6 +46,8 @@ public final class Response { private static final StringManager sm = StringManager.getManager(Response.class); +private static final Log log = LogFactory.getLog(Response.class); + // - Class Variables /** @@ -614,7 +618,10 @@ public final class Response { public boolean isReady() { if (listener == null) { -throw new IllegalStateException(sm.getString("response.notNonBlocking")); +if (log.isDebugEnabled()) { +log.debug(sm.getString("response.notNonBlocking")); +} +return false; } // Assume write is not possible boolean ready = false; Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1791134&r1=1791133&r2=1791134&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Wed Apr 12 15:34:26 2017 @@ -90,6 +90,12 @@ logging during shutdown, some of which have been observed when running the unit tests. (markt) + +When there is no javax.servlet.WriteListener registered +then a call to javax.servlet.ServletOutputStream#isReady +will return false instead of throwing +IllegalStateException. (violetagg) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: ServletOutputStream#isReady throws ISE
On 12/04/17 16:05, Violeta Georgieva wrote: > Ok > I'm going to commit a change. If you are quick, it will make it in before I tag 9.0.x and 8.5.x. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot success in on tomcat-trunk
The Buildbot has detected a restored build on builder tomcat-trunk while building . Full details are available at: https://ci.apache.org/builders/tomcat-trunk/builds/2305 Buildbot URL: https://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] 1791129 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: ServletOutputStream#isReady throws ISE
Hi, 2017-04-12 17:44 GMT+03:00 Mark Thomas : > > On 12/04/17 12:22, Violeta Georgieva wrote: > > Hi, > > > > I have a question about ServletOutputStream#isReady. > > > > I have the following scenario: > > - thread A removes the Read/WriteListeners when async timeout/error happens > > [1], [2] > > - before receiving AsyncListener#onTimeout/onError, thread B checks whether > > it is save to perform write invoking ServletOutputStream#isReady. The > > exception below happens: > > > > > > java.lang.IllegalStateException: It is invalid to call isReady() when the > > response has not been put into non-blocking mode > > at org.apache.coyote.Response.isReady(Response.java:635) > > > > > I think that we should not throw ISE but return "false" in such cases. > > > > What do you think? > > Seems reasonable to me. I've checked the EG archives and I can't find > any reference to a discussion that decided otherwise. Ok I'm going to commit a change. Thanks, Violeta > Mark > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org >
svn commit: r1791130 - in /tomcat/tc8.5.x/trunk: ./ java/org/apache/coyote/http2/Http2UpgradeHandler.java
Author: markt Date: Wed Apr 12 15:00:51 2017 New Revision: 1791130 URL: http://svn.apache.org/viewvc?rev=1791130&view=rev Log: Optimise fix a little Modified: tomcat/tc8.5.x/trunk/ (props changed) tomcat/tc8.5.x/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java Propchange: tomcat/tc8.5.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Apr 12 15:00:51 2017 @@ -1 +1 @@ -/tomcat/trunk:1734785,1734799,1734845,1734928,1735041,1735044,1735480,1735577,1735597,1735599-1735600,1735615,1736145,1736162,1736209,1736280,1736297,1736299,1736489,1736646,1736703,1736836,1736849,1737104-1737105,1737112,1737117,1737119-1737120,1737155,1737157,1737192,1737280,1737339,1737632,1737664,1737715,1737748,1737785,1737834,1737860,1737903,1737959,1738005,1738007,1738014-1738015,1738018,1738022,1738039,1738043,1738059-1738060,1738147,1738149,1738174-1738175,1738261,1738589,1738623-1738625,1738643,1738816,1738850,1738855,1738946-1738948,1738953-1738954,1738979,1738982,1739079-1739081,1739087,1739113,1739153,1739172,1739176,1739191,1739474,1739726,1739762,1739775,1739814,1739817-1739818,1739975,1740131,1740324,1740465,1740495,1740508-1740509,1740520,1740535,1740707,1740803,1740810,1740969,1740980,1740991,1740997,1741015,1741033,1741036,1741058,1741060,1741080,1741147,1741159,1741164,1741173,1741181,1741190,1741197,1741202,1741208,1741213,1741221,1741225,1741232,1741409,1741501 ,1741677,1741892,1741896,1741984,1742023,1742042,1742071,1742090,1742093,1742101,1742105,1742111,1742139,1742146,1742148,1742166,1742181,1742184,1742187,1742246,1742248-1742251,1742263-1742264,1742268,1742276,1742369,1742387,1742448,1742509-1742512,1742917,1742919,1742933,1742975-1742976,1742984,1742986,1743019,1743115,1743117,1743124-1743125,1743134,1743425,1743554,1743679,1743696-1743698,1743700-1743701,1744058,1744064-1744065,1744125,1744194,1744229,1744270,1744323,1744432,1744684,1744697,1744705,1744713,1744760,1744786,1745083,1745142-1745143,1745145,1745177,1745179-1745180,1745227,1745248,1745254,1745337,1745467,1745473,1745576,1745735,1745744,1746304,1746306-1746307,1746319,1746327,1746338,1746340-1746341,1746344,1746427,1746441,1746473,1746490,1746492,1746495-1746496,1746499-1746501,1746503-1746507,1746509,1746549,1746551,1746554,1746556,1746558,1746584,1746620,1746649,1746724,1746939,1746989,1747014,1747028,1747035,1747210,1747225,1747234,1747253,1747404,1747506,1747536,1747 924,1747980,1747993,1748001,1748253,1748452,1748547,1748629,1748676,1748715,1749287,1749296,1749328,1749373,1749465,1749506,1749508,1749665-1749666,1749763,1749865-1749866,1749898,1749978,1749980,1750011,1750015,1750056,1750480,1750617,1750634,1750692,1750697,1750700,1750703,1750707,1750714,1750718,1750723,1750774,1750899,1750975,1750995,1751061,1751097,1751173,1751438,1751447,1751463,1751702,1752212,1752737,1752745,1753078,1753080,1753358,1753363,1754111,1754140-1754141,1754281,1754310,1754445,1754467,1754494,1754496,1754528,1754532-1754533,1754613,1754714,1754874,1754941,1754944,1754950-1754951,1755005,1755007,1755009,1755132,1755180-1755181,1755185,1755190,1755204-1755206,1755208,1755214,1755224,1755227,1755230,1755629,1755646-1755647,1755650,1755653,1755675,1755680,1755683,1755693,1755717,1755731-1755737,1755812,1755828,1755884,1755890,1755918-1755919,1755942,1755958,1755960,1755970,1755993,1756013,1756019,1756039,1756056,1756083-1756114,1756175,1756288-1756289,1756408-1756410,1 756778,1756798,1756878,1756898,1756939,1757123-1757124,1757126,1757128,1757132-1757133,1757136,1757145,1757167-1757168,1757175,1757180,1757182,1757195,1757271,1757278,1757347,1757353-1757354,1757363,1757374,1757399,1757406,1757408,1757485,1757495,1757499,1757527,1757578,1757684,1757722,1757727,1757790,1757799,1757813,1757853,1757883,1757903,1757976,1757997,1758000,1758058,1758072-1758075,1758078-1758079,1758223,1758257,1758261,1758276,1758292,1758369,1758378-1758383,1758421,1758423,1758425-1758427,1758430,1758443,1758448,1758459,1758483,1758486-1758487,1758499,1758525,1758556,1758580,1758582,1758584,1758588,1758842,1759019,1759212,1759224,1759227,1759252,1759274,1759513-1759516,1759611,1759757,1759785-1759790,1760005,1760022,1760109-1760110,1760135,1760200-1760201,1760227,1760300,1760397,1760446,1760454,1760640,1760648,1761057,1761422,1761491,1761498,1761500-1761501,1761550,1761553,1761572,1761574,1761625-1761626,1761628,1761682,1761740,1761752,1762051-1762053,1762123,1762168,176217 2,1762182,1762201-1762202,1762204,1762208,1762288,1762296,1762324,1762348,1762353,1762362,1762374,1762492,1762503,1762505,1762541,1762608,1762710,1762753,1762766,1762769,1762944,1762947,1762953,1763167,1763179,1763232,1763259,1763271-1763272,1763276-1763277,1763319-1763320,1763370,1763372,1763375,1763377,1763393,1763412,1763430,1763450,1763462,1763505,1763511-1763512,1763516,1763518,1763520,1763529,1763559,1763565,1763568,1763574,1763619,1763634-1763635,1763718,1763786,1763798-1763799,1763810,1763813,1763815,17
svn commit: r1791129 - in /tomcat/trunk/java/org/apache/coyote/http2: Http2AsyncUpgradeHandler.java Http2UpgradeHandler.java
Author: markt Date: Wed Apr 12 15:00:09 2017 New Revision: 1791129 URL: http://svn.apache.org/viewvc?rev=1791129&view=rev Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=60970 Nio2 needs separate fix. Optimise Nio/Apr fix a little Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java?rev=1791129&r1=1791128&r2=1791129&view=diff == --- tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Http2AsyncUpgradeHandler.java Wed Apr 12 15:00:09 2017 @@ -155,25 +155,29 @@ public class Http2AsyncUpgradeHandler ex ByteBuffer target = ByteBuffer.allocate(payloadSize); state = getHpackEncoder().encode(coyoteResponse.getMimeHeaders(), target); target.flip(); -ByteUtil.setThreeBytes(header, 0, target.limit()); -if (first) { -first = false; -header[3] = FrameType.HEADERS.getIdByte(); -if (stream.getOutputBuffer().hasNoBody()) { -header[4] = FLAG_END_OF_STREAM; +if (state == State.COMPLETE || target.limit() > 0) { +ByteUtil.setThreeBytes(header, 0, target.limit()); +if (first) { +first = false; +header[3] = FrameType.HEADERS.getIdByte(); +if (stream.getOutputBuffer().hasNoBody()) { +header[4] = FLAG_END_OF_STREAM; +} +} else { +header[3] = FrameType.CONTINUATION.getIdByte(); } -} else { -header[3] = FrameType.CONTINUATION.getIdByte(); -} -if (state == State.COMPLETE) { -header[4] += FLAG_END_OF_HEADERS; -} -if (log.isDebugEnabled()) { -log.debug(target.limit() + " bytes"); +if (state == State.COMPLETE) { +header[4] += FLAG_END_OF_HEADERS; +} +if (log.isDebugEnabled()) { +log.debug(target.limit() + " bytes"); +} +ByteUtil.set31Bits(header, 5, stream.getIdentifier().intValue()); +bufs.add(ByteBuffer.wrap(header)); +bufs.add(target); +} else if (state == State.UNDERFLOW) { +payloadSize = payloadSize * 2; } -ByteUtil.set31Bits(header, 5, stream.getIdentifier().intValue()); -bufs.add(ByteBuffer.wrap(header)); -bufs.add(target); } socketWrapper.write(BlockingMode.SEMI_BLOCK, getWriteTimeout(), TimeUnit.MILLISECONDS, null, SocketWrapperBase.COMPLETE_WRITE, applicationErrorCompletion, 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=1791129&r1=1791128&r2=1791129&view=diff == --- tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java Wed Apr 12 15:00:09 2017 @@ -572,7 +572,7 @@ class Http2UpgradeHandler extends Abstra handleAppInitiatedIOException(ioe); } } -if (state == State.UNDERFLOW) { +if (state == State.UNDERFLOW && target.limit() == 0) { target = ByteBuffer.allocate(target.capacity() * 2); } else { target.clear(); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: ServletOutputStream#isReady throws ISE
On 12/04/17 12:22, Violeta Georgieva wrote: > Hi, > > I have a question about ServletOutputStream#isReady. > > I have the following scenario: > - thread A removes the Read/WriteListeners when async timeout/error happens > [1], [2] > - before receiving AsyncListener#onTimeout/onError, thread B checks whether > it is save to perform write invoking ServletOutputStream#isReady. The > exception below happens: > > > java.lang.IllegalStateException: It is invalid to call isReady() when the > response has not been put into non-blocking mode > at org.apache.coyote.Response.isReady(Response.java:635) > I think that we should not throw ISE but return "false" in such cases. > > What do you think? Seems reasonable to me. I've checked the EG archives and I can't find any reference to a discussion that decided otherwise. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot failure in on tomcat-trunk
The Buildbot has detected a new failure on builder tomcat-trunk while building . Full details are available at: https://ci.apache.org/builders/tomcat-trunk/builds/2304 Buildbot URL: https://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] 1791124 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
[Bug 60963] Optimize class loading for unpackWARs=false case
https://bz.apache.org/bugzilla/show_bug.cgi?id=60963 --- Comment #3 from Mark Thomas --- Looking at this is on my TODO list. The main question I have is does it still avoid file locking issues? These will be more obvious Windows (you won't be able to delete the WAR) but they affect all platforms. -- 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 60970] Endless loop in Http2UpgradeHandler#writeHeaders
https://bz.apache.org/bugzilla/show_bug.cgi?id=60970 Mark Thomas changed: What|Removed |Added Resolution|--- |FIXED Status|NEW |RESOLVED --- Comment #1 from Mark Thomas --- Thanks for the report. That is where things are going wrong but there are additional cases the proposed patch doesn't cover so it has been fixed with an alternative patch. Fixed in: - trunk for 9.0.0.M20 onwards - 8.5.x for 8.5.14 onwards -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791125 - in /tomcat/tc8.5.x/trunk: ./ java/org/apache/coyote/http2/Http2UpgradeHandler.java test/org/apache/coyote/http2/Http2TestBase.java test/org/apache/coyote/http2/TestHttp2UpgradeH
Author: markt Date: Wed Apr 12 14:27:29 2017 New Revision: 1791125 URL: http://svn.apache.org/viewvc?rev=1791125&view=rev Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=60970 Fix infinite loop if application tries to write a large header to the response when using HTTP/2. Added: tomcat/tc8.5.x/trunk/test/org/apache/coyote/http2/TestHttp2UpgradeHandler.java (with props) Modified: tomcat/tc8.5.x/trunk/ (props changed) tomcat/tc8.5.x/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java tomcat/tc8.5.x/trunk/test/org/apache/coyote/http2/Http2TestBase.java tomcat/tc8.5.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.5.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Apr 12 14:27:29 2017 @@ -1 +1 @@ -/tomcat/trunk:1734785,1734799,1734845,1734928,1735041,1735044,1735480,1735577,1735597,1735599-1735600,1735615,1736145,1736162,1736209,1736280,1736297,1736299,1736489,1736646,1736703,1736836,1736849,1737104-1737105,1737112,1737117,1737119-1737120,1737155,1737157,1737192,1737280,1737339,1737632,1737664,1737715,1737748,1737785,1737834,1737860,1737903,1737959,1738005,1738007,1738014-1738015,1738018,1738022,1738039,1738043,1738059-1738060,1738147,1738149,1738174-1738175,1738261,1738589,1738623-1738625,1738643,1738816,1738850,1738855,1738946-1738948,1738953-1738954,1738979,1738982,1739079-1739081,1739087,1739113,1739153,1739172,1739176,1739191,1739474,1739726,1739762,1739775,1739814,1739817-1739818,1739975,1740131,1740324,1740465,1740495,1740508-1740509,1740520,1740535,1740707,1740803,1740810,1740969,1740980,1740991,1740997,1741015,1741033,1741036,1741058,1741060,1741080,1741147,1741159,1741164,1741173,1741181,1741190,1741197,1741202,1741208,1741213,1741221,1741225,1741232,1741409,1741501 ,1741677,1741892,1741896,1741984,1742023,1742042,1742071,1742090,1742093,1742101,1742105,1742111,1742139,1742146,1742148,1742166,1742181,1742184,1742187,1742246,1742248-1742251,1742263-1742264,1742268,1742276,1742369,1742387,1742448,1742509-1742512,1742917,1742919,1742933,1742975-1742976,1742984,1742986,1743019,1743115,1743117,1743124-1743125,1743134,1743425,1743554,1743679,1743696-1743698,1743700-1743701,1744058,1744064-1744065,1744125,1744194,1744229,1744270,1744323,1744432,1744684,1744697,1744705,1744713,1744760,1744786,1745083,1745142-1745143,1745145,1745177,1745179-1745180,1745227,1745248,1745254,1745337,1745467,1745473,1745576,1745735,1745744,1746304,1746306-1746307,1746319,1746327,1746338,1746340-1746341,1746344,1746427,1746441,1746473,1746490,1746492,1746495-1746496,1746499-1746501,1746503-1746507,1746509,1746549,1746551,1746554,1746556,1746558,1746584,1746620,1746649,1746724,1746939,1746989,1747014,1747028,1747035,1747210,1747225,1747234,1747253,1747404,1747506,1747536,1747 924,1747980,1747993,1748001,1748253,1748452,1748547,1748629,1748676,1748715,1749287,1749296,1749328,1749373,1749465,1749506,1749508,1749665-1749666,1749763,1749865-1749866,1749898,1749978,1749980,1750011,1750015,1750056,1750480,1750617,1750634,1750692,1750697,1750700,1750703,1750707,1750714,1750718,1750723,1750774,1750899,1750975,1750995,1751061,1751097,1751173,1751438,1751447,1751463,1751702,1752212,1752737,1752745,1753078,1753080,1753358,1753363,1754111,1754140-1754141,1754281,1754310,1754445,1754467,1754494,1754496,1754528,1754532-1754533,1754613,1754714,1754874,1754941,1754944,1754950-1754951,1755005,1755007,1755009,1755132,1755180-1755181,1755185,1755190,1755204-1755206,1755208,1755214,1755224,1755227,1755230,1755629,1755646-1755647,1755650,1755653,1755675,1755680,1755683,1755693,1755717,1755731-1755737,1755812,1755828,1755884,1755890,1755918-1755919,1755942,1755958,1755960,1755970,1755993,1756013,1756019,1756039,1756056,1756083-1756114,1756175,1756288-1756289,1756408-1756410,1 756778,1756798,1756878,1756898,1756939,1757123-1757124,1757126,1757128,1757132-1757133,1757136,1757145,1757167-1757168,1757175,1757180,1757182,1757195,1757271,1757278,1757347,1757353-1757354,1757363,1757374,1757399,1757406,1757408,1757485,1757495,1757499,1757527,1757578,1757684,1757722,1757727,1757790,1757799,1757813,1757853,1757883,1757903,1757976,1757997,1758000,1758058,1758072-1758075,1758078-1758079,1758223,1758257,1758261,1758276,1758292,1758369,1758378-1758383,1758421,1758423,1758425-1758427,1758430,1758443,1758448,1758459,1758483,1758486-1758487,1758499,1758525,1758556,1758580,1758582,1758584,1758588,1758842,1759019,1759212,1759224,1759227,1759252,1759274,1759513-1759516,1759611,1759757,1759785-1759790,1760005,1760022,1760109-1760110,1760135,1760200-1760201,1760227,1760300,1760397,1760446,1760454,1760640,1760648,1761057,1761422,1761491,1761498,1761500-1761501,1761550,1761553,1761572,1761574,1761625-1761626,1761628,1761682,1761740,1761752,1762051-1762053,1762123,1762168,176217 2,1762182,1762201-1762202,1762204,1762208,1762288,1762296,1762324,1762348,1762353,1762362,1762374,1762492,1762503,1762505,1762541,1762608,1762710,176
svn commit: r1791124 - in /tomcat/trunk: java/org/apache/coyote/http2/Http2UpgradeHandler.java test/org/apache/coyote/http2/Http2TestBase.java test/org/apache/coyote/http2/TestHttp2UpgradeHandler.java
Author: markt Date: Wed Apr 12 14:25:50 2017 New Revision: 1791124 URL: http://svn.apache.org/viewvc?rev=1791124&view=rev Log: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=60970 Fix infinite loop if application tries to write a large header to the response when using HTTP/2. Added: tomcat/trunk/test/org/apache/coyote/http2/TestHttp2UpgradeHandler.java (with props) Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java tomcat/trunk/webapps/docs/changelog.xml 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=1791124&r1=1791123&r2=1791124&view=diff == --- tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Http2UpgradeHandler.java Wed Apr 12 14:25:50 2017 @@ -546,29 +546,36 @@ class Http2UpgradeHandler extends Abstra while (state != State.COMPLETE) { state = getHpackEncoder().encode(coyoteResponse.getMimeHeaders(), target); target.flip(); -ByteUtil.setThreeBytes(header, 0, target.limit()); -if (first) { -first = false; -header[3] = FrameType.HEADERS.getIdByte(); -if (stream.getOutputBuffer().hasNoBody()) { -header[4] = FLAG_END_OF_STREAM; +if (state == State.COMPLETE || target.limit() > 0) { +ByteUtil.setThreeBytes(header, 0, target.limit()); +if (first) { +first = false; +header[3] = FrameType.HEADERS.getIdByte(); +if (stream.getOutputBuffer().hasNoBody()) { +header[4] = FLAG_END_OF_STREAM; +} +} else { +header[3] = FrameType.CONTINUATION.getIdByte(); +} +if (state == State.COMPLETE) { +header[4] += FLAG_END_OF_HEADERS; +} +if (log.isDebugEnabled()) { +log.debug(target.limit() + " bytes"); +} +ByteUtil.set31Bits(header, 5, stream.getIdentifier().intValue()); +try { +socketWrapper.write(true, header, 0, header.length); +socketWrapper.write(true, target); +socketWrapper.flush(true); +} catch (IOException ioe) { +handleAppInitiatedIOException(ioe); } -} else { -header[3] = FrameType.CONTINUATION.getIdByte(); -} -if (state == State.COMPLETE) { -header[4] += FLAG_END_OF_HEADERS; -} -if (log.isDebugEnabled()) { -log.debug(target.limit() + " bytes"); } -ByteUtil.set31Bits(header, 5, stream.getIdentifier().intValue()); -try { -socketWrapper.write(true, header, 0, header.length); -socketWrapper.write(true, target); -socketWrapper.flush(true); -} catch (IOException ioe) { -handleAppInitiatedIOException(ioe); +if (state == State.UNDERFLOW) { +target = ByteBuffer.allocate(target.capacity() * 2); +} else { +target.clear(); } } } Modified: tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java?rev=1791124&r1=1791123&r2=1791124&view=diff == --- tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java (original) +++ tomcat/trunk/test/org/apache/coyote/http2/Http2TestBase.java Wed Apr 12 14:25:50 2017 @@ -27,6 +27,7 @@ import java.nio.charset.StandardCharsets import java.util.ArrayList; import java.util.List; import java.util.Locale; +import java.util.Random; import javax.net.SocketFactory; import javax.servlet.ServletException; @@ -59,6 +60,8 @@ public abstract class Http2TestBase exte // response now included a date header protected static final String DEFAULT_DATE = "Wed, 11 Nov 2015 19:18:42 GMT"; +private static final String HEADER_IGNORED = "x-ignore"; + static final String DEFAULT_CONNECTION_HEADER_VALUE = "Upgrade, HTTP2-Settings"; private static final byte[] EMPTY_SETTINGS_FRAME = { 0x00, 0x00, 0x00, 0x04, 0x00, 0x
ServletOutputStream#isReady throws ISE
Hi, I have a question about ServletOutputStream#isReady. I have the following scenario: - thread A removes the Read/WriteListeners when async timeout/error happens [1], [2] - before receiving AsyncListener#onTimeout/onError, thread B checks whether it is save to perform write invoking ServletOutputStream#isReady. The exception below happens: java.lang.IllegalStateException: It is invalid to call isReady() when the response has not been put into non-blocking mode at org.apache.coyote.Response.isReady(Response.java:635) ~[tomcat-embed-core-8.5.13.jar!/:8.5.13] at org.apache.catalina.connector.OutputBuffer.isReady(OutputBuffer.java:680) ~[tomcat-embed-core-8.5.13.jar!/:8.5.13] at org.apache.catalina.connector.CoyoteOutputStream.isReady(CoyoteOutputStream.java:162) ~[tomcat-embed-core-8.5.13.jar!/:8.5.13] According to javadoc [3] the ServletOutputStream#isReady method does not throw IllegalStateException. "This method can be used to determine if data can be written without blocking." I also checked the specification and there I did not find the expectation in such situation. " boolean isReady(). This method returns true if a write to the ServletOutputStream will succeed, otherwise it will return false. If this method returns true, a write operation can be performed on the ServletOutputStream. If no further data can be written to the ServletOutputStream. then this method will return false till the underlying data is flushed at which point the container will invoke the onWritePossible method of the WriteListener. A subsequent call to this method will return true. " I think that we should not throw ISE but return "false" in such cases. What do you think? Thanks, Violeta [1] https://github.com/apache/tomcat/blob/trunk/java/org/apache/catalina/core/AsyncContextImpl.java#L385 [2] https://github.com/apache/tomcat/blob/trunk/java/org/apache/coyote/AsyncStateMachine.java#L395 [3] https://docs.oracle.com/javaee/7/api/javax/servlet/ServletOutputStream.html#isReady--
svn commit: r1791105 - /tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
Author: markt Date: Wed Apr 12 10:22:14 2017 New Revision: 1791105 URL: http://svn.apache.org/viewvc?rev=1791105&view=rev Log: Fix back-port Modified: tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java Modified: tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java URL: http://svn.apache.org/viewvc/tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java?rev=1791105&r1=1791104&r2=1791105&view=diff == --- tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java (original) +++ tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java Wed Apr 12 10:22:14 2017 @@ -23,6 +23,7 @@ import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.List; +import java.util.Map; import java.util.Set; import org.apache.catalina.util.IOTools; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791104 - in /tomcat/tc8.5.x/trunk: ./ java/org/apache/tomcat/util/net/openssl/ciphers/ test/org/apache/tomcat/util/net/openssl/ciphers/ webapps/docs/
Author: markt Date: Wed Apr 12 10:13:30 2017 New Revision: 1791104 URL: http://svn.apache.org/viewvc?rev=1791104&view=rev Log: Align with OpenSSL Master Remove ECDH(E) ciphers from SSLv3 Modified: tomcat/tc8.5.x/trunk/ (props changed) tomcat/tc8.5.x/trunk/java/org/apache/tomcat/util/net/openssl/ciphers/Cipher.java tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestCipher.java tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestOpenSSLCipherConfigurationParser.java tomcat/tc8.5.x/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java tomcat/tc8.5.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.5.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Wed Apr 12 10:13:30 2017 @@ -1 +1 @@ -/tomcat/trunk:1734785,1734799,1734845,1734928,1735041,1735044,1735480,1735577,1735597,1735599-1735600,1735615,1736145,1736162,1736209,1736280,1736297,1736299,1736489,1736646,1736703,1736836,1736849,1737104-1737105,1737112,1737117,1737119-1737120,1737155,1737157,1737192,1737280,1737339,1737632,1737664,1737715,1737748,1737785,1737834,1737860,1737903,1737959,1738005,1738007,1738014-1738015,1738018,1738022,1738039,1738043,1738059-1738060,1738147,1738149,1738174-1738175,1738261,1738589,1738623-1738625,1738643,1738816,1738850,1738855,1738946-1738948,1738953-1738954,1738979,1738982,1739079-1739081,1739087,1739113,1739153,1739172,1739176,1739191,1739474,1739726,1739762,1739775,1739814,1739817-1739818,1739975,1740131,1740324,1740465,1740495,1740508-1740509,1740520,1740535,1740707,1740803,1740810,1740969,1740980,1740991,1740997,1741015,1741033,1741036,1741058,1741060,1741080,1741147,1741159,1741164,1741173,1741181,1741190,1741197,1741202,1741208,1741213,1741221,1741225,1741232,1741409,1741501 ,1741677,1741892,1741896,1741984,1742023,1742042,1742071,1742090,1742093,1742101,1742105,1742111,1742139,1742146,1742148,1742166,1742181,1742184,1742187,1742246,1742248-1742251,1742263-1742264,1742268,1742276,1742369,1742387,1742448,1742509-1742512,1742917,1742919,1742933,1742975-1742976,1742984,1742986,1743019,1743115,1743117,1743124-1743125,1743134,1743425,1743554,1743679,1743696-1743698,1743700-1743701,1744058,1744064-1744065,1744125,1744194,1744229,1744270,1744323,1744432,1744684,1744697,1744705,1744713,1744760,1744786,1745083,1745142-1745143,1745145,1745177,1745179-1745180,1745227,1745248,1745254,1745337,1745467,1745473,1745576,1745735,1745744,1746304,1746306-1746307,1746319,1746327,1746338,1746340-1746341,1746344,1746427,1746441,1746473,1746490,1746492,1746495-1746496,1746499-1746501,1746503-1746507,1746509,1746549,1746551,1746554,1746556,1746558,1746584,1746620,1746649,1746724,1746939,1746989,1747014,1747028,1747035,1747210,1747225,1747234,1747253,1747404,1747506,1747536,1747 924,1747980,1747993,1748001,1748253,1748452,1748547,1748629,1748676,1748715,1749287,1749296,1749328,1749373,1749465,1749506,1749508,1749665-1749666,1749763,1749865-1749866,1749898,1749978,1749980,1750011,1750015,1750056,1750480,1750617,1750634,1750692,1750697,1750700,1750703,1750707,1750714,1750718,1750723,1750774,1750899,1750975,1750995,1751061,1751097,1751173,1751438,1751447,1751463,1751702,1752212,1752737,1752745,1753078,1753080,1753358,1753363,1754111,1754140-1754141,1754281,1754310,1754445,1754467,1754494,1754496,1754528,1754532-1754533,1754613,1754714,1754874,1754941,1754944,1754950-1754951,1755005,1755007,1755009,1755132,1755180-1755181,1755185,1755190,1755204-1755206,1755208,1755214,1755224,1755227,1755230,1755629,1755646-1755647,1755650,1755653,1755675,1755680,1755683,1755693,1755717,1755731-1755737,1755812,1755828,1755884,1755890,1755918-1755919,1755942,1755958,1755960,1755970,1755993,1756013,1756019,1756039,1756056,1756083-1756114,1756175,1756288-1756289,1756408-1756410,1 756778,1756798,1756878,1756898,1756939,1757123-1757124,1757126,1757128,1757132-1757133,1757136,1757145,1757167-1757168,1757175,1757180,1757182,1757195,1757271,1757278,1757347,1757353-1757354,1757363,1757374,1757399,1757406,1757408,1757485,1757495,1757499,1757527,1757578,1757684,1757722,1757727,1757790,1757799,1757813,1757853,1757883,1757903,1757976,1757997,1758000,1758058,1758072-1758075,1758078-1758079,1758223,1758257,1758261,1758276,1758292,1758369,1758378-1758383,1758421,1758423,1758425-1758427,1758430,1758443,1758448,1758459,1758483,1758486-1758487,1758499,1758525,1758556,1758580,1758582,1758584,1758588,1758842,1759019,1759212,1759224,1759227,1759252,1759274,1759513-1759516,1759611,1759757,1759785-1759790,1760005,1760022,1760109-1760110,1760135,1760200-1760201,1760227,1760300,1760397,1760446,1760454,1760640,1760648,1761057,1761422,1761491,1761498,1761500-1761501,1761550,1761553,1761572,1761574,1761625-1761626,1761628,1761682,1761740,1761752,1762051-1762053,1762123,1762168,176217 2,1762182,1762201-1762202,1762204,1762208,1762288,1762296,1762324,1762348,1762353,1762362,1762374,1762492,1762503,176250
svn commit: r1791103 - /tomcat/trunk/webapps/docs/changelog.xml
Author: markt Date: Wed Apr 12 10:12:56 2017 New Revision: 1791103 URL: http://svn.apache.org/viewvc?rev=1791103&view=rev Log: Update changelog Modified: tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1791103&r1=1791102&r2=1791103&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Wed Apr 12 10:12:56 2017 @@ -92,6 +92,13 @@ + + + +Align cipher configuration parsing with current OpenSSL master. (markt) + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791102 - /tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestOpenSSLCipherConfigurationParser.java
Author: markt Date: Wed Apr 12 10:08:38 2017 New Revision: 1791102 URL: http://svn.apache.org/viewvc?rev=1791102&view=rev Log: Enable tests to pass when running against OpenSSL master and OpenSSL 1.0.2 Modified: tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestOpenSSLCipherConfigurationParser.java Modified: tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestOpenSSLCipherConfigurationParser.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestOpenSSLCipherConfigurationParser.java?rev=1791102&r1=1791101&r2=1791102&view=diff == --- tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestOpenSSLCipherConfigurationParser.java (original) +++ tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestOpenSSLCipherConfigurationParser.java Wed Apr 12 10:08:38 2017 @@ -306,7 +306,11 @@ public class TestOpenSSLCipherConfigurat @Test public void testSSLv3() throws Exception { -testSpecification("SSLv3"); +// In OpenSSL 1.1.0-dev, TLSv1 refers to those ciphers that require +// TLSv1 rather than being an alias for SSLv3 +if (TesterOpenSSL.VERSION < 10100) { +testSpecification("SSLv3:TLSv1"); +} } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791101 - /tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
Author: markt Date: Wed Apr 12 09:58:12 2017 New Revision: 1791101 URL: http://svn.apache.org/viewvc?rev=1791101&view=rev Log: Need to process renames later, once cipher name has been extracted from OpenSSL output Modified: tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java Modified: tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java?rev=1791101&r1=1791100&r2=1791101&view=diff == --- tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java (original) +++ tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java Wed Apr 12 09:58:12 2017 @@ -325,7 +325,7 @@ public class TesterOpenSSL { renamed.put("ECDHE-PSK-AES128-CBC-SHA+SSLv3", "ECDHE-PSK-AES128-CBC-SHA+TLSv1"); renamed.put("ECDHE-PSK-AES256-CBC-SHA+SSLv3", "ECDHE-PSK-AES256-CBC-SHA+TLSv1"); renamed.put("ECDHE-PSK-NULL-SHA+SSLv3", "ECDHE-PSK-NULL-SHA+TLSv1"); -OPENSSL_RENAMED_CIPHERS = renamed; +OPENSSL_RENAMED_CIPHERS = Collections.unmodifiableMap(renamed); } @@ -365,18 +365,16 @@ public class TesterOpenSSL { for (String cipher : ciphers) { // Handle rename for 1.1.0 onwards cipher = cipher.replaceAll("EDH", "DHE"); -// More renames -if (OPENSSL_RENAMED_CIPHERS.containsKey(cipher)) { -cipher = OPENSSL_RENAMED_CIPHERS.get(cipher); -} if (first) { first = false; } else { output.append(':'); } +StringBuilder name = new StringBuilder(); + // Name is first part int i = cipher.indexOf(' '); -output.append(cipher.substring(0, i)); +name.append(cipher.substring(0, i)); // Advance i past the space while (Character.isWhitespace(cipher.charAt(i))) { @@ -385,8 +383,15 @@ public class TesterOpenSSL { // Protocol is the second int j = cipher.indexOf(' ', i); -output.append('+'); -output.append(cipher.substring(i, j)); +name.append('+'); +name.append(cipher.substring(i, j)); + +// More renames +if (OPENSSL_RENAMED_CIPHERS.containsKey(name.toString())) { +output.append(OPENSSL_RENAMED_CIPHERS.get(name.toString())); +} else { +output.append(name.toString()); +} } return output.toString(); } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791099 - /tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java
Author: markt Date: Wed Apr 12 09:46:59 2017 New Revision: 1791099 URL: http://svn.apache.org/viewvc?rev=1791099&view=rev Log: Enable tests to pass when running against OpenSSL master and OpenSSL 1.0.2 Modified: tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java Modified: tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java?rev=1791099&r1=1791098&r2=1791099&view=diff == --- tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java (original) +++ tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TesterOpenSSL.java Wed Apr 12 09:46:59 2017 @@ -20,6 +20,7 @@ import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.Collections; +import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -34,6 +35,8 @@ public class TesterOpenSSL { public static final Set OPENSSL_UNIMPLEMENTED_CIPHERS; +public static final Map OPENSSL_RENAMED_CIPHERS; + static { // Note: The following lists are intended to be aligned with the most // recent release of each OpenSSL release branch. Running the unit @@ -300,6 +303,29 @@ public class TesterOpenSSL { unimplemented.add(Cipher.TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA); } OPENSSL_UNIMPLEMENTED_CIPHERS = Collections.unmodifiableSet(unimplemented); + +Map renamed = new HashMap<>(); +renamed.put("ECDH-ECDSA-RC4-SHA+SSLv3", "ECDH-ECDSA-RC4-SHA+TLSv1"); +renamed.put("ECDHE-ECDSA-NULL-SHA+SSLv3", "ECDHE-ECDSA-NULL-SHA+TLSv1"); +renamed.put("ECDHE-ECDSA-DES-CBC3-SHA+SSLv3", "ECDHE-ECDSA-DES-CBC3-SHA+TLSv1"); +renamed.put("ECDHE-ECDSA-AES128-SHA+SSLv3", "ECDHE-ECDSA-AES128-SHA+TLSv1"); +renamed.put("ECDHE-ECDSA-AES256-SHA+SSLv3", "ECDHE-ECDSA-AES256-SHA+TLSv1"); +renamed.put("ECDHE-RSA-NULL-SHA+SSLv3", "ECDHE-RSA-NULL-SHA+TLSv1"); +renamed.put("ECDHE-RSA-RC4-SHA+SSLv3", "ECDHE-RSA-RC4-SHA+TLSv1"); +renamed.put("ECDHE-RSA-DES-CBC3-SHA+SSLv3", "ECDHE-RSA-DES-CBC3-SHA+TLSv1"); +renamed.put("ECDHE-RSA-AES128-SHA+SSLv3", "ECDHE-RSA-AES128-SHA+TLSv1"); +renamed.put("ECDHE-RSA-AES256-SHA+SSLv3", "ECDHE-RSA-AES256-SHA+TLSv1"); +renamed.put("AECDH-NULL-SHA+SSLv3", "AECDH-NULL-SHA+TLSv1"); +renamed.put("AECDH-RC4-SHA+SSLv3", "AECDH-RC4-SHA+TLSv1"); +renamed.put("AECDH-DES-CBC3-SHA+SSLv3", "AECDH-DES-CBC3-SHA+TLSv1"); +renamed.put("AECDH-AES128-SHA+SSLv3", "AECDH-AES128-SHA+TLSv1"); +renamed.put("AECDH-AES256-SHA+SSLv3", "AECDH-AES256-SHA+TLSv1"); +renamed.put("ECDHE-PSK-RC4-SHA+SSLv3", "ECDHE-PSK-RC4-SHA+TLSv1"); +renamed.put("ECDHE-PSK-3DES-EDE-CBC-SHA+SSLv3", "ECDHE-PSK-3DES-EDE-CBC-SHA+TLSv1"); +renamed.put("ECDHE-PSK-AES128-CBC-SHA+SSLv3", "ECDHE-PSK-AES128-CBC-SHA+TLSv1"); +renamed.put("ECDHE-PSK-AES256-CBC-SHA+SSLv3", "ECDHE-PSK-AES256-CBC-SHA+TLSv1"); +renamed.put("ECDHE-PSK-NULL-SHA+SSLv3", "ECDHE-PSK-NULL-SHA+TLSv1"); +OPENSSL_RENAMED_CIPHERS = renamed; } @@ -339,6 +365,10 @@ public class TesterOpenSSL { for (String cipher : ciphers) { // Handle rename for 1.1.0 onwards cipher = cipher.replaceAll("EDH", "DHE"); +// More renames +if (OPENSSL_RENAMED_CIPHERS.containsKey(cipher)) { +cipher = OPENSSL_RENAMED_CIPHERS.get(cipher); +} if (first) { first = false; } else { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791096 - /tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestCipher.java
Author: markt Date: Wed Apr 12 09:22:09 2017 New Revision: 1791096 URL: http://svn.apache.org/viewvc?rev=1791096&view=rev Log: Follow-up to r1791095 Need to update OpenSSL names for ciphers that are not supported by IBM JREs Modified: tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestCipher.java Modified: tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestCipher.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestCipher.java?rev=1791096&r1=1791095&r2=1791096&view=diff == --- tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestCipher.java (original) +++ tomcat/trunk/test/org/apache/tomcat/util/net/openssl/ciphers/TestCipher.java Wed Apr 12 09:22:09 2017 @@ -646,14 +646,14 @@ public class TestCipher { "ECDHE-ECDSA-CAMELLIA256-SHA384+TLSv1.2", "ECDHE-ECDSA-CHACHA20-POLY1305+TLSv1.2", "ECDHE-PSK-3DES-EDE-CBC-SHA+SSLv3", -"ECDHE-PSK-AES128-CBC-SHA+SSLv3", +"ECDHE-PSK-AES128-CBC-SHA+TLSv1", "ECDHE-PSK-AES128-CBC-SHA256+TLSv1", -"ECDHE-PSK-AES256-CBC-SHA+SSLv3", +"ECDHE-PSK-AES256-CBC-SHA+TLSv1", "ECDHE-PSK-AES256-CBC-SHA384+TLSv1", "ECDHE-PSK-CAMELLIA128-SHA256+TLSv1", "ECDHE-PSK-CAMELLIA256-SHA384+TLSv1", "ECDHE-PSK-CHACHA20-POLY1305+TLSv1.2", -"ECDHE-PSK-NULL-SHA+SSLv3", +"ECDHE-PSK-NULL-SHA+TLSv1", "ECDHE-PSK-NULL-SHA256+TLSv1", "ECDHE-PSK-NULL-SHA384+TLSv1", "ECDHE-PSK-RC4-SHA+SSLv3", - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791095 - /tomcat/trunk/java/org/apache/tomcat/util/net/openssl/ciphers/Cipher.java
Author: markt Date: Wed Apr 12 09:15:46 2017 New Revision: 1791095 URL: http://svn.apache.org/viewvc?rev=1791095&view=rev Log: Align with OpenSSL Master Remove ECDH(E) ciphers from SSLv3 Modified: tomcat/trunk/java/org/apache/tomcat/util/net/openssl/ciphers/Cipher.java Modified: tomcat/trunk/java/org/apache/tomcat/util/net/openssl/ciphers/Cipher.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/openssl/ciphers/Cipher.java?rev=1791095&r1=1791094&r2=1791095&view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/net/openssl/ciphers/Cipher.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/net/openssl/ciphers/Cipher.java Wed Apr 12 09:15:46 2017 @@ -2728,7 +2728,7 @@ public enum Cipher { Authentication.ECDH, Encryption.RC4, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.MEDIUM, false, @@ -2796,7 +2796,7 @@ public enum Cipher { Authentication.ECDSA, Encryption.eNULL, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.STRONG_NONE, true, @@ -2830,7 +2830,7 @@ public enum Cipher { Authentication.ECDSA, Encryption.TRIPLE_DES, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.MEDIUM, true, @@ -2847,7 +2847,7 @@ public enum Cipher { Authentication.ECDSA, Encryption.AES128, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.HIGH, true, @@ -2864,7 +2864,7 @@ public enum Cipher { Authentication.ECDSA, Encryption.AES256, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.HIGH, true, @@ -2966,7 +2966,7 @@ public enum Cipher { Authentication.RSA, Encryption.eNULL, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.STRONG_NONE, true, @@ -2983,7 +2983,7 @@ public enum Cipher { Authentication.RSA, Encryption.RC4, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.MEDIUM, false, @@ -3000,7 +3000,7 @@ public enum Cipher { Authentication.RSA, Encryption.TRIPLE_DES, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.MEDIUM, true, @@ -3017,7 +3017,7 @@ public enum Cipher { Authentication.RSA, Encryption.AES128, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.HIGH, true, @@ -3034,7 +3034,7 @@ public enum Cipher { Authentication.RSA, Encryption.AES256, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.HIGH, true, @@ -3051,7 +3051,7 @@ public enum Cipher { Authentication.aNULL, Encryption.eNULL, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.STRONG_NONE, true, @@ -3068,7 +3068,7 @@ public enum Cipher { Authentication.aNULL, Encryption.RC4, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.MEDIUM, false, @@ -3085,7 +3085,7 @@ public enum Cipher { Authentication.aNULL, Encryption.TRIPLE_DES, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.MEDIUM, true, @@ -3102,7 +3102,7 @@ public enum Cipher { Authentication.aNULL, Encryption.AES128, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.HIGH, true, @@ -3119,7 +3119,7 @@ public enum Cipher { Authentication.aNULL, Encryption.AES256, MessageDigest.SHA1, -Protocol.SSLv3, +Protocol.TLSv1, false, EncryptionLevel.HIGH, true, @@ -3564,7 +3564,7 @@ public enum Cipher { Authentic
buildbot success in on tomcat-trunk
The Buildbot has detected a restored build on builder tomcat-trunk while building . Full details are available at: https://ci.apache.org/builders/tomcat-trunk/builds/2298 Buildbot URL: https://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] 1791092 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
buildbot failure in on tomcat-trunk
The Buildbot has detected a new failure on builder tomcat-trunk while building . Full details are available at: https://ci.apache.org/builders/tomcat-trunk/builds/2297 Buildbot URL: https://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] 1791090 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
svn commit: r1791092 - /tomcat/trunk/java/org/apache/catalina/tribes/transport/ReceiverBase.java
Author: remm Date: Wed Apr 12 08:45:04 2017 New Revision: 1791092 URL: http://svn.apache.org/viewvc?rev=1791092&view=rev Log: WS Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/ReceiverBase.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/ReceiverBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/ReceiverBase.java?rev=1791092&r1=1791091&r2=1791092&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/transport/ReceiverBase.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/transport/ReceiverBase.java Wed Apr 12 08:45:04 2017 @@ -114,7 +114,7 @@ public abstract class ReceiverBase imple if (oname != null) { JmxRegistry jmxRegistry = JmxRegistry.getRegistry(channel); if (jmxRegistry != null) jmxRegistry.unregisterJmx(oname); -oname = null; +oname = null; } channel = null; } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1791090 - in /tomcat/trunk: java/javax/el/ java/javax/security/auth/message/config/ java/javax/websocket/ java/javax/websocket/server/ java/org/apache/catalina/authenticator/jaspic/ java/
Author: markt Date: Wed Apr 12 08:39:22 2017 New Revision: 1791090 URL: http://svn.apache.org/viewvc?rev=1791090&view=rev Log: Review of r1791068 by kkolinko Class.getConstructor().newInstance() is a better replacement for Class.newInstance() than Class.getDeclaredConstructor().newInstance() Modified: tomcat/trunk/java/javax/el/ExpressionFactory.java tomcat/trunk/java/javax/security/auth/message/config/AuthConfigFactory.java tomcat/trunk/java/javax/websocket/ContainerProvider.java tomcat/trunk/java/javax/websocket/server/ServerEndpointConfig.java tomcat/trunk/java/org/apache/catalina/authenticator/jaspic/SimpleServerAuthConfig.java tomcat/trunk/java/org/apache/catalina/connector/Connector.java tomcat/trunk/java/org/apache/catalina/connector/Request.java tomcat/trunk/java/org/apache/catalina/core/DefaultInstanceManager.java tomcat/trunk/java/org/apache/catalina/core/StandardContext.java tomcat/trunk/java/org/apache/catalina/core/StandardHost.java tomcat/trunk/modules/jdbc-pool/src/test/java/org/apache/tomcat/jdbc/test/TestSlowQueryComparator.java Modified: tomcat/trunk/java/javax/el/ExpressionFactory.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/ExpressionFactory.java?rev=1791090&r1=1791089&r2=1791090&view=diff == --- tomcat/trunk/java/javax/el/ExpressionFactory.java (original) +++ tomcat/trunk/java/javax/el/ExpressionFactory.java Wed Apr 12 08:39:22 2017 @@ -169,7 +169,7 @@ public abstract class ExpressionFactory } } if (constructor == null) { -result = (ExpressionFactory) clazz.getDeclaredConstructor().newInstance(); +result = (ExpressionFactory) clazz.getConstructor().newInstance(); } else { result = (ExpressionFactory) constructor.newInstance(properties); Modified: tomcat/trunk/java/javax/security/auth/message/config/AuthConfigFactory.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/security/auth/message/config/AuthConfigFactory.java?rev=1791090&r1=1791089&r2=1791090&view=diff == --- tomcat/trunk/java/javax/security/auth/message/config/AuthConfigFactory.java (original) +++ tomcat/trunk/java/javax/security/auth/message/config/AuthConfigFactory.java Wed Apr 12 08:39:22 2017 @@ -73,7 +73,7 @@ public abstract class AuthConfigFactory // should not be used since that would trigger a memory leak // in container environments. Class clazz = Class.forName(className); -return (AuthConfigFactory) clazz.getDeclaredConstructor().newInstance(); +return (AuthConfigFactory) clazz.getConstructor().newInstance(); } }); } catch (PrivilegedActionException e) { Modified: tomcat/trunk/java/javax/websocket/ContainerProvider.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/websocket/ContainerProvider.java?rev=1791090&r1=1791089&r2=1791090&view=diff == --- tomcat/trunk/java/javax/websocket/ContainerProvider.java (original) +++ tomcat/trunk/java/javax/websocket/ContainerProvider.java Wed Apr 12 08:39:22 2017 @@ -51,7 +51,7 @@ public abstract class ContainerProvider Class clazz = (Class) Class.forName( DEFAULT_PROVIDER_CLASS_NAME); -result = clazz.getDeclaredConstructor().newInstance(); +result = clazz.getConstructor().newInstance(); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | IllegalArgumentException | InvocationTargetException | NoSuchMethodException | SecurityException e) { Modified: tomcat/trunk/java/javax/websocket/server/ServerEndpointConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/websocket/server/ServerEndpointConfig.java?rev=1791090&r1=1791089&r2=1791090&view=diff == --- tomcat/trunk/java/javax/websocket/server/ServerEndpointConfig.java (original) +++ tomcat/trunk/java/javax/websocket/server/ServerEndpointConfig.java Wed Apr 12 08:39:22 2017 @@ -176,7 +176,7 @@ public interface ServerEndpointConfig ex Class clazz = (Class) Class.forName( DEFAULT_IMPL_CLASSNAME); -result = clazz.getDeclaredConstructor().newInstance(); +result = clazz.getConstructor().newInstance(); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | IllegalArgum
Re: svn commit: r1791050 - in /tomcat/trunk/java: javax/el/ javax/security/auth/message/config/ javax/websocket/ javax/websocket/server/ org/apache/catalina/authenticator/jaspic/ org/apache/catalina/c
On 12/04/17 09:24, Konstantin Kolinko wrote: > 2017-04-12 1:36 GMT+03:00 : >> Author: markt >> Date: Tue Apr 11 22:36:01 2017 >> New Revision: 1791050 >> >> URL: http://svn.apache.org/viewvc?rev=1791050&view=rev >> Log: >> Refactoring in preparation for Java 9. Refactor to avoid using some methods >> that will be deprecated in Java 9 onwards. >> >> Modified: >> tomcat/trunk/java/javax/el/ExpressionFactory.java >> >> tomcat/trunk/java/javax/security/auth/message/config/AuthConfigFactory.java >> tomcat/trunk/java/javax/websocket/ContainerProvider.java >> tomcat/trunk/java/javax/websocket/server/ServerEndpointConfig.java >> >> tomcat/trunk/java/org/apache/catalina/authenticator/jaspic/SimpleServerAuthConfig.java >> tomcat/trunk/java/org/apache/catalina/connector/Connector.java >> tomcat/trunk/java/org/apache/catalina/connector/Request.java >> tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java >> tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java >> tomcat/trunk/java/org/apache/catalina/core/DefaultInstanceManager.java >> tomcat/trunk/java/org/apache/catalina/core/StandardContext.java >> tomcat/trunk/java/org/apache/catalina/core/StandardHost.java >> tomcat/trunk/java/org/apache/tomcat/InstanceManager.java >> >> Modified: tomcat/trunk/java/javax/el/ExpressionFactory.java >> URL: >> http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/ExpressionFactory.java?rev=1791050&r1=1791049&r2=1791050&view=diff >> == >> --- tomcat/trunk/java/javax/el/ExpressionFactory.java (original) >> +++ tomcat/trunk/java/javax/el/ExpressionFactory.java Tue Apr 11 22:36:01 >> 2017 >> @@ -169,13 +169,14 @@ public abstract class ExpressionFactory >> } >> } >> if (constructor == null) { >> -result = (ExpressionFactory) clazz.newInstance(); >> +result = (ExpressionFactory) >> clazz.getDeclaredConstructor().newInstance(); > > The above should be > > result = (ExpressionFactory) clazz.getConstructor().newInstance(); > > Methods newInstance(), getConstructor() use a public constructor, but > getDeclared*() may return a non-public method and using it requires > additional privileges (checkMemberAccess(this, Member.DECLARED)). > > Javadoc: http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html > > > The same for other changes in this commit. Ack. I went with the recommendation in the deprecation comment for newInstance() but I agree getConstructor() is a better replacement. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1791050 - in /tomcat/trunk/java: javax/el/ javax/security/auth/message/config/ javax/websocket/ javax/websocket/server/ org/apache/catalina/authenticator/jaspic/ org/apache/catalina/c
2017-04-12 1:36 GMT+03:00 : > Author: markt > Date: Tue Apr 11 22:36:01 2017 > New Revision: 1791050 > > URL: http://svn.apache.org/viewvc?rev=1791050&view=rev > Log: > Refactoring in preparation for Java 9. Refactor to avoid using some methods > that will be deprecated in Java 9 onwards. > > Modified: > tomcat/trunk/java/javax/el/ExpressionFactory.java > > tomcat/trunk/java/javax/security/auth/message/config/AuthConfigFactory.java > tomcat/trunk/java/javax/websocket/ContainerProvider.java > tomcat/trunk/java/javax/websocket/server/ServerEndpointConfig.java > > tomcat/trunk/java/org/apache/catalina/authenticator/jaspic/SimpleServerAuthConfig.java > tomcat/trunk/java/org/apache/catalina/connector/Connector.java > tomcat/trunk/java/org/apache/catalina/connector/Request.java > tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java > tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java > tomcat/trunk/java/org/apache/catalina/core/DefaultInstanceManager.java > tomcat/trunk/java/org/apache/catalina/core/StandardContext.java > tomcat/trunk/java/org/apache/catalina/core/StandardHost.java > tomcat/trunk/java/org/apache/tomcat/InstanceManager.java > > Modified: tomcat/trunk/java/javax/el/ExpressionFactory.java > URL: > http://svn.apache.org/viewvc/tomcat/trunk/java/javax/el/ExpressionFactory.java?rev=1791050&r1=1791049&r2=1791050&view=diff > == > --- tomcat/trunk/java/javax/el/ExpressionFactory.java (original) > +++ tomcat/trunk/java/javax/el/ExpressionFactory.java Tue Apr 11 22:36:01 2017 > @@ -169,13 +169,14 @@ public abstract class ExpressionFactory > } > } > if (constructor == null) { > -result = (ExpressionFactory) clazz.newInstance(); > +result = (ExpressionFactory) > clazz.getDeclaredConstructor().newInstance(); The above should be result = (ExpressionFactory) clazz.getConstructor().newInstance(); Methods newInstance(), getConstructor() use a public constructor, but getDeclared*() may return a non-public method and using it requires additional privileges (checkMemberAccess(this, Member.DECLARED)). Javadoc: http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html The same for other changes in this commit. Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org