Annotation of embedaddon/php/ext/fileinfo/tests/bug61964.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Bug #61964 (finfo_open with directory cause invalid free)
        !             3: --SKIPIF--
        !             4: <?php require_once(dirname(__FILE__) . '/skipif.inc'); ?>
        !             5: --FILE--
        !             6: <?php
        !             7: 
        !             8: $magic_file = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'magic';
        !             9: 
        !            10: $ret = @finfo_open(FILEINFO_NONE, $magic_file . ".non-exits");
        !            11: var_dump($ret);
        !            12: 
        !            13: $dir = __DIR__ . "/test-folder";
        !            14: @mkdir($dir);
        !            15: 
        !            16: $magic_file_copy = $dir . "/magic.copy";
        !            17: $magic_file_copy2 = $magic_file_copy . "2";
        !            18: copy($magic_file, $magic_file_copy);
        !            19: copy($magic_file, $magic_file_copy2);
        !            20: 
        !            21: $ret = finfo_open(FILEINFO_NONE, $dir);
        !            22: var_dump($ret);
        !            23: 
        !            24: $ret = @finfo_open(FILEINFO_NONE, $dir);
        !            25: var_dump($ret);
        !            26: 
        !            27: $ret = @finfo_open(FILEINFO_NONE, $dir. "/non-exits-dir");
        !            28: var_dump($ret);
        !            29: 
        !            30: // write some test files to test folder
        !            31: file_put_contents($dir . "/test1.txt", "string\n> Core\n> Me");
        !            32: file_put_contents($dir . "/test2.txt", "a\nb\n");
        !            33: @mkdir($dir . "/test-inner-folder");
        !            34: 
        !            35: finfo_open(FILEINFO_NONE, $dir);
        !            36: echo "DONE: testing dir with files\n";
        !            37: 
        !            38: rmdir($dir . "/test-inner-folder");
        !            39: unlink($dir . "/test1.txt");
        !            40: unlink($dir . "/test2.txt");
        !            41: 
        !            42: unlink($magic_file_copy);
        !            43: unlink($magic_file_copy2);
        !            44: rmdir($dir);
        !            45: ?>
        !            46: ===DONE===
        !            47: --EXPECTF--
        !            48: bool(false)
        !            49: resource(%d) of type (file_info)
        !            50: resource(%d) of type (file_info)
        !            51: bool(false)
        !            52: 
        !            53: Notice: finfo_open(): Warning: offset `string' invalid in %sbug61964.php on line %d
        !            54: 
        !            55: Notice: finfo_open(): Warning: offset ` Core' invalid in %sbug61964.php on line %d
        !            56: 
        !            57: Notice: finfo_open(): Warning: type `Core' invalid in %sbug61964.php on line %d
        !            58: 
        !            59: Notice: finfo_open(): Warning: offset `a' invalid in %sbug61964.php on line %d
        !            60: 
        !            61: Notice: finfo_open(): Warning: type `a' invalid in %sbug61964.php on line %d
        !            62: 
        !            63: Notice: finfo_open(): Warning: offset `b' invalid in %sbug61964.php on line %d
        !            64: 
        !            65: Notice: finfo_open(): Warning: type `b' invalid in %sbug61964.php on line %d
        !            66: 
        !            67: Warning: finfo_open(): Failed to load magic database at '%stest-folder'. in %sbug61964.php on line %d
        !            68: DONE: testing dir with files
        !            69: ===DONE===

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>