v2fly/vconfig.go

34 lines
752 B
Go

package core
// User account that is used for connection to a VPoint
type VUser struct {
// The ID of this VUser. This ID is served as an access token.
// It is not necessary to be permanent.
id VID
}
// The next VPoint server in the connection chain.
type VNext struct {
// Address of VNext server, in the form of "IP:Port"
ServerAddress string
// User accounts for accessing VNext.
User []VUser
}
// The config for VPoint server.
type VConfig struct {
// Port of this VPoint server.
Port uint16
AllowedClients []VUser
ClientProtocol string
VNextList []VNext
}
type VConfigMarshaller interface {
Marshal(config VConfig) ([]byte, error)
}
type VConfigUnmarshaller interface {
Unmarshal(data []byte) (VConfig, error)
}