import "github.com/v2ray/v2ray-core/transport/internet/xtls"
config.go config.pb.go config_other.go errors.generated.go xtls.go
var ( Certificate_Usage_name = map[int32]string{ 0: "ENCIPHERMENT", 1: "AUTHORITY_VERIFY", 2: "AUTHORITY_ISSUE", } Certificate_Usage_value = map[string]int32{ "ENCIPHERMENT": 0, "AUTHORITY_VERIFY": 1, "AUTHORITY_ISSUE": 2, } )
Enum value maps for Certificate_Usage.
var File_transport_internet_xtls_config_proto protoreflect.FileDescriptor
Client initiates a XTLS client handshake on the given connection.
Server initiates a XTLS server handshake on the given connection.
type Certificate struct { // XTLS certificate in x509 format. Certificate []byte `protobuf:"bytes,1,opt,name=Certificate,proto3" json:"Certificate,omitempty"` // XTLS key in x509 format. Key []byte `protobuf:"bytes,2,opt,name=Key,proto3" json:"Key,omitempty"` Usage Certificate_Usage `protobuf:"varint,3,opt,name=usage,proto3,enum=v2ray.core.transport.internet.xtls.Certificate_Usage" json:"usage,omitempty"` // contains filtered or unexported fields }
func ParseCertificate(c *cert.Certificate) *Certificate
ParseCertificate converts a cert.Certificate to Certificate.
func (*Certificate) Descriptor() ([]byte, []int)
Deprecated: Use Certificate.ProtoReflect.Descriptor instead.
func (x *Certificate) GetCertificate() []byte
func (x *Certificate) GetKey() []byte
func (x *Certificate) GetUsage() Certificate_Usage
func (*Certificate) ProtoMessage()
func (x *Certificate) ProtoReflect() protoreflect.Message
func (x *Certificate) Reset()
func (x *Certificate) String() string
const ( Certificate_ENCIPHERMENT Certificate_Usage = 0 Certificate_AUTHORITY_VERIFY Certificate_Usage = 1 Certificate_AUTHORITY_ISSUE Certificate_Usage = 2 )
func (Certificate_Usage) Descriptor() protoreflect.EnumDescriptor
func (x Certificate_Usage) Enum() *Certificate_Usage
func (Certificate_Usage) EnumDescriptor() ([]byte, []int)
Deprecated: Use Certificate_Usage.Descriptor instead.
func (x Certificate_Usage) Number() protoreflect.EnumNumber
func (x Certificate_Usage) String() string
func (Certificate_Usage) Type() protoreflect.EnumType
type Config struct { // Whether or not to allow self-signed certificates. AllowInsecure bool `protobuf:"varint,1,opt,name=allow_insecure,json=allowInsecure,proto3" json:"allow_insecure,omitempty"` // Whether or not to allow insecure cipher suites. AllowInsecureCiphers bool `protobuf:"varint,5,opt,name=allow_insecure_ciphers,json=allowInsecureCiphers,proto3" json:"allow_insecure_ciphers,omitempty"` // List of certificates to be served on server. Certificate []*Certificate `protobuf:"bytes,2,rep,name=certificate,proto3" json:"certificate,omitempty"` // Override server name. ServerName string `protobuf:"bytes,3,opt,name=server_name,json=serverName,proto3" json:"server_name,omitempty"` // Lists of string as ALPN values. NextProtocol []string `protobuf:"bytes,4,rep,name=next_protocol,json=nextProtocol,proto3" json:"next_protocol,omitempty"` // Whether or not to disable session (ticket) resumption. DisableSessionResumption bool `protobuf:"varint,6,opt,name=disable_session_resumption,json=disableSessionResumption,proto3" json:"disable_session_resumption,omitempty"` // If true, root certificates on the system will not be loaded for // verification. DisableSystemRoot bool `protobuf:"varint,7,opt,name=disable_system_root,json=disableSystemRoot,proto3" json:"disable_system_root,omitempty"` // contains filtered or unexported fields }
func ConfigFromStreamSettings(settings *internet.MemoryStreamConfig) *Config
ConfigFromStreamSettings fetches Config from stream settings. Nil if not found.
func (c *Config) BuildCertificates() []xtls.Certificate
BuildCertificates builds a list of TLS certificates from proto definition.
Deprecated: Use Config.ProtoReflect.Descriptor instead.
func (x *Config) GetCertificate() []*Certificate
GetXTLSConfig converts this Config into xtls.Config.
func (x *Config) ProtoReflect() protoreflect.Message
func (c *Conn) WriteMultiBuffer(mb buf.MultiBuffer) error
Option for building XTLS config.
func WithDestination(dest net.Destination) Option
WithDestination sets the server name in XTLS config.
WithNextProto sets the ALPN values in XTLS config.
Package xtls imports 13 packages (graph). Updated 2020-10-11. Refresh now. Tools for package owners.