Websocket Stumper - PullRequest
       8

Websocket Stumper

0 голосов
/ 25 августа 2018

Я пишу встроенный сервер WebSocket и работаю напрямую с соответствующего RFC.

Мой сервер правильно отвечает на запрос обновления от браузера, и браузер, в своем примере javascript, отправляет короткое сообщениечерез недавно установленную розетку.так что все работает нормально.

Сообщение короткое (полный кадр - только 21 байт) и содержит все соответствующие поля, которые мой сервер успешно декодирует.

Stumper находится в битах с 9 по 15, чтодолжны содержать длину полезной нагрузки.

вот шестнадцатеричный дамп захваченного сообщения на WireShark:

81 8f 11 ab d5 0b 5c ce a6 78 70 cc b0 2b 65 c4f5 78 74 c5 b1

, поэтому первый байт содержит FIN (1 бит), RSVD1 (1 бит), RSVD2 (1 бит), RSVD3 (1 бит) и 4 бита кода операции,пока все хорошо.

8f - это stumper: содержит бит MASK и длину полезной нагрузки, бит MASK установлен в 1, что нормально, но остальные 7 бит имеют значение 71 (0x47), когда вседлина кадра составляет всего 21 байт, а полезная нагрузка - всего 15 байт.

Так что же я делаю не так?

Я могу декодировать сообщение, применив маску XOR к полезной нагрузке, но к длинепроблема заключается в том, что он управляет циклом декодирования и выполняет 71 итерацию вместо 15, что и должно быть.

Я благодарен за любую подсказку относительно того, что я делаю неправильно

Спасибо

1 Ответ

0 голосов
/ 27 августа 2018

Проблема заключалась в том, что моя структура не учитывала порядковый номер процессора AMD 64 !!! иногда ответ тут же; -)

...