node/lib/internal/quic/symbols.js
James M Snell abb881ec92
quic: support multiple ALPN negotiation
Signed-off-by: James M Snell <jasnell@gmail.com>
Assisted-by: Opencode:Opus 4.6
PR-URL: https://github.com/nodejs/node/pull/62620
Reviewed-By: Robert Nagy <ronagy@icloud.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
2026-05-07 18:14:56 +02:00

80 lines
1.9 KiB
JavaScript

'use strict';
const {
Symbol,
} = primordials;
const {
getOptionValue,
} = require('internal/options');
if (!process.features.quic || !getOptionValue('--experimental-quic')) {
return;
}
const {
customInspectSymbol: kInspect,
} = require('internal/util');
const {
kHandle: kKeyObjectHandle,
} = require('internal/crypto/util');
// Symbols used to hide various private properties and methods from the
// public API.
const kBlocked = Symbol('kBlocked');
const kConnect = Symbol('kConnect');
const kDatagram = Symbol('kDatagram');
const kDatagramStatus = Symbol('kDatagramStatus');
const kFinishClose = Symbol('kFinishClose');
const kHandshake = Symbol('kHandshake');
const kHeaders = Symbol('kHeaders');
const kListen = Symbol('kListen');
const kNewSession = Symbol('kNewSession');
const kNewStream = Symbol('kNewStream');
const kOnHeaders = Symbol('kOnHeaders');
const kOnTrailers = Symbol('kOwnTrailers');
const kOwner = Symbol('kOwner');
const kPathValidation = Symbol('kPathValidation');
const kPrivateConstructor = Symbol('kPrivateConstructor');
const kRemoveSession = Symbol('kRemoveSession');
const kRemoveStream = Symbol('kRemoveStream');
const kReset = Symbol('kReset');
const kSendHeaders = Symbol('kSendHeaders');
const kSessionTicket = Symbol('kSessionTicket');
const kState = Symbol('kState');
const kTrailers = Symbol('kTrailers');
const kVersionNegotiation = Symbol('kVersionNegotiation');
const kWantsHeaders = Symbol('kWantsHeaders');
const kWantsTrailers = Symbol('kWantsTrailers');
module.exports = {
kBlocked,
kConnect,
kDatagram,
kDatagramStatus,
kFinishClose,
kHandshake,
kHeaders,
kInspect,
kKeyObjectHandle,
kListen,
kNewSession,
kNewStream,
kOnHeaders,
kOnTrailers,
kOwner,
kPathValidation,
kPrivateConstructor,
kRemoveSession,
kRemoveStream,
kReset,
kSendHeaders,
kSessionTicket,
kState,
kTrailers,
kVersionNegotiation,
kWantsHeaders,
kWantsTrailers,
};