]> granicus.if.org Git - php/commitdiff
MFH
authorIlia Alshanetsky <iliaa@php.net>
Tue, 20 May 2003 00:37:13 +0000 (00:37 +0000)
committerIlia Alshanetsky <iliaa@php.net>
Tue, 20 May 2003 00:37:13 +0000 (00:37 +0000)
ext/pdf/pdf.c

index 2913f9280440b0fc529dc5a6ecc8a7e792c08f19..f10ba4e85858cfa0c94a547a8295c5a04b0d8bcb 100644 (file)
@@ -1837,7 +1837,11 @@ static void _php_pdf_open_image(INTERNAL_FUNCTION_PARAMETERS, char *type)
 #else
        image = Z_STRVAL_PP(arg2);
 #endif  
-        
+
+       if (php_check_open_basedir(image TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(image, "rb+", CHECKUID_CHECK_MODE_PARAM))) {
+               RETURN_FALSE;
+       }
+
        pdf_image = PDF_open_image_file(pdf, type, image, "", 0);
 
        RETURN_LONG(pdf_image+PDFLIB_IMAGE_OFFSET);
@@ -1911,6 +1915,10 @@ PHP_FUNCTION(pdf_open_image_file)
        image = Z_STRVAL_PP(arg3);
 #endif  
 
+       if (php_check_open_basedir(image TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(image, "rb+", CHECKUID_CHECK_MODE_PARAM))) {
+               RETURN_FALSE;
+       }
+
        if (argc == 3) {
                pdf_image = PDF_open_image_file(pdf, Z_STRVAL_PP(arg2), image, "", 0);
        } else {
@@ -2539,6 +2547,10 @@ PHP_FUNCTION(pdf_open_ccitt)
        image = Z_STRVAL_PP(arg2);
 #endif  
 
+       if (php_check_open_basedir(image TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(image, "rb+", CHECKUID_CHECK_MODE_PARAM))) {
+               RETURN_FALSE;
+       }
+
        convert_to_long_ex(arg3);
        convert_to_long_ex(arg4);
        convert_to_long_ex(arg5);
@@ -2588,6 +2600,10 @@ PHP_FUNCTION(pdf_open_image)
        image = Z_STRVAL_PP(arg4);
 #endif  
 
+       if (php_check_open_basedir(image TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(image, "rb+", CHECKUID_CHECK_MODE_PARAM))) {
+               RETURN_FALSE;
+       }
+
        pdf_image = PDF_open_image(pdf,
                Z_STRVAL_PP(arg2),
                Z_STRVAL_PP(arg3),
@@ -2626,6 +2642,10 @@ PHP_FUNCTION(pdf_attach_file)
        convert_to_string_ex(arg9);
        convert_to_string_ex(arg10);
 
+       if (php_check_open_basedir(Z_STRVAL_PP(arg6) TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(Z_STRVAL_PP(arg6), "rb+", CHECKUID_CHECK_MODE_PARAM))) {
+               RETURN_FALSE;
+       }
+
        PDF_attach_file(pdf,
                (float) Z_DVAL_PP(arg2),
                (float) Z_DVAL_PP(arg3),
@@ -2766,6 +2786,10 @@ PHP_FUNCTION(pdf_open_pdi)
        file = Z_STRVAL_PP(arg2);
 #endif  
 
+       if (php_check_open_basedir(file TSRMLS_CC) || (PG(safe_mode) && !php_checkuid(file, "rb+", CHECKUID_CHECK_MODE_PARAM))) {
+               RETURN_FALSE;
+       }
+
        pdi_handle = PDF_open_pdi(pdf,
                file,
                Z_STRVAL_PP(arg3),