Hi All,

I am trying HTTP3 on the released 7.84.0 build with the latest ngtctp2/nghttp3 
libraries and I can't make QUIC connection.
For test I just used url: https://curl.se/ which is hosted in nginx with quic 
support.

My setup (Win32 build) is
libcurl 7.84.0, openssl+quic 1.1.1m, ngtcp2 0.6.0, nghttp3 0.5.0

Everything was OK in 7.83.1 with ngtcp2 0.5.0, nghttp3 0.4.0

The sever returns 
    CONNECTION_CLOSE (Transport) Error code: FRAME_ENCODING_ERROR
        Frame Type: CONNECTION_CLOSE (Transport) (0x000000000000001c)
        Error code: FRAME_ENCODING_ERROR (7)
        Frame Type: 9077
        Reason phrase Length: 0
        Reason phrase:

My client seems to send bad Tls data, which Wireshark marks as "Unknown" parts.
Some of that "Unknown" parts contain ALPN stuff:

Here is the Initial QUIC packet info:

Frame 31: 1242 bytes on wire (9936 bits), 1242 bytes captured (9936 bits) on 
interface \Device\NPF_{53C7C51F-BD6F-499E-BA50-9622EBC92A3E}, id 0
Ethernet II, Src: Dell_8d:c9:3b (34:48:ed:8d:c9:3b), Dst: Netgear_73:88:b4 
(44:94:fc:73:88:b4)
Internet Protocol Version 4, Src: 192.168.0.24, Dst: 151.101.129.91
User Datagram Protocol, Src Port: 53368, Dst Port: 443
QUIC IETF
    QUIC Connection information
    [Packet Length: 1200]
    1... .... = Header Form: Long Header (1)
    .1.. .... = Fixed Bit: True
    ..00 .... = Packet Type: Initial (0)
    .... 00.. = Reserved: 0
    .... ..00 = Packet Number Length: 1 bytes (0)
    Version: 1 (0x00000001)
    Destination Connection ID Length: 20
    Destination Connection ID: 0def0c0c9f43ac40b3df8f30051d150c8b15f048
    Source Connection ID Length: 20
    Source Connection ID: 9f1b12f27b2ffd37b80b4236e6836adc1b0c9763
    Token Length: 0
    Length: 1148
    Packet Number: 0
    Payload: 
c36eb1c65459289d058c19e8d96a24d520f00d62e77cef0a4c887076c613d1b72829be3a...
    CRYPTO
        Frame Type: CRYPTO (0x0000000000000006)
        Offset: 0
        Length: 64
        Crypto Data
        TLSv1.3 Record Layer: Handshake Protocol: Client Hello (fragment)
            Handshake Protocol: Client Hello (fragment)
    <Unknown>
    <Unknown>
    <Unknown>
    <Unknown>
        Frame Type: Unknown (0x0000000000003365)
        [Expert Info (Note/Undecoded): Unknown Frame Type 0x3365]
    PADDING Length: 1
        Frame Type: PADDING (0x0000000000000000)
        [Padding Length: 1]
    STREAM id=0 fin=1 off=0 len=4 dir=Bidirectional origin=Client-initiated
        Frame Type: STREAM (0x000000000000000b)
        Stream ID: 0
        Length: 4
        Stream Data: 03000102
    PADDING Length: 1
        Frame Type: PADDING (0x0000000000000000)
        [Padding Length: 1]
    STREAM id=0 fin=0 off=0 len=10 dir=Bidirectional origin=Client-initiated
        Frame Type: STREAM (0x000000000000000a)
        Stream ID: 0
        Length: 10
        Stream Data: 00080017001d00180019
    PADDING Length: 1
        Frame Type: PADDING (0x0000000000000000)
        [Padding Length: 1]
    <Unknown>
    PADDING Length: 3
        Frame Type: PADDING (0x0000000000000000)
        [Padding Length: 3]
    MAX_DATA
        Frame Type: MAX_DATA (0x0000000000000010)
        Maximum Data: 0
    STREAM id=0 fin=1 off=0 len=9 dir=Bidirectional origin=Client-initiated
        Frame Type: STREAM (0x000000000000000b)
        Stream ID: 0
        Length: 9
        Stream Data: 0568332d3239026833
    PADDING Length: 1
        Frame Type: PADDING (0x0000000000000000)
        [Padding Length: 1]
    STREAMS_BLOCKED (BIDI)
        Frame Type: STREAMS_BLOCKED (BIDI) (0x0000000000000016)
        Stream Limit: 0
    PADDING Length: 2
        Frame Type: PADDING (0x0000000000000000)
        [Padding Length: 2]
    STREAMS_BLOCKED (UNI)
        Frame Type: STREAMS_BLOCKED (UNI) (0x0000000000000017)
        Stream Limit: 0
    PADDING Length: 2
        Frame Type: PADDING (0x0000000000000000)
        [Padding Length: 2]
    STREAM id=0 fin=1 off=30 len=1003 dir=Bidirectional origin=Client-initiated
        Frame Type: STREAM (0x000000000000000d)
        Stream ID: 0
        Offset: 30
        Stream Data: 
001c040305030603080708080809080a080b080408050806040105010601002b00030203...

Has anybody stepped on this issue and if there is an easy way to fix it?

Thanks,
Dmitry Karpov


-- 
Unsubscribe: https://lists.haxx.se/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html

Reply via email to