curl / Mailing Lists / curl-users / Single Mail
Buy commercial curl support from WolfSSL. We help you work out your issues, debug your libcurl applications, use the API, port to new platforms, add new features and more. With a team lead by the curl founder himself.

HTTP/3: curl: (55) ngtcp2_conn_writev_stream returned error: ERR_CALLBACK_FAILURE

From: Paul Menzel via curl-users <curl-users_at_lists.haxx.se>
Date: Mon, 13 Jun 2022 19:30:16 +0200

Dear curl folks,


Testing curl with HTTP/3 support [1] gives the error below.

```
$ curl --version
curl 7.83.1 (x86_64-pc-linux-gnu) libcurl/7.83.1 GnuTLS/3.7.6
zlib/1.2.12 zstd/1.5.1 libpsl/0.21.0 (no IDNA support) nghttp2/1.42.0
ngtcp2/0.5.0 nghttp3/0.4.1
Release-Date: 2022-05-11
Protocols: dict file ftp ftps gopher gophers http https imap imaps mqtt
pop3 pop3s rtsp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS HSTS HTTP2 HTTP3 HTTPS-proxy IPv6 Largefile
libz NTLM NTLM_WB PSL SSL TLS-SRP UnixSockets zstd
$ curl --http3 https://nghttp2.org:4433/
curl: (55) ngtcp2_conn_writev_stream returned error: ERR_CALLBACK_FAILURE
```

The examples of ngtcp2 seem to work:

```
$ ./gtlsclient nghttp2.org 4433
I00000000 0xd697165b0c786a3bd034bd02aae51d1133 pkt tx pkn=0
dcid=0x317da1b3a7a780aba07be3dc266c1bcfb777
scid=0xd697165b0c786a3bd034bd02aae51d1133 version=0x00000001
type=Initial len=0
I00000000 0xd697165b0c786a3bd034bd02aae51d1133 frm tx 0 Initial
CRYPTO(0x06) offset=0 len=373
I00000000 0xd697165b0c786a3bd034bd02aae51d1133 frm tx 0 Initial
PADDING(0x00) len=759
I00000000 0xd697165b0c786a3bd034bd02aae51d1133 rcv
loss_detection_timer=1748002133594327 timeout=999
Sent packet: local=[141.14.26.6]:53017 remote=[139.162.123.134]:4433
ecn=0x2 1200 bytes
Set timer=0.998376s
Received packet: local=[141.14.26.6]:53017 remote=[139.162.123.134]:4433
ecn=0x2 1200 bytes
[…]
Received packet: local=[141.14.26.6]:53017 remote=[139.162.123.134]:4435
ecn=0x2 43 bytes
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 con recv packet len=43
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 pkt rx pkn=19
dcid=0x959e32b3912da549ad4e847be59eb66e43 type=1RTT k=0
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 frm rx 19 1RTT ACK(0x03)
largest_ack=16 ack_delay=0(29) ack_block_count=0
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 frm rx 19 1RTT ACK(0x03)
block=[16..13] block_count=3
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 frm rx 19 1RTT ACK(0x03)
ect0=16 ect1=0 ce=0
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 rcv latest_rtt=259
min_rtt=259 smoothed_rtt=259 rttvar=73 ack_delay=0
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 rcv pkn=16 acked, slow
start cwnd=21755
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 rcv target_cwnd=41962
max_delivery_rate_sec=15993 min_rtt=259097822
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 rcv loss detection timer
canceled
I00004903 0xd697165b0c786a3bd034bd02aae51d1133 pkt read packet 43 left 0
Set timer=0.320359s
Set timer=0.320331s
Set timer=29.678375s
ngtcp2_conn_handle_expiry: ERR_IDLE_CLOSE
```


Kind regards,

Paul


[1]: https://curl.se/docs/http3.html
-- 
Unsubscribe: https://lists.haxx.se/listinfo/curl-users
Etiquette:   https://curl.se/mail/etiquette.html
Received on 2022-06-13