├── .appveyor.yml ├── .cirrus.yml ├── .travis.yml ├── CMakeLists.txt ├── LICENSE ├── README.md ├── bin ├── CMakeLists.txt ├── encode-int.c ├── fuzz-decode.c ├── interop-decode.c └── interop-encode.c ├── deps └── xxhash │ ├── xxhash.c │ └── xxhash.h ├── fuzz ├── decode │ ├── a │ │ ├── README │ │ ├── preamble │ │ └── test-cases │ │ │ ├── id_000000,sig_06,src_000390,op_havoc,rep_4 │ │ │ ├── id_000000,sig_06,src_000579,op_flip1,pos_14 │ │ │ ├── id_000000,src_000000,op_flip2,pos_12 │ │ │ ├── id_000001,sig_11,src_000579,op_havoc,rep_4 │ │ │ ├── id_000002,sig_11,src_000481,op_int16,pos_15,val_-1 │ │ │ ├── id_000002,src_000000,op_havoc,rep_8 │ │ │ ├── id_000006,src_000285,op_flip2,pos_14 │ │ │ ├── id_000008,src_000285,op_flip2,pos_20 │ │ │ ├── id_000010,src_000306,op_flip2,pos_75 │ │ │ ├── id_000011,src_000344,op_havoc,rep_2 │ │ │ └── id_000014,src_000366,op_flip2,pos_28 │ ├── b │ │ ├── README │ │ ├── preamble │ │ └── test-cases │ │ │ └── seed │ ├── c │ │ ├── setup.sh │ │ └── test-cases │ │ │ └── fb-req.qif.proxygen.out.256.100.0-chopped │ └── d │ │ ├── preamble │ │ ├── setup.sh │ │ └── test-cases │ │ └── fb-resp.minhq.256.128.0.ack └── input │ └── 256.100.1 │ ├── fb-req.out.256.100.1 │ ├── fb-resp.out.256.100.1 │ └── netbsd.out.256.100.1 ├── huff-tables.h ├── ls-qpack-config.cmake.in ├── lsqpack.c ├── lsqpack.h ├── lsqpack.pc.in ├── lsxpack_header.h ├── test ├── CMakeLists.txt ├── lsqpack-test.h ├── qifs │ ├── fb-req.qif │ ├── fb-resp.qif │ ├── long-codes.qif │ └── netbsd.qif ├── run-qif.pl ├── run-scenario.sh ├── scenarios │ ├── 0.95-reset.sce │ ├── cancel-stream.sce │ ├── drain-2.sce │ ├── drain.sce │ ├── end-dst-2.sce │ ├── end-dst.sce │ ├── incl-name.sce │ ├── multi-byte-int-dyn-ref-1.sce │ ├── multi-byte-int-dyn-ref-2.sce │ ├── post-base-1.sce │ ├── post-base-2.sce │ ├── post-base-nr.sce │ └── set-max-cap.sce ├── test_circ_list.c ├── test_dec_crash_case.c ├── test_dyn_table_cap_mismatch.c ├── test_enc_str.c ├── test_huff_dec.c ├── test_int.c ├── test_qpack.c ├── test_read_enc_stream.c └── testdata │ ├── encoder_stream │ └── response ├── tools ├── gen-enums.pl ├── har2qif.pl ├── randomize-cookies.pl └── sort-qif.pl └── wincompat └── sys └── queue.h /.appveyor.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/.appveyor.yml -------------------------------------------------------------------------------- /.cirrus.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/.cirrus.yml -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/.travis.yml -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/README.md -------------------------------------------------------------------------------- /bin/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/bin/CMakeLists.txt -------------------------------------------------------------------------------- /bin/encode-int.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/bin/encode-int.c -------------------------------------------------------------------------------- /bin/fuzz-decode.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/bin/fuzz-decode.c -------------------------------------------------------------------------------- /bin/interop-decode.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/bin/interop-decode.c -------------------------------------------------------------------------------- /bin/interop-encode.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/bin/interop-encode.c -------------------------------------------------------------------------------- /deps/xxhash/xxhash.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/deps/xxhash/xxhash.c -------------------------------------------------------------------------------- /deps/xxhash/xxhash.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/deps/xxhash/xxhash.h -------------------------------------------------------------------------------- /fuzz/decode/a/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/README -------------------------------------------------------------------------------- /fuzz/decode/a/preamble: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/preamble -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000000,sig_06,src_000390,op_havoc,rep_4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000000,sig_06,src_000390,op_havoc,rep_4 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000000,sig_06,src_000579,op_flip1,pos_14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000000,sig_06,src_000579,op_flip1,pos_14 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000000,src_000000,op_flip2,pos_12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000000,src_000000,op_flip2,pos_12 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000001,sig_11,src_000579,op_havoc,rep_4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000001,sig_11,src_000579,op_havoc,rep_4 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000002,sig_11,src_000481,op_int16,pos_15,val_-1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000002,sig_11,src_000481,op_int16,pos_15,val_-1 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000002,src_000000,op_havoc,rep_8: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000002,src_000000,op_havoc,rep_8 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000006,src_000285,op_flip2,pos_14: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000006,src_000285,op_flip2,pos_14 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000008,src_000285,op_flip2,pos_20: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000008,src_000285,op_flip2,pos_20 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000010,src_000306,op_flip2,pos_75: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000010,src_000306,op_flip2,pos_75 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000011,src_000344,op_havoc,rep_2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000011,src_000344,op_havoc,rep_2 -------------------------------------------------------------------------------- /fuzz/decode/a/test-cases/id_000014,src_000366,op_flip2,pos_28: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/a/test-cases/id_000014,src_000366,op_flip2,pos_28 -------------------------------------------------------------------------------- /fuzz/decode/b/README: -------------------------------------------------------------------------------- 1 | Table size: 4096 2 | -------------------------------------------------------------------------------- /fuzz/decode/b/preamble: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/b/preamble -------------------------------------------------------------------------------- /fuzz/decode/b/test-cases/seed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/b/test-cases/seed -------------------------------------------------------------------------------- /fuzz/decode/c/setup.sh: -------------------------------------------------------------------------------- 1 | # Source this file 2 | export USE_QPACK_05=1 3 | ARGS='interop-decode -i @@ -o /dev/null -s 100 -t 256' 4 | -------------------------------------------------------------------------------- /fuzz/decode/c/test-cases/fb-req.qif.proxygen.out.256.100.0-chopped: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/c/test-cases/fb-req.qif.proxygen.out.256.100.0-chopped -------------------------------------------------------------------------------- /fuzz/decode/d/preamble: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/d/preamble -------------------------------------------------------------------------------- /fuzz/decode/d/setup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/d/setup.sh -------------------------------------------------------------------------------- /fuzz/decode/d/test-cases/fb-resp.minhq.256.128.0.ack: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/decode/d/test-cases/fb-resp.minhq.256.128.0.ack -------------------------------------------------------------------------------- /fuzz/input/256.100.1/fb-req.out.256.100.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/input/256.100.1/fb-req.out.256.100.1 -------------------------------------------------------------------------------- /fuzz/input/256.100.1/fb-resp.out.256.100.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/input/256.100.1/fb-resp.out.256.100.1 -------------------------------------------------------------------------------- /fuzz/input/256.100.1/netbsd.out.256.100.1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/fuzz/input/256.100.1/netbsd.out.256.100.1 -------------------------------------------------------------------------------- /huff-tables.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/huff-tables.h -------------------------------------------------------------------------------- /ls-qpack-config.cmake.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/ls-qpack-config.cmake.in -------------------------------------------------------------------------------- /lsqpack.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/lsqpack.c -------------------------------------------------------------------------------- /lsqpack.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/lsqpack.h -------------------------------------------------------------------------------- /lsqpack.pc.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/lsqpack.pc.in -------------------------------------------------------------------------------- /lsxpack_header.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/lsxpack_header.h -------------------------------------------------------------------------------- /test/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/CMakeLists.txt -------------------------------------------------------------------------------- /test/lsqpack-test.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/lsqpack-test.h -------------------------------------------------------------------------------- /test/qifs/fb-req.qif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/qifs/fb-req.qif -------------------------------------------------------------------------------- /test/qifs/fb-resp.qif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/qifs/fb-resp.qif -------------------------------------------------------------------------------- /test/qifs/long-codes.qif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/qifs/long-codes.qif -------------------------------------------------------------------------------- /test/qifs/netbsd.qif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/qifs/netbsd.qif -------------------------------------------------------------------------------- /test/run-qif.pl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/run-qif.pl -------------------------------------------------------------------------------- /test/run-scenario.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/run-scenario.sh -------------------------------------------------------------------------------- /test/scenarios/0.95-reset.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/0.95-reset.sce -------------------------------------------------------------------------------- /test/scenarios/cancel-stream.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/cancel-stream.sce -------------------------------------------------------------------------------- /test/scenarios/drain-2.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/drain-2.sce -------------------------------------------------------------------------------- /test/scenarios/drain.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/drain.sce -------------------------------------------------------------------------------- /test/scenarios/end-dst-2.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/end-dst-2.sce -------------------------------------------------------------------------------- /test/scenarios/end-dst.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/end-dst.sce -------------------------------------------------------------------------------- /test/scenarios/incl-name.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/incl-name.sce -------------------------------------------------------------------------------- /test/scenarios/multi-byte-int-dyn-ref-1.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/multi-byte-int-dyn-ref-1.sce -------------------------------------------------------------------------------- /test/scenarios/multi-byte-int-dyn-ref-2.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/multi-byte-int-dyn-ref-2.sce -------------------------------------------------------------------------------- /test/scenarios/post-base-1.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/post-base-1.sce -------------------------------------------------------------------------------- /test/scenarios/post-base-2.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/post-base-2.sce -------------------------------------------------------------------------------- /test/scenarios/post-base-nr.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/post-base-nr.sce -------------------------------------------------------------------------------- /test/scenarios/set-max-cap.sce: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/scenarios/set-max-cap.sce -------------------------------------------------------------------------------- /test/test_circ_list.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/test_circ_list.c -------------------------------------------------------------------------------- /test/test_dec_crash_case.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/test_dec_crash_case.c -------------------------------------------------------------------------------- /test/test_dyn_table_cap_mismatch.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/test_dyn_table_cap_mismatch.c -------------------------------------------------------------------------------- /test/test_enc_str.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/test_enc_str.c -------------------------------------------------------------------------------- /test/test_huff_dec.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/test_huff_dec.c -------------------------------------------------------------------------------- /test/test_int.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/test_int.c -------------------------------------------------------------------------------- /test/test_qpack.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/test_qpack.c -------------------------------------------------------------------------------- /test/test_read_enc_stream.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/test_read_enc_stream.c -------------------------------------------------------------------------------- /test/testdata/encoder_stream: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/testdata/encoder_stream -------------------------------------------------------------------------------- /test/testdata/response: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/test/testdata/response -------------------------------------------------------------------------------- /tools/gen-enums.pl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/tools/gen-enums.pl -------------------------------------------------------------------------------- /tools/har2qif.pl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/tools/har2qif.pl -------------------------------------------------------------------------------- /tools/randomize-cookies.pl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/tools/randomize-cookies.pl -------------------------------------------------------------------------------- /tools/sort-qif.pl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/tools/sort-qif.pl -------------------------------------------------------------------------------- /wincompat/sys/queue.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/litespeedtech/ls-qpack/HEAD/wincompat/sys/queue.h --------------------------------------------------------------------------------