Пример #1
0
function sendpacket($packet)
{
    global $proxy, $host, $port, $html;
    if ($proxy == '') {
        $ock = fsockopen(gethostbyname($host), $port);
        if (!$ock) {
            echo 'No response from ' . htmlentities($host) . '...';
            die;
        }
    } else {
        $proxy = trim($proxy);
        $parts = explode(':', $proxy);
        if (!valid_ipv4($parts[0])) {
            echo htmlentities($proxy) . ' -> not a valid proxy...';
            die;
        }
        if (intval($parts[1]) <= 0) {
            echo htmlentities($proxy) . ' -> not a valid proxy...';
            die;
        }
        echo 'Connecting to ' . $parts[0] . ':' . $parts[1] . ' proxy...<br>';
        $ock = fsockopen($parts[0], $parts[1]);
        if (!$ock) {
            echo 'No response from proxy...';
            die;
        }
    }
    fputs($ock, $packet);
    if ($proxy == '') {
        $html = '';
        while (!feof($ock)) {
            $html .= fgets($ock);
        }
    } else {
        $html = '';
        while (!feof($ock) or !eregi(chr(0xd) . chr(0xa) . chr(0xd) . chr(0xa), $html)) {
            $html .= fread($ock, 1);
        }
    }
    fclose($ock);
    echo nl2br(htmlentities($html));
}
Пример #2
0
[expect php]

[file]
<?php 
function valid_ipv4($ip_addr)
{
    $num = "([0-9]|^1?\\d\\d\$|2[0-4]\\d|25[0-5])";
    if (preg_match("/{$num}\\.{$num}\\.{$num}\\.{$num}/", $ip_addr, $matches)) {
        return $matches[0];
    } else {
        return false;
    }
}
var_dump(valid_ipv4("241.25.16.22"));
var_dump(valid_ipv4("256.41.15.11"));
?>