Witam,
mam problem z odbieraniem odpowiedzi od serwera, a dokładniej z ich ilością. Czy istnieje możliwość pobrania wszystkich odpowiedzi z serwera? Dotychczas robię to mniej więcej tak:

syswrite($Server,"connect\r\n");
$linia = <$Server>;
print "1. $linia";
syswrite($Server,"USER\r\n");
$linia = <$Server>;
print "2. $linia";
syswrite($Server,"PASS\r\n");
$linia = <$Server>;
print "3. $linia";

I tutaj zaczyna się problem. Niekiedy po zapytaniu odpowiedź jest kilku wierszowa i zamiast np.:

  1. Hello this is server
  2. Input password
  3. User authenticated
    otrzymuję:
  4. Hello this is server
  5. Keep in mind that this is anonymous access server only
  6. Please insert user and password
    , bo okazało się że taki właśnie powitalny komunikat generuje serwer i tylko te 3 linie ściąga mój kod. Kod więc się kończy, ale w kolejce od serwera czekają jeszcze komunikaty. Które zostaną ściągnięte przy dalszej próbie komunikacji i co w oczywisty sposób sprawia, że nie mam możliwości kontroli przebiegu tej komunikacji.

Nie mogę też użyć więcej poleceń $linia = <$Server>; niż ilość komunikatów, ponieważ wtedy skrypt oczekuje na przesłanie odpowiedzi, których nie ma i po prostu wisi.

Czy zna ktoś sposób na poradzenie sobie z tym problemem?