tony2001 Thu Dec 28 12:19:21 2006 UTC Modified files: (Branch: PHP_4_4) /php-src/main php_ini.c Log: MFH http://cvs.php.net/viewvc.cgi/php-src/main/php_ini.c?r1=1.106.2.15.2.2&r2=1.106.2.15.2.3&diff_format=u Index: php-src/main/php_ini.c diff -u php-src/main/php_ini.c:1.106.2.15.2.2 php-src/main/php_ini.c:1.106.2.15.2.3 --- php-src/main/php_ini.c:1.106.2.15.2.2 Sun Jan 1 13:46:59 2006 +++ php-src/main/php_ini.c Thu Dec 28 12:19:21 2006 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_ini.c,v 1.106.2.15.2.2 2006/01/01 13:46:59 sniper Exp $ */ +/* $Id: php_ini.c,v 1.106.2.15.2.3 2006/12/28 12:19:21 tony2001 Exp $ */ /* Check CWD for php.ini */ #define INI_CHECK_CWD @@ -280,10 +280,12 @@ php_ini_search_path = sapi_module.php_ini_path_override; free_ini_search_path = 0; } else { + int search_path_size; char *default_location; static const char paths_separator[] = { ZEND_PATHS_SEPARATOR, 0 }; - php_ini_search_path = (char *) emalloc(MAXPATHLEN * NUM_INI_SEARCH_LOCATIONS + strlen(env_location) + NUM_INI_SEARCH_LOCATIONS + 1); + search_path_size = MAXPATHLEN * NUM_INI_SEARCH_LOCATIONS + strlen(env_location) + NUM_INI_SEARCH_LOCATIONS + 1; + php_ini_search_path = (char *) emalloc(search_path_size); free_ini_search_path = 1; php_ini_search_path[0] = 0; @@ -294,18 +296,18 @@ /* Add environment location */ if (env_location[0]) { if (*php_ini_search_path) { - strcat(php_ini_search_path, paths_separator); + strlcat(php_ini_search_path, paths_separator, search_path_size); } - strcat(php_ini_search_path, env_location); + strlcat(php_ini_search_path, env_location, search_path_size); } #ifdef PHP_WIN32 registry_location = GetIniPathFromRegistry(); if (registry_location) { if (*php_ini_search_path) { - strcat(php_ini_search_path, paths_separator); + strlcat(php_ini_search_path, paths_separator, search_path_size); } - strcat(php_ini_search_path, registry_location); + strlcat(php_ini_search_path, registry_location, search_path_size); efree(registry_location); } #endif @@ -314,9 +316,9 @@ #ifdef INI_CHECK_CWD if (strcmp(sapi_module.name, "cli") != 0) { if (*php_ini_search_path) { - strcat(php_ini_search_path, paths_separator); + strlcat(php_ini_search_path, paths_separator, search_path_size); } - strcat(php_ini_search_path, "."); + strlcat(php_ini_search_path, ".", search_path_size); } #endif @@ -341,9 +343,9 @@ *(separator_location+1) = 0; } if (*php_ini_search_path) { - strcat(php_ini_search_path, paths_separator); + strlcat(php_ini_search_path, paths_separator, search_path_size); } - strcat(php_ini_search_path, binary_location); + strlcat(php_ini_search_path, binary_location, search_path_size); efree(binary_location); } @@ -353,17 +355,17 @@ if (0 < GetWindowsDirectory(default_location, MAXPATHLEN)) { if (*php_ini_search_path) { - strcat(php_ini_search_path, paths_separator); + strlcat(php_ini_search_path, paths_separator, search_path_size); } - strcat(php_ini_search_path, default_location); + strlcat(php_ini_search_path, default_location, search_path_size); } efree(default_location); #else default_location = PHP_CONFIG_FILE_PATH; if (*php_ini_search_path) { - strcat(php_ini_search_path, paths_separator); + strlcat(php_ini_search_path, paths_separator, search_path_size); } - strcat(php_ini_search_path, default_location); + strlcat(php_ini_search_path, default_location, search_path_size); #endif } @@ -468,8 +470,8 @@ php_ini_scanned_files = (char *) malloc(total_l); *php_ini_scanned_files = '\0'; for (element = scanned_ini_list.head; element; element = element->next) { - strcat(php_ini_scanned_files, *(char **)element->data); - strcat(php_ini_scanned_files, element->next ? ",\n" : "\n"); + strlcat(php_ini_scanned_files, *(char **)element->data, total_l); + strlcat(php_ini_scanned_files, element->next ? ",\n" : "\n", total_l); } } zend_llist_destroy(&scanned_ini_list);
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php