> On Aug 12, 2016, at 3:03 PM, James Peach <jpe...@apache.org> wrote:
> 
> 
>> On Aug 12, 2016, at 11:55 AM, Susan Hinrichs 
>> <shinr...@network-geographics.com> wrote:
>> 
>> Barring the poor formatting of this particular email, this API seems like a 
>> reasonable trade-off.
> 
> Yeh I think this is a superset of all the proposals we have seen so far :)
> 
> What do you think about the implementability/usability of this API?

Also, is this intended to publish websockets too? If so, could you please 
coordinate with Oliver Goodman wrt his API proposal? thanks :)

> 
>> 
>> 
>> On 8/9/2016 8:29 PM, Alan Carroll wrote:
>>> What if we made the API a bit more general.
>>> TSReturnCode TSTxnClientProtocolStackGet(TSHttpTxn txnp, int count, char 
>>> **result, int* actual);
>>> This function returns an array of static character strings that represent 
>>> the protocol stack for the user agent connection. *result* is an array of 
>>> char const* pointers with at least *count* elements. The protocols are 
>>> listed from higher to lower in *result*. If there is insufficient space in 
>>> *result* the lower protocols are not stored. The number of protocols is 
>>> return in *actual* if *actual* is not NULL. Note that *actual* can be 
>>> larger than *count* - this indicates that protocols were discarded and not 
>>> put in to *result*. Pointers in *result* that are not required are 
>>> unchanged. No element of *result* past the first *count* elements will be 
>>> modified.
>>> 
>>> Callers can detect the size of the return array by 
>>> std::min(*actual*,*count*). Alternatively the array can be pre-zero'd and 
>>> the caller can walk until a NULL pointer is found. If this is required then 
>>> *count* can be set to be one less than the actual array size. Callers 
>>> interested in just the top level protocol can pass *count* as 1 with the 
>>> address of a char const* and NULL for *actual*.
>>> Defined strings:
>>> Protocol          Tag
>>> HTTP/2            h2HTTP/1.1          http/1.1HTTP/1.0          
>>> http/1.0QUIC              quicTCP               tcpUDP               udpTLS 
>>>               tlsWeb Sockets       ws
>>> 
>>> 
>>> 
>>> 
>> 
> 

Reply via email to