[PHP-CVS] cvs: php-src /ext/fileinfo/libmagic softmagic.c

2008-08-29 Thread Antony Dovgal
tony2001Fri Aug 29 10:53:07 2008 UTC

  Modified files:  
/php-src/ext/fileinfo/libmagic  softmagic.c 
  Log:
  fix invalid read
  
  weird, the code uses correct order of checks just ten lines below
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/softmagic.c?r1=1.5&r2=1.6&diff_format=u
Index: php-src/ext/fileinfo/libmagic/softmagic.c
diff -u php-src/ext/fileinfo/libmagic/softmagic.c:1.5 
php-src/ext/fileinfo/libmagic/softmagic.c:1.6
--- php-src/ext/fileinfo/libmagic/softmagic.c:1.5   Fri Aug 29 10:10:56 2008
+++ php-src/ext/fileinfo/libmagic/softmagic.c   Fri Aug 29 10:53:07 2008
@@ -131,8 +131,8 @@
 
if ((m->flag & BINTEST) != mode) {
/* Skip sub-tests */
-   while (magic[magindex + 1].cont_level != 0 && 
++magindex < nmagic) {
-   continue;
+   while (magindex < nmagic - 1 && magic[magindex + 
1].cont_level != 0) {
+   magindex++;
}
continue; /* Skip to next top-level test*/
}



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src /ext/fileinfo/libmagic softmagic.c

2008-08-29 Thread Antony Dovgal
tony2001Fri Aug 29 10:10:56 2008 UTC

  Modified files:  
/php-src/ext/fileinfo/libmagic  softmagic.c 
  Log:
  fix ZTS build
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/softmagic.c?r1=1.4&r2=1.5&diff_format=u
Index: php-src/ext/fileinfo/libmagic/softmagic.c
diff -u php-src/ext/fileinfo/libmagic/softmagic.c:1.4 
php-src/ext/fileinfo/libmagic/softmagic.c:1.5
--- php-src/ext/fileinfo/libmagic/softmagic.c:1.4   Fri Aug 29 10:08:30 2008
+++ php-src/ext/fileinfo/libmagic/softmagic.c   Fri Aug 29 10:10:56 2008
@@ -288,6 +288,7 @@
pcre *pce;
int re_options;
pcre_extra *re_extra;
+   TSRMLS_FETCH();

if (strchr(MAGIC_DESC, '%') == NULL) {
return 0;
@@ -1704,6 +1705,7 @@
zval *pattern;
int options = 0;
pcre_cache_entry *pce;
+   TSRMLS_FETCH();

MAKE_STD_ZVAL(pattern);
Z_STRVAL_P(pattern) = (char *)m->value.s;



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-CVS] cvs: php-src /ext/fileinfo/libmagic softmagic.c

2008-08-29 Thread Antony Dovgal
tony2001Fri Aug 29 10:08:31 2008 UTC

  Modified files:  
/php-src/ext/fileinfo/libmagic  softmagic.c 
  Log:
  fix build
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/libmagic/softmagic.c?r1=1.3&r2=1.4&diff_format=u
Index: php-src/ext/fileinfo/libmagic/softmagic.c
diff -u php-src/ext/fileinfo/libmagic/softmagic.c:1.3 
php-src/ext/fileinfo/libmagic/softmagic.c:1.4
--- php-src/ext/fileinfo/libmagic/softmagic.c:1.3   Fri Aug 29 09:50:57 2008
+++ php-src/ext/fileinfo/libmagic/softmagic.c   Fri Aug 29 10:08:30 2008
@@ -1718,7 +1718,7 @@

convert_libmagic_pattern(pattern, options);
 
-   if ((pce = pcre_get_compiled_regex_cache(Z_STRVAL_P(pattern), 
Z_STRLEN_P(pattern) TSRMLS_CC)) == NULL) {
+   if ((pce = pcre_get_compiled_regex_cache(IS_STRING, 
Z_STRVAL_P(pattern), Z_STRLEN_P(pattern) TSRMLS_CC)) == NULL) {
return -1;
} else {
/* pce now contains the compiled regex */
@@ -1733,7 +1733,7 @@
haystack = estrndup(ms->search.s, ms->search.s_len);
 
/* match v = 0, no match v = 1 */
-   php_pcre_match_impl(pce, haystack, ms->search.s_len, 
retval, subpats, 1, 1, PREG_OFFSET_CAPTURE, 0 TSRMLS_CC);
+   php_pcre_match_impl(pce, IS_STRING, haystack, 
ms->search.s_len, retval, subpats, 1, 1, PREG_OFFSET_CAPTURE, 0 TSRMLS_CC);

/* Free haystack */
efree(haystack);



-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php