
Enviado em 12/12/2016 - 14:20h
Boa tarde gostaria de saber se alguém pode me ajudar com o seguindo problema. Tenho um PHP que recebe o arquivo pela porta 4000 e tenho que responder para o cliente na porta 4001 com ACK para que não envie novamente o arquivo, porem não seu como responder em outra porta. Também não sei se o ACK é apenas uma mensagem como estou mandando, não sei muito de socket.#!/usr/local/bin/php –q
<?php
// Set time limit to indefinite execution
set_time_limit (0);
// Set BUFSIZE
$BUFSIZE = 268435456;
// Set the ip and port we will listen on
$address = '0.0.0.0';
$port = 4000;
$portresp = 4001;
$sock = socket_create(AF_INET, SOCK_STREAM,0);
socket_bind($sock, $address, $port) or die('Could not bind to address');
socket_listen($sock);
while (true) {
$client = socket_accept($sock);
socket_getpeername($client, $remote_ip, $remote_port);
$input = socket_read($client, $BUFSIZE);
var_dump($input);
echo "Enviando Resposta \n\n";
$msg ='ACK';
$len = strlen($msg);
if (socket_sendto($sock,$msg,$len,0x100,$remote_ip,$portresp) !== FALSE){
echo "Mensagem ACK enviado Corretamente para $remote_ip na porta $portresp \n";
socket_close($client);
};
};
socket_close($sock);
?>
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica
Instalar Dual Boot, Linux+Windows. (8)
Eaí? Já programou no windows? (2)
Erro ao enviar arquivos para o Storage Synology NAS (0)
Conky, alerta de temperatura alta (17)
De volta para o futuro - ou melhor, para o presente (parte 2) (3)









