]> git.sesse.net Git - cubemap/blobdiff - state.proto
Add support for deduplicating headers/short responses.
[cubemap] / state.proto
index 35d5c505c7a157c072cc3e312f2aff66da5f9206..e9a4f13293c617b09e21b923cca4d6eecae816d6 100644 (file)
@@ -9,9 +9,11 @@ message ClientProto {
        optional int32 state = 2;
        optional bytes request = 3;
        optional string url = 4;
-       optional bytes header_or_short_response = 5;
+       optional bytes header_or_short_response_old = 5;  // Only for pre-1.4.0 servers. Use header_or_short_response_index instead.
+       optional int64 header_or_short_response_index = 21;  // Index into CubemapStateProto.short_response_pool.
        optional int64 header_or_short_response_bytes_sent = 6;
        optional int64 stream_pos = 7;
+       optional int64 stream_pos_end = 20 [default=-1];
        optional int64 bytes_sent = 10;
        optional int64 bytes_lost = 11;
        optional int64 num_loss_events = 12;
@@ -28,7 +30,7 @@ message StreamProto {
        optional bytes stream_header = 7;
        repeated int32 data_fds = 8;
        optional int64 backlog_size = 5 [default=10485760];
-       optional int64 prebuffering_bytes = 10 [default=0];
+       // Tag 10 is unused from 1.4.0 up (it used to be prebuffering_bytes).
        optional int64 bytes_received = 3;
        repeated int64 suitable_starting_point = 9;
        optional string url = 4;
@@ -63,6 +65,11 @@ message AcceptorProto {
        optional bytes private_key = 5;
 };
 
+// For deduplicating strings in header_or_short_response.
+message ShortResponsePool {
+       optional bytes header_or_short_response = 1;
+};
+
 message CubemapStateProto {
        optional int64 serialize_start_sec = 6;
        optional int64 serialize_start_usec = 7;
@@ -70,4 +77,5 @@ message CubemapStateProto {
        repeated StreamProto streams = 2;
        repeated InputProto inputs = 5;
        repeated AcceptorProto acceptors = 8;
+       repeated ShortResponsePool short_response_pool = 9;
 };