Documentation ¶
Overview ¶
Package vmess contains the implementation of VMess protocol and transportation.
VMess contains both inbound and outbound connections. VMess inbound is usually used on servers together with 'freedom' to talk to final destination, while VMess outbound is usually used on clients with 'socks' for proxying.
Index ¶
- type Account
- func (a *Account) AsAccount() (protocol.Account, error)
- func (*Account) Descriptor() ([]byte, []int)
- func (m *Account) GetAlterId() uint32
- func (m *Account) GetId() string
- func (m *Account) GetSecuritySettings() *protocol.SecurityConfig
- func (*Account) ProtoMessage()
- func (m *Account) Reset()
- func (m *Account) String() string
- func (m *Account) XXX_DiscardUnknown()
- func (m *Account) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (dst *Account) XXX_Merge(src proto.Message)
- func (m *Account) XXX_Size() int
- func (m *Account) XXX_Unmarshal(b []byte) error
- type InternalAccount
- type TimedUserValidator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Account ¶ added in v1.1.0
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"` // Number of alternative IDs. Client and server must share the same number. AlterId uint32 `protobuf:"varint,2,opt,name=alter_id,json=alterId,proto3" json:"alter_id,omitempty"` // Security settings. Only applies to client side. SecuritySettings *protocol.SecurityConfig `protobuf:"bytes,3,opt,name=security_settings,json=securitySettings,proto3" json:"security_settings,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Account) Descriptor ¶ added in v1.1.0
func (*Account) GetAlterId ¶ added in v1.1.0
func (*Account) GetSecuritySettings ¶ added in v1.1.0
func (m *Account) GetSecuritySettings() *protocol.SecurityConfig
func (*Account) ProtoMessage ¶ added in v1.1.0
func (*Account) ProtoMessage()
func (*Account) XXX_DiscardUnknown ¶
func (m *Account) XXX_DiscardUnknown()
func (*Account) XXX_Marshal ¶
func (*Account) XXX_Unmarshal ¶
type InternalAccount ¶
type InternalAccount struct { ID *protocol.ID AlterIDs []*protocol.ID Security protocol.SecurityType }
func (*InternalAccount) AnyValidID ¶
func (a *InternalAccount) AnyValidID() *protocol.ID
type TimedUserValidator ¶ added in v1.1.0
func NewTimedUserValidator ¶ added in v1.1.0
func NewTimedUserValidator(hasher protocol.IDHash) *TimedUserValidator
func (*TimedUserValidator) Add ¶ added in v1.1.0
func (v *TimedUserValidator) Add(u *protocol.MemoryUser) error
func (*TimedUserValidator) Close ¶ added in v1.1.0
func (v *TimedUserValidator) Close() error
Close implements common.Closable.
func (*TimedUserValidator) Get ¶ added in v1.1.0
func (v *TimedUserValidator) Get(userHash []byte) (*protocol.MemoryUser, protocol.Timestamp, bool)
func (*TimedUserValidator) Remove ¶ added in v1.1.0
func (v *TimedUserValidator) Remove(email string) bool
Click to show internal directories.
Click to hide internal directories.