PQ Crypta Logo

curl — SETTINGS_H3_DATAGRAM with a value that is neither 0 nor 1

The suite could not establish what this client does here. That is a shortcoming of the run rather than anything about the client, and every one of these is on our list to remove.

PQ CRYPTA PLATFORM

🏠 Main

🧪 Interactive Apps

📰 News

🛡️ PQ Crypta Proxy

👤 Account

⟨ QUANTUM ERROR PORTAL ⟩

Navigate the Error Dimensions

Jump to an anomaly59

Every one of these is a page: what the server emits, the clause it is judged against, and how each client answered. The full list carries the verdict tallies too.

Inconclusive

Objected, but at the QUIC layer (rejected at the QUIC layer with INTERNAL_ERROR), so the HTTP/3 error code could not be read. §8.1 carries an HTTP/3 connection error in an application close, and this test asks for 0x109 specifically — whether that was the client's reasoning is not observable from here.

The suite could not establish what this client does here. That is a shortcoming of the run rather than anything about the client, and every one of these is on our list to remove.

What was measured

Client
curl — ngtcp2 + nghttp3, ngtcp2/1.11.0
Test
SETTINGS_H3_DATAGRAM with a value that is neither 0 nor 1h-datagram-setting-invalid
Clause
RFC 9297 §2.1.1 (MUST)
Class
correctness — Rejected something invalid, with the code the RFC names.
Required behaviour
Close the connection with H3_SETTINGS_ERROR. Unusually for a setting, RFC 9297 pins down the invalid-value case rather than leaving it open: the value "MUST be either 0 or 1", and if one "is received with a value that is neither 0 nor 1, the receiver MUST terminate the connection with error H3_SETTINGS_ERROR". This is the setting that gates HTTP Datagrams and so WebTransport, which means a client that implements either has real parsing behind it rather than an ignored identifier.
Measured
2026-09-18

Reproduce it

The suite is the judge, so the reproduction is to point the same client at the same test and let the server report what it saw.

SESSION=$(curl -sX POST https://conformance.pqcrypta.com/session | jq -r .id)
# then drive curl at the test URL and read the verdict:
curl -s https://conformance.pqcrypta.com/report/$SESSION.json | jq '.results["h-datagram-setting-invalid"]'