[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.

2017-04-12 Thread bugzilla
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

2017-04-12 Thread bugzilla
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

2017-04-12 Thread Mark Thomas
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

2017-04-12 Thread Mark Thomas
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/

2017-04-12 Thread markt
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

svn commit: r1791176 - in /tomcat/tags/TOMCAT_9_0_0_M20: ./ build.properties.default webapps/docs/changelog.xml

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 19:17:46 2017
New Revision: 1791176

URL: http://svn.apache.org/viewvc?rev=1791176=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=1791174=1791176=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=1791174=1791176=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

2017-04-12 Thread bugzilla
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 Thread Violeta Georgieva
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

2017-04-12 Thread violetagg
Author: violetagg
Date: Wed Apr 12 16:02:39 2017
New Revision: 1791139

URL: http://svn.apache.org/viewvc?rev=1791139=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
 

svn commit: r1791138 - in /tomcat/tc8.5.x/trunk: ./ java/org/apache/coyote/Response.java webapps/docs/changelog.xml

2017-04-12 Thread violetagg
Author: violetagg
Date: Wed Apr 12 15:56:23 2017
New Revision: 1791138

URL: http://svn.apache.org/viewvc?rev=1791138=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
 

[Bug 60769] Problem with Jsp character encoding configuration

2017-04-12 Thread bugzilla
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 Thread Violeta Georgieva
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=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

2017-04-12 Thread violetagg
Author: violetagg
Date: Wed Apr 12 15:52:06 2017
New Revision: 1791137

URL: http://svn.apache.org/viewvc?rev=1791137=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=1791136=1791137=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=1791136=1791137=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

2017-04-12 Thread bugzilla
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=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 Thread Violeta Georgieva
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=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

2017-04-12 Thread violetagg
Author: violetagg
Date: Wed Apr 12 15:41:54 2017
New Revision: 1791136

URL: http://svn.apache.org/viewvc?rev=1791136=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=1791135=1791136=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

2017-04-12 Thread 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=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

2017-04-12 Thread violetagg
Author: violetagg
Date: Wed Apr 12 15:34:26 2017
New Revision: 1791134

URL: http://svn.apache.org/viewvc?rev=1791134=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=1791133=1791134=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=1791133=1791134=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

2017-04-12 Thread 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.

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

2017-04-12 Thread buildbot
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

2017-04-12 Thread Violeta Georgieva
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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 15:00:51 2017
New Revision: 1791130

URL: http://svn.apache.org/viewvc?rev=1791130=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
 

svn commit: r1791129 - in /tomcat/trunk/java/org/apache/coyote/http2: Http2AsyncUpgradeHandler.java Http2UpgradeHandler.java

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 15:00:09 2017
New Revision: 1791129

URL: http://svn.apache.org/viewvc?rev=1791129=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=1791128=1791129=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=1791128=1791129=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

2017-04-12 Thread 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.

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

2017-04-12 Thread buildbot
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

2017-04-12 Thread bugzilla
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

2017-04-12 Thread bugzilla
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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 14:27:29 2017
New Revision: 1791125

URL: http://svn.apache.org/viewvc?rev=1791125=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
 

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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 14:25:50 2017
New Revision: 1791124

URL: http://svn.apache.org/viewvc?rev=1791124=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=1791123=1791124=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=1791123=1791124=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, 0x00, 0x00, 0x00, 0x00 };
@@ 

ServletOutputStream#isReady throws ISE

2017-04-12 Thread Violeta Georgieva
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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 10:22:14 2017
New Revision: 1791105

URL: http://svn.apache.org/viewvc?rev=1791105=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=1791104=1791105=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/

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 10:13:30 2017
New Revision: 1791104

URL: http://svn.apache.org/viewvc?rev=1791104=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
 

svn commit: r1791103 - /tomcat/trunk/webapps/docs/changelog.xml

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 10:12:56 2017
New Revision: 1791103

URL: http://svn.apache.org/viewvc?rev=1791103=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=1791102=1791103=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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 10:08:38 2017
New Revision: 1791102

URL: http://svn.apache.org/viewvc?rev=1791102=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=1791101=1791102=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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 09:58:12 2017
New Revision: 1791101

URL: http://svn.apache.org/viewvc?rev=1791101=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=1791100=1791101=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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 09:46:59 2017
New Revision: 1791099

URL: http://svn.apache.org/viewvc?rev=1791099=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=1791098=1791099=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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 09:22:09 2017
New Revision: 1791096

URL: http://svn.apache.org/viewvc?rev=1791096=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=1791095=1791096=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

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 09:15:46 2017
New Revision: 1791095

URL: http://svn.apache.org/viewvc?rev=1791095=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=1791094=1791095=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 {
 Authentication.PSK,
 

buildbot success in on tomcat-trunk

2017-04-12 Thread buildbot
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

2017-04-12 Thread buildbot
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

2017-04-12 Thread remm
Author: remm
Date: Wed Apr 12 08:45:04 2017
New Revision: 1791092

URL: http://svn.apache.org/viewvc?rev=1791092=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=1791091=1791092=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/

2017-04-12 Thread markt
Author: markt
Date: Wed Apr 12 08:39:22 2017
New Revision: 1791090

URL: http://svn.apache.org/viewvc?rev=1791090=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=1791089=1791090=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=1791089=1791090=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=1791089=1791090=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=1791089=1791090=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 |
 IllegalArgumentException | InvocationTargetException |
  

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 Thread Mark Thomas
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=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=1791049=1791050=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 Thread Konstantin Kolinko
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=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=1791049=1791050=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