|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem F. Kasimov 2:5020/400 02 Dec 2000 16:58:12 To : All Subject : udp socket (?) --------------------------------------------------------------------------------
Добрый localtime, ALL!
Hе скажешь ALL, или я глючю или сервак глючит или еще кто глючит, но
случай такой:
####################
use Socket;
use IO::Handle;
use Sys::Hostname;
$l_addr = gethostbyname(hostname());
$l_sin = sockaddr_in(0, $l_addr);
$r_addr = gethostbyname('localhost'); #сервак тоже на моей тачке
$r_sin = sockaddr_in(6000, $r_addr);
$proto = getprotobyname('udp');
socket(SOCK_H, AF_INET, SOCK_DGRAM, $proto) or print "can't open socket\n";
SOCK_H->autoflush(1);
bind(SOCK_H, $l_sin) or print("can't bind\n");
$| = 1;
send(SOCK_H, "login", 0 , $r_sin) or print "can't send\n";
while (1) {
recv(SOCK_H, $buf, 1500, 0);
print $buf."\n";
send(SOCK_H, "command",0, $r_sin) or print "can't send\n";
}
close(SOCK_H);
###################
так вот если сервер не вопринимает команду "login", то выдает типа
"login failed" и потом моя команда "command" также отсылается, на что
сервер ругается "not logged in". HО если "login" проходит, сервак
начинает слать всякой инфы, и команды "command" не вопринимаются им.
Так вот если в коде глюков нет, тогда что?
p.s. мож у кого есть набор готовых процедур для работы с udp, типа
соединиться, послать, принять?
Заранее благодарен!
--
С уважением, Артем!
--- ifmail v.2.15dev5
* Origin: UGATU (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/14622dea77c32.html, оценка из 5, голосов 10
|