Subject: [quicwg/base-drafts] QPACK-18: Encoding of string literals (#4244)

From: Magnus Westerlund <[email-masked]>
Date: Mon, 19 Oct 2020 03:03:02 -0700

Section 4.1.2:
Although this is summary of the definition in HPACK, where this issue is clear I think this document should describe things corretly. 

HPACK defines string literals to begin on a byte boundary. They begin with a single bit flag, denoted as 'H' in this document (indicating whether the string is Huffman-coded), followed by the Length encoded as a 7-bit prefix integer, and finally Length bytes of data. When Huffman encoding is enabled, the Huffman table from Appendix B of [RFC7541] is used without modification.

The length field as described here, provides an uncertainty if it is the data pre huffman (if applied) encoding or post encoding. HPACK is clear that it is the later. Can you please clarify that the length if the length of the encoded string that is encoded using N-bit prefix integer encoding.

"An "N-bit prefix string literal" begins with the same Huffman flag, followed by the length encoded as an (N-1)-bit prefix integer." This definition if it is the byte or the prefix field that begins with the huffman flag. I would guess that what is meant is that a 6-bit prefix string literal would have a start byte of "??Hxxxxx" rather than "H??xxxxx".

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/4244

---

From: Lars Eggert <[email-masked]>
Date: Mon, 19 Oct 2020 11:06:41 -0700

This would be an "editorial" change.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/4244#issuecomment-712348761

---

From: Mike Bishop <[email-masked]>
Date: Mon, 19 Oct 2020 13:27:38 -0700

Yes, the latter is correct.  A prefixed string literal does not begin on a byte boundary; the first bit (when it begins) is the Huffman bit, and the remainder is a prefixed integer.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/4244#issuecomment-712422615

---

From: afrind <[email-masked]>
Date: Mon, 19 Oct 2020 14:01:02 -0700

Closed #4244 via #4249.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/quicwg/base-drafts/issues/4244#event-3895502319