nacho       02/04/19 16:08:53

  Modified:    jk/native2/server/isapi isapi.dsp jk_iis.h jk_isapi_plugin.c
                        jk_service_iis.c
  Log:
  * Work in progress
  
  Near :)
  
  Revision  Changes    Path
  1.3       +1 -1      jakarta-tomcat-connectors/jk/native2/server/isapi/isapi.dsp
  
  Index: isapi.dsp
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/server/isapi/isapi.dsp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- isapi.dsp 19 Apr 2002 17:26:08 -0000      1.2
  +++ isapi.dsp 19 Apr 2002 23:08:53 -0000      1.3
  @@ -79,7 +79,7 @@
   # ADD BSC32 /nologo
   LINK32=link.exe
   # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib 
advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib 
/nologo /dll /debug /machine:I386 /pdbtype:sept
  -# ADD LINK32 libapr.lib libaprutil.lib kernel32.lib user32.lib advapi32.lib 
wsock32.lib /nologo /dll /debug /machine:I386 /out:"Debug/isapi_redirector2.dll" 
/pdbtype:sept /libpath:"$(APACHE20_HOME)\Release" /libpath:"$(APR_HOME)\apr\Release" 
/libpath:"$(APR_HOME)\apr-util\Release"
  +# ADD LINK32 libapr.lib libaprutil.lib kernel32.lib user32.lib advapi32.lib 
wsock32.lib /nologo /dll /debug /machine:I386 
/out:"e:\tomcat\jakarta-tomcat\build\tomcat\bin\native\isapi_redirector2.dll" 
/pdbtype:sept /libpath:"$(APACHE20_HOME)\Release" /libpath:"$(APR_HOME)\apr\Release" 
/libpath:"$(APR_HOME)\apr-util\Release"
   
   !ENDIF 
   
  
  
  
  1.5       +10 -16    jakarta-tomcat-connectors/jk/native2/server/isapi/jk_iis.h
  
  Index: jk_iis.h
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native2/server/isapi/jk_iis.h,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- jk_iis.h  19 Apr 2002 17:26:08 -0000      1.4
  +++ jk_iis.h  19 Apr 2002 23:08:53 -0000      1.5
  @@ -77,7 +77,7 @@
   
   #define DEFAULT_WORKER_NAME ("ajp13")
   /*
  - * We use special headers to pass values from the filter to the 
  + * We use special headers to pass values from the filter to the
    * extension. These values are:
    *
    * 1. The real URI before redirection took place
  @@ -95,18 +95,11 @@
   #define HTTP_QUERY_HEADER_NAME   ("HTTP_TOMCATQUERY")
   #define HTTP_WORKER_HEADER_NAME  ("HTTP_TOMCATWORKER")
   
  -#define SERVER_NAME                              ("SERVER_NAME" ) 
  +#define SERVER_NAME                              ("SERVER_NAME" )
   
   #define SERVER_SOFTWARE                  ("SERVER_SOFTWARE")
   
   #define REGISTRY_LOCATION       ("Software\\Apache Software Foundation\\Jakarta 
Isapi Redirector\\2.0")
  -#define EXTENSION_URI_TAG       ("extension_uri")
  -
  -#define URI_SELECT_TAG          ("uri_select")
  -
  -#define URI_SELECT_PARSED_VERB      ("parsed")
  -#define URI_SELECT_UNPARSED_VERB    ("unparsed")
  -#define URI_SELECT_ESCAPED_VERB     ("escaped")
   
   #define BAD_REQUEST             -1
   #define BAD_PATH                -2
  @@ -114,10 +107,10 @@
   
   
   #define GET_SERVER_VARIABLE_VALUE(name, place) {    \
  -    (place) = NULL;                                   \
  +    (place) = NULL;                                 \
       huge_buf_sz = sizeof(huge_buf);                 \
  -    if (get_server_value(env, \
  -                                                lpEcb,        \
  +    if (get_server_value(env,                       \
  +                        lpEcb,                      \
                           (name),                     \
                           huge_buf,                   \
                           huge_buf_sz,                \
  @@ -128,14 +121,14 @@
   
   #define GET_SERVER_VARIABLE_VALUE_INT(name, place, def) {   \
       huge_buf_sz = sizeof(huge_buf);                 \
  -    if (get_server_value(env,\
  -                                                lpEcb,        \
  +    if (get_server_value(env,                       \
  +                         lpEcb,                     \
                           (name),                     \
                           huge_buf,                   \
                           huge_buf_sz,                \
                           "")) {                      \
           (place) = atoi(huge_buf);                   \
  -        if (0 == (place)) {                          \
  +        if (0 == (place)) {                         \
               (place) = def;                          \
           }                                           \
       } else {    \
  @@ -157,9 +150,10 @@
   static int JK_METHOD jk2_service_iis_init_ws_service( struct jk_env *env, 
jk_ws_service_t *_this,
                    struct jk_worker *w, void *serverObj );
   
  +int jk2_service_iis_init(jk_env_t *env, jk_ws_service_t *s);
   
   #ifdef __cplusplus
   }
   #endif /* __cplusplus */
   
  -#endif 
  +#endif
  
  
  
  1.6       +76 -124   
jakarta-tomcat-connectors/jk/native2/server/isapi/jk_isapi_plugin.c
  
  Index: jk_isapi_plugin.c
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/native2/server/isapi/jk_isapi_plugin.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- jk_isapi_plugin.c 19 Apr 2002 17:26:08 -0000      1.5
  +++ jk_isapi_plugin.c 19 Apr 2002 23:08:53 -0000      1.6
  @@ -60,7 +60,7 @@
    * Author:      Gal Shachor <[EMAIL PROTECTED]>                           *
    * Author:      Larry Isaacs <[EMAIL PROTECTED]>                           *
    * Author:      Ignacio J. Ortega <[EMAIL PROTECTED]>                       *
  - * Version:     $Revision: 1.5 $                                           *
  + * Version:     $Revision: 1.6 $                                           *
    ***************************************************************************/
   
   // This define is needed to include wincrypt,h, needed to get client certificates
  @@ -82,6 +82,14 @@
   #include "jk_iis.h"
   //#include "jk_uri_worker_map.h"
   
  +#define EXTENSION_URI_TAG       ("extension_uri")
  +#define SERVER_ROOT_TAG          ("server_root")
  +#define URI_SELECT_TAG          ("uri_select")
  +
  +#define URI_SELECT_PARSED_VERB      ("parsed")
  +#define URI_SELECT_UNPARSED_VERB    ("unparsed")
  +#define URI_SELECT_ESCAPED_VERB     ("escaped")
  +
   
   static char  ini_file_name[MAX_PATH];
   static int   using_ini_file = JK_FALSE;
  @@ -95,8 +103,9 @@
   static char extension_uri[INTERNET_MAX_URL_LENGTH] = 
"/jakarta/isapi_redirector2.dll";
   static char log_file[MAX_PATH * 2];
   static int  log_level = JK_LOG_EMERG_LEVEL;
  -static char worker_file[MAX_PATH * 2];
  -static char worker_mount_file[MAX_PATH * 2];
  +//static char worker_file[MAX_PATH * 2];
  +static char server_root[MAX_PATH * 2];
  +//static char worker_mount_file[MAX_PATH * 2];
   
   #define URI_SELECT_OPT_PARSED       0
   #define URI_SELECT_OPT_UNPARSED     1
  @@ -105,7 +114,7 @@
   static int uri_select_option = URI_SELECT_OPT_PARSED;
   
   
  -static int init_jk(jk_env_t *env,char *serverName);
  +static int init_jk(char *serverName);
   
   static int initialize_extension(void);
   
  @@ -123,6 +132,9 @@
                               DWORD bufsz,
                               char  *def_val);
   
  +static jk_env_t* jk2_create_config();
  +
  +
   static void write_error_response(PHTTP_FILTER_CONTEXT pfc,char *status,char * msg)
   {
       char crlf[3] = { (char)13, (char)10, '\0' };
  @@ -173,7 +185,8 @@
                               DWORD dwNotificationType, 
                               LPVOID pvNotification)
   {
  -    jk_env_t *env = workerEnv->globalEnv->getEnv( workerEnv->globalEnv );
  +    jk_env_t *env; 
  +    jk_uriEnv_t *uriEnv;
   
       /* Initialise jk */
       if (is_inited && !is_mapread) {
  @@ -182,14 +195,14 @@
   
           if (pfc->GetServerVariable(pfc, SERVER_NAME, serverName, &dwLen)){
               if (dwLen > 0) serverName[dwLen-1] = '\0';
  -            if (init_jk(env,serverName))
  +            if (init_jk(serverName))
                   is_mapread = JK_TRUE;
           }
           /* If we can't read the map we become dormant */
           if (!is_mapread)
               is_inited = JK_FALSE;
       }
  -
  +    env = workerEnv->globalEnv->getEnv( workerEnv->globalEnv );
       if (is_inited && (iis5 < 0) ) {
           char serverSoftware[256];
           DWORD dwLen = sizeof(serverSoftware);
  @@ -203,7 +216,6 @@
                        }
           }
       }
  -
       if (is_inited &&
            (((SF_NOTIFY_PREPROC_HEADERS == dwNotificationType) && !iis5) ||
                  ((SF_NOTIFY_AUTH_COMPLETE   == dwNotificationType) &&  iis5)
  @@ -251,6 +263,7 @@
           if (!GetHeader(pfc, "url", (LPVOID)uri, (LPDWORD)&sz)) {
               env->l->jkLog(env, env->l,  JK_LOG_ERROR, 
                      "HttpFilterProc error while getting the url\n");
  +            workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env );
               return SF_STATUS_REQ_ERROR;
           }
   
  @@ -269,6 +282,7 @@
                          uri);
                   write_error_response(pfc,"400 Bad Request",
                           "<HTML><BODY><H1>Request contains invalid 
encoding</H1></BODY></HTML>");
  +                workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env );
                   return SF_STATUS_REQ_FINISHED;
               }
               else if(rc == BAD_PATH) {
  @@ -277,26 +291,27 @@
                          uri);
                   write_error_response(pfc,"403 Forbidden",
                           "<HTML><BODY><H1>Access is Forbidden</H1></BODY></HTML>");
  +                workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env );
                   return SF_STATUS_REQ_FINISHED;
               }
               jk_requtil_getParents(uri);
   
  +
               if(GetHeader(pfc, "Host:", (LPVOID)Host, (LPDWORD)&szHost)) {
  -                strcat(snuri,Host);
  -                strcat(snuri,uri);
                   env->l->jkLog(env, env->l,  JK_LOG_DEBUG, 
                          "In HttpFilterProc Virtual Host redirection of %s\n", 
  -                       snuri);
  -//                worker = map_uri_to_worker(uw_map, snuri, logger);                
  +                       Host);
  +                uriEnv = workerEnv->uriMap->mapUri(env, workerEnv->uriMap,Host,uri 
);
               }
  -            if (!worker) {
  +
  +            if (uriEnv==NULL) {
                   env->l->jkLog(env, env->l,  JK_LOG_DEBUG, 
                          "In HttpFilterProc test Default redirection of %s\n", 
                          uri);
  -//                worker = map_uri_to_worker(uw_map, uri, logger);
  +                uriEnv = workerEnv->uriMap->mapUri(env, workerEnv->uriMap,NULL,uri 
);
               }
   
  -            if (worker) {
  +            if (uriEnv!=NULL) {
                   char *forwardURI;
   
                   /* This is a servlet, should redirect ... */
  @@ -321,6 +336,7 @@
                                  uri);
                           write_error_response(pfc,"400 Bad Request",
                                   "<HTML><BODY><H1>Request contains too many 
characters that need to be encoded.</H1></BODY></HTML>");
  +                        workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env 
);
                           return SF_STATUS_REQ_FINISHED;
                       }
                       env->l->jkLog(env, env->l,  JK_LOG_DEBUG, 
  @@ -333,10 +349,11 @@
                   if(!AddHeader(pfc, URI_HEADER_NAME, forwardURI) || 
                      ( (query != NULL && strlen(query) > 0)
                              ? !AddHeader(pfc, QUERY_HEADER_NAME, query) : FALSE ) || 
  -                   !AddHeader(pfc, WORKER_HEADER_NAME, worker) ||
  +                   !AddHeader(pfc, WORKER_HEADER_NAME, uriEnv->workerName) ||
                      !SetHeader(pfc, "url", extension_uri)) {
                       env->l->jkLog(env, env->l,  JK_LOG_ERROR, 
                              "HttpFilterProc error while adding request headers\n");
  +                    workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env );
                       return SF_STATUS_REQ_ERROR;
                   }
                                
  @@ -349,6 +366,7 @@
                       if (!AddHeader(pfc, TOMCAT_TRANSLATE_HEADER_NAME, Translate)) {
                           env->l->jkLog(env, env->l,  JK_LOG_ERROR, 
                             "HttpFilterProc error while adding Tomcat-Translate 
headers\n");
  +                        workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env 
);
                           return SF_STATUS_REQ_ERROR;
                       }
                   SetHeader(pfc, "Translate:", NULL);
  @@ -374,10 +392,12 @@
   
                   write_error_response(pfc,"403 Forbidden",
                           "<HTML><BODY><H1>Access is Forbidden</H1></BODY></HTML>");
  +                workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env );
                   return SF_STATUS_REQ_FINISHED;
               }
           }
       }
  +    workerEnv->globalEnv->releaseEnv( workerEnv->globalEnv, env );
       return SF_STATUS_REQ_NEXT_NOTIFICATION;
   }
   
  @@ -412,7 +432,7 @@
                DWORD dwLen = sizeof(serverName);
                if (lpEcb->GetServerVariable(lpEcb->ConnID, SERVER_NAME, serverName, 
&dwLen)){
                        if (dwLen > 0) serverName[dwLen-1] = '\0';
  -                     if (init_jk(env,serverName))
  +                     if (init_jk(serverName))
                                is_mapread = JK_TRUE;
                }
                if (!is_mapread)
  @@ -481,15 +501,7 @@
       if (is_inited) {
           is_inited = JK_FALSE;
   
  -/*
  -             if (is_mapread) {
  -                     uri_worker_map_free(&uw_map, logger);
  -                     is_mapread = JK_FALSE;
  -             }
  -        wc_close(logger);
  -        if (logger) {
  -            jk_close_file_logger(&logger);
  -        }
  +/* XXX Here goes a graceful shutdown of jk2, Free resources and pools
   */
       }
       
  @@ -528,13 +540,11 @@
       return fReturn;
   }
   
  -static int init_jk(jk_env_t *env,char *serverName)
  +static int init_jk(char *serverName)
   {
       int rc = JK_FALSE;  
  -    jk_map_t *map;
  -    ;
  -    
  -    /* XXX Copy jk init code from apache2 */
  +       
  +    jk_env_t *env=jk2_create_config();
       
       /* Logging the initialization type: registry or properties file in virtual dir
       */
  @@ -546,63 +556,9 @@
       env->l->jkLog(env, env->l,  JK_LOG_DEBUG, "Using log file %s.\n", log_file);
       env->l->jkLog(env, env->l,  JK_LOG_DEBUG, "Using log level %d.\n", log_level);
       env->l->jkLog(env, env->l,  JK_LOG_DEBUG, "Using extension uri %s.\n", 
extension_uri);
  -    env->l->jkLog(env, env->l,  JK_LOG_DEBUG, "Using worker file %s.\n", 
worker_file);
  -    env->l->jkLog(env, env->l,  JK_LOG_DEBUG, "Using worker mount file %s.\n", 
worker_mount_file);
  +    env->l->jkLog(env, env->l,  JK_LOG_DEBUG, "Using server root %s.\n", 
server_root);
  +//    env->l->jkLog(env, env->l,  JK_LOG_DEBUG, "Using worker mount file %s.\n", 
worker_mount_file);
       env->l->jkLog(env, env->l,  JK_LOG_DEBUG, "Using uri select %d.\n", 
uri_select_option);
  -/*
  -    if (map_alloc(&map)) {
  -        if (map_read_properties(map, worker_mount_file)) {
  -            jk_map_t *map2;
  -            if (map_alloc(&map2)) {
  -                int sz,i;
  -                void* old;
  -
  -                sz = map_size(map);
  -                for(i = 0; i < sz ; i++) {
  -                    char *name = map_name_at(map, i);
  -                    if ('/' == *name) {
  -                        map_put(map2, name, map_value_at(map, i), &old);
  -                    } else {
  -                        env->l->jkLog(env, env->l,  JK_LOG_DEBUG,
  -                               "Ignoring worker mount file entry %s=%s.\n",
  -                               name, map_value_at(map, i));
  -                    }
  -                }
  -
  -                if (uri_worker_map_alloc(&uw_map, map2, logger)) {
  -                    rc = JK_TRUE;
  -                }
  -
  -                map_free(&map2);
  -            }
  -        } else {
  -            env->l->jkLog(env, env->l,  JK_LOG_EMERG, 
  -                    "Unable to read worker mount file %s.\n", 
  -                    worker_mount_file);
  -        }
  -        map_free(&map);
  -    }
  -    if (rc) {
  -        rc = JK_FALSE;
  -        if (map_alloc(&map)) {
  -            if (map_read_properties(map, worker_file)) {
  -
  -                worker_env.uri_to_worker = uw_map;
  -                worker_env.server_name = serverName;
  -
  -                if (wc_open(map, &worker_env, logger)) {
  -                    rc = JK_TRUE;
  -                }
  -            } else {
  -                env->l->jkLog(env, env->l,  JK_LOG_EMERG, 
  -                        "Unable to read worker file %s.\n", 
  -                        worker_file);
  -            }
  -            map_free(&map);
  -        }
  -    }
  -*/
  -
       return rc;
   }
   
  @@ -641,6 +597,7 @@
       char *tmp;
       jk_map_t *map;
   
  +/*
       if (map_alloc(&map)) {
           if (map_read_properties(map, ini_file_name)) {
               using_ini_file = JK_TRUE;
  @@ -655,7 +612,7 @@
           }
           tmp = map_get_string(map, JK_LOG_LEVEL_TAG, NULL);
           if (tmp) {
  -            log_level = jk_parse_log_level(tmp);
  +            log_level = jk2_logger_file_parseLogLevel(tmp);
           } else {
               ok = JK_FALSE;
           }
  @@ -665,15 +622,9 @@
           } else {
               ok = JK_FALSE;
           }
  -        tmp = map_get_string(map, JK_WORKER_FILE_TAG, NULL);
  -        if (tmp) {
  -            strcpy(worker_file, tmp);
  -        } else {
  -            ok = JK_FALSE;
  -        }
  -        tmp = map_get_string(map, JK_MOUNT_FILE_TAG, NULL);
  +        tmp = map_get_string(map, SERVER_ROOT_TAG, NULL);
           if (tmp) {
  -            strcpy(worker_mount_file, tmp);
  +            strcpy(server_root, tmp);
           } else {
               ok = JK_FALSE;
           }
  @@ -687,7 +638,7 @@
               }
           }
       
  -    } else {
  +    } else */ {
           rc = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
                             REGISTRY_LOCATION,
                             (DWORD)0,
  @@ -710,7 +661,7 @@
                                            JK_LOG_LEVEL_TAG,
                                            tmpbuf,
                                            sizeof(tmpbuf))) {
  -            log_level = jk_parse_log_level(tmpbuf);
  +            log_level = jk2_logger_file_parseLogLevel(tmpbuf);
           } else {
               ok = JK_FALSE;
           }
  @@ -725,6 +676,15 @@
           }
   
           if(get_registry_config_parameter(hkey,
  +                                         SERVER_ROOT_TAG,
  +                                         tmpbuf,
  +                                         sizeof(server_root))) {
  +            strcpy(server_root, tmpbuf);
  +        } else {
  +            ok = JK_FALSE;
  +        }
  +/*
  +        if(get_registry_config_parameter(hkey,
                                            JK_WORKER_FILE_TAG,
                                            tmpbuf,
                                            sizeof(worker_file))) {
  @@ -741,7 +701,7 @@
           } else {
               ok = JK_FALSE;
           }
  -
  +*/
           if(get_registry_config_parameter(hkey,
                                            URI_SELECT_TAG, 
                                            tmpbuf,
  @@ -788,12 +748,12 @@
    */
   
   
  -static  void  jk2_create_workerEnv (LPEXTENSION_CONTROL_BLOCK *s) {
  -    jk_env_t *env;
  +static  jk_env_t*  jk2_create_workerEnv (void) {
  +
       jk_logger_t *l;
       jk_pool_t *globalPool;
       jk_bean_t *jkb;
  -    
  +    jk_env_t *env;
       /** First create a pool. Compile time option
        */
       jk2_pool_create( NULL, &globalPool, NULL, 2048 );
  @@ -823,46 +783,38 @@
       
       if( workerEnv==NULL ) {
           env->l->jkLog(env, env->l, JK_LOG_ERROR, "Error creating workerEnv\n");
  -        return;
  +        return env;
       }
   
   /* XXX 
        
        Detect install dir, be means of service configs, */
   
  -/* 
  -workerEnv->initData->add( env, workerEnv->initData, "serverRoot",
  -                              workerEnv->pool->pstrdup( env, workerEnv->pool, 
ap_server_root));
  -    env->l->jkLog(env, env->l, JK_LOG_ERROR, "Set serverRoot %s\n", ap_server_root);
  -
  -*/
       
  -    /* Local initialization */
  -    workerEnv->_private = s;
  +    workerEnv->initData->add( env, workerEnv->initData, "serverRoot",
  +                              workerEnv->pool->pstrdup( env, workerEnv->pool, 
server_root));
  +    env->l->jkLog(env, env->l, JK_LOG_ERROR, "Set serverRoot %s\n", server_root);
  +
  +    return env;
   }
   
  -static void *jk2_create_config(LPEXTENSION_CONTROL_BLOCK *s)
  +static jk_env_t * jk2_create_config()
   {
       jk_uriEnv_t *newUri;
       jk_bean_t *jkb;
  -
  +    jk_env_t *env;
       if(  workerEnv==NULL ) {
  -        jk2_create_workerEnv( s );
  +        env=jk2_create_workerEnv();
       }
  -/*    if( s->is_virtual == 1 ) {
  -        /* Virtual host */
  -//        fprintf( stderr, "Create config for virtual host\n");
  -//    } else  {
  -        /* Default host */
  -        fprintf( stderr, "Create config for main host\n");        
  -//    }
  +
  +    env->l->jkLog(env, env->l, JK_LOG_ERROR, "JK2 Config Created");
   
       jkb = workerEnv->globalEnv->createBean2( workerEnv->globalEnv,
                                                workerEnv->pool,
                                                "uri", NULL );
  -   newUri=jkb->object;
  +    newUri=jkb->object;
      
  -   newUri->workerEnv=workerEnv;
  +    newUri->workerEnv=workerEnv;
       
  -   return newUri;
  +    return env;
   }
  
  
  
  1.8       +1 -1      
jakarta-tomcat-connectors/jk/native2/server/isapi/jk_service_iis.c
  
  Index: jk_service_iis.c
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-connectors/jk/native2/server/isapi/jk_service_iis.c,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- jk_service_iis.c  19 Apr 2002 18:48:57 -0000      1.7
  +++ jk_service_iis.c  19 Apr 2002 23:08:53 -0000      1.8
  @@ -508,7 +508,7 @@
       if (s->content_read < s->content_length ||
           (s->is_chunked && ! s->no_more_chunks)) {
   
  -                LPEXTENSION_CONTROL_BLOCK  
lpEcb=(LPEXTENSION_CONTROL_BLOCK)s->ws_private;
  +        LPEXTENSION_CONTROL_BLOCK  lpEcb=(LPEXTENSION_CONTROL_BLOCK)s->ws_private;
   
           char *buff = s->pool->calloc(env,s->pool, 2048);
           if (buff != NULL) {
  
  
  

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

Reply via email to