cvs commit: jakarta-tomcat-connectors/jk/native2/common jk_map.c

2001-12-15 Thread costin

costin  01/12/15 09:23:56

  Modified:jk/native2/common jk_map.c
  Log:
  Added the add method.
  
  Revision  ChangesPath
  1.8   +30 -1 jakarta-tomcat-connectors/jk/native2/common/jk_map.c
  
  Index: jk_map.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_map.c,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- jk_map.c  2001/12/14 07:09:31 1.7
  +++ jk_map.c  2001/12/15 17:23:56 1.8
  @@ -58,7 +58,7 @@
   /***
* Description: General purpose map object *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.7 $   *
  + * Version: $Revision: 1.8 $   *
***/
   
   #include jk_global.h
  @@ -143,6 +143,34 @@
   return rc;
   }
   
  +static int jk_map_default_add(jk_env_t *env, jk_map_t *m,
  +  const char *name, void *value)
  +{
  +int rc = JK_FALSE;
  +int i;
  +jk_map_private_t *mPriv;
  +
  +if( name==NULL ) 
  +return JK_FALSE;
  +
  +mPriv=(jk_map_private_t *)m-_private;
  +
  +jk_map_default_realloc(m);
  +
  +if(mPriv-size  mPriv-capacity) {
  +mPriv-values[mPriv-size] = value;
  +/* XXX this is wrong - either we take ownership and copy both
  +   name and value,
  +   or none. The caller should do that if he needs !
  +*/
  +/* mPriv-names[mPriv-size] = m-pool-pstrdup(m-pool, name); */
  +mPriv-names[mPriv-size] =  name; 
  +mPriv-size ++;
  +rc = JK_TRUE;
  +}
  +return rc;
  +}
  +
   static int jk_map_default_size(jk_env_t *env, jk_map_t *m)
   {
   jk_map_private_t *mPriv;
  @@ -515,6 +543,7 @@
   
   _this-get=jk_map_default_get;
   _this-put=jk_map_default_put;
  +_this-add=jk_map_default_add;
   _this-size=jk_map_default_size;
   _this-nameAt=jk_map_default_nameAt;
   _this-valueAt=jk_map_default_valueAt;
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native2/common jk_requtil.c jk_serialize_ajp.c

2001-12-15 Thread costin

costin  01/12/15 09:24:16

  Modified:jk/native2/common jk_requtil.c jk_serialize_ajp.c
  Log:
  Change headers, attributes to jk_map.
  
  Revision  ChangesPath
  1.4   +7 -10 jakarta-tomcat-connectors/jk/native2/common/jk_requtil.c
  
  Index: jk_requtil.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_requtil.c,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- jk_requtil.c  2001/12/12 21:52:40 1.3
  +++ jk_requtil.c  2001/12/15 17:24:16 1.4
  @@ -254,13 +254,16 @@
   char *jk_requtil_getCookieByName(jk_ws_service_t *s,
const char *name)
   {
  -unsigned i;
  +int i;
  +jk_map_t *headers=s-headers_in;
   
  -for(i = 0 ; i  s-num_headers ; i++) {
  -if(0 == strcasecmp(s-headers_names[i], cookie)) {
  +/* XXX use 'get' - and make sure jk_map has support for
  +   case insensitive search */
  +for(i = 0 ; i  headers-size( NULL, headers ) ; i++) {
  +if(0 == strcasecmp(headers-nameAt( NULL, headers, i), cookie)) {
   
   char *id_start;
  -for(id_start = strstr(s-headers_values[i], name) ; 
  +for(id_start = strstr( headers-valueAt( NULL, headers, i ), name) ; 
   id_start ; 
   id_start = strstr(id_start + 1, name)) {
   if('=' == id_start[strlen(name)]) {
  @@ -429,11 +432,5 @@
   s-ssl_cert_len = 0;
   s-ssl_cipher   = NULL;
   s-ssl_session  = NULL;
  -s-headers_names= NULL;
  -s-headers_values   = NULL;
  -s-num_headers  = 0;
  -s-attributes_names = NULL;
  -s-attributes_values= NULL;
  -s-num_attributes   = 0;
   s-jvm_route= NULL;
   }
  
  
  
  1.2   +18 -11jakarta-tomcat-connectors/jk/native2/common/jk_serialize_ajp.c
  
  Index: jk_serialize_ajp.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/common/jk_serialize_ajp.c,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- jk_serialize_ajp.c2001/12/12 21:37:13 1.1
  +++ jk_serialize_ajp.c2001/12/15 17:24:16 1.2
  @@ -174,7 +174,8 @@
  jk_ws_service_t *s )
   {
   unsigned char method;
  -unsigned i;
  +int i;
  +int headerCount;
   jk_logger_t *l=msg-l;
   
   l-jkLog(l, JK_LOG_DEBUG, Into ajp_marshal_into_msgb\n);
  @@ -185,6 +186,8 @@
   return JK_FALSE;
   }
   
  +headerCount=s-headers_in-size(NULL, s-headers_in);
  +
   if (msg-appendByte(msg, JK_AJP13_FORWARD_REQUEST)  ||
   msg-appendByte(msg, method)   ||
   msg-appendString(msg, s-protocol)||
  @@ -194,31 +197,33 @@
   msg-appendString(msg, s-server_name) ||
   msg-appendInt(msg, (unsigned short)s-server_port) ||
   msg-appendByte(msg, (unsigned char)(s-is_ssl)) ||
  -msg-appendInt(msg, (unsigned short)(s-num_headers))) {
  +msg-appendInt(msg, (unsigned short)(headerCount))) {
   
   l-jkLog(l, JK_LOG_ERROR,
handle.request()  Error serializing the message head\n);
   return JK_FALSE;
   }
   
  -for (i = 0 ; i  s-num_headers ; i++) {
  +for (i = 0 ; i  headerCount ; i++) {
   unsigned short sc;
  +
  +char *name=s-headers_in-nameAt(NULL, s-headers_in, i);
   
  -if (jk_requtil_getHeaderId(s-headers_names[i], sc)) {
  +if (jk_requtil_getHeaderId(name, sc)) {
   if (msg-appendInt(msg, sc)) {
   l-jkLog(l, JK_LOG_ERROR,
handle.request() Error serializing header id\n);
   return JK_FALSE;
   }
   } else {
  -if (msg-appendString(msg, s-headers_names[i])) {
  +if (msg-appendString(msg, name)) {
   l-jkLog(l, JK_LOG_ERROR,
handle.request() Error serializing header name\n);
   return JK_FALSE;
   }
   }
   
  -if (msg-appendString(msg, s-headers_values[i])) {
  +if (msg-appendString(msg, s-headers_in-valueAt( NULL, s-headers_in, 
i))) {
   l-jkLog(l, JK_LOG_ERROR,
handle.request() Error serializing header value\n);
   return JK_FALSE;
  @@ -301,14 +306,16 @@
   }
   
   
  -if (s-num_attributes  0) {
  -for (i = 0 ; i  s-num_attributes ; i++) {
  +if (s-attributes-size( NULL, s-attributes)  0) {
  +for (i = 0 ; i  s-attributes-size( NULL, s-attributes) ; i++) {
  +char *name=s-attributes-nameAt( NULL, s-attributes, i);
  +char *val=s-attributes-nameAt( NULL, s-attributes, i);
   

cvs commit: jakarta-tomcat-connectors/jk/native2/server/apache2 jk_logger_apache2.c jk_map_aprtable.c

2001-12-15 Thread costin

costin  01/12/15 09:25:45

  Modified:jk/native2/server/apache2 jk_logger_apache2.c
jk_map_aprtable.c
  Log:
  Added the missing check for level in jk_logger_apache2.
  
  Finish jk_map_aprtable.
  
  Revision  ChangesPath
  1.9   +1 -1  
jakarta-tomcat-connectors/jk/native2/server/apache2/jk_logger_apache2.c
  
  Index: jk_logger_apache2.c
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/native2/server/apache2/jk_logger_apache2.c,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- jk_logger_apache2.c   2001/12/14 07:14:59 1.8
  +++ jk_logger_apache2.c   2001/12/15 17:25:45 1.9
  @@ -132,7 +132,7 @@
   char buf[HUGE_BUFFER_SIZE];
   #endif
   
  -if( level = l-level )
  +if( level  l-level )
   return JK_TRUE;
   
   if( s==NULL ) {
  
  
  
  1.2   +30 -0 
jakarta-tomcat-connectors/jk/native2/server/apache2/jk_map_aprtable.c
  
  Index: jk_map_aprtable.c
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/native2/server/apache2/jk_map_aprtable.c,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- jk_map_aprtable.c 2001/12/14 07:11:42 1.1
  +++ jk_map_aprtable.c 2001/12/15 17:25:45 1.2
  @@ -95,6 +95,16 @@
   return JK_TRUE;
   }
   
  +static int jk_map_aprtable_add( struct jk_env *env, struct jk_map *_this,
  +const char *name, void *value )
  +{
  +apr_table_t *aprMap=_this-_private;
  +
  +apr_table_addn( aprMap, name, (char *)value );
  +
  +return JK_TRUE;
  +}
  +
   static int jk_map_aprtable_size( struct jk_env *env, struct jk_map *_this )
   {
   apr_table_t *aprMap=_this-_private;
  @@ -125,6 +135,17 @@
   return elts[pos].val;
   }
   
  +static void jk_map_aprtable_init(jk_env_t *env, jk_map_t *m, int initialSize,
  +void *wrappedObj)
  +{
  +m-_private=wrappedObj;
  +}
  +
  +static void jk_map_aprtable_clear(jk_env_t *env, jk_map_t *m)
  +{
  +
  +}
  +
   
   /* Not used yet */
   int  jk_map_aprtable_factory(jk_env_t *env, jk_pool_t *pool,
  @@ -134,6 +155,15 @@
   jk_map_t *_this=(jk_map_t *)pool-calloc( pool, sizeof(jk_map_t));
   
   *result=_this;
  +
  +_this-get=jk_map_aprtable_get;
  +_this-put=jk_map_aprtable_put;
  +_this-add=jk_map_aprtable_add;
  +_this-size=jk_map_aprtable_size;
  +_this-nameAt=jk_map_aprtable_nameAt;
  +_this-valueAt=jk_map_aprtable_valueAt;
  +_this-init=jk_map_aprtable_init;
  +_this-clear=jk_map_aprtable_clear;
   
   return JK_TRUE;
   }
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native2/server/apache2 jk_pool_apr.c

2001-12-15 Thread costin

costin  01/12/15 09:27:43

  Modified:jk/native2/server/apache2 jk_pool_apr.c
  Log:
  Removed debugging ( and changed the define to JK_APR_POOL_DEBUG to avoid
  name conflicts ).
  
  Revision  ChangesPath
  1.6   +11 -7 
jakarta-tomcat-connectors/jk/native2/server/apache2/jk_pool_apr.c
  
  Index: jk_pool_apr.c
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/native2/server/apache2/jk_pool_apr.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- jk_pool_apr.c 2001/12/14 07:14:59 1.5
  +++ jk_pool_apr.c 2001/12/15 17:27:43 1.6
  @@ -68,8 +68,12 @@
   
   #include jk_apache2.h
   
  -#define POOL_DEBUG
  +/* 
  +   JK_APR_POOL_DEBUG will enable verbose messages on allocation.
   
  +   What's important is to see 'reset' after each request.
  +*/
  +
   
   int jk_pool_apr_create( jk_pool_t **newPool, jk_pool_t *parent,
   apr_pool_t *aprPool );
  @@ -83,7 +87,7 @@
*/
   static void jk_pool_apr_close(jk_pool_t *p)
   {
  -#ifdef POOL_DEBUG
  +#ifdef JK_APR_POOL_DEBUG
   fprintf(stderr, apr_close %p\n, p);
   #endif
   }
  @@ -94,7 +98,7 @@
   */
   static void jk_pool_apr_reset(jk_pool_t *p)
   {
  -#ifdef POOL_DEBUG
  +#ifdef JK_APR_POOL_DEBUG
   fprintf(stderr, apr_reset %p\n, p);
   #endif
   apr_pool_clear(p-_private);
  @@ -103,7 +107,7 @@
   static void *jk_pool_apr_calloc(jk_pool_t *p, 
   size_t size)
   {
  -#ifdef POOL_DEBUG
  +#ifdef JK_APR_POOL_DEBUG
   fprintf(stderr, apr_calloc %p %d\n, p, size);
   #endif
   /* assert( p-_private != NULL ) */
  @@ -113,7 +117,7 @@
   static void *jk_pool_apr_alloc(jk_pool_t *p, 
  size_t size)
   {
  -#ifdef POOL_DEBUG
  +#ifdef JK_APR_POOL_DEBUG
   fprintf(stderr, apr_alloc %p %d\n, p, size);
   #endif
   
  @@ -127,7 +131,7 @@
   {
   void *rc;
   
  -#ifdef POOL_DEBUG
  +#ifdef JK_APR_POOL_DEBUG
   fprintf(stderr, apr_realloc %p %d\n, p, sz);
   #endif
   if(!p || (!old  old_sz)) {
  @@ -145,7 +149,7 @@
   static void *jk_pool_apr_strdup(jk_pool_t *p, 
   const char *s)
   {
  -#ifdef POOL_DEBUG
  +#ifdef JK_APR_POOL_DEBUG
   fprintf(stderr, apr_strdup %p %d\n, p, ((s==NULL)?-1: (int)strlen(s)));
   #endif
   return apr_pstrdup( (apr_pool_t *)p-_private, s);
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native2/server/apache2 mod_jk.c

2001-12-15 Thread costin

costin  01/12/15 09:36:25

  Modified:jk/native2/server/apache2 mod_jk.c
  Log:
  Use jk_map for headers.
  
  Make sure we copy all data we'll need later in long-lived pools.
  
  Changed the option ( that I added few weeks ago ) to set jk properties
  in httpd.conf to JkSet. All jk options that can be set in workers.properties
  can also be set using JkSet name value instead of name=value in the
  .properties file.
  
  Finally added the per-dir configuration that will allow the 'native mapper'
  to work. This is still experimental, but will provide huge improvements in
  jk scalability !
  
  The idea is that you can use JkWorker in any Location ( eventually
  included in a VirtualHost section ) to specify that location
  is a webapp and what worker to use. Apache will use it's normal
  mapper to locate the context - without any need to duplicate this in
  jk. For sites with a large number of virtual hosts/apps this is
  very significant.
  
  ( of course, JkMount remains and we'll add the autoconf, but none of
  those should be used for large sites, at least not with the current
  uri mapper )
  
  Revision  ChangesPath
  1.12  +123 -63   jakarta-tomcat-connectors/jk/native2/server/apache2/mod_jk.c
  
  Index: mod_jk.c
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/server/apache2/mod_jk.c,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- mod_jk.c  2001/12/14 07:14:59 1.11
  +++ mod_jk.c  2001/12/15 17:36:25 1.12
  @@ -59,7 +59,7 @@
* Description: Apache 2 plugin for Jakarta/Tomcat *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Henri Gomez [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.11 $   *
  + * Version: $Revision: 1.12 $   *
***/
   
   /*
  @@ -151,12 +151,39 @@
   if (context[0]!='/') return Context must start with /;
   
   workerEnv-init_data-put( NULL, workerEnv-init_data,
  -   context, worker, NULL );
  +   ap_pstrdup(cmd-pool,context),
  +   ap_pstrdup(cmd-pool,worker),
  +   NULL );
   
   return NULL;
   }
   
  +/** XXX This should be JkWebapp, it 'defines' the app 
  + */
  +static const char *jk_set_worker(cmd_parms *cmd, void *per_dir, 
  + const char *workerName)
  +{
  +jk_uriEnv_t *uriEnv=(jk_uriEnv_t *)per_dir;
  +jk_webapp_t *webapp;
   
  +server_rec *s = cmd-server;
  +
  +jk_workerEnv_t *workerEnv =
  +(jk_workerEnv_t *)ap_get_module_config(s-module_config, jk_module);
  +
  +/* Do we know the url ? */
  +webapp=workerEnv-createWebapp( workerEnv, NULL, NULL, NULL );
  +uriEnv-webapp=webapp;
  +webapp-workerName=ap_pstrdup(cmd-pool, workerName);
  +
  +uriEnv-workerEnv=workerEnv;
  +
  +fprintf(stderr, XXX Set worker %p %s\n, uriEnv, workerName );
  +
  +return NULL;
  +}
  +
  +
   /*
* JkWorkersFile Directive Handling
*
  @@ -206,7 +233,7 @@
   }
   
   /*
  - * JkWorker name value
  + * JkSet name value
*/
   static const char *jk_worker_property(cmd_parms *cmd,
 void *dummy,
  @@ -247,8 +274,10 @@
   }
   
   if(value) {
  -void *old = NULL;
  -m-put(NULL, m, name, value, old);
  +m-put(NULL, m,
  +   ap_pstrdup(cmd-pool, name),
  +   ap_pstrdup(cmd-pool, value),
  +   NULL);
   /*printf(Setting %s %s\n, name, value);*/
   } 
   return NULL;
  @@ -294,7 +323,8 @@
   jk_workerEnv_t *workerEnv =
   (jk_workerEnv_t *)ap_get_module_config(s-module_config, jk_module);
   
  -workerEnv-init_data-put( NULL, workerEnv-init_data, logger.file.level, 
log_level, NULL);
  +workerEnv-init_data-put( NULL, workerEnv-init_data, logger.file.level,
  +   ap_pstrdup(cmd-pool, log_level), NULL);
   return NULL;
   }
   
  @@ -311,7 +341,8 @@
   jk_workerEnv_t *workerEnv =
   (jk_workerEnv_t *)ap_get_module_config(s-module_config, jk_module);
   
  -workerEnv-init_data-put( NULL, workerEnv-init_data, 
logger.file.timeFormat, log_format, NULL);
  +workerEnv-init_data-put( NULL, workerEnv-init_data, logger.file.timeFormat,
  +   ap_pstrdup(cmd-pool,log_format), NULL);
   return NULL;
   }
   
  @@ -513,7 +544,8 @@
   
   workerEnv-envvars_in_use = JK_TRUE;
   
  -workerEnv-envvars-put(NULL, workerEnv-envvars, env_name, default_value, 
NULL);
  +workerEnv-envvars-put(NULL, workerEnv-envvars, env_name,
  + 

cvs commit: jakarta-tomcat-connectors/jk/native2/include jk_map.h jk_service.h

2001-12-15 Thread costin

costin  01/12/15 09:19:26

  Modified:jk/native2/include jk_map.h jk_service.h
  Log:
  Added the 'add' method, to be compatible with apr_tables ( and usable for
  storing headers and multi-values ).
  
  Change the storage of headers, attributes to jk_map. This will avoid
  copying the data, and provide a simpler interface.
  
  Revision  ChangesPath
  1.5   +3 -3  jakarta-tomcat-connectors/jk/native2/include/jk_map.h
  
  Index: jk_map.h
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/include/jk_map.h,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- jk_map.h  2001/12/14 07:07:11 1.4
  +++ jk_map.h  2001/12/15 17:19:26 1.5
  @@ -58,7 +58,7 @@
   /***
* Description: Map object header file *
* Author:  Gal Shachor [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.4 $   *
  + * Version: $Revision: 1.5 $   *
***/
   
   #ifndef JK_MAP_H
  @@ -90,8 +90,8 @@
  const char *name, void *value,
  void **oldValue);
   
  -/*  int (*add)(struct jk_env *env, struct jk_map *_this, */
  -/*   const char *name, void *value ); */
  +int (*add)(struct jk_env *env, struct jk_map *_this,
  +   const char *name, void *value );
   
   /* Similar with apr_table, elts can be accessed by id
*/
  
  
  
  1.6   +8 -21 jakarta-tomcat-connectors/jk/native2/include/jk_service.h
  
  Index: jk_service.h
  ===
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/include/jk_service.h,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- jk_service.h  2001/12/13 19:06:11 1.5
  +++ jk_service.h  2001/12/15 17:19:26 1.6
  @@ -63,7 +63,7 @@
* Author:  Gal Shachor [EMAIL PROTECTED]   *
* Author:  Dan Milstein [EMAIL PROTECTED]*
* Author:  Henri Gomez [EMAIL PROTECTED]   *
  - * Version: $Revision: 1.5 $   *
  + * Version: $Revision: 1.6 $   *
***/
   
   #ifndef JK_SERVICE_H
  @@ -185,13 +185,8 @@
 */
int ssl_key_size;

  -/*
  - * Headers, names and values.
  - */
  -char**headers_names;/* Names of the request headers  */
  -char**headers_values;   /* Values of the request headers */
  -unsigned num_headers;   /* Number of request headers */
  -
  +/** Incoming headers */
  +struct jk_map *headers_in;
   
   /*
* Request attributes. 
  @@ -203,9 +198,7 @@
* attributes. Tomcat is required to append org.apache.tomcat. to 
* these attrinbute names.
*/
  -char**attributes_names;/* Names of the request attributes  */
  -char**attributes_values;   /* Values of the request attributes */
  -unsigned num_attributes;   /* Number of request attributes */
  +struct jk_map *attributes;
   
   /*
* The jvm route is in use when the adapter load balance among
  @@ -220,9 +213,7 @@
*/
   int status;
   const char *msg;
  -unsignedout_headers;
  -char  **out_header_names;
  -char  **out_header_values;
  +struct jk_map *headers_out;
   
   /* Count remaining bytes ( original content length minus what was sent */
   int left_bytes_to_send;
  @@ -243,14 +234,10 @@
   void (*afterRequest)( jk_ws_service_t *_this );
   
   /*
  - * Send the response headers to the browser.
  + * Set the response head in the server structures. This will be called
  + * before the first write.
*/
  -int (JK_METHOD *start_response)(jk_ws_service_t *s,
  -int status,
  -const char *reason,
  -const char * const *header_names,
  -const char * const *header_values,
  -unsigned num_of_headers);
  +int (JK_METHOD *head)(jk_ws_service_t *s);
   
   /*
* Read a chunk of the request body into a buffer.  Attempt to read len
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




cvs commit: jakarta-tomcat-connectors/jk/native2/common jk_handler_response.c

2001-12-15 Thread costin

costin  01/12/15 09:23:28

  Modified:jk/native2/common jk_handler_response.c
  Log:
  Change the storage of headers and attributes. The start_response methods was
  changed - it didn't actually started the response, but set the
  fields in request_rec. ( probably in a jk3 we should change jk_service
  to use virtual methods, and use directly the 'original' server structure
  and methods )
  
  Revision  ChangesPath
  1.9   +55 -56
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.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- jk_handler_response.c 2001/12/14 07:12:42 1.8
  +++ jk_handler_response.c 2001/12/15 17:23:28 1.9
  @@ -116,81 +116,80 @@
  jk_endpoint_t *ae,
  jk_logger_t*l)
   {
  -int err;
  -unsigned i;
  +int err=JK_FALSE;
  +int i;
   jk_pool_t * pool = s-pool;
  +int headerCount;
   
   s-status = msg-getInt(msg);
   s-msg = (char *)msg-getString(msg);
   if (s-msg) {
   jk_xlate_from_ascii(s-msg, strlen(s-msg));
  +/* Do we want this ? Probably not needed, but safer ! */
  +s-msg = ae-cPool-pstrdup( ae-cPool, s-msg );
   }
  -s-out_headers = msg-getInt(msg);
  -s-out_header_names = NULL;
  -s-out_header_values = NULL;
  -
  -if (s-out_headers  0 ) {
  -s-out_header_names = pool-alloc(pool, sizeof(char *) * s-out_headers);
  -s-out_header_values = pool-alloc(pool, sizeof(char *) * s-out_headers);
  -
  -if (s-out_header_names==NULL ||
  -s-out_header_values==NULL) {
  -l-jkLog(l, JK_LOG_ERROR,
  - handler.startResponse() OutOfMemoryError %d headers\n,
  - s-out_headers);
  -return JK_HANDLER_FATAL;
  -}
  -for(i = 0 ; i  s-out_headers ; i++) {
  -unsigned short name = msg-peekInt(msg) ;
  +headerCount = msg-getInt(msg);
  +
  +/* XXX assert msg-headers_out is set - the server adapter should know what
  +   kind of map to use ! */
   
  -if ((name  0XFF00) == 0XA000) {
  -msg-getInt(msg);
  -name = name  0X00FF;
  -if (name = SC_RES_HEADERS_NUM) {
  -s-out_header_names[i] =
  -(char *)jk_requtil_getHeaderById(name);
  -} else {
  -l-jkLog(l, JK_LOG_ERROR,
  - handler.response() Invalid header id (%d)\n,
  - name);
  -return JK_HANDLER_FATAL;
  -}
  +for(i = 0 ; i  headerCount ; i++) {
  +char *nameS;
  +char *valueS;
  +unsigned short name = msg-peekInt(msg) ;
  +
  +if ((name  0XFF00) == 0XA000) {
  +msg-getInt(msg);
  +name = name  0X00FF;
  +if (name = SC_RES_HEADERS_NUM) {
  +nameS =
  +(char *)jk_requtil_getHeaderById(name);
   } else {
  -s-out_header_names[i] = (char *)msg-getString(msg);
  -if (!s-out_header_names[i]) {
  -l-jkLog(l, JK_LOG_ERROR,
  - handler.response() Null header name \n);
  -return JK_HANDLER_FATAL;
  -}
  -jk_xlate_from_ascii(s-out_header_names[i],
  -strlen(s-out_header_names[i]));
  +l-jkLog(l, JK_LOG_ERROR,
  + handler.response() Invalid header id (%d)\n,
  + name);
  +return JK_HANDLER_FATAL;
   }
  -s-out_header_values[i] = (char *)msg-getString(msg);
  -if (!s-out_header_values[i]) {
  +} else {
  +nameS = (char *)msg-getString(msg);
  +if (nameS==NULL) {
   l-jkLog(l, JK_LOG_ERROR,
  - Error ajp_unmarshal_response - Null header value\n);
  + handler.response() Null header name \n);
   return JK_HANDLER_FATAL;
   }
  -
  -jk_xlate_from_ascii(s-out_header_values[i],
  -strlen(s-out_header_values[i]));
  -
  -l-jkLog(l, JK_LOG_DEBUG,
  - ajp_unmarshal_response: Header[%d] [%s] = [%s]\n, 
  - i,
  - s-out_header_names[i],
  - s-out_header_values[i]);
  +jk_xlate_from_ascii(nameS, strlen(nameS));
   }
  +
  +valueS = (char *)msg-getString(msg);
  +if 

cvs commit: jakarta-tomcat-4.0/catalina/src/conf server-noexamples.xml.config server.xml

2001-12-15 Thread craigmcc

craigmcc01/12/15 13:46:51

  Modified:catalina/src/conf server-noexamples.xml.config server.xml
  Log:
  Correct JDBCRealm examples for the proper way to send username and
  password to the database.
  
  Revision  ChangesPath
  1.8   +4 -2  
jakarta-tomcat-4.0/catalina/src/conf/server-noexamples.xml.config
  
  Index: server-noexamples.xml.config
  ===
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/conf/server-noexamples.xml.config,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- server-noexamples.xml.config  2001/11/06 08:46:44 1.7
  +++ server-noexamples.xml.config  2001/12/15 21:46:51 1.8
  @@ -143,7 +143,8 @@
 !--
 Realm  className=org.apache.catalina.realm.JDBCRealm debug=99
driverName=org.gjt.mm.mysql.Driver
  -  connectionURL=jdbc:mysql://localhost/authority?user=test;password=test
  +  connectionURL=jdbc:mysql://localhost/authority
  + connectionName=test connectionPassword=test
 userTable=users userNameCol=user_name userCredCol=user_pass
 userRoleTable=user_roles roleNameCol=role_name /
 --
  @@ -151,7 +152,8 @@
 !--
 Realm  className=org.apache.catalina.realm.JDBCRealm debug=99
driverName=oracle.jdbc.driver.OracleDriver
  -  
connectionURL=jdbc:oracle:thin:@ntserver:1521:ORCL?user=scott;password=tiger
  +  connectionURL=jdbc:oracle:thin:@ntserver:1521:ORCL
  + connectionName=scott connectionPassword=tiger
 userTable=users userNameCol=user_name userCredCol=user_pass
 userRoleTable=user_roles roleNameCol=role_name /
 --
  
  
  
  1.46  +4 -2  jakarta-tomcat-4.0/catalina/src/conf/server.xml
  
  Index: server.xml
  ===
  RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/conf/server.xml,v
  retrieving revision 1.45
  retrieving revision 1.46
  diff -u -r1.45 -r1.46
  --- server.xml2001/11/09 19:32:59 1.45
  +++ server.xml2001/12/15 21:46:51 1.46
  @@ -147,7 +147,8 @@
 !--
 Realm  className=org.apache.catalina.realm.JDBCRealm debug=99
driverName=org.gjt.mm.mysql.Driver
  -  connectionURL=jdbc:mysql://localhost/authority?user=test;password=test
  +  connectionURL=jdbc:mysql://localhost/authority
  + connectionName=test connectionPassword=test
 userTable=users userNameCol=user_name userCredCol=user_pass
 userRoleTable=user_roles roleNameCol=role_name /
 --
  @@ -155,7 +156,8 @@
 !--
 Realm  className=org.apache.catalina.realm.JDBCRealm debug=99
driverName=oracle.jdbc.driver.OracleDriver
  -  
connectionURL=jdbc:oracle:thin:@ntserver:1521:ORCL?user=scott;password=tiger
  +  connectionURL=jdbc:oracle:thin:@ntserver:1521:ORCL
  + connectionName=scott connectionPassword=tiger
 userTable=users userNameCol=user_name userCredCol=user_pass
 userRoleTable=user_roles roleNameCol=role_name /
 --
  
  
  

--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]




Trouble building mod_webapp.so for Apache 2.0.28

2001-12-15 Thread Cavan Morris

I am unable to build mod_webapp.so for apache 2.0.28 on my redhat 7.2
system.

Here's what I've been doing.  The problem comes during the make process.

 tar -xvzf webapp-module-1.0.1-tc401-src.tar.gz
[...]
 cd webapp-module-1.0.1-tc401/
[...]
 ./support/buildconf.sh
[...]
 ./configure --with-apxs=/usr/local/apache2/bin/apxs
[...]
 make
[...]
*** Warning: This library needs some functionality provided by -lwebapp.
*** I have the capability to make that library automatically link in
when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have.

*** Warning: libtool could not satisfy all declared inter-library
*** dependencies of module mod_webapp.  Therefore, libtool will create
*** a static module, that should work as long as the dlopening
*** application is linked with the -dlopen flag.
make[2]: Leaving directory `/root/webapp-module-1.0.1-tc401/apache-2.0'
make[1]: Exiting directory apache-2.0
make[1]: Leaving directory `/root/webapp-module-1.0.1-tc401'

At this point make finishes and there is no mod_webapp.so in apache-2.0.
Does anyone have any idea how to get this to work?  Any help would be
greatly appriciated.

Thanks in advance.
Cavan Morris
[EMAIL PROTECTED]


--
To unsubscribe, e-mail:   mailto:[EMAIL PROTECTED]
For additional commands, e-mail: mailto:[EMAIL PROTECTED]