Пожалуйста, обратите внимание, что пользователь заблокирован
Есть код простого сервера на Perl , который принимает данные от клиента. Но - если строка не завершается \r\n - он ее не выводит. Почему так и как исправить?
Код:
#perl tcp server
use Socket;
$port = shift;
$port = getservbyname($port,'tcp') if $port =~ /\D/;
die "Invalid port" unless $port;
socket(S,PF_INET,SOCK_STREAM,0) || die "socket: $!";
bind(S,sockaddr_in($port,INADDR_ANY)) or die ("bind $!");
listen(S,SOMAXCONN);
for (; accept(S1,S); close(S1))
{
while(TRUE)
{
defined(recv(S1,$line,120,0)) or die("recv: $!");
last if length($line) == 0;
print $line;
}
}