RE: Minimalistic Docs
At 09:56 AM 1/17/02 +0200, you wrote: well, minimal meaning 1c and minimalist meaning 2 (below) look pretty similar to me, but as Tom says, the latter suggests intent. Then again, the fact that it is in the title also does a fair job suggesting intent. Let's just steer away from anything pretentious. I vote for minimalist. http://www.dictionary.com - great resource! enough of this :) ant -Original Message- From: Tomas Rokicki [mailto:[EMAIL PROTECTED]] Sent: Wednesday, January 16, 2002 10:17 PM To: Tomcat Developers List Subject: RE: Minimalistic Docs Well, if you believe dictionaries: minimal: adj. 1a Smallest in amount or degree. 1b Small in amount or degree. 1c Only barely adequate. 2 often Minimal Of, relating to, or being minimalism minimalist: n. 1 One who advocates a moderate or conservative approach, action, or policy, as in a political or governmental organization. 2 A practitioner of minimalism. minimalist: adj. 1 Of, relating to, characteristic of, or in the style of minimalism. 2 Being or providing a bare minimum of what is necessary. So minimal is clearly not what we mean, but the second adjective definition is clearly what we mean. So minimalist seems to work. Minimalistic is clearly not a word. Minimal means, and further, connotes, the wrong thing. Don't techies ever use dictionaries? -tom -Original Message- From: Arnold Shore [mailto:[EMAIL PROTECTED]] Sent: Wednesday, January 16, 2002 11:15 AM To: Tomcat Developers List Subject: RE: Minimalistic Docs And a minimalistic use of Minimalistic would be Minimal. as -Original Message- From: Christopher K. St. John [mailto:[EMAIL PROTECTED]] Sent: Wednesday, January 16, 2002 12:47 PM To: Tomcat Developers List Subject: Re: Minimalistic Docs Anthony Holland wrote: Tomcat - A Minimalistic User's Guide There is no such word as 'minimalistic'. In the style of a member of the art movement Minimalism. In the style of a minimalist. Minimalistic. Works for me. Minimalist User's Guide would imply that the user's guide has to do with the art movement (or communism), while Minimalistic implies that the guide is in the style of, but not actually about, Minimalism. A Minimalist's Guide might work. What are you two talking about? The connotation, as well as the denotation, of something, by the way, IS its meaning. If you are using A Minimalist's Guide as the name of a publication, your English is wrong. In that case, Minimalist's is a nominative-adjective and it should be A Minimalists Guide. This is a standard mistake, usually not made by good sign companies, however. Also, the conclusions you draw about Minimalist User's Guide (should be Minimalist Users Guide) and A Minimalist's Guide (should be A Minimalists Guide) are backward. The latter could be a use of the noun, although that would be unlikely, while the former could not be such a use. You guys have too much time on your hands, like me. ;-) How about, if you want not to be pedantic, An Austere Guide? Of course, I don't know what the hell you are talking about. Micael -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: [VOTE] Tomcat 4.0.2 b2 release
Remy Maucherat wrote: Hi, I think it would be good to tag Tomcat 4.0.2 b2 at the end of the week (with the binaries being released by monday). Here's the ballot: ballot [X] +1 Make the release [ ] +0 Good idea, but I can't help [ ] -0 Bad idea [ ] -1 No, because: /ballot The release process will be the following: - Tag j-t-c/webapp with tomcat_402_b2 - Update the Java sources for webapp in the main Tomcat tree to mirror the changes; I plan to remove the duplication for the next release, and handle webapp the same way as JK (or Coyote) Why not doing it now? - I have only fixed things in j-t-c - I will port back the _change_ in TC to j-t-c. - Tag j-t-c/jk with tomcat_402_b2 (it's fine to also tag it with something else, I just think it's a better way to mark which version went in) - Tag j-t-c/util with tomcat_402_b2 - Generate binaries for the Java code from the j-t-c components, and update the binaries in the main Tomcat tree - Tag the Tomcat tree with tomcat_402_b2 - Build and upload the main Tomcat binaries - Build and upload the native binaries for JK and webapp - Build and upload the RPMs Note: IMO JK should be considered release quality in this release, and should be enabled by default; of course, the final word on this goes to the JK developers :) Thanks, Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5895] New: - Not all sessions receives HttpSessionListener.sessionDestroyed(event) using FileStore
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5895. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5895 Not all sessions receives HttpSessionListener.sessionDestroyed(event) using FileStore Summary: Not all sessions receives HttpSessionListener.sessionDestroyed(event) using FileStore Product: Tomcat 4 Version: 4.0.1 Final Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: Other Component: Catalina AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] I've implemented trivial HttpSessionListener, which contains hashtable for active sesions: public class MySessions implements HttpSessionListener { private static Hashtable _sessions = new Hashtable(); public void sessionCreated(HttpSessionEvent event) { _sessions.put(event.getSession().getId(),event.getSession()); } public void sessionDestroyed(HttpSessionEvent event) { _sessions.remove(event.getSession().getId()); } public static Hashtable getSessions() { return _sessions; } } I'm using FileStore and PersistenceManager and MySessions.sessionCreated() is called twice for each request.getSession() (with different session ID key, because two new elements are stored to the Hashtable). Another problem is calling the HttpSessionListener.sessionDestroyed(event). 565 invalidatet sessions are stored in my Hashtable after 12 hours. So not for all sessions MySessions received the sessionDestroyed(event) event. The bug should be fixed by rewriting the setID() os StandardSession and also FileStore have to be rewritted. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-connectors/webapp/java WarpConnector.java
jfclere 02/01/17 00:57:35 Modified:webapp/java WarpConnector.java Log: Make the WARP connector's thread a daemon thread so that Tomcat shutdown still works without a System.exit(0) call in Bootstrap.java. (Ported from TC4.0 author: craigmcc). Revision ChangesPath 1.28 +1 -0 jakarta-tomcat-connectors/webapp/java/WarpConnector.java Index: WarpConnector.java === RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/java/WarpConnector.java,v retrieving revision 1.27 retrieving revision 1.28 diff -u -r1.27 -r1.28 --- WarpConnector.java19 Dec 2001 14:24:29 - 1.27 +++ WarpConnector.java17 Jan 2002 08:57:35 - 1.28 @@ -509,6 +509,7 @@ this.started = true; this.thread=new Thread(this); +this.thread.setDaemon(true); this.thread.start(); } -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: [VOTE] Tomcat 4.0.2 b2 release
Remy Maucherat wrote: I think it would be good to tag Tomcat 4.0.2 b2 at the end of the week (with the binaries being released by monday). Here's the ballot: ballot [ ] +1 Make the release [X] +0 Good idea, but I can't help [ ] -0 Bad idea [ ] -1 No, because: /ballot Bojan -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: [VOTE] Tomcat 4.0.2 b2 release
I think it would be good to tag Tomcat 4.0.2 b2 at the end of the week (with the binaries being released by monday). Here's the ballot: ballot [ ] +1 Make the release [ ] +0 Good idea, but I can't help [ ] -0 Bad idea [ ] -1 No, because: /ballot +1 since you'll add the load-balancing stuff. PS: Since I'll have to works on RPM, could you send us early annoucement of source tarball availability to make me sure that everything works fine to avoid the problem I got with TC 4.0.1 with incorrect gif and empty htmls -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: [VOTE] Tomcat 4.0.2 b2 release
+1 - Original Message - From: GOMEZ Henri [EMAIL PROTECTED] To: Tomcat Developers List [EMAIL PROTECTED] Sent: Thursday, January 17, 2002 1:02 PM Subject: RE: [VOTE] Tomcat 4.0.2 b2 release I think it would be good to tag Tomcat 4.0.2 b2 at the end of the week (with the binaries being released by monday). Here's the ballot: ballot [ ] +1 Make the release [ ] +0 Good idea, but I can't help [ ] -0 Bad idea [ ] -1 No, because: /ballot +1 since you'll add the load-balancing stuff. PS: Since I'll have to works on RPM, could you send us early annoucement of source tarball availability to make me sure that everything works fine to avoid the problem I got with TC 4.0.1 with incorrect gif and empty htmls -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Watchdog problems
Hi, I have some problems to run the Watchdog tests on mod_webapp and I think there is a problem in watchdog: For example: +++ [java] [gtest] Unable to find the expected header: 'Content-Type: text/plain' in the server's response. [java] [gtest] The following headers were received: [java] [gtest] HEADER - Date: Thu, 17 Jan 2002 11:22:24 GMT [java] [gtest] HEADER - Server: Apache/2.0.31-dev (Unix) mod_ssl/3.0a0 OpenSSL/0.9.6b [java] [gtest] HEADER - Connection: close [java] [gtest] HEADER - Content-Type: text/plain; charset=ISO-8859-1 [java] [gtest] FAIL GET /servlet-tests/Include_1Test HTTP/1.0 +++ I DO think that mod_webapp sends a valid Content-Type but watchdog does not like it! Any comments? Cheers Jean-frederic -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Watchdog problems
Hi, I have some problems to run the Watchdog tests on mod_webapp and I think there is a problem in watchdog: For example: +++ [java] [gtest] Unable to find the expected header: 'Content-Type: text/plain' in the server's response. [java] [gtest] The following headers were received: [java] [gtest] HEADER - Date: Thu, 17 Jan 2002 11:22:24 GMT [java] [gtest] HEADER - Server: Apache/2.0.31-dev (Unix) mod_ssl/3.0a0 OpenSSL/0.9.6b [java] [gtest] HEADER - Connection: close [java] [gtest] HEADER - Content-Type: text/plain; charset=ISO-8859-1 [java] [gtest] FAIL GET /servlet-tests/Include_1Test HTTP/1.0 +++ I DO think that mod_webapp sends a valid Content-Type but watchdog does not like it! Any comments? I agree. ISO-8859-1 is the default encoding, but obviously it can be explicitely specified. Watchdog is rather not flexible, so I don't know how easy it would be to fix this. Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session StandardManager.java
remm02/01/17 04:02:17 Modified:catalina/src/share/org/apache/catalina/session Tag: tomcat_40_branch StandardManager.java Log: - Port patch. - Set context class loader of thread used by the manager to expire sessions. Revision ChangesPath No revision No revision 1.15.2.1 +5 -4 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/StandardManager.java Index: StandardManager.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/StandardManager.java,v retrieving revision 1.15 retrieving revision 1.15.2.1 diff -u -r1.15 -r1.15.2.1 --- StandardManager.java 15 Sep 2001 23:37:52 - 1.15 +++ StandardManager.java 17 Jan 2002 12:02:17 - 1.15.2.1 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/StandardManager.java,v 1.15 2001/09/15 23:37:52 craigmcc Exp $ - * $Revision: 1.15 $ - * $Date: 2001/09/15 23:37:52 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/StandardManager.java,v 1.15.2.1 2002/01/17 12:02:17 remm Exp $ + * $Revision: 1.15.2.1 $ + * $Date: 2002/01/17 12:02:17 $ * * * @@ -106,7 +106,7 @@ * codestop()/code methods of this class at the correct times. * * @author Craig R. McClanahan - * @version $Revision: 1.15 $ $Date: 2001/09/15 23:37:52 $ + * @version $Revision: 1.15.2.1 $ $Date: 2002/01/17 12:02:17 $ */ public class StandardManager @@ -790,6 +790,7 @@ threadName = StandardManager[ + container.getName() + ]; thread = new Thread(this, threadName); thread.setDaemon(true); +thread.setContextClassLoader(container.getLoader().getClassLoader()); thread.start(); } -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina Engine.java
remm02/01/17 04:11:38 Modified:catalina/src/share/org/apache/catalina Tag: tomcat_40_branch Engine.java Log: - Port JVM route addition. Revision ChangesPath No revision No revision 1.6.2.1 +19 -4 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/Engine.java Index: Engine.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/Engine.java,v retrieving revision 1.6 retrieving revision 1.6.2.1 diff -u -r1.6 -r1.6.2.1 --- Engine.java 23 Aug 2001 22:32:10 - 1.6 +++ Engine.java 17 Jan 2002 12:11:38 - 1.6.2.1 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/Engine.java,v 1.6 2001/08/23 22:32:10 craigmcc Exp $ - * $Revision: 1.6 $ - * $Date: 2001/08/23 22:32:10 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/Engine.java,v 1.6.2.1 2002/01/17 12:11:38 remm Exp $ + * $Revision: 1.6.2.1 $ + * $Date: 2002/01/17 12:11:38 $ * * * @@ -90,7 +90,7 @@ * should throw codeIllegalArgumentException/code. * * @author Craig R. McClanahan - * @version $Revision: 1.6 $ $Date: 2001/08/23 22:32:10 $ + * @version $Revision: 1.6.2.1 $ $Date: 2002/01/17 12:11:38 $ */ public interface Engine extends Container { @@ -111,6 +111,21 @@ * @param defaultHost The new default host */ public void setDefaultHost(String defaultHost); + + +/** + * Set the JvmRouteId for this engine. + * + * @param jvmRouteId the (new) JVM Route ID. Each Engine within a cluster + *must have the same JVM Route ID. + */ +public void setJvmRoute(String jvmRouteId); + + +/** + * Retrieve the JvmRouteId for this engine. + */ +public String getJvmRoute(); /** -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core StandardEngine.java
remm02/01/17 04:11:47 Modified:catalina/src/share/org/apache/catalina/core Tag: tomcat_40_branch StandardEngine.java Log: - Port JVM route addition. Revision ChangesPath No revision No revision 1.10.2.1 +40 -4 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardEngine.java Index: StandardEngine.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardEngine.java,v retrieving revision 1.10 retrieving revision 1.10.2.1 diff -u -r1.10 -r1.10.2.1 --- StandardEngine.java 23 Aug 2001 22:32:10 - 1.10 +++ StandardEngine.java 17 Jan 2002 12:11:47 - 1.10.2.1 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardEngine.java,v 1.10 2001/08/23 22:32:10 craigmcc Exp $ - * $Revision: 1.10 $ - * $Date: 2001/08/23 22:32:10 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core/StandardEngine.java,v 1.10.2.1 2002/01/17 12:11:47 remm Exp $ + * $Revision: 1.10.2.1 $ + * $Date: 2002/01/17 12:11:47 $ * * * @@ -86,7 +86,7 @@ * fully qualified host name of that virtual host. * * @author Craig R. McClanahan - * @version $Revision: 1.10 $ $Date: 2001/08/23 22:32:10 $ + * @version $Revision: 1.10.2.1 $ $Date: 2002/01/17 12:11:47 $ */ public class StandardEngine @@ -144,6 +144,13 @@ private DefaultContext defaultContext; +/** + * The JVM Route ID for this Tomcat instance. All Route ID's must be unique + * across the cluster. + */ +private String jvmRouteId; + + // - Properties @@ -184,6 +191,35 @@ this.defaultContext = defaultContext; support.firePropertyChange(defaultContext, oldDefaultContext, this.defaultContext); + +} + + +/** + * Set the cluster-wide unique identifier for this Engine. + * This value is only useful in a load-balancing scenario. + * p + * This property should not be changed once it is set. + * + * @param jvmRouteId New JVM route ID + */ +public void setJvmRoute(String jvmRouteId) { + +String oldJvmRouteId = this.jvmRouteId; +this.jvmRouteId = jvmRouteId; +support.firePropertyChange(jvmRouteId, + oldJvmRouteId, this.jvmRouteId); + +} + + +/** + * Retrieve the cluster-wide unique identifier for this Engine. + * This value is only useful in a load-balancing scenario. + */ +public String getJvmRoute() { + +return (this.jvmRouteId); } -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session ManagerBase.java
remm02/01/17 04:11:59 Modified:catalina/src/share/org/apache/catalina/session Tag: tomcat_40_branch ManagerBase.java Log: - Port JVM route addition. Revision ChangesPath No revision No revision 1.9.2.2 +39 -4 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/ManagerBase.java Index: ManagerBase.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/ManagerBase.java,v retrieving revision 1.9.2.1 retrieving revision 1.9.2.2 diff -u -r1.9.2.1 -r1.9.2.2 --- ManagerBase.java 10 Dec 2001 01:26:48 - 1.9.2.1 +++ ManagerBase.java 17 Jan 2002 12:11:59 - 1.9.2.2 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/ManagerBase.java,v 1.9.2.1 2001/12/10 01:26:48 craigmcc Exp $ - * $Revision: 1.9.2.1 $ - * $Date: 2001/12/10 01:26:48 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/ManagerBase.java,v 1.9.2.2 2002/01/17 12:11:59 remm Exp $ + * $Revision: 1.9.2.2 $ + * $Date: 2002/01/17 12:11:59 $ * * * @@ -74,6 +74,7 @@ import java.util.HashMap; import java.util.Random; import org.apache.catalina.Container; +import org.apache.catalina.Engine; import org.apache.catalina.Logger; import org.apache.catalina.Manager; import org.apache.catalina.Session; @@ -86,7 +87,7 @@ * be subclassed to create more sophisticated Manager implementations. * * @author Craig R. McClanahan - * @version $Revision: 1.9.2.1 $ $Date: 2001/12/10 01:26:48 $ + * @version $Revision: 1.9.2.2 $ $Date: 2002/01/17 12:11:59 $ */ public abstract class ManagerBase implements Manager { @@ -547,6 +548,12 @@ session.setCreationTime(System.currentTimeMillis()); session.setMaxInactiveInterval(this.maxInactiveInterval); String sessionId = generateSessionId(); +String jvmRoute = getJvmRoute(); +// @todo Move appending of jvmRoute generateSessionId()??? +if (jvmRoute != null) { +sessionId += '.' + jvmRoute; +session.setId(sessionId); +} /* synchronized (sessions) { while (sessions.get(sessionId) != null)// Guarantee uniqueness @@ -655,6 +662,34 @@ } return (result.toString()); +} + + +/** + * Retrieve the enclosing Engine for this Manager. + * + * @return an Engine object (or null). + */ +protected Engine getEngine() { +Engine e = null; +for (Container c=getContainer(); e == null c != null ; + c = c.getParent()) { +if (c != null c instanceof Engine) { +e = (Engine)c; +} +} +return e; +} + + +/** + * Retrieve the JvmRoute for the enclosing Engine. + * + * @return the JvmRoute or null. + */ +protected String getJvmRoute() { +Engine e = getEngine(); +return e == null ? null : e.getJvmRoute(); } -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp WarpCertificates.java WarpSSLData.java Constants.java WarpConfigurationHandler.java WarpConnector.java WarpRequest.java WarpRequestHandler.java
remm02/01/17 04:17:16 Modified:catalina/src/share/org/apache/catalina/connector/warp Tag: tomcat_40_branch Constants.java WarpConfigurationHandler.java WarpConnector.java WarpRequest.java WarpRequestHandler.java Added: catalina/src/share/org/apache/catalina/connector/warp Tag: tomcat_40_branch WarpCertificates.java WarpSSLData.java Log: - Upgrade to latest WARP Java code. Please let me know if something is wrong. Revision ChangesPath No revision No revision 1.5.2.1 +44 -0 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/Constants.java Index: Constants.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/Constants.java,v retrieving revision 1.5 retrieving revision 1.5.2.1 diff -u -r1.5 -r1.5.2.1 --- Constants.java17 Sep 2001 05:10:54 - 1.5 +++ Constants.java17 Jan 2002 12:17:15 - 1.5.2.1 @@ -363,4 +363,48 @@ * No payload.br */ public static final int TYPE_CBK_DONE=0x42; + +/** + * ASK_SSL: The WARP server (Tomcat) asks the WARP client to + * transfer the basic SSL information (cypher, keysize and session). + * br + * No payload.br + */ +public static final int TYPE_ASK_SSL=0x43; + +/** + * ASK_SSL_CLIENT: The WARP server (Tomcat) asks the WARP server to + * transfer the client certificate. + * (just the first element of the chain and the webserver should request + * for it to the browser if possible). + * br + * No payload.br + */ +public static final int TYPE_ASK_SSL_CLIENT=0x44; + +/** + * REP_SSL_CERT: The client certificate (remote peer). + * br + * Payload description:br + * [string] The client certificate. (PEM format). + */ +public static final int TYPE_REP_SSL_CERT=0x52; + +/** + * REP_SSL: SSL information between + * br + * Payload description:br + * [string] The cipher_suite. + * [string] The ssl session. (That is not in the spec's). + * [ushort] size of the algorithm (56-128). + */ +public static final int TYPE_REP_SSL=0x53; + +/** + * REP_SSL_NO: Request SSL information is not available. + * br + * No payload.br + */ +public static final int TYPE_REP_SSL_NO=0x5F; } + 1.6.2.1 +8 -4 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/WarpConfigurationHandler.java Index: WarpConfigurationHandler.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/WarpConfigurationHandler.java,v retrieving revision 1.6 retrieving revision 1.6.2.1 diff -u -r1.6 -r1.6.2.1 --- WarpConfigurationHandler.java 17 Sep 2001 05:10:54 - 1.6 +++ WarpConfigurationHandler.java 17 Jan 2002 12:17:15 - 1.6.2.1 @@ -258,7 +258,8 @@ Container container=connection.getConnector().getContainer(); -Host host=(Host)container.findChild(hostName); +// the hostName should be in lowewr case (setName makes a toLowerCase). +Host host=(Host)container.findChild(hostName.toLowerCase()); if (host==null) { WarpHost whost=new WarpHost(); whost.setName(hostName); @@ -286,10 +287,13 @@ logger.debug(No application for \+applPath+\); Deployer deployer=(Deployer)host; -File file=new File(host.getAppBase()+File.separator+applName); +File file=new File(applName); if (!file.isAbsolute()) { -file=new File(System.getProperty(catalina.base), - host.getAppBase()+File.separator+applName); +file=new File(host.getAppBase()+File.separator+applName); +if (!file.isAbsolute()) { + file=new File(System.getProperty(catalina.base), + host.getAppBase()+File.separator+applName); +} } if (!file.exists()) { 1.16.2.5 +11 -2 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/WarpConnector.java Index: WarpConnector.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/warp/WarpConnector.java,v retrieving revision 1.16.2.4 retrieving revision 1.16.2.5 diff -u -r1.16.2.4 -r1.16.2.5 ---
cvs commit: jakarta-tomcat-4.0/catalina/src/conf server.xml
remm02/01/17 04:26:42 Modified:catalina/src/conf Tag: tomcat_40_branch server.xml Log: - Enable jk by default. Revision ChangesPath No revision No revision 1.29.2.12 +0 -2 jakarta-tomcat-4.0/catalina/src/conf/server.xml Index: server.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/conf/server.xml,v retrieving revision 1.29.2.11 retrieving revision 1.29.2.12 diff -u -r1.29.2.11 -r1.29.2.12 --- server.xml11 Jan 2002 16:39:14 - 1.29.2.11 +++ server.xml17 Jan 2002 12:26:42 - 1.29.2.12 @@ -71,11 +71,9 @@ -- !-- Define an AJP 1.3 Connector on port 8009 -- -!-- Connector className=org.apache.ajp.tomcat4.Ajp13Connector port=8009 minProcessors=5 maxProcessors=75 acceptCount=10 debug=0/ --- !-- Define a Proxied HTTP/1.1 Connector on port 8081 -- !-- See proxy documentation for more information about using this. -- -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5899] New: - HTTP POST parameters ignored in CGIServlet.java
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5899. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5899 HTTP POST parameters ignored in CGIServlet.java Summary: HTTP POST parameters ignored in CGIServlet.java Product: Tomcat 4 Version: 4.0.1 Final Platform: All OS/Version: All Status: NEW Severity: Blocker Priority: Other Component: Webapps AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] I have some perl CGI scripts to run under Tomcat 4.0.1. I have enable the CGI support and correctly installed the perl scripts. But the script doesn't work since the HTTP POST parameters cannot be passed to the script through the CGIServlet. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Watchdog problems
Hi, I have an idea for a fix. I'll have this implemented today. -rl On Thu, 2002-01-17 at 06:56, Remy Maucherat wrote: Hi, I have some problems to run the Watchdog tests on mod_webapp and I think there is a problem in watchdog: For example: +++ [java] [gtest] Unable to find the expected header: 'Content-Type: text/plain' in the server's response. [java] [gtest] The following headers were received: [java] [gtest] HEADER - Date: Thu, 17 Jan 2002 11:22:24 GMT [java] [gtest] HEADER - Server: Apache/2.0.31-dev (Unix) mod_ssl/3.0a0 OpenSSL/0.9.6b [java] [gtest] HEADER - Connection: close [java] [gtest] HEADER - Content-Type: text/plain; charset=ISO-8859-1 [java] [gtest] FAIL GET /servlet-tests/Include_1Test HTTP/1.0 +++ I DO think that mod_webapp sends a valid Content-Type but watchdog does not like it! Any comments? I agree. ISO-8859-1 is the default encoding, but obviously it can be explicitely specified. Watchdog is rather not flexible, so I don't know how easy it would be to fix this. Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Tomcat 3.3a RPMs updated
The Tomcat 3.3 rpms has been updated to release 2 to fix a problem with launchers configuration paths. http://jakarta.apache.org/builds/jakarta-tomcat/release/v3.3/rpms/ -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: [VOTE] Tomcat 4.0.2 b2 release
ballot [ ] +1 Make the release [X] +0 Good idea, but I can't help [ ] -0 Bad idea [ ] -1 No, because: /ballot Larry -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: [VOTE] Tomcat 4.0.2 b2 release
On Wed, 16 Jan 2002, Remy Maucherat wrote: +1 if the load balancing code gets in. -0 without it ( since one of the most important functions of jk will not work in 4.0.2 ). I plan to port the jvmRoute patch. Is it enough ? Yes, you have my +1 than. ( it should be a trivial thing, I just want to make sure it gets in before the release ) Done. There are dependencies of the new Java JK components for Tomcat 4 with some Tomcat 3 components which are not yet in tomcat-util, like util.net and the PoolTcpConnector. It's fine to use them, but they should be in j-t-c/util. The build process shouldn't reference the utils which are from the TC 3 tree anymore. In the meantime, I removed the new stuff from the build to avoid possible problems. Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/lib tomcat-ajp.jar tomcat-util.jar
remm02/01/17 07:38:40 Modified:lib Tag: tomcat_40_branch tomcat-ajp.jar tomcat-util.jar Log: - Update util and AJP binaries. Revision ChangesPath No revision No revision 1.1.2.4 +569 -216 jakarta-tomcat-4.0/lib/tomcat-ajp.jar Binary file 1.1.2.3 +279 -230 jakarta-tomcat-4.0/lib/tomcat-util.jar Binary file -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: [PATCH] JvmRoute changes
Costin: I'm not sure where to make these changes. In particular, I don't know to which message(s) the jvmRoute information is attached or how to extract it from the payload. Tom - Original Message - From: Craig R. McClanahan [EMAIL PROTECTED] To: Tomcat Developers List [EMAIL PROTECTED] Sent: Tuesday, January 15, 2002 8:45 PM Subject: Re: [PATCH] JvmRoute changes | | | On Tue, 15 Jan 2002 [EMAIL PROTECTED] wrote: | | Date: Tue, 15 Jan 2002 19:51:02 -0800 (PST) | From: [EMAIL PROTECTED] | Reply-To: Tomcat Developers List [EMAIL PROTECTED] | To: Tomcat Developers List [EMAIL PROTECTED] | Subject: Re: [PATCH] JvmRoute changes | | Hi Tom, | | Sorry for the late response, I didn't have email last few days. | | The patch is perfect, I hope Remy will be able to incorporate it | in 4.0.2. | | One extra thing we could try is to look in the jk connector | and see if it's possible to set the engine - we have | access to the Request and Container, so we should be able | to find the engine and set the vmroute automatically if | it's not set already. | | | If you can get to the relevant Context (which is probably the value of | Container in your description above, but I haven't examined the code to | make sure), you can find the associated Engine quite easily: | | Container container = ... what you already have ... | Container engine = container; | while (!(engine instanceof Engine)) { | engine = engine.getParent(); | } | ... engine now contains the relevant Engine instance ... | | Costin | | | Craig | | | -- | To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] | For additional commands, e-mail: mailto:[EMAIL PROTECTED] | | | -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: [PATCH] JvmRoute changes
On Thu, 17 Jan 2002, Tom Drake wrote: Costin: I'm not sure where to make these changes. In particular, I don't know to which message(s) the jvmRoute information is attached or how to extract it from the payload. The route is attached on each request. It could be sent only when the connection is first established, but that's how ajp13 was designed ( and it's good for channels where you don't have a long-lived connection ). It is extracted by the RequestHandler in BaseRequest.jvmRoute. But don't spend too much time on this - we can do it later or in jk2, for now you solved the main problem which is getting sticky session to work. Costin -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-connectors/webapp/apache-2.0 mod_webapp.c
jfclere 02/01/17 09:02:14 Modified:webapp/apache-1.3 mod_webapp.c webapp/apache-2.0 mod_webapp.c Log: Change REMOTE_HOST to REMOTE_NAME as describes ServletRequest.getRemoteHost(). Revision ChangesPath 1.31 +2 -2 jakarta-tomcat-connectors/webapp/apache-1.3/mod_webapp.c Index: mod_webapp.c === RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/apache-1.3/mod_webapp.c,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- mod_webapp.c 10 Jan 2002 15:13:21 - 1.30 +++ mod_webapp.c 17 Jan 2002 17:02:13 - 1.31 @@ -57,7 +57,7 @@ /** * @author Pier Fumagalli mailto:[EMAIL PROTECTED] - * @version $Id: mod_webapp.c,v 1.30 2002/01/10 15:13:21 jfclere Exp $ + * @version $Id: mod_webapp.c,v 1.31 2002/01/17 17:02:13 jfclere Exp $ */ #include httpd.h @@ -443,7 +443,7 @@ data (from the connection */ ap_add_common_vars(r); stmp=(char *)r-hostname; -ctmp=(char *)ap_get_remote_host(con,r-per_dir_config, REMOTE_HOST); +ctmp=(char *)ap_get_remote_host(con,r-per_dir_config, REMOTE_NAME); if (stmp==NULL) req-serv-host=; else req-serv-host=apr_pstrdup(req-pool,stmp); if (ctmp==NULL) req-clnt-host=; 1.7 +4 -2 jakarta-tomcat-connectors/webapp/apache-2.0/mod_webapp.c Index: mod_webapp.c === RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/apache-2.0/mod_webapp.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- mod_webapp.c 1 Nov 2001 22:20:51 - 1.6 +++ mod_webapp.c 17 Jan 2002 17:02:13 - 1.7 @@ -57,7 +57,7 @@ /** * @author Pier Fumagalli mailto:[EMAIL PROTECTED] - * @version $Id: mod_webapp.c,v 1.6 2001/11/01 22:20:51 pier Exp $ + * @version $Id: mod_webapp.c,v 1.7 2002/01/17 17:02:13 jfclere Exp $ */ #include httpd.h @@ -451,11 +451,13 @@ /* Set up the WebApp Library request structure client and server host data (from the connection */ stmp=(char *)r-hostname; -ctmp=(char *)ap_get_remote_host(con,r-per_dir_config, REMOTE_HOST, NULL); if (stmp==NULL) req-serv-host=; else req-serv-host=apr_pstrdup(req-pool,stmp); + +ctmp=(char *)ap_get_remote_host(con,r-per_dir_config, REMOTE_NAME, NULL); if (ctmp==NULL) req-clnt-host=; else req-clnt-host=apr_pstrdup(req-pool,ctmp); + req-serv-addr=apr_pstrdup(req-pool,con-local_ip); req-clnt-addr=apr_pstrdup(req-pool,con-remote_ip); apr_sockaddr_port_get(port, con-local_addr); -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5903] New: - version attribute in jsp:root
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5903. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5903 version attribute in jsp:root Summary: version attribute in jsp:root Product: Tomcat 4 Version: 4.0.1 Final Platform: Other OS/Version: Other Status: NEW Severity: Minor Priority: Other Component: Jasper AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] If the version attribute is not present, the jsp page compiles without problems. I think it is required by the spec that this attribute be present. eg. jsp:root xmlns:jsp=http://java.sun.com/JSP/Page; should be rejected because it doesn't have the version attribute as in jsp:root xmlns:jsp=http://java.sun.com/JSP/Page; version=1.2 JFH -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5905] New: - JSP Document not correctly processed
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5905. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5905 JSP Document not correctly processed Summary: JSP Document not correctly processed Product: Tomcat 4 Version: 4.0.1 Final Platform: Other OS/Version: Other Status: NEW Severity: Major Priority: Other Component: Jasper AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] The following JSP Document : jsp:root xmlns:jsp=http://java.sun.com/JSP/Page; version=1.2 jsp:directive.page language=java session=true errorPage=none isErrorPage=false / jsp:text ![CDATA[html]] /jsp:text jsp:text body Hello jsp:expression1+2+3+4/jsp:expression jsp:scriptletout.println(World);/jsp:scriptlet /body /jsp:text jsp:text ![CDATA[/html]] /jsp:text /jsp:root produces the following output : html body 10World Hello /body /html Notice that the body tag becomes body and that the expression and scriptlet tags appears before the html text. JFH -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5908] New: - java.lang.IllegalStateException: zip file closed
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5908. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5908 java.lang.IllegalStateException: zip file closed Summary: java.lang.IllegalStateException: zip file closed Product: Tomcat 4 Version: 4.0.1 Final Platform: All OS/Version: Windows NT/2K Status: NEW Severity: Normal Priority: Other Component: Catalina AssignedTo: [EMAIL PROTECTED] ReportedBy: [EMAIL PROTECTED] Occurs when attempting to use the manager servlet to redeploy a zip file, This is also commented in the code at the end of the expand method as '// FIXME - doesn't remove from cache!!!' (line 965) To Fix this modify this line (line 940) JarFile jarFile = ((JarURLConnection)war.openConnection()).getJarFile(); to be JarURLConnection juc=(JarURLConnection)war.openConnection(); juc.setUseCaches(false); JarFile jarFile = juc.getJarFile(); This seems to allow the jarfile to be opened more then once. -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Talking about authentication
Hi, I am new to the list. I have been trying to use the JNDIRealm on our System Architecture: Solaris 8 + OpenLDAP. Since moving to a better encryption scheme on Solaris 8 is painful (and mainly undocumented ;-)), we are using the basic crypt algorytthm. Now I have seen a few issues with the RealmBase and obviously the JNDIRealm. First of all the notion of Salt is not present in the RealmBase. Salt is not tied to Unix Crypt but can be applied to any encryption scheme and is pretty standard. Secondly, when using a custom digest (or not) the comparison of password is comparing an Hex value (RealmBase) with the encrypted value found in the backend datastore (LDAP, DB, ...). Basically the comparison never works. I have worked on few workarounds and came to these decisions and impelmented it: - It would make sense to add a filtering mechanism (a CredentialFilter XML attribute in a Realm configuration) on the clear and encrypted credential, so you have room to do any kind of manipulation on both entities. - Add a security package for any custom MessageDigest classes and any JAAS LoginModules and JAAS Configuration classes (in this case, I have a MessageDigest for the Unix Crypt and an XML based JAAS configuration). Could you give me feedbacks on these issues ? Thanks Olivier -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0 build.xml
remm02/01/17 11:49:22 Modified:.build.xml Log: - Fix path separator (causes trouble with Cygwin). Revision ChangesPath 1.55 +1 -1 jakarta-tomcat-4.0/build.xml Index: build.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/build.xml,v retrieving revision 1.54 retrieving revision 1.55 diff -u -r1.54 -r1.55 --- build.xml 26 Dec 2001 01:21:51 - 1.54 +++ build.xml 17 Jan 2002 19:49:22 - 1.55 @@ -275,7 +275,7 @@ and os family=windows / available file=${javaservice.home}/bin/JavaService.exe / -available file=${nsis.home}\makensis-bz2.exe / +available file=${nsis.home}/makensis-bz2.exe / /and /condition /target -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0 build.properties.sample
remm02/01/17 11:59:26 Modified:.build.properties.sample Log: - The JMX support can now be built and distributed with an alternate JMX implmentation: OpenJMX. OpenJMX is a Sourceforge project which uses the Apache license, so this should remove the redistribution problems with the JMX RI. Overall, I think OpenJMX is an ideal candidate for distribution with upcoming Tomcat releases. - The build.properties mentions OpenJMX 1.0 b2, which is not released yet. 1.0 b1 will not work, as a few fixes were needed to work with Tomcat. - I don't see any reason why not to enable the JMX support by default once OpenJMX reaches 1.0 status. - Removes use of proprietary APIs from the JMX RI. - Rename the main JMX variable: jmxri.jar - jmx.jar (the first one implied that the JMX RI is required). Revision ChangesPath 1.25 +4 -5 jakarta-tomcat-4.0/build.properties.sample Index: build.properties.sample === RCS file: /home/cvs/jakarta-tomcat-4.0/build.properties.sample,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- build.properties.sample 15 Jan 2002 18:52:14 - 1.24 +++ build.properties.sample 17 Jan 2002 19:59:26 - 1.25 @@ -6,7 +6,7 @@ # modules that Tomcat depends on. Copy this file to build.properties # in the top-level source directory, and customize it as needed. # -# $Id: build.properties.sample,v 1.24 2002/01/15 18:52:14 patrickl Exp $ +# $Id: build.properties.sample,v 1.25 2002/01/17 19:59:26 remm Exp $ # - @@ -104,11 +104,10 @@ mail.jar=${mail.lib}/mail.jar -# - Java Management Extensions (JMX) RI, version 1.0.1 or later - -jmx.home=${base.path}/jmx-ri_1.0.1/jmx +# - Java Management Extensions (JMX), JMX RI 1.0.1 or later or OpenJMX 1.0b2 or later - +jmx.home=${base.path}/openjmx jmx.lib=${jmx.home}/lib -jmxri.jar=${jmx.lib}/jmxri.jar -jmxtools.jar=${jmx.lib}/jmxtools.jar +jmx.jar=${jmx.lib}/openjmx.jar # - Java Naming and Directory Interface (JNDI), version 1.2 or later - -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina build.xml
remm02/01/17 12:00:02 Modified:catalina build.xml Log: - The JMX support can now be built and distributed with an alternate JMX implmentation: OpenJMX. OpenJMX is a Sourceforge project which uses the Apache license, so this should remove the redistribution problems with the JMX RI. Overall, I think OpenJMX is an ideal candidate for distribution with upcoming Tomcat releases. - The build.properties mentions OpenJMX 1.0 b2, which is not released yet. 1.0 b1 will not work, as a few fixes were needed to work with Tomcat. - I don't see any reason why not to enable the JMX support by default once OpenJMX reaches 1.0 status. - Removes use of proprietary APIs from the JMX RI. - Rename the main JMX variable: jmxri.jar - jmx.jar (the first one implied that the JMX RI is required). Revision ChangesPath 1.96 +12 -33jakarta-tomcat-4.0/catalina/build.xml Index: build.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/build.xml,v retrieving revision 1.95 retrieving revision 1.96 diff -u -r1.95 -r1.96 --- build.xml 11 Jan 2002 00:37:30 - 1.95 +++ build.xml 17 Jan 2002 20:00:01 - 1.96 @@ -32,8 +32,7 @@ pathelement location=${jaas.jar}/ pathelement location=${jcert.jar}/ pathelement location=${jdbc20ext.jar}/ -pathelement location=${jmxri.jar}/ -pathelement location=${jmxtools.jar}/ +pathelement location=${jmx.jar}/ pathelement location=${jndi.jar}/ pathelement location=${jnet.jar}/ pathelement location=${jsse.jar}/ @@ -61,8 +60,7 @@ pathelement location=${jaas.jar}/ pathelement location=${jcert.jar}/ pathelement location=${jdbc20ext.jar}/ -pathelement location=${jmxri.jar}/ -pathelement location=${jmxtools.jar}/ +pathelement location=${jmx.jar}/ pathelement location=${jndi.jar}/ pathelement location=${jnet.jar}/ pathelement location=${jsse.jar}/ @@ -131,10 +129,7 @@ /condition available property=jmx.present classname=javax.management.MBeanServer - classpath=${jmxri.jar} / -available property=jmxtools.present - classname=com.sun.jdmk.Trace - classpath=${jmxtools.jar} / + classpath=${jmx.jar} / available property=jndi.present classname=javax.naming.Context classpath=${jndi.jar} / @@ -189,8 +184,7 @@ /and /condition available property=jdbc20ext.jar.present file=${jdbc20ext.jar} / -available property=jmxri.jar.present file=${jmxri.jar} / -available property=jmxtools.jar.present file=${jmxtools.jar} / +available property=jmx.jar.present file=${jmx.jar} / available property=jcert.jar.present file=${jcert.jar} / available property=jndi.jar.present file=${jndi.jar} / available property=jnet.jar.present file=${jnet.jar} / @@ -234,7 +228,6 @@ equals arg1=${full.dist} arg2=on / and equals arg1=${jmx.present} arg2=true / - equals arg1=${jmxtools.present} arg2=true / equals arg1=${modeler.present} arg2=true / /and /or @@ -336,16 +329,10 @@ equals arg1=${javamail.jar.present} arg2=true / /or /condition -condition property=copy.jmxri.jar +condition property=copy.jmx.jar or equals arg1=${full.dist} arg2=on / -equals arg1=${jmxri.jar.present} arg2=true / - /or -/condition -condition property=copy.jmxtools.jar - or -equals arg1=${full.dist} arg2=on / -equals arg1=${jmxtools.jar.present} arg2=true / +equals arg1=${jmx.jar.present} arg2=true / /or /condition condition property=copy.jta.jar @@ -454,7 +441,6 @@ echo message=jaas.present=${jaas.present} / echo message=javamail.present=${javamail.present} / echo message=jmx.present=${jmx.present} / -echo message=jmxtools.present=${jmxtools.present} / echo message=jsse.present=${jsse.present} / echo message=jta.present=${jta.present} / echo message=junit.present=${junit.present} / @@ -475,8 +461,7 @@ echo message=jaas.jar.present=${jaas.jar.present} / echo message=javamail.jar.present=${javamail.jar.present} / echo message=jdbc20ext.jar.present=${jdbc20ext.jar.present} / -echo message=jmxri.jar.present=${jmxri.jar.present} / -echo message=jmxtools.jar.present=${jmxtools.jar.present} / +echo message=jmx.jar.present=${jmx.jar.present} / echo message=jta.jar.present=${jta.jar.present} / echo message=junit.jar.present=${junit.jar.present} / echo message=ldap.jar.present=${ldap.jar.present} / @@ -504,8 +489,7 @@ echo message=copy.jaas.jar=${copy.jaas.jar} / echo message=copy.jdbc20ext.jar=${copy.jdbc20ext.jar}
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans MBeanUtils.java ServerLifecycleListener.java
remm02/01/17 12:01:02 Modified:catalina/src/share/org/apache/catalina/mbeans MBeanUtils.java ServerLifecycleListener.java Log: - The JMX support can now be built and distributed with an alternate JMX implmentation: OpenJMX. OpenJMX is a Sourceforge project which uses the Apache license, so this should remove the redistribution problems with the JMX RI. Overall, I think OpenJMX is an ideal candidate for distribution with upcoming Tomcat releases. - The build.properties mentions OpenJMX 1.0 b2, which is not released yet. 1.0 b1 will not work, as a few fixes were needed to work with Tomcat. - I don't see any reason why not to enable the JMX support by default once OpenJMX reaches 1.0 status. - Removes use of proprietary APIs from the JMX RI. - Rename the main JMX variable: jmxri.jar - jmx.jar (the first one implied that the JMX RI is required). Revision ChangesPath 1.8 +4 -5 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/MBeanUtils.java Index: MBeanUtils.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/MBeanUtils.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- MBeanUtils.java 14 Jan 2002 21:42:37 - 1.7 +++ MBeanUtils.java 17 Jan 2002 20:01:02 - 1.8 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/MBeanUtils.java,v 1.7 2002/01/14 21:42:37 amyroh Exp $ - * $Revision: 1.7 $ - * $Date: 2002/01/14 21:42:37 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/MBeanUtils.java,v 1.8 2002/01/17 20:01:02 remm Exp $ + * $Revision: 1.8 $ + * $Date: 2002/01/17 20:01:02 $ * * * @@ -76,7 +76,6 @@ import javax.management.OperationsException; import javax.management.modelmbean.InvalidTargetObjectTypeException; import javax.management.modelmbean.ModelMBean; -import com.sun.management.jmx.Trace; import org.apache.catalina.Connector; import org.apache.catalina.Container; import org.apache.catalina.Context; @@ -104,7 +103,7 @@ * * @author Craig R. McClanahan * @author Amy Roh - * @version $Revision: 1.7 $ $Date: 2002/01/14 21:42:37 $ + * @version $Revision: 1.8 $ $Date: 2002/01/17 20:01:02 $ */ public class MBeanUtils { 1.7 +4 -101 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/ServerLifecycleListener.java Index: ServerLifecycleListener.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/ServerLifecycleListener.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- ServerLifecycleListener.java 14 Jan 2002 21:42:37 - 1.6 +++ ServerLifecycleListener.java 17 Jan 2002 20:01:02 - 1.7 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/ServerLifecycleListener.java,v 1.6 2002/01/14 21:42:37 amyroh Exp $ - * $Revision: 1.6 $ - * $Date: 2002/01/14 21:42:37 $ + * $Header: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/mbeans/ServerLifecycleListener.java,v 1.7 2002/01/17 20:01:02 remm Exp $ + * $Revision: 1.7 $ + * $Date: 2002/01/17 20:01:02 $ * * * @@ -71,8 +71,6 @@ import javax.management.MBeanException; import javax.management.MBeanServer; import javax.management.ObjectName; -import com.sun.jdmk.comm.AuthInfo; -import com.sun.jdmk.comm.HtmlAdaptorServer; import org.apache.catalina.Connector; import org.apache.catalina.Container; import org.apache.catalina.ContainerEvent; @@ -100,22 +98,13 @@ * * @author Craig R. McClanahan * @author Amy Roh - * @version $Revision: 1.6 $ $Date: 2002/01/14 21:42:37 $ + * @version $Revision: 1.7 $ $Date: 2002/01/17 20:01:02 $ */ public class ServerLifecycleListener implements ContainerListener, LifecycleListener { -// - Instance Variables - - -/** - * The HtmlAdaptorServer to be executed (if any). - */ -protected HtmlAdaptorServer adaptor = null; - - // - Properties @@ -133,51 +122,6 @@ } -/** - * The port number for the codeHtmlAdaptorServer/code to be created, - * or -1 for no adaptor. - */ -protected int port = -1; - -public int getPort() { -return (this.port); -} - -
cvs commit: jakarta-tomcat-4.0/lib openjmx.license
remm02/01/17 12:01:40 Added: lib openjmx.license Log: - Add license text for OpenJMX. Revision ChangesPath 1.1 jakarta-tomcat-4.0/lib/openjmx.license Index: openjmx.license === /* * The OpenJMX License, Version 1.0 * * Copyright (c) 2001 OpenJMX. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright *notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright *notice, this list of conditions and the following disclaimer in *the documentation and/or other materials provided with the *distribution. * * 3. The end-user documentation included with the redistribution, *if any, must include the following acknowledgment: * This product includes software developed by the *OpenJMX (http://sourceforge.net/projects/openjmx). *Alternately, this acknowledgment may appear in the software itself, *if and wherever such third-party acknowledgments normally appear. * * 4. The names OpenJMX and openjmx must not be used to endorse or promote *products derived from this software without prior written *permission. For written permission, please contact [EMAIL PROTECTED] * * 5. Products derived from this software may not be called OpenJMX, *nor may OpenJMX appear in their name, without prior written *permission of Carlos Quiroz. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL CARLOS QUIROZ OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * * This software consists of voluntary contributions made by many * individuals on behalf of OpenJMX. For more information on * OpenJMX, please see * http://sourceforge.net/projects/openjmx. */ -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/webapps/admin build.xml
remm02/01/17 12:02:16 Modified:webapps/admin build.xml Log: - The JMX support can now be built and distributed with an alternate JMX implmentation: OpenJMX. OpenJMX is a Sourceforge project which uses the Apache license, so this should remove the redistribution problems with the JMX RI. Overall, I think OpenJMX is an ideal candidate for distribution with upcoming Tomcat releases. - The build.properties mentions OpenJMX 1.0 b2, which is not released yet. 1.0 b1 will not work, as a few fixes were needed to work with Tomcat. - I don't see any reason why not to enable the JMX support by default once OpenJMX reaches 1.0 status. - Removes use of proprietary APIs from the JMX RI. - Rename the main JMX variable: jmxri.jar - jmx.jar (the first one implied that the JMX RI is required). Revision ChangesPath 1.3 +4 -4 jakarta-tomcat-4.0/webapps/admin/build.xml Index: build.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/admin/build.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- build.xml 27 Oct 2001 22:18:49 - 1.2 +++ build.xml 17 Jan 2002 20:02:16 - 1.3 @@ -19,7 +19,7 @@ !-- Construct Admin classpath -- path id=admin.classpath pathelement location=${commons-modeler.jar}/ -pathelement location=${jmxri.jar}/ +pathelement location=${jmx.jar}/ pathelement location=${servlet.jar}/ pathelement location=${struts.jar}/ /path @@ -49,7 +49,7 @@ /condition available property=jmx.present classname=javax.management.MBeanServer - classpath=${jmxri.jar} / + classpath=${jmx.jar} / available property=modeler.present classname=org.apache.commons.modeler.Registry classpath=${commons-modeler.jar}/ @@ -61,7 +61,7 @@ classpath=${struts.jar} / !-- JAR files availability flags -- -available property=jmxri.jar.present file=${jmxri.jar} / +available property=jmx.jar.present file=${jmx.jar} / available property=modeler.jar.present file=${commons-modeler.jar} / available property=servlet.jar.present file=${servlet.jar} / available property=struts.jar.present file=${struts.jar} / @@ -121,7 +121,7 @@ echo message=servlet.present=${servlet.present} / echo message=--- Required JARs --- / -echo message=jmxri.jar.present=${jmxri.jar.present} / +echo message=jmx.jar.present=${jmx.jar.present} / echo message=modeler.jar.present=${modeler.jar.present} / echo message=servlet.jar.present=${servlet.jar.present} / echo message=struts.jar.present=${struts.jar.present} / -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Talking about authentication
On Thu, 17 Jan 2002, obrand wrote: Date: Thu, 17 Jan 2002 11:38:58 -0800 From: obrand [EMAIL PROTECTED] Reply-To: Tomcat Developers List [EMAIL PROTECTED] To: tomcat [EMAIL PROTECTED] Subject: Talking about authentication Hi, I am new to the list. I have been trying to use the JNDIRealm on our System Architecture: Solaris 8 + OpenLDAP. Since moving to a better encryption scheme on Solaris 8 is painful (and mainly undocumented ;-)), we are using the basic crypt algorytthm. Interesting timing ... doing something about the issues you raise just came close to the top of my TODO list. Now I have seen a few issues with the RealmBase and obviously the JNDIRealm. First of all the notion of Salt is not present in the RealmBase. Salt is not tied to Unix Crypt but can be applied to any encryption scheme and is pretty standard. Secondly, when using a custom digest (or not) the comparison of password is comparing an Hex value (RealmBase) with the encrypted value found in the backend datastore (LDAP, DB, ...). Basically the comparison never works. I have worked on few workarounds and came to these decisions and impelmented it: - It would make sense to add a filtering mechanism (a CredentialFilter XML attribute in a Realm configuration) on the clear and encrypted credential, so you have room to do any kind of manipulation on both entities. I had started thinking about adding a passwordMatch() method that would support the sorts of stored passwords often seen in LDAP servers (something like {crypt}x) that could be used for any underlying storage technology. To deal with most servers, it would have to support a configurable salt value as well, which could become a property of RealmBase. (Of course, the binary comparison needs to work correctly no matter what.) Is this what you had in mind? Or, perhaps a small worker class API for password matching that could be plugged in to any Realm without subclassing? - Add a security package for any custom MessageDigest classes and any JAAS LoginModules and JAAS Configuration classes (in this case, I have a MessageDigest for the Unix Crypt and an XML based JAAS configuration). That would be very useful. There's a basic JAASRealm implementation in the head branch, but it is not done yet and could use these features. I'd also like to talk about a JAAS-related topic that has been puzzling me -- when you get a Subject back, how do you identify which Principal object represents the user (so you can return it for request.getUserPrincipal() calls), and which ones represent roles? The best I can think of at the moment is to be able to configure a set of classnames that your JAAS implementation returns, and use instanceof checks to tell -- but that seems like a kludge. Could you give me feedbacks on these issues ? Thanks Olivier -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Alternate JMX implementation
Hi, Tomcat 4 HEAD can now be built and run using an alternate JMX implementation (with a much more open-source friendly license :)): OpenJMX (www.open-jmx.org). Note: OpenJMX 1.0b1 will not work with Tomcat, but a build from OpenJMX CVS will Note 2: The main JMX variable in build.properties has been renamed from jmxri.jar to jmx.jar Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/catalina/src/conf server.xml
craigmcc02/01/17 12:16:53 Modified:catalina/src/conf server.xml Log: Update the commented-out entry that enables MBean creation to reflect the removal of the HttpAdaptor startup logic (which was proprietary to the JMX RI implementation). Revision ChangesPath 1.49 +1 -1 jakarta-tomcat-4.0/catalina/src/conf/server.xml Index: server.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/conf/server.xml,v retrieving revision 1.48 retrieving revision 1.49 diff -u -r1.48 -r1.49 --- server.xml11 Jan 2002 16:43:58 - 1.48 +++ server.xml17 Jan 2002 20:16:53 - 1.49 @@ -16,7 +16,7 @@ !-- Uncomment this entry to enable JMX MBeans support -- !-- Listener className=org.apache.catalina.mbeans.ServerLifecycleListener -debug=0 port=-1 login=admin password=admin/ +debug=0/ -- !-- Global JNDI resources -- -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Alternate JMX implementation
on 1/17/02 12:14 PM, Remy Maucherat [EMAIL PROTECTED] wrote: Hi, Tomcat 4 HEAD can now be built and run using an alternate JMX implementation (with a much more open-source friendly license :)): OpenJMX (www.open-jmx.org). Note: OpenJMX 1.0b1 will not work with Tomcat, but a build from OpenJMX CVS will Note 2: The main JMX variable in build.properties has been renamed from jmxri.jar to jmx.jar Remy Awesome! -jon -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Alternate JMX implementation
Excelent ! Costin On Thu, 17 Jan 2002, Remy Maucherat wrote: Hi, Tomcat 4 HEAD can now be built and run using an alternate JMX implementation (with a much more open-source friendly license :)): OpenJMX (www.open-jmx.org). Note: OpenJMX 1.0b1 will not work with Tomcat, but a build from OpenJMX CVS will Note 2: The main JMX variable in build.properties has been renamed from jmxri.jar to jmx.jar Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4 CoyoteConnector.java CoyoteProcessor.java CoyoteRequest.java CoyoteResponse.java Constants.java
remm02/01/17 13:08:44 Modified:coyote/src/java/org/apache/coyote/tomcat4 Constants.java Added: coyote/src/java/org/apache/coyote/tomcat4 CoyoteConnector.java CoyoteProcessor.java CoyoteRequest.java CoyoteResponse.java Log: - Add a skeleton of the Coyote connector for TC 4. Revision ChangesPath 1.2 +6 -0 jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4/Constants.java Index: Constants.java === RCS file: /home/cvs/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4/Constants.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- Constants.java4 Dec 2001 20:27:11 - 1.1 +++ Constants.java17 Jan 2002 21:08:44 - 1.2 @@ -71,4 +71,10 @@ // -- Constants +public static final String Package = org.apache.coyote.tomcat4; +public static final int DEFAULT_CONNECTION_TIMEOUT = 6; + +public static final int PROCESSOR_IDLE = 0; +public static final int PROCESSOR_ACTIVE = 1; + } 1.1 jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4/CoyoteConnector.java Index: CoyoteConnector.java === /* * $Header: /home/cvs/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/tomcat4/CoyoteConnector.java,v 1.1 2002/01/17 21:08:44 remm Exp $ * $Revision: 1.1 $ * $Date: 2002/01/17 21:08:44 $ * * * * The Apache Software License, Version 1.1 * * Copyright (c) 1999 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright *notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright *notice, this list of conditions and the following disclaimer in *the documentation and/or other materials provided with the *distribution. * * 3. The end-user documentation included with the redistribution, if *any, must include the following acknowlegement: * This product includes software developed by the *Apache Software Foundation (http://www.apache.org/). *Alternately, this acknowlegement may appear in the software itself, *if and wherever such third-party acknowlegements normally appear. * * 4. The names The Jakarta Project, Tomcat, and Apache Software *Foundation must not be used to endorse or promote products derived *from this software without prior written permission. For written *permission, please contact [EMAIL PROTECTED] * * 5. Products derived from this software may not be called Apache *nor may Apache appear in their names without prior written *permission of the Apache Group. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software Foundation. For more * information on the Apache Software Foundation, please see * http://www.apache.org/. * * [Additional notices, if required by prior licensing conditions] * */ package org.apache.coyote.tomcat4; import java.io.IOException; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket; import java.net.UnknownHostException; import java.security.AccessControlException; import java.util.Stack; import java.util.Vector; import java.util.Enumeration; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.cert.CertificateException;
Re: [VOTE] Tomcat 4.0.2 b2 release
ballot [ ] +1 Make the release [X] +0 Good idea, but I can't help [ ] -0 Bad idea [ ] -1 No, because: /ballot -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-connectors/jk/native/nt_service jk_nt_service.c
costin 02/01/17 13:17:02 Modified:jk/native/nt_service jk_nt_service.c Log: Fix the build ( was missing a param for jk_b_end ). Added a bit of code to send a secret ( needed if secret is used ) and a bit of code to deal with catalina's shutdown. Revision ChangesPath 1.3 +27 -6 jakarta-tomcat-connectors/jk/native/nt_service/jk_nt_service.c Index: jk_nt_service.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/nt_service/jk_nt_service.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- jk_nt_service.c 18 Jun 2001 14:46:26 - 1.2 +++ jk_nt_service.c 17 Jan 2002 21:17:02 - 1.3 @@ -58,7 +58,7 @@ /*** * Description: NT System service for Jakarta/Tomcat * * Author: Gal Shachor [EMAIL PROTECTED] * - * Version: $Revision: 1.2 $ * + * Version: $Revision: 1.3 $ * ***/ #include jk_global.h @@ -86,6 +86,7 @@ static HANDLE hServerStopEvent = NULL; static int shutdown_port; static char*shutdown_protocol = AJP12_TAG; +static char*shutdown_secret = NULL; struct jk_tomcat_startup_data { char *classpath; @@ -98,6 +99,7 @@ char *cmd_line; int shutdown_port; char *shutdown_protocol; +char *shutdown_secret; char *extra_path; }; @@ -130,7 +132,8 @@ static int start_tomcat(const char *name, HANDLE *hTomcat); static void stop_tomcat(short port, -const char *protocol, +const char *protocol, + char *secret, HANDLE hTomcat); static int read_startup_data(jk_map_t *init_map, jk_tomcat_startup_data_t *data, @@ -531,7 +534,8 @@ * Stop order arrived */ ResetEvent(hServerStopEvent); -stop_tomcat((short)shutdown_port, shutdown_protocol, hTomcat); +stop_tomcat((short)shutdown_port, shutdown_protocol, +shutdown_secret, hTomcat); break; case (WAIT_OBJECT_0 + 1): /* @@ -543,7 +547,8 @@ * some error... * close the servlet container and exit */ -stop_tomcat((short)shutdown_port, shutdown_protocol, hTomcat); +stop_tomcat((short)shutdown_port, shutdown_protocol, +shutdown_secret, hTomcat); } CloseHandle(hServerStopEvent); CloseHandle(hTomcat); @@ -641,6 +646,7 @@ static void stop_tomcat(short port, const char *protocol, +char *secret, HANDLE hTomcat) { struct sockaddr_in in; @@ -649,7 +655,18 @@ int sd = jk_open_socket(in, JK_TRUE, NULL); if(sd 0) { int rc = JK_FALSE; -if(!strcasecmp(protocol, ajp13)) { +if(strcasecmp(protocol, catalina) == 0 ) { +char len; + +if( secret==NULL ) +secret=SHUTDOWN; +len=strlen( secret ); + +rc = send(sd, secret, len , 0); +if(len == rc) { +rc = JK_TRUE; +} +} else if(!strcasecmp(protocol, ajp13)) { jk_pool_t pool; jk_msg_buf_t *msg = NULL; jk_pool_atom_t buf[TINY_POOL_SIZE]; @@ -663,7 +680,7 @@ pool, NULL); if(rc) { -jk_b_end(msg); +jk_b_end(msg, AJP13_PROTO); if(0 jk_tcp_socket_sendfull(sd, jk_b_get_buff(msg), @@ -775,6 +792,7 @@ CloseHandle(startupInfo.hStdOutput); CloseHandle(startupInfo.hStdError); shutdown_port = data.shutdown_port; +shutdown_secret = data.shutdown_secret;
cvs commit: jakarta-tomcat-connectors/jk/native2 build.xml
costin 02/01/17 13:19:35 Modified:jk/native2 build.xml Log: Read a platform-specific build file first. This is usefull if you use the same dir to build on 2 platforms ( which in turn is very usefull if you want to check that some changes on one platform are not braking the other ). ( I finally got vmware to run vc, so I'll start playing with ant's cc task on win ) Revision ChangesPath 1.13 +2 -0 jakarta-tomcat-connectors/jk/native2/build.xml Index: build.xml === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/build.xml,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- build.xml 14 Jan 2002 09:36:13 - 1.12 +++ build.xml 17 Jan 2002 21:19:35 - 1.13 @@ -6,6 +6,7 @@ property file=${user.home}/.ant.properties / property file=${user.home}/build.properties / + property file=build.properties.${os.arch}.${os.name} / property file=build.properties / property file=../build.properties / @@ -47,6 +48,7 @@ /target target name=init + echo message=build.properties.${os.arch}.${os.name} / taskdef resource=META-INF/ant.tasks classpathref=jkant / available property=HAVE_APR file=${apr.include}/apr.h / -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Re: Talking about authentication
Craig R. McClanahan wrote: On Thu, 17 Jan 2002, obrand wrote: Date: Thu, 17 Jan 2002 11:38:58 -0800 From: obrand [EMAIL PROTECTED] Reply-To: Tomcat Developers List [EMAIL PROTECTED] To: tomcat [EMAIL PROTECTED] Subject: Talking about authentication Hi, I am new to the list. I have been trying to use the JNDIRealm on our System Architecture: Solaris 8 + OpenLDAP. Since moving to a better encryption scheme on Solaris 8 is painful (and mainly undocumented ;-)), we are using the basic crypt algorytthm. Interesting timing ... doing something about the issues you raise just came close to the top of my TODO list. Cool. Before reading what I have done to solve the problem, I believe that a JAAS authentication/authorization is more appropriate (and standard). I have achieved the same goals: login form based on a serie of multiple login modules (Base64, Cookie, DB, ..) Now I have seen a few issues with the RealmBase and obviously the JNDIRealm. First of all the notion of Salt is not present in the RealmBase. Salt is not tied to Unix Crypt but can be applied to any encryption scheme and is pretty standard. Secondly, when using a custom digest (or not) the comparison of password is comparing an Hex value (RealmBase) with the encrypted value found in the backend datastore (LDAP, DB, ...). Basically the comparison never works. I have worked on few workarounds and came to these decisions and impelmented it: - It would make sense to add a filtering mechanism (a CredentialFilter XML attribute in a Realm configuration) on the clear and encrypted credential, so you have room to do any kind of manipulation on both entities. I had started thinking about adding a passwordMatch() method that would support the sorts of stored passwords often seen in LDAP servers (something like {crypt}x) that could be used for any underlying storage technology. To deal with most servers, it would have to support a configurable salt value as well, which could become a property of RealmBase. (Of course, the binary comparison needs to work correctly no matter what.) Is this what you had in mind? Or, perhaps a small worker class API for password matching that could be plugged in to any Realm without subclassing? Ok, so what I have done is: Created a org.apache.catalina.realm.Filter interface with 2 methods: - String getClearCredential() - String getEncodedCredential() And created an Instance of it called: SaltedFilter Basically, I am initializing the Filter with a regexp: (\\{.*\\})?(.*) which splits the {encoded method} from the returned encoded credential. The getEncodedCredential then returns the part matching the second parenthesis. The getClearCredential calls the getEncodedCredential to extract the 2 first characters (that how Unix works) and prepend it to the clear credential the user provided. Finally I have a FilterFactory which role is to cache all the created filters (so we don't re-initialize every time). In the server.xml, you add an attribute to the Realm you are using: CredentialFilterClass. In my case, I am passing the SaltedFilter. The JNDIRealm then acts upon this attribute: If it is there, then gethold a the configured Filter using the static method of the FilterFactory and pass an intialized CredentialInfo (containing the 2 passwords: clear and the one retrieved from the datastore). Then the usual code takes on: Check if a digest has been configured (I have created a CryptDigest and TomcatProvider) and pass the password returned by the getClearCredential() to it. It looks a little complex and was not the first thing I did, but after refactoring, it made more sense. I did not want to put the logic of crypt, salt, extraction of {crypt|CRYPT|MD5, } in the server.xml. - Add a security package for any custom MessageDigest classes and any JAAS LoginModules and JAAS Configuration classes (in this case, I have a MessageDigest for the Unix Crypt and an XML based JAAS configuration). That would be very useful. There's a basic JAASRealm implementation in the head branch, but it is not done yet and could use these features. I have to refactor (rewrite) the code since I wrote it for my previous job I also wrote a full blown JAAS implementation that can run on Java 1.2. but in order to use it, I need to do the same: refactor it. It might be a good idea if a separate Jakarta project is created, like Security or JAAS. This kind of project makes sense across all projects. And it will be cool to have people dropping LoginModules !! I'd also like to talk about a JAAS-related topic that has been puzzling me -- when you get a Subject back, how do you identify which Principal object represents the user (so you can return it for request.getUserPrincipal() calls), and which ones represent roles? The best I can think of at the moment is to be able to configure a set of classnames that your JAAS implementation returns, and use instanceof checks to tell -- but that seems like a
DO NOT REPLY [Bug 361] - Ctx( ): IOException in: R( + /index.html + null) socket write error (code=10053) BugRat Report#646
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=361. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=361 Ctx( ): IOException in: R( + /index.html + null) socket write error (code=10053) BugRat Report#646 --- Additional Comments From [EMAIL PROTECTED] 2002-01-17 16:22 --- This is a serious problem on Win2000 + IE: practically every image file causes this message to be emitted. I see from the source that there is special handling of the exception message Broken pipe., which suggests that someone tried a kludge of some sort on it. Could we perhaps just expand the list of messages that are considered OK (like the one that I keep seeing, which is Connection reset by peer: socket write error)? -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0 BUILDING.txt
remm02/01/17 16:46:24 Modified:.BUILDING.txt Log: - Update the build instructions to mention OpenJMX. - Note: OpenJMX 1.0b1, despite what its release date may lead you to believe, won't work. However, I submitted a few patches and nagged the dev list, so the next release (1.0b2) will work :) 1.0b2 is not released yet, so in the very immediate future OpenJMX should be built from CVS, which is very easy to do (checkout the repository, go in the build folder, type build). Revision ChangesPath 1.19 +14 -7 jakarta-tomcat-4.0/BUILDING.txt Index: BUILDING.txt === RCS file: /home/cvs/jakarta-tomcat-4.0/BUILDING.txt,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- BUILDING.txt 15 Jan 2002 18:52:14 - 1.18 +++ BUILDING.txt 18 Jan 2002 00:46:24 - 1.19 @@ -1,4 +1,4 @@ -$Id: BUILDING.txt,v 1.18 2002/01/15 18:52:14 patrickl Exp $ +$Id: BUILDING.txt,v 1.19 2002/01/18 00:46:24 remm Exp $ Building The Tomcat 4.0 Servlet/JSP Container @@ -212,19 +212,26 @@ * Place the jar in a convenient location. -(12) Download and Install the JMX 1.0 Reference Implementation +(12) Download and Install an implementation of the JMX 1.0 specification. This + can be either OpenJMX (http://www.open-jmx.org) or Sun JMX 1.0 Reference + Implementation. NOTE: This step is only required if you wish to build the Config/Admin web application. -* Download the JMX Instrumentation and Agent Reference Implementation - (version 1.0 or later) from +NOTE: The Tomcat binaries are distrbuted with OpenJMX. -http://java.sun.com/products/JavaManagement/download.html +* Download OpenJMX (version 1.0 beta 2 or later) from + +http://sourceforge.net/project/showfiles.php?group_id=34041 -* Unpack the reference implementation into a convenient location so that - it resides in its own subdirectory. +* Alternately, download the JMX Instrumentation and Agent Reference + Implementation (version 1.0 or later) from + +http://java.sun.com/products/JavaManagement/download.html +* Unpack OpenJMX or the reference implementation into a convenient location + so that it resides in its own subdirectory. (13) Download and Install the JNDI 1.2.1 Reference Implementation -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
DO NOT REPLY [Bug 5181] - HttpConnector [8080] No processor available, rejecting this connection
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5181. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE. http://nagoya.apache.org/bugzilla/show_bug.cgi?id=5181 HttpConnector [8080] No processor available, rejecting this connection [EMAIL PROTECTED] changed: What|Removed |Added Severity|Critical|Normal OS/Version|Solaris |All Platform|Sun |All --- Additional Comments From [EMAIL PROTECTED] 2002-01-17 22:18 --- under heavy load (more then 200 request at same time) this coud be help, changes marked as !!! Changed !!! /* * $Header: /home/a430499/PROJECTS/C-JAVIS/repository/de/bbdata/javis30/fix/HttpConnector.java,v 1.1 2002/01/18 05:35:31 a430499 Exp $ * $Revision: 1.1 $ * $Date: 2002/01/18 05:35:31 $ * * * * The Apache Software License, Version 1.1 * * Copyright (c) 1999 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright *notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright *notice, this list of conditions and the following disclaimer in *the documentation and/or other materials provided with the *distribution. * * 3. The end-user documentation included with the redistribution, if *any, must include the following acknowlegement: * This product includes software developed by the *Apache Software Foundation (http://www.apache.org/). *Alternately, this acknowlegement may appear in the software itself, *if and wherever such third-party acknowlegements normally appear. * * 4. The names The Jakarta Project, Tomcat, and Apache Software *Foundation must not be used to endorse or promote products derived *from this software without prior written permission. For written *permission, please contact [EMAIL PROTECTED] * * 5. Products derived from this software may not be called Apache *nor may Apache appear in their names without prior written *permission of the Apache Group. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software Foundation. For more * information on the Apache Software Foundation, please see * http://www.apache.org/. * * [Additional notices, if required by prior licensing conditions] * */ package org.apache.catalina.connector.http; import java.io.IOException; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket; import java.security.AccessControlException; import java.util.Stack; import java.util.Vector; import java.util.Enumeration; import org.apache.catalina.Connector; import org.apache.catalina.Container; import org.apache.catalina.HttpRequest; import org.apache.catalina.HttpResponse; import org.apache.catalina.Lifecycle; import org.apache.catalina.LifecycleEvent; import org.apache.catalina.LifecycleException; import org.apache.catalina.LifecycleListener; import org.apache.catalina.Logger; import org.apache.catalina.Request; import org.apache.catalina.Response; import org.apache.catalina.Service; import org.apache.catalina.net.DefaultServerSocketFactory; import org.apache.catalina.net.ServerSocketFactory; import org.apache.catalina.util.LifecycleSupport; import org.apache.catalina.util.StringManager; /** * Implementation of an HTTP/1.1 connector. * * @author Craig R. McClanahan * @author Remy Maucherat * @version $Revision: 1.1 $ $Date: 2002/01/18