NoClassDefFoundError
hi all i am trying to run a jsp file with a bean tag in Apache Jserv. i have been provided with a servlets directory and a bean directory where the bean directory has been included in classpath on the server. the code for jsp file is html jsp:useBean id=comment class=cal.hello scope=request jsp:setProperty name=comment property=* / /jsp:useBean b% out.print(comment.getComment()); %/b /html the code for bean is package cal; public class hello{ String comment; public hello() { comment = comment; } public String getComment() { return comment; } public void setComment(String acomment) { comment = acomment; } } i put the jsp file in servlets directory and the class file in bean/cal. i get the following error. Exception while servicing request for /servlets/hello.jsp: java.lang.NoClassDefFoundError i also tried putting a jar file in bean directory and pls help -kailash __ Do You Yahoo!? Get personalized email addresses from Yahoo! Mail - only $35 a year! http://personal.mail.yahoo.com/
[VOTE] New Committer: Mike Anderson
I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
RE: [ANNOUNCEMENT] Domino / Tomcat connecter available
We could add it to jakarta-tomcat-connector ? +1 -- so long as andy will help fix bugs in it when/if they come :) I'll commit this works on current JTC. I'd like to see this connector supporting others protocol like ajp13 and may be ajp14/warp. It's important to have people working on others platforms for the connector project. We're not in the Java User Land and even if APR will help us be independant from underlying OS, we'll still need good OS specialists -Original Message- From: Andy Armstrong [mailto:[EMAIL PROTECTED]] Sent: Wednesday, May 30, 2001 1:05 PM To: Tomcat Dev Subject: [ANNOUNCEMENT] Domino / Tomcat connecter available I've written a Tomcat for Lotus Domino in the spirit of the IIS and Netscape connectors making it possible to use Tomcat as Domino's servlet container. It can be found at http://free.tagish.net/domino-tomcat/index.jsp It's quite small and wouldn't look at all out of place in the Tomcat release ;-) -- Andy Armstrong, Tagish
web_app in JTC
Did you, Pier, agree to move the mod_webapp/warp stuff in jakarta-tomcat-connector and use these CVS instead the one from TC 4.0 ? Having all the connector stuff in a common area will help users (it's what we want), and could also allow us to have a release rate different from the main servlet-engine rate (TC 3.2/3.3/4.0). We could concentrate on common documentation, faq and so-on. We migth even see people using others servlet-engine, like jetty, using the jakarta-tomcat-connector to have a connector for their prefered servlet-engine. Where could I find a description of warp protocol ? As you know I started to work on ajp13 successor, ajp14 and like to see if we could merge the both. Also do you consider adding to mod_webapp the support for load-balancing and fault-tolerance ? - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
Re: [ANNOUNCEMENT] Domino / Tomcat connecter available
GOMEZ Henri wrote: We could add it to jakarta-tomcat-connector ? +1 -- so long as andy will help fix bugs in it when/if they come :) I'll commit this works on current JTC. I'd like to see this connector supporting others protocol like ajp13 and may be ajp14/warp. I'm going to investigate ajp{13,14} support this weekend ;-) -- Andy Armstrong, Tagish
cvs commit: jakarta-tomcat/src/native/mod_jk/common jk_ajp13_worker.c
hgomez 01/06/01 01:41:16 Modified:src/native/mod_jk/apache1.3 mod_jk.c src/native/mod_jk/common jk_ajp13_worker.c Log: Fix memory leaks when multiple conf structures are allocated and not desallocated Submitted by: Mike Anderson [EMAIL PROTECTED] Revision ChangesPath 1.9 +19 -7 jakarta-tomcat/src/native/mod_jk/apache1.3/mod_jk.c Index: mod_jk.c === RCS file: /home/cvs/jakarta-tomcat/src/native/mod_jk/apache1.3/mod_jk.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- mod_jk.c 2001/04/05 05:27:52 1.8 +++ mod_jk.c 2001/06/01 08:41:13 1.9 @@ -1047,14 +1047,26 @@ static void exit_handler (server_rec *s, ap_pool *p) { - jk_server_conf_t *conf = - (jk_server_conf_t *)ap_get_module_config(s-module_config, jk_module); +server_rec *tmp = s; - wc_close(conf-log); - uri_worker_map_free((conf-uw_map), conf-log); - map_free((conf-uri_to_context)); - if (conf-log) - jk_close_file_logger((conf-log)); +/* loop through all available servers to clean up all configuration + * records we've created + */ +while (NULL != tmp) +{ +jk_server_conf_t *conf = +(jk_server_conf_t *)ap_get_module_config(tmp-module_config, jk_module); + +if (NULL != conf) +{ +wc_close(conf-log); +uri_worker_map_free((conf-uw_map), conf-log); +map_free((conf-uri_to_context)); +if (conf-log) +jk_close_file_logger((conf-log)); +} +tmp = tmp-next; +} } static const handler_rec jk_handlers[] = 1.8 +1 -0 jakarta-tomcat/src/native/mod_jk/common/jk_ajp13_worker.c Index: jk_ajp13_worker.c === RCS file: /home/cvs/jakarta-tomcat/src/native/mod_jk/common/jk_ajp13_worker.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- jk_ajp13_worker.c 2001/04/19 21:26:43 1.7 +++ jk_ajp13_worker.c 2001/06/01 08:41:15 1.8 @@ -58,7 +58,7 @@ * Author: Henri Gomez [EMAIL PROTECTED] * * Author: Costin [EMAIL PROTECTED] * * Author: Gal Shachor [EMAIL PROTECTED] * - * Version: $Revision: 1.7 $ * + * Version: $Revision: 1.8 $ * ***/ #include jk_pool.h @@ -138,6 +138,7 @@ static void close_endpoint(ajp13_endpoint_t *ep) { reset_endpoint(ep); +jk_close_pool((ep-pool)); if(ep-sd 0) { jk_close_socket(ep-sd); }
cvs commit: jakarta-tomcat-connectors/jk/src/native/domino - New directory
hgomez 01/06/01 01:47:42 jakarta-tomcat-connectors/jk/src/native/domino - New directory
cvs commit: jakarta-tomcat-connectors/jk/src/native/domino config.h dsapi.dsp dsapi.dsw dsapifilter.h jk_dsapi_plugin.c tomcat_redirector.reg
hgomez 01/06/01 01:49:27 Added: jk/src/native/domino config.h dsapi.dsp dsapi.dsw dsapifilter.h jk_dsapi_plugin.c tomcat_redirector.reg Log: Initial domino support in JTC Contributed by Andy Armstrong [EMAIL PROTECTED] Revision ChangesPath 1.1 jakarta-tomcat-connectors/jk/src/native/domino/config.h Index: config.h === /* * Copyright (c) 1997-1999 The Java Apache Project. 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. All advertising materials mentioning features or use of this *software must display the following acknowledgment: *This product includes software developed by the Java Apache *Project for use in the Apache JServ servlet engine project *http://java.apache.org/. * * 4. The names Apache JServ, Apache JServ Servlet Engine and *Java Apache Project must not be used to endorse or promote products *derived from this software without prior written permission. * * 5. Products derived from this software may not be called Apache JServ *nor may Apache nor Apache JServ appear in their names without *prior written permission of the Java Apache Project. * * 6. Redistributions of any form whatsoever must retain the following *acknowledgment: *This product includes software developed by the Java Apache *Project for use in the Apache JServ servlet engine project *http://java.apache.org/. * * THIS SOFTWARE IS PROVIDED BY THE JAVA APACHE PROJECT 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 JAVA APACHE PROJECT 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 Java Apache Group. For more information * on the Java Apache Project and the Apache JServ Servlet Engine project, * please see http://java.apache.org/. * */ /*** * Description: DSAPI plugin for Lotus Domino * * Author: Andy Armstrong [EMAIL PROTECTED] * * Version: $Revision: 1.1 $ * ***/ #ifndef __config_h #define __config_h /* the _memicmp() function is available */ #define HAVE_MEMICMP /* define if you don't have the Notes C API which is available from * *http://www.lotus.com/rw/dlcapi.nsf */ /* #undef NO_CAPI */ #endif /* __config_h */ 1.1 jakarta-tomcat-connectors/jk/src/native/domino/dsapi.dsp Index: dsapi.dsp === # Microsoft Developer Studio Project File - Name=dsapi - Package Owner=4 # Microsoft Developer Studio Generated Build File, Format Version 6.00 # ** DO NOT EDIT ** # TARGTYPE Win32 (x86) Dynamic-Link Library 0x0102 CFG=dsapi - Win32 Debug !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE !MESSAGE NMAKE /f dsapi.mak. !MESSAGE !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE !MESSAGE NMAKE /f dsapi.mak CFG=dsapi - Win32 Debug !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE !MESSAGE dsapi - Win32 Release (based on Win32 (x86) Dynamic-Link Library) !MESSAGE dsapi - Win32 Debug
cvs commit: jakarta-tomcat-connectors/jk/src/doc tomcat-domino-howto.html
hgomez 01/06/01 01:50:40 Added: jk/src/doc tomcat-domino-howto.html Log: Documentation on Domino and Tomcat Revision ChangesPath 1.1 jakarta-tomcat-connectors/jk/src/doc/tomcat-domino-howto.html Index: tomcat-domino-howto.html === !doctype html public -//w3c//dtd html 4.0 transitional//en html head meta http-equiv=Content-Type content=text/html; charset=iso-8859-1 meta name=GENERATOR content=Mozilla/4.76 [en] (Windows NT 5.0; U) [Netscape] titleTomcat Domino HowTo/title /head body h1 Tomcat Domino HowTo/h1 By Andy Armstrong a href=mailto:[EMAIL PROTECTED];[EMAIL PROTECTED]/a pRecent version of the Lotus Domino web server have had the ability to host Java servlets, but at the time of writing the Domino servlet brcontainer uses JDK 1.2.2 and it is not (apparently) possible to replace this with JDK 1.3. That means if you want to use JAAS or any other brAPI that is JDK 1.3 only in your servlets you're stuck. h2 Supported Configuration/h2 The Domino Tomcat redirector was developed and tested on: ol li WinNT4.0-i386 SP6a (it should be able to work on other versions of the NT service pack.) and Windows 2000 Professional/li li Lotus Domino 5.0.6a/li li Tomcat3.2/li /ol The redirector uses bajp12/b to send requests to the Tomcat containers. h2 a NAME=Building/aBuilding/h2 If you have the redirector source you'll need to build it before you can use it with a Domino server. If not you can skip directly to a href=#InstallingInstalling/a. To compile it you'll need th Tomcat source and Microsoft Visual C++ 6.0. You will probably also want the a href=http://www.lotus.com/rw/dlcapi.nsf;Lotus Notes C API/a version 5.0.7 or later. You can build the DLL without the C API, in which case you'll need to define the macro NO_CAPI in config.h. If you do this Domino logging from the DLL will be disabled. pFirstly move the directory called domino into your Tomcat source tree as (e.g.) pnbsp;nbsp;nbsp; D:\Works\Tomcat\jakarta-tomcat\src\native\domino pIn other words place domino in the same directory as the other native code elements such as iis and netscape. Now open the project file dsapi.dsw in Visual C++. As distributed the project refers to a number of file paths on the system that was used during development which will likely be different on the system you're using. Unless these are set correctly the project will not build. To check these go to the project settings page (Alt-F7). Select All Configurations in the bSettings For:/b picker and go to the C/C++ tab. Select Preprocessor from the bCategory:/b picker. pHave a look in the bAdditional include directories:/b field. It contains a number of file paths separated by commas. You need to replace these file paths with the appropriate ones for your system. Specifically you need to replace C:\JBuilder4\jdk1.3 with the path to your JDK1.3 directory and C:\notesapi with the path to your Lotus Notes C API installation. pWhen you've fixed those paths visit the Link tab. Under bCategory:/b Input check the bAdditional library path:/b field. Again this refers to the Lotes Notes C API installation and may need to be updated to reflect where you have it installed. pOnce these paths are correctly set you should be able compile the project by hitting F7 or selecting the appropriate option from the buB/uuild/b menu. Assuming all goes well a new directory called Release will appear below the project directory and, when the build is complete, the file btomcat_redirector.dll/b will appear in this directory. h2 a NAME=Installing/aInstalling/h2 Let's assume you've already got a working Tomcat installation and that the NT system variables JAVA_HOME, TOMCAT_HOME and CLASSPATH are properly set. You can verify that this is the case by typing pnbsp;nbsp;nbsp; C:\ bifull path to tomcat/i\bin\tomcat run/b pIf everything is set up correctly Tomcat should start and it should be possible to connect to your server on port 8080 using a browser. Try something like pnbsp;nbsp;nbsp; bhttp://iname of server/i:8080//b pwhich, assuming Tomcat is still in its default state will produce the examples page. You need to make sure that you have a working Tomcat installation before continuing with these instructions. pOnce you've got a working Tomcat, copy the file btomcat_redirector.dll/b to the Domino program directory (this is the directory, which may be called something like C:\Lotus\Domino, that contains a file called bnlnotes.exe/b). Shortly we will tell Domino where to find this file, but before we do that we need to make some registry entries. The simplest way is to edit the supplied file btomcat_redirector.reg/b, which initially
Re: [VOTE] New Committer: Mike Anderson
+1 GOMEZ Henri typed the following on 09:30 AM 6/1/2001 +0200 I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
jakarta-tomcat-connectors/jk/src/native/README.configure
Hi, This README.configure is what I have prepared for the configure of mod_jk in jakarta-tomcat-connectors. Could you have a look to it before commit? Cheers Jean-frederic Installation It is possible to use autoconf for configuration and installation. To create jakarta-tomcat-connectors's autoconf script, you will need libtool 1.3.3 or higher, and autoconf 2.13 or newer. Those tools will not be required if you are just using a package downloaded from apache.org, they are only required for developers. To configure jakarta-tomcat-connectors run the following commands. ./autoconf (not required unless you are a developer) ./configure [autoconf arguments] [jakarta-tomcat-connectors arguments] make * make install jakarta-tomcat-connectors arguments --- JVM related parameters: --with-java-home=DIR DIR is the patch to the JDK root directory. Something like: /opt/java/jdk12 --with-os-type[=SUBDIR] SUBDIR is the os-type subdirectory, normaly configure should guess it correctly. * --with-arch-type[=SUBDIR] SUBDIR is the arch subdirectory, normaly configure should guess it correctly. --with-java-platform=VAL VAL is the Java platform 1 is 1.1.x and 2 is 1.2.x. It is guessed correctly. Apache related parameters: --with-apxs[=FILE] FILE is the location of the apxs tool. Default is finding apxs in PATH. It builds a shared Apache module. It detects automaticly the Apache version. (2.0 and 1.3) * --with-apache=DIR DIR is the path where apache sources are located. DIR is something like: /home/apache/apache_1.3.19 It builds a static Apache module. APR: * --with-apr=DIR DIR is the location of APR. APR means Apache Portable Runtime. (That is not Apache-2.0!) Note it needs a compiled APR! (for APRVARS and APR includes). APR is code is protected by #ifdef HAVE_APR ... #endif JNI support: * --enable-jni Build the jni_connect.so. * Not yet supported.
RE: Filter Chains slow first time it is called
Craig, Thanks for your prompt reply, and sorry for my delayed reply (I was out of the office yesterday). * Do you have a small test case we can use to investigate this? If so, you can send it either to TOMCAT-DEV or to me in private mail. A .war file containing an example is attached to this mail. * Are your clients using HTTP/1.0 or HTTP/1.1? IE 5.5 and Netscape 6 are both 1.1, I believe. The protocol used by a WAP 'phone depends on the gateway, not the handset, and I'm afraid that I don't know the answer for the particular gateway that I'm using. * Does your filter create a wrapper on the servlet response, or is it just passing things through? Yes, I create a wrapper (although in the example, the wrapper doesn't actually *do* anything ;-) I suspect that somewhere along the line the output stream isn't getting flushed or closed in a timely manner I agree. As you can see from my code, I've added as many flush and close statements as I can, with no effect unfortunately! Thanks again, pbutcher-msgCount++ -- Team Leader, Argogroup plc http://www.argogroup.com/ filterbug.war
cvs commit: jakarta-tomcat-connectors/jk/src/native/apache-2.0 mod_jk.c
hgomez 01/06/01 02:49:57 Modified:jk/src/native/apache-2.0 mod_jk.c Log: Correct the use of register_hooks in latest Apache 2.0 Revision ChangesPath 1.4 +1 -1 jakarta-tomcat-connectors/jk/src/native/apache-2.0/mod_jk.c Index: mod_jk.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-2.0/mod_jk.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- mod_jk.c 2001/05/21 15:20:28 1.3 +++ mod_jk.c 2001/06/01 09:49:56 1.4 @@ -1130,7 +1130,7 @@ return DECLINED; } -static void jk_register_hooks(void) +static void jk_register_hooks(apr_pool_t *p) { ap_hook_handler(jk_handler, NULL, NULL, APR_HOOK_MIDDLE); ap_hook_post_config(jk_post_config,NULL,NULL,APR_HOOK_MIDDLE);
cvs commit: jakarta-tomcat-connectors/jk/src/native/apache-1.3 mod_jk.c
hgomez 01/06/01 02:50:43 Modified:jk/src/native/apache-1.3 mod_jk.c Log: New directive handling for autoconf support and some code cleanup Revision ChangesPath 1.4 +80 -18jakarta-tomcat-connectors/jk/src/native/apache-1.3/mod_jk.c Index: mod_jk.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-1.3/mod_jk.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- mod_jk.c 2001/05/21 15:16:55 1.3 +++ mod_jk.c 2001/06/01 09:50:42 1.4 @@ -126,6 +126,7 @@ char * secret_key; jk_map_t *automount; +jk_map_t *secretkeys; jk_uri_worker_map_t *uw_map; @@ -614,13 +615,13 @@ /* * JkAutoMount directive handling * - * JkAutoMount worker secretkey + * JkAutoMount worker [virtualhost] */ static const char *jk_automount_context(cmd_parms *cmd, void *dummy, char *worker, - char *secret_key) + char *virtualhost) { server_rec *s = cmd-server; jk_server_conf_t *conf = @@ -630,10 +631,36 @@ * Add the new automount to the auto map. */ char * old; - map_put(conf-automount, worker, secret_key, (void **)old); + map_put(conf-automount, worker, virtualhost, (void **)old); return NULL; } + +/* + * JkWorkerSecretKey directive handling + * + * JkWorkerSecretKey worker secretkey + */ + +static const char *jk_worker_secret_key(cmd_parms *cmd, + void *dummy, + char *worker, + char *secretkey) +{ +server_rec *s = cmd-server; +jk_server_conf_t *conf = +(jk_server_conf_t *)ap_get_module_config(s-module_config, jk_module); + +/* + * Add the new automount to the auto map. + */ +char * old; +map_put(conf-secretkeys, worker, secretkey, (void **)old); +return NULL; +} + + + /* * JkWorkersFile Directive Handling * @@ -852,14 +879,21 @@ * asked to the servlet engine (autoconf feature) */ {JkAutoMount, jk_automount_context, NULL, RSRC_CONF, TAKE12, - automatic mount points to a Tomcat worker}, + automatic mount points to a servlet-engine worker}, /* + * JkWorkerSecretKey specifies that the secret key associated to a + * worker + */ +{JkWorkerSecretKey, jk_worker_secret_key, NULL, RSRC_CONF, TAKE2, + Secret key for a worker}, + +/* * JkMount mounts a url prefix to a worker (the worker need to be * defined in the worker properties file. */ {JkMount, jk_mount_context, NULL, RSRC_CONF, TAKE23, - A mount point from a context to a Tomcat worker}, + A mount point from a context to a servlet-engine worker}, /* * JkMountCopy specifies if mod_jk should copy the mount points @@ -874,11 +908,11 @@ * JkLogStampFormat specify the time-stamp to be used on log */ {JkLogFile, jk_set_log_file, NULL, RSRC_CONF, TAKE1, - Full path to the Jakarta Tomcat module log file}, + Full path to the Jakarta mod_jk module log file}, {JkLogLevel, jk_set_log_level, NULL, RSRC_CONF, TAKE1, - The Jakarta Tomcat module log level, can be debug, info, error or emerg}, + The Jakarta mod_jk module log level, can be debug, info, error or emerg}, {JkLogStampFormat, jk_set_log_fmt, NULL, RSRC_CONF, TAKE1, - The Jakarta Tomcat module log format, follow strftime synthax}, + The Jakarta mod_jk module log format, follow strftime synthax}, /* * Apache has multiple SSL modules (for example apache_ssl, stronghold @@ -1031,6 +1065,9 @@ if(!map_alloc((c-automount))) { jk_error_exit(APLOG_MARK, APLOG_EMERG, s, p, Memory error); } + if(!map_alloc((c-secretkeys))) { + jk_error_exit(APLOG_MARK, APLOG_EMERG, s, p, Memory error); + } c-uw_map = NULL; c-secret_key = NULL; @@ -1076,6 +1113,7 @@ if(overrides-mountcopy) { copy_jk_map(p, overrides-s, base-uri_to_context, overrides-uri_to_context); copy_jk_map(p, overrides-s, base-automount, overrides-automount); + copy_jk_map(p, overrides-s, base-secretkeys, overrides-secretkeys); } if(base-envvars_in_use) { @@ -1113,15 +1151,28 @@ } } +/* { int i; -jk_log(conf-log, JK_LOG_DEBUG, secret = %s\n, conf-secret_key);
cvs commit: jakarta-tomcat-connectors/jk/src/native/apache-1.3 Makefile.freebsd Makefile.in Makefile.linux Makefile.nw mod_jk.dsp
hgomez 01/06/01 02:54:02 Modified:jk/src/native/apache-1.3 Makefile.freebsd Makefile.in Makefile.linux Makefile.nw mod_jk.dsp Log: Updated build files to support new source jk_context Revision ChangesPath 1.4 +1 -1 jakarta-tomcat-connectors/jk/src/native/apache-1.3/Makefile.freebsd Index: Makefile.freebsd === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-1.3/Makefile.freebsd,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Makefile.freebsd 2001/05/21 15:06:57 1.3 +++ Makefile.freebsd 2001/06/01 09:54:00 1.4 @@ -18,7 +18,7 @@ SRCS=jk_ajp12_worker.c jk_connect.c jk_msg_buff.c jk_util.c jk_ajp13.c \ jk_jni_worker.c jk_pool.c jk_worker.c jk_ajp13_worker.c jk_lb_worker.c \ jk_sockbuf.c jk_map.c jk_uri_worker_map.c jk_ajp14.c jk_ajp14_worker.c \ - jk_md5.c + jk_md5.c jk_context.c OBJS=${patsubst %.c,%.o,${SRCS}} 1.4 +1 -1 jakarta-tomcat-connectors/jk/src/native/apache-1.3/Makefile.in Index: Makefile.in === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-1.3/Makefile.in,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Makefile.in 2001/05/21 15:06:59 1.3 +++ Makefile.in 2001/06/01 09:54:00 1.4 @@ -12,7 +12,7 @@ SRCS=${JK}/jk_ajp12_worker.c ${JK}/jk_connect.c ${JK}/jk_msg_buff.c ${JK}/jk_util.c ${JK}/jk_ajp13.c \ ${JK}/jk_jni_worker.c ${JK}/jk_pool.c ${JK}/jk_worker.c ${JK}/jk_ajp13_worker.c ${JK}/jk_lb_worker.c \ ${JK}/jk_sockbuf.c ${JK}/jk_map.c ${JK}/jk_uri_worker_map.c ${JK}/jk_ajp14.c ${JK}/jk_ajp14_worker.c \ - ${JK}/jk_md5.c + ${JK}/jk_md5.c ${JK}/jk_context.c all: mod_jk.so 1.4 +1 -2 jakarta-tomcat-connectors/jk/src/native/apache-1.3/Makefile.linux Index: Makefile.linux === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-1.3/Makefile.linux,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Makefile.linux2001/05/21 15:07:01 1.3 +++ Makefile.linux2001/06/01 09:54:00 1.4 @@ -15,8 +15,7 @@ SRCS=${JK}/jk_ajp12_worker.c ${JK}/jk_connect.c ${JK}/jk_msg_buff.c ${JK}/jk_util.c ${JK}/jk_ajp13.c \ ${JK}/jk_jni_worker.c ${JK}/jk_pool.c ${JK}/jk_worker.c ${JK}/jk_ajp13_worker.c ${JK}/jk_lb_worker.c \ ${JK}/jk_sockbuf.c ${JK}/jk_map.c ${JK}/jk_uri_worker_map.c ${JK}/jk_ajp14.c ${JK}/jk_ajp14_worker.c \ - ${JK}/jk_md5.c - + ${JK}/jk_md5.c ${JK}/jk_context.c all: mod_jk.so 1.5 +2 -1 jakarta-tomcat-connectors/jk/src/native/apache-1.3/Makefile.nw Index: Makefile.nw === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-1.3/Makefile.nw,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- Makefile.nw 2001/05/21 15:07:03 1.4 +++ Makefile.nw 2001/06/01 09:54:01 1.5 @@ -52,7 +52,8 @@ jk_nwmain.obj \ jk_ajp14.obj \ jk_ajp14_worker.obj \ - jk_md5.obj + jk_md5.obj \ + jk_context.obj all: $(NLM_NAME).nlm 1.3 +8 -0 jakarta-tomcat-connectors/jk/src/native/apache-1.3/mod_jk.dsp Index: mod_jk.dsp === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-1.3/mod_jk.dsp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- mod_jk.dsp2001/05/18 14:47:39 1.2 +++ mod_jk.dsp2001/06/01 09:54:01 1.3 @@ -160,6 +160,10 @@ # End Source File # End Group +SOURCE=..\common\jk_context.c +# End Source File +# End Group + # Begin Group Header Files # PROP Default_Filter h;hpp;hxx;hm;inl @@ -246,6 +250,10 @@ # End Group SOURCE=..\common\jk_md5.h +# End Source File +# End Group + +SOURCE=..\common\jk_context.h # End Source File # End Group
cvs commit: jakarta-tomcat-connectors/jk/src/native/apache-2.0 Makefile.in Makefile.linux mod_jk.dsp
hgomez 01/06/01 02:55:50 Modified:jk/src/native/apache-2.0 Makefile.in Makefile.linux mod_jk.dsp Log: Updated build files for new jk_context source Revision ChangesPath 1.4 +2 -2 jakarta-tomcat-connectors/jk/src/native/apache-2.0/Makefile.in Index: Makefile.in === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-2.0/Makefile.in,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Makefile.in 2001/05/21 15:18:50 1.3 +++ Makefile.in 2001/06/01 09:55:47 1.4 @@ -12,12 +12,12 @@ SRCS=${JK}/jk_ajp12_worker.c ${JK}/jk_connect.c ${JK}/jk_msg_buff.c ${JK}/jk_util.c ${JK}/jk_ajp13.c \ ${JK}/jk_jni_worker.c ${JK}/jk_pool.c ${JK}/jk_worker.c ${JK}/jk_ajp13_worker.c ${JK}/jk_lb_worker.c \ ${JK}/jk_sockbuf.c ${JK}/jk_map.c ${JK}/jk_uri_worker_map.c ${JK}/jk_ajp14.c ${JK}/jk_ajp14_worker.c \ - ${JK}/jk_md5.c + ${JK}/jk_md5.c ${JK}/jk_context.c LSRCS=jk_ajp12_worker.c jk_connect.c jk_msg_buff.c jk_util.c jk_ajp13.c \ jk_jni_worker.c jk_pool.c jk_worker.c jk_ajp13_worker.c jk_lb_worker.c \ jk_sockbuf.c jk_map.c jk_uri_worker_map.c jk_ajp14.c jk_ajp14_worker.c \ - jk_md5.c + jk_md5.c jk_context.c all: mod_jk.so 1.4 +2 -2 jakarta-tomcat-connectors/jk/src/native/apache-2.0/Makefile.linux Index: Makefile.linux === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-2.0/Makefile.linux,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Makefile.linux2001/05/21 15:18:52 1.3 +++ Makefile.linux2001/06/01 09:55:48 1.4 @@ -21,12 +21,12 @@ SRCS=${JK}/jk_ajp12_worker.c ${JK}/jk_connect.c ${JK}/jk_msg_buff.c ${JK}/jk_util.c ${JK}/jk_ajp13.c \ ${JK}/jk_jni_worker.c ${JK}/jk_pool.c ${JK}/jk_worker.c ${JK}/jk_ajp13_worker.c ${JK}/jk_lb_worker.c \ ${JK}/jk_sockbuf.c ${JK}/jk_map.c ${JK}/jk_uri_worker_map.c ${JK}/jk_ajp14.c ${JK}/jk_ajp14_worker.c \ - ${JK}/jk_md5.c + ${JK}/jk_md5.c ${JK}/jk_context.c LSRCS=jk_ajp12_worker.c jk_connect.c jk_msg_buff.c jk_util.c jk_ajp13.c \ jk_jni_worker.c jk_pool.c jk_worker.c jk_ajp13_worker.c jk_lb_worker.c \ jk_sockbuf.c jk_map.c jk_uri_worker_map.c jk_ajp14.c jk_ajp14_worker.c \ - jk_md5.c + jk_md5.c jk_context.c all: mod_jk.so 1.3 +8 -0 jakarta-tomcat-connectors/jk/src/native/apache-2.0/mod_jk.dsp Index: mod_jk.dsp === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/apache-2.0/mod_jk.dsp,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- mod_jk.dsp2001/05/18 14:38:50 1.2 +++ mod_jk.dsp2001/06/01 09:55:48 1.3 @@ -161,6 +161,10 @@ # End Source File # End Group +SOURCE=..\common\jk_context.c +# End Source File +# End Group + # Begin Group Header Files # PROP Default_Filter h;hpp;hxx;hm;inl @@ -247,6 +251,10 @@ # End Group SOURCE=..\common\jk_md5.h +# End Source File +# End Group + +SOURCE=..\common\jk_context.h # End Source File # End Group
cvs commit: jakarta-tomcat-connectors/jk/src/native/common jk_context.c jk_context.h
hgomez 01/06/01 02:59:07 Added: jk/src/native/common jk_context.c jk_context.h Log: Context Handling stuff (Autoconf) will live here Revision ChangesPath 1.1 jakarta-tomcat-connectors/jk/src/native/common/jk_context.c Index: jk_context.c === /* * Copyright (c) 1997-1999 The Java Apache Project. 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. All advertising materials mentioning features or use of this *software must display the following acknowledgment: *This product includes software developed by the Java Apache *Project for use in the Apache JServ servlet engine project *http://java.apache.org/. * * 4. The names Apache JServ, Apache JServ Servlet Engine and *Java Apache Project must not be used to endorse or promote products *derived from this software without prior written permission. * * 5. Products derived from this software may not be called Apache JServ *nor may Apache nor Apache JServ appear in their names without *prior written permission of the Java Apache Project. * * 6. Redistributions of any form whatsoever must retain the following *acknowledgment: *This product includes software developed by the Java Apache *Project for use in the Apache JServ servlet engine project *http://java.apache.org/. * * THIS SOFTWARE IS PROVIDED BY THE JAVA APACHE PROJECT 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 JAVA APACHE PROJECT 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 Java Apache Group. For more information * on the Java Apache Project and the Apache JServ Servlet Engine project, * please see http://java.apache.org/. * */ /*** * Description: Context handling (Autoconf)* * Author: Henri Gomez [EMAIL PROTECTED] * * Version: $Revision: 1.1 $ * ***/ #include jk_global.h #include jk_ajp14.h #include jk_context.h /* * Init the context info struct */ int context_open(jk_context_t *c) { if (c) { jk_open_pool(c-p, c-buf, sizeof(jk_pool_atom_t) * SMALL_POOL_SIZE); c-virtual = NULL; c-cbase= NULL, c-status = AJP14_CONTEXT_DOWN; c-nuri = 0; c-uris = NULL; return JK_TRUE; } return JK_FALSE; } /* * Create the context info struct */ int context_alloc(jk_context_t **c) { if (c) { return context_open(*c = (jk_context_t *)malloc(sizeof(jk_context_t))); } return JK_FALSE; } /* * Close the context info struct */ int context_close(jk_context_t *c) { if (c) { jk_close_pool(c-p); return JK_TRUE; } return JK_FALSE; } /* * Delete the context info struct */ int context_free(jk_context_t **c) { if (c *c) { context_close(*c); free(*c); *c = NULL; return JK_TRUE; } return JK_FALSE; } /* * Find a context in the Contextes List */ jk_context_t * context_find(jk_context_list_t *l, char * virtual, char * cbase) { int i; if (! l) return NULL; for (i = 0; i l-ncontext; i++) { if (virtual)
cvs commit: jakarta-tomcat-connectors/jk/src/native/common jk_ajp13_worker.c
hgomez 01/06/01 02:59:47 Modified:jk/src/native/common jk_ajp13_worker.c Log: Memory leaks fixes from Mike Anderson Code cleanup (who still use 80 cols today ?) Revision ChangesPath 1.3 +32 -68jakarta-tomcat-connectors/jk/src/native/common/jk_ajp13_worker.c Index: jk_ajp13_worker.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/common/jk_ajp13_worker.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- jk_ajp13_worker.c 2001/05/18 16:45:04 1.2 +++ jk_ajp13_worker.c 2001/06/01 09:59:47 1.3 @@ -58,7 +58,7 @@ * Author: Henri Gomez [EMAIL PROTECTED] * * Author: Costin [EMAIL PROTECTED] * * Author: Gal Shachor [EMAIL PROTECTED] * - * Version: $Revision: 1.2 $ * + * Version: $Revision: 1.3 $ * ***/ #include jk_ajp13_worker.h @@ -73,6 +73,8 @@ static void close_endpoint(ajp13_endpoint_t *ep) { reset_endpoint(ep); + jk_close_pool((ep-pool)); + if(ep-sd 0) { jk_close_socket(ep-sd); } @@ -111,20 +113,14 @@ unsigned attempt; for(attempt = 0 ; attempt ep-worker-connect_retry_attempts ; attempt++) { -ep-sd = jk_open_socket(ep-worker-worker_inet_addr, - JK_TRUE, - l); +ep-sd = jk_open_socket(ep-worker-worker_inet_addr, JK_TRUE, l); if(ep-sd = 0) { -jk_log(l, - JK_LOG_DEBUG, - In jk_endpoint_t::connect_to_tomcat, connected sd = %d\n, ep-sd); +jk_log(l, JK_LOG_DEBUG, In jk_endpoint_t::connect_to_tomcat, connected sd = %d\n, ep-sd); return; } } -jk_log(l, - JK_LOG_ERROR, - In jk_endpoint_t::connect_to_tomcat, failed errno = %d\n, errno); +jk_log(l, JK_LOG_ERROR, In jk_endpoint_t::connect_to_tomcat, failed errno = %d\n, errno); } static int connection_tcp_send_message(ajp13_endpoint_t *ep, @@ -135,9 +131,7 @@ jk_dump_buff(l, JK_LOG_DEBUG, sending to ajp13, msg); -if(0 jk_tcp_socket_sendfull(ep-sd, - jk_b_get_buff(msg), - jk_b_get_len(msg))) { +if(0 jk_tcp_socket_sendfull(ep-sd, jk_b_get_buff(msg), jk_b_get_len(msg))) { return JK_FALSE; } @@ -155,14 +149,12 @@ rc = jk_tcp_socket_recvfull(ep-sd, head, AJP13_HEADER_LEN); if(rc 0) { -jk_log(l, JK_LOG_ERROR, - connection_tcp_get_message: Error - jk_tcp_socket_recvfull failed\n); +jk_log(l, JK_LOG_ERROR, connection_tcp_get_message: Error - jk_tcp_socket_recvfull failed\n); return JK_FALSE; } if((head[0] != 'A') || (head[1] != 'B' )) { -jk_log(l, JK_LOG_ERROR, - connection_tcp_get_message: Error - Wrong message format\n); +jk_log(l, JK_LOG_ERROR, connection_tcp_get_message: Error - Wrong message format\n); return JK_FALSE; } @@ -170,8 +162,7 @@ msglen += (head[3] 0xFF); if(msglen jk_b_get_size(msg)) { -jk_log(l, JK_LOG_ERROR, - connection_tcp_get_message: Error - Wrong message size\n); +jk_log(l, JK_LOG_ERROR, connection_tcp_get_message: Error - Wrong message size\n); return JK_FALSE; } @@ -180,8 +171,7 @@ rc = jk_tcp_socket_recvfull(ep-sd, jk_b_get_buff(msg), msglen); if(rc 0) { -jk_log(l, JK_LOG_ERROR, - connection_tcp_get_message: Error - jk_tcp_socket_recvfull failed\n); +jk_log(l, JK_LOG_ERROR, connection_tcp_get_message: Error - jk_tcp_socket_recvfull failed\n); return JK_FALSE; } @@ -224,16 +214,14 @@ read_buf += AJP13_HEADER_SZ_LEN; /* leave some space for the read length */ if(read_fully_from_server(r, read_buf, len) 0) { -jk_log(l, JK_LOG_ERROR, - read_into_msg_buff: Error - read_fully_from_server failed\n); +jk_log(l, JK_LOG_ERROR, read_into_msg_buff: Error - read_fully_from_server failed\n); return JK_FALSE; } ep-left_bytes_to_send -= len; if(0 != jk_b_append_int(msg, (unsigned short)len)) { -jk_log(l, JK_LOG_ERROR, - read_into_msg_buff: Error - jk_b_append_int failed\n); +jk_log(l, JK_LOG_ERROR, read_into_msg_buff: Error - jk_b_append_int failed\n); return
cvs commit: jakarta-tomcat-connectors/jk/src/native/common jk_ajp13.c
hgomez 01/06/01 03:00:18 Modified:jk/src/native/common jk_ajp13.c Log: Code cleanup Revision ChangesPath 1.2 +84 -122 jakarta-tomcat-connectors/jk/src/native/common/jk_ajp13.c Index: jk_ajp13.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/common/jk_ajp13.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- jk_ajp13.c2001/05/14 09:32:49 1.1 +++ jk_ajp13.c2001/06/01 10:00:17 1.2 @@ -56,7 +56,7 @@ /*** * Description: Experimental bi-directionl protocol handler. * * Author: Gal Shachor [EMAIL PROTECTED] * - * Version: $Revision: 1.1 $ * + * Version: $Revision: 1.2 $ * ***/ @@ -260,7 +260,7 @@ 'e' ==header_name[3] 'p' ==header_name[4] 't' ==header_name[5]) { -if('-' == header_name[6]) { +if ('-' == header_name[6]) { if(!strcmp(header_name + 7, charset)) { *sc = SC_ACCEPT_CHARSET; } else if(!strcmp(header_name + 7, encoding)) { @@ -270,12 +270,12 @@ } else { return JK_FALSE; } -} else if('\0' == header_name[6]) { +} else if ('\0' == header_name[6]) { *sc = SC_ACCEPT; } else { return JK_FALSE; } -} else if(!strcmp(header_name, authorization)) { +} else if (!strcmp(header_name, authorization)) { *sc = SC_AUTHORIZATION; } else { return JK_FALSE; @@ -376,142 +376,118 @@ unsigned char method; unsigned i; -jk_log(l, JK_LOG_DEBUG, - Into ajp13_marshal_into_msgb\n); +jk_log(l, JK_LOG_DEBUG, Into ajp13_marshal_into_msgb\n); -if(!sc_for_req_method(s-method, method)) { -jk_log(l, JK_LOG_ERROR, - Error ajp13_marshal_into_msgb - No such method %s\n, s-method); +if (!sc_for_req_method(s-method, method)) { +jk_log(l, JK_LOG_ERROR, Error ajp13_marshal_into_msgb - No such method %s\n, s-method); return JK_FALSE; } -if(0 != jk_b_append_byte(msg, JK_AJP13_FORWARD_REQUEST) || - 0 != jk_b_append_byte(msg, method) || - 0 != jk_b_append_string(msg, s-protocol)|| - 0 != jk_b_append_string(msg, s-req_uri) || - 0 != jk_b_append_string(msg, s-remote_addr) || - 0 != jk_b_append_string(msg, s-remote_host) || - 0 != jk_b_append_string(msg, s-server_name) || - 0 != jk_b_append_int(msg, (unsigned short)s-server_port) || - 0 != jk_b_append_byte(msg, (unsigned char)(s-is_ssl)) || - 0 != jk_b_append_int(msg, (unsigned short)(s-num_headers))) { +if (jk_b_append_byte(msg, JK_AJP13_FORWARD_REQUEST) || +jk_b_append_byte(msg, method) || +jk_b_append_string(msg, s-protocol)|| +jk_b_append_string(msg, s-req_uri) || +jk_b_append_string(msg, s-remote_addr) || +jk_b_append_string(msg, s-remote_host) || +jk_b_append_string(msg, s-server_name) || +jk_b_append_int(msg, (unsigned short)s-server_port) || +jk_b_append_byte(msg, (unsigned char)(s-is_ssl)) || +jk_b_append_int(msg, (unsigned short)(s-num_headers))) { -jk_log(l, JK_LOG_ERROR, - Error ajp13_marshal_into_msgb - Error appending the message begining\n); - +jk_log(l, JK_LOG_ERROR, Error ajp13_marshal_into_msgb - Error appending the message begining\n); return JK_FALSE; } -for(i = 0 ; i s-num_headers ; i++) { +for (i = 0 ; i s-num_headers ; i++) { unsigned short sc; -if(sc_for_req_header(s-headers_names[i], sc) ) { -if(0 != jk_b_append_int(msg, sc)) { -jk_log(l, JK_LOG_ERROR, - Error ajp13_marshal_into_msgb - Error appending the header name\n); +if (sc_for_req_header(s-headers_names[i], sc)) { +if (jk_b_append_int(msg, sc)) { +jk_log(l, JK_LOG_ERROR, Error ajp13_marshal_into_msgb - Error appending the header name\n); return JK_FALSE; } } else { -if(0 != jk_b_append_string(msg, s-headers_names[i])) { -jk_log(l, JK_LOG_ERROR, -
cvs commit: jakarta-tomcat-connectors/jk/src/native/common jk_msg_buff.c jk_msg_buff.h
hgomez 01/06/01 03:01:11 Modified:jk/src/native/common jk_msg_buff.c jk_msg_buff.h Log: Updated functions to handle bytes (jk_b_get_bytes) Revision ChangesPath 1.3 +17 -1 jakarta-tomcat-connectors/jk/src/native/common/jk_msg_buff.c Index: jk_msg_buff.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/common/jk_msg_buff.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- jk_msg_buff.c 2001/05/15 10:14:18 1.2 +++ jk_msg_buff.c 2001/06/01 10:01:08 1.3 @@ -58,7 +58,7 @@ * Author: Costin [EMAIL PROTECTED] * * Author: Gal Shachor [EMAIL PROTECTED] * * Author: Henri Gomez [EMAIL PROTECTED] * - * Version: $Revision: 1.2 $ * + * Version: $Revision: 1.3 $ * ***/ #include jk_pool.h @@ -397,6 +397,22 @@ return (unsigned char *)(msg-buf + start); } + +int jk_b_get_bytes(jk_msg_buf_t *msg, unsigned char * buf, int len) +{ +int start = msg-pos; + +if((len 0 ) || (len + start msg-maxlen)) { +jk_b_dump(msg, After get bytes); +printf(ERROR\n ); +return (-1); +} + + memcpy(buf, msg-buf + start, len); +msg-pos += len; + return (len); +} + /** Shame-less copy from somewhere. assert (src != dst) 1.3 +10 -1 jakarta-tomcat-connectors/jk/src/native/common/jk_msg_buff.h Index: jk_msg_buff.h === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/common/jk_msg_buff.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- jk_msg_buff.h 2001/05/15 10:14:16 1.2 +++ jk_msg_buff.h 2001/06/01 10:01:09 1.3 @@ -57,7 +57,7 @@ * Description: Data marshaling. XDR like * * Author: Costin [EMAIL PROTECTED] * * Author: Gal Shachor [EMAIL PROTECTED] * - * Version: $Revision: 1.2 $ * + * Version: $Revision: 1.3 $ * ***/ #ifndef JK_MSG_BUF_H @@ -168,6 +168,9 @@ int jk_b_append_string(jk_msg_buf_t *msg, const char *param); +int jk_b_append_bytes(jk_msg_buf_t *msg, + const unsigned char *param, + int len); /* Decoding */ @@ -186,6 +189,12 @@ /** Get a String from the current position */ unsigned char *jk_b_get_string(jk_msg_buf_t *msg); + +/** Get Bytes from the current position + */ +int jk_b_get_bytes(jk_msg_buf_t *msg, +unsigned char * buf, +int len); /** Get a byte from an arbitrary position */
cvs commit: jakarta-tomcat-connectors/jk/src/native/common jk_ajp14.c jk_ajp14.h
hgomez 01/06/01 03:02:05 Modified:jk/src/native/common jk_ajp14.c jk_ajp14.h Log: New marshal/unmarshal on ajp14 protocol Revision ChangesPath 1.3 +393 -4jakarta-tomcat-connectors/jk/src/native/common/jk_ajp14.c Index: jk_ajp14.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/common/jk_ajp14.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- jk_ajp14.c2001/05/21 15:23:34 1.2 +++ jk_ajp14.c2001/06/01 10:02:02 1.3 @@ -56,12 +56,14 @@ /*** * Description: Next generation bi-directional protocol handler. * * Author: Henri Gomez [EMAIL PROTECTED] * - * Version: $Revision: 1.2 $ * + * Version: $Revision: 1.3 $ * ***/ #include jk_global.h #include jk_util.h +#include jk_map.h +#include jk_context.h #include jk_ajp14.h /* @@ -75,6 +77,7 @@ jk_log(l, JK_LOG_DEBUG, Into ajp14_compute_md5 (%s)\n, s-computed_key); } + /* * Build the Login Init Command * @@ -108,14 +111,38 @@ /* * WEB-SERVER NAME */ - if (jk_b_append_string(msg, s-server_name)) { -jk_log(l, JK_LOG_ERROR, Error ajp14_marshal_login_init_into_msgb - Error appending the server_name string\n); + if (jk_b_append_string(msg, s-web_server_name)) { +jk_log(l, JK_LOG_ERROR, Error ajp14_marshal_login_init_into_msgb - Error appending the web_server_name string\n); return JK_FALSE; } return JK_TRUE; } + +/* + * Decode the Login Seed Command + * + * +-+---+ + * | LOGIN SEED CMD (1 byte) | MD5 of entropy (32 chars) | + * +-+---+ + * + */ + +int ajp14_unmarshal_login_seed(jk_msg_buf_t *msg, + jk_login_service_t *s, + jk_pool_t *p, + jk_logger_t *l) +{ +if (jk_b_get_bytes(msg, s-entropy, AJP14_ENTROPY_SEED_LEN) 0) { +jk_log(l, JK_LOG_ERROR, Error ajp14_unmarshal_login_seed - can't get seed\n); +return JK_FALSE; +} + + s-entropy[AJP14_ENTROPY_SEED_LEN] = 0; /* Just to have a CString */ + return JK_TRUE; +} + /* * Build the Login Computed Command * @@ -140,6 +167,8 @@ if (jk_b_append_byte(msg, AJP14_LOGCOMP_CMD)) return JK_FALSE; + ajp14_compute_md5(s, l); + /* * COMPUTED-SEED */ @@ -153,6 +182,139 @@ /* + * Decode the LogOk Command + * + * +++---+ + * | LOGOK CMD (1 byte) | NEGOCIED DATA (32bits) | SERVLET ENGINE INFO (CString) | + * +++---+ + * + */ + +int ajp14_unmarshal_log_ok(jk_msg_buf_t *msg, + jk_login_service_t *s, + jk_logger_t *l) +{ + unsigned long nego; + char * sname; + + nego = jk_b_get_long(msg); + + if (nego == 0x) { +jk_log(l, JK_LOG_ERROR, Error ajp14_unmarshal_log_ok - can't get negociated data\n); +return JK_FALSE; +} + + sname = (char *)jk_b_get_string(msg); + + if (! sname) { + jk_log(l, JK_LOG_ERROR, Error ajp14_unmarshal_log_ok - can't get servlet engine name\n); + return JK_FALSE; + } + + if (s-servlet_engine_name) /* take care of removing previously allocated data */ + free(s-servlet_engine_name); + + s-servlet_engine_name = strdup(sname); + + if (! s-servlet_engine_name) { + jk_log(l, JK_LOG_ERROR, Error ajp14_unmarshal_log_ok - can't malloc servlet engine name\n); + return JK_FALSE; + } + + return JK_TRUE; +} + + +/* + * Decode the Log Nok Command + * + * +-+---+ + * | LOGNOK CMD (1 byte) | FAILURE CODE (32bits) | + * +-+---+ + * + */ + +int ajp14_unmarshal_log_nok(jk_msg_buf_t *msg, +jk_logger_t *l) +{ + unsigned long status; + +jk_log(l, JK_LOG_DEBUG, Into ajp14_unmarshal_log_nok\n); + + status = jk_b_get_long(msg); + +if (status == 0x) { +jk_log(l, JK_LOG_ERROR, Error ajp14_unmarshal_log_nok - can't get failure code\n); +
RE: [VOTE] New Committer: Mike Anderson
+1 Saludos , Ignacio J. Ortega -Mensaje original- De: GOMEZ Henri [mailto:[EMAIL PROTECTED]] Enviado el: viernes 1 de junio de 2001 9:31 Para: [EMAIL PROTECTED] Asunto: [VOTE] New Committer: Mike Anderson I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
Re: [VOTE] New Committer: Mike Anderson
+1 GOMEZ Henri wrote: I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
Re: [VOTE] New Committer: Mike Anderson
+1 GOMEZ Henri wrote: I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
mod_jk for Apache 2.0 not building on Red Hat 6
I'm sorry if this is the wrong mailing list to request help for mod_jk for Apache 2.0. If it is, please point me in the proper direction. I am attempting to build mod_jk for Apache 2.0 on Red Hat 6.0. I'm using the build-unix.sh script. Unfortunately, the command $APXS -c -o mod_jk.so $INCLUDE $LIB $SRC does not produce an output file mod_jk.so and it does not indicate why. The file .libs/libmod_jk.a is being produced. Does anyone have any suggestions as to where I should look to determine why the .so file is not being produced? Thanks. Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
RE: [VOTE] New Committer: Mike Anderson
+1 Larry -Original Message- From: GOMEZ Henri [mailto:[EMAIL PROTECTED]] Sent: Friday, June 01, 2001 3:31 AM To: [EMAIL PROTECTED] Subject: [VOTE] New Committer: Mike Anderson I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
RE: [VOTE] New Committer: Mike Anderson
+1 -- Mike Braden [EMAIL PROTECTED] [EMAIL PROTECTED] -Original Message- From: GOMEZ Henri [mailto:[EMAIL PROTECTED]] Sent: Friday, June 01, 2001 3:31 AM To: [EMAIL PROTECTED] Subject: [VOTE] New Committer: Mike Anderson I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
RE: mod_jk for Apache 2.0 not building on Red Hat 6
Something I know well :) Which version of Apache 2.0 have you ? Up to the latest, the apxs was broken. I recommand you take a look at Makefile.linux in TC 3.3 :) - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6 -Original Message- From: Jeffrey Altman [mailto:[EMAIL PROTECTED]] Sent: Friday, June 01, 2001 2:27 PM To: [EMAIL PROTECTED] Subject: mod_jk for Apache 2.0 not building on Red Hat 6 I'm sorry if this is the wrong mailing list to request help for mod_jk for Apache 2.0. If it is, please point me in the proper direction. I am attempting to build mod_jk for Apache 2.0 on Red Hat 6.0. I'm using the build-unix.sh script. Unfortunately, the command $APXS -c -o mod_jk.so $INCLUDE $LIB $SRC does not produce an output file mod_jk.so and it does not indicate why. The file .libs/libmod_jk.a is being produced. Does anyone have any suggestions as to where I should look to determine why the .so file is not being produced? Thanks. Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
RE: mod_jk for Apache 2.0 not building on Red Hat 6
Something I know well :) Which version of Apache 2.0 have you ? Up to the latest, the apxs was broken. I recommand you take a look at Makefile.linux in TC 3.3 :) Thanks for your help. The Apache version is 2.0.16 I've looked at the Makefile.linux and that apparently has less luck than build_unix.sh. It calls mod_jk.so: $(APXS) -I ${JK} ${JAVA_INCL} -c -o mod_jk.la mod_jk.c $(SRCS) mv .libs/mod_jk.so . And then APXS fails with: ./apxs -I ../common -I /opt/IBMJava2-13/include -I /opt/IBMJava2-13/include/linu x -c -o mod_jk.la mod_jk.c ../common/jk_ajp12_worker.c ../common/jk_connect.c .. /common/jk_msg_buff.c ../common/jk_util.c ../common/jk_ajp13.c ../common/jk_jni_ worker.c ../common/jk_pool.c ../common/jk_worker.c ../common/jk_ajp13_worker.c . ./common/jk_lb_worker.c ../common/jk_sockbuf.c ../common/jk_map.c ../common/jk_ uri_worker_map.c libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c touch m od_jk.slo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c -o mod_jk.o echo timestamp mod_jk.lo libtool --mode=link gcc -pthread -o mod_jk.la -rpath /usr/local/apache2/modules -module -avoid-version mod_jk.lo rm -fr .libs/mod_jk.la .libs/libmod_jk.* .libs/libmod_jk.* ar cru .libs/libmod_jk.a mod_jk.o ranlib .libs/libmod_jk.a creating mod_jk.la (cd .libs rm -f mod_jk.la ln -s ../mod_jk.la mod_jk.la) libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_ worker.c touch ../common/jk_ajp12_worker.slo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c -o jk_ajp12_wor ker.o echo timestamp jk_ajp12_worker.lo libtool --mode=link gcc -pthread -o ../common/jk_ajp12_worker.la -rpath /usr/loc al/apache2/modules -module -avoid-version ../common/jk_ajp12_worker.lo rm -fr ../common/.libs/jk_ajp12_worker.la ../common/.libs/libjk_ajp12_worker.* . ./common/.libs/libjk_ajp12_worker.* (cd ../common ln -s jk_ajp12_worker.lo jk_ajp12_worker.o) ar cru ../common/.libs/libjk_ajp12_worker.a ../common/jk_ajp12_worker.o ar: ../common/jk_ajp12_worker.o: No such file or directory apxs:Break: Command failed with rc=65536 make: *** [mod_jk.so] Error 1 Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
Re: mod_jk for Apache 2.0 not building on Red Hat 6
Jeffrey Altman wrote: Something I know well :) Which version of Apache 2.0 have you ? Up to the latest, the apxs was broken. I recommand you take a look at Makefile.linux in TC 3.3 :) Thanks for your help. The Apache version is 2.0.16 I've looked at the Makefile.linux and that apparently has less luck than build_unix.sh. It calls mod_jk.so: $(APXS) -I ${JK} ${JAVA_INCL} -c -o mod_jk.la mod_jk.c $(SRCS) mv .libs/mod_jk.so . And then APXS fails with: ./apxs -I ../common -I /opt/IBMJava2-13/include -I /opt/IBMJava2-13/include/linu x -c -o mod_jk.la mod_jk.c ../common/jk_ajp12_worker.c ../common/jk_connect.c .. /common/jk_msg_buff.c ../common/jk_util.c ../common/jk_ajp13.c ../common/jk_jni_ worker.c ../common/jk_pool.c ../common/jk_worker.c ../common/jk_ajp13_worker.c . ./common/jk_lb_worker.c ../common/jk_sockbuf.c ../common/jk_map.c ../common/jk_ uri_worker_map.c libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c touch m od_jk.slo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c -o mod_jk.o echo timestamp mod_jk.lo libtool --mode=link gcc -pthread -o mod_jk.la -rpath /usr/local/apache2/modules -module -avoid-version mod_jk.lo rm -fr .libs/mod_jk.la .libs/libmod_jk.* .libs/libmod_jk.* ar cru .libs/libmod_jk.a mod_jk.o ranlib .libs/libmod_jk.a creating mod_jk.la (cd .libs rm -f mod_jk.la ln -s ../mod_jk.la mod_jk.la) libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_ worker.c touch ../common/jk_ajp12_worker.slo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c -o jk_ajp12_wor ker.o echo timestamp jk_ajp12_worker.lo libtool --mode=link gcc -pthread -o ../common/jk_ajp12_worker.la -rpath /usr/loc al/apache2/modules -module -avoid-version ../common/jk_ajp12_worker.lo rm -fr ../common/.libs/jk_ajp12_worker.la ../common/.libs/libjk_ajp12_worker.* . ./common/.libs/libjk_ajp12_worker.* (cd ../common ln -s jk_ajp12_worker.lo jk_ajp12_worker.o) ar cru ../common/.libs/libjk_ajp12_worker.a ../common/jk_ajp12_worker.o ar: ../common/jk_ajp12_worker.o: No such file or directory apxs:Break: Command failed with rc=65536 make: *** [mod_jk.so] Error 1 Other idea is a broken libtool... try with the one that is in APR. Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
RE: [VOTE] New Committer: Mike Anderson
+1 Welcome aboard! -Original Message- From: GOMEZ Henri [mailto:[EMAIL PROTECTED]] Sent: Friday, June 01, 2001 2:31 AM To: [EMAIL PROTECTED] Subject: [VOTE] New Committer: Mike Anderson I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
Re: mod_jk for Apache 2.0 not building on Red Hat 6
Other idea is a broken libtool... try with the one that is in APR. I'm sorry. APR? Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
RE: mod_jk for Apache 2.0 not building on Red Hat 6
Something I know well :) Which version of Apache 2.0 have you ? Up to the latest, the apxs was broken. I recommand you take a look at Makefile.linux in TC 3.3 :) Thanks for your help. The Apache version is 2.0.16 I've looked at the Makefile.linux and that apparently has less luck than build_unix.sh. It calls mod_jk.so: $(APXS) -I ${JK} ${JAVA_INCL} -c -o mod_jk.la mod_jk.c $(SRCS) mv .libs/mod_jk.so . You got the Apache 2.0 with the buggy apxs. Please try Apache 2.0.18 or apply the attached path to Apache 2.0 apxs :) Here is my dump (using jk in JTC) : /usr/sbin/apxs2 -DUSE_APACHE_MD5 -I ../common -I /opt/IBMJava2-13/include -I /opt/IBMJava2-13/include/linux -c -o mod_jk.la mod_jk.c ../common/jk_ajp12_worker.c ../common/jk_connect.c ../common/jk_msg_buff.c ../common/jk_util.c ../common/jk_ajp13.c ../common/jk_jni_worker.c ../common/jk_pool.c ../common/jk_worker.c ../common/jk_ajp13_worker.c ../common/jk_lb_worker.c ../common/jk_sockbuf.c ../common/jk_map.c ../common/jk_uri_worker_map.c ../common/jk_ajp14.c ../common/jk_ajp14_worker.c ../common/jk_md5.c ../common/jk_context.c libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o mod_jk.lo mod_jk.c touch mod_jk.slo mod_jk.c: In function `ws_write': mod_jk.c:272: warning: initialization discards `const' from pointer target type mod_jk.c: In function `init_ws_service': mod_jk.c:418: warning: assignment discards `const' from pointer target type libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_ajp12_worker.lo ../common/jk_ajp12_worker.c touch ../common/jk_ajp12_worker.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_connect.lo ../common/jk_connect.c touch ../common/jk_connect.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_msg_buff.lo ../common/jk_msg_buff.c touch ../common/jk_msg_buff.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_util.lo ../common/jk_util.c touch ../common/jk_util.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_ajp13.lo ../common/jk_ajp13.c touch ../common/jk_ajp13.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_jni_worker.lo ../common/jk_jni_worker.c touch ../common/jk_jni_worker.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_pool.lo ../common/jk_pool.c touch ../common/jk_pool.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_worker.lo ../common/jk_worker.c touch ../common/jk_worker.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_ajp13_worker.lo ../common/jk_ajp13_worker.c touch ../common/jk_ajp13_worker.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_lb_worker.lo ../common/jk_lb_worker.c touch ../common/jk_lb_worker.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2 -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -DUSE_APACHE_MD5 -c -o ../common/jk_sockbuf.lo ../common/jk_sockbuf.c touch ../common/jk_sockbuf.slo libtool --silent --mode=compile gcc -O2 -m486 -fno-strength-reduce -pthread -DNO_DBM_REWRITEMAP -I/usr/include/apache2
RE: mod_jk for Apache 2.0 not building on Red Hat 6
APR is Apache Portable Runtime (apr.apache.org) Could you give us the libtool version ? I've used Redhat 6.0 and many things were damaged. actually, it is RH 6.1 The libtool version is ### BEGIN LIBTOOL CONFIG # Libtool was configured as follows, on host foo: # # CC=gcc CFLAGS=-O -O2 -m486 -fno-strength-reduce CPPFLAGS= \ # LD=/usr/bin/ld LDFLAGS= LIBS= \ # NM=/usr/bin/nm -B RANLIB=ranlib LN_S=ln -s \ # DLLTOOL= OBJDUMP= AS= \ # ./ltconfig --cache-file=./config.cache --with-gcc --with-gnu-ld # --no-verify ./ltmain.sh i686-unknown-linux # # Compiler and other test output produced by ltconfig, useful for # debugging ltconfig, is in ./config.log if it exists. # The version of ltconfig that generated this script. LTCONFIG_VERSION=1.3.4 I tried to find an Apache 2.0.18 distribution at www.apache.org but the latest that is there is 2.0.16. Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
Re: web_app in JTC
i think pier said he didn't care one way or the other, and that if someone wanted to move mod_webapp/warp to jtc, they could go ahead and do it -- but i shouldn't speak for pier :) GOMEZ Henri wrote: Did you, Pier, agree to move the mod_webapp/warp stuff in jakarta-tomcat-connector and use these CVS instead the one from TC 4.0 ? Having all the connector stuff in a common area will help users (it's what we want), and could also allow us to have a release rate different from the main servlet-engine rate (TC 3.2/3.3/4.0). We could concentrate on common documentation, faq and so-on. We migth even see people using others servlet-engine, like jetty, using the jakarta-tomcat-connector to have a connector for their prefered servlet-engine. Where could I find a description of warp protocol ? As you know I started to work on ajp13 successor, ajp14 and like to see if we could merge the both. Also do you consider adding to mod_webapp the support for load-balancing and fault-tolerance ? - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
Re: jakarta-tomcat-connectors/jk/src/native/README.configure
i feel like i could follow that readme file and get things building. but, of course, i have not yet tried to build mod_jk in jtc :) jean-frederic clere wrote: Hi, This README.configure is what I have prepared for the configure of mod_jk in jakarta-tomcat-connectors. Could you have a look to it before commit? Cheers Jean-frederic Installation It is possible to use autoconf for configuration and installation. To create jakarta-tomcat-connectors's autoconf script, you will need libtool 1.3.3 or higher, and autoconf 2.13 or newer. Those tools will not be required if you are just using a package downloaded from apache.org, they are only required for developers. To configure jakarta-tomcat-connectors run the following commands. ./autoconf (not required unless you are a developer) ./configure [autoconf arguments] [jakarta-tomcat-connectors arguments] make * make install jakarta-tomcat-connectors arguments --- JVM related parameters: --with-java-home=DIR DIR is the patch to the JDK root directory. Something like: /opt/java/jdk12 --with-os-type[=SUBDIR] SUBDIR is the os-type subdirectory, normaly configure should guess it correctly. * --with-arch-type[=SUBDIR] SUBDIR is the arch subdirectory, normaly configure should guess it correctly. --with-java-platform=VAL VAL is the Java platform 1 is 1.1.x and 2 is 1.2.x. It is guessed correctly. Apache related parameters: --with-apxs[=FILE] FILE is the location of the apxs tool. Default is finding apxs in PATH. It builds a shared Apache module. It detects automaticly the Apache version. (2.0 and 1.3) * --with-apache=DIR DIR is the path where apache sources are located. DIR is something like: /home/apache/apache_1.3.19 It builds a static Apache module. APR: * --with-apr=DIR DIR is the location of APR. APR means Apache Portable Runtime. (That is not Apache-2.0!) Note it needs a compiled APR! (for APRVARS and APR includes). APR is code is protected by #ifdef HAVE_APR ... #endif JNI support: * --enable-jni Build the jni_connect.so. * Not yet supported.
Re: mod_jk for Apache 2.0 not building on Red Hat 6
+++ CUT +++ (cd .libs rm -f mod_jk.la ln -s ../mod_jk.la mod_jk.la) libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_ worker.c touch ../common/jk_ajp12_worker.slo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c -o jk_ajp12_wor ker.o echo timestamp jk_ajp12_worker.lo libtool --mode=link gcc -pthread -o ../common/jk_ajp12_worker.la -rpath /usr/loc al/apache2/modules -module -avoid-version ../common/jk_ajp12_worker.lo rm -fr ../common/.libs/jk_ajp12_worker.la ../common/.libs/libjk_ajp12_worker.* . ./common/.libs/libjk_ajp12_worker.* (cd ../common ln -s jk_ajp12_worker.lo jk_ajp12_worker.o) ar cru ../common/.libs/libjk_ajp12_worker.a ../common/jk_ajp12_worker.o ar: ../common/jk_ajp12_worker.o: No such file or directory apxs:Break: Command failed with rc=65536 make: *** [mod_jk.so] Error 1 The problem you have is the libtool has created the object files in apache-2.0 not in common... The patch for apxs will solve that problem. Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
RE: mod_jk for Apache 2.0 not building on Red Hat 6
I applied the patch to APXS. I replaced /usr/bin/libtool (version 1.3.4) with the one from the Apache 2.0 distribution (version 1.3.4-freebsd-ports). ./build-unix.sh now completes successfully and produces [root@IAM40 apache2.0]# ls -l /usr/local/apache2/modules/ total 12 -rw-r--r-- 1 root root10802 Jun 1 07:45 libmod_jk.a but no mod_jk.so file. Anyway to convert from .a to .so? make -f Makefile.linux is still failing. So I wonder, which version of libtool are you using? BEGIN make -f Makefile.linux ./apxs -I ../common -I /opt/IBMJava2-13/include -I /opt/IBMJava2-13/include/linux -c -o mod_jk.la mod_jk.c ../common/jk_ajp12_worker.c ../common/jk_connect.c .. /common/jk_msg_buff.c ../common/jk_util.c ../common/jk_ajp13.c ../common/jk_jni_worker.c ../common/jk_pool.c ../common/jk_worker.c ../common/jk_ajp13_worker.c . ./common/jk_lb_worker.c ../common/jk_sockbuf.c ../common/jk_map.c ../common/jk_uri_worker_map.c libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c touch mod_jk.slo mkdir .libs gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c -fPIC -DPIC -o .libs/mod_jk.lo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c -o mod_jk.o /dev/null 21 mv -f .libs/mod_jk.lo mod_jk.lo libtool --mode=link gcc -pthread -o mod_jk.la -rpath /usr/local/apache2/modules -module -avoid-version mod_jk.lo rm -fr .libs/mod_jk.la .libs/mod_jk.* .libs/mod_jk.* gcc -shared -Wl,--rpath -Wl,/usr/local/apache2/modules mod_jk.lo -pthread -lc -Wl,-soname -Wl,mod_jk.so -o .libs/mod_jk.so creating mod_jk.la (cd .libs rm -f mod_jk.la ln -s ../mod_jk.la mod_jk.la) libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c touch ../common/jk_ajp12_worker.slo rm -f .libs/jk_ajp12_worker.lo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c -fPIC -DPIC -o .libs/jk_ajp12_worker.lo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c -o jk_ajp12_worker.o /dev/null 21 mv -f .libs/jk_ajp12_worker.lo jk_ajp12_worker.lo libtool --mode=link gcc -pthread -o ../common/jk_ajp12_worker.la -rpath /usr/local/apache2/modules -module -avoid-version ../common/jk_ajp12_worker.lo rm -fr ../common/.libs/jk_ajp12_worker.la ../common/.libs/jk_ajp12_worker.* ../common/.libs/jk_ajp12_worker.* (cd ../common ln -s jk_ajp12_worker.lo jk_ajp12_worker.o) gcc -shared -Wl,--rpath -Wl,/usr/local/apache2/modules ../common/jk_ajp12_worker.lo -pthread -lc -Wl,-soname -Wl,jk_ajp12_worker.so -o ../common/.libs/jk_ajp12_worker.so gcc: ../common/jk_ajp12_worker.lo: No such file or directory apxs:Break: Command failed with rc=65536 make: *** [mod_jk.so] Error 1 ###END Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
RE: mod_jk for Apache 2.0 not building on Red Hat 6
I used the following RPM libtool-1.3.4-3 autoconf-2.13-5 automake-1.4-6 - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6 -Original Message- From: Jeffrey Altman [mailto:[EMAIL PROTECTED]] Sent: Friday, June 01, 2001 5:08 PM To: [EMAIL PROTECTED] Subject: RE: mod_jk for Apache 2.0 not building on Red Hat 6 I applied the patch to APXS. I replaced /usr/bin/libtool (version 1.3.4) with the one from the Apache 2.0 distribution (version 1.3.4-freebsd-ports). ./build-unix.sh now completes successfully and produces [root@IAM40 apache2.0]# ls -l /usr/local/apache2/modules/ total 12 -rw-r--r-- 1 root root10802 Jun 1 07:45 libmod_jk.a but no mod_jk.so file. Anyway to convert from .a to .so? make -f Makefile.linux is still failing. So I wonder, which version of libtool are you using? BEGIN make -f Makefile.linux ./apxs -I ../common -I /opt/IBMJava2-13/include -I /opt/IBMJava2-13/include/linux -c -o mod_jk.la mod_jk.c ../common/jk_ajp12_worker.c ../common/jk_connect.c .. /common/jk_msg_buff.c ../common/jk_util.c ../common/jk_ajp13.c ../common/jk_jni_worker.c ../common/jk_pool.c ../common/jk_worker.c ../common/jk_ajp13_worker.c . ./common/jk_lb_worker.c ../common/jk_sockbuf.c ../common/jk_map.c ../common/jk_uri_worker_map.c libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c touch mod_jk.slo mkdir .libs gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c -fPIC -DPIC -o .libs/mod_jk.lo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c mod_jk.c -o mod_jk.o /dev/null 21 mv -f .libs/mod_jk.lo mod_jk.lo libtool --mode=link gcc -pthread -o mod_jk.la -rpath /usr/local/apache2/modules -module -avoid-version mod_jk.lo rm -fr .libs/mod_jk.la .libs/mod_jk.* .libs/mod_jk.* gcc -shared -Wl,--rpath -Wl,/usr/local/apache2/modules mod_jk.lo -pthread -lc -Wl,-soname -Wl,mod_jk.so -o .libs/mod_jk.so creating mod_jk.la (cd .libs rm -f mod_jk.la ln -s ../mod_jk.la mod_jk.la) libtool --mode=compile gcc -pthread -I/usr/local/apache2/include -I../common -I/ opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c touch ../common/jk_ajp12_worker.slo rm -f .libs/jk_ajp12_worker.lo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c -fPIC -DPIC -o .libs/jk_ajp12_worker.lo gcc -pthread -I/usr/local/apache2/include -I../common -I/opt/IBMJava2-13/include -I/opt/IBMJava2-13/include/linux -c ../common/jk_ajp12_worker.c -o jk_ajp12_worker.o /dev/null 21 mv -f .libs/jk_ajp12_worker.lo jk_ajp12_worker.lo libtool --mode=link gcc -pthread -o ../common/jk_ajp12_worker.la -rpath /usr/local/apache2/modules -module -avoid-version ../common/jk_ajp12_worker.lo rm -fr ../common/.libs/jk_ajp12_worker.la ../common/.libs/jk_ajp12_worker.* ../common/.libs/jk_ajp12_worker.* (cd ../common ln -s jk_ajp12_worker.lo jk_ajp12_worker.o) gcc -shared -Wl,--rpath -Wl,/usr/local/apache2/modules ../common/jk_ajp12_worker.lo -pthread -lc -Wl,-soname -Wl,jk_ajp12_worker.so -o ../common/.libs/jk_ajp12_worker.so gcc: ../common/jk_ajp12_worker.lo: No such file or directory apxs:Break: Command failed with rc=65536 make: *** [mod_jk.so] Error 1 ###END Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
RE: mod_jk for Apache 2.0 not building on Red Hat 6
Thanks all. The APXS patch which I applied was not being used. After I ensured that the patched version was being executed, the mod_jk.so built properly. The changes to libtool were not necessary. Jeffrey Altman * Sr.Software Designer C-Kermit 7.1 Alpha available The Kermit Project @ Columbia University includes Secure Telnet and FTP http://www.kermit-project.org/ using Kerberos, SRP, and [EMAIL PROTECTED] OpenSSL. SSH soon to follow.
Re: [VOTE] New Committer: Mike Anderson
+1 Craig On Fri, 1 Jun 2001, GOMEZ Henri wrote: I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6
cvs commit: jakarta-tomcat-4.0 build.properties.sample
craigmcc01/06/01 09:59:06 Modified:.build.properties.sample Log: Add an entry for junit.jar to the sample build.properties file. Revision ChangesPath 1.3 +5 -1 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.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- build.properties.sample 2001/05/21 21:51:22 1.2 +++ build.properties.sample 2001/06/01 16:59:05 1.3 @@ -6,7 +6,7 @@ # to build.properties in the same directory that contains the top level # build.xml file. # -# $Id: build.properties.sample,v 1.2 2001/05/21 21:51:22 craigmcc Exp $ +# $Id: build.properties.sample,v 1.3 2001/06/01 16:59:05 craigmcc Exp $ # - @@ -38,6 +38,10 @@ # The directory containing your binary distribution of Java Secure Sockets # Extension (JSSE), version 1.0.2 or later jsse.home=/usr/local/jsse1.0.2 + +# The JAR file for the JUnit unit test suite you are using. This is required +# only if you wish to execute the unit tests +#junit.jar=/usr/local/junit3.5/junit.jar # The directory containing your binary distribution of the Jakarta # regular expressions package (jakarta-regexp), version 1.2.
Re: [VOTE] New Committer: Mike Anderson
+1 -casey
cvs commit: jakarta-tomcat/src/share/org/apache/tomcat/logging Logger.java
keith 01/06/01 10:38:47 Modified:src/share/org/apache/tomcat/logging Tag: tomcat_32 Logger.java Log: Use a 24-hour clock in the log due to the absence of a meridian. Submitted by: [EMAIL PROTECTED] Reviewed by: [EMAIL PROTECTED] Revision ChangesPath No revision No revision 1.7.4.2 +2 -2 jakarta-tomcat/src/share/org/apache/tomcat/logging/Attic/Logger.java Index: Logger.java === RCS file: /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/logging/Attic/Logger.java,v retrieving revision 1.7.4.1 retrieving revision 1.7.4.2 diff -u -r1.7.4.1 -r1.7.4.2 --- Logger.java 2000/07/06 22:20:17 1.7.4.1 +++ Logger.java 2001/06/01 17:38:45 1.7.4.2 @@ -411,9 +411,9 @@ protected boolean timestampRaw = false; /** - * The timestamp format string, default is -MM-dd hh:mm:ss + * The timestamp format string, default is -MM-dd HH:mm:ss **/ -protected String timestampFormat = -MM-dd hh:mm:ss; +protected String timestampFormat = -MM-dd HH:mm:ss; protected SimpleDateFormat timestampFormatter = new SimpleDateFormat(timestampFormat);
cvs commit: jakarta-tomcat/src/share/org/apache/tomcat/util/qlog Logger.java
keith 01/06/01 10:41:46 Modified:src/share/org/apache/tomcat/util/qlog Logger.java Log: Update the comment to reflect the timestamp actually used. Submitted by: [EMAIL PROTECTED] Reviewed by: [EMAIL PROTECTED] Revision ChangesPath 1.3 +1 -1 jakarta-tomcat/src/share/org/apache/tomcat/util/qlog/Logger.java Index: Logger.java === RCS file: /home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/util/qlog/Logger.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- Logger.java 2001/04/21 18:23:54 1.2 +++ Logger.java 2001/06/01 17:41:45 1.3 @@ -124,7 +124,7 @@ protected boolean timestampRaw = false; /** - * The timestamp format string, default is -MM-dd hh:mm:ss + * The timestamp format string, default is -MM-dd HH:mm:ss **/ protected String timestampFormat = -MM-dd HH:mm:ss;
RE: cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util ProcessHelper.java ProcessEnvironment.java CGIProcessEnvironment.java
When compiling ProcessHelper.java and ../servlets/CGIServlet.java against jdk1.2 there is an error. ProcessHelper line 381 and CGIServlet line 1567. Both lines try to call Runtime.exec(String, String[], File) which does not exist in jdk1.2 John -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] Sent: Friday, June 01, 2001 1:21 AM To: [EMAIL PROTECTED] Subject: cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util ProcessHelper.java ProcessEnvironment.java CGIProcessEnvironment.java amyroh 01/05/31 17:21:15 Added: catalina/src/share/org/apache/catalina/util ProcessHelper.java ProcessEnvironment.java CGIProcessEnvironment.java Log: Add CGI supporting classes submitted by Martin Dengler. Revision ChangesPath 1.1 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/util /ProcessHelper.java
Re: [VOTE] New Committer: Mike Anderson
+1 Costin --- GOMEZ Henri [EMAIL PROTECTED] wrote: I would like to propose Mike Anderson as a new committer. He found many subtils bugs in mod_jk and since he's working on Netware platforms, it will a great help to improve connectors on this OS. Vote please - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6 __ Do You Yahoo!? Get personalized email addresses from Yahoo! Mail - only $35 a year! http://personal.mail.yahoo.com/
cvs commit: jakarta-tomcat-4.0 build.properties.sample
jon 01/06/01 11:30:22 Modified:.build.properties.sample Log: added ${base.path} -jon Revision ChangesPath 1.4 +10 -9 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.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- build.properties.sample 2001/06/01 16:59:05 1.3 +++ build.properties.sample 2001/06/01 18:30:20 1.4 @@ -6,15 +6,17 @@ # to build.properties in the same directory that contains the top level # build.xml file. # -# $Id: build.properties.sample,v 1.3 2001/06/01 16:59:05 craigmcc Exp $ +# $Id: build.properties.sample,v 1.4 2001/06/01 18:30:20 jon Exp $ # - +# The path that is base for the rest of the paths in this file. +base.path=/usr/local # The directory containing your binary distribution of JAXP and its # associated declarations. You can customize the versions of JAXP used # for Catalina and Jasper below. If you are using JAXP/1.0, replace # crimson.jar with parser.jar -jaxp.home=/usr/local/jaxp-1.1 +jaxp.home=${base.path}/jaxp-1.1 jaxp.parser.jar=crimson.jar # The version of JAXP that is used for Catalina @@ -27,27 +29,26 @@ # The directory containing your binary distribution of the Java Management # Extensions (JMX) Reference Implementation, version 1.0 or later -jmx.home=/usr/local/jmx_ri_1.0 +jmx.home=${base.path}/jmx_ri_1.0 # The directory containing your binary distribution of the Java Naming and # Directory Interface (JNDI), version 1.2.1 or later. (You must also add # ldap.jar into the ${jndi.home}/lib directory if you want to build and # use JNDIRealm.) -jndi.home=/usr/local/jndi_1.2.1 +jndi.home=${base.path}/jndi_1.2.1 # The directory containing your binary distribution of Java Secure Sockets # Extension (JSSE), version 1.0.2 or later -jsse.home=/usr/local/jsse1.0.2 +jsse.home=${base.path}/jsse1.0.2 # The JAR file for the JUnit unit test suite you are using. This is required # only if you wish to execute the unit tests -#junit.jar=/usr/local/junit3.5/junit.jar +#junit.jar=${base.path}/junit3.5/junit.jar # The directory containing your binary distribution of the Jakarta # regular expressions package (jakarta-regexp), version 1.2. -regexp.home=/usr/local/jakarta-regexp-1.2 +regexp.home=${base.path}/jakarta-regexp-1.2 # The directory containing your binary distribution of the Servlet 2.3 # and JSP 1.2 API classes -servletapi.home=/usr/local/jakarta-servletapi-4/dist - +servletapi.home=${base.path}/jakarta-servletapi-4/dist
A starting point for ajp13, ajp14/warp anyone?
Hi, This weekend I'm going to look at making the Domino connector we released this week use ajp13 or ajp14 or both. Can anyone give me a quick pointer to which source I should grab from where (or a meta pointer to something I can read to find out) to get started. I had a quick look at the Tomcat 4 sources -- am I right in thinking that the only ajp14 connector that exists at the moment is the Apache one? Sorry if this is an rtfm -- I've had a quick look round the site but couldn't find much. -- Andy Armstrong, Tagish
Re: A starting point for ajp13, ajp14/warp anyone?
tomcat 4 is not the right place to look for ajp13 examples. ajp14 is still in the early stages, so you're probably better off starting with ajp13. jakarta-tomcat-connectors/jk is probably the best place to look for examples. there are ajp13 connectors for apache, iis and netscape. you're domino connector is also there now, i think :) Andy Armstrong wrote: Hi, This weekend I'm going to look at making the Domino connector we released this week use ajp13 or ajp14 or both. Can anyone give me a quick pointer to which source I should grab from where (or a meta pointer to something I can read to find out) to get started. I had a quick look at the Tomcat 4 sources -- am I right in thinking that the only ajp14 connector that exists at the moment is the Apache one? Sorry if this is an rtfm -- I've had a quick look round the site but couldn't find much. -- Andy Armstrong, Tagish
Re: A starting point for ajp13, ajp14/warp anyone?
Thanks for that Kevin. Pardon my ignorance ;-) kevin seguin wrote: tomcat 4 is not the right place to look for ajp13 examples. ajp14 is still in the early stages, so you're probably better off starting with ajp13. jakarta-tomcat-connectors/jk is probably the best place to look for examples. there are ajp13 connectors for apache, iis and netscape. you're domino connector is also there now, i think :) Andy Armstrong wrote: Hi, This weekend I'm going to look at making the Domino connector we released this week use ajp13 or ajp14 or both. Can anyone give me a quick pointer to which source I should grab from where (or a meta pointer to something I can read to find out) to get started. I had a quick look at the Tomcat 4 sources -- am I right in thinking that the only ajp14 connector that exists at the moment is the Apache one? Sorry if this is an rtfm -- I've had a quick look round the site but couldn't find much. -- Andy Armstrong, Tagish -- Andy Armstrong, Tagish
[PATCH] ThreadPool rewrite with sanity checks
Hi all, After performing stress testing on Tomcat 3.2.2 I found that one area of trouble was the Thread Pool. Long running servlets may eat up all resources and prevent tomcat from accepting any new connections on the socket. Also for some still unknown reason performance would decrease over time. I have patched the code to do perform two safety checks: 1. If a thread has been processing a request for too long (as specified in a parameter) the thread is stoped. 2. After a thread has already processed X requests or more (X TcpWorkerThreads have been attached), it is terminated and a new thread is created. I also changed the code and moved most synchronization from ThreadPool to ObjectHASH (a fully synchronized hash table) I tested the patched code with 60 threads from 3 different machines with very good results in terms of reliability and performance. This patch involves changes to: util/ThreadPool.java util/ThreadPoolRunnable.java service/PoolTcpEndPoint.java Regards Hector Gonzalez [EMAIL PROTECTED] Index: ThreadPool.java === RCS file: /home/cvspublic/jakarta-tomcat/src/share/org/apache/tomcat/util/Attic/ThreadPool.java,v retrieving revision 1.9.2.2 diff -u -r1.9.2.2 ThreadPool.java --- ThreadPool.java 2001/04/23 02:16:03 1.9.2.2 +++ ThreadPool.java 2001/06/01 20:10:21 @@ -1,7 +1,7 @@ /* - * $Header: /home/cvspublic/jakarta-tomcat/src/share/org/apache/tomcat/util/Attic/ThreadPool.java,v 1.9.2.2 2001/04/23 02:16:03 marcsaeg Exp $ - * $Revision: 1.9.2.2 $ - * $Date: 2001/04/23 02:16:03 $ + * $Header: +/home/cvs/jakarta-tomcat/src/share/org/apache/tomcat/util/Attic/ThreadPool.java,v +1.9.2.1 2000/07/06 22:20:17 alex Exp $ + * $Revision: 1.9.2.1 $ + * $Date: 2000/07/06 22:20:17 $ * * * @@ -71,12 +71,17 @@ import org.apache.tomcat.logging.*; /** - * A thread pool that is trying to copy the apache process management. + * A thread pool that creates a number of threads and + * assigns them to runnable objects as requested. + * The pool provides maintenance on the individual + * threads by cheking running time and number of runs. + * Tried to keep synchronization to a minimum, most of the + * synchronization happens at the idleWorkers (ObjectHASH) + * level. * - * @author Gal Shachor + * @author Hector Gonzalez */ -public class ThreadPool { - +public class ThreadPool{ /* * Default values ... */ @@ -84,470 +89,675 @@ public static final int MAX_SPARE_THREADS = 50; public static final int MIN_SPARE_THREADS = 10; public static final int WORK_WAIT_TIMEOUT = 60*1000; +public static final int MAX_THREAD_RUNS = 100; +public static final int MAX_THREAD_ITERATIONS = 10; -/* - * Where the threads are held. - */ -protected Vector pool; +static int debug=0; +LogHelper loghelper = new LogHelper(tc_log, ThreadPool); /* - * A monitor thread that monitors the pool for idel threads. + * Max number of threads that you can open in the pool. */ -protected MonitorRunnable monitor; - +protected int maxThreads; /* - * Max number of threads that you can open in the pool. + * Min number of idle threads that you can leave in the pool. */ -protected int maxThreads; +protected int maxSpareThreads; /* - * Min number of idel threads that you can leave in the pool. + * Max number of idle threads that you can leave in the pool. */ protected int minSpareThreads; /* - * Max number of idel threads that you can leave in the pool. + * Number of runs before thread is replaced */ -protected int maxSpareThreads; +protected int maxThreadRuns; -/* - * Number of threads in the pool. +/* + * Number of times the monitor thread will run before + * stopping a thread that has been continuously busy + * effective time before stopping = WORK_WAIT_TIMEOUT * MAX_THREAD_ITERATIONS */ -protected int currentThreadCount; +protected int maxThreadIterations; /* - * Number of busy threads in the pool. + * Keep list of idle threads */ -protected int currentThreadsBusy; +ObjectHASH idleWorkers; /* - * Flag that the pool should terminate all the threads and stop. + * List of all the created threads, idle and busy */ -protected boolean stopThePool; - -static int debug=0; +Hashtable workerList; -/** - * Helper object for logging - **/ -LogHelper loghelper = new LogHelper(tc_log, ThreadPool); - -public ThreadPool() { -maxThreads = MAX_THREADS; -maxSpareThreads = MAX_SPARE_THREADS; -minSpareThreads = MIN_SPARE_THREADS; -currentThreadCount = 0; -currentThreadsBusy = 0; -stopThePool = false; -} - -public synchronized void start() { -
Re: Misusing dynamic binding when static binding would do.
On Thu, May 31, 2001 at 11:31:17AM -0400, Dan Milstein wrote: curmudgeon mode This post is really not appropriate for this mailing list. This list is for discussion of development of the Tomcat server. You're writing about web application design issues / patterns. See: http://jakarta.apache.org/site/mail.html. This list is periodically consumed by flame wars (or vigorous debate) about application-level issues which really don't affect Tomcat development at all. IIRC, one or two of those was started by your posting this sort of article for comments. I don't think this list should be used for discussion of these issues. Everyone else: if you agree with me, please do not reply to Brad on the list. If you have something to say to him, let's please take it off the list. Brad: I don't think this is the appropriate forum for you to ask for review of your articles. /curmudgeon mode -Dan Brad Cox wrote: I would appreciate comments on the following draft of an article I've just added to the Web Application site. Go to http://virtualschool.edu/wap and click The Problem in the left column for the original. -- Dan Milstein // [EMAIL PROTECTED] I think the post was not SO inappropriate. The article was only a rational behind a feature request and offering to bundle a page generation facility stuff to tomcat (if I interpret correctly): Although the WAP approach is not standards-focused, it compliments the dynamic options of web app environments like Tomcat, JSP or Velocity. I believe should be available there. The effort is negligble and I'd be more than happy to do it. I'd appreciate suggestions as to whether and particularly how to do so. WAP requires no changes to the substrate; it is strictly a 70kb addon to the servlet engine substrate. You can say no, and vote out it. Or commend it into some contrib stuff (as tomcat 3.3 will rule out every piece that is not strictly the standard). Tomca tis something like a product that has standard adn advanced features right now. incze
Re: [ANNOUNCEMENT] Domino / Tomcat connecter available
GOMEZ Henri wrote: We could add it to jakarta-tomcat-connector ? +1 -- so long as andy will help fix bugs in it when/if they come :) I'll commit this works on current JTC. I'd like to see this connector supporting others protocol like ajp13 and may be ajp14/warp. I've just been testing it against ajp13 and it seems fine -- did you think there might be a problem with it? Or was it just because it wasn't tested? -- Andy Armstrong, Tagish
cvs commit: jakarta-tomcat-connectors/jk/src/native/common jk_context.c jk_context.h
hgomez 01/06/01 14:47:41 Modified:jk/src/native/common jk_context.c jk_context.h Log: Updated stuff on context Work on progress Revision ChangesPath 1.2 +42 -4 jakarta-tomcat-connectors/jk/src/native/common/jk_context.c Index: jk_context.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/common/jk_context.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- jk_context.c 2001/06/01 09:59:07 1.1 +++ jk_context.c 2001/06/01 21:47:40 1.2 @@ -56,7 +56,7 @@ /*** * Description: Context handling (Autoconf)* * Author: Henri Gomez [EMAIL PROTECTED] * - * Version: $Revision: 1.1 $ * + * Version: $Revision: 1.2 $ * ***/ #include jk_global.h @@ -74,7 +74,8 @@ c-virtual = NULL; c-cbase= NULL, c-status = AJP14_CONTEXT_DOWN; -c-nuri = 0; +c-size = 0; +c-capacity = 0; c-uris = NULL; return JK_TRUE; } @@ -154,6 +155,30 @@ return NULL; } +/* + * Context Memory Managment + */ + +static int context_realloc(jk_context_t *c) +{ +if (c-size == c-capacity) { +char **uris; +int capacity = c-capacity + CONTEXT_INC_SIZE; + +uris = (char **)jk_pool_alloc(c-p, sizeof(char *) * capacity); + +if (! uris) + return JK_FALSE; + + memcpy(uris, c-uris, sizeof(char *) * c-capacity); + +c-uris = uris; +c-capacity = capacity; +} + +return JK_TRUE; +} + /* * Add an URI to context @@ -163,10 +188,23 @@ { int i; -if (! c) +if (! c || ! uri) return JK_FALSE; -return NULL; + for (i = 0 ; i c-size ; i++) { + if (! strcmp(c-uris[i], uri)) { +return JK_TRUE; +} +} + + context_realloc(c); + + if (c-size = c-capacity) + return JK_FALSE; + + c-uris[c-size] = jk_pool_strdup(c-p, uri); + c-size++; + return JK_TRUE; } 1.2 +10 -2 jakarta-tomcat-connectors/jk/src/native/common/jk_context.h Index: jk_context.h === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/src/native/common/jk_context.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- jk_context.h 2001/06/01 09:59:07 1.1 +++ jk_context.h 2001/06/01 21:47:40 1.2 @@ -56,7 +56,7 @@ /*** * Description: Context Stuff (Autoconf) * * Author: Henri Gomez [EMAIL PROTECTED] * - * Version: $Revision: 1.1 $ * + * Version: $Revision: 1.2 $ * ***/ #ifndef JK_CONTEXT_H #define JK_CONTEXT_H @@ -67,6 +67,8 @@ extern C { #endif /* __cplusplus */ +#define CONTEXT_INC_SIZE (50) + typedef struct { /* @@ -97,8 +99,14 @@ /* * Num of URI handled */ + + int size; + + /* + * Capacity + */ - int nuri; + int capacity; /* * URL/URIs (autoconf)
RE: A starting point for ajp13, ajp14/warp anyone?
jakarta-tomcat-connector is the safe place to put experimental code, like Domino redirector. Also we could hope this sub-project could be one day the reference of connectors between majors Web-Servers and jakarta Servlet Engines :) It's an arena where there we may speak more on native problems (OS, web-server, autoconf, libtool, apr) than Java :) - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6 -Original Message- From: Andy Armstrong [mailto:[EMAIL PROTECTED]] Sent: Friday, June 01, 2001 9:58 PM To: [EMAIL PROTECTED] Subject: Re: A starting point for ajp13, ajp14/warp anyone? Thanks for that Kevin. Pardon my ignorance ;-) kevin seguin wrote: tomcat 4 is not the right place to look for ajp13 examples. ajp14 is still in the early stages, so you're probably better off starting with ajp13. jakarta-tomcat-connectors/jk is probably the best place to look for examples. there are ajp13 connectors for apache, iis and netscape. you're domino connector is also there now, i think :) Andy Armstrong wrote: Hi, This weekend I'm going to look at making the Domino connector we released this week use ajp13 or ajp14 or both. Can anyone give me a quick pointer to which source I should grab from where (or a meta pointer to something I can read to find out) to get started. I had a quick look at the Tomcat 4 sources -- am I right in thinking that the only ajp14 connector that exists at the moment is the Apache one? Sorry if this is an rtfm -- I've had a quick look round the site but couldn't find much. -- Andy Armstrong, Tagish -- Andy Armstrong, Tagish
RE: [ANNOUNCEMENT] Domino / Tomcat connecter available
GOMEZ Henri wrote: We could add it to jakarta-tomcat-connector ? +1 -- so long as andy will help fix bugs in it when/if they come :) I'll commit this works on current JTC. I'd like to see this connector supporting others protocol like ajp13 and may be ajp14/warp. I've just been testing it against ajp13 and it seems fine -- did you think there might be a problem with it? Or was it just because it wasn't tested? i just wasn't tested and you're now our resident expert in Domino and Tomcat connection. Welcome on-board...
Re: [ANNOUNCEMENT] Domino / Tomcat connecter available
GOMEZ Henri wrote: GOMEZ Henri wrote: We could add it to jakarta-tomcat-connector ? +1 -- so long as andy will help fix bugs in it when/if they come :) I'll commit this works on current JTC. I'd like to see this connector supporting others protocol like ajp13 and may be ajp14/warp. I've just been testing it against ajp13 and it seems fine -- did you think there might be a problem with it? Or was it just because it wasn't tested? i just wasn't tested and you're now our resident expert in Domino and Tomcat connection. Welcome on-board... Thanks ;-) Next up I'm going to try and get it all going on Linux which should also open up the possibility of migrating to other Unices -- though I'm not in a position to test anything other than Linux. -- Andy Armstrong, Tagish
Re: A starting point for ajp13, ajp14/warp anyone?
Thanks Henri, I needed the original code in such a hurry that I confess I didn't take much time finding out what was what. GOMEZ Henri wrote: jakarta-tomcat-connector is the safe place to put experimental code, like Domino redirector. Also we could hope this sub-project could be one day the reference of connectors between majors Web-Servers and jakarta Servlet Engines :) It's an arena where there we may speak more on native problems (OS, web-server, autoconf, libtool, apr) than Java :) - Henri Gomez ___[_] EMAIL : [EMAIL PROTECTED](. .) PGP KEY : 697ECEDD...oOOo..(_)..oOOo... PGP Fingerprint : 9DF8 1EA8 ED53 2F39 DC9B 904A 364F 80E6 -Original Message- From: Andy Armstrong [mailto:[EMAIL PROTECTED]] Sent: Friday, June 01, 2001 9:58 PM To: [EMAIL PROTECTED] Subject: Re: A starting point for ajp13, ajp14/warp anyone? Thanks for that Kevin. Pardon my ignorance ;-) kevin seguin wrote: tomcat 4 is not the right place to look for ajp13 examples. ajp14 is still in the early stages, so you're probably better off starting with ajp13. jakarta-tomcat-connectors/jk is probably the best place to look for examples. there are ajp13 connectors for apache, iis and netscape. you're domino connector is also there now, i think :) Andy Armstrong wrote: Hi, This weekend I'm going to look at making the Domino connector we released this week use ajp13 or ajp14 or both. Can anyone give me a quick pointer to which source I should grab from where (or a meta pointer to something I can read to find out) to get started. I had a quick look at the Tomcat 4 sources -- am I right in thinking that the only ajp14 connector that exists at the moment is the Apache one? Sorry if this is an rtfm -- I've had a quick look round the site but couldn't find much. -- Andy Armstrong, Tagish -- Andy Armstrong, Tagish -- Andy Armstrong, Tagish
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/valves AccessLogValve.java
craigmcc01/06/01 15:50:16 Modified:catalina/src/share/org/apache/catalina/valves AccessLogValve.java Log: Fix the time format used in access logs. The kk pattern gives hours in the range 1-24 (who would want that?), while the HH pattern is 0-23. PR: Bugzilla #1900 Submitted by: Jason Hunter [EMAIL PROTECTED] Revision ChangesPath 1.6 +2 -2 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/valves/AccessLogValve.java Index: AccessLogValve.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/valves/AccessLogValve.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- AccessLogValve.java 2001/02/16 03:28:10 1.5 +++ AccessLogValve.java 2001/06/01 22:50:14 1.6 @@ -126,7 +126,7 @@ * * @author Craig R. McClanahan * @author Jason Brittain - * @version $Revision: 1.5 $ $Date: 2001/02/16 03:28:10 $ + * @version $Revision: 1.6 $ $Date: 2001/06/01 22:50:14 $ */ public final class AccessLogValve @@ -804,7 +804,7 @@ monthFormatter.setTimeZone(tz); yearFormatter = new SimpleDateFormat(); yearFormatter.setTimeZone(tz); -timeFormatter = new SimpleDateFormat(kk:mm:ss); +timeFormatter = new SimpleDateFormat(HH:mm:ss); timeFormatter.setTimeZone(tz); currentDate = new Date(); dateStamp = dateFormatter.format(currentDate);