diff options
author | Piotrek Zadroga <piotrek@isc.org> | 2024-02-12 22:19:40 +0100 |
---|---|---|
committer | Piotrek Zadroga <piotrek@isc.org> | 2024-02-23 17:14:05 +0100 |
commit | 565086fb2794fbdbac6add6b56e69168eec4c819 (patch) | |
tree | ce96a90d3e098cab1bffaac9427b74488c20c173 | |
parent | [#3141] config parsers boilerplate (diff) | |
download | kea-565086fb2794fbdbac6add6b56e69168eec4c819.tar.xz kea-565086fb2794fbdbac6add6b56e69168eec4c819.zip |
[#3141] added ALPN-IDs
-rw-r--r-- | src/lib/dhcp/option4_dnr.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/lib/dhcp/option4_dnr.h b/src/lib/dhcp/option4_dnr.h index fee4c60a8a..9ef1bdc786 100644 --- a/src/lib/dhcp/option4_dnr.h +++ b/src/lib/dhcp/option4_dnr.h @@ -39,6 +39,45 @@ const std::map<std::string, uint16_t> SVC_PARAMS = // not used in DNR }; +/// @brief Possible ALPN protocol IDs. +/// +/// The IANA registry is maintained at +/// https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids +static const std::unordered_set<std::string> ALPN_IDS = { + "http/0.9", // HTTP/0.9 + "http/1.0", // HTTP/1.0 + "http/1.1", // HTTP/1.1 + "spdy/1", // SPDY/1 + "spdy/2", // SPDY/2 + "spdy/3", // SPDY/3 + "stun.turn", // Traversal Using Relays around NAT (TURN) + "stun.nat-discovery", // NAT discovery using Session Traversal Utilities for NAT (STUN) + "h2", // HTTP/2 over TLS + "h2c", // HTTP/2 over TCP + "webrtc", // WebRTC Media and Data + "c-webrtc", // Confidential WebRTC Media and Data + "ftp", // FTP + "imap", // IMAP + "pop3", // POP3 + "managesieve", // ManageSieve + "coap", // CoAP + "xmpp-client", // XMPP jabber:client namespace + "xmpp-server", // XMPP jabber:server namespace + "acme-tls/1", // acme-tls/1 + "mqtt", // OASIS Message Queuing Telemetry Transport (MQTT) + "dot", // DNS-over-TLS + "ntske/1", // Network Time Security Key Establishment, version 1 + "sunrpc", // SunRPC + "h3", // HTTP/3 + "smb", // SMB2 + "irc", // IRC + "nntp", // NNTP (reading) + "nnsp", // NNTP (transit) + "doq", // DoQ + "sip/2", // SIP + "tds/8.0", // TDS/8.0 + "dicom" // DICOM +}; /// @brief Exception thrown when invalid domain name is specified. class InvalidOptionDnrDomainName : public Exception { |