[Tomcat Wiki] Trivial Update of BrittneyY by BrittneyY
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The BrittneyY page has been changed by BrittneyY: http://wiki.apache.org/tomcat/BrittneyY New page: Nothing to write about me at all.BR Feels good to be a part of this community.BR I just wish Im useful at allBR BR Take a look at my page; [[http://www.youtube.com/user/shamballabracelet|cheap shamballa bracelet]] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Trivial Update of Reva6518 by Reva6518
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The Reva6518 page has been changed by Reva6518: http://wiki.apache.org/tomcat/Reva6518 New page: Dorene is the title I like to be named with and I experience cozy when folks use the entire name.BR North Carolina is in which I have constantly been dwelling and my household enjoys it. The matter I adore most undertaking aerobics and I've been doing it for rather a though. Because I was 18 I've been working as an details officer and I am carrying out quite fantastic economically.BR BR BR My web-site - [[http://do-follow.info/News/nice-khao-lak-hotels-photos-2/|Look At This]] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Typo
Hi, http://tomcat.apache.org/tomcat-7.0-doc/config/http.html restrictedUserAgents - The value is a regular expression (using java.util.regex) *matching matching* ... -Ognjen - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1458694 - /tomcat/trunk/webapps/docs/config/http.xml
Author: violetagg Date: Wed Mar 20 09:10:49 2013 New Revision: 1458694 URL: http://svn.apache.org/r1458694 Log: Correct typo reported via mailing list Modified: tomcat/trunk/webapps/docs/config/http.xml Modified: tomcat/trunk/webapps/docs/config/http.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/http.xml?rev=1458694r1=1458693r2=1458694view=diff == --- tomcat/trunk/webapps/docs/config/http.xml (original) +++ tomcat/trunk/webapps/docs/config/http.xml Wed Mar 20 09:10:49 2013 @@ -454,7 +454,7 @@ /attribute attribute name=restrictedUserAgents required=false - pThe value is a regular expression (using codejava.util.regex/code) matching + pThe value is a regular expression (using codejava.util.regex/code) matching the codeuser-agent/code header of HTTP clients for which HTTP/1.1 or HTTP/1.0 keep alive should not be used, even if the clients advertise support for these features. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1458699 - in /tomcat/tc7.0.x/trunk: ./ webapps/docs/config/http.xml
Author: violetagg Date: Wed Mar 20 09:22:41 2013 New Revision: 1458699 URL: http://svn.apache.org/r1458699 Log: Merged revision 1458694 from tomcat/trunk: Correct typo reported via mailing list Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/webapps/docs/config/http.xml Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1458694 Modified: tomcat/tc7.0.x/trunk/webapps/docs/config/http.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/config/http.xml?rev=1458699r1=1458698r2=1458699view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/config/http.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/config/http.xml Wed Mar 20 09:22:41 2013 @@ -454,7 +454,7 @@ /attribute attribute name=restrictedUserAgents required=false - pThe value is a regular expression (using codejava.util.regex/code) matching + pThe value is a regular expression (using codejava.util.regex/code) matching the codeuser-agent/code header of HTTP clients for which HTTP/1.1 or HTTP/1.0 keep alive should not be used, even if the clients advertise support for these features. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Typo
2013/3/20 Ognjen Blagojevic wrote: Hi, http://tomcat.apache.org/tomcat-7.0-doc/config/http.html restrictedUserAgents - The value is a regular expression (using java.util.regex) *matching matching* ... Thank you for the report. The fixed documentation will be available with the next release of Tomcat 7 (7.0.39) Regards Violeta - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1458709 - /tomcat/trunk/java/org/apache/catalina/websocket/
Author: markt Date: Wed Mar 20 09:56:29 2013 New Revision: 1458709 URL: http://svn.apache.org/r1458709 Log: Drop the non-JSR356 WebSocket implementation Removed: tomcat/trunk/java/org/apache/catalina/websocket/ - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1458710 - in /tomcat/trunk: java/javax/servlet/http/ java/org/apache/catalina/connector/ java/org/apache/coyote/ java/org/apache/tomcat/websocket/server/ test/org/apache/coyote/http11/upg
Author: markt Date: Wed Mar 20 09:58:07 2013 New Revision: 1458710 URL: http://svn.apache.org/r1458710 Log: Align implementation with new name in spec WsProtocolHandler - WsHttpUpgradeHanlder Align implementation with new HttpServletRequest.upgrade() method Added: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsHttpUpgradeHandler.java - copied, changed from r1458695, tomcat/trunk/java/org/apache/tomcat/websocket/server/WsProtocolHandler.java Removed: tomcat/trunk/java/org/apache/tomcat/websocket/server/WsProtocolHandler.java Modified: tomcat/trunk/java/javax/servlet/http/HttpServletRequest.java tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java tomcat/trunk/java/javax/servlet/http/HttpUpgradeHandler.java tomcat/trunk/java/org/apache/catalina/connector/Request.java tomcat/trunk/java/org/apache/catalina/connector/RequestFacade.java tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java tomcat/trunk/java/org/apache/tomcat/websocket/server/LocalStrings.properties tomcat/trunk/java/org/apache/tomcat/websocket/server/WsRemoteEndpointImplServer.java tomcat/trunk/java/org/apache/tomcat/websocket/server/WsServlet.java tomcat/trunk/test/org/apache/coyote/http11/upgrade/TestUpgrade.java Modified: tomcat/trunk/java/javax/servlet/http/HttpServletRequest.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpServletRequest.java?rev=1458710r1=1458709r2=1458710view=diff == --- tomcat/trunk/java/javax/servlet/http/HttpServletRequest.java (original) +++ tomcat/trunk/java/javax/servlet/http/HttpServletRequest.java Wed Mar 20 09:58:07 2013 @@ -512,5 +512,6 @@ public interface HttpServletRequest exte * * @since Servlet 3.1 */ -public void upgrade(HttpUpgradeHandler handler) throws java.io.IOException; +public T extends HttpUpgradeHandler T upgrade( +ClassT httpUpgradeHandlerClass) throws java.io.IOException; } Modified: tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java?rev=1458710r1=1458709r2=1458710view=diff == --- tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java (original) +++ tomcat/trunk/java/javax/servlet/http/HttpServletRequestWrapper.java Wed Mar 20 09:58:07 2013 @@ -364,13 +364,13 @@ public class HttpServletRequestWrapper e * {@inheritDoc} * p * The default behavior of this method is to return - * {@link HttpServletRequest#upgrade(HttpUpgradeHandler)} - * on the wrapped request object. + * {@link HttpServletRequest#upgrade(Class)} on the wrapped request object. * * @since Servlet 3.1 */ @Override -public void upgrade(HttpUpgradeHandler handler) throws java.io.IOException { -this._getHttpServletRequest().upgrade(handler); +public T extends HttpUpgradeHandler T upgrade( +ClassT httpUpgradeHandlerClass) throws IOException { +return this._getHttpServletRequest().upgrade(httpUpgradeHandlerClass); } } Modified: tomcat/trunk/java/javax/servlet/http/HttpUpgradeHandler.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpUpgradeHandler.java?rev=1458710r1=1458709r2=1458710view=diff == --- tomcat/trunk/java/javax/servlet/http/HttpUpgradeHandler.java (original) +++ tomcat/trunk/java/javax/servlet/http/HttpUpgradeHandler.java Wed Mar 20 09:58:07 2013 @@ -25,13 +25,18 @@ public interface HttpUpgradeHandler { /** * This method is called once the request/response pair where - * {@link HttpServletRequest#upgrade(HttpUpgradeHandler)} is called has - * completed processing and is the point where control of the connection - * passes from the container to the {@link HttpUpgradeHandler}. + * {@link HttpServletRequest#upgrade(Class)} is called has completed + * processing and is the point where control of the connection passes from + * the container to the {@link HttpUpgradeHandler}. * * @param connectionThe connection that has been upgraded * * @since Servlet 3.1 */ void init(WebConnection connection); + +/** + * This method is called after the upgraded connection has been closed. + */ +void destroy(); } Modified: tomcat/trunk/java/org/apache/catalina/connector/Request.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/Request.java?rev=1458710r1=1458709r2=1458710view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/Request.java (original) +++
[Bug 54728] HttpServletRequest#upgrade() and other interfaces don't match spec; change may be impossible to implement
https://issues.apache.org/bugzilla/show_bug.cgi?id=54728 Mark Thomas ma...@apache.org changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #2 from Mark Thomas ma...@apache.org --- This has been fixed in trunk. Your first patch isn't far off. I dropped o.a.catalina.websocket as the old implementation needed to be dropped at some point and now was a good a time as any. The other differences were: - leave init() as is - move most of the constructor to preInit() (similar to your doAfterUpgrade()) - call preInit() from the Servlet immediately after calling HttpServletRequest.upgrade() The actual upgrade is performed by the container once the Servlet.service() method exits. The upgrade() call doesn't trigger the upgrade it just tells the container which object is to handler the connection once the current HTTP request completes. -- 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 54729] new HttpParser.parseAuthorizationBasic method
https://issues.apache.org/bugzilla/show_bug.cgi?id=54729 --- Comment #1 from Mark Thomas ma...@apache.org --- Regarding your points: 1. Clarity vs efficiency is always a trade off. It depends how much efficiency has been lost. Do you have any performance numbers? 2. I don't see a test case either. I'd rather get any bugs in the decoder fixed than put sticking plasters over other bits of code. 3. I'd prefer to do this first. That code is only still in the code base because it support ByteChunk / CharChunk which should allow a more efficient interface with the rest of the Tomcat code base. It is probably time that that assumption is tested. 4. It is very unlikely we will be adding Commons Codec as a dependency to Tomcat. We may do an svn copy and rename much like we have done for FileUpload but the usefulness of that depends on the ByteChunk/CharChunk issues in 3. For FileUpload I am looking at replacing the decoder with the JVM implementation. -- 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: r1458726 - in /tomcat/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime: Base64Decoder.java MimeUtility.java
Author: markt Date: Wed Mar 20 10:30:46 2013 New Revision: 1458726 URL: http://svn.apache.org/r1458726 Log: The JRE (since Java 6) ships with a perfectly good Base64 Encoder/Decoder. Use it. Removed: tomcat/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/Base64Decoder.java Modified: tomcat/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java Modified: tomcat/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java?rev=1458726r1=1458725r2=1458726view=diff == --- tomcat/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java Wed Mar 20 10:30:46 2013 @@ -23,6 +23,8 @@ import java.util.HashMap; import java.util.Locale; import java.util.Map; +import javax.xml.bind.DatatypeConverter; + /** * Utility class to decode MIME texts. * @@ -239,18 +241,18 @@ public final class MimeUtility { // the decoder writes directly to an output stream. ByteArrayOutputStream out = new ByteArrayOutputStream(encodedText.length()); -byte[] encodedData = encodedText.getBytes(US_ASCII_CHARSET); - +byte[] decodedData; // Base64 encoded? if (encoding.equals(BASE64_ENCODING_MARKER)) { -Base64Decoder.decode(encodedData, out); +decodedData = DatatypeConverter.parseBase64Binary(encodedText); } else if (encoding.equals(QUOTEDPRINTABLE_ENCODING_MARKER)) { // maybe quoted printable. +byte[] encodedData = encodedText.getBytes(US_ASCII_CHARSET); QuotedPrintableDecoder.decode(encodedData, out); +decodedData = out.toByteArray(); } else { throw new UnsupportedEncodingException(Unknown RFC 2047 encoding: + encoding); } -// get the decoded byte data and convert into a string. -byte[] decodedData = out.toByteArray(); +// Convert decoded byte data into a string. return new String(decodedData, javaCharset(charset)); } catch (IOException e) { throw new UnsupportedEncodingException(Invalid RFC 2047 encoding); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1458738 - in /tomcat/trunk: java/org/apache/catalina/ant/ java/org/apache/catalina/authenticator/ java/org/apache/catalina/realm/ java/org/apache/catalina/util/ test/org/apache/catalina/a
Author: markt Date: Wed Mar 20 10:38:43 2013 New Revision: 1458738 URL: http://svn.apache.org/r1458738 Log: Replace Tomcat's own base64 encoder with the one from the JRE. Modified: tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java tomcat/trunk/java/org/apache/catalina/util/Base64.java tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java tomcat/trunk/test/org/apache/catalina/authenticator/TestSSOnonLoginAndBasicAuthenticator.java Modified: tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java?rev=1458738r1=1458737r2=1458738view=diff == --- tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java Wed Mar 20 10:38:43 2013 @@ -27,7 +27,8 @@ import java.net.HttpURLConnection; import java.net.URL; import java.net.URLConnection; -import org.apache.catalina.util.Base64; +import javax.xml.bind.DatatypeConverter; + import org.apache.tomcat.util.buf.B2CConverter; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.Project; @@ -201,8 +202,8 @@ public abstract class AbstractCatalinaTa // Set up an authorization header with our credentials String input = username + : + password; -String output = -Base64.encode(input.getBytes(B2CConverter.ISO_8859_1)); +String output = DatatypeConverter.printBase64Binary( +input.getBytes(B2CConverter.ISO_8859_1)); hconn.setRequestProperty(Authorization, Basic + output); Modified: tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java?rev=1458738r1=1458737r2=1458738view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java Wed Mar 20 10:38:43 2013 @@ -27,6 +27,7 @@ import javax.security.auth.Subject; import javax.security.auth.login.LoginContext; import javax.security.auth.login.LoginException; import javax.servlet.http.HttpServletResponse; +import javax.xml.bind.DatatypeConverter; import org.apache.catalina.LifecycleException; import org.apache.catalina.connector.Request; @@ -279,7 +280,7 @@ public class SpnegoAuthenticator extends // Send response token on success and failure response.setHeader(WWW-Authenticate, Negotiate -+ Base64.encode(outToken)); ++ DatatypeConverter.printBase64Binary(outToken)); if (principal != null) { register(request, response, principal, Constants.SPNEGO_METHOD, Modified: tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java?rev=1458738r1=1458737r2=1458738view=diff == --- tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java (original) +++ tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java Wed Mar 20 10:38:43 2013 @@ -51,6 +51,7 @@ import javax.naming.directory.DirContext import javax.naming.directory.InitialDirContext; import javax.naming.directory.SearchControls; import javax.naming.directory.SearchResult; +import javax.xml.bind.DatatypeConverter; import org.apache.catalina.LifecycleException; import org.apache.catalina.util.Base64; @@ -1556,7 +1557,8 @@ public class JNDIRealm extends RealmBase password = password.substring(5); md.reset(); md.update(credentials.getBytes(B2CConverter.ISO_8859_1)); -String digestedPassword = Base64.encode(md.digest()); +String digestedPassword = +DatatypeConverter.printBase64Binary(md.digest()); validated = password.equals(digestedPassword); } } else if (password.startsWith({SSHA})) { Modified: tomcat/trunk/java/org/apache/catalina/util/Base64.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/util/Base64.java?rev=1458738r1=1458737r2=1458738view=diff == --- tomcat/trunk/java/org/apache/catalina/util/Base64.java (original) +++
svn commit: r1458739 - /tomcat/trunk/java/org/apache/catalina/util/Base64.java
Author: markt Date: Wed Mar 20 10:39:12 2013 New Revision: 1458739 URL: http://svn.apache.org/r1458739 Log: Add note on removal Modified: tomcat/trunk/java/org/apache/catalina/util/Base64.java Modified: tomcat/trunk/java/org/apache/catalina/util/Base64.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/util/Base64.java?rev=1458739r1=1458738r2=1458739view=diff == --- tomcat/trunk/java/org/apache/catalina/util/Base64.java (original) +++ tomcat/trunk/java/org/apache/catalina/util/Base64.java Wed Mar 20 10:39:12 2013 @@ -82,7 +82,8 @@ public final class Base64 * @param binaryData Array containing binary data to encode. * @return Base64-encoded data. * - * @deprecated Use {@link DatatypeConverter#printBase64Binary(byte[])} + * @deprecated Use {@link DatatypeConverter#printBase64Binary(byte[])}. + * This method will be removed in Tomcat 8.0.x. */ @Deprecated public static String encode(byte[] binaryData) { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1458740 - /tomcat/trunk/java/org/apache/catalina/util/Base64.java
Author: markt Date: Wed Mar 20 10:39:41 2013 New Revision: 1458740 URL: http://svn.apache.org/r1458740 Log: Remove deprecated code Modified: tomcat/trunk/java/org/apache/catalina/util/Base64.java Modified: tomcat/trunk/java/org/apache/catalina/util/Base64.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/util/Base64.java?rev=1458740r1=1458739r2=1458740view=diff == --- tomcat/trunk/java/org/apache/catalina/util/Base64.java (original) +++ tomcat/trunk/java/org/apache/catalina/util/Base64.java Wed Mar 20 10:39:41 2013 @@ -17,8 +17,6 @@ package org.apache.catalina.util; -import javax.xml.bind.DatatypeConverter; - import org.apache.tomcat.util.buf.ByteChunk; import org.apache.tomcat.util.buf.CharChunk; @@ -77,20 +75,6 @@ public final class Base64 } /** - * Encodes hex octets into Base64. - * - * @param binaryData Array containing binary data to encode. - * @return Base64-encoded data. - * - * @deprecated Use {@link DatatypeConverter#printBase64Binary(byte[])}. - * This method will be removed in Tomcat 8.0.x. - */ -@Deprecated -public static String encode(byte[] binaryData) { -return DatatypeConverter.printBase64Binary(binaryData); -} - -/** * Decodes Base64 data into octets * * @param base64DataBC Byte array containing Base64 data - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1458742 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/tomcat/util/http/fileupload/ java/org/apache/tomcat/util/http/fileupload/util/mime/Base64Decoder.java java/org/apache/tomcat/util/ht
Author: markt Date: Wed Mar 20 10:40:37 2013 New Revision: 1458742 URL: http://svn.apache.org/r1458742 Log: The JRE (since Java 6) ships with a perfectly good Base64 Encoder/Decoder. Use it. Removed: tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/Base64Decoder.java Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/fileupload/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1458726 Propchange: tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/fileupload/ -- Merged /tomcat/trunk/java/org/apache/tomcat/util/http/fileupload:r1458726 Modified: tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java?rev=1458742r1=1458741r2=1458742view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/tomcat/util/http/fileupload/util/mime/MimeUtility.java Wed Mar 20 10:40:37 2013 @@ -23,6 +23,8 @@ import java.util.HashMap; import java.util.Locale; import java.util.Map; +import javax.xml.bind.DatatypeConverter; + /** * Utility class to decode MIME texts. * @@ -240,18 +242,18 @@ public final class MimeUtility { // the decoder writes directly to an output stream. ByteArrayOutputStream out = new ByteArrayOutputStream(encodedText.length()); -byte[] encodedData = encodedText.getBytes(US_ASCII_CHARSET); - +byte[] decodedData; // Base64 encoded? if (encoding.equals(BASE64_ENCODING_MARKER)) { -Base64Decoder.decode(encodedData, out); +decodedData = DatatypeConverter.parseBase64Binary(encodedText); } else if (encoding.equals(QUOTEDPRINTABLE_ENCODING_MARKER)) { // maybe quoted printable. +byte[] encodedData = encodedText.getBytes(US_ASCII_CHARSET); QuotedPrintableDecoder.decode(encodedData, out); +decodedData = out.toByteArray(); } else { throw new UnsupportedEncodingException(Unknown RFC 2047 encoding: + encoding); } -// get the decoded byte data and convert into a string. -byte[] decodedData = out.toByteArray(); +// Convert decoded byte data into a string. return new String(decodedData, javaCharset(charset)); } catch (IOException e) { throw new UnsupportedEncodingException(Invalid RFC 2047 encoding); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1458748 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/ant/ java/org/apache/catalina/authenticator/ java/org/apache/catalina/realm/ java/org/apache/catalina/util/ test/org/apache
Author: markt Date: Wed Mar 20 10:43:46 2013 New Revision: 1458748 URL: http://svn.apache.org/r1458748 Log: Replace Tomcat's own base64 encoder with the one from the JRE. Deprecate Tomcat's encoder which will be removed in Tomcat 8. Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/realm/JNDIRealm.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/util/Base64.java tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestSSOnonLoginAndBasicAuthenticator.java Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1458738-1458739 Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java?rev=1458748r1=1458747r2=1458748view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ant/AbstractCatalinaTask.java Wed Mar 20 10:43:46 2013 @@ -26,9 +26,10 @@ import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLConnection; -import java.nio.charset.Charset; -import org.apache.catalina.util.Base64; +import javax.xml.bind.DatatypeConverter; + +import org.apache.tomcat.util.buf.B2CConverter; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.Project; @@ -201,8 +202,8 @@ public abstract class AbstractCatalinaTa // Set up an authorization header with our credentials String input = username + : + password; -String output = -Base64.encode(input.getBytes(Charset.defaultCharset())); +String output = DatatypeConverter.printBase64Binary( +input.getBytes(B2CConverter.ISO_8859_1)); hconn.setRequestProperty(Authorization, Basic + output); Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java?rev=1458748r1=1458747r2=1458748view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java Wed Mar 20 10:43:46 2013 @@ -27,6 +27,7 @@ import javax.security.auth.Subject; import javax.security.auth.login.LoginContext; import javax.security.auth.login.LoginException; import javax.servlet.http.HttpServletResponse; +import javax.xml.bind.DatatypeConverter; import org.apache.catalina.LifecycleException; import org.apache.catalina.connector.Request; @@ -283,7 +284,7 @@ public class SpnegoAuthenticator extends // Send response token on success and failure response.setHeader(WWW-Authenticate, Negotiate -+ Base64.encode(outToken)); ++ DatatypeConverter.printBase64Binary(outToken)); if (principal != null) { register(request, response, principal, Constants.SPNEGO_METHOD, Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/realm/JNDIRealm.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/realm/JNDIRealm.java?rev=1458748r1=1458747r2=1458748view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/realm/JNDIRealm.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/realm/JNDIRealm.java Wed Mar 20 10:43:46 2013 @@ -52,6 +52,7 @@ import javax.naming.directory.DirContext import javax.naming.directory.InitialDirContext; import javax.naming.directory.SearchControls; import javax.naming.directory.SearchResult; +import javax.xml.bind.DatatypeConverter; import org.apache.catalina.LifecycleException; import org.apache.catalina.util.Base64; @@ -1575,7 +1576,8 @@ public class JNDIRealm extends RealmBase password = password.substring(5); md.reset(); md.update(credentials.getBytes(Charset.defaultCharset())); -String digestedPassword = Base64.encode(md.digest()); +String digestedPassword = +DatatypeConverter.printBase64Binary(md.digest()); validated =
[Tomcat Wiki] Trivial Update of HelaineVJ by HelaineVJ
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The HelaineVJ page has been changed by HelaineVJ: http://wiki.apache.org/tomcat/HelaineVJ New page: Hilaria Altizer is the name individuals use to call me and as well I feel comfortable when everyday people use the full name.BR I've always cherished living in Illinois. To should really start computers is the only leisure pursuit my husband doesn't approve . Hiring possesses been my profession for some kind of time but I've always yearned for my own business. See what's new on several other website here: http://red-raspberry-ketones.BR BR com/buy-raspberry-ketones/ - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 45661] NioBlockingSelector uses all CPU after a socket connection is killed
https://issues.apache.org/bugzilla/show_bug.cgi?id=45661 --- Comment #5 from Sergio Garcia sergio.gar...@m-centric.com --- Hi, I still reproduce this error with these conditions : - Tomcat 7.0.14 - Linux 2.6 - java version 1.6.0_37 I don't think this issue must be closed with the status RESOLVED WORKSFORME Greetings, Sergio -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Update of AdminGroup by KonstantinKolinko
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The AdminGroup page has been changed by KonstantinKolinko: http://wiki.apache.org/tomcat/AdminGroup?action=diffrev1=4rev2=5 Comment: Remove anonymous read access to this page - #acl AdminGroup:read,write,admin,revert,delete All:read + #acl AdminGroup:read,write,admin,revert,delete -All:read This is a list of people who can do editing of the LocalBadContent page: * ChristopherSchultz - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Update of LocalBadContent by KonstantinKolinko
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The LocalBadContent page has been changed by KonstantinKolinko: http://wiki.apache.org/tomcat/LocalBadContent?action=diffrev1=91rev2=92 #acl LeoSimons:read,write,admin,delete,revert AdminGroup:read,write All:read #format plain # - # This page is pulled from the general wiki. To add spam terms for the entire wiki farm, - # edit http://wiki.apache.org/general/LocalBadContent. - # # This page can contain additional items not in the BadContent database. - # But please only add terms here if they apply to the entire Apache wiki farm. # # About: http://moinmo.in/AntiSpamFeatures # Regex syntax: http://docs.python.org/2/library/re.html#re-syntax @@ -59, +55 @@ computerrental\.biz copdregionalnetwork\.org directorysubmitlist\.com + do-follow\.info dragonseo dreamstation\.com dublinbet @@ -145, +142 @@ profi-fachuebersetzungen\.de profischnell\.com racket-racquets\.co\.uk + raspberry-ketones robesoireebal\.fr russianaccent\.net sanfranciscodentistdds\.com @@ -202, +200 @@ zjeyu\.com zx\.slave\.ca zyseo\.com + # Temporary measures (my)[\s]+(name) + youtube\.com ##--Apache/LocalBadContent - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 45661] NioBlockingSelector uses all CPU after a socket connection is killed
https://issues.apache.org/bugzilla/show_bug.cgi?id=45661 --- Comment #6 from Konstantin Kolinko knst.koli...@gmail.com --- No, 1. you are reproducing a different error on a different OS. 2. your report is irrelevant, there have been many fixes since 7.0.14. The current version of Tomcat 7 is 7.0.37. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Trivial Update of Alfonzo37 by Alfonzo37
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The Alfonzo37 page has been changed by Alfonzo37: http://wiki.apache.org/tomcat/Alfonzo37 New page: Long is what his wife likes to call him but he doesn't like when people use his full name. His wife and him live in Connecticut but he needs to cart because of his family. Supervising is how he makes money. As a man what he really likes is fixing computers and now he is wanting to earn money with understand it. Go to his website to find out more: http://friends-hood.com/alicetrip/all - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Update of LocalBadContent by KonstantinKolinko
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The LocalBadContent page has been changed by KonstantinKolinko: http://wiki.apache.org/tomcat/LocalBadContent?action=diffrev1=92rev2=93 freecities\.com freewebpages\.org freewebsitehosting\.com + friends-hood\.com g0g\.net getminecraftfree\.info google-seo-top\.com - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Wiki (was: Update of LocalBadContent)
2013/3/19 Mark Thomas ma...@apache.org: On 18/03/2013 21:46, Apache Wiki wrote: Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The LocalBadContent page has been changed by ChuckCaldarale: I've raised it before and folks weren't interested but I think it is time to consider [1] again. I'll note that while the spammers entries to the wiki get removed pretty quickly (thanks Chunk) their content is in our mail archive which is indexed all over the place so their aim has already been achieved even if we remove the content from the Wiki. I'd really like to put a stop to this abuse of our Wiki. [1] http://wiki.apache.org/general/OurWikiFarm#per_wiki_access_control_-_tighten_your_wiki_just_a_little.2C_benefit_just_a_lot Previous discussions: [2] (Jun 2011) http://tomcat.markmail.org/thread/nndyb3elaee6nduv [3] (Dec 2011) http://tomcat.markmail.org/thread/llawwzb4jxgwbt6z +0. It is a bit of a pity, but I would not oppose the change. I'd say that if we go this tight security way, then I think we should remove most of Powered by page (maybe all besides articles) and do not bother maintaining it. The last time [3] people were saying that that page is needed. If mailing list is the target, maybe configure a separate mailing list for wiki edit notifications, which is not so widely mirrored as the dev one? Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
RE: Wiki (was: Update of LocalBadContent)
From: Konstantin Kolinko [mailto:knst.koli...@gmail.com] Subject: Wiki (was: Update of LocalBadContent) I'd say that if we go this tight security way, then I think we should remove most of Powered by page (maybe all besides articles) and do not bother maintaining it. I'd like to keep the Powered by page, if for no other reason than it gives potential Tomcat users some sense of security about using the product. Also, it is getting updated with fair regularity and little to no spam. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Wiki (was: Update of LocalBadContent)
+1 for the lock down. [with sadness] If someone would like to add content it can be done via bug report. [Component = Wiki? ] Then if a few are filed by the same person escalate their access as trusted. I can try to keep an eye on these types of bugs flowing through. +1 To removing the powered by page too. Otherwise - you guys have been awesome in keeping the spam out. -Tim On Wed, Mar 20, 2013 at 8:36 AM, Konstantin Kolinko knst.koli...@gmail.comwrote: 2013/3/19 Mark Thomas ma...@apache.org: On 18/03/2013 21:46, Apache Wiki wrote: Previous discussions: [2] (Jun 2011) http://tomcat.markmail.org/thread/nndyb3elaee6nduv [3] (Dec 2011) http://tomcat.markmail.org/thread/llawwzb4jxgwbt6z +0. It is a bit of a pity, but I would not oppose the change. I'd say that if we go this tight security way, then I think we should remove most of Powered by page (maybe all besides articles) and do not bother maintaining it.
Re: Wiki (was: Update of LocalBadContent)
2013/3/20 Caldarale, Charles R chuck.caldar...@unisys.com: From: Konstantin Kolinko [mailto:knst.koli...@gmail.com] Subject: Wiki (was: Update of LocalBadContent) I'd say that if we go this tight security way, then I think we should remove most of Powered by page (maybe all besides articles) and do not bother maintaining it. I'd like to keep the Powered by page, if for no other reason than it gives potential Tomcat users some sense of security about using the product. Also, it is getting updated with fair regularity and little to no spam. I think at least 30% of sites listed there are spam. For many of them I do not see any JSP technologies being used (*.jsp, *.do etc., JSESSIONID cookies) and X-PoweredBy says PHP. The Tomcat hosting offerings list may be useful, though I think one can just google for Tomcat hosting. Hosting providers behave as spammers sometimes. E.g. trying to put their ads into articles section or not following alphabetic order. (It is easy to recognize and remove those). Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Question for the loader used in o.a.t.util.scan.StandardJarScanner
Hi, I have a question for the loader that is used in o.a.t.util.scan.StandardJarScanner.scan(ServletContext, ClassLoader, JarScannerCallback, SetString) (7.0.x trunk). Why don't we use the loader that is provided as a method parameter, but instead of this we are using the thread context class loader? row 196 ClassLoader loader = row 197Thread.currentThread().getContextClassLoader(); And why don't we start scanning from its parent, but instead of this we start with it directly? I can see that in tomcat/trunk we are using the provided loader and we start scanning from its parent. Thanks Violeta - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Trivial Update of WillieSla by WillieSla
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The WillieSla page has been changed by WillieSla: http://wiki.apache.org/tomcat/WillieSla New page: Not much to write about me really.BR Feels good to be a member of this community.BR I really hope Im useful in some way here.BR BR my blog :: [[HTTP://bricodgeasirgesalia.Blogbaker.com/2013/02/14/cheapestcar-insurance-guaranteed|Cheap car Insurance Uk under 25]] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Update of LocalBadContent by ChuckCaldarale
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The LocalBadContent page has been changed by ChuckCaldarale: http://wiki.apache.org/tomcat/LocalBadContent?action=diffrev1=93rev2=94 bodybuilding bravepages\.com breathefreshecigs\.com + bricodgeasirgesalia\.blogbaker\.com buchete\.ro buyyourall\.com buymaternitymaxidresses\.iwannayou\.com - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 54728] HttpServletRequest#upgrade() and other interfaces don't match spec; change may be impossible to implement
https://issues.apache.org/bugzilla/show_bug.cgi?id=54728 --- Comment #3 from Nick Williams nicho...@nicholaswilliams.net --- Okay, I see where my mistake was. Wow. *rubs eyes* I think I need to go back to bed. Lol. Thanks. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 54732] New: StatementCache interceptor does not forward calls to Statement.close() which causes memory leaks
https://issues.apache.org/bugzilla/show_bug.cgi?id=54732 Bug ID: 54732 Summary: StatementCache interceptor does not forward calls to Statement.close() which causes memory leaks Product: Tomcat 7 Version: 7.0.34 Hardware: PC Status: NEW Severity: major Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: ber...@step.polymtl.ca Classification: Unclassified ML ref: http://mail-archives.apache.org/mod_mbox/tomcat-users/201303.mbox/browser When using Tomcat's jdbc-pool with the StatementCache interceptor (the default for TomEE 1.5.1), the actual java.sql.Statement.close() method is not called on the Statements. This causes severe memory leaks, at least with the MySQL driver. I see what could be a bug in StatementCache#closeInvoked() which is called by the above method. Here is the code with my own comments added: @Override public void closeInvoked() { boolean shouldClose = true; if (cacheSize.get() maxCacheSize) { // omitted for brievety } closed = true; // [1] I think delegate = null is done too soon delegate = null; if (shouldClose) { // check its body below super.closeInvoked(); } } // This is super.closeInvoked() public void closeInvoked() { if (getDelegate()!=null) { // never true when coming from // StatementCache#closeInvoked() // because of [1] try { getDelegate().close(); }catch (SQLException ignore) { } } closed = true; delegate = null; } To test this, step into org.apache.tomcat.jdbc.test.TestStatementCache tests testPreparedStatementCache and testPreparedStatementCache2. The calls to Statement.close() are intercepted but never forwarded to the actual Statement. Perhaps some kind of mock could be used to make sure Statement.close() is called on each created Statement. -- 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 54732] StatementCache interceptor does not forward calls to Statement.close() which causes memory leaks
https://issues.apache.org/bugzilla/show_bug.cgi?id=54732 ber...@step.polymtl.ca changed: What|Removed |Added CC||ber...@step.polymtl.ca OS||All -- 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 54729] new HttpParser.parseAuthorizationBasic method
https://issues.apache.org/bugzilla/show_bug.cgi?id=54729 --- Comment #2 from Mark Thomas ma...@apache.org --- I've done some additional testing. On a warmed up system the JRE and Tomcat Base64 decoding implementations are comparable. Tomcat does warm up faster. Without warm up on 100 iterations (different inputs) Tomcat was approx. 3x faster but at a total of 200ms vs 600ms for 100 tests I'm not too worried by even that difference. I intend to proceed and remove Tomcat's internal base64 encoder in 8 and deprecate it in 7.0.x, In both cases I intend to replace the current uses of Tomcat's internal decoder with the JRE's. -- 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 54732] StatementCache interceptor does not forward calls to Statement.close() which causes memory leaks
https://issues.apache.org/bugzilla/show_bug.cgi?id=54732 Mark Thomas ma...@apache.org changed: What|Removed |Added Component|Catalina|jdbc-pool Version|7.0.34 |unspecified Product|Tomcat 7|Tomcat Modules -- 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 54734] New: Tomcat Servlet 3.1 API needs to be synchronized with Proposed Final Draft
https://issues.apache.org/bugzilla/show_bug.cgi?id=54734 Bug ID: 54734 Summary: Tomcat Servlet 3.1 API needs to be synchronized with Proposed Final Draft Product: Tomcat 8 Version: trunk Hardware: All OS: All Status: NEW Severity: major Priority: P2 Component: Specification APIs Assignee: dev@tomcat.apache.org Reporter: nicho...@nicholaswilliams.net Classification: Unclassified Created attachment 30084 -- https://issues.apache.org/bugzilla/attachment.cgi?id=30084action=edit Patch to bring Tomcat in line with latest Servlet 3.1 spec Tomcat's javax.servlet.http.WebConnection interface should extend AutoCloseable, but it does not. In Tomcat's javax.servlet.ReadListener interface, onDataAvailable() and onAllDataRead() should throw IOException, but they do not. In Tomcat's javax.servlet.WriteListener interface, onWritePossible() should throw IOException, but it does not. Tomcat's javax.servlet.ServletContext class is missing the following method: public String getVirtualServerName(); Patch attached for the above issues. Tomcat's javax.servlet.http.NoBodyResponse implementation is interesting. First, it Servlet 2.5 the void setContentLength() method was as follows: void setContentLength(); Code: 0: aload_0 1: getfield #6 // Field didSetContentLength:Z 4: ifne 23 7: aload_0 8: getfield #2 // Field resp:Ljavax/servlet/http/HttpServletResponse; 11: aload_0 12: getfield #5 // Field noBody:Ljavax/servlet/http/NoBodyOutputStream; 15: invokevirtual #7 // Method javax/servlet/http/NoBodyOutputStream.getContentLength:()I 18: invokeinterface #8, 2// InterfaceMethod javax/servlet/http/HttpServletResponse.setContentLength:(I)V 23: return Which is equivalent to: void setContentLength() { if (!didSetContentLength) resp.setContentLength(noBody.getContentLength()); } It changed in Servlet 3.0 (and remained the same in Servlet 3.1) and is now: void setContentLength(); Code: 0: aload_0 1: getfield #5 // Field didSetContentLength:Z 4: ifne 32 7: aload_0 8: getfield #6 // Field writer:Ljava/io/PrintWriter; 11: ifnull21 14: aload_0 15: getfield #6 // Field writer:Ljava/io/PrintWriter; 18: invokevirtual #7 // Method java/io/PrintWriter.flush:()V 21: aload_0 22: aload_0 23: getfield #4 // Field noBody:Ljavax/servlet/http/NoBodyOutputStream; 26: invokevirtual #8 // Method javax/servlet/http/NoBodyOutputStream.getContentLength:()I 29: invokevirtual #9 // Method setContentLength:(I)V 32: return This is roughly equivalent to: void setContentLength() { if (!didSetContentLength) { if (writer != null) writer.flush(); super.setContentLength(noBody.getContentLength()); } } However, Tomcat's implementation is still: void setContentLength() { if (!didSetContentLength) super.setContentLength(noBody.getContentLength()); } The spec implementation is correct, and the Tomcat implementation could report incorrect content length if the writer has not been flushed. I will attach a separate patch in the following comment that fixes this. Finally, I noticed that Tomcat's javax.servlet.http.NoBodyResponse class has the following methods that are not in the spec: public void setContentLengthLong(long); public void setHeader(String, String); public void addHeader(String, String); public void setIntHeader(String, int); public void addIntHeader(String, int); However, I do not believe this is a problem in Tomcat. The last four were added as part of https://issues.apache.org/bugzilla/show_bug.cgi?id=53454 and the setContentLengthLong() was added by Mark to correspond with that new method in Servlet 3.1. I believe this is a problem with the Oracle implementation, and these methods should be in that. Tomcat's implementation clearly adheres to the spirit of the spec. The spec JAR does not. I'm going to file an issue about this in the servlet spec JIRA. -- 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 54734] Tomcat Servlet 3.1 API needs to be synchronized with Proposed Final Draft
https://issues.apache.org/bugzilla/show_bug.cgi?id=54734 --- Comment #1 from Nick Williams nicho...@nicholaswilliams.net --- Created attachment 30085 -- https://issues.apache.org/bugzilla/attachment.cgi?id=30085action=edit Patch to fix NoBodyResponse#setContentLength() -- 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 54734] Tomcat Servlet 3.1 API needs to be synchronized with Proposed Final Draft
https://issues.apache.org/bugzilla/show_bug.cgi?id=54734 Nick Williams nicho...@nicholaswilliams.net changed: What|Removed |Added Attachment #30084|0 |1 is patch|| Attachment #30084|application/octet-stream|text/plain mime type|| -- 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 54734] Tomcat Servlet 3.1 API needs to be synchronized with Proposed Final Draft
https://issues.apache.org/bugzilla/show_bug.cgi?id=54734 --- Comment #2 from Nick Williams nicho...@nicholaswilliams.net --- I recommend that the patch to fix NoBodyResponse#setContentLength() get back-ported to Tomcat 7.0, since it should have behaved this way in Servlet 3.0. -- 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 54734] Tomcat Servlet 3.1 API needs to be synchronized with Proposed Final Draft
https://issues.apache.org/bugzilla/show_bug.cgi?id=54734 --- Comment #3 from Nick Williams nicho...@nicholaswilliams.net --- For reference, here is the Servlet Spec bug I filed about missing methods in NoBodyResponse: http://java.net/jira/browse/SERVLET_SPEC-69 -- 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: Question for the loader used in o.a.t.util.scan.StandardJarScanner
On 20/03/2013 13:55, Violeta Georgieva wrote: Hi, I have a question for the loader that is used in o.a.t.util.scan.StandardJarScanner.scan(ServletContext, ClassLoader, JarScannerCallback, SetString) (7.0.x trunk). Why don't we use the loader that is provided as a method parameter, but instead of this we are using the thread context class loader? It looks like a left over from when the code was first refactored to create the StandardJarScanner. I agree, we should use the passed in class loader. row 196 ClassLoader loader = row 197Thread.currentThread().getContextClassLoader(); And why don't we start scanning from its parent, but instead of this we start with it directly? Because of the possibility of external repositories having been configured. There are other ways this could be handled but the current code works. In Tomcat 8 the new resources implementation makes all this a lot simpler. I can see that in tomcat/trunk we are using the provided loader and we start scanning from its parent. The Javadoc needs correcting as well. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459010 - /tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java
Author: markt Date: Wed Mar 20 19:27:44 2013 New Revision: 1459010 URL: http://svn.apache.org/r1459010 Log: Add test case used to investigate Base64 decoder performance Added: tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java (with props) Added: tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java?rev=1459010view=auto == --- tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java (added) +++ tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java Wed Mar 20 19:27:44 2013 @@ -0,0 +1,113 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the License); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.catalina.util; + +import java.util.ArrayList; +import java.util.List; + +import javax.xml.bind.DatatypeConverter; + +import org.junit.Test; + +import org.apache.tomcat.util.buf.B2CConverter; +import org.apache.tomcat.util.buf.ByteChunk; +import org.apache.tomcat.util.buf.CharChunk; + +public class TesterBase64Performance { + +private static final int SIZE = 100; + +@Test +public void testDecode() throws Exception { + +ListByteChunk inputs = new ArrayList(SIZE); +ListByteChunk warmups = new ArrayList(SIZE); +ListString results = new ArrayList(SIZE); + +for (int i = 0; i SIZE; i++) { +String decodedString = abc + Integer.valueOf(i) + +:abc + Integer.valueOf(i); +byte[] decodedBytes = +decodedString.getBytes(B2CConverter.ISO_8859_1); +String encodedString = +DatatypeConverter.printBase64Binary(decodedBytes); +byte[] encodedBytes = +encodedString.getBytes(B2CConverter.ISO_8859_1); + +ByteChunk bc = new ByteChunk(encodedBytes.length); +bc.append(encodedBytes, 0, encodedBytes.length); + +inputs.add(bc); +} + + +for (int i = 0; i SIZE; i++) { +String decodedString = zyx + Integer.valueOf(i) + +:zyx + Integer.valueOf(i); +byte[] decodedBytes = +decodedString.getBytes(B2CConverter.ISO_8859_1); +String encodedString = +DatatypeConverter.printBase64Binary(decodedBytes); +byte[] encodedBytes = +encodedString.getBytes(B2CConverter.ISO_8859_1); + +ByteChunk bc = new ByteChunk(encodedBytes.length); +bc.append(encodedBytes, 0, encodedBytes.length); + +warmups.add(bc); +} + +//Warm up +for (ByteChunk bc : warmups) { +CharChunk cc = new CharChunk(bc.getLength()); +Base64.decode(bc, cc); +results.add(cc.toString()); +} +results.clear(); + +for (ByteChunk bc : warmups) { +byte[] decodedBytes = +DatatypeConverter.parseBase64Binary(bc.toString()); +String decodedString = +new String(decodedBytes, B2CConverter.ISO_8859_1); +results.add(decodedString); +} +results.clear(); + +long startTomcat = System.currentTimeMillis(); +for (ByteChunk bc : inputs) { +CharChunk cc = new CharChunk(bc.getLength()); +Base64.decode(bc, cc); +results.add(cc.toString()); +} +long stopTomcat = System.currentTimeMillis(); +System.out.println(Tomcat: + (stopTomcat - startTomcat) + ms); + +results.clear(); + +long startJre = System.currentTimeMillis(); +for (ByteChunk bc : inputs) { +byte[] decodedBytes = +DatatypeConverter.parseBase64Binary(bc.toString()); +String decodedString = +new String(decodedBytes, B2CConverter.ISO_8859_1); +results.add(decodedString); +} +long stopJre = System.currentTimeMillis(); +System.out.println(JRE: + (stopJre - startJre) + ms); +} +} Propchange:
[Bug 54693] Add a validationQueryTimeout property
https://issues.apache.org/bugzilla/show_bug.cgi?id=54693 --- Comment #3 from Daniel Mikusa dmik...@vmware.com --- Comments inline below... Only one comment: since a value of 0 disabled query timeout (it will wait forever), why not make the default 0 instead of -1? I implemented it the same way as DBCP to try and make it as compatible as possible. In my implementation (same as DBCP), the value must be greater than 0 or the connection pool code won't call setQueryTimeout, which means that by default the connection pool won't call setQueryTimeout. I like this approach because it won't change anything by default. In other words, the query timeout value would default to what is specified by the JDBC driver or perhaps by a driver specific setting. I'm open to other suggestions though. Also, you mention that QueryTimeoutInterceptor will modify the query timeouts of all queries... how does it interact with this patch? Sorry, I was under the impression based on some comments I read on a previous bug that the QueryTimeoutInterceptor would set the query timeout for a validation query. I tested this a bit and it turns out to not be true. In my tests, I saw that the validation query is executed against the underlying Connection, not the ProxyConnection. Because it runs against the underlying Connection, this means that the interceptors are not executed against it. Will QueryTimeoutInterceptor set the query timeout and then your code re-sets the query timeout (presumably to a different value)? If that's the case, what happens when validationQueryTimeout=0 and you are using the QueryTimeoutInterceptor? A reasonable user might expect that the validation query would /never/ time out, but the QueryTimeoutInterceptor would affect it. As I mentioned above, the QueryTimeoutInterceptor and validationQueryTimeout should not affect each other. Just to be sure, I added a test case to check this. Attaching new patch with that test case added. Dan -- 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 54693] Add a validationQueryTimeout property
https://issues.apache.org/bugzilla/show_bug.cgi?id=54693 --- Comment #4 from Daniel Mikusa dmik...@vmware.com --- Created attachment 30086 -- https://issues.apache.org/bugzilla/attachment.cgi?id=30086action=edit Second patch Added patch with additional testcase. -- 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: r1459028 - in /tomcat/trunk/java/org/apache: catalina/Context.java catalina/connector/Request.java catalina/core/ApplicationContext.java catalina/core/DefaultInstanceManager.java catalina/
Author: remm Date: Wed Mar 20 20:10:41 2013 New Revision: 1459028 URL: http://svn.apache.org/r1459028 Log: - I am pretty sure the point of the upgrade(Class) method is to be able to inject, so the instance manager has to be used. - Add InstanceManager on Context, and also add newInstance(Class) - not really needed, but it probably doesn't hurt. Modified: tomcat/trunk/java/org/apache/catalina/Context.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/DefaultInstanceManager.java tomcat/trunk/java/org/apache/catalina/startup/FailedContext.java tomcat/trunk/java/org/apache/tomcat/InstanceManager.java Modified: tomcat/trunk/java/org/apache/catalina/Context.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/Context.java?rev=1459028r1=1459027r2=1459028view=diff == --- tomcat/trunk/java/org/apache/catalina/Context.java (original) +++ tomcat/trunk/java/org/apache/catalina/Context.java Wed Mar 20 20:10:41 2013 @@ -35,6 +35,7 @@ import org.apache.catalina.deploy.Filter import org.apache.catalina.deploy.LoginConfig; import org.apache.catalina.deploy.NamingResources; import org.apache.catalina.deploy.SecurityConstraint; +import org.apache.tomcat.InstanceManager; import org.apache.tomcat.JarScanner; /** @@ -661,6 +662,16 @@ public interface Context extends Contain */ public boolean getLogEffectiveWebXml(); +/** + * Get the instance manager associated with this context. + */ +public InstanceManager getInstanceManager(); + +/** + * Set the instance manager associated with this context. + */ +public void setInstanceManager(InstanceManager instanceManager); + // - Public Methods Modified: tomcat/trunk/java/org/apache/catalina/connector/Request.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/Request.java?rev=1459028r1=1459027r2=1459028view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/Request.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/Request.java Wed Mar 20 20:10:41 2013 @@ -22,6 +22,7 @@ import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.UnsupportedEncodingException; +import java.lang.reflect.InvocationTargetException; import java.nio.charset.Charset; import java.security.Principal; import java.text.SimpleDateFormat; @@ -40,6 +41,7 @@ import java.util.TimeZone; import java.util.TreeMap; import java.util.concurrent.atomic.AtomicBoolean; +import javax.naming.NamingException; import javax.security.auth.Subject; import javax.servlet.AsyncContext; import javax.servlet.DispatcherType; @@ -1884,14 +1886,15 @@ public class Request * * @since Servlet 3.1 */ +@SuppressWarnings(unchecked) @Override public T extends HttpUpgradeHandler T upgrade( ClassT httpUpgradeHandlerClass) throws java.io.IOException { T handler; try { -handler = httpUpgradeHandlerClass.newInstance(); -} catch (InstantiationException | IllegalAccessException e) { +handler = (T) context.getInstanceManager().newInstance(httpUpgradeHandlerClass); +} catch (InstantiationException | IllegalAccessException | InvocationTargetException | NamingException e) { throw new IOException(e); } Modified: tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java?rev=1459028r1=1459027r2=1459028view=diff == --- tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/ApplicationContext.java Wed Mar 20 20:10:41 2013 @@ -1315,7 +1315,7 @@ public class ApplicationContext throws ServletException { try { T listener = -(T) context.getInstanceManager().newInstance(c.getName()); +(T) context.getInstanceManager().newInstance(c); if (listener instanceof ServletContextListener || listener instanceof ServletContextAttributeListener || listener instanceof ServletRequestListener || @@ -1337,9 +1337,8 @@ public class ApplicationContext throw new ServletException(e); } catch (InstantiationException e) { throw new ServletException(e); -} catch (ClassNotFoundException e) { -throw new ServletException(e); -}} +} +} @Override Modified:
svn commit: r1459031 - in /tomcat/trunk/java/org/apache/catalina: authenticator/BasicAuthenticator.java authenticator/SpnegoAuthenticator.java realm/JNDIRealm.java util/Base64.java
Author: markt Date: Wed Mar 20 20:22:42 2013 New Revision: 1459031 URL: http://svn.apache.org/r1459031 Log: Deprecate Base64 and switch to DatatypeConverter Modified: tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java tomcat/trunk/java/org/apache/catalina/util/Base64.java Modified: tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java?rev=1459031r1=1459030r2=1459031view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Wed Mar 20 20:22:42 2013 @@ -24,13 +24,13 @@ import java.security.Principal; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import javax.xml.bind.DatatypeConverter; import org.apache.catalina.connector.Request; -import org.apache.catalina.util.Base64; 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.buf.CharChunk; import org.apache.tomcat.util.buf.MessageBytes; @@ -113,18 +113,28 @@ public class BasicAuthenticator // FIXME: Add trimming // authorizationBC.trim(); -CharChunk authorizationCC = authorization.getCharChunk(); -Base64.decode(authorizationBC, authorizationCC); +// Use the StringCache as these will be the same between +// requests +String encoded = authorizationBC.toString(); +byte[] decoded = DatatypeConverter.parseBase64Binary(encoded); // Get username and password -int colon = authorizationCC.indexOf(':'); +int colon = -1; +for (int i = 0; i decoded.length; i++) { +if (decoded[i] == ':') { +colon = i; +break; +} +} + if (colon 0) { -username = authorizationCC.toString(); +username = new String(decoded, B2CConverter.ISO_8859_1); } else { -char[] buf = authorizationCC.getBuffer(); -username = new String(buf, 0, colon); -password = new String(buf, colon + 1, -authorizationCC.getEnd() - colon - 1); +username = new String( +decoded, 0, colon, B2CConverter.ISO_8859_1); +password = new String( +decoded, colon + 1, decoded.length - colon - 1, +B2CConverter.ISO_8859_1); } authorizationBC.setOffset(authorizationBC.getOffset() - 6); Modified: tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java?rev=1459031r1=1459030r2=1459031view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java Wed Mar 20 20:22:42 2013 @@ -31,9 +31,9 @@ import javax.xml.bind.DatatypeConverter; import org.apache.catalina.LifecycleException; import org.apache.catalina.connector.Request; -import org.apache.catalina.util.Base64; 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.buf.MessageBytes; import org.ietf.jgss.GSSContext; @@ -190,10 +190,15 @@ public class SpnegoAuthenticator extends // FIXME: Add trimming // authorizationBC.trim(); -ByteChunk decoded = new ByteChunk(); -Base64.decode(authorizationBC, decoded); +// Create the String directly as this will change on each request and we +// don't want to use the StringCache +String encoded = new String(authorizationBC.getBuffer(), +authorizationBC.getOffset(), +authorizationBC.getLength(), B2CConverter.ISO_8859_1); -if (decoded.getLength() == 0) { +byte[] decoded = DatatypeConverter.parseBase64Binary(encoded); + +if (decoded.length == 0) { if (log.isDebugEnabled()) {
svn commit: r1459032 - in /tomcat/trunk: java/org/apache/catalina/util/Base64.java test/org/apache/catalina/util/TesterBase64Performance.java
Author: markt Date: Wed Mar 20 20:23:34 2013 New Revision: 1459032 URL: http://svn.apache.org/r1459032 Log: Remove Base64 and the associated test case Removed: tomcat/trunk/java/org/apache/catalina/util/Base64.java tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
buildbot success in ASF Buildbot on tomcat-trunk
The Buildbot has detected a restored build on builder tomcat-trunk while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/4138 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-vm_ubuntu Build Reason: scheduler Build Source Stamp: [branch tomcat/trunk] 1459010 Blamelist: markt Build succeeded! sincerely, -The Buildbot
svn commit: r1459036 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/authenticator/ java/org/apache/catalina/realm/ java/org/apache/catalina/util/ test/org/apache/catalina/util/ webapps/docs/
Author: markt Date: Wed Mar 20 20:37:59 2013 New Revision: 1459036 URL: http://svn.apache.org/r1459036 Log: (empty) Added: tomcat/tc7.0.x/trunk/test/org/apache/catalina/util/TesterBase64Performance.java - copied, changed from r1459010, tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/realm/JNDIRealm.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/util/Base64.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1459010,1459031 Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java?rev=1459036r1=1459035r2=1459036view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Wed Mar 20 20:37:59 2013 @@ -24,14 +24,14 @@ import java.security.Principal; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import javax.xml.bind.DatatypeConverter; import org.apache.catalina.connector.Request; import org.apache.catalina.deploy.LoginConfig; -import org.apache.catalina.util.Base64; 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.buf.CharChunk; import org.apache.tomcat.util.buf.MessageBytes; @@ -138,18 +138,28 @@ public class BasicAuthenticator // FIXME: Add trimming // authorizationBC.trim(); -CharChunk authorizationCC = authorization.getCharChunk(); -Base64.decode(authorizationBC, authorizationCC); +// Use the StringCache as these will be the same between +// requests +String encoded = authorizationBC.toString(); +byte[] decoded = DatatypeConverter.parseBase64Binary(encoded); // Get username and password -int colon = authorizationCC.indexOf(':'); +int colon = -1; +for (int i = 0; i decoded.length; i++) { +if (decoded[i] == ':') { +colon = i; +break; +} +} + if (colon 0) { -username = authorizationCC.toString(); +username = new String(decoded, B2CConverter.ISO_8859_1); } else { -char[] buf = authorizationCC.getBuffer(); -username = new String(buf, 0, colon); -password = new String(buf, colon + 1, -authorizationCC.getEnd() - colon - 1); +username = new String( +decoded, 0, colon, B2CConverter.ISO_8859_1); +password = new String( +decoded, colon + 1, decoded.length - colon - 1, +B2CConverter.ISO_8859_1); } authorizationBC.setOffset(authorizationBC.getOffset() - 6); Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java?rev=1459036r1=1459035r2=1459036view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java Wed Mar 20 20:37:59 2013 @@ -33,9 +33,9 @@ import org.apache.catalina.LifecycleExce import org.apache.catalina.connector.Request; import org.apache.catalina.deploy.LoginConfig; import org.apache.catalina.startup.Bootstrap; -import org.apache.catalina.util.Base64; 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.buf.MessageBytes; import org.ietf.jgss.GSSContext; @@ -194,10 +194,15 @@ public class SpnegoAuthenticator extends // FIXME: Add trimming //
buildbot failure in ASF Buildbot on tomcat-trunk
The Buildbot has detected a new failure on builder tomcat-trunk while building ASF Buildbot. Full details are available at: http://ci.apache.org/builders/tomcat-trunk/builds/4139 Buildbot URL: http://ci.apache.org/ Buildslave for this Build: bb-vm_ubuntu Build Reason: scheduler Build Source Stamp: [branch tomcat/trunk] 1459032 Blamelist: markt,remm BUILD FAILED: failed compile_1 sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459043 - /tomcat/trunk/test/org/apache/catalina/core/TesterContext.java
Author: markt Date: Wed Mar 20 20:46:04 2013 New Revision: 1459043 URL: http://svn.apache.org/r1459043 Log: Add new methods Modified: tomcat/trunk/test/org/apache/catalina/core/TesterContext.java Modified: tomcat/trunk/test/org/apache/catalina/core/TesterContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/core/TesterContext.java?rev=1459043r1=1459042r2=1459043view=diff == --- tomcat/trunk/test/org/apache/catalina/core/TesterContext.java (original) +++ tomcat/trunk/test/org/apache/catalina/core/TesterContext.java Wed Mar 20 20:46:04 2013 @@ -56,6 +56,7 @@ import org.apache.catalina.deploy.LoginC import org.apache.catalina.deploy.NamingResources; import org.apache.catalina.deploy.SecurityConstraint; import org.apache.juli.logging.Log; +import org.apache.tomcat.InstanceManager; import org.apache.tomcat.JarScanner; /** @@ -1153,4 +1154,14 @@ public class TesterContext implements Co public MapString,String findPreDestroyMethods() { return null; } + +@Override +public InstanceManager getInstanceManager() { +return null; +} + +@Override +public void setInstanceManager(InstanceManager instanceManager) { +// NO-OP +} } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459036 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/authenticator/ java/org/apache/catalina/realm/ java/org/apache/catalina/util/ test/org/apache/catalina/util/ webapps/do
2013/3/21 ma...@apache.org: Author: markt Date: Wed Mar 20 20:37:59 2013 New Revision: 1459036 URL: http://svn.apache.org/r1459036 Log: (empty) Log message? Added: tomcat/tc7.0.x/trunk/test/org/apache/catalina/util/TesterBase64Performance.java - copied, changed from r1459010, tomcat/trunk/test/org/apache/catalina/util/TesterBase64Performance.java Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/realm/JNDIRealm.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/util/Base64.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1459010,1459031 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Trivial Update of GarlandWi by GarlandWi
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The GarlandWi page has been changed by GarlandWi: http://wiki.apache.org/tomcat/GarlandWi New page: buy a car with bad creditare available in secured as well as different prices.BR In most cases, it is always ideal to first try to sell your existing trade yourself.BR BR Feel free to visit my homepage [[http://yuyu.vn/OQNAdalbe/info/|buying a car with bad credit tips]] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459045 - in /tomcat/trunk/java/org/apache/catalina: connector/Request.java core/StandardContext.java
Author: markt Date: Wed Mar 20 20:46:47 2013 New Revision: 1459045 URL: http://svn.apache.org/r1459045 Log: Fix some Eclipse nags Modified: tomcat/trunk/java/org/apache/catalina/connector/Request.java tomcat/trunk/java/org/apache/catalina/core/StandardContext.java Modified: tomcat/trunk/java/org/apache/catalina/connector/Request.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/Request.java?rev=1459045r1=1459044r2=1459045view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/Request.java (original) +++ tomcat/trunk/java/org/apache/catalina/connector/Request.java Wed Mar 20 20:46:47 2013 @@ -1886,7 +1886,6 @@ public class Request * * @since Servlet 3.1 */ -@SuppressWarnings(unchecked) @Override public T extends HttpUpgradeHandler T upgrade( ClassT httpUpgradeHandlerClass) throws java.io.IOException { Modified: tomcat/trunk/java/org/apache/catalina/core/StandardContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardContext.java?rev=1459045r1=1459044r2=1459045view=diff == --- tomcat/trunk/java/org/apache/catalina/core/StandardContext.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/StandardContext.java Wed Mar 20 20:46:47 2013 @@ -1000,11 +1000,13 @@ public class StandardContext extends Con } +@Override public InstanceManager getInstanceManager() { return instanceManager; } +@Override public void setInstanceManager(InstanceManager instanceManager) { this.instanceManager = instanceManager; } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459036 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/authenticator/ java/org/apache/catalina/realm/ java/org/apache/catalina/util/ test/org/apache/catalina/util/ webapps/do
On 20/03/2013 20:46, Konstantin Kolinko wrote: 2013/3/21 ma...@apache.org: Author: markt Date: Wed Mar 20 20:37:59 2013 New Revision: 1459036 URL: http://svn.apache.org/r1459036 Log: (empty) Log message? Sorry. Fixed. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn propchange: r1459036 - svn:log
Author: markt Revision: 1459036 Modified property: svn:log Modified: svn:log at Wed Mar 20 20:48:57 2013 -- --- svn:log (original) +++ svn:log Wed Mar 20 20:48:57 2013 @@ -0,0 +1 @@ +Deprecate Tomcat's internal Base 64 encoder/decoder and switch to using the JRE provided implementation. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459043 - /tomcat/trunk/test/org/apache/catalina/core/TesterContext.java
On Wed, 2013-03-20 at 20:46 +, ma...@apache.org wrote: Author: markt Date: Wed Mar 20 20:46:04 2013 New Revision: 1459043 URL: http://svn.apache.org/r1459043 Log: Add new methods Modified: tomcat/trunk/test/org/apache/catalina/core/TesterContext.java Sorry about that ... I'm not sure this is a very good idea, but OTOH I'm quite sure this is meant to be injected, so I added the get/set. Rémy - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459043 - /tomcat/trunk/test/org/apache/catalina/core/TesterContext.java
On 20/03/2013 20:50, Remy Maucherat wrote: On Wed, 2013-03-20 at 20:46 +, ma...@apache.org wrote: Author: markt Date: Wed Mar 20 20:46:04 2013 New Revision: 1459043 URL: http://svn.apache.org/r1459043 Log: Add new methods Modified: tomcat/trunk/test/org/apache/catalina/core/TesterContext.java Sorry about that ... No problem. I'm not sure this is a very good idea, but OTOH I'm quite sure this is meant to be injected, so I added the get/set. I agree injection is required and I don't see an alternative way to do it. Thanks for catching this. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Time for 7.0.39
I plan to get the most recent FileUpload changes (if any), run the unit tests, run the TCKs and then tag 7.0.39 so that should happen some time early tomorrow if all goes well. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 54693] Add a validationQueryTimeout property
https://issues.apache.org/bugzilla/show_bug.cgi?id=54693 --- Comment #5 from Daniel Mikusa dmik...@vmware.com --- Sorry, found an issue with my second patch. Getting an NPE with testOnConnect set to true. Need to revisit and see what is happening. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Update of LocalBadContent by ChuckCaldarale
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The LocalBadContent page has been changed by ChuckCaldarale: http://wiki.apache.org/tomcat/LocalBadContent?action=diffrev1=94rev2=95 xn--lnakuten-9za\.se yehuo\.cn yesbo\.de + yuyu\.vn zetaclearx zjeyu\.com zx\.slave\.ca - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Time for 7.0.39
On Mar 20, 2013, at 3:55 PM, Mark Thomas wrote: I plan to get the most recent FileUpload changes (if any), run the unit tests, run the TCKs and then tag 7.0.39 so that should happen some time early tomorrow if all goes well. Mark In 54734 I propose a patch that needs to also be back-ported to 7.0 (problem with Servlet 3.0 javax.servlet class). It's pretty minor. Don't know whether you would want to get it in or not, but it's worth taking a look at. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459031 - in /tomcat/trunk/java/org/apache/catalina: authenticator/BasicAuthenticator.java authenticator/SpnegoAuthenticator.java realm/JNDIRealm.java util/Base64.java
1. I do not like that you need to convert chunks to Strings to call that API. Though in this particular case the strings should be short enough for it to do not matter. 2. I think we should not blindly cache authentication strings, even if it costs some performance. I think such things should not be kept in memory longer than necessary. 3. Looking into implementation of this JAXB DatatypeConverter class, it serves as a facade, delegating all calls to an instance of converter class. The converter class can be changed via DatatypeConverter.setDatatypeConverter(...). It should not be a security issue though, as otherwise all JAXB were compromised. (In my understanding, the converter can be replaced only in Java 7. The 7u17 implementation of setDatatypeConverter() does check necessary permissions via security manager. The 6u43 one is strange and in my understanding it is noop, as theConverter == null condition there is always false). 2013/3/21 ma...@apache.org: Author: markt Date: Wed Mar 20 20:22:42 2013 New Revision: 1459031 URL: http://svn.apache.org/r1459031 Log: Deprecate Base64 and switch to DatatypeConverter Modified: tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java tomcat/trunk/java/org/apache/catalina/realm/JNDIRealm.java tomcat/trunk/java/org/apache/catalina/util/Base64.java Modified: tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java?rev=1459031r1=1459030r2=1459031view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Wed Mar 20 20:22:42 2013 @@ -24,13 +24,13 @@ import java.security.Principal; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import javax.xml.bind.DatatypeConverter; import org.apache.catalina.connector.Request; -import org.apache.catalina.util.Base64; 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.buf.CharChunk; import org.apache.tomcat.util.buf.MessageBytes; @@ -113,18 +113,28 @@ public class BasicAuthenticator // FIXME: Add trimming // authorizationBC.trim(); -CharChunk authorizationCC = authorization.getCharChunk(); -Base64.decode(authorizationBC, authorizationCC); +// Use the StringCache as these will be the same between +// requests +String encoded = authorizationBC.toString(); +byte[] decoded = DatatypeConverter.parseBase64Binary(encoded); // Get username and password -int colon = authorizationCC.indexOf(':'); +int colon = -1; +for (int i = 0; i decoded.length; i++) { +if (decoded[i] == ':') { +colon = i; +break; +} +} + if (colon 0) { -username = authorizationCC.toString(); +username = new String(decoded, B2CConverter.ISO_8859_1); } else { -char[] buf = authorizationCC.getBuffer(); -username = new String(buf, 0, colon); -password = new String(buf, colon + 1, -authorizationCC.getEnd() - colon - 1); +username = new String( +decoded, 0, colon, B2CConverter.ISO_8859_1); +password = new String( +decoded, colon + 1, decoded.length - colon - 1, +B2CConverter.ISO_8859_1); } authorizationBC.setOffset(authorizationBC.getOffset() - 6); Modified: tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java?rev=1459031r1=1459030r2=1459031view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java Wed Mar 20 20:22:42 2013 @@ -31,9 +31,9 @@ import javax.xml.bind.DatatypeConverter; import org.apache.catalina.LifecycleException; import org.apache.catalina.connector.Request; -import
svn commit: r1459061 - in /tomcat/trunk: java/org/apache/catalina/authenticator/BasicAuthenticator.java java/org/apache/catalina/authenticator/SpnegoAuthenticator.java test/org/apache/catalina/authent
Author: markt Date: Wed Mar 20 21:17:48 2013 New Revision: 1459061 URL: http://svn.apache.org/r1459061 Log: Switching to the new Decoder has fixed a couple of TODOs. Update the comments and tests accordingly. Modified: tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java Modified: tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java?rev=1459061r1=1459060r2=1459061view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Wed Mar 20 21:17:48 2013 @@ -110,8 +110,6 @@ public class BasicAuthenticator ByteChunk authorizationBC = authorization.getByteChunk(); if (authorizationBC.startsWithIgnoreCase(basic , 0)) { authorizationBC.setOffset(authorizationBC.getOffset() + 6); -// FIXME: Add trimming -// authorizationBC.trim(); // Use the StringCache as these will be the same between // requests Modified: tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java?rev=1459061r1=1459060r2=1459061view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java Wed Mar 20 21:17:48 2013 @@ -187,8 +187,6 @@ public class SpnegoAuthenticator extends } authorizationBC.setOffset(authorizationBC.getOffset() + 10); -// FIXME: Add trimming -// authorizationBC.trim(); // Create the String directly as this will change on each request and we // don't want to use the StringCache Modified: tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java?rev=1459061r1=1459060r2=1459061view=diff == --- tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java (original) +++ tomcat/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java Wed Mar 20 21:17:48 2013 @@ -197,18 +197,20 @@ public class TestNonLoginAndBasicAuthent * This is the same as testAcceptProtectedBasic (above), except * using excess white space after the authentication method. * - * The request is rejected with 401 SC_UNAUTHORIZED status. + * The access will be challenged with 401 SC_UNAUTHORIZED, and then be + * permitted once authenticated. * - * TODO: RFC2617 does not define the separation syntax between the - * auth-scheme and basic-credentials tokens. Tomcat should tolerate - * any reasonable amount of white space and return SC_OK. + * RFC2617 does not define the separation syntax between the auth-scheme and + * basic-credentials tokens. Tomcat tolerates any amount of white space + * (within the limits of HTTP header sizes) and returns SC_OK. */ @Test public void testAuthMethodExtraSpace() throws Exception { doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, NO_CREDENTIALS, NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED); doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, SPACED_BASE64, -NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED); +NO_COOKIES, HttpServletResponse.SC_OK); + } /* - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459062 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/authenticator/ test/org/apache/catalina/authenticator/
Author: markt Date: Wed Mar 20 21:18:27 2013 New Revision: 1459062 URL: http://svn.apache.org/r1459062 Log: Switching to the new Decoder has fixed a couple of TODOs. Update the comments and tests accordingly. Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1459061 Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java?rev=1459062r1=1459061r2=1459062view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Wed Mar 20 21:18:27 2013 @@ -135,8 +135,6 @@ public class BasicAuthenticator ByteChunk authorizationBC = authorization.getByteChunk(); if (authorizationBC.startsWithIgnoreCase(basic , 0)) { authorizationBC.setOffset(authorizationBC.getOffset() + 6); -// FIXME: Add trimming -// authorizationBC.trim(); // Use the StringCache as these will be the same between // requests Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java?rev=1459062r1=1459061r2=1459062view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/SpnegoAuthenticator.java Wed Mar 20 21:18:27 2013 @@ -191,8 +191,6 @@ public class SpnegoAuthenticator extends } authorizationBC.setOffset(authorizationBC.getOffset() + 10); -// FIXME: Add trimming -// authorizationBC.trim(); // Create the String directly as this will change on each request and we // don't want to use the StringCache Modified: tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java?rev=1459062r1=1459061r2=1459062view=diff == --- tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java (original) +++ tomcat/tc7.0.x/trunk/test/org/apache/catalina/authenticator/TestNonLoginAndBasicAuthenticator.java Wed Mar 20 21:18:27 2013 @@ -197,18 +197,20 @@ public class TestNonLoginAndBasicAuthent * This is the same as testAcceptProtectedBasic (above), except * using excess white space after the authentication method. * - * The request is rejected with 401 SC_UNAUTHORIZED status. + * The access will be challenged with 401 SC_UNAUTHORIZED, and then be + * permitted once authenticated. * - * TODO: RFC2617 does not define the separation syntax between the - * auth-scheme and basic-credentials tokens. Tomcat should tolerate - * any reasonable amount of white space and return SC_OK. + * RFC2617 does not define the separation syntax between the auth-scheme and + * basic-credentials tokens. Tomcat tolerates any amount of white space + * (within the limits of HTTP header sizes) and returns SC_OK. */ @Test public void testAuthMethodExtraSpace() throws Exception { doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, NO_CREDENTIALS, NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED); doTestBasic(CONTEXT_PATH_LOGIN + URI_PROTECTED, SPACED_BASE64, -NO_COOKIES, HttpServletResponse.SC_UNAUTHORIZED); +NO_COOKIES, HttpServletResponse.SC_OK); + } /* - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Time for 7.0.39
2013/3/21 Mark Thomas ma...@apache.org: I plan to get the most recent FileUpload changes (if any), run the unit tests, run the TCKs and then tag 7.0.39 so that should happen some time early tomorrow if all goes well. 1. There are some jdbc-pool bugs that are worth looking at https://issues.apache.org/bugzilla/show_bug.cgi?id=54599 https://issues.apache.org/bugzilla/show_bug.cgi?id=54732 2. (in Re: r1459031) I think authorizationBC.toString(); should not be cached. It means s/toString()/toStringInternal()/ BTW, the buildbot for TC7 is all red due to TestMapper.testPerformance consistently running 4sec. It is unusual (we usually have around 1sec), but it looks like an issue with buildbot itself. It started with build #1131 and the only changes vs. #1130 are documentation. http://ci.apache.org/builders/tomcat-7-trunk/ It is past midnight here. Nothing more from me tonight. Best regards, Konstantin Kolinko - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459043 - /tomcat/trunk/test/org/apache/catalina/core/TesterContext.java
On Mar 20, 2013, at 3:53 PM, Mark Thomas wrote: On 20/03/2013 20:50, Remy Maucherat wrote: On Wed, 2013-03-20 at 20:46 +, ma...@apache.org wrote: Author: markt Date: Wed Mar 20 20:46:04 2013 New Revision: 1459043 URL: http://svn.apache.org/r1459043 Log: Add new methods Modified: tomcat/trunk/test/org/apache/catalina/core/TesterContext.java Sorry about that ... No problem. I'm not sure this is a very good idea, but OTOH I'm quite sure this is meant to be injected, so I added the get/set. I agree injection is required and I don't see an alternative way to do it. Thanks for catching this. Mark Also agreed. However, r1459028 introduces some unnecessary casting. This is easily solved: Index: java/org/apache/catalina/connector/Request.java === --- java/org/apache/catalina/connector/Request.java (revision 1459047) +++ java/org/apache/catalina/connector/Request.java (working copy) @@ -1892,7 +1892,7 @@ T handler; try { -handler = (T) context.getInstanceManager().newInstance(httpUpgradeHandlerClass); +handler = context.getInstanceManager().newInstance(httpUpgradeHandlerClass); } catch (InstantiationException | IllegalAccessException | InvocationTargetException | NamingException e) { throw new IOException(e); } Index: java/org/apache/catalina/core/ApplicationContext.java === --- java/org/apache/catalina/core/ApplicationContext.java (revision 1459047) +++ java/org/apache/catalina/core/ApplicationContext.java (working copy) @@ -1314,8 +1314,7 @@ public T extends EventListener T createListener(ClassT c) throws ServletException { try { -T listener = -(T) context.getInstanceManager().newInstance(c); +T listener = context.getInstanceManager().newInstance(c); if (listener instanceof ServletContextListener || listener instanceof ServletContextAttributeListener || listener instanceof ServletRequestListener || Index: java/org/apache/catalina/core/DefaultInstanceManager.java === --- java/org/apache/catalina/core/DefaultInstanceManager.java (revision 1459047) +++ java/org/apache/catalina/core/DefaultInstanceManager.java (working copy) @@ -132,7 +132,7 @@ } @Override -public Object newInstance(Class? clazz) throws IllegalAccessException, InvocationTargetException, NamingException, InstantiationException { +public T T newInstance(ClassT clazz) throws IllegalAccessException, InvocationTargetException, NamingException, InstantiationException { return newInstance(clazz.newInstance(), clazz); } @@ -154,7 +154,7 @@ newInstance(o, o.getClass()); } -private Object newInstance(Object instance, Class? clazz) throws IllegalAccessException, InvocationTargetException, NamingException { +private T T newInstance(T instance, Class? extends T clazz) throws IllegalAccessException, InvocationTargetException, NamingException { if (!ignoreAnnotations) { MapString, String injections = assembleInjectionsFromClassHierarchy(clazz); populateAnnotationsCache(clazz, injections); Index: java/org/apache/tomcat/InstanceManager.java === --- java/org/apache/tomcat/InstanceManager.java (revision 1459047) +++ java/org/apache/tomcat/InstanceManager.java (working copy) @@ -25,7 +25,7 @@ */ public interface InstanceManager { -public Object newInstance(Class? clazz) +public T T newInstance(ClassT clazz) throws IllegalAccessException, InvocationTargetException, NamingException, InstantiationException; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459074 - /tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java
Author: markt Date: Wed Mar 20 22:00:43 2013 New Revision: 1459074 URL: http://svn.apache.org/r1459074 Log: Keep auth headers out of the StringCache Modified: tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Modified: tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java?rev=1459074r1=1459073r2=1459074view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Wed Mar 20 22:00:43 2013 @@ -113,7 +113,7 @@ public class BasicAuthenticator // Use the StringCache as these will be the same between // requests -String encoded = authorizationBC.toString(); +String encoded = authorizationBC.toStringInternal(); byte[] decoded = DatatypeConverter.parseBase64Binary(encoded); // Get username and password - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459075 - /tomcat/trunk/test/org/apache/catalina/mapper/TestMapper.java
Author: markt Date: Wed Mar 20 22:04:18 2013 New Revision: 1459075 URL: http://svn.apache.org/r1459075 Log: Buidlbot needs a little longer Modified: tomcat/trunk/test/org/apache/catalina/mapper/TestMapper.java Modified: tomcat/trunk/test/org/apache/catalina/mapper/TestMapper.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/mapper/TestMapper.java?rev=1459075r1=1459074r2=1459075view=diff == --- tomcat/trunk/test/org/apache/catalina/mapper/TestMapper.java (original) +++ tomcat/trunk/test/org/apache/catalina/mapper/TestMapper.java Wed Mar 20 22:04:18 2013 @@ -198,10 +198,10 @@ public class TestMapper extends LoggingB @Test public void testPerformance() throws Exception { -// Takes ~1s on markt's laptop. If this takes more than 4s something +// Takes ~1s on markt's laptop. If this takes more than 5s something // probably needs looking at. If this fails repeatedly then we may need // to increase this limit. -final long maxTime = 4000; +final long maxTime = 5000; long time = testPerformanceImpl(); if (time = maxTime) { // Rerun to reject occasional failures, e.g. because of gc - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Time for 7.0.39
On 20/03/2013 21:31, Konstantin Kolinko wrote: 2013/3/21 Mark Thomas ma...@apache.org: I plan to get the most recent FileUpload changes (if any), run the unit tests, run the TCKs and then tag 7.0.39 so that should happen some time early tomorrow if all goes well. 1. There are some jdbc-pool bugs that are worth looking at https://issues.apache.org/bugzilla/show_bug.cgi?id=54599 https://issues.apache.org/bugzilla/show_bug.cgi?id=54732 I'm unlikely to get to those before the tag. 2. (in Re: r1459031) I think authorizationBC.toString(); should not be cached. It means s/toString()/toStringInternal()/ Fair point. Done. BTW, the buildbot for TC7 is all red due to TestMapper.testPerformance consistently running 4sec. It is unusual (we usually have around 1sec), but it looks like an issue with buildbot itself. It started with build #1131 and the only changes vs. #1130 are documentation. http://ci.apache.org/builders/tomcat-7-trunk/ I've given BuildBot another second.Lets see if that helps. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459076 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/authenticator/BasicAuthenticator.java
Author: markt Date: Wed Mar 20 22:05:46 2013 New Revision: 1459076 URL: http://svn.apache.org/r1459076 Log: Keep auth headers out of the StringCache Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1459074 Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java?rev=1459076r1=1459075r2=1459076view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/BasicAuthenticator.java Wed Mar 20 22:05:46 2013 @@ -138,7 +138,7 @@ public class BasicAuthenticator // Use the StringCache as these will be the same between // requests -String encoded = authorizationBC.toString(); +String encoded = authorizationBC.toStringInternal(); byte[] decoded = DatatypeConverter.parseBase64Binary(encoded); // Get username and password - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459077 - in /tomcat/tc7.0.x/trunk: ./ test/org/apache/tomcat/util/http/mapper/TestMapper.java
Author: markt Date: Wed Mar 20 22:08:08 2013 New Revision: 1459077 URL: http://svn.apache.org/r1459077 Log: Buidlbot needs a little longer Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/test/org/apache/tomcat/util/http/mapper/TestMapper.java Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1459075 Modified: tomcat/tc7.0.x/trunk/test/org/apache/tomcat/util/http/mapper/TestMapper.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/test/org/apache/tomcat/util/http/mapper/TestMapper.java?rev=1459077r1=1459076r2=1459077view=diff == --- tomcat/tc7.0.x/trunk/test/org/apache/tomcat/util/http/mapper/TestMapper.java (original) +++ tomcat/tc7.0.x/trunk/test/org/apache/tomcat/util/http/mapper/TestMapper.java Wed Mar 20 22:08:08 2013 @@ -165,10 +165,10 @@ public class TestMapper extends LoggingB @Test public void testPerformance() throws Exception { -// Takes ~1s on markt's laptop. If this takes more than 4s something +// Takes ~1s on markt's laptop. If this takes more than 5s something // probably needs looking at. If this fails repeatedly then we may need // to increase this limit. -final long maxTime = 4000; +final long maxTime = 5000; long time = testPerformanceImpl(); if (time = maxTime) { // Rerun to reject occasional failures, e.g. because of gc - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
WebServlets and HttpSessions (again) ... How to update last accessed time?
Reading through the expert mailing list for the WebSocket spec, I gather that the experts did not feel it appropriate to update the last access time for HttpSession objects when messages are received. I DO agree with this; there's no way to know what the user really wants here, and it could be a security vulnerability to arbitrarily update the last accessed time. However, I CAN imagine many scenarios where a developer DOES want to update the HttpSession last access time regularly. Consider a customer support chat application, where a user may be chatting with support for many minutes or even hours. Or a multiplayer online game, where the user is playing for hours at a time. It is very reasonable to expect that the developer may want to update the HttpSession's last access time every time a message is received (or at some other developer-defined interval) so that the user is not logged out (assuming the developer is using HttpSession for login/logout). Since, in my personal use, I was already grabbing the HttpSession from the handshake and associating it with the Session onOpen, I just decided I'd manually update the HttpSession's last access time each time a message came in. Wrong. HttpSession doesn't have a way to update the last access time. My thoughts are that there are two different approaches that could be taken to address the inability of the developer to keep the session alive: 1) Update the Servlet spec to add HttpSession#updateLastAccessTime(), which would be useful for more than just WebSockets, but it may be (probably is) too late to get it in Servlet 3.1 (and thus we'd have to wait another 3 years for it). 2) Update the WebSocket spec to add Session#updateHttpSessionLastAccessTime(), but then that would be useful only for WebSockets (at that point, you might as well also add a Session#getHttpSession() method, which does not exist either and so makes getting the HttpSession tricky). Before I file an improvement JIRA against either of these projects, I wanted to get some feedback from the developers here (Mark) on what they thought the best/right approach was based on their experience and previous discussions on the expert list. Of course, if I'm overlooking some other way to update the last access time or otherwise keep the session from expiring, please let me know. Nick - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Time for 7.0.39
On 20/03/2013 20:58, Nick Williams wrote: On Mar 20, 2013, at 3:55 PM, Mark Thomas wrote: I plan to get the most recent FileUpload changes (if any), run the unit tests, run the TCKs and then tag 7.0.39 so that should happen some time early tomorrow if all goes well. Mark In 54734 I propose a patch that needs to also be back-ported to 7.0 (problem with Servlet 3.0 javax.servlet class). It's pretty minor. Don't know whether you would want to get it in or not, but it's worth taking a look at. Looks reasonable. I'll add that. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459085 - /tomcat/trunk/java/javax/servlet/http/HttpServlet.java
Author: markt Date: Wed Mar 20 22:35:31 2013 New Revision: 1459085 URL: http://svn.apache.org/r1459085 Log: Ensure HEAD requests return the correct content length when the requested resource uses a Writer. Patch by Nick Williams. Modified: tomcat/trunk/java/javax/servlet/http/HttpServlet.java Modified: tomcat/trunk/java/javax/servlet/http/HttpServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/javax/servlet/http/HttpServlet.java?rev=1459085r1=1459084r2=1459085view=diff == --- tomcat/trunk/java/javax/servlet/http/HttpServlet.java (original) +++ tomcat/trunk/java/javax/servlet/http/HttpServlet.java Wed Mar 20 22:35:31 2013 @@ -750,8 +750,12 @@ class NoBodyResponse extends HttpServlet // file private void setContentLength() { -if (!didSetContentLength) - super.setContentLength(noBody.getContentLength()); +if (!didSetContentLength) { +if (writer != null) { +writer.flush(); +} +super.setContentLength(noBody.getContentLength()); +} } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1459087 - in /tomcat/tc7.0.x/trunk: ./ java/javax/servlet/http/HttpServlet.java webapps/docs/changelog.xml
Author: markt Date: Wed Mar 20 22:37:38 2013 New Revision: 1459087 URL: http://svn.apache.org/r1459087 Log: Ensure HEAD requests return the correct content length when the requested resource uses a Writer. Patch by Nick Williams. Modified: tomcat/tc7.0.x/trunk/ (props changed) tomcat/tc7.0.x/trunk/java/javax/servlet/http/HttpServlet.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc7.0.x/trunk/ -- Merged /tomcat/trunk:r1459085 Modified: tomcat/tc7.0.x/trunk/java/javax/servlet/http/HttpServlet.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/javax/servlet/http/HttpServlet.java?rev=1459087r1=1459086r2=1459087view=diff == --- tomcat/tc7.0.x/trunk/java/javax/servlet/http/HttpServlet.java (original) +++ tomcat/tc7.0.x/trunk/java/javax/servlet/http/HttpServlet.java Wed Mar 20 22:37:38 2013 @@ -750,8 +750,12 @@ class NoBodyResponse extends HttpServlet // file private void setContentLength() { -if (!didSetContentLength) - super.setContentLength(noBody.getContentLength()); +if (!didSetContentLength) { +if (writer != null) { +writer.flush(); +} +super.setContentLength(noBody.getContentLength()); +} } Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1459087r1=1459086r2=1459087view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Wed Mar 20 22:37:38 2013 @@ -143,6 +143,10 @@ which meant that installation of Windows service could fail producing incorrect service launch command. (mturk) /fix + fix +Ensure HEAD requests return the correct content length when the +requested resource uses a Writer. Patch by Nick Williams. (markt) + /fix /changelog /subsection /section - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 54734] Tomcat Servlet 3.1 API needs to be synchronized with Proposed Final Draft
https://issues.apache.org/bugzilla/show_bug.cgi?id=54734 --- Comment #4 from Mark Thomas ma...@apache.org --- (In reply to comment #2) I recommend that the patch to fix NoBodyResponse#setContentLength() get back-ported to Tomcat 7.0, since it should have behaved this way in Servlet 3.0. Applied to trunk and 7.0.x and will be included in 7.0.39 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
[Tomcat Wiki] Trivial Update of PercyCurl by PercyCurl
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The PercyCurl page has been changed by PercyCurl: http://wiki.apache.org/tomcat/PercyCurl New page: brenterprise restaurant revenue software application, business enterprise restaurant sales program, increase restaurant income software, total restaurant profits application process, business restaurant product sales software package price, best and cheap restaurant gross sales software, affordable price restaurant revenue program, greatest restaurant product sales application with regard to restaurant, great restaurant product sales software package regarding small business, electric restaurant income software, most up-to-date restaurant gross sales software, restaurant income program achievable restauranLooking to get a restaurant furnishings are no little amount, along with creating new customers.BR But wholesale very hot cooking pot desk selling invest in, a business person can conserve a fine money. The most important a business person seeking a restaurant household furniture available for purchase look for a efficient and also affordable Private home furniture vendor.BR [[http://www.nsfsales.com/blog/wholesale-restaurant-supplies/|restaurant wholesale supplies]] Just how can a true Arabic supper ever be full without a treat! Consequently where ever you look from your various : bhapa sandesh, rasogolla, mishti doi, payesh in addition to malpua.BR BR Attentive support in addition to beneficial (reliable) Hindi meals makes certain Oh! Calcutta stands upright amongst alternative eating places in the urban center. Of course, for you to Bengalis, meals are akin to religious beliefsbrbr http://www.nsfsales.com/blog/flatware-baskets-french-fry-cutter/BR BR Restaurant equipment differ from standard your kitchen equipments plus it wants unique issue to offer shoppers improved. There is various collection of restaurant tools that you may possibly not find out plus it must employ a number of meals skilled to get managing restaurant small business properly.BR It has to decide suitable specific restaurant devices in which finest ideal to help restaurant requirements so enabling to carry out virtually all client order. It is better for you to got over the proper on-line places that may make an individual along with appropriate details that you're searching for. In addition there are the particular restaurant products supplies companies which provide all sorts of necessary restaurant tools in addition to kitchen appliance. Using restaurant equipment supplier, you can aquire most range of tools. Most of these distributors assist in places to eat by offering complete range of tools to develop layout along with provide prospects together with great company expertise. [[http://www.tallitalian.com/7-food-drinks|bruschetta toppings]]BR BR Appear any kind of cricket suit and cricket lovers acquire just simply riveted to the Television. This is the time, straight away of your complement to the end, of which pizza places to eat witness an enormous development of profit. People today subsequently prefer household supply regarding meals. A little call or perhaps a handful of clicks the corporate site on the garlic bread organization and also the meals grows to you in Half an hour! The house shipping with meal services are also the premium assistance for people who are internet hosting the get-together or get together or maybe any circumstance. The situation which will also come up with regard to house supply associated with meals is whenever you feel hungry try not to have time to go to this restaurant given that you are saddled with function and also that you do not seem like food preparation. BR BR learn further concerning ::BR http://athertongrace.com/article.php?id=4989BR http://veggieveins.com/groups/stuffed-pasta-at-olive-garden/BR BR My weblog [[http://ningen.sakura.ne.jp/wp04/groups/stuffed-pasta-shells-recipe/|restaurant food supplies wholesale]] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459043 - /tomcat/trunk/test/org/apache/catalina/core/TesterContext.java
On 20/03/2013 21:35, Nick Williams wrote: On Mar 20, 2013, at 3:53 PM, Mark Thomas wrote: On 20/03/2013 20:50, Remy Maucherat wrote: On Wed, 2013-03-20 at 20:46 +, ma...@apache.org wrote: Author: markt Date: Wed Mar 20 20:46:04 2013 New Revision: 1459043 URL: http://svn.apache.org/r1459043 Log: Add new methods Modified: tomcat/trunk/test/org/apache/catalina/core/TesterContext.java Sorry about that ... No problem. I'm not sure this is a very good idea, but OTOH I'm quite sure this is meant to be injected, so I added the get/set. I agree injection is required and I don't see an alternative way to do it. Thanks for catching this. Mark Also agreed. However, r1459028 introduces some unnecessary casting. This is easily solved: Indeed, but Eclipse flags a couple of errors when you do this. The errors are incorrect but rather a nuisance. Something to look at after the next update. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459043 - /tomcat/trunk/test/org/apache/catalina/core/TesterContext.java
On Mar 20, 2013, at 5:48 PM, Mark Thomas wrote: On 20/03/2013 21:35, Nick Williams wrote: On Mar 20, 2013, at 3:53 PM, Mark Thomas wrote: On 20/03/2013 20:50, Remy Maucherat wrote: On Wed, 2013-03-20 at 20:46 +, ma...@apache.org wrote: Author: markt Date: Wed Mar 20 20:46:04 2013 New Revision: 1459043 URL: http://svn.apache.org/r1459043 Log: Add new methods Modified: tomcat/trunk/test/org/apache/catalina/core/TesterContext.java Sorry about that ... No problem. I'm not sure this is a very good idea, but OTOH I'm quite sure this is meant to be injected, so I added the get/set. I agree injection is required and I don't see an alternative way to do it. Thanks for catching this. Mark Also agreed. However, r1459028 introduces some unnecessary casting. This is easily solved: Indeed, but Eclipse flags a couple of errors when you do this. The errors are incorrect but rather a nuisance. Something to look at after the next update. Mark That's odd. Those are standard Java 6 language features. Why on earth would Eclipse flag them as errors??? *scratches head* What version of Eclipse are you using? - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Update of LocalBadContent by ChuckCaldarale
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The LocalBadContent page has been changed by ChuckCaldarale: http://wiki.apache.org/tomcat/LocalBadContent?action=diffrev1=95rev2=96 angosso\.net aprendedanzaoriental\.info ask\.com + athertongrace\.com awesomeindiefilms\.doobious\.org backlinklist\.org bettingpro\.com @@ -125, +126 @@ myteethadvisor\.com najem-avtodoma\.info nekoo\.cn + ningen\.sakura\.ne\.jp nofaxpayday nordenpark\.com novolinespielen\.org + nsfsales\.com o-f\.com oa8000\.com\.cn oesterreich-online\.info @@ -162, +165 @@ social\.yahoo\.com\.np sprachstudium\.beeplog\.de stickersmurauxgrossiste\.com + tallitalian\.com technische-uebersetzung\.blogage\.de theofficeconnection\.com\.au thewashingtonadvocates\.com @@ -179, +183 @@ uebersetzung1\.wordpress\.com uebersetzungsforum\.forumieren\.eu ulcertreatment\.org + veggieveins\.com vergleich-riester-rente\.net wearepsychics\.com webcamss\.com - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: svn commit: r1459043 - /tomcat/trunk/test/org/apache/catalina/core/TesterContext.java
On 20/03/2013 22:50, Nick Williams wrote: On Mar 20, 2013, at 5:48 PM, Mark Thomas wrote: On 20/03/2013 21:35, Nick Williams wrote: snip/ Also agreed. However, r1459028 introduces some unnecessary casting. This is easily solved: Indeed, but Eclipse flags a couple of errors when you do this. The errors are incorrect but rather a nuisance. Something to look at after the next update. Mark That's odd. Those are standard Java 6 language features. Why on earth would Eclipse flag them as errors??? *scratches head* What version of Eclipse are you using? Latest stable fully patched. Eclipse appears to have a problem matching the method call to the correct method. Having had a little experience with method mapping with the last EL implementation I appreciate just how tricky the edge cases can be and generics just makes it an order of magnitude harder. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 54665] Provide JNDI support for java.net.URL resources
https://issues.apache.org/bugzilla/show_bug.cgi?id=54665 --- Comment #3 from Christopher Schultz ch...@christopherschultz.net --- I'm not sure why String - URL wouldn't be cross-platform. WRT licenses, LGPL is incompatible with AL2, so you'd have to get the author to grant the code to the ASF under a different license. -- 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 54690] HTTPS BIO/NIO connector does not enable TLS 1.1 and TLS 1.2 by default
https://issues.apache.org/bugzilla/show_bug.cgi?id=54690 --- Comment #8 from Tim Whittington t...@apache.org --- For posterity, the actual situation with JSSE is a bit more complicated than client vs server. (The fix and workaround for this issue are correct - this is just to clarify the landscape in case it's ever come across again). Testing on Java 7 on OS X/Linux/HP-UX: There are 3 distinct sets of cipher suites obtainable from the 23! unique locations in the JSSE API that produce a list of cipher suites. There are 4 distinct sets of protocol variants obtainable from the 15! unique locations in the JSSE API that produce a list of protocols. I've attached a full report, but in summary: The cipher suites obtained are grouped into 3 distinct sets of ciphers: 1. Default ciphers for client objects (SSLContext and SSLSocketFactory/SSLSocket) for default and = TLSv1.1 engines 2. Supported ciphers for all engines (i.e. they're all the same) 3. Enabled ciphers from server objects (SSLEngine, SSLServerSocketFactory and SSLServerSocket) for all engines, and client object defaults for TLSv1.2 engine The protocol variants are grouped into the following 4 sets: 1. Default for SSLContext and supported/default for SSLSocket in TLSv1.2 engine 2. Default for SSLContext and supported/default for SSLSocket in TLSv1.1 engine 3. Default for SSLContext and supported/default for all engines default and = TLSv1 engines 4. Supported for SSLContext, supported/defaults for SSLEngine/SSLServerSocket in all engines For Java 6 on OS X/Linux/HP-UX, the results are a bit simpler: - Cipher suites are split into 2 groups: supported cipher suites, and default/enabled cipher suites (on all client + server objects). - For protocol variants, supported == enabled == default in all locations. For Java 7 on AIX: - Cipher suites are in 2 groups (supported and default/enabled), with client + server defaults the same. - Protocol variants are in 6 groups: 1. Defaults for client objects in Default engine (SSLv3, TLSv1) 2. Supported/default for client objects for TLSv1.2 engine (TLSv1.2 only) 3. Supported/default for client objects for TLSv1.1 engine (TLSv1.1 only) 4. Supported/default for client objects for TLS and TLSv1 engines (TLSv1 only) 5. Supported/default for client objects for SSL and SSLv3 engines (SSLV3 only) 6. Supported protocols for SSLContext, SSLEngine and SSLServerSocket on all engines, and defaults for SSLServerSocket on default engine (SSLv3+) (As an aside, all of this points out that in Java 7 switching the engine using the HTTPS connector protocol attribute will not only change defaults, but change the supported protocol variants that can be enabled). Cutting across all this: - Supported for SSLContext appears to be stable across the versions/platforms - the only way to reliably detect the 'server' defaults in a JVM appear to be via an SSLEngine or a SSLServerSocket constructed from an SSLContext. Thankfully the defaults appear to be independant of the engine (the protocol argument to SSLContext.getInstance()). -- 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 54690] HTTPS BIO/NIO connector does not enable TLS 1.1 and TLS 1.2 by default
https://issues.apache.org/bugzilla/show_bug.cgi?id=54690 --- Comment #9 from Tim Whittington t...@apache.org --- Created attachment 30088 -- https://issues.apache.org/bugzilla/attachment.cgi?id=30088action=edit JSSE options on Oracle Java 7 -- 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 54690] HTTPS BIO/NIO connector does not enable TLS 1.1 and TLS 1.2 by default
https://issues.apache.org/bugzilla/show_bug.cgi?id=54690 --- Comment #10 from Tim Whittington t...@apache.org --- Created attachment 30089 -- https://issues.apache.org/bugzilla/attachment.cgi?id=30089action=edit JSSE options on Oracle Java 6 -- 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 54690] HTTPS BIO/NIO connector does not enable TLS 1.1 and TLS 1.2 by default
https://issues.apache.org/bugzilla/show_bug.cgi?id=54690 --- Comment #11 from Tim Whittington t...@apache.org --- Created attachment 30090 -- https://issues.apache.org/bugzilla/attachment.cgi?id=30090action=edit JSSE options on AIX Java 7 -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Tomcat Wiki] Trivial Update of LAJLyndon by LAJLyndon
Dear Wiki user, You have subscribed to a wiki page or wiki category on Tomcat Wiki for change notification. The LAJLyndon page has been changed by LAJLyndon: http://wiki.apache.org/tomcat/LAJLyndon New page: Nothing to write about myself really.BR Finally a part of this community.BR I really wish I'm useful in one way .BR BR Feel free to surf to my blog post - [[http://buddy-mash.de/|simply click the following site]] - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org