summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrediano Ziglio <fziglio@redhat.com>2015-08-11 17:03:36 +0100
committerFrediano Ziglio <fziglio@redhat.com>2016-03-03 17:06:18 +0000
commit7eb82f36061e32f4b145ceb5c1be2af073e68bdc (patch)
treea8e2a9fd23d4ba95d3cb7189ac9f796951ac0029
parent9b729af353b95643a0e8f864d212c80a13d646c2 (diff)
proto: Describe Quic image format from dissectorworking
Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
-rw-r--r--spice.proto25
1 files changed, 24 insertions, 1 deletions
diff --git a/spice.proto b/spice.proto
index 5775168..235df98 100644
--- a/spice.proto
+++ b/spice.proto
@@ -689,6 +689,29 @@ struct Surface {
uint32 surface_id;
} @ws_txt("Surface ID: %u", surface_id);
+enum32 quic_image_type {
+ INVALID,
+ GRAY,
+ RGB16,
+ RGB24,
+ RGB32,
+ RGBA
+} @ws("QUIC image type", quic_type) @prefix(QUIC_IMAGE_TYPE_) @ifdef(SPICE_DISSECTOR);
+
+struct ImageQuic {
+ uint32 magic @ws_desc("QUIC magic (QUIC)");
+ uint16 major @ws("QUIC major version", quic_major_version);
+ uint16 minor @ws("QUIC minor version", quic_minor_version);
+ quic_image_type type;
+ uint32 width @ws("Width", quic_width);
+ uint32 height @ws("Height", image_height);
+ uint8 data[] @end @ws_txt("QUIC compressed image data (%u bytes)", data.nelements);
+} @ifdef(SPICE_DISSECTOR);
+
+struct ImageQuicData {
+ uint32 data_size @bytes_count(dummy) @ws_txt("QUIC image size: %u bytes", data_size);
+ ImageQuic image[bytes(data_size, dummy)] @nomarshal @chunk;
+} @ifdef(SPICE_DISSECTOR);
struct Image {
struct ImageDescriptor {
@@ -703,7 +726,7 @@ struct Image {
case BITMAP:
BitmapData bitmap;
case QUIC:
- BinaryData quic;
+ BinaryData quic @ws_as(ImageQuicData);
case LZ_RGB:
case GLZ_RGB:
BinaryData lz_rgb;