Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIBridge ¶
type APIBridge struct { // Any authentication method needed for connect to the bridge, `none` // otherwise. Auth string `json:"auth,omitempty"` // Healthy indicates whether this bridge can be used normally. Healthy bool `json:"healthy,omitempty"` // Host is a unique identifier for the bridge. Host string `json:"host,omitempty"` // IP6Addr is the IPv6 address Ip6Addr string `json:"ip6_addr,omitempty"` // IPAddr is the IPv4 address IPAddr string `json:"ip_addr,omitempty"` // Load is the fractional load - but for now menshen agent is not measuring // load in the bridges. Load float64 `json:"load,omitempty"` // Location refers to the location to which this bridge points to Location string `json:"location,omitempty"` // Options contain the map of options that will be passed to the client. It usually // contains authentication credentials. Options interface{} `json:"options,omitempty"` // Overloaded should be set to true if the fractional load is above threshold. Overloaded bool `json:"overloaded,omitempty"` // For some protocols (like hopping) port is undefined. Port int64 `json:"port,omitempty"` // TCP, UDP or KCP. This was called "protocol" before. Transport string `json:"transport,omitempty"` // Type of bridge. Type string `json:"type,omitempty"` }
APIBridge api bridge
swagger:model api.Bridge
func (*APIBridge) ContextValidate ¶
ContextValidate validates this api bridge based on context it is used
func (*APIBridge) MarshalBinary ¶
MarshalBinary interface implementation
func (*APIBridge) UnmarshalBinary ¶
UnmarshalBinary interface implementation
type APIEIPService ¶
type APIEIPService struct { // auth Auth string `json:"auth,omitempty"` // locations Locations interface{} `json:"locations,omitempty"` // openvpn configuration OpenvpnConfiguration interface{} `json:"openvpn_configuration,omitempty"` // serial Serial int64 `json:"serial,omitempty"` // version Version int64 `json:"version,omitempty"` }
APIEIPService api e IP service
swagger:model api.EIPService
func (*APIEIPService) ContextValidate ¶
ContextValidate validates this api e IP service based on context it is used
func (*APIEIPService) MarshalBinary ¶
func (m *APIEIPService) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*APIEIPService) UnmarshalBinary ¶
func (m *APIEIPService) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type APIGateway ¶
type APIGateway struct { // Not used now - we could potentially flag gateways that are planned // to undergo maintenance mode some time in advance. // We can also automatically flag as not healthy gateways that appear // not to be routing to the internet. Healthy bool `json:"healthy,omitempty"` // Host is a unique identifier for the gateway host. It does not need to resolve, since // we're not using DNS to resolve the gateways. Host string `json:"host,omitempty"` // IP6Addr is the IPv6 address Ip6Addr string `json:"ip6_addr,omitempty"` // IPAddr is the IPv4 address IPAddr string `json:"ip_addr,omitempty"` // Load is the fractional load received from the menshen agent. For the // time being it only makes Load float64 `json:"load,omitempty"` // Location is the canonical label for the location of the gateway. Location string `json:"location,omitempty"` // Overloaded should be set to true if the fractional load is above threshold. Overloaded bool `json:"overloaded,omitempty"` // The (primary) port this gateway is listening on. Port int64 `json:"port,omitempty"` // TCP, UDP or KCP. This was called "protocol" in previous versions of the API. Transport string `json:"transport,omitempty"` // Type is the type of gateway. The only valid type as of 2023 is openvpn. Type string `json:"type,omitempty"` }
APIGateway api gateway
swagger:model api.Gateway
func (*APIGateway) ContextValidate ¶
ContextValidate validates this api gateway based on context it is used
func (*APIGateway) MarshalBinary ¶
func (m *APIGateway) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*APIGateway) UnmarshalBinary ¶
func (m *APIGateway) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type ModelsBridge ¶
type ModelsBridge struct { // Any authentication method needed for connect to the bridge, `none` // otherwise. Auth string `json:"auth,omitempty"` // An experimental bridge flags any bridge that, for whatever reason, // is not deemed stable. The expectation is that clients have to opt-in to // experimental bridges (and gateways too). Experimental bool `json:"experimental,omitempty"` // Healthy indicates whether this bridge can be used normally. Healthy bool `json:"healthy,omitempty"` // Host is a unique identifier for the bridge. Host string `json:"host,omitempty"` // IP6Addr is the IPv6 address Ip6Addr string `json:"ip6_addr,omitempty"` // IPAddr is the IPv4 address IPAddr string `json:"ip_addr,omitempty"` // Load is the fractional load - but for now menshen agent is not measuring // load in the bridges. Load float64 `json:"load,omitempty"` // Location refers to the location to which this bridge points to Location string `json:"location,omitempty"` // Options contain the map of options that will be passed to the client. It usually // contains authentication credentials. Options interface{} `json:"options,omitempty"` // Overloaded should be set to true if the fractional load is above threshold. Overloaded bool `json:"overloaded,omitempty"` // For some protocols (like hopping) port is undefined. Port int64 `json:"port,omitempty"` // TCP, UDP or KCP. This was called "protocol" before. Transport string `json:"transport,omitempty"` // Type of bridge. Type string `json:"type,omitempty"` }
ModelsBridge models bridge
swagger:model models.Bridge
func (*ModelsBridge) ContextValidate ¶
ContextValidate validates this models bridge based on context it is used
func (*ModelsBridge) MarshalBinary ¶
func (m *ModelsBridge) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*ModelsBridge) UnmarshalBinary ¶
func (m *ModelsBridge) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type ModelsEIPService ¶
type ModelsEIPService struct { // auth Auth string `json:"auth,omitempty"` // locations Locations interface{} `json:"locations,omitempty"` // openvpn configuration OpenvpnConfiguration interface{} `json:"openvpn_configuration,omitempty"` // serial Serial int64 `json:"serial,omitempty"` // version Version int64 `json:"version,omitempty"` }
ModelsEIPService models e IP service
swagger:model models.EIPService
func (*ModelsEIPService) ContextValidate ¶
ContextValidate validates this models e IP service based on context it is used
func (*ModelsEIPService) MarshalBinary ¶
func (m *ModelsEIPService) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*ModelsEIPService) UnmarshalBinary ¶
func (m *ModelsEIPService) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation
type ModelsGateway ¶
type ModelsGateway struct { // An experimental gateway flags any gateway that, for whatever reason, // is not deemed stable. The expectation is that clients have to opt-in to // experimental gateways (and bridges too). Experimental bool `json:"experimental,omitempty"` // Not used now - we could potentially flag gateways that are planned // to undergo maintenance mode some time in advance. // We can also automatically flag as not healthy gateways that appear // not to be routing to the internet. Healthy bool `json:"healthy,omitempty"` // Host is a unique identifier for the gateway host. It does not need to resolve, since // we're not using DNS to resolve the gateways. Host string `json:"host,omitempty"` // IP6Addr is the IPv6 address Ip6Addr string `json:"ip6_addr,omitempty"` // IPAddr is the IPv4 address IPAddr string `json:"ip_addr,omitempty"` // Load is the fractional load received from the menshen agent. For the // time being it is a synthethic metric that takes into account number of clients // and network information for the node. Load float64 `json:"load,omitempty"` // Location is the canonical label for the location of the gateway. Location string `json:"location,omitempty"` // Overloaded should be set to true if the fractional load is above threshold. Overloaded bool `json:"overloaded,omitempty"` // List of ports this gateway is listening on. The order of the ports is used // for load balancing the gateway. The client should use the ports in the order // it receives them (first port in the list is the preferred port) Ports []int64 `json:"ports"` // TCP, UDP or KCP. This was called "protocol" in previous versions of the API. Transport string `json:"transport,omitempty"` // Type is the type of gateway. The only valid type as of 2023 is openvpn. Type string `json:"type,omitempty"` }
ModelsGateway models gateway
swagger:model models.Gateway
func (*ModelsGateway) ContextValidate ¶
ContextValidate validates this models gateway based on context it is used
func (*ModelsGateway) MarshalBinary ¶
func (m *ModelsGateway) MarshalBinary() ([]byte, error)
MarshalBinary interface implementation
func (*ModelsGateway) UnmarshalBinary ¶
func (m *ModelsGateway) UnmarshalBinary(b []byte) error
UnmarshalBinary interface implementation