proto

package
v0.11.5 Latest Latest
Warning

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

Go to latest
Published: Dec 8, 2022 License: BSD-3-Clause Imports: 9 Imported by: 12

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	HostConfig_Protocol_name = map[int32]string{
		0: "UDP",
		1: "TCP",
		2: "HTTP",
		3: "HTTPS",
		4: "DTLS",
	}
	HostConfig_Protocol_value = map[string]int32{
		"UDP":   0,
		"TCP":   1,
		"HTTP":  2,
		"HTTPS": 3,
		"DTLS":  4,
	}
)

Enum value maps for HostConfig_Protocol.

View Source
var (
	DeviceAuthorizationFlowProvider_name = map[int32]string{
		0: "HOSTED",
	}
	DeviceAuthorizationFlowProvider_value = map[string]int32{
		"HOSTED": 0,
	}
)

Enum value maps for DeviceAuthorizationFlowProvider.

View Source
var File_management_proto protoreflect.FileDescriptor
View Source
var ManagementService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "management.ManagementService",
	HandlerType: (*ManagementServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "Login",
			Handler:    _ManagementService_Login_Handler,
		},
		{
			MethodName: "GetServerKey",
			Handler:    _ManagementService_GetServerKey_Handler,
		},
		{
			MethodName: "isHealthy",
			Handler:    _ManagementService_IsHealthy_Handler,
		},
		{
			MethodName: "GetDeviceAuthorizationFlow",
			Handler:    _ManagementService_GetDeviceAuthorizationFlow_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "Sync",
			Handler:       _ManagementService_Sync_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "management.proto",
}

ManagementService_ServiceDesc is the grpc.ServiceDesc for ManagementService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterManagementServiceServer

func RegisterManagementServiceServer(s grpc.ServiceRegistrar, srv ManagementServiceServer)

Types

type CustomZone added in v0.10.7

type CustomZone struct {
	Domain  string          `protobuf:"bytes,1,opt,name=Domain,proto3" json:"Domain,omitempty"`
	Records []*SimpleRecord `protobuf:"bytes,2,rep,name=Records,proto3" json:"Records,omitempty"`
	// contains filtered or unexported fields
}

CustomZone represents a dns.CustomZone

func (*CustomZone) Descriptor deprecated added in v0.10.7

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

Deprecated: Use CustomZone.ProtoReflect.Descriptor instead.

func (*CustomZone) GetDomain added in v0.10.7

func (x *CustomZone) GetDomain() string

func (*CustomZone) GetRecords added in v0.10.7

func (x *CustomZone) GetRecords() []*SimpleRecord

func (*CustomZone) ProtoMessage added in v0.10.7

func (*CustomZone) ProtoMessage()

func (*CustomZone) ProtoReflect added in v0.10.7

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

func (*CustomZone) Reset added in v0.10.7

func (x *CustomZone) Reset()

func (*CustomZone) String added in v0.10.7

func (x *CustomZone) String() string

type DNSConfig added in v0.10.7

type DNSConfig struct {
	ServiceEnable    bool               `protobuf:"varint,1,opt,name=ServiceEnable,proto3" json:"ServiceEnable,omitempty"`
	NameServerGroups []*NameServerGroup `protobuf:"bytes,2,rep,name=NameServerGroups,proto3" json:"NameServerGroups,omitempty"`
	CustomZones      []*CustomZone      `protobuf:"bytes,3,rep,name=CustomZones,proto3" json:"CustomZones,omitempty"`
	// contains filtered or unexported fields
}

DNSConfig represents a dns.Update

func (*DNSConfig) Descriptor deprecated added in v0.10.7

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

Deprecated: Use DNSConfig.ProtoReflect.Descriptor instead.

func (*DNSConfig) GetCustomZones added in v0.10.7

func (x *DNSConfig) GetCustomZones() []*CustomZone

func (*DNSConfig) GetNameServerGroups added in v0.10.7

func (x *DNSConfig) GetNameServerGroups() []*NameServerGroup

func (*DNSConfig) GetServiceEnable added in v0.10.7

func (x *DNSConfig) GetServiceEnable() bool

func (*DNSConfig) ProtoMessage added in v0.10.7

func (*DNSConfig) ProtoMessage()

func (*DNSConfig) ProtoReflect added in v0.10.7

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

func (*DNSConfig) Reset added in v0.10.7

func (x *DNSConfig) Reset()

func (*DNSConfig) String added in v0.10.7

func (x *DNSConfig) String() string

type DeviceAuthorizationFlow

type DeviceAuthorizationFlow struct {

	// An IDP provider , (eg. Auth0)
	Provider       DeviceAuthorizationFlowProvider `protobuf:"varint,1,opt,name=Provider,proto3,enum=management.DeviceAuthorizationFlowProvider" json:"Provider,omitempty"`
	ProviderConfig *ProviderConfig                 `protobuf:"bytes,2,opt,name=ProviderConfig,proto3" json:"ProviderConfig,omitempty"`
	// contains filtered or unexported fields
}

DeviceAuthorizationFlow represents Device Authorization Flow information that can be used by the client to login initiate a Oauth 2.0 device authorization grant flow see https://datatracker.ietf.org/doc/html/rfc8628

func (*DeviceAuthorizationFlow) Descriptor deprecated

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

Deprecated: Use DeviceAuthorizationFlow.ProtoReflect.Descriptor instead.

func (*DeviceAuthorizationFlow) GetProvider

func (*DeviceAuthorizationFlow) GetProviderConfig

func (x *DeviceAuthorizationFlow) GetProviderConfig() *ProviderConfig

func (*DeviceAuthorizationFlow) ProtoMessage

func (*DeviceAuthorizationFlow) ProtoMessage()

func (*DeviceAuthorizationFlow) ProtoReflect

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

func (*DeviceAuthorizationFlow) Reset

func (x *DeviceAuthorizationFlow) Reset()

func (*DeviceAuthorizationFlow) String

func (x *DeviceAuthorizationFlow) String() string

type DeviceAuthorizationFlowProvider

type DeviceAuthorizationFlowProvider int32
const (
	DeviceAuthorizationFlow_HOSTED DeviceAuthorizationFlowProvider = 0
)

func (DeviceAuthorizationFlowProvider) Descriptor

func (DeviceAuthorizationFlowProvider) Enum

func (DeviceAuthorizationFlowProvider) EnumDescriptor deprecated

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

Deprecated: Use DeviceAuthorizationFlowProvider.Descriptor instead.

func (DeviceAuthorizationFlowProvider) Number

func (DeviceAuthorizationFlowProvider) String

func (DeviceAuthorizationFlowProvider) Type

type DeviceAuthorizationFlowRequest

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

DeviceAuthorizationFlowRequest empty struct for future expansion

func (*DeviceAuthorizationFlowRequest) Descriptor deprecated

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

Deprecated: Use DeviceAuthorizationFlowRequest.ProtoReflect.Descriptor instead.

func (*DeviceAuthorizationFlowRequest) ProtoMessage

func (*DeviceAuthorizationFlowRequest) ProtoMessage()

func (*DeviceAuthorizationFlowRequest) ProtoReflect

func (*DeviceAuthorizationFlowRequest) Reset

func (x *DeviceAuthorizationFlowRequest) Reset()

func (*DeviceAuthorizationFlowRequest) String

type Empty

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

func (*Empty) Descriptor deprecated

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

Deprecated: Use Empty.ProtoReflect.Descriptor instead.

func (*Empty) ProtoMessage

func (*Empty) ProtoMessage()

func (*Empty) ProtoReflect

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

func (*Empty) Reset

func (x *Empty) Reset()

func (*Empty) String

func (x *Empty) String() string

type EncryptedMessage

type EncryptedMessage struct {

	// Wireguard public key
	WgPubKey string `protobuf:"bytes,1,opt,name=wgPubKey,proto3" json:"wgPubKey,omitempty"`
	// encrypted message Body
	Body []byte `protobuf:"bytes,2,opt,name=body,proto3" json:"body,omitempty"`
	// Version of the Wiretrustee Management Service protocol
	Version int32 `protobuf:"varint,3,opt,name=version,proto3" json:"version,omitempty"`
	// contains filtered or unexported fields
}

func (*EncryptedMessage) Descriptor deprecated

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

Deprecated: Use EncryptedMessage.ProtoReflect.Descriptor instead.

func (*EncryptedMessage) GetBody

func (x *EncryptedMessage) GetBody() []byte

func (*EncryptedMessage) GetVersion

func (x *EncryptedMessage) GetVersion() int32

func (*EncryptedMessage) GetWgPubKey

func (x *EncryptedMessage) GetWgPubKey() string

func (*EncryptedMessage) ProtoMessage

func (*EncryptedMessage) ProtoMessage()

func (*EncryptedMessage) ProtoReflect

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

func (*EncryptedMessage) Reset

func (x *EncryptedMessage) Reset()

func (*EncryptedMessage) String

func (x *EncryptedMessage) String() string

type HostConfig

type HostConfig struct {

	// URI of the resource e.g. turns://stun.wiretrustee.com:4430 or signal.wiretrustee.com:10000
	Uri      string              `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
	Protocol HostConfig_Protocol `protobuf:"varint,2,opt,name=protocol,proto3,enum=management.HostConfig_Protocol" json:"protocol,omitempty"`
	// contains filtered or unexported fields
}

HostConfig describes connection properties of some server (e.g. STUN, Signal, Management)

func (*HostConfig) Descriptor deprecated

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

Deprecated: Use HostConfig.ProtoReflect.Descriptor instead.

func (*HostConfig) GetProtocol

func (x *HostConfig) GetProtocol() HostConfig_Protocol

func (*HostConfig) GetUri

func (x *HostConfig) GetUri() string

func (*HostConfig) ProtoMessage

func (*HostConfig) ProtoMessage()

func (*HostConfig) ProtoReflect

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

func (*HostConfig) Reset

func (x *HostConfig) Reset()

func (*HostConfig) String

func (x *HostConfig) String() string

type HostConfig_Protocol

type HostConfig_Protocol int32
const (
	HostConfig_UDP   HostConfig_Protocol = 0
	HostConfig_TCP   HostConfig_Protocol = 1
	HostConfig_HTTP  HostConfig_Protocol = 2
	HostConfig_HTTPS HostConfig_Protocol = 3
	HostConfig_DTLS  HostConfig_Protocol = 4
)

func (HostConfig_Protocol) Descriptor

func (HostConfig_Protocol) Enum

func (HostConfig_Protocol) EnumDescriptor deprecated

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

Deprecated: Use HostConfig_Protocol.Descriptor instead.

func (HostConfig_Protocol) Number

func (HostConfig_Protocol) String

func (x HostConfig_Protocol) String() string

func (HostConfig_Protocol) Type

type LoginRequest

type LoginRequest struct {

	// Pre-authorized setup key (can be empty)
	SetupKey string `protobuf:"bytes,1,opt,name=setupKey,proto3" json:"setupKey,omitempty"`
	// Meta data of the peer (e.g. name, os_name, os_version,
	Meta *PeerSystemMeta `protobuf:"bytes,2,opt,name=meta,proto3" json:"meta,omitempty"`
	// SSO token (can be empty)
	JwtToken string `protobuf:"bytes,3,opt,name=jwtToken,proto3" json:"jwtToken,omitempty"`
	// Can be absent for now.
	PeerKeys *PeerKeys `protobuf:"bytes,4,opt,name=peerKeys,proto3" json:"peerKeys,omitempty"`
	// contains filtered or unexported fields
}

func (*LoginRequest) Descriptor deprecated

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

Deprecated: Use LoginRequest.ProtoReflect.Descriptor instead.

func (*LoginRequest) GetJwtToken

func (x *LoginRequest) GetJwtToken() string

func (*LoginRequest) GetMeta

func (x *LoginRequest) GetMeta() *PeerSystemMeta

func (*LoginRequest) GetPeerKeys added in v0.8.0

func (x *LoginRequest) GetPeerKeys() *PeerKeys

func (*LoginRequest) GetSetupKey

func (x *LoginRequest) GetSetupKey() string

func (*LoginRequest) ProtoMessage

func (*LoginRequest) ProtoMessage()

func (*LoginRequest) ProtoReflect

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

func (*LoginRequest) Reset

func (x *LoginRequest) Reset()

func (*LoginRequest) String

func (x *LoginRequest) String() string

type LoginResponse

type LoginResponse struct {

	// Global config
	WiretrusteeConfig *WiretrusteeConfig `protobuf:"bytes,1,opt,name=wiretrusteeConfig,proto3" json:"wiretrusteeConfig,omitempty"`
	// Peer local config
	PeerConfig *PeerConfig `protobuf:"bytes,2,opt,name=peerConfig,proto3" json:"peerConfig,omitempty"`
	// contains filtered or unexported fields
}

func (*LoginResponse) Descriptor deprecated

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

Deprecated: Use LoginResponse.ProtoReflect.Descriptor instead.

func (*LoginResponse) GetPeerConfig

func (x *LoginResponse) GetPeerConfig() *PeerConfig

func (*LoginResponse) GetWiretrusteeConfig

func (x *LoginResponse) GetWiretrusteeConfig() *WiretrusteeConfig

func (*LoginResponse) ProtoMessage

func (*LoginResponse) ProtoMessage()

func (*LoginResponse) ProtoReflect

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

func (*LoginResponse) Reset

func (x *LoginResponse) Reset()

func (*LoginResponse) String

func (x *LoginResponse) String() string

type ManagementServiceClient

type ManagementServiceClient interface {
	// Login logs in peer. In case server returns codes.PermissionDenied this endpoint can be used to register Peer providing LoginRequest.setupKey
	// Returns encrypted LoginResponse in EncryptedMessage.Body
	Login(ctx context.Context, in *EncryptedMessage, opts ...grpc.CallOption) (*EncryptedMessage, error)
	// Sync enables peer synchronization. Each peer that is connected to this stream will receive updates from the server.
	// For example, if a new peer has been added to an account all other connected peers will receive this peer's Wireguard public key as an update
	// The initial SyncResponse contains all of the available peers so the local state can be refreshed
	// Returns encrypted SyncResponse in EncryptedMessage.Body
	Sync(ctx context.Context, in *EncryptedMessage, opts ...grpc.CallOption) (ManagementService_SyncClient, error)
	// Exposes a Wireguard public key of the Management service.
	// This key is used to support message encryption between client and server
	GetServerKey(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*ServerKeyResponse, error)
	// health check endpoint
	IsHealthy(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error)
	// Exposes a device authorization flow information
	// This is used for initiating a Oauth 2 device authorization grant flow
	// which will be used by our clients to Login.
	// EncryptedMessage of the request has a body of DeviceAuthorizationFlowRequest.
	// EncryptedMessage of the response has a body of DeviceAuthorizationFlow.
	GetDeviceAuthorizationFlow(ctx context.Context, in *EncryptedMessage, opts ...grpc.CallOption) (*EncryptedMessage, error)
}

ManagementServiceClient is the client API for ManagementService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type ManagementServiceServer

type ManagementServiceServer interface {
	// Login logs in peer. In case server returns codes.PermissionDenied this endpoint can be used to register Peer providing LoginRequest.setupKey
	// Returns encrypted LoginResponse in EncryptedMessage.Body
	Login(context.Context, *EncryptedMessage) (*EncryptedMessage, error)
	// Sync enables peer synchronization. Each peer that is connected to this stream will receive updates from the server.
	// For example, if a new peer has been added to an account all other connected peers will receive this peer's Wireguard public key as an update
	// The initial SyncResponse contains all of the available peers so the local state can be refreshed
	// Returns encrypted SyncResponse in EncryptedMessage.Body
	Sync(*EncryptedMessage, ManagementService_SyncServer) error
	// Exposes a Wireguard public key of the Management service.
	// This key is used to support message encryption between client and server
	GetServerKey(context.Context, *Empty) (*ServerKeyResponse, error)
	// health check endpoint
	IsHealthy(context.Context, *Empty) (*Empty, error)
	// Exposes a device authorization flow information
	// This is used for initiating a Oauth 2 device authorization grant flow
	// which will be used by our clients to Login.
	// EncryptedMessage of the request has a body of DeviceAuthorizationFlowRequest.
	// EncryptedMessage of the response has a body of DeviceAuthorizationFlow.
	GetDeviceAuthorizationFlow(context.Context, *EncryptedMessage) (*EncryptedMessage, error)
	// contains filtered or unexported methods
}

ManagementServiceServer is the server API for ManagementService service. All implementations must embed UnimplementedManagementServiceServer for forward compatibility

type ManagementService_SyncClient

type ManagementService_SyncClient interface {
	Recv() (*EncryptedMessage, error)
	grpc.ClientStream
}

type ManagementService_SyncServer

type ManagementService_SyncServer interface {
	Send(*EncryptedMessage) error
	grpc.ServerStream
}

type NameServer added in v0.10.7

type NameServer struct {
	IP     string `protobuf:"bytes,1,opt,name=IP,proto3" json:"IP,omitempty"`
	NSType int64  `protobuf:"varint,2,opt,name=NSType,proto3" json:"NSType,omitempty"`
	Port   int64  `protobuf:"varint,3,opt,name=Port,proto3" json:"Port,omitempty"`
	// contains filtered or unexported fields
}

NameServer represents a dns.NameServer

func (*NameServer) Descriptor deprecated added in v0.10.7

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

Deprecated: Use NameServer.ProtoReflect.Descriptor instead.

func (*NameServer) GetIP added in v0.10.7

func (x *NameServer) GetIP() string

func (*NameServer) GetNSType added in v0.10.7

func (x *NameServer) GetNSType() int64

func (*NameServer) GetPort added in v0.10.7

func (x *NameServer) GetPort() int64

func (*NameServer) ProtoMessage added in v0.10.7

func (*NameServer) ProtoMessage()

func (*NameServer) ProtoReflect added in v0.10.7

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

func (*NameServer) Reset added in v0.10.7

func (x *NameServer) Reset()

func (*NameServer) String added in v0.10.7

func (x *NameServer) String() string

type NameServerGroup added in v0.10.7

type NameServerGroup struct {
	NameServers []*NameServer `protobuf:"bytes,1,rep,name=NameServers,proto3" json:"NameServers,omitempty"`
	Primary     bool          `protobuf:"varint,2,opt,name=Primary,proto3" json:"Primary,omitempty"`
	Domains     []string      `protobuf:"bytes,3,rep,name=Domains,proto3" json:"Domains,omitempty"`
	// contains filtered or unexported fields
}

NameServerGroup represents a dns.NameServerGroup

func (*NameServerGroup) Descriptor deprecated added in v0.10.7

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

Deprecated: Use NameServerGroup.ProtoReflect.Descriptor instead.

func (*NameServerGroup) GetDomains added in v0.10.7

func (x *NameServerGroup) GetDomains() []string

func (*NameServerGroup) GetNameServers added in v0.10.7

func (x *NameServerGroup) GetNameServers() []*NameServer

func (*NameServerGroup) GetPrimary added in v0.10.7

func (x *NameServerGroup) GetPrimary() bool

func (*NameServerGroup) ProtoMessage added in v0.10.7

func (*NameServerGroup) ProtoMessage()

func (*NameServerGroup) ProtoReflect added in v0.10.7

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

func (*NameServerGroup) Reset added in v0.10.7

func (x *NameServerGroup) Reset()

func (*NameServerGroup) String added in v0.10.7

func (x *NameServerGroup) String() string

type NetworkMap

type NetworkMap struct {

	// Serial is an ID of the network state to be used by clients to order updates.
	// The larger the Serial the newer the configuration.
	// E.g. the client app should keep track of this id locally and discard all the configurations with a lower value
	Serial uint64 `protobuf:"varint,1,opt,name=Serial,proto3" json:"Serial,omitempty"`
	// PeerConfig represents configuration of a peer
	PeerConfig *PeerConfig `protobuf:"bytes,2,opt,name=peerConfig,proto3" json:"peerConfig,omitempty"`
	// RemotePeerConfig represents a list of remote peers that the receiver can connect to
	RemotePeers []*RemotePeerConfig `protobuf:"bytes,3,rep,name=remotePeers,proto3" json:"remotePeers,omitempty"`
	// Indicates whether remotePeers array is empty or not to bypass protobuf null and empty array equality.
	RemotePeersIsEmpty bool `protobuf:"varint,4,opt,name=remotePeersIsEmpty,proto3" json:"remotePeersIsEmpty,omitempty"`
	// List of routes to be applied
	Routes []*Route `protobuf:"bytes,5,rep,name=Routes,proto3" json:"Routes,omitempty"`
	// DNS config to be applied
	DNSConfig *DNSConfig `protobuf:"bytes,6,opt,name=DNSConfig,proto3" json:"DNSConfig,omitempty"`
	// contains filtered or unexported fields
}

NetworkMap represents a network state of the peer with the corresponding configuration parameters to establish peer-to-peer connections

func (*NetworkMap) Descriptor deprecated

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

Deprecated: Use NetworkMap.ProtoReflect.Descriptor instead.

func (*NetworkMap) GetDNSConfig added in v0.10.7

func (x *NetworkMap) GetDNSConfig() *DNSConfig

func (*NetworkMap) GetPeerConfig

func (x *NetworkMap) GetPeerConfig() *PeerConfig

func (*NetworkMap) GetRemotePeers

func (x *NetworkMap) GetRemotePeers() []*RemotePeerConfig

func (*NetworkMap) GetRemotePeersIsEmpty

func (x *NetworkMap) GetRemotePeersIsEmpty() bool

func (*NetworkMap) GetRoutes added in v0.8.9

func (x *NetworkMap) GetRoutes() []*Route

func (*NetworkMap) GetSerial

func (x *NetworkMap) GetSerial() uint64

func (*NetworkMap) ProtoMessage

func (*NetworkMap) ProtoMessage()

func (*NetworkMap) ProtoReflect

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

func (*NetworkMap) Reset

func (x *NetworkMap) Reset()

func (*NetworkMap) String

func (x *NetworkMap) String() string

type PeerConfig

type PeerConfig struct {

	// Peer's virtual IP address within the Wiretrustee VPN (a Wireguard address config)
	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	// Wiretrustee DNS server (a Wireguard DNS config)
	Dns string `protobuf:"bytes,2,opt,name=dns,proto3" json:"dns,omitempty"`
	// SSHConfig of the peer.
	SshConfig *SSHConfig `protobuf:"bytes,3,opt,name=sshConfig,proto3" json:"sshConfig,omitempty"`
	// Peer fully qualified domain name
	Fqdn string `protobuf:"bytes,4,opt,name=fqdn,proto3" json:"fqdn,omitempty"`
	// contains filtered or unexported fields
}

PeerConfig represents a configuration of a "our" peer. The properties are used to configure local Wireguard

func (*PeerConfig) Descriptor deprecated

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

Deprecated: Use PeerConfig.ProtoReflect.Descriptor instead.

func (*PeerConfig) GetAddress

func (x *PeerConfig) GetAddress() string

func (*PeerConfig) GetDns

func (x *PeerConfig) GetDns() string

func (*PeerConfig) GetFqdn added in v0.11.2

func (x *PeerConfig) GetFqdn() string

func (*PeerConfig) GetSshConfig added in v0.8.0

func (x *PeerConfig) GetSshConfig() *SSHConfig

func (*PeerConfig) ProtoMessage

func (*PeerConfig) ProtoMessage()

func (*PeerConfig) ProtoReflect

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

func (*PeerConfig) Reset

func (x *PeerConfig) Reset()

func (*PeerConfig) String

func (x *PeerConfig) String() string

type PeerKeys added in v0.8.0

type PeerKeys struct {

	// sshPubKey represents a public SSH key of the peer. Can be absent.
	SshPubKey []byte `protobuf:"bytes,1,opt,name=sshPubKey,proto3" json:"sshPubKey,omitempty"`
	// wgPubKey represents a public WireGuard key of the peer. Can be absent.
	WgPubKey []byte `protobuf:"bytes,2,opt,name=wgPubKey,proto3" json:"wgPubKey,omitempty"`
	// contains filtered or unexported fields
}

PeerKeys is additional peer info like SSH pub key and WireGuard public key. This message is sent on Login or register requests, or when a key rotation has to happen.

func (*PeerKeys) Descriptor deprecated added in v0.8.0

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

Deprecated: Use PeerKeys.ProtoReflect.Descriptor instead.

func (*PeerKeys) GetSshPubKey added in v0.8.0

func (x *PeerKeys) GetSshPubKey() []byte

func (*PeerKeys) GetWgPubKey added in v0.8.0

func (x *PeerKeys) GetWgPubKey() []byte

func (*PeerKeys) ProtoMessage added in v0.8.0

func (*PeerKeys) ProtoMessage()

func (*PeerKeys) ProtoReflect added in v0.8.0

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

func (*PeerKeys) Reset added in v0.8.0

func (x *PeerKeys) Reset()

func (*PeerKeys) String added in v0.8.0

func (x *PeerKeys) String() string

type PeerSystemMeta

type PeerSystemMeta struct {
	Hostname           string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
	GoOS               string `protobuf:"bytes,2,opt,name=goOS,proto3" json:"goOS,omitempty"`
	Kernel             string `protobuf:"bytes,3,opt,name=kernel,proto3" json:"kernel,omitempty"`
	Core               string `protobuf:"bytes,4,opt,name=core,proto3" json:"core,omitempty"`
	Platform           string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"`
	OS                 string `protobuf:"bytes,6,opt,name=OS,proto3" json:"OS,omitempty"`
	WiretrusteeVersion string `protobuf:"bytes,7,opt,name=wiretrusteeVersion,proto3" json:"wiretrusteeVersion,omitempty"`
	UiVersion          string `protobuf:"bytes,8,opt,name=uiVersion,proto3" json:"uiVersion,omitempty"`
	// contains filtered or unexported fields
}

PeerSystemMeta is machine meta data like OS and version.

func (*PeerSystemMeta) Descriptor deprecated

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

Deprecated: Use PeerSystemMeta.ProtoReflect.Descriptor instead.

func (*PeerSystemMeta) GetCore

func (x *PeerSystemMeta) GetCore() string

func (*PeerSystemMeta) GetGoOS

func (x *PeerSystemMeta) GetGoOS() string

func (*PeerSystemMeta) GetHostname

func (x *PeerSystemMeta) GetHostname() string

func (*PeerSystemMeta) GetKernel

func (x *PeerSystemMeta) GetKernel() string

func (*PeerSystemMeta) GetOS

func (x *PeerSystemMeta) GetOS() string

func (*PeerSystemMeta) GetPlatform

func (x *PeerSystemMeta) GetPlatform() string

func (*PeerSystemMeta) GetUiVersion added in v0.6.0

func (x *PeerSystemMeta) GetUiVersion() string

func (*PeerSystemMeta) GetWiretrusteeVersion

func (x *PeerSystemMeta) GetWiretrusteeVersion() string

func (*PeerSystemMeta) ProtoMessage

func (*PeerSystemMeta) ProtoMessage()

func (*PeerSystemMeta) ProtoReflect

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

func (*PeerSystemMeta) Reset

func (x *PeerSystemMeta) Reset()

func (*PeerSystemMeta) String

func (x *PeerSystemMeta) String() string

type ProtectedHostConfig

type ProtectedHostConfig struct {
	HostConfig *HostConfig `protobuf:"bytes,1,opt,name=hostConfig,proto3" json:"hostConfig,omitempty"`
	User       string      `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
	Password   string      `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"`
	// contains filtered or unexported fields
}

ProtectedHostConfig is similar to HostConfig but has additional user and password Mostly used for TURN servers

func (*ProtectedHostConfig) Descriptor deprecated

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

Deprecated: Use ProtectedHostConfig.ProtoReflect.Descriptor instead.

func (*ProtectedHostConfig) GetHostConfig

func (x *ProtectedHostConfig) GetHostConfig() *HostConfig

func (*ProtectedHostConfig) GetPassword

func (x *ProtectedHostConfig) GetPassword() string

func (*ProtectedHostConfig) GetUser

func (x *ProtectedHostConfig) GetUser() string

func (*ProtectedHostConfig) ProtoMessage

func (*ProtectedHostConfig) ProtoMessage()

func (*ProtectedHostConfig) ProtoReflect

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

func (*ProtectedHostConfig) Reset

func (x *ProtectedHostConfig) Reset()

func (*ProtectedHostConfig) String

func (x *ProtectedHostConfig) String() string

type ProviderConfig

type ProviderConfig struct {

	// An IDP application client id
	ClientID string `protobuf:"bytes,1,opt,name=ClientID,proto3" json:"ClientID,omitempty"`
	// An IDP application client secret
	ClientSecret string `protobuf:"bytes,2,opt,name=ClientSecret,proto3" json:"ClientSecret,omitempty"`
	// An IDP API domain
	// Deprecated. Use a DeviceAuthEndpoint and TokenEndpoint
	Domain string `protobuf:"bytes,3,opt,name=Domain,proto3" json:"Domain,omitempty"`
	// An Audience for validation
	Audience string `protobuf:"bytes,4,opt,name=Audience,proto3" json:"Audience,omitempty"`
	// DeviceAuthEndpoint is an endpoint to request device authentication code.
	DeviceAuthEndpoint string `protobuf:"bytes,5,opt,name=DeviceAuthEndpoint,proto3" json:"DeviceAuthEndpoint,omitempty"`
	// TokenEndpoint is an endpoint to request auth token.
	TokenEndpoint string `protobuf:"bytes,6,opt,name=TokenEndpoint,proto3" json:"TokenEndpoint,omitempty"`
	// contains filtered or unexported fields
}

ProviderConfig has all attributes needed to initiate a device authorization flow

func (*ProviderConfig) Descriptor deprecated

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

Deprecated: Use ProviderConfig.ProtoReflect.Descriptor instead.

func (*ProviderConfig) GetAudience

func (x *ProviderConfig) GetAudience() string

func (*ProviderConfig) GetClientID

func (x *ProviderConfig) GetClientID() string

func (*ProviderConfig) GetClientSecret

func (x *ProviderConfig) GetClientSecret() string

func (*ProviderConfig) GetDeviceAuthEndpoint added in v0.8.10

func (x *ProviderConfig) GetDeviceAuthEndpoint() string

func (*ProviderConfig) GetDomain

func (x *ProviderConfig) GetDomain() string

func (*ProviderConfig) GetTokenEndpoint added in v0.8.10

func (x *ProviderConfig) GetTokenEndpoint() string

func (*ProviderConfig) ProtoMessage

func (*ProviderConfig) ProtoMessage()

func (*ProviderConfig) ProtoReflect

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

func (*ProviderConfig) Reset

func (x *ProviderConfig) Reset()

func (*ProviderConfig) String

func (x *ProviderConfig) String() string

type RemotePeerConfig

type RemotePeerConfig struct {

	// A Wireguard public key of a remote peer
	WgPubKey string `protobuf:"bytes,1,opt,name=wgPubKey,proto3" json:"wgPubKey,omitempty"`
	// Wireguard allowed IPs of a remote peer e.g. [10.30.30.1/32]
	AllowedIps []string `protobuf:"bytes,2,rep,name=allowedIps,proto3" json:"allowedIps,omitempty"`
	// SSHConfig is a SSH config of the remote peer. SSHConfig.sshPubKey should be ignored because peer knows it's SSH key.
	SshConfig *SSHConfig `protobuf:"bytes,3,opt,name=sshConfig,proto3" json:"sshConfig,omitempty"`
	// Peer fully qualified domain name
	Fqdn string `protobuf:"bytes,4,opt,name=fqdn,proto3" json:"fqdn,omitempty"`
	// contains filtered or unexported fields
}

RemotePeerConfig represents a configuration of a remote peer. The properties are used to configure Wireguard Peers sections

func (*RemotePeerConfig) Descriptor deprecated

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

Deprecated: Use RemotePeerConfig.ProtoReflect.Descriptor instead.

func (*RemotePeerConfig) GetAllowedIps

func (x *RemotePeerConfig) GetAllowedIps() []string

func (*RemotePeerConfig) GetFqdn added in v0.11.2

func (x *RemotePeerConfig) GetFqdn() string

func (*RemotePeerConfig) GetSshConfig added in v0.8.0

func (x *RemotePeerConfig) GetSshConfig() *SSHConfig

func (*RemotePeerConfig) GetWgPubKey

func (x *RemotePeerConfig) GetWgPubKey() string

func (*RemotePeerConfig) ProtoMessage

func (*RemotePeerConfig) ProtoMessage()

func (*RemotePeerConfig) ProtoReflect

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

func (*RemotePeerConfig) Reset

func (x *RemotePeerConfig) Reset()

func (*RemotePeerConfig) String

func (x *RemotePeerConfig) String() string

type Route added in v0.8.9

type Route struct {
	ID          string `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"`
	Network     string `protobuf:"bytes,2,opt,name=Network,proto3" json:"Network,omitempty"`
	NetworkType int64  `protobuf:"varint,3,opt,name=NetworkType,proto3" json:"NetworkType,omitempty"`
	Peer        string `protobuf:"bytes,4,opt,name=Peer,proto3" json:"Peer,omitempty"`
	Metric      int64  `protobuf:"varint,5,opt,name=Metric,proto3" json:"Metric,omitempty"`
	Masquerade  bool   `protobuf:"varint,6,opt,name=Masquerade,proto3" json:"Masquerade,omitempty"`
	NetID       string `protobuf:"bytes,7,opt,name=NetID,proto3" json:"NetID,omitempty"`
	// contains filtered or unexported fields
}

Route represents a route.Route object

func (*Route) Descriptor deprecated added in v0.8.9

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

Deprecated: Use Route.ProtoReflect.Descriptor instead.

func (*Route) GetID added in v0.8.9

func (x *Route) GetID() string

func (*Route) GetMasquerade added in v0.8.9

func (x *Route) GetMasquerade() bool

func (*Route) GetMetric added in v0.8.9

func (x *Route) GetMetric() int64

func (*Route) GetNetID added in v0.8.9

func (x *Route) GetNetID() string

func (*Route) GetNetwork added in v0.8.9

func (x *Route) GetNetwork() string

func (*Route) GetNetworkType added in v0.8.9

func (x *Route) GetNetworkType() int64

func (*Route) GetPeer added in v0.8.9

func (x *Route) GetPeer() string

func (*Route) ProtoMessage added in v0.8.9

func (*Route) ProtoMessage()

func (*Route) ProtoReflect added in v0.8.9

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

func (*Route) Reset added in v0.8.9

func (x *Route) Reset()

func (*Route) String added in v0.8.9

func (x *Route) String() string

type SSHConfig added in v0.8.0

type SSHConfig struct {

	// sshEnabled indicates whether a SSH server is enabled on this peer
	SshEnabled bool `protobuf:"varint,1,opt,name=sshEnabled,proto3" json:"sshEnabled,omitempty"`
	// sshPubKey is a SSH public key of a peer to be added to authorized_hosts.
	// This property should be ignore if SSHConfig comes from PeerConfig.
	SshPubKey []byte `protobuf:"bytes,2,opt,name=sshPubKey,proto3" json:"sshPubKey,omitempty"`
	// contains filtered or unexported fields
}

SSHConfig represents SSH configurations of a peer.

func (*SSHConfig) Descriptor deprecated added in v0.8.0

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

Deprecated: Use SSHConfig.ProtoReflect.Descriptor instead.

func (*SSHConfig) GetSshEnabled added in v0.8.0

func (x *SSHConfig) GetSshEnabled() bool

func (*SSHConfig) GetSshPubKey added in v0.8.0

func (x *SSHConfig) GetSshPubKey() []byte

func (*SSHConfig) ProtoMessage added in v0.8.0

func (*SSHConfig) ProtoMessage()

func (*SSHConfig) ProtoReflect added in v0.8.0

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

func (*SSHConfig) Reset added in v0.8.0

func (x *SSHConfig) Reset()

func (*SSHConfig) String added in v0.8.0

func (x *SSHConfig) String() string

type ServerKeyResponse

type ServerKeyResponse struct {

	// Server's Wireguard public key
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// Key expiration timestamp after which the key should be fetched again by the client
	ExpiresAt *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=expiresAt,proto3" json:"expiresAt,omitempty"`
	// Version of the Wiretrustee Management Service protocol
	Version int32 `protobuf:"varint,3,opt,name=version,proto3" json:"version,omitempty"`
	// contains filtered or unexported fields
}

func (*ServerKeyResponse) Descriptor deprecated

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

Deprecated: Use ServerKeyResponse.ProtoReflect.Descriptor instead.

func (*ServerKeyResponse) GetExpiresAt

func (x *ServerKeyResponse) GetExpiresAt() *timestamppb.Timestamp

func (*ServerKeyResponse) GetKey

func (x *ServerKeyResponse) GetKey() string

func (*ServerKeyResponse) GetVersion

func (x *ServerKeyResponse) GetVersion() int32

func (*ServerKeyResponse) ProtoMessage

func (*ServerKeyResponse) ProtoMessage()

func (*ServerKeyResponse) ProtoReflect

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

func (*ServerKeyResponse) Reset

func (x *ServerKeyResponse) Reset()

func (*ServerKeyResponse) String

func (x *ServerKeyResponse) String() string

type SimpleRecord added in v0.10.7

type SimpleRecord struct {
	Name  string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
	Type  int64  `protobuf:"varint,2,opt,name=Type,proto3" json:"Type,omitempty"`
	Class string `protobuf:"bytes,3,opt,name=Class,proto3" json:"Class,omitempty"`
	TTL   int64  `protobuf:"varint,4,opt,name=TTL,proto3" json:"TTL,omitempty"`
	RData string `protobuf:"bytes,5,opt,name=RData,proto3" json:"RData,omitempty"`
	// contains filtered or unexported fields
}

SimpleRecord represents a dns.SimpleRecord

func (*SimpleRecord) Descriptor deprecated added in v0.10.7

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

Deprecated: Use SimpleRecord.ProtoReflect.Descriptor instead.

func (*SimpleRecord) GetClass added in v0.10.7

func (x *SimpleRecord) GetClass() string

func (*SimpleRecord) GetName added in v0.10.7

func (x *SimpleRecord) GetName() string

func (*SimpleRecord) GetRData added in v0.10.7

func (x *SimpleRecord) GetRData() string

func (*SimpleRecord) GetTTL added in v0.10.7

func (x *SimpleRecord) GetTTL() int64

func (*SimpleRecord) GetType added in v0.10.7

func (x *SimpleRecord) GetType() int64

func (*SimpleRecord) ProtoMessage added in v0.10.7

func (*SimpleRecord) ProtoMessage()

func (*SimpleRecord) ProtoReflect added in v0.10.7

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

func (*SimpleRecord) Reset added in v0.10.7

func (x *SimpleRecord) Reset()

func (*SimpleRecord) String added in v0.10.7

func (x *SimpleRecord) String() string

type SyncRequest

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

func (*SyncRequest) Descriptor deprecated

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

Deprecated: Use SyncRequest.ProtoReflect.Descriptor instead.

func (*SyncRequest) ProtoMessage

func (*SyncRequest) ProtoMessage()

func (*SyncRequest) ProtoReflect

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

func (*SyncRequest) Reset

func (x *SyncRequest) Reset()

func (*SyncRequest) String

func (x *SyncRequest) String() string

type SyncResponse

type SyncResponse struct {

	// Global config
	WiretrusteeConfig *WiretrusteeConfig `protobuf:"bytes,1,opt,name=wiretrusteeConfig,proto3" json:"wiretrusteeConfig,omitempty"`
	// Deprecated. Use NetworkMap.PeerConfig
	PeerConfig *PeerConfig `protobuf:"bytes,2,opt,name=peerConfig,proto3" json:"peerConfig,omitempty"`
	// Deprecated. Use NetworkMap.RemotePeerConfig
	RemotePeers []*RemotePeerConfig `protobuf:"bytes,3,rep,name=remotePeers,proto3" json:"remotePeers,omitempty"`
	// Indicates whether remotePeers array is empty or not to bypass protobuf null and empty array equality.
	// Deprecated. Use NetworkMap.remotePeersIsEmpty
	RemotePeersIsEmpty bool        `protobuf:"varint,4,opt,name=remotePeersIsEmpty,proto3" json:"remotePeersIsEmpty,omitempty"`
	NetworkMap         *NetworkMap `protobuf:"bytes,5,opt,name=NetworkMap,proto3" json:"NetworkMap,omitempty"`
	// contains filtered or unexported fields
}

SyncResponse represents a state that should be applied to the local peer (e.g. Wiretrustee servers config as well as local peer and remote peers configs)

func (*SyncResponse) Descriptor deprecated

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

Deprecated: Use SyncResponse.ProtoReflect.Descriptor instead.

func (*SyncResponse) GetNetworkMap

func (x *SyncResponse) GetNetworkMap() *NetworkMap

func (*SyncResponse) GetPeerConfig

func (x *SyncResponse) GetPeerConfig() *PeerConfig

func (*SyncResponse) GetRemotePeers

func (x *SyncResponse) GetRemotePeers() []*RemotePeerConfig

func (*SyncResponse) GetRemotePeersIsEmpty

func (x *SyncResponse) GetRemotePeersIsEmpty() bool

func (*SyncResponse) GetWiretrusteeConfig

func (x *SyncResponse) GetWiretrusteeConfig() *WiretrusteeConfig

func (*SyncResponse) ProtoMessage

func (*SyncResponse) ProtoMessage()

func (*SyncResponse) ProtoReflect

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

func (*SyncResponse) Reset

func (x *SyncResponse) Reset()

func (*SyncResponse) String

func (x *SyncResponse) String() string

type UnimplementedManagementServiceServer

type UnimplementedManagementServiceServer struct {
}

UnimplementedManagementServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedManagementServiceServer) GetDeviceAuthorizationFlow

func (UnimplementedManagementServiceServer) GetServerKey

func (UnimplementedManagementServiceServer) IsHealthy

func (UnimplementedManagementServiceServer) Login

func (UnimplementedManagementServiceServer) Sync

type UnsafeManagementServiceServer

type UnsafeManagementServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeManagementServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ManagementServiceServer will result in compilation errors.

type WiretrusteeConfig

type WiretrusteeConfig struct {

	// a list of STUN servers
	Stuns []*HostConfig `protobuf:"bytes,1,rep,name=stuns,proto3" json:"stuns,omitempty"`
	// a list of TURN servers
	Turns []*ProtectedHostConfig `protobuf:"bytes,2,rep,name=turns,proto3" json:"turns,omitempty"`
	// a Signal server config
	Signal *HostConfig `protobuf:"bytes,3,opt,name=signal,proto3" json:"signal,omitempty"`
	// contains filtered or unexported fields
}

WiretrusteeConfig is a common configuration of any Wiretrustee peer. It contains STUN, TURN, Signal and Management servers configurations

func (*WiretrusteeConfig) Descriptor deprecated

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

Deprecated: Use WiretrusteeConfig.ProtoReflect.Descriptor instead.

func (*WiretrusteeConfig) GetSignal

func (x *WiretrusteeConfig) GetSignal() *HostConfig

func (*WiretrusteeConfig) GetStuns

func (x *WiretrusteeConfig) GetStuns() []*HostConfig

func (*WiretrusteeConfig) GetTurns

func (x *WiretrusteeConfig) GetTurns() []*ProtectedHostConfig

func (*WiretrusteeConfig) ProtoMessage

func (*WiretrusteeConfig) ProtoMessage()

func (*WiretrusteeConfig) ProtoReflect

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

func (*WiretrusteeConfig) Reset

func (x *WiretrusteeConfig) Reset()

func (*WiretrusteeConfig) String

func (x *WiretrusteeConfig) String() string

Jump to

Keyboard shortcuts

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