tls

package
v3.17.1+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2018 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Certificate_Usage_name = map[int32]string{
	0: "ENCIPHERMENT",
	1: "AUTHORITY_VERIFY",
	2: "AUTHORITY_ISSUE",
}
View Source
var Certificate_Usage_value = map[string]int32{
	"ENCIPHERMENT":     0,
	"AUTHORITY_VERIFY": 1,
	"AUTHORITY_ISSUE":  2,
}

Functions

func Client

func Client(c net.Conn, config *tls.Config) net.Conn

func Server

func Server(c net.Conn, config *tls.Config) net.Conn

Types

type Certificate

type Certificate struct {
	// TLS certificate in x509 format.
	Certificate []byte `protobuf:"bytes,1,opt,name=Certificate,proto3" json:"Certificate,omitempty"`
	// TLS 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,enum=v2ray.core.transport.internet.tls.Certificate_Usage" json:"usage,omitempty"`
}

func ParseCertificate

func ParseCertificate(c *cert.Certificate) *Certificate

ParseCertificate converts a cert.Certificate to Certificate.

func (*Certificate) Descriptor

func (*Certificate) Descriptor() ([]byte, []int)

func (*Certificate) GetCertificate

func (m *Certificate) GetCertificate() []byte

func (*Certificate) GetKey

func (m *Certificate) GetKey() []byte

func (*Certificate) GetUsage

func (m *Certificate) GetUsage() Certificate_Usage

func (*Certificate) ProtoMessage

func (*Certificate) ProtoMessage()

func (*Certificate) Reset

func (m *Certificate) Reset()

func (*Certificate) String

func (m *Certificate) String() string

type Certificate_Usage

type Certificate_Usage int32
const (
	Certificate_ENCIPHERMENT     Certificate_Usage = 0
	Certificate_AUTHORITY_VERIFY Certificate_Usage = 1
	Certificate_AUTHORITY_ISSUE  Certificate_Usage = 2
)

func (Certificate_Usage) EnumDescriptor

func (Certificate_Usage) EnumDescriptor() ([]byte, []int)

func (Certificate_Usage) String

func (x Certificate_Usage) String() string

type Config

type Config struct {
	// Whether or not to allow self-signed certificates.
	AllowInsecure bool `protobuf:"varint,1,opt,name=allow_insecure,json=allowInsecure" json:"allow_insecure,omitempty"`
	// List of certificates to be served on server.
	Certificate []*Certificate `protobuf:"bytes,2,rep,name=certificate" json:"certificate,omitempty"`
	// Override server name.
	ServerName string `protobuf:"bytes,3,opt,name=server_name,json=serverName" json:"server_name,omitempty"`
	// Lists of string as ALPN values.
	NextProtocol []string `protobuf:"bytes,4,rep,name=next_protocol,json=nextProtocol" json:"next_protocol,omitempty"`
}

func ConfigFromContext

func ConfigFromContext(ctx context.Context) *Config

func (*Config) BuildCertificates

func (c *Config) BuildCertificates() []tls.Certificate

func (*Config) Descriptor

func (*Config) Descriptor() ([]byte, []int)

func (*Config) GetAllowInsecure

func (m *Config) GetAllowInsecure() bool

func (*Config) GetCertPool

func (c *Config) GetCertPool() *x509.CertPool

func (*Config) GetCertificate

func (m *Config) GetCertificate() []*Certificate

func (*Config) GetNextProtocol

func (m *Config) GetNextProtocol() []string

func (*Config) GetServerName

func (m *Config) GetServerName() string

func (*Config) GetTLSConfig

func (c *Config) GetTLSConfig(opts ...Option) *tls.Config

func (*Config) ProtoMessage

func (*Config) ProtoMessage()

func (*Config) Reset

func (m *Config) Reset()

func (*Config) String

func (m *Config) String() string

type Option

type Option func(*tls.Config)

func WithDestination

func WithDestination(dest net.Destination) Option

func WithNextProto

func WithNextProto(protocol ...string) Option

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL