Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Dmitry Liakh                         2:5020/400     06 Jul 2001  15:11:39
 To : All
 Subject : Торможу?
 -------------------------------------------------------------------------------- 
 
 Здравствуйте многоуважаемый All!
 
 Hе подскажете где я натормозил, пытаясь поговорить с сендмылом таким образом
 (не пинайте сильно, бо с сокетами только знакомлюсь)
 
 --------------------[scipped]--------------------
 
 use strict;
 use IO::Socket;
 use Sys::Hostname;
 
 my $EOL = "\15\12";
 
 &main();
 
 sub main(){my $sock = new IO::Socket::INET(PeerAddr => $RELAY,
              PeerPort => 'smtp')
    || die "Couldn't open socket. Reason: $!";
   $sock->autoflush(1);
   while(<$sock>){print};
   print $sock "HELO", hostname(), $EOL;
   while(<$sock>){print};
   print $sock "QUIT", $EOL;
   while(<$sock>){print};
 };
 --------------------[/scipped]-------------------
 после запуска успевает написать
 
 220 unix1.local ESMTP Sendmail 8.11.4/8.11.4; Fri, 6 Jul 2001 13:43:47 +0300
 (EEST)
 
 и после этого блокируется на 'print $sock "HELO", hostname(), $EOL;'.
 
 Если сразу после коннекта, не слушая что скажет сендмейл отправить в сокет
 HELO hostname() то видно, что он отвечает
 
 250 unix1.local Hello dima@localhost.local [127.0.0.1], pleased to meet you
 
 но при следующей попытке что-то ему отправить - скрипт блокируется 
 (в выводе ps(1) его состояние I+)
 
 Читал, что для этого дела юзают IO::Select, но из примерчика в perldoc 
 perlipc (называется 'A Webget Client') следует, что должно работать и так.
 
 -- 
 WBR
 Dmitry
 --- ifmail v.2.15dev5
  * Origin: Hansa (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Торможу?   Dmitry Liakh   06 Jul 2001 15:11:39 
Архивное /ru.perl/17301e2cd1168.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional