Вопрос	Ответ
struct FLAP { unsigned char m_id; //!< идентификатор (всегда равен 0x2A) unsigned char m_channel; //!< номер канала unsigned short m_seqNumber; //!< порядковый номер пакета unsigned short m_size; //!< размер пакета }; При чтении в эту структуру следующего дампа: 2a 01 54 6c 00 04 в поле “размер пакета” было не 4 а 1024. Т.е. два байта были переставлены местами. Почему?	В архитектуре х86 в памяти байты поменены местами. ntohs как раз для этого случая.
Можно ли перевести сокет из блокирующего в неблокирующий в процессе его работы, когда уже произошел connect	bool setAsync(int h,bool isAsync) { int fl=fcntl(h,F_GETFL); if(isAsync) fl |= O_NONBLOCK; else fl &= ~O_NONBLOCK; return 0==fcntl(h,F_SETFL,fl); }