Commit Graph

2620 Commits

Author SHA1 Message Date
stammw aa0ba2970a QPACK: refactor encoder stream instruction outside decoder 2019-02-08 20:33:17 +01:00
stammw d86bc928ce QPACK: Fix incomplete message parsing consuming too much bytes and breaking 2019-02-08 20:33:17 +01:00
stammw e4d490f843 QPACK: Send Table state synchronize message back to the encoder 2019-02-08 20:33:17 +01:00
stammw e16ef57f7a QPACK: refactor decoder tests 2019-02-08 20:33:17 +01:00
stammw 4f1d6b95f8 QPACK: add test when entries dropped, and base index calculation, fix vas 2019-02-08 20:33:17 +01:00
stammw 12b1b25892 QPACK: refactor encoder stream decode function 2019-02-08 20:33:17 +01:00
stammw 1528ac60cb QPACK: refactor error decoder handling 2019-02-08 20:33:17 +01:00
stammw 40899b2e35 QPACK: simplify name reference code with header field value method 2019-02-08 20:33:17 +01:00
stammw 38f925f99b QPACK: header bloc decoding implementation 2019-02-08 20:33:17 +01:00
stammw b50926027f QPACK: Fix last post base index exlusion 2019-02-08 20:33:17 +01:00
stammw 539b35f287 QPACK: get largest reference from VirtualAddressSpace 2019-02-08 20:33:17 +01:00
stammw 772d8739bb QPACK: rework decoder to use prefix_* mods and remove unused code 2019-02-08 20:33:17 +01:00
stammw ed37636805 QPACK: rewrite prefixed string using codec traits 2019-02-08 20:33:17 +01:00
stammw 76cd18b7c8 QPACK: rewrite prefixed integers using Codec traits 2019-02-08 20:33:17 +01:00
stammw 664ecef22d QPACK: reformat after big rebase 2019-02-08 20:33:17 +01:00
stammw ceed37e2ed QPACK: retreive fields by name in static table 2019-02-08 20:33:17 +01:00
evolix1 0e1142dedd Improve clarity in primitives code 2019-02-08 20:33:17 +01:00
evolix1 7eac5495e1 Update draft reference for table indexing 2019-02-08 20:33:17 +01:00
evolix1 02a0a4225a Refurbish test on tables to better express my intention
* Also fix implementation of table size
2019-02-08 20:33:17 +01:00
evolix1 d7722274dd Fix static table index 2019-02-08 20:33:17 +01:00
evolix1 47dc9eaf8d Reorganise files location in QPack to better readability 2019-02-08 20:33:17 +01:00
evolix1 65de25712b Optimize starterbyte and clarify its functions 2019-02-08 20:33:17 +01:00
evolix1 503527a1c2 Huffman string encoding 2019-02-08 20:33:17 +01:00
evolix1 3760c83811 Moved string decoding to module 2019-02-08 20:33:17 +01:00
evolix1 36c7a633a1 Add resource for huffman string decoding 2019-02-08 20:33:17 +01:00
evolix1 4b92c23011 Fix bug in decoder by testing huffman code 2019-02-08 20:33:17 +01:00
evolix1 f2e8c0779e Decode huffman string in parser 2019-02-08 20:33:17 +01:00
evolix1 c08ce751b8 Huffman decoding complete 2019-02-08 20:33:17 +01:00
evolix1 f88773cb11 Huffman string decoding 2019-02-08 20:33:17 +01:00
evolix1 1edb793a77 Anti-regression tests for starter byte 2019-02-08 20:33:17 +01:00
evolix1 8649431d96 Read corner case on string primitive 2019-02-08 20:33:17 +01:00
evolix1 595df90290 Simplify starter byte without prefix 2019-02-08 20:33:17 +01:00
evolix1 5076b75395 Encode string 2019-02-08 20:33:17 +01:00
evolix1 9300f23a1a Add StarteByte to wrap bit context over encoding/decoding 2019-02-08 20:33:17 +01:00
evolix1 b87151d63e Add dump for integer primitive 2019-02-08 20:33:17 +01:00
evolix1 a727125de8 Use usize for prefix value 2019-02-08 20:33:17 +01:00
evolix1 166012a29b Re-enabled some tests of Decoder and improved coverage for static table 2019-02-08 20:33:17 +01:00
evolix1 1319acd005 Static field for QPACK version and date 2019-02-08 20:33:17 +01:00
evolix1 3023f7c598 Put header of QPACK draft 2019-02-08 20:33:17 +01:00
evolix1 ccca02e7ef Rename feed_stream and use usize 2019-02-08 20:33:17 +01:00
evolix1 c323e23243 Use QPACK indexing in decoder
* Temporary disabled tests because of limitations
2019-02-08 20:33:17 +01:00
evolix1 cbdaf1f8be Fix bug in qpack indexing 2019-02-08 20:33:17 +01:00
evolix1 d429f9a89e Remove legacy proptest regression file 2019-02-08 20:33:17 +01:00
evolix1 7b00d35537 Support for QPACK dynamic table indexing
* Use proptest to verify inputs
* Type to map QPACK indexing to actual container indexes
2019-02-08 20:33:17 +01:00
evolix1 f1cbda807b Remove unused bit_field crate 2019-02-08 20:33:17 +01:00
evolix1 8f0228355f Add duplication of field in table 2019-02-08 20:33:17 +01:00
evolix1 318d2d430b Add insertion of field without ref 2019-02-08 20:33:17 +01:00
evolix1 71b7069055 Test error cases around field insertion with ref to table 2019-02-08 20:33:17 +01:00
evolix1 508f20206e Add dynamic field insertion
* Handle encoder stream field insertion with name reference
* Suppose relative index is same as absolute index
* Use bytes instead of string in field
2019-02-08 20:33:17 +01:00
evolix1 cbc1da26f1 Read HPACK string (no huffman coding) 2019-02-08 20:33:17 +01:00