$cmd = "quote site ftp.example.com"; ... local($rin); print CMD $cmd,"\r\n"; vec($rin,fileno(CMD),1) = 1; for (;;) { if (($Timeout==0) || select($rout=$rin, undef, undef, $Timeout)) { unless(sysread(CMD, $buf, 1024)) { $Error = "Unexpected EOF on command channel"; return undef; } } ... }