nacho 02/05/18 15:38:11 Modified: jk/native2/server/isapi jk_isapi_plugin.c Log: * Better messages * Adding some more checks when allocating maps Revision Changes Path 1.16 +94 -104 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.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- jk_isapi_plugin.c 11 May 2002 01:44:13 -0000 1.15 +++ jk_isapi_plugin.c 18 May 2002 22:38:11 -0000 1.16 @@ -60,7 +60,7 @@ * Author: Gal Shachor <[EMAIL PROTECTED]> * * Author: Larry Isaacs <[EMAIL PROTECTED]> * * Author: Ignacio J. Ortega <[EMAIL PROTECTED]> * - * Version: $Revision: 1.15 $ * + * Version: $Revision: 1.16 $ * ***************************************************************************/ // This define is needed to include wincrypt,h, needed to get client certificates @@ -82,10 +82,10 @@ #include "jk_iis.h" //#include "jk_uri_worker_map.h" -#define WORKERS_FILE_TAG ("worker_file") -#define SERVER_ROOT_TAG ("server_root") -#define URI_SELECT_TAG ("uri_select") -#define EXTENSION_URI_TAG ("extension_uri") +#define SERVER_ROOT_TAG ("serverRoot") +#define URI_SELECT_TAG ("uriSelect") +#define EXTENSION_URI_TAG ("extensionUri") +#define WORKERS_FILE_TAG ("workersFile") #define URI_SELECT_PARSED_VERB ("parsed") #define URI_SELECT_UNPARSED_VERB ("unparsed") @@ -116,9 +116,9 @@ static int init_jk(char *serverName); -static int initialize_extension(void); +static int initialize_extension(); -static int read_registry_init_data(void); +static int read_registry_init_data(jk_env_t *env); static int get_registry_config_parameter(HKEY hkey, const char *tag, @@ -556,12 +556,11 @@ { int rc = JK_FALSE; - jk_env_t *env=jk2_create_config(); - - rc=(JK_OK == workerEnv->config->setPropertyString( env, workerEnv->config, "config.file", worker_file )); - + jk_env_t *env = workerEnv->globalEnv->getEnv( workerEnv->globalEnv ); /* Logging the initialization type: registry or properties file in virtual dir */ +// rc=(JK_OK == workerEnv->config->update( env, workerEnv->config, NULL)); + rc=(JK_OK == workerEnv->config->setPropertyString( env, workerEnv->config, "config.file", worker_file )); if (using_ini_file) { env->l->jkLog(env, env->l, JK_LOG_DEBUG, "Using ini file %s.\n", ini_file_name); } else { @@ -577,9 +576,13 @@ return rc; } -static int initialize_extension(void) +static int initialize_extension() { - if (read_registry_init_data()) { + jk_env_t *env=jk2_create_config(); + if (read_registry_init_data(env)) { + 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); is_inited = JK_TRUE; } return is_inited; @@ -602,106 +605,99 @@ return -1; } -static int read_registry_init_data(void) +static int read_registry_init_data(jk_env_t *env) { char tmpbuf[INTERNET_MAX_URL_LENGTH]; HKEY hkey; long rc; int ok = JK_TRUE; -/* char *tmp; jk_map_t *map; - - if (map_alloc(&map)) { - if (map_read_properties(map, ini_file_name)) { - using_ini_file = JK_TRUE; - } - } - if (using_ini_file) { - tmp = map_get_string(map, JK_LOG_FILE_TAG, NULL); - if (tmp) { - strcpy(log_file, tmp); - } else { - ok = JK_FALSE; - } - tmp = map_get_string(map, JK_LOG_LEVEL_TAG, NULL); - if (tmp) { - log_level = jk2_logger_file_parseLogLevel(tmp); - } else { - ok = JK_FALSE; - } - tmp = map_get_string(map, EXTENSION_URI_TAG, NULL); - if (tmp) { - strcpy(extension_uri, tmp); - } else { - ok = JK_FALSE; - } - tmp = map_get_string(map, SERVER_ROOT_TAG, NULL); - if (tmp) { - strcpy(server_root, tmp); - } else { - ok = JK_FALSE; - } - tmp = map_get_string(map, URI_SELECT_TAG, NULL); - if (tmp) { - int opt = parse_uri_select(tmp); - if (opt >= 0) { - uri_select_option = opt; + + if (JK_OK==jk2_map_default_create(env, &map, workerEnv->pool )) { + if (JK_OK==jk2_map_read(env,map, ini_file_name)) { + tmp = map->get(env,map,EXTENSION_URI_TAG); + if (tmp) { + strcpy(extension_uri, tmp); } else { ok = JK_FALSE; } - } - - } else */{ - rc = RegOpenKeyEx(HKEY_LOCAL_MACHINE, - REGISTRY_LOCATION, - (DWORD)0, - KEY_READ, - &hkey); - if(ERROR_SUCCESS != rc) { - return JK_FALSE; - } - - if(get_registry_config_parameter(hkey, - EXTENSION_URI_TAG, - tmpbuf, - sizeof(extension_uri))) { - strcpy(extension_uri, tmpbuf); - } else { - ok = JK_FALSE; - } - - 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))) { - strcpy(worker_file, tmpbuf); - } else { - ok = JK_FALSE; - } - - if(get_registry_config_parameter(hkey, - URI_SELECT_TAG, - tmpbuf, - sizeof(tmpbuf))) { - int opt = parse_uri_select(tmpbuf); - if (opt >= 0) { - uri_select_option = opt; + tmp = map->get(env,map,SERVER_ROOT_TAG); + if (tmp) { + strcpy(server_root, tmp); } else { ok = JK_FALSE; } - } + tmp = map->get(env,map,WORKERS_FILE_TAG); + if (tmp) { + strcpy(worker_file, tmp); + } else { + ok = JK_FALSE; + } + tmp = map->get(env,map,URI_SELECT_TAG); + if (tmp) { + int opt = parse_uri_select(tmp); + if (opt >= 0) { + uri_select_option = opt; + } else { + ok = JK_FALSE; + } + } + using_ini_file=JK_TRUE; + return ok; + } + } else { + env->l->jkLog(env, env->l, JK_LOG_ERROR, + "read_registry_init_data, Failed to create map \n"); + } + rc = RegOpenKeyEx(HKEY_LOCAL_MACHINE, + REGISTRY_LOCATION, + (DWORD)0, + KEY_READ, + &hkey); + if(ERROR_SUCCESS != rc) { + env->l->jkLog(env, env->l, JK_LOG_ERROR, + "read_registry_init_data, Failed Registry OpenKey %s\n",REGISTRY_LOCATION); + return JK_FALSE; + } - RegCloseKey(hkey); + if(get_registry_config_parameter(hkey, + EXTENSION_URI_TAG, + tmpbuf, + sizeof(extension_uri))) { + strcpy(extension_uri, tmpbuf); + } else { + ok = JK_FALSE; + } + + 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, + WORKERS_FILE_TAG, + tmpbuf, + sizeof(server_root))) { + strcpy(worker_file, tmpbuf); + } else { + ok = JK_FALSE; } + if(get_registry_config_parameter(hkey, + URI_SELECT_TAG, + tmpbuf, + sizeof(tmpbuf))) { + int opt = parse_uri_select(tmpbuf); + if (opt >= 0) { + uri_select_option = opt; + } else { + ok = JK_FALSE; + } + } + RegCloseKey(hkey); return ok; } @@ -777,17 +773,11 @@ Detect install dir, be means of service configs, */ - 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 jk_env_t * jk2_create_config() { - jk_uriEnv_t *newUri; - jk_bean_t *jkb; jk_env_t *env; if( workerEnv==NULL ) { env=jk2_create_workerEnv();
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>