Сжатие zrle в C/C++C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Сжатие zrle в C/C++

Сообщение Anonymous »

Я пронюхал свой VNC-клиент и получил набор байтов, представляющий собой данные VNC, сжатые ZLRE. Я хочу его распаковать, но не знаю, как это сделать. Я получил этот байт полезных данных с помощью Wireshark и прослушивания незашифрованных данных моего VNC-сервера.
Полезные данные TCP выглядят так, первые 4 байта — это длина.

Код: Выделить всё

unsigned char bytes[] = {0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x3, 0x55, 0x1, 0x80, 0x0, 0x0, 0x0, 0x10, 0x0, 0x0, 0x1, 0xa5, 0xec, 0x9c, 0xb1, 0x4e, 0xc3, 0x30, 0x10, 0x86, 0x65, 0x8, 0xea, 0xc0, 0xc0, 0x54, 0xd4, 0xa8, 0x33, 0xb, 0x12, 0x55, 0xdf, 0xa0, 0x53, 0x61, 0x60, 0xe7, 0x49, 0x98, 0x51, 0xcb, 0x73, 0xf0, 0x3c, 0x8c, 0xf0, 0x1a, 0x2c, 0x2c, 0x7d, 0x81, 0xf4, 0xce, 0x3e, 0xc7, 0x81, 0x38...
Я нашел эту ссылку, https://github.com/RealVNC/vnc-4_1_3-wi ... ecoder.cxx
пока я не знаю, как использовать эту полезную нагрузку и реализовать его в такой функции декодера...
Я также прочитал https://www.rfc-editor.org/rfc/rfc6143.html#page-30 7.7.6 ZLRE
Там написано, что это означает zlib... значит, распаковка zlib аналогична распаковке ZLRE (используется в VNC)? Если да, то я смогу найти больше образцов для распаковки.

Подробнее здесь: https://stackoverflow.com/questions/792 ... ion-in-c-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»