cvs commit: jakarta-tomcat-connectors/jk/native2/common jk_handler_logon.c jk_handler_response.c jk_registry.c jk_shm.c jk_uriEnv.c jk_worker_lb.c
costin 02/05/15 12:45:45 Modified:jk/native2/common jk_handler_logon.c jk_handler_response.c jk_registry.c jk_shm.c jk_uriEnv.c jk_worker_lb.c Log: Various other fixes / cosmetic changes. Note that 'recoverable' in endpoint is used to indicate a protocol ( ajp ) failure, and will disconnect tomcat. We do this more consistently now. 'reuse' is no longer used, we disconnect only if a protocol error happens. ( reuse wasn't used in the past - tomcat sent 'true' in all cases) Revision ChangesPath 1.16 +8 -7 jakarta-tomcat-connectors/jk/native2/common/jk_handler_logon.c Index: jk_handler_logon.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_handler_logon.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- jk_handler_logon.c14 May 2002 17:27:21 - 1.15 +++ jk_handler_logon.c15 May 2002 19:45:45 - 1.16 @@ -58,7 +58,7 @@ /** * Description: AJP14 Login handler * Author: Henri Gomez <[EMAIL PROTECTED]> - * Version: $Revision: 1.15 $ + * Version: $Revision: 1.16 $ */ #include "jk_global.h" @@ -193,16 +193,17 @@ /* take care of removing previously allocated data */ /* X NEED A SUB POOL */ -if (ae->servletContainerName == NULL || -strcmp( sname, ae->servletContainerName) != 0 ) { -ae->servletContainerName= -(char *)ae->pool->pstrdup( env, ae->pool,sname ); -} +/* + if (ae->servletContainerName == NULL || + strcmp( sname, ae->servletContainerName) != 0 ) { + ae->servletContainerName= + (char *)ae->pool->pstrdup( env, ae->pool,sname ); + } env->l->jkLog(env, env->l, JK_LOG_INFO, "handler.logok() Successfully connected to %s\n", ae->servletContainerName); - +*/ return JK_HANDLER_LAST; } 1.19 +6 -3 jakarta-tomcat-connectors/jk/native2/common/jk_handler_response.c Index: jk_handler_response.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_handler_response.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- jk_handler_response.c 9 May 2002 21:12:15 - 1.18 +++ jk_handler_response.c 15 May 2002 19:45:45 - 1.19 @@ -207,14 +207,17 @@ static int JK_METHOD jk2_handler_endResponse(jk_env_t *env, void *target, jk_endpoint_t *ae, jk_msg_t *msg ) { -ae->reuse = (int)msg->getByte(env, msg); +int reuse = (int)msg->getByte(env, msg); -if((ae->reuse & 0X01) != ae->reuse) { +if((reuse & 0X01) != reuse) { /* * Strange protocol error. */ -ae->reuse = JK_FALSE; +reuse = JK_FALSE; } +if( reuse==JK_FALSE ) +ae->recoverable=JK_FALSE; + return JK_HANDLER_LAST; } 1.22 +1 -5 jakarta-tomcat-connectors/jk/native2/common/jk_registry.c Index: jk_registry.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_registry.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- jk_registry.c 10 May 2002 23:45:18 - 1.21 +++ jk_registry.c 15 May 2002 19:45:45 - 1.22 @@ -62,16 +62,12 @@ #include "jk_service.h" #include "jk_env.h" -#ifdef HAS_APR -#include "apr.h" -#endif - #include "jk_registry.h" /*** * Description: Worker list* - * Version: $Revision: 1.21 $ * + * Version: $Revision: 1.22 $ * ***/ /** Static declarations for all 'hardcoded' modules. This is a hack, 1.15 +3 -0 jakarta-tomcat-connectors/jk/native2/common/jk_shm.c Index: jk_shm.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_shm.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- jk_shm.c 13 May 2002 08:57:56 - 1.14 +++ jk_shm.c 15 May 2002 19:45:45 - 1.15 @@ -330,6 +330,8 @@ /* XXX interprocess sync */ slotId=shm->head->lastSlot++; slot=shm->getSlot( env, shm, s
cvs commit: jakarta-tomcat-connectors/jk/native2/common jk_handler_logon.c jk_handler_response.c
costin 02/04/25 12:14:31 Modified:jk/native2/common jk_handler_logon.c jk_handler_response.c Log: Update rc, use the simpler registration for handlers and the new signature. Revision ChangesPath 1.14 +23 -51jakarta-tomcat-connectors/jk/native2/common/jk_handler_logon.c Index: jk_handler_logon.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_handler_logon.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- jk_handler_logon.c12 Apr 2002 21:49:03 - 1.13 +++ jk_handler_logon.c25 Apr 2002 19:14:31 - 1.14 @@ -58,7 +58,7 @@ /** * Description: AJP14 Login handler * Author: Henri Gomez <[EMAIL PROTECTED]> - * Version: $Revision: 1.13 $ + * Version: $Revision: 1.14 $ */ #include "jk_global.h" @@ -74,25 +74,10 @@ /* Private definitions */ /* - * Second Login Phase (servlet engine -> web server), md5 seed is received - */ -#define AJP14_LOGSEED_CMD(unsigned char)0x11 - -/* * Third Login Phase (web server -> servlet engine), md5 of seed + secret is sent */ #define AJP14_LOGCOMP_CMD(unsigned char)0x12 -/* - * Login Accepted (servlet engine -> web server) - */ -#define AJP14_LOGOK_CMD (unsigned char)0x13 - -/* - * Login Rejected (servlet engine -> web server), will be logged - */ -#define AJP14_LOGNOK_CMD (unsigned char)0x14 - /* web-server want context info after login */ #define AJP14_CONTEXT_INFO_NEG 0x8000 @@ -119,8 +104,8 @@ * String serverName * */ -static int JK_METHOD jk2_handler_login(jk_env_t *env, jk_msg_t *msg, -jk_ws_service_t *s, jk_endpoint_t *ae) +static int JK_METHOD jk2_handler_login(jk_env_t *env, void *target, + jk_endpoint_t *ae, jk_msg_t *msg ) { int rc; char *entropy; @@ -150,12 +135,12 @@ "Into ajp14_marshal_login_comp_into_msgb\n"); rc=msg->appendByte( env, msg, AJP14_LOGCOMP_CMD); -if (rc!=JK_TRUE ) +if (rc!=JK_OK ) return JK_HANDLER_FATAL; /* COMPUTED-SEED */ rc= msg->appendString( env, msg, (const unsigned char *)computedKey); -if( rc!=JK_TRUE ) { +if( rc!=JK_OK ) { env->l->jkLog(env, env->l, JK_LOG_ERROR, "handler.loginSecret() error serializing computed secret\n"); return JK_HANDLER_FATAL; @@ -166,7 +151,7 @@ rc=msg->appendString(env, msg, ae->worker->workerEnv->server_name); -if ( rc != JK_TRUE) +if ( rc != JK_OK) return JK_HANDLER_FATAL; return JK_HANDLER_RESPONSE; @@ -182,8 +167,8 @@ * +++--- * */ -static int JK_METHOD jk2_handler_logok(jk_env_t *env, jk_msg_t *msg, -jk_ws_service_t *s, jk_endpoint_t *ae ) +static int JK_METHOD jk2_handler_logok(jk_env_t *env, void *target, + jk_endpoint_t *ae, jk_msg_t *msg ) { unsigned long nego; char *sname; @@ -229,8 +214,8 @@ * +-+---+ * */ -static int JK_METHOD jk2_handler_lognok(jk_env_t *env, jk_msg_t *msg, - jk_ws_service_t *s, jk_endpoint_t *ae ) +static int JK_METHOD jk2_handler_lognok(jk_env_t *env, void *target, +jk_endpoint_t *ae, jk_msg_t *msg ) { unsigned long status; @@ -245,31 +230,18 @@ int JK_METHOD jk2_handler_logon_init( jk_env_t *env, jk_handler_t *_this, jk_workerEnv_t *wEnv) { -jk_pool_t *pool=wEnv->pool; -jk_handler_t *h; - -h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); -h->name="login"; -h->messageId=AJP14_LOGSEED_CMD; -h->callback=jk2_handler_login; -h->workerEnv=wEnv; -wEnv->registerHandler( env, wEnv, h ); - -h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); -h->name="logOk"; -h->messageId=AJP14_LOGOK_CMD; -h->callback=jk2_handler_logok; -h->workerEnv=wEnv; -wEnv->registerHandler( env, wEnv, h ); - -h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); -h->name="logNok"; -h->messageId=AJP14_LOGNOK_CMD; -h->callback=jk2_handler_lognok; -h->workerEnv=wEnv; -wEnv->registerHandler( env, wEnv, h ); - -return JK_TRUE; +wEnv->registerHandler( env, wEnv, "handler.logon", + "login", JK_HANDLE_LOGON_SEED, +
cvs commit: jakarta-tomcat-connectors/jk/native2/common jk_handler_logon.c jk_handler_response.c
costin 02/03/18 10:37:58 Modified:jk/native2/common jk_handler_logon.c jk_handler_response.c Log: Update the handler config. The handlers registration is still a bit hacky, but better than previous version ( when factory returned an array of handlers ) Revision ChangesPath 1.12 +28 -15jakarta-tomcat-connectors/jk/native2/common/jk_handler_logon.c Index: jk_handler_logon.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_handler_logon.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- jk_handler_logon.c21 Feb 2002 11:10:12 - 1.11 +++ jk_handler_logon.c18 Mar 2002 18:37:58 - 1.12 @@ -58,7 +58,7 @@ /** * Description: AJP14 Login handler * Author: Henri Gomez <[EMAIL PROTECTED]> - * Version: $Revision: 1.11 $ + * Version: $Revision: 1.12 $ */ #include "jk_global.h" @@ -242,37 +242,50 @@ return JK_HANDLER_FATAL; } - - -/** Register handlers - */ -int JK_METHOD jk2_handler_logon_factory( jk_env_t *env, jk_pool_t *pool, -void **result, -const char *type, const char *name) +int JK_METHOD jk2_handler_logon_init( jk_env_t *env, jk_handler_t *_this, + jk_workerEnv_t *wEnv) { -jk_map_t *map; +jk_pool_t *pool=wEnv->pool; jk_handler_t *h; - -jk2_map_default_create( env, &map, pool ); -*result=map; h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); h->name="login"; h->messageId=AJP14_LOGSEED_CMD; h->callback=jk2_handler_login; -map->put( env, map, h->name, h, NULL ); +h->workerEnv=wEnv; +wEnv->registerHandler( env, wEnv, h ); h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); h->name="logOk"; h->messageId=AJP14_LOGOK_CMD; h->callback=jk2_handler_logok; -map->put( env, map, h->name, h, NULL ); +h->workerEnv=wEnv; +wEnv->registerHandler( env, wEnv, h ); h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); h->name="logNok"; h->messageId=AJP14_LOGNOK_CMD; h->callback=jk2_handler_lognok; -map->put( env, map, h->name, h, NULL ); +h->workerEnv=wEnv; +wEnv->registerHandler( env, wEnv, h ); + +return JK_TRUE; +} + + +/** Register handlers + */ +int JK_METHOD jk2_handler_logon_factory( jk_env_t *env, jk_pool_t *pool, + jk_bean_t *result, + const char *type, const char *name) +{ +jk_handler_t *h; +h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); + +h->init=jk2_handler_logon_init; + +result->object=h; + return JK_TRUE; } 1.14 +28 -11 jakarta-tomcat-connectors/jk/native2/common/jk_handler_response.c Index: jk_handler_response.c === RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_handler_response.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- jk_handler_response.c 21 Feb 2002 11:10:12 - 1.13 +++ jk_handler_response.c 18 Mar 2002 18:37:58 - 1.14 @@ -258,39 +258,56 @@ return JK_HANDLER_FATAL; } -int JK_METHOD jk2_handler_response_factory( jk_env_t *env, jk_pool_t *pool, - void **result, - const char *type, const char *name) +int JK_METHOD jk2_handler_response_init( jk_env_t *env, jk_handler_t *_this, + jk_workerEnv_t *wEnv) { -jk_map_t *map; +jk_pool_t *pool=wEnv->pool; jk_handler_t *h; -jk2_map_default_create( env, &map, pool ); -*result=map; - h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); h->name="sendHeaders"; h->messageId=JK_AJP13_SEND_HEADERS; h->callback=jk2_handler_startResponse; -map->put( env, map, h->name, h, NULL ); +h->workerEnv=wEnv; +wEnv->registerHandler( env, wEnv, h ); h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); h->name="sendChunk"; h->messageId=JK_AJP13_SEND_BODY_CHUNK; h->callback=jk2_handler_sendChunk; -map->put( env, map, h->name, h, NULL ); +h->workerEnv=wEnv; +wEnv->registerHandler( env, wEnv, h ); h=(jk_handler_t *)pool->calloc( env, pool, sizeof( jk_handler_t)); h->name="endResponse";