[ 
https://issues.apache.org/jira/browse/TS-4092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15205295#comment-15205295
 ] 

ASF GitHub Bot commented on TS-4092:
------------------------------------

Github user bryancall commented on a diff in the pull request:

    https://github.com/apache/trafficserver/pull/460#discussion_r56909414
  
    --- Diff: proxy/http2/HPACK.h ---
    @@ -90,31 +97,29 @@ class MIMEFieldWrapper
         return _field;
       }
     
    +  bool
    +  is_sensitive() const
    +  {
    +    return _field->is_sensitive();
    +  }
    +
     private:
       MIMEField *_field;
       HdrHeap *_heap;
       MIMEHdrImpl *_mh;
     };
     
    -// Result of looking for a header field in IndexingTable
    -struct Http2LookupIndexResult {
    -  Http2LookupIndexResult() : index(0), value_is_indexed(false) {}
    -
    -  int index;
    -  bool value_is_indexed;
    -};
    -
     // [RFC 7541] 2.3.2. Dynamic Table
    -class Http2DynamicTable
    +class HpackDynamicTable
     {
     public:
    -  Http2DynamicTable() : _current_size(0), 
_settings_dynamic_table_size(4096)
    +  HpackDynamicTable() : _current_size(0), _maximum_size(4096)
    --- End diff --
    
    4096 should a constant in HPACK.h


> Decouple HPACK from HTTP/2
> --------------------------
>
>                 Key: TS-4092
>                 URL: https://issues.apache.org/jira/browse/TS-4092
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: HTTP/2
>            Reporter: Masakazu Kitajo
>            Assignee: Masakazu Kitajo
>             Fix For: 6.2.0
>
>
> Our HTTP/2 implementation and HPACK implementation are coupled tightly. This 
> is bad. It makes things complicated.
> I tried to write a test runner which uses [hpack-test-case 
> |https://github.com/http2jp/hpack-test-case], however, I had to call 
> functions in HTTP2.cc. Because HPACK.cc has only primitive encoder and 
> decoder, and doesn't handle header blocks. HTTP2.cc covers not only RFC7540 
> but also some part of RFC7541.
> On the other hand, HPACK.h exports pseudo header names as constants. They 
> should be in HTTP2.h or MIME.h as WKS. We don't need them in HPACK 
> implementation.
> Also, HPACK is used with QUIC (at least in current draft). We should decouple 
> HPACK from HTTP/2 so that we can use the module with QUIC in the future.
> Once we have done this, we can write tests for these improvements more easily.
> TS-4002, TS-4061, TS-4014 and TS-3478



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to