Example #1
1
function send_data($_remote_ip, $_remote_port, $_message)
{
    if (preg_match('/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/', $_remote_ip)) {
        //  echo 'IP ist gültig.';
    } else {
        $_remote_ip = gethostbyname($_remote_ip);
    }
    if (!($sock = socket_create(AF_INET, SOCK_STREAM, 0))) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Couldn't create socket: [{$errorcode}] {$errormsg} \n");
        $log_update = mysql_query("INSERT INTO `log`(`message`) VALUES ('" . $errormsg . "')");
    }
    echo "Socket created \n";
    //Connect socket to remote server
    if (!socket_connect($sock, $_remote_ip, $_remote_port)) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Could not connect: [{$errorcode}] {$errormsg} \n");
        $log_update = mysql_query("INSERT INTO `log`(`message`) VALUES ('" . $errormsg . "')");
    }
    echo "Connection established \n";
    //Send the message to the server
    if (!socket_send($sock, $_message, strlen($_message), 0)) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Could not send data: [{$errorcode}] {$errormsg} \n");
        $log_update = mysql_query("INSERT INTO `log`(`message`) VALUES ('" . $errormsg . "')");
    }
    echo "Message send successfully \n";
    //$log_update = mysql_query("INSERT INTO `log`(`message`) VALUES ('".$_remote_ip."')");
}
Example #2
0
File: index.php Project: bg6cq/aprs
function sendaprs($call, $lat, $lon, $desc, $ts)
{
    global $aprs_server;
    global $msg;
    $s = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
    socket_connect($s, $aprs_server, 14580);
    $N = 'N';
    if ($lat < 0) {
        $lat = -$lat;
        $N = 'S';
    }
    $E = 'E';
    if ($lon < 0) {
        $lon = -$lon;
        $E = 'W';
    }
    $msg = $call . ">WEB2NT:!";
    $msg = $msg . sprintf("%02d%05.2f%s%s", floor($lat), ($lat - floor($lat)) * 60, $N, substr($ts, 0, 1));
    $msg = $msg . sprintf("%03d%05.2f%s%s", floor($lon), ($lon - floor($lon)) * 60, $E, substr($ts, 1, 1));
    $msg = $msg . sprintf("%s%s", $desc, "\r\n");
    //	echo $msg;
    //	echo "<p>";
    socket_send($s, $msg, strlen($msg), 0);
    $msg = date("Y-m-d H:i:s ") . $msg;
}
Example #3
0
function coop_send($message)
{
    if (!($sock = socket_create(AF_INET, SOCK_STREAM, 0))) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Couldn't create socket: [{$errorcode}] {$errormsg} \n");
    }
    //Connect socket to remote server
    if (!socket_connect($sock, COOPSERVER, COOPPORT)) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Could not connect: [{$errorcode}] {$errormsg} \n");
    }
    //Send the message to the server
    if (!socket_send($sock, $message, strlen($message), 0)) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Could not send data: [{$errorcode}] {$errormsg} \n");
    }
    $buf = 'my buffer';
    if (false !== ($bytes = socket_recv($sock, $buf, 1024, 0))) {
        echo "Read {$bytes} bytes of socket_recv(). close socket ...";
    } else {
        echo "socket_recv() error; Reason: " . socket_strerror(socket_last_error($socket)) . "\n";
    }
    socket_close($sock);
    return $buf;
}
function send()
{
    if (!($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP))) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Couldn't create socket: [{$errorcode}] {$errormsg} \n");
    }
    echo "Socket created";
    if (!socket_connect($sock, '192.168.0.17', 9000)) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Could not connect: [{$errorcode}] {$errormsg} \n");
    }
    echo "Connection established \n";
    $msg = "Hello";
    //Send the message to the server
    if (!socket_send($sock, $msg, strlen($msg), 0)) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Could not send data: [{$errorcode}] {$errormsg} \n");
    }
    echo "Message send successfully \n";
    //Now receive reply from server
    if (socket_recv($sock, $buf, 2045, MSG_WAITALL) === FALSE) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Could not receive data: [{$errorcode}] {$errormsg} \n");
    }
    //print the received message
    $visual = $buf;
    socket_close($sock);
}
Example #5
0
 /**
  * 发送数据
  * @param string $data
  * @return bool | int
  */
 function send($data)
 {
     $length = strlen($data);
     $written = 0;
     $t1 = microtime(true);
     //总超时,for循环中计时
     while ($written < $length) {
         $n = socket_send($this->sock, substr($data, $written), $length - $written, null);
         //超过总时间
         if (microtime(true) > $this->timeout_send + $t1) {
             return false;
         }
         if ($n === false) {
             $errno = socket_last_error($this->sock);
             //判断错误信息,EAGAIN EINTR,重写一次
             if ($errno == 11 or $errno == 4) {
                 continue;
             } else {
                 return false;
             }
         }
         $written += $n;
     }
     return $written;
 }
Example #6
0
function sendCommandToRPi($command)
{
    if (!($sock = socket_create(AF_INET, SOCK_STREAM, 0))) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        die("Couldn't create socket: [{$errorcode}] {$errormsg} \n");
    }
    //Connect socket to remote server
    try {
        if (!socket_connect($sock, '172.17.10.71', 1111)) {
            $errorcode = socket_last_error();
            $errormsg = socket_strerror($errorcode);
            echo $errormsg;
            return False;
        }
    } catch (Exception $e) {
    }
    //Send the message to the server
    if (!socket_send($sock, $command, strlen($command), 0)) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        return False;
    }
    return true;
}
Example #7
0
function negotiate($socket)
{
    socket_recv($socket, $buffer, 1024, 0);
    for ($chr = 0; $chr < strlen($buffer); $chr++) {
        if ($buffer[$chr] == chr(255)) {
            $send = isset($send) ? $send . $buffer[$chr] : $buffer[$chr];
            $chr++;
            if (in_array($buffer[$chr], array(chr(251), chr(252)))) {
                $send .= chr(254);
            }
            if (in_array($buffer[$chr], array(chr(253), chr(254)))) {
                $send .= chr(252);
            }
            $chr++;
            $send .= $buffer[$chr];
        } else {
            break;
        }
    }
    if (isset($send)) {
        socket_send($socket, $send, strlen($send), 0);
    }
    if ($chr - 1 < strlen($buffer)) {
        return substr($buffer, $chr);
    }
}
Example #8
0
 public function init()
 {
     if (!($sock = socket_create(AF_INET, SOCK_STREAM, 0))) {
         $errorcode = socket_last_error();
         $errormsg = socket_strerror($errorcode);
         die("Couldn't create socket: [{$errorcode}] {$errormsg} \n");
     }
     echo "Socket created \n";
     //Connect socket to remote server
     if (!socket_connect($sock, self::ADDRESS, self::PORT)) {
         $errorcode = socket_last_error();
         $errormsg = socket_strerror($errorcode);
         die("Could not connect: [{$errorcode}] {$errormsg} \n");
     }
     echo "Connection established \n";
     $message = json_encode(['message' => 'Alright!']);
     //Send the message to the server
     if (!socket_send($sock, $message, strlen($message), 0)) {
         $errorcode = socket_last_error();
         $errormsg = socket_strerror($errorcode);
         die("Could not send data: [{$errorcode}] {$errormsg} \n");
     }
     echo "Message send successfully \n";
     //Now receive reply from server
     if (socket_recv($sock, $buf, 2045, MSG_WAITALL) === FALSE) {
         $errorcode = socket_last_error();
         $errormsg = socket_strerror($errorcode);
         die("Could not receive data: [{$errorcode}] {$errormsg} \n");
     }
     //print the received message
     socket_shutdown($sock);
     return $buf;
 }
Example #9
0
 /**
  * Writes data to the socket.
  *
  * @param  string  $string  String to send.
  * @param  integer  $flags  Send flags - php.net/socket_send
  *
  * @return  integer|boolean  Number of bytes written, False on error
  */
 public function write($string, $flags = null)
 {
     if ($flags !== null) {
         return socket_send($this->get_resource(), $string, strlen($string), $flags);
     }
     return socket_write($this->get_resource(), $string);
 }
Example #10
0
 /**
  * Writes to this peer.
  *
  * @param string $what What to write.
  *
  * @return integer
  */
 public function write($what)
 {
     $ret = null;
     if ($this->isConnected()) {
         $ret = @socket_send($this->socket, $what, strlen($what), 0);
     }
     return $ret;
 }
Example #11
0
 protected final function dataIs(data\data $data)
 {
     $bytesWritten = socket_send($this->resource, $data, strlen($data), 0);
     if ($bytesWritten === false) {
         throw $this->exception();
     }
     return $this->numberOfBytesConsumedIs(new data\data\numberOfBytes($bytesWritten));
 }
Example #12
0
function send_all(&$socket, $snd)
{
    $to_send = strlen($snd) . ":" . $snd;
    if (@socket_send($socket, $to_send, strlen($to_send), 0)) {
        return true;
    }
    return false;
}
Example #13
0
 public function send(ServerMessage\Crypt $message)
 {
     $message->prepend(ByteConverter::IntSixteenBits($message->getLength()));
     if (!socket_send($this->socket, $message, strlen($message), 0)) {
         $this->error();
     }
     return $this;
 }
 public function write($buffer, $length)
 {
     $bytesWritten = socket_send($this->socket, $buffer, $length, 0);
     if ($bytesWritten === false) {
         $bytesWritten = -1;
     }
     return $bytesWritten;
 }
Example #15
0
function send($message)
{
    global $sock;
    if (!socket_send($sock, $message, strlen($message), 0)) {
        $errorcode = socket_last_error();
        $errormsg = socket_strerror($errorcode);
        echo "Could not send data: [{$errorcode}] {$errormsg} \n";
    }
}
Example #16
0
 private function _sendData($binData)
 {
     $binData .= pack('C', '\\0');
     var_dump($binData);
     if (!socket_send($this->_fd, $binData, strlen($binData), MSG_OOB | MSG_EOF)) {
         throw new \Exception('message send fail', 11);
         socket_close($this > _fd);
     }
 }
Example #17
0
 /**
  * 发送buff
  * @param $buff
  * @return bool
  */
 public function sendBuff($buff)
 {
     if (is_array($buff)) {
         $buff = json_encode($buff);
     }
     $len = strlen($buff);
     @socket_send($this->handler, $buff, $len, 0);
     return true;
 }
Example #18
0
 protected function write($message)
 {
     if (socket_send($this->socket, $message, strlen($message), MSG_DONTROUTE) === false) {
         # display errors here
         print "Failed to send command\n";
     } else {
         print $message . "\n";
     }
 }
Example #19
0
function fping($host, $timeout = 1)
{
    $package = "}KPingHost";
    $socket = socket_create(AF_INET, SOCK_RAW, 1);
    socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array('sec' => $timeout, 'usec' => 0));
    @socket_connect($socket, $host, null);
    @socket_send($socket, $package, strLen($package), 0);
    return socket_read($socket, 255) ? 'alive' : 'die';
    socket_close($socket);
}
 public function send($strData)
 {
     $strData .= chr(0);
     $intData = strlen($strData);
     if (!$this->usingProxy) {
         $intSent = socket_send($this->resSocket, $strData, $intData, 0);
     } else {
         $intSent = $this->proxyObject->ph_write($strData);
     }
     return $intSent;
 }
Example #21
0
 function Send($msg, $size)
 {
     if (!$this->inited) {
         return $this->inited;
     }
     if (@$size > socket_send($this->socket, $msg, $size, 0)) {
         $this->lastError = "Send() failed: reason: " . socket_strerror(socket_last_error());
         return false;
     }
     return true;
 }
Example #22
0
 private function sendCLI($message)
 {
     $cli = $message;
     if (socket_send($_SESSION['socket'], $cli, strlen($cli), 0)) {
         //echo "envoi réussi de $cli\n";
     } else {
         $errorcode = socket_last_error();
         $errormsg = socket_strerror($errorcode);
         die("Could not send data '{$cli}': [{$errorcode}] {$errormsg} \n");
     }
 }
function sendQuery($socket, $CMD, $data = '')
{
    $data = trim($data);
    if (empty($data)) {
        $send = "{$CMD}\r\n";
    } else {
        $send = "{$CMD} {$data}\r\n";
    }
    socket_send($socket, $send, strlen($send), 0);
    return;
}
Example #24
0
 /**
  * @param $text
  * @param Log\Data $Data
  * @return void
  *
  * @SuppressWarnings(PHPMD)
  */
 public function write($text, Log\Data $Data)
 {
     if (!($sock = socket_create(AF_INET, SOCK_STREAM, 0))) {
         $this->error('Could not create socket');
     }
     if (!socket_connect($sock, $this->_sAddress, 80)) {
         $this->error('Could not connect');
     }
     if (!socket_send($sock, $text, strlen($text), 0)) {
         $this->error('Write failed');
     }
 }
Example #25
0
/**
 * @internal
 */
function grandet_query($request)
{
    global $grandet_client;
    $raw_request = $request->serializeToString();
    $request_len = pack('N', strlen($raw_request));
    socket_send($grandet_client, $request_len, 4, 0);
    socket_send($grandet_client, $raw_request, strlen($raw_request), 0);
    socket_recv($grandet_client, $raw_response_len, 4, MSG_WAITALL);
    $response_len = unpack('N', $raw_response_len)[1];
    socket_recv($grandet_client, $raw_response, $response_len, MSG_WAITALL);
    return grandet\Response::parseFromString($raw_response);
}
Example #26
0
function SendCommand($command)
{
    $socketError = "";
    $cpath = "/tmp/FPP." . getmypid();
    $spath = "/tmp/FPPD";
    CleanupSocket($cpath);
    $socket = socket_create(AF_UNIX, SOCK_DGRAM, 0);
    if (!@socket_set_nonblock($socket)) {
        $socketError = 'Unable to set nonblocking mode for ' . $spath . ' socket';
        CleanupSocket($cpath, $socket);
        return false;
    }
    if (!@socket_bind($socket, $cpath)) {
        $socketError = 'socket_bind() failed for ' . $cpath . ' socket';
        CleanupSocket($cpath, $socket);
        return false;
    }
    if (@socket_connect($socket, $spath) === false) {
        $socketError = 'socket_connect() failed for ' . $spath . ' socket';
        CleanupSocket($cpath, $socket);
        return false;
    }
    if (@socket_send($socket, $command, strLen($command), 0) == FALSE) {
        $socketError = 'socket_send() failed for ' . $spath . ' socket';
        CleanupSocket($cpath, $socket);
        return false;
    }
    $i = 0;
    $max_timeout = 1000;
    $buf = "";
    while ($i < $max_timeout) {
        $i++;
        $bytes_received = @socket_recv($socket, $buf, 1024, MSG_DONTWAIT);
        if ($bytes_received == -1) {
            $socketError = 'An error occured while receiving from the socket';
            CleanupSocket($cpath, $socket);
            return false;
        }
        if ($bytes_received > 0) {
            break;
        }
        usleep(500);
    }
    if ($buf == "") {
        CleanupSocket($cpath, $socket);
        return false;
    }
    CleanupSocket($cpath, $socket);
    return $buf;
}
Example #27
0
 /**
  * Use sockets to ping a host.
  *
  * Will call function to use exec to send ping request if the socket request fails.
  * Socket request will fail if it is unable to find the host.
  *
  * Using sockets under Windows requires that the Application Pool in IIS be running under an account with local admin rights.
  *
  * @param	string	$host		Host name or IP address to ping
  * @param	int		$timeout	Timeout for ping in seconds
  * @return	bool				True if ping succeeds, false if not
  */
 protected static function socketSend($host, $timeout)
 {
     try {
         $socket = socket_create(AF_INET, SOCK_RAW, 1);
         socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array('sec' => $timeout, 'usec' => 0));
         socket_connect($socket, $host, null);
         socket_send($socket, self::$payload, strLen(self::$payload), 0);
         $result = socket_read($socket, 255) ? true : false;
         socket_close($socket);
         return $result;
     } catch (Exception $e) {
         return self::execSend($host);
     }
 }
Example #28
0
 function sendReceive($message_type, $message)
 {
     // yeah... this is totally gunna work
     global $TCP_PORT_NUMBER;
     $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
     $res = socket_connect($socket, "127.0.0.1", $TCP_PORT_NUMBER);
     if (!$res) {
         socket_close($socket);
         return false;
     }
     $msg["type"] = $message_type;
     $msg["data"] = $message;
     $datacomp = base64_encode(serialize($msg));
     $tosend = "AC:{$datacomp}:EOD";
     socket_send($socket, $tosend, strlen($tosend), 0);
     // get up to one meg of data - this is bad... i can feel this function
     // hurting alot
     // TODO FIX THIS - its garbage code... im not really sure how to handle this really
     // we need to read back as AS:data:EOD - i think it now does.. i hope, tho we need
     // timeouts now.
     $recvd = "";
     $continue = true;
     while ($continue) {
         $size = socket_recv($socket, $recvd_a, 1024, 0);
         $recvd .= $recvd_a;
         if (preg_match("/.*\\:EOD\$/", $recvd)) {
             // we have a full string... break out
             $continue = false;
             break;
         }
     }
     // first check we got something that makes sense
     if (preg_match("/^AS:.*:EOD/", $recvd) < 1) {
         socket_close($socket);
         echo "Returned data is not in right format\n";
         // we have a problem jim
         return false;
     }
     $xps = explode(":", $recvd);
     $component = unserialize(base64_decode($xps[1]));
     if ($component["type"] != $message_type) {
         echo "Message type was not the same as original message\n";
         // we have a problem jim
         socket_close($socket);
         return false;
     }
     socket_close($socket);
     return $component["data"];
 }
Example #29
0
function ping($host, $timeout = 1)
{
    $package = "}KPingHost";
    $socket = socket_create(AF_INET, SOCK_RAW, 1);
    socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array('sec' => $timeout, 'usec' => 0));
    socket_connect($socket, $host, null);
    $ts = microtime(true);
    socket_send($socket, $package, strLen($package), 0);
    if (socket_read($socket, 255)) {
        $result = microtime(true) - $ts;
    } else {
        $result = false;
    }
    socket_close($socket);
    return $result;
}
Example #30
0
function send_data()
{
    include '../db_config.php';
    $verbindung = mysql_connect($db_host, $db_username, $db_password) or die("keine Verbindung möglich. Benutzername oder Passwort sind falsch");
    mysql_select_db($db_name) or die("Die Datenbank existiert nicht.");
    $fetchinfo_dev = mysql_query("SELECT * FROM `nodes` WHERE `active`='1'");
    while ($row_dev = mysql_fetch_array($fetchinfo_dev)) {
        $_remote_ip = $row_dev['ip'];
        $_remote_port = $row_dev['port'];
        $token = $row_dev['token'];
        if (preg_match('/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/', $_remote_ip)) {
            //  echo 'IP ist gültig.';
        } else {
            $_remote_ip = gethostbyname($_remote_ip);
        }
        if (!($sock = socket_create(AF_INET, SOCK_STREAM, 0))) {
            $errorcode = socket_last_error();
            $errormsg = socket_strerror($errorcode);
            die("Couldn't create socket: [{$errorcode}] {$errormsg} \n");
            $log_update = mysql_query("INSERT INTO `log`(`message`) VALUES ('" . $errormsg . "')");
        }
        //Connect socket to remote server
        if (!socket_connect($sock, $_remote_ip, $_remote_port)) {
            $errorcode = socket_last_error();
            $errormsg = socket_strerror($errorcode);
            die("Could not connect: [{$errorcode}] {$errormsg} \n");
            $log_update = mysql_query("INSERT INTO `log`(`message`) VALUES ('" . $errormsg . "')");
        }
        $fetchinfo_dev10 = mysql_query("SELECT * FROM `channels` WHERE 1");
        while ($row_dev10 = mysql_fetch_array($fetchinfo_dev10)) {
            $request_message = "<pin output='" . $row_dev10['channel'] . "' value='" . $row_dev10['value'] . "' token='" . $token . "'></pin>";
            echo $request_message;
            //Send the message to the server
            if (!socket_send($sock, $request_message, strlen($request_message), 0)) {
                $errorcode = socket_last_error();
                $errormsg = socket_strerror($errorcode);
                die("Could not send data: [{$errorcode}] {$errormsg} \n");
                $log_update = mysql_query("INSERT INTO `log`(`message`) VALUES ('" . $errormsg . "')");
            }
            usleep(30000);
        }
        socket_close($sock);
        //$log_update = mysql_query("INSERT INTO `log`(`message`) VALUES ('".$_remote_ip."')");
    }
}