#!/usr/bin/perl BEGIN { $SIG{'__WARN__'} = sub {};}; $hostname = "criens.u-psud.fr"; $username = "p99dreyf"; $passwd = "xxxxxxxx"; $command = "exec ~/bin/imapd"; use Net::Telnet (); $host = new Net::Telnet (Timeout => 10, Port => 23, Prompt => '/p99dreyf>\s?$/', Cmd_remove_mode => 1); $host->option_accept(Dont => &Net::Telnet::TELOPT_ECHO, Wont => &Net::Telnet::TELOPT_ECHO); open (FILE,">log"); $host->dump_log("log2"); $host->input_log("log3"); ## Issue some commands. $host->open($hostname); #$host->login($username, $passwd); $host->waitfor('/login:\s?$/'); $host->print("$username"); $host->waitfor('/Password:\s?$/'); $host->print("$passwd"); $host->waitfor('/p99dreyf>\s?$/'); $host->print("$command"); $strip=1; while ($strip) { $greeting=$host->getline(); if ($greeting=~/^\* PREAUTH.*$/) { print "$greeting"; $strip=0;}; } do { do { $cmd=; chop $cmd; } while ($cmd !~/[A-Za-z0-9]/); $host->print("$cmd"); print FILE ">>$cmd<<\n"; do { $line=$host->getline(); chop($line); print "$line\n"; print FILE "<<$line<<\n"; } while (($line!~/^[A-Za-z0-9]+ (OK|BAD|Expunge).*$/) && ($line!~/^\* BAD.*$/)); print FILE "--next cmd\n"; } while ($line!~/^[A-Za-z0-9]+ OK LOGOUT.*$/); exit;