Как определить 4 байта длины? Непонятно.
Или это всё делать до retun и выходить из while когда сообщение принято либо ждать знака с небес)
ну го небольшой экскурс:
Обсуждают сегодня