Skip to content

curl_ngtcp2: extend callback tables for nghttp3 1.11.0 and ngtcp2 1.14.0#18019

Closed
vszakats wants to merge 1 commit intocurl:masterfrom
vszakats:ngtcp2-breakage
Closed

curl_ngtcp2: extend callback tables for nghttp3 1.11.0 and ngtcp2 1.14.0#18019
vszakats wants to merge 1 commit intocurl:masterfrom
vszakats:ngtcp2-breakage

Conversation

@vszakats
Copy link
Member

@vszakats vszakats commented Jul 25, 2025

An emergency update to initialize callbacks to NULL.

May need further updates, e.g. to provide the recommended random
generator callback for nghttp3.

Fixing potential crashes at runtime in curl-for-win 8.15.0_3, and these
build warnings:

/home/appveyor/projects/curl-for-win/curl/lib/vquic/curl_ngtcp2.c:836:1:
warning: missing field 'begin_path_validation' initializer [-Wmissing-field-initializers]
  836 | };
      | ^
/home/appveyor/projects/curl-for-win/curl/lib/vquic/curl_ngtcp2.c:1186:1:
warning: missing field 'recv_origin' initializer [-Wmissing-field-initializers]
 1186 | };
      | ^
2 warnings generated.

Ref: https://ci.appveyor.com/project/curlorg/curl-for-win/builds/52462852#L14821

Also causing all GHA/curl-for-win jobs to fail:
https://github.com/curl/curl/actions/runs/16523625082?pr=18010

Ref: https://github.com/ngtcp2/nghttp3/releases/tag/v1.11.0
Ref: https://github.com/ngtcp2/ngtcp2/releases/tag/v1.14.0
Ref: curl/curl-for-win@ff788c8

@vszakats vszakats added the HTTP/3 h3 or quic related label Jul 25, 2025
@vszakats vszakats changed the title curl_ngtcp2: fix callback table for breaking changes curl_ngtcp2: extend callback table for nghttp3 1.11.0 and ngtcp2 1.14.0 Jul 25, 2025
@vszakats vszakats changed the title curl_ngtcp2: extend callback table for nghttp3 1.11.0 and ngtcp2 1.14.0 curl_ngtcp2: extend callback tables for nghttp3 1.11.0 and ngtcp2 1.14.0 Jul 25, 2025
@vszakats vszakats closed this in 1055144 Jul 25, 2025
@vszakats
Copy link
Member Author

vszakats commented Jul 25, 2025

@jay Thanks for your review!

@vszakats vszakats deleted the ngtcp2-breakage branch July 25, 2025 15:40
vszakats added a commit to curl/curl-for-win that referenced this pull request Jul 25, 2025
Ref:
curl/curl#18019
curl/curl@1055144
https://github.com/curl/curl/commit/1055144063ca5f8c67ae6b7d727f76c9bdad88ba.diff

To fix:
```
/home/appveyor/projects/curl-for-win/curl/lib/vquic/curl_ngtcp2.c:836:1:
warning: missing field 'begin_path_validation' initializer [-Wmissing-field-initializers]
  836 | };
      | ^
/home/appveyor/projects/curl-for-win/curl/lib/vquic/curl_ngtcp2.c:1186:1:
warning: missing field 'recv_origin' initializer [-Wmissing-field-initializers]
 1186 | };
      | ^
2 warnings generated.
```
Ref: https://ci.appveyor.com/project/curlorg/curl-for-win/builds/52462852#L14821
vszakats added a commit to vszakats/curl that referenced this pull request Jul 25, 2025
```
../../lib/vquic/curl_osslq.c:1091:1: error: missing initializer for field 'recv_origin' of 'nghttp3_callbacks' [-Werror=missing-field-initializers]
 1091 | };
      | ^
In file included from ../../lib/vquic/curl_osslq.c:33:
/home/runner/nghttp3/build/include/nghttp3/nghttp3.h:2082:23: note: 'recv_origin' declared here
 2082 |   nghttp3_recv_origin recv_origin;
      |                       ^~~~~~~~~~~
```
https://github.com/curl/curl/actions/runs/16527325587/job/46743893924?pr=18021#step:18:35

Follow-up to 1055144 curl#18019
vszakats added a commit to vszakats/curl that referenced this pull request Jul 25, 2025
```
../../lib/vquic/curl_osslq.c:1091:1: error: missing initializer for field 'recv_origin' of 'nghttp3_callbacks' [-Werror=missing-field-initializers]
 1091 | };
      | ^
In file included from ../../lib/vquic/curl_osslq.c:33:
/home/runner/nghttp3/build/include/nghttp3/nghttp3.h:2082:23: note: 'recv_origin' declared here
 2082 |   nghttp3_recv_origin recv_origin;
      |                       ^~~~~~~~~~~
```
https://github.com/curl/curl/actions/runs/16527325587/job/46743893924?pr=18021#step:18:35

Follow-up to 1055144 curl#18019
vszakats added a commit that referenced this pull request Jul 25, 2025
```
../../lib/vquic/curl_osslq.c:1091:1: error: missing initializer for field 'recv_origin' of 'nghttp3_callbacks' [-Werror=missing-field-initializers]
 1091 | };
      | ^
In file included from ../../lib/vquic/curl_osslq.c:33:
/home/runner/nghttp3/build/include/nghttp3/nghttp3.h:2082:23: note: 'recv_origin' declared here
 2082 |   nghttp3_recv_origin recv_origin;
      |                       ^~~~~~~~~~~
```
Ref: https://github.com/curl/curl/actions/runs/16527325587/job/46743893924?pr=18021#step:18:35

Follow-up to 1055144 #18019

Closes #18026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

HTTP/3 h3 or quic related

Development

Successfully merging this pull request may close these issues.

2 participants