Exemplo n.º 1
0
function test_bzwrite()
{
    global $tmpfile;
    $str = "HipHop for";
    $bz = bzopen($tmpfile, "w");
    VERIFY($bz !== false);
    VS(bzwrite($bz, $str), 10);
    bzflush($bz);
    VERIFY(bzclose($bz));
    $bz = bzopen($tmpfile, "r");
    $ret = bzread($bz, 10000);
    VS($ret, $str);
    VERIFY(bzclose($bz));
    VS($ret, $str);
    unlink($tmpfile);
}
Exemplo n.º 2
0
function test_eregi()
{
    $str = "XYZ";
    VERIFY(eregi("z", $str) !== false);
}
Exemplo n.º 3
0
function test_openssl_x509_read()
{
    $fcert = file_get_contents(__DIR__ . "/test_x509.crt");
    $cert = openssl_x509_read($fcert);
    VERIFY($cert != null);
}
Exemplo n.º 4
0
VERIFY(posix_getpid());
VERIFY(posix_getppid());
$ret = posix_getpwnam("root");
VERIFY($ret != false);
VERIFY(count((array) $ret) != 0);
VS(posix_getpwnam(""), false);
VS(posix_getpwnam(-1), false);
$ret = posix_getpwuid(0);
VERIFY($ret != false);
VERIFY(count((array) $ret) != 0);
VS(posix_getpwuid(-1), false);
$ret = posix_getrlimit();
VERIFY($ret != false);
VERIFY(count((array) $ret) != 0);
VERIFY(posix_getsid(posix_getpid()));
$tmpfifo = tempnam('/tmp', 'vmmkfifotest');
unlink($tmpfifo);
VERIFY(posix_mkfifo($tmpfifo, 0));
$tmpnod = tempnam('/tmp', 'vmmknodtest');
unlink($tmpnod);
VERIFY(posix_mknod($tmpnod, 0));
VERIFY(posix_setpgid(0, 0));
VERIFY(posix_setsid());
VERIFY(strlen(posix_strerror(1)));
$ret = posix_times();
VERIFY($ret != false);
VERIFY(count((array) $ret) != 0);
$ret = posix_uname();
VERIFY($ret != false);
VERIFY(count((array) $ret) != 0);
Exemplo n.º 5
0
function test_stream_socket_shutdown()
{
    list($port, $address, $server) = retry_bind_server();
    VERIFY(stream_socket_shutdown($server, 0));
}
Exemplo n.º 6
0
fclose($pipes[0]);
fpassthru($pipes[1]);
VS(proc_close($process), 0);
$descriptorspec = array(array("pipe", "r"), array("pipe", "w"), array("file", $errout, "a"));
$process = proc_open('cat', $descriptorspec, $pipes);
VERIFY($process != false);
VERIFY(proc_terminate($process));
// still need to close it, not to leave a zombie behind
proc_close($process);
$process = proc_open('cat', $descriptorspec, $pipes);
VERIFY($process != false);
$ret = proc_get_status($process);
VS($ret['command'], 'cat');
VERIFY($ret['pid'] > 0);
VERIFY($ret['running']);
VERIFY(!$ret['signaled']);
VS($ret['exitcode'], -1);
VS($ret['termsig'], 0);
VS($ret['stopsig'], 0);
proc_close($process);
VERIFY(proc_nice(0));
VS(escapeshellarg("\""), "'\"'");
VS(escapeshellcmd("perl \""), "perl \\\"");
$nullbyte = "echo abc\ncommand";
VS(passthru($nullbyte), null);
VS(system($nullbyte), "");
VS(exec($nullbyte, $nullbyteout), "");
VS($nullbyteout, null);
VS(shell_exec($nullbyte), null);
$process = proc_open($nullbyte, array(), $pipes);
VS($process, false);
Exemplo n.º 7
0
$u = nzuncompress($t);
VS($u, $s);
$compressable = str_repeat('\\0', 1024);
$bs = $compressable;
$bt = nzcompress($bs);
VERIFY(strlen($bt) < strlen($bs));
$bu = nzuncompress($bt);
VS($bu, $bs);
VS(count($bu), count($bs));
//////////////////////////////////////////////////////////////////////
$s = "garbage stuff";
$v = nzuncompress($s);
VERIFY($v == false);
$empty = "";
$c = nzcompress($empty);
$d = nzuncompress($c);
VERIFY($d == $empty);
VS(lz4_uncompress(lz4_compress("testing lz4_compress")), "testing lz4_compress");
VS(lz4_uncompress(lz4_hccompress("testing lz4_hccompress")), "testing lz4_hccompress");
// first test uncompressing invalid string
$s = "invalid compressed string";
$v = lz4_uncompress($s);
VERIFY($v == false);
// try uncompressing empty string
$empty = "";
$v = lz4_uncompress($empty);
VERIFY($v == false);
$c = lz4_compress($empty);
$d = lz4_uncompress($c);
VERIFY($d == $empty);
Exemplo n.º 8
0
$stmt = $db->prepare("SELECT * FROM foo WHERE bar = :id");
VS($stmt->paramcount(), 1);
$id = "DEF";
VERIFY($stmt->bindvalue(":id", $id, SQLITE3_TEXT));
$id = "ABC";
$res = $stmt->execute();
VS($res->fetcharray(SQLITE3_NUM), array("DEF"));
VERIFY($stmt->clear());
VERIFY($stmt->reset());
$id = "DEF";
VERIFY($stmt->bindparam(":id", $id, SQLITE3_TEXT));
$id = "ABC";
$res = $stmt->execute();
VS($res->fetcharray(SQLITE3_NUM), array("ABC"));
VERIFY($db->createfunction("tolower", "lower", 1));
$res = $db->query("SELECT tolower(bar) FROM foo");
VS($res->fetcharray(SQLITE3_NUM), array("abc"));
VERIFY($db->createaggregate("sumlen", "sumlen_step", "sumlen_fini", 1));
$res = $db->query("SELECT sumlen(bar) FROM foo");
VS($res->fetcharray(SQLITE3_NUM), array(6));
// Since minor version can change frequently, just test the major version
VS($db->version()['versionString'][0], "3");
VERIFY((int) $db->version()['versionNumber'] > (int) 3000000);
$db->close();
unlink(":memory:test");
// Check that a PHP Exception is thrown for nonexistant databases
try {
    new SQLite3('/' . uniqid('random', true) . '/db');
} catch (Exception $e) {
    var_dump(true);
}
Exemplo n.º 9
0
function VS($x, $y)
{
    var_dump($x === $y);
    if ($x !== $y) {
        echo "Failed: {$y}\n";
        echo "Got: {$x}\n";
        var_dump(debug_backtrace());
    }
}
function VERIFY($x)
{
    VS($x, true);
}
//////////////////////////////////////////////////////////////////////
VERIFY(connection_aborted() != true);
VERIFY(connection_status() == CONNECTION_NORMAL);
VERIFY(connection_timeout() != true);
constant("a");
VERIFY(defined("a") != true);
__halt_compiler();
ignore_user_abort("a");
VERIFY(empty(uniqid()) != true);
VS(token_name(258), "T_REQUIRE_ONCE");
VS(count(sys_getloadavg()), 3);

$src = "blarb <?php 1";
VS(token_get_all(src),
   array(array(T_INLINE_HTML, "blarb ", 1),
         array(T_OPEN_TAG, "<?php", 1)));
Exemplo n.º 10
0
VS(boolval(42), true);
VS(boolval(0.0), false);
VS(boolval(4.2), true);
VS(boolval(""), false);
VS(boolval("string"), true);
VS(boolval("0"), false);
VS(boolval("1"), true);
VS(boolval(array(1, 2)), true);
VS(boolval(array()), false);
VS(boolval(new stdClass()), true);
$v = "5bar";
VERIFY(settype($v, "integer"));
VS($v, 5);
$v = true;
VERIFY(settype($v, "string"));
VS($v, "1");
$obj = new stdclass();
$obj->name = "value";
VS(serialize($obj), "O:8:\"stdClass\":1:{s:4:\"name\";s:5:\"value\";}");
$v = array("a" => "apple", "b" => 2, "c" => array(1, "y", 3));
VS(serialize($v), "a:3:{s:1:\"a\";s:5:\"apple\";s:1:\"b\";i:2;s:1:\"c\";a:3:{i:0;i:1;i:1;s:1:\"y\";i:2;i:3;}}");
$v = unserialize("O:8:\"stdClass\":1:{s:4:\"name\";s:5:\"value\";}");
VERIFY(is_object($v));
VS($v->name, "value");
$v = unserialize("O:8:\"stdClass\":1:{s:7:\"*name\";s:5:\"value\";}");
VERIFY(is_object($v));
VS($v->name, null);
$v1 = array("a" => "apple", "b" => 2, "c" => array(1, "y", 3));
$v2 = unserialize("a:3:{s:1:\"a\";s:5:\"apple\";s:1:\"b\";i:2;s:1:\"c\";a:3:{i:0;i:1;i:1;s:1:\"y\";i:2;i:3;}}");
VS($v1, $v2);
get_defined_vars();
Exemplo n.º 11
0
try {
    $dbh = new PDO($source);
    $dbh->query("CREATE TABLE IF NOT EXISTS foobar (id INT)");
    $dbh->query("INSERT INTO foobar (id) VALUES (1)");
    $stmt = $dbh->query("SELECT id FROM foobar LIMIT 1");
    $ret = $stmt->fetch();
    VS($ret['id'], "1");
} catch (Exception $e) {
    VS($e, null);
}
try {
    $dbh = new PDO($source);
    VERIFY($dbh != null);
    $stmt = $dbh->prepare("select * from foo");
    VERIFY($stmt != false);
    VERIFY($stmt->execute());
    $rs = $stmt->fetch(PDO::FETCH_ASSOC);
    VS($rs, array("bar" => "ABC"));
    $rs = $stmt->fetch(PDO::FETCH_ASSOC);
    VS($rs, array("bar" => "DEF"));
} catch (Exception $e) {
    VS($e, null);
}
try {
    $dbh = new PDO($source);
    $vstmt = $dbh->query("select * from foo");
    foreach ($vstmt as $k => $v) {
        var_dump($k);
        var_dump($v);
    }
    $vstmt = $dbh->query("select * from foo", 0);
Exemplo n.º 12
0
$decrypted = mcrypt_cfb(MCRYPT_RIJNDAEL_128, substr($key, 0, 32), $encrypted, MCRYPT_DECRYPT, substr($key, 32, 16));
VERIFY($encrypted !== $decrypted);
VS(trim((string) $decrypted), $CC);
//////////////////////////////////////////////////////////////////////
$key = "123456789012345678901234567890123456789012345678901234567890";
$CC = "4007000000027";
$encrypted = mcrypt_ecb(MCRYPT_RIJNDAEL_128, substr($key, 0, 32), $CC, MCRYPT_ENCRYPT, substr($key, 32, 16));
$decrypted = mcrypt_ecb(MCRYPT_RIJNDAEL_128, substr($key, 0, 32), $encrypted, MCRYPT_DECRYPT, substr($key, 32, 16));
VERIFY($encrypted !== $decrypted);
VS(trim((string) $decrypted), $CC);
//////////////////////////////////////////////////////////////////////
$key = "123456789012345678901234567890123456789012345678901234567890";
$CC = "4007000000027";
$encrypted = mcrypt_ofb(MCRYPT_RIJNDAEL_128, substr($key, 0, 32), $CC, MCRYPT_ENCRYPT, substr($key, 32, 16));
$decrypted = mcrypt_ofb(MCRYPT_RIJNDAEL_128, substr($key, 0, 32), $encrypted, MCRYPT_DECRYPT, substr($key, 32, 16));
VERIFY($encrypted !== $decrypted);
VS($decrypted, $CC);
//////////////////////////////////////////////////////////////////////
VS(mcrypt_get_block_size("tripledes", "ecb"), 8);
VS(mcrypt_get_cipher_name(MCRYPT_TRIPLEDES), "3DES");
VS(mcrypt_get_iv_size(MCRYPT_CAST_256, MCRYPT_MODE_CFB), 16);
VS(mcrypt_get_iv_size("des", "ecb"), 8);
VS(mcrypt_get_key_size("tripledes", "ecb"), 24);
$td = mcrypt_module_open("cast-256", "", "cfb", "");
VS(mcrypt_enc_get_algorithms_name($td), "CAST-256");
$td = mcrypt_module_open("tripledes", "", "ecb", "");
VS(mcrypt_enc_get_block_size($td), 8);
$td = mcrypt_module_open("cast-256", "", "cfb", "");
VS(mcrypt_enc_get_iv_size($td), 16);
$td = mcrypt_module_open("tripledes", "", "ecb", "");
VS(mcrypt_enc_get_key_size($td), 24);
Exemplo n.º 13
0
VS(pcntl_wexitstatus($status), 0x80);
$pid = pcntl_fork();
if ($pid == 0) {
    exit(0x12);
}
pcntl_waitpid(0, $status);
VERIFY(pcntl_wifexited($status));
$pid = pcntl_fork();
if ($pid == 0) {
    exit(0x12);
}
pcntl_waitpid(0, $status);
VERIFY(!pcntl_wifsignaled($status));
$pid = pcntl_fork();
if ($pid == 0) {
    exit(0x12);
}
pcntl_waitpid(0, $status);
VERIFY(!pcntl_wifstopped($status));
$pid = pcntl_fork();
if ($pid == 0) {
    exit(0x12);
}
pcntl_waitpid(0, $status);
VS(pcntl_wstopsig($status), 0x12);
$pid = pcntl_fork();
if ($pid == 0) {
    exit(0x12);
}
pcntl_waitpid(0, $status);
VS(pcntl_wtermsig($status), 0);
Exemplo n.º 14
0
VERIFY($xml->startElement("node"));
VERIFY($xml->startCdata());
VERIFY($xml->text("Raw text"));
VERIFY($xml->endCdata());
VERIFY($xml->endElement());
VERIFY($xml->startElement("node"));
VERIFY($xml->writeCdata("More CDATA"));
VERIFY($xml->endElement());
VERIFY($xml->startComment());
VERIFY($xml->text("Comments"));
VERIFY($xml->endComment());
VERIFY($xml->writeComment("More comments"));
VERIFY($xml->startPi("lol"));
VERIFY($xml->endPi());
VERIFY($xml->writePi("php", "print 'Hello world!';"));
VERIFY($xml->writeRaw("<node>Raw XML</node>"));
VERIFY($xml->writeDTD("name", "publicID", "systemID", "subset"));
VERIFY($xml->startDTD("name", "publicID", "systemID"));
VERIFY($xml->endDTD());
VERIFY($xml->startDTDElement("name"));
VERIFY($xml->endDTDElement());
VERIFY($xml->writeDTDElement("name", "content"));
VERIFY($xml->startDTDAttlist("name"));
VERIFY($xml->endDTDAttlist());
VERIFY($xml->writeDTDAttlist("name", "content"));
VERIFY($xml->startDTDEntity("name", false));
VERIFY($xml->endDTDEntity());
VERIFY($xml->writeDTDEntity("name", "content", false, "publicid", "systemid", "ndataid"));
VERIFY($xml->endDocument());
var_dump($xml->flush());
var_dump($xml->outputMemory());
Exemplo n.º 15
0
VERIFY(xmlwriter_start_element($xml, "node"));
VERIFY(xmlwriter_start_cdata($xml));
VERIFY(xmlwriter_text($xml, "Raw text"));
VERIFY(xmlwriter_end_cdata($xml));
VERIFY(xmlwriter_end_element($xml));
VERIFY(xmlwriter_start_element($xml, "node"));
VERIFY(xmlwriter_write_cdata($xml, "More CDATA"));
VERIFY(xmlwriter_end_element($xml));
VERIFY(xmlwriter_start_comment($xml));
VERIFY(xmlwriter_text($xml, "Comments"));
VERIFY(xmlwriter_end_comment($xml));
VERIFY(xmlwriter_write_comment($xml, "More comments"));
VERIFY(xmlwriter_start_pi($xml, "lol"));
VERIFY(xmlwriter_end_pi($xml));
VERIFY(xmlwriter_write_pi($xml, "php", "print 'Hello world!';"));
VERIFY(xmlwriter_write_raw($xml, "<node>Raw XML</node>"));
VERIFY(xmlwriter_write_dtd($xml, "name", "publicID", "systemID", "subset"));
VERIFY(xmlwriter_start_dtd($xml, "name", "publicID", "systemID"));
VERIFY(xmlwriter_end_dtd($xml));
VERIFY(xmlwriter_start_dtd_element($xml, "name"));
VERIFY(xmlwriter_end_dtd_element($xml));
VERIFY(xmlwriter_write_dtd_element($xml, "name", "content"));
VERIFY(xmlwriter_start_dtd_attlist($xml, "name"));
VERIFY(xmlwriter_end_dtd_attlist($xml));
VERIFY(xmlwriter_write_dtd_attlist($xml, "name", "content"));
VERIFY(xmlwriter_start_dtd_entity($xml, "name", false));
VERIFY(xmlwriter_end_dtd_entity($xml));
VERIFY(xmlwriter_write_dtd_entity($xml, "name", "content", false, "publicid", "systemid", "ndataid"));
VERIFY(xmlwriter_end_document($xml));
var_dump(xmlwriter_flush($xml));
var_dump(xmlwriter_output_memory($xml));