core: v2ray.com/core/proxy/vless Index | Files | Directories

package vless

import "v2ray.com/core/proxy/vless"

Package vless contains the implementation of VLess protocol and transportation.

VLess contains both inbound and outbound connections. VLess inbound is usually used on servers together with 'freedom' to talk to final destination, while VLess outbound is usually used on clients with 'socks' for proxying.

Index

Package Files

account.go account.pb.go errors.generated.go validator.go vless.go

Constants

const (
    XRO = "xtls-rprx-origin"
    XRD = "xtls-rprx-direct"
)

Variables

var File_proxy_vless_account_proto protoreflect.FileDescriptor

type Account Uses

type Account struct {

    // ID of the account, in the form of a UUID, e.g., "66ad4540-b58c-4ad2-9926-ea63445a9b57".
    Id  string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
    // Flow settings. May be "xtls-rprx-origin".
    Flow string `protobuf:"bytes,2,opt,name=flow,proto3" json:"flow,omitempty"`
    // Encryption settings. Only applies to client side, and only accepts "none" for now.
    Encryption string `protobuf:"bytes,3,opt,name=encryption,proto3" json:"encryption,omitempty"`
    // contains filtered or unexported fields
}

func (*Account) AsAccount Uses

func (a *Account) AsAccount() (protocol.Account, error)

AsAccount implements protocol.Account.AsAccount().

func (*Account) Descriptor Uses

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

Deprecated: Use Account.ProtoReflect.Descriptor instead.

func (*Account) GetEncryption Uses

func (x *Account) GetEncryption() string

func (*Account) GetFlow Uses

func (x *Account) GetFlow() string

func (*Account) GetId Uses

func (x *Account) GetId() string

func (*Account) ProtoMessage Uses

func (*Account) ProtoMessage()

func (*Account) ProtoReflect Uses

func (x *Account) ProtoReflect() protoreflect.Message

func (*Account) Reset Uses

func (x *Account) Reset()

func (*Account) String Uses

func (x *Account) String() string

type MemoryAccount Uses

type MemoryAccount struct {
    // ID of the account.
    ID  *protocol.ID
    // Flow of the account. May be "xtls-rprx-origin".
    Flow string
    // Encryption of the account. Used for client connections, and only accepts "none" for now.
    Encryption string
}

MemoryAccount is an in-memory form of VLess account.

func (*MemoryAccount) Equals Uses

func (a *MemoryAccount) Equals(account protocol.Account) bool

Equals implements protocol.Account.Equals().

type Validator Uses

type Validator struct {
    // contains filtered or unexported fields
}

func (*Validator) Add Uses

func (v *Validator) Add(u *protocol.MemoryUser) error

func (*Validator) Del Uses

func (v *Validator) Del(e string) error

func (*Validator) Get Uses

func (v *Validator) Get(id uuid.UUID) *protocol.MemoryUser

Directories

PathSynopsis
encoding
inbound
outbound

Package vless imports 9 packages (graph) and is imported by 19 packages. Updated 2020-10-16. Refresh now. Tools for package owners.