[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard dl.c
pajoye Wed Jan 7 13:02:44 2009 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/standard dl.c Log: - declaration and impl match http://cvs.php.net/viewvc.cgi/php-src/ext/standard/dl.c?r1=1.106.2.1.2.5.2.9r2=1.106.2.1.2.5.2.10diff_format=u Index: php-src/ext/standard/dl.c diff -u php-src/ext/standard/dl.c:1.106.2.1.2.5.2.9 php-src/ext/standard/dl.c:1.106.2.1.2.5.2.10 --- php-src/ext/standard/dl.c:1.106.2.1.2.5.2.9 Wed Dec 31 11:15:44 2008 +++ php-src/ext/standard/dl.c Wed Jan 7 13:02:43 2009 @@ -18,7 +18,7 @@ +--+ */ -/* $Id: dl.c,v 1.106.2.1.2.5.2.9 2008/12/31 11:15:44 sebastian Exp $ */ +/* $Id: dl.c,v 1.106.2.1.2.5.2.10 2009/01/07 13:02:43 pajoye Exp $ */ #include php.h #include dl.h @@ -51,7 +51,7 @@ /* {{{ proto int dl(string extension_filename) Load a PHP extension at runtime */ -PHP_FUNCTION(dl) +PHPAPI PHP_FUNCTION(dl) { char *filename; int filename_len; -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard dl.c dl.h
felipe Fri May 16 12:18:43 2008 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/standard dl.c dl.h Log: - MFH: Improved fix (used 's' in parameter parsing) http://cvs.php.net/viewvc.cgi/php-src/ext/standard/dl.c?r1=1.106.2.1.2.5.2.7r2=1.106.2.1.2.5.2.8diff_format=u Index: php-src/ext/standard/dl.c diff -u php-src/ext/standard/dl.c:1.106.2.1.2.5.2.7 php-src/ext/standard/dl.c:1.106.2.1.2.5.2.8 --- php-src/ext/standard/dl.c:1.106.2.1.2.5.2.7 Fri May 16 03:01:20 2008 +++ php-src/ext/standard/dl.c Fri May 16 12:18:43 2008 @@ -18,7 +18,7 @@ +--+ */ -/* $Id: dl.c,v 1.106.2.1.2.5.2.7 2008/05/16 03:01:20 felipe Exp $ */ +/* $Id: dl.c,v 1.106.2.1.2.5.2.8 2008/05/16 12:18:43 felipe Exp $ */ #include php.h #include dl.h @@ -53,13 +53,12 @@ Load a PHP extension at runtime */ PHP_FUNCTION(dl) { - zval *filename; + char *filename; + int filename_len; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, z/, filename) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, s, filename, filename_len) == FAILURE) { return; } - - convert_to_string(filename); if (!PG(enable_dl)) { php_error_docref(NULL TSRMLS_CC, E_WARNING, Dynamically loaded extensions aren't enabled); @@ -69,7 +68,7 @@ RETURN_FALSE; } - if (Z_STRLEN_P(filename) = MAXPATHLEN) { + if (filename_len = MAXPATHLEN) { php_error_docref(NULL TSRMLS_CC, E_WARNING, File name exceeds the maximum allowed length of %d characters, MAXPATHLEN); RETURN_FALSE; } @@ -79,10 +78,10 @@ (strncmp(sapi_module.name, embed, 5) != 0) ) { #ifdef ZTS - php_error_docref(NULL TSRMLS_CC, E_WARNING, Not supported in multithreaded Web servers - use extension=%s in your php.ini, Z_STRVAL_P(filename)); + php_error_docref(NULL TSRMLS_CC, E_WARNING, Not supported in multithreaded Web servers - use extension=%s in your php.ini, filename); RETURN_FALSE; #else - php_error_docref(NULL TSRMLS_CC, E_DEPRECATED, dl() is deprecated - use extension=%s in your php.ini, Z_STRVAL_P(filename)); + php_error_docref(NULL TSRMLS_CC, E_DEPRECATED, dl() is deprecated - use extension=%s in your php.ini, filename); #endif } @@ -250,14 +249,10 @@ /* {{{ php_dl */ -PHPAPI void php_dl(zval *file, int type, zval *return_value, int start_now TSRMLS_DC) +PHPAPI void php_dl(char *file, int type, zval *return_value, int start_now TSRMLS_DC) { - char *filename; - - filename = Z_STRVAL_P(file); - /* Load extension */ - if (php_load_extension(filename, type, start_now TSRMLS_CC) == FAILURE) { + if (php_load_extension(file, type, start_now TSRMLS_CC) == FAILURE) { RETVAL_FALSE; } else { RETVAL_TRUE; @@ -272,9 +267,9 @@ #else -PHPAPI void php_dl(zval *file, int type, zval *return_value, int start_now TSRMLS_DC) +PHPAPI void php_dl(char *file, int type, zval *return_value, int start_now TSRMLS_DC) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, Cannot dynamically load %s - dynamic modules are not supported, Z_STRVAL_P(file)); + php_error_docref(NULL TSRMLS_CC, E_WARNING, Cannot dynamically load %s - dynamic modules are not supported, file); RETURN_FALSE; } http://cvs.php.net/viewvc.cgi/php-src/ext/standard/dl.h?r1=1.23.2.1.2.1.2.2r2=1.23.2.1.2.1.2.3diff_format=u Index: php-src/ext/standard/dl.h diff -u php-src/ext/standard/dl.h:1.23.2.1.2.1.2.2 php-src/ext/standard/dl.h:1.23.2.1.2.1.2.3 --- php-src/ext/standard/dl.h:1.23.2.1.2.1.2.2 Mon Dec 31 07:17:14 2007 +++ php-src/ext/standard/dl.h Fri May 16 12:18:43 2008 @@ -18,13 +18,13 @@ +--+ */ -/* $Id: dl.h,v 1.23.2.1.2.1.2.2 2007/12/31 07:17:14 sebastian Exp $ */ +/* $Id: dl.h,v 1.23.2.1.2.1.2.3 2008/05/16 12:18:43 felipe Exp $ */ #ifndef DL_H #define DL_H PHPAPI int php_load_extension(char *filename, int type, int start_now TSRMLS_DC); -PHPAPI void php_dl(zval *file,int type, zval *return_value, int start_now TSRMLS_DC); +PHPAPI void php_dl(char *file, int type, zval *return_value, int start_now TSRMLS_DC); /* dynamic loading functions */ PHP_FUNCTION(dl); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard dl.c
felipe Fri May 16 03:01:20 2008 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/standard dl.c Log: - Added conversion to string. http://cvs.php.net/viewvc.cgi/php-src/ext/standard/dl.c?r1=1.106.2.1.2.5.2.6r2=1.106.2.1.2.5.2.7diff_format=u Index: php-src/ext/standard/dl.c diff -u php-src/ext/standard/dl.c:1.106.2.1.2.5.2.6 php-src/ext/standard/dl.c:1.106.2.1.2.5.2.7 --- php-src/ext/standard/dl.c:1.106.2.1.2.5.2.6 Thu Feb 28 16:59:10 2008 +++ php-src/ext/standard/dl.c Fri May 16 03:01:20 2008 @@ -18,7 +18,7 @@ +--+ */ -/* $Id: dl.c,v 1.106.2.1.2.5.2.6 2008/02/28 16:59:10 dmitry Exp $ */ +/* $Id: dl.c,v 1.106.2.1.2.5.2.7 2008/05/16 03:01:20 felipe Exp $ */ #include php.h #include dl.h @@ -55,9 +55,11 @@ { zval *filename; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, z, filename) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, z/, filename) == FAILURE) { return; } + + convert_to_string(filename); if (!PG(enable_dl)) { php_error_docref(NULL TSRMLS_CC, E_WARNING, Dynamically loaded extensions aren't enabled); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard dl.c
dmitry Thu Feb 28 16:59:10 2008 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/standard dl.c Log: We don't nave to change request shutdown sequence if dl() was failed http://cvs.php.net/viewvc.cgi/php-src/ext/standard/dl.c?r1=1.106.2.1.2.5.2.5r2=1.106.2.1.2.5.2.6diff_format=u Index: php-src/ext/standard/dl.c diff -u php-src/ext/standard/dl.c:1.106.2.1.2.5.2.5 php-src/ext/standard/dl.c:1.106.2.1.2.5.2.6 --- php-src/ext/standard/dl.c:1.106.2.1.2.5.2.5 Sat Feb 23 17:06:21 2008 +++ php-src/ext/standard/dl.c Thu Feb 28 16:59:10 2008 @@ -18,7 +18,7 @@ +--+ */ -/* $Id: dl.c,v 1.106.2.1.2.5.2.5 2008/02/23 17:06:21 helly Exp $ */ +/* $Id: dl.c,v 1.106.2.1.2.5.2.6 2008/02/28 16:59:10 dmitry Exp $ */ #include php.h #include dl.h @@ -85,7 +85,9 @@ } php_dl(filename, MODULE_TEMPORARY, return_value, 0 TSRMLS_CC); - EG(full_tables_cleanup) = 1; + if (Z_LVAL_P(return_value) == 1) { + EG(full_tables_cleanup) = 1; + } } /* }}} */ -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard dl.c
janiFri Nov 9 13:49:15 2007 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/standard dl.c Log: MFH: ws + cs + sync http://cvs.php.net/viewvc.cgi/php-src/ext/standard/dl.c?r1=1.106.2.1.2.5.2.1r2=1.106.2.1.2.5.2.2diff_format=u Index: php-src/ext/standard/dl.c diff -u php-src/ext/standard/dl.c:1.106.2.1.2.5.2.1 php-src/ext/standard/dl.c:1.106.2.1.2.5.2.2 --- php-src/ext/standard/dl.c:1.106.2.1.2.5.2.1 Thu Sep 27 18:00:45 2007 +++ php-src/ext/standard/dl.c Fri Nov 9 13:49:15 2007 @@ -18,7 +18,7 @@ +--+ */ -/* $Id: dl.c,v 1.106.2.1.2.5.2.1 2007/09/27 18:00:45 dmitry Exp $ */ +/* $Id: dl.c,v 1.106.2.1.2.5.2.2 2007/11/09 13:49:15 jani Exp $ */ #include php.h #include dl.h @@ -31,7 +31,6 @@ #if defined(HAVE_LIBDL) || HAVE_MACH_O_DYLD_H #include stdlib.h #include stdio.h - #ifdef HAVE_STRING_H #include string.h #else @@ -48,23 +47,18 @@ #include sys/param.h #define GET_DL_ERROR() DL_ERROR() #endif - #endif /* defined(HAVE_LIBDL) || HAVE_MACH_O_DYLD_H */ - /* {{{ proto int dl(string extension_filename) Load a PHP extension at runtime */ PHP_FUNCTION(dl) { - zval **file; + zval *filename; - /* obtain arguments */ - if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, file) == FAILURE) { - WRONG_PARAM_COUNT; + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, z, filename) == FAILURE) { + return; } - convert_to_string_ex(file); - if (!PG(enable_dl)) { php_error_docref(NULL TSRMLS_CC, E_WARNING, Dynamically loaded extensions aren't enabled); RETURN_FALSE; @@ -73,14 +67,15 @@ RETURN_FALSE; } - if (Z_STRLEN_PP(file) = MAXPATHLEN) { + if (Z_STRLEN_P(filename) = MAXPATHLEN) { php_error_docref(NULL TSRMLS_CC, E_WARNING, File name exceeds the maximum allowed length of %d characters, MAXPATHLEN); RETURN_FALSE; } - if ((strncmp(sapi_module.name, cgi, 3)!=0) - (strcmp(sapi_module.name, cli)!=0) - (strncmp(sapi_module.name, embed, 5)!=0)) { + if ((strncmp(sapi_module.name, cgi, 3) != 0) + (strcmp(sapi_module.name, cli) != 0) + (strncmp(sapi_module.name, embed, 5) != 0) + ) { #ifdef ZTS php_error_docref(NULL TSRMLS_CC, E_WARNING, Not supported in multithreaded Web servers - use extension=%s in your php.ini, Z_STRVAL_PP(file)); RETURN_FALSE; @@ -89,13 +84,11 @@ #endif } - php_dl(*file, MODULE_TEMPORARY, return_value, 0 TSRMLS_CC); + php_dl(filename, MODULE_TEMPORARY, return_value, 0 TSRMLS_CC); EG(full_tables_cleanup) = 1; } - /* }}} */ - #if defined(HAVE_LIBDL) || HAVE_MACH_O_DYLD_H #ifdef ZTS @@ -114,6 +107,8 @@ zend_module_entry *(*get_module)(void); int error_type; char *extension_dir; + char *filename; + int filename_len; if (type == MODULE_PERSISTENT) { extension_dir = INI_STR(extension_dir); @@ -127,23 +122,26 @@ error_type = E_CORE_WARNING; } + filename = Z_STRVAL_P(file); + filename_len = Z_STRLEN_P(file); + if (extension_dir extension_dir[0]){ int extension_dir_len = strlen(extension_dir); if (type == MODULE_TEMPORARY) { - if (strchr(Z_STRVAL_P(file), '/') != NULL || strchr(Z_STRVAL_P(file), DEFAULT_SLASH) != NULL) { + if (strchr(filename, '/') != NULL || strchr(filename, DEFAULT_SLASH) != NULL) { php_error_docref(NULL TSRMLS_CC, E_WARNING, Temporary module name should contain only filename); RETURN_FALSE; } } if (IS_SLASH(extension_dir[extension_dir_len-1])) { - spprintf(libpath, 0, %s%s, extension_dir, Z_STRVAL_P(file)); + spprintf(libpath, 0, %s%s, extension_dir, filename); /* SAFE */ } else { - spprintf(libpath, 0, %s%c%s, extension_dir, DEFAULT_SLASH, Z_STRVAL_P(file)); + spprintf(libpath, 0, %s%c%s, extension_dir, DEFAULT_SLASH, filename); /* SAFE */ } } else { - libpath = estrndup(Z_STRVAL_P(file), Z_STRLEN_P(file)); + libpath = estrndup(filename, filename_len); } /* load dynamic symbol */ @@ -159,42 +157,43 @@ get_module = (zend_module_entry *(*)(void)) DL_FETCH_SYMBOL(handle, get_module); - /* -* some OS prepend _ to symbol names while their dynamic linker + /* Some OS prepend _ to symbol names while their dynamic linker * does not do that automatically. Thus we check manually for -*