Próbuje przesłać dane miedzy klientem a serwerem:
Po stronie klienta kod wygląda tak:

void client::doConnect()
{
QByteArray block;
QDataStream out(&block, QIODevice::WriteOnly);
out.setVersion(QDataStream::Qt_4_0);

QStringList fortunes;
fortunes << tr("tekst 1.")
             << tr("tekst 1.")
             << tr("tekst 1.")
             << tr("tekst 1.")
             << tr("tekst 1.")
             << tr("tekst 1.");
out << (quint16)0;
out << fortunes.at(qrand() % fortunes.size());
out.device()->seek(0);
out << (quint16)(block.size() - sizeof(quint16));

qDebug() << " block " << block;
qDebug() << " fortunes.size() : " << fortunes.size();
qDebug() << " block.size() : " << block.size();

socket = new QTcpSocket(this);
socket->connectToHost("127.0.0.1", 1234);
socket->write(block);
// we need to wait...
if(!socket->waitForConnected(5000))
{
    qDebug() << "Error: " << socket->errorString();
}

}

Debugujac zmienna block którą wysyłam dostaje tu wszystkie informacje, czyli co zawiera i jaką ma wielkość.
Po stronie serwera kiedy wywołuje:
qDebug() << socket->readAll();
to widzę że dane dochodzą i są takie same jak w kliencie jednak zawsze gdy wywołuje:
socket->bytesAvailable();
socket->readAll().length();
to otrzymuje 0.

Wie ktoś może czemu tak się dzieje i gdzie szukać przyczyny?