mirror of
https://github.com/netbirdio/netbird.git
synced 2026-04-18 08:16:39 +00:00
With the lazy connection feature, the peer will connect to target peers on-demand. The trigger can be any IP traffic. This feature can be enabled with the NB_ENABLE_EXPERIMENTAL_LAZY_CONN environment variable. When the engine receives a network map, it binds a free UDP port for every remote peer, and the system configures WireGuard endpoints for these ports. When traffic appears on a UDP socket, the system removes this listener and starts the peer connection procedure immediately. Key changes Fix slow netbird status -d command Move from engine.go file to conn_mgr.go the peer connection related code Refactor the iface interface usage and moved interface file next to the engine code Add new command line flag and UI option to enable feature The peer.Conn struct is reusable after it has been closed. Change connection states Connection states Idle: The peer is not attempting to establish a connection. This typically means it's in a lazy state or the remote peer is expired. Connecting: The peer is actively trying to establish a connection. This occurs when the peer has entered an active state and is continuously attempting to reach the remote peer. Connected: A successful peer-to-peer connection has been established and communication is active.
4482 lines
155 KiB
Go
4482 lines
155 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// versions:
|
|
// protoc-gen-go v1.26.0
|
|
// protoc v3.21.12
|
|
// source: management.proto
|
|
|
|
package proto
|
|
|
|
import (
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
durationpb "google.golang.org/protobuf/types/known/durationpb"
|
|
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
|
|
reflect "reflect"
|
|
sync "sync"
|
|
)
|
|
|
|
const (
|
|
// Verify that this generated code is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
)
|
|
|
|
type RuleProtocol int32
|
|
|
|
const (
|
|
RuleProtocol_UNKNOWN RuleProtocol = 0
|
|
RuleProtocol_ALL RuleProtocol = 1
|
|
RuleProtocol_TCP RuleProtocol = 2
|
|
RuleProtocol_UDP RuleProtocol = 3
|
|
RuleProtocol_ICMP RuleProtocol = 4
|
|
RuleProtocol_CUSTOM RuleProtocol = 5
|
|
)
|
|
|
|
// Enum value maps for RuleProtocol.
|
|
var (
|
|
RuleProtocol_name = map[int32]string{
|
|
0: "UNKNOWN",
|
|
1: "ALL",
|
|
2: "TCP",
|
|
3: "UDP",
|
|
4: "ICMP",
|
|
5: "CUSTOM",
|
|
}
|
|
RuleProtocol_value = map[string]int32{
|
|
"UNKNOWN": 0,
|
|
"ALL": 1,
|
|
"TCP": 2,
|
|
"UDP": 3,
|
|
"ICMP": 4,
|
|
"CUSTOM": 5,
|
|
}
|
|
)
|
|
|
|
func (x RuleProtocol) Enum() *RuleProtocol {
|
|
p := new(RuleProtocol)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x RuleProtocol) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (RuleProtocol) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_management_proto_enumTypes[0].Descriptor()
|
|
}
|
|
|
|
func (RuleProtocol) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[0]
|
|
}
|
|
|
|
func (x RuleProtocol) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use RuleProtocol.Descriptor instead.
|
|
func (RuleProtocol) EnumDescriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
type RuleDirection int32
|
|
|
|
const (
|
|
RuleDirection_IN RuleDirection = 0
|
|
RuleDirection_OUT RuleDirection = 1
|
|
)
|
|
|
|
// Enum value maps for RuleDirection.
|
|
var (
|
|
RuleDirection_name = map[int32]string{
|
|
0: "IN",
|
|
1: "OUT",
|
|
}
|
|
RuleDirection_value = map[string]int32{
|
|
"IN": 0,
|
|
"OUT": 1,
|
|
}
|
|
)
|
|
|
|
func (x RuleDirection) Enum() *RuleDirection {
|
|
p := new(RuleDirection)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x RuleDirection) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (RuleDirection) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_management_proto_enumTypes[1].Descriptor()
|
|
}
|
|
|
|
func (RuleDirection) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[1]
|
|
}
|
|
|
|
func (x RuleDirection) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use RuleDirection.Descriptor instead.
|
|
func (RuleDirection) EnumDescriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
type RuleAction int32
|
|
|
|
const (
|
|
RuleAction_ACCEPT RuleAction = 0
|
|
RuleAction_DROP RuleAction = 1
|
|
)
|
|
|
|
// Enum value maps for RuleAction.
|
|
var (
|
|
RuleAction_name = map[int32]string{
|
|
0: "ACCEPT",
|
|
1: "DROP",
|
|
}
|
|
RuleAction_value = map[string]int32{
|
|
"ACCEPT": 0,
|
|
"DROP": 1,
|
|
}
|
|
)
|
|
|
|
func (x RuleAction) Enum() *RuleAction {
|
|
p := new(RuleAction)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x RuleAction) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (RuleAction) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_management_proto_enumTypes[2].Descriptor()
|
|
}
|
|
|
|
func (RuleAction) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[2]
|
|
}
|
|
|
|
func (x RuleAction) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use RuleAction.Descriptor instead.
|
|
func (RuleAction) EnumDescriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
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
|
|
)
|
|
|
|
// Enum value maps for HostConfig_Protocol.
|
|
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,
|
|
}
|
|
)
|
|
|
|
func (x HostConfig_Protocol) Enum() *HostConfig_Protocol {
|
|
p := new(HostConfig_Protocol)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x HostConfig_Protocol) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (HostConfig_Protocol) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_management_proto_enumTypes[3].Descriptor()
|
|
}
|
|
|
|
func (HostConfig_Protocol) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[3]
|
|
}
|
|
|
|
func (x HostConfig_Protocol) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use HostConfig_Protocol.Descriptor instead.
|
|
func (HostConfig_Protocol) EnumDescriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{14, 0}
|
|
}
|
|
|
|
type DeviceAuthorizationFlowProvider int32
|
|
|
|
const (
|
|
DeviceAuthorizationFlow_HOSTED DeviceAuthorizationFlowProvider = 0
|
|
)
|
|
|
|
// Enum value maps for DeviceAuthorizationFlowProvider.
|
|
var (
|
|
DeviceAuthorizationFlowProvider_name = map[int32]string{
|
|
0: "HOSTED",
|
|
}
|
|
DeviceAuthorizationFlowProvider_value = map[string]int32{
|
|
"HOSTED": 0,
|
|
}
|
|
)
|
|
|
|
func (x DeviceAuthorizationFlowProvider) Enum() *DeviceAuthorizationFlowProvider {
|
|
p := new(DeviceAuthorizationFlowProvider)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x DeviceAuthorizationFlowProvider) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (DeviceAuthorizationFlowProvider) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_management_proto_enumTypes[4].Descriptor()
|
|
}
|
|
|
|
func (DeviceAuthorizationFlowProvider) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[4]
|
|
}
|
|
|
|
func (x DeviceAuthorizationFlowProvider) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use DeviceAuthorizationFlowProvider.Descriptor instead.
|
|
func (DeviceAuthorizationFlowProvider) EnumDescriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{23, 0}
|
|
}
|
|
|
|
type EncryptedMessage struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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 Netbird Management Service protocol
|
|
Version int32 `protobuf:"varint,3,opt,name=version,proto3" json:"version,omitempty"`
|
|
}
|
|
|
|
func (x *EncryptedMessage) Reset() {
|
|
*x = EncryptedMessage{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *EncryptedMessage) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*EncryptedMessage) ProtoMessage() {}
|
|
|
|
func (x *EncryptedMessage) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[0]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use EncryptedMessage.ProtoReflect.Descriptor instead.
|
|
func (*EncryptedMessage) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *EncryptedMessage) GetWgPubKey() string {
|
|
if x != nil {
|
|
return x.WgPubKey
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *EncryptedMessage) GetBody() []byte {
|
|
if x != nil {
|
|
return x.Body
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *EncryptedMessage) GetVersion() int32 {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type SyncRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Meta data of the peer
|
|
Meta *PeerSystemMeta `protobuf:"bytes,1,opt,name=meta,proto3" json:"meta,omitempty"`
|
|
}
|
|
|
|
func (x *SyncRequest) Reset() {
|
|
*x = SyncRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SyncRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SyncRequest) ProtoMessage() {}
|
|
|
|
func (x *SyncRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[1]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SyncRequest.ProtoReflect.Descriptor instead.
|
|
func (*SyncRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *SyncRequest) GetMeta() *PeerSystemMeta {
|
|
if x != nil {
|
|
return x.Meta
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SyncResponse represents a state that should be applied to the local peer (e.g. Netbird servers config as well as local peer and remote peers configs)
|
|
type SyncResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Global config
|
|
NetbirdConfig *NetbirdConfig `protobuf:"bytes,1,opt,name=netbirdConfig,proto3" json:"netbirdConfig,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"`
|
|
// Posture checks to be evaluated by client
|
|
Checks []*Checks `protobuf:"bytes,6,rep,name=Checks,proto3" json:"Checks,omitempty"`
|
|
}
|
|
|
|
func (x *SyncResponse) Reset() {
|
|
*x = SyncResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SyncResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SyncResponse) ProtoMessage() {}
|
|
|
|
func (x *SyncResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[2]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SyncResponse.ProtoReflect.Descriptor instead.
|
|
func (*SyncResponse) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *SyncResponse) GetNetbirdConfig() *NetbirdConfig {
|
|
if x != nil {
|
|
return x.NetbirdConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *SyncResponse) GetPeerConfig() *PeerConfig {
|
|
if x != nil {
|
|
return x.PeerConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *SyncResponse) GetRemotePeers() []*RemotePeerConfig {
|
|
if x != nil {
|
|
return x.RemotePeers
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *SyncResponse) GetRemotePeersIsEmpty() bool {
|
|
if x != nil {
|
|
return x.RemotePeersIsEmpty
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *SyncResponse) GetNetworkMap() *NetworkMap {
|
|
if x != nil {
|
|
return x.NetworkMap
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *SyncResponse) GetChecks() []*Checks {
|
|
if x != nil {
|
|
return x.Checks
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type SyncMetaRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Meta data of the peer
|
|
Meta *PeerSystemMeta `protobuf:"bytes,1,opt,name=meta,proto3" json:"meta,omitempty"`
|
|
}
|
|
|
|
func (x *SyncMetaRequest) Reset() {
|
|
*x = SyncMetaRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[3]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SyncMetaRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SyncMetaRequest) ProtoMessage() {}
|
|
|
|
func (x *SyncMetaRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[3]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SyncMetaRequest.ProtoReflect.Descriptor instead.
|
|
func (*SyncMetaRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *SyncMetaRequest) GetMeta() *PeerSystemMeta {
|
|
if x != nil {
|
|
return x.Meta
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type LoginRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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"`
|
|
DnsLabels []string `protobuf:"bytes,5,rep,name=dnsLabels,proto3" json:"dnsLabels,omitempty"`
|
|
}
|
|
|
|
func (x *LoginRequest) Reset() {
|
|
*x = LoginRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[4]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *LoginRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*LoginRequest) ProtoMessage() {}
|
|
|
|
func (x *LoginRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[4]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use LoginRequest.ProtoReflect.Descriptor instead.
|
|
func (*LoginRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *LoginRequest) GetSetupKey() string {
|
|
if x != nil {
|
|
return x.SetupKey
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *LoginRequest) GetMeta() *PeerSystemMeta {
|
|
if x != nil {
|
|
return x.Meta
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *LoginRequest) GetJwtToken() string {
|
|
if x != nil {
|
|
return x.JwtToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *LoginRequest) GetPeerKeys() *PeerKeys {
|
|
if x != nil {
|
|
return x.PeerKeys
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *LoginRequest) GetDnsLabels() []string {
|
|
if x != nil {
|
|
return x.DnsLabels
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// 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.
|
|
type PeerKeys struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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"`
|
|
}
|
|
|
|
func (x *PeerKeys) Reset() {
|
|
*x = PeerKeys{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PeerKeys) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PeerKeys) ProtoMessage() {}
|
|
|
|
func (x *PeerKeys) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[5]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PeerKeys.ProtoReflect.Descriptor instead.
|
|
func (*PeerKeys) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *PeerKeys) GetSshPubKey() []byte {
|
|
if x != nil {
|
|
return x.SshPubKey
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PeerKeys) GetWgPubKey() []byte {
|
|
if x != nil {
|
|
return x.WgPubKey
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Environment is part of the PeerSystemMeta and describes the environment the agent is running in.
|
|
type Environment struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// cloud is the cloud provider the agent is running in if applicable.
|
|
Cloud string `protobuf:"bytes,1,opt,name=cloud,proto3" json:"cloud,omitempty"`
|
|
// platform is the platform the agent is running on if applicable.
|
|
Platform string `protobuf:"bytes,2,opt,name=platform,proto3" json:"platform,omitempty"`
|
|
}
|
|
|
|
func (x *Environment) Reset() {
|
|
*x = Environment{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[6]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Environment) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Environment) ProtoMessage() {}
|
|
|
|
func (x *Environment) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[6]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Environment.ProtoReflect.Descriptor instead.
|
|
func (*Environment) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (x *Environment) GetCloud() string {
|
|
if x != nil {
|
|
return x.Cloud
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Environment) GetPlatform() string {
|
|
if x != nil {
|
|
return x.Platform
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// File represents a file on the system.
|
|
type File struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// path is the path to the file.
|
|
Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
|
|
// exist indicate whether the file exists.
|
|
Exist bool `protobuf:"varint,2,opt,name=exist,proto3" json:"exist,omitempty"`
|
|
// processIsRunning indicates whether the file is a running process or not.
|
|
ProcessIsRunning bool `protobuf:"varint,3,opt,name=processIsRunning,proto3" json:"processIsRunning,omitempty"`
|
|
}
|
|
|
|
func (x *File) Reset() {
|
|
*x = File{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[7]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *File) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*File) ProtoMessage() {}
|
|
|
|
func (x *File) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[7]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use File.ProtoReflect.Descriptor instead.
|
|
func (*File) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
func (x *File) GetPath() string {
|
|
if x != nil {
|
|
return x.Path
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *File) GetExist() bool {
|
|
if x != nil {
|
|
return x.Exist
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *File) GetProcessIsRunning() bool {
|
|
if x != nil {
|
|
return x.ProcessIsRunning
|
|
}
|
|
return false
|
|
}
|
|
|
|
type Flags struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
RosenpassEnabled bool `protobuf:"varint,1,opt,name=rosenpassEnabled,proto3" json:"rosenpassEnabled,omitempty"`
|
|
RosenpassPermissive bool `protobuf:"varint,2,opt,name=rosenpassPermissive,proto3" json:"rosenpassPermissive,omitempty"`
|
|
ServerSSHAllowed bool `protobuf:"varint,3,opt,name=serverSSHAllowed,proto3" json:"serverSSHAllowed,omitempty"`
|
|
DisableClientRoutes bool `protobuf:"varint,4,opt,name=disableClientRoutes,proto3" json:"disableClientRoutes,omitempty"`
|
|
DisableServerRoutes bool `protobuf:"varint,5,opt,name=disableServerRoutes,proto3" json:"disableServerRoutes,omitempty"`
|
|
DisableDNS bool `protobuf:"varint,6,opt,name=disableDNS,proto3" json:"disableDNS,omitempty"`
|
|
DisableFirewall bool `protobuf:"varint,7,opt,name=disableFirewall,proto3" json:"disableFirewall,omitempty"`
|
|
}
|
|
|
|
func (x *Flags) Reset() {
|
|
*x = Flags{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[8]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Flags) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Flags) ProtoMessage() {}
|
|
|
|
func (x *Flags) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[8]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Flags.ProtoReflect.Descriptor instead.
|
|
func (*Flags) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
func (x *Flags) GetRosenpassEnabled() bool {
|
|
if x != nil {
|
|
return x.RosenpassEnabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Flags) GetRosenpassPermissive() bool {
|
|
if x != nil {
|
|
return x.RosenpassPermissive
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Flags) GetServerSSHAllowed() bool {
|
|
if x != nil {
|
|
return x.ServerSSHAllowed
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Flags) GetDisableClientRoutes() bool {
|
|
if x != nil {
|
|
return x.DisableClientRoutes
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Flags) GetDisableServerRoutes() bool {
|
|
if x != nil {
|
|
return x.DisableServerRoutes
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Flags) GetDisableDNS() bool {
|
|
if x != nil {
|
|
return x.DisableDNS
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Flags) GetDisableFirewall() bool {
|
|
if x != nil {
|
|
return x.DisableFirewall
|
|
}
|
|
return false
|
|
}
|
|
|
|
// PeerSystemMeta is machine meta data like OS and version.
|
|
type PeerSystemMeta struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
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"`
|
|
NetbirdVersion string `protobuf:"bytes,7,opt,name=netbirdVersion,proto3" json:"netbirdVersion,omitempty"`
|
|
UiVersion string `protobuf:"bytes,8,opt,name=uiVersion,proto3" json:"uiVersion,omitempty"`
|
|
KernelVersion string `protobuf:"bytes,9,opt,name=kernelVersion,proto3" json:"kernelVersion,omitempty"`
|
|
OSVersion string `protobuf:"bytes,10,opt,name=OSVersion,proto3" json:"OSVersion,omitempty"`
|
|
NetworkAddresses []*NetworkAddress `protobuf:"bytes,11,rep,name=networkAddresses,proto3" json:"networkAddresses,omitempty"`
|
|
SysSerialNumber string `protobuf:"bytes,12,opt,name=sysSerialNumber,proto3" json:"sysSerialNumber,omitempty"`
|
|
SysProductName string `protobuf:"bytes,13,opt,name=sysProductName,proto3" json:"sysProductName,omitempty"`
|
|
SysManufacturer string `protobuf:"bytes,14,opt,name=sysManufacturer,proto3" json:"sysManufacturer,omitempty"`
|
|
Environment *Environment `protobuf:"bytes,15,opt,name=environment,proto3" json:"environment,omitempty"`
|
|
Files []*File `protobuf:"bytes,16,rep,name=files,proto3" json:"files,omitempty"`
|
|
Flags *Flags `protobuf:"bytes,17,opt,name=flags,proto3" json:"flags,omitempty"`
|
|
}
|
|
|
|
func (x *PeerSystemMeta) Reset() {
|
|
*x = PeerSystemMeta{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[9]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PeerSystemMeta) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PeerSystemMeta) ProtoMessage() {}
|
|
|
|
func (x *PeerSystemMeta) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[9]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PeerSystemMeta.ProtoReflect.Descriptor instead.
|
|
func (*PeerSystemMeta) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetHostname() string {
|
|
if x != nil {
|
|
return x.Hostname
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetGoOS() string {
|
|
if x != nil {
|
|
return x.GoOS
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetKernel() string {
|
|
if x != nil {
|
|
return x.Kernel
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetCore() string {
|
|
if x != nil {
|
|
return x.Core
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetPlatform() string {
|
|
if x != nil {
|
|
return x.Platform
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetOS() string {
|
|
if x != nil {
|
|
return x.OS
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetNetbirdVersion() string {
|
|
if x != nil {
|
|
return x.NetbirdVersion
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetUiVersion() string {
|
|
if x != nil {
|
|
return x.UiVersion
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetKernelVersion() string {
|
|
if x != nil {
|
|
return x.KernelVersion
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetOSVersion() string {
|
|
if x != nil {
|
|
return x.OSVersion
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetNetworkAddresses() []*NetworkAddress {
|
|
if x != nil {
|
|
return x.NetworkAddresses
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetSysSerialNumber() string {
|
|
if x != nil {
|
|
return x.SysSerialNumber
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetSysProductName() string {
|
|
if x != nil {
|
|
return x.SysProductName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetSysManufacturer() string {
|
|
if x != nil {
|
|
return x.SysManufacturer
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetEnvironment() *Environment {
|
|
if x != nil {
|
|
return x.Environment
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetFiles() []*File {
|
|
if x != nil {
|
|
return x.Files
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PeerSystemMeta) GetFlags() *Flags {
|
|
if x != nil {
|
|
return x.Flags
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type LoginResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Global config
|
|
NetbirdConfig *NetbirdConfig `protobuf:"bytes,1,opt,name=netbirdConfig,proto3" json:"netbirdConfig,omitempty"`
|
|
// Peer local config
|
|
PeerConfig *PeerConfig `protobuf:"bytes,2,opt,name=peerConfig,proto3" json:"peerConfig,omitempty"`
|
|
// Posture checks to be evaluated by client
|
|
Checks []*Checks `protobuf:"bytes,3,rep,name=Checks,proto3" json:"Checks,omitempty"`
|
|
}
|
|
|
|
func (x *LoginResponse) Reset() {
|
|
*x = LoginResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[10]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *LoginResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*LoginResponse) ProtoMessage() {}
|
|
|
|
func (x *LoginResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[10]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use LoginResponse.ProtoReflect.Descriptor instead.
|
|
func (*LoginResponse) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
func (x *LoginResponse) GetNetbirdConfig() *NetbirdConfig {
|
|
if x != nil {
|
|
return x.NetbirdConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *LoginResponse) GetPeerConfig() *PeerConfig {
|
|
if x != nil {
|
|
return x.PeerConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *LoginResponse) GetChecks() []*Checks {
|
|
if x != nil {
|
|
return x.Checks
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type ServerKeyResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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 Netbird Management Service protocol
|
|
Version int32 `protobuf:"varint,3,opt,name=version,proto3" json:"version,omitempty"`
|
|
}
|
|
|
|
func (x *ServerKeyResponse) Reset() {
|
|
*x = ServerKeyResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[11]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ServerKeyResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ServerKeyResponse) ProtoMessage() {}
|
|
|
|
func (x *ServerKeyResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[11]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ServerKeyResponse.ProtoReflect.Descriptor instead.
|
|
func (*ServerKeyResponse) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
func (x *ServerKeyResponse) GetKey() string {
|
|
if x != nil {
|
|
return x.Key
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ServerKeyResponse) GetExpiresAt() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.ExpiresAt
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ServerKeyResponse) GetVersion() int32 {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type Empty struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
}
|
|
|
|
func (x *Empty) Reset() {
|
|
*x = Empty{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[12]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Empty) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Empty) ProtoMessage() {}
|
|
|
|
func (x *Empty) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[12]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Empty.ProtoReflect.Descriptor instead.
|
|
func (*Empty) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{12}
|
|
}
|
|
|
|
// NetbirdConfig is a common configuration of any Netbird peer. It contains STUN, TURN, Signal and Management servers configurations
|
|
type NetbirdConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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"`
|
|
Relay *RelayConfig `protobuf:"bytes,4,opt,name=relay,proto3" json:"relay,omitempty"`
|
|
Flow *FlowConfig `protobuf:"bytes,5,opt,name=flow,proto3" json:"flow,omitempty"`
|
|
}
|
|
|
|
func (x *NetbirdConfig) Reset() {
|
|
*x = NetbirdConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[13]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *NetbirdConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*NetbirdConfig) ProtoMessage() {}
|
|
|
|
func (x *NetbirdConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[13]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use NetbirdConfig.ProtoReflect.Descriptor instead.
|
|
func (*NetbirdConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{13}
|
|
}
|
|
|
|
func (x *NetbirdConfig) GetStuns() []*HostConfig {
|
|
if x != nil {
|
|
return x.Stuns
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetbirdConfig) GetTurns() []*ProtectedHostConfig {
|
|
if x != nil {
|
|
return x.Turns
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetbirdConfig) GetSignal() *HostConfig {
|
|
if x != nil {
|
|
return x.Signal
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetbirdConfig) GetRelay() *RelayConfig {
|
|
if x != nil {
|
|
return x.Relay
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetbirdConfig) GetFlow() *FlowConfig {
|
|
if x != nil {
|
|
return x.Flow
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// HostConfig describes connection properties of some server (e.g. STUN, Signal, Management)
|
|
type HostConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// URI of the resource e.g. turns://stun.netbird.io:4430 or signal.netbird.io: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"`
|
|
}
|
|
|
|
func (x *HostConfig) Reset() {
|
|
*x = HostConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[14]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *HostConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*HostConfig) ProtoMessage() {}
|
|
|
|
func (x *HostConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[14]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use HostConfig.ProtoReflect.Descriptor instead.
|
|
func (*HostConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{14}
|
|
}
|
|
|
|
func (x *HostConfig) GetUri() string {
|
|
if x != nil {
|
|
return x.Uri
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *HostConfig) GetProtocol() HostConfig_Protocol {
|
|
if x != nil {
|
|
return x.Protocol
|
|
}
|
|
return HostConfig_UDP
|
|
}
|
|
|
|
type RelayConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Urls []string `protobuf:"bytes,1,rep,name=urls,proto3" json:"urls,omitempty"`
|
|
TokenPayload string `protobuf:"bytes,2,opt,name=tokenPayload,proto3" json:"tokenPayload,omitempty"`
|
|
TokenSignature string `protobuf:"bytes,3,opt,name=tokenSignature,proto3" json:"tokenSignature,omitempty"`
|
|
}
|
|
|
|
func (x *RelayConfig) Reset() {
|
|
*x = RelayConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[15]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *RelayConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RelayConfig) ProtoMessage() {}
|
|
|
|
func (x *RelayConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[15]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RelayConfig.ProtoReflect.Descriptor instead.
|
|
func (*RelayConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{15}
|
|
}
|
|
|
|
func (x *RelayConfig) GetUrls() []string {
|
|
if x != nil {
|
|
return x.Urls
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RelayConfig) GetTokenPayload() string {
|
|
if x != nil {
|
|
return x.TokenPayload
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RelayConfig) GetTokenSignature() string {
|
|
if x != nil {
|
|
return x.TokenSignature
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type FlowConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
|
|
TokenPayload string `protobuf:"bytes,2,opt,name=tokenPayload,proto3" json:"tokenPayload,omitempty"`
|
|
TokenSignature string `protobuf:"bytes,3,opt,name=tokenSignature,proto3" json:"tokenSignature,omitempty"`
|
|
Interval *durationpb.Duration `protobuf:"bytes,4,opt,name=interval,proto3" json:"interval,omitempty"`
|
|
Enabled bool `protobuf:"varint,5,opt,name=enabled,proto3" json:"enabled,omitempty"`
|
|
// counters determines if flow packets and bytes counters should be sent
|
|
Counters bool `protobuf:"varint,6,opt,name=counters,proto3" json:"counters,omitempty"`
|
|
// exitNodeCollection determines if event collection on exit nodes should be enabled
|
|
ExitNodeCollection bool `protobuf:"varint,7,opt,name=exitNodeCollection,proto3" json:"exitNodeCollection,omitempty"`
|
|
// dnsCollection determines if DNS event collection should be enabled
|
|
DnsCollection bool `protobuf:"varint,8,opt,name=dnsCollection,proto3" json:"dnsCollection,omitempty"`
|
|
}
|
|
|
|
func (x *FlowConfig) Reset() {
|
|
*x = FlowConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[16]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *FlowConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*FlowConfig) ProtoMessage() {}
|
|
|
|
func (x *FlowConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[16]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use FlowConfig.ProtoReflect.Descriptor instead.
|
|
func (*FlowConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{16}
|
|
}
|
|
|
|
func (x *FlowConfig) GetUrl() string {
|
|
if x != nil {
|
|
return x.Url
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *FlowConfig) GetTokenPayload() string {
|
|
if x != nil {
|
|
return x.TokenPayload
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *FlowConfig) GetTokenSignature() string {
|
|
if x != nil {
|
|
return x.TokenSignature
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *FlowConfig) GetInterval() *durationpb.Duration {
|
|
if x != nil {
|
|
return x.Interval
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *FlowConfig) GetEnabled() bool {
|
|
if x != nil {
|
|
return x.Enabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *FlowConfig) GetCounters() bool {
|
|
if x != nil {
|
|
return x.Counters
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *FlowConfig) GetExitNodeCollection() bool {
|
|
if x != nil {
|
|
return x.ExitNodeCollection
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *FlowConfig) GetDnsCollection() bool {
|
|
if x != nil {
|
|
return x.DnsCollection
|
|
}
|
|
return false
|
|
}
|
|
|
|
// ProtectedHostConfig is similar to HostConfig but has additional user and password
|
|
// Mostly used for TURN servers
|
|
type ProtectedHostConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
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"`
|
|
}
|
|
|
|
func (x *ProtectedHostConfig) Reset() {
|
|
*x = ProtectedHostConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[17]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ProtectedHostConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ProtectedHostConfig) ProtoMessage() {}
|
|
|
|
func (x *ProtectedHostConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[17]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ProtectedHostConfig.ProtoReflect.Descriptor instead.
|
|
func (*ProtectedHostConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{17}
|
|
}
|
|
|
|
func (x *ProtectedHostConfig) GetHostConfig() *HostConfig {
|
|
if x != nil {
|
|
return x.HostConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ProtectedHostConfig) GetUser() string {
|
|
if x != nil {
|
|
return x.User
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProtectedHostConfig) GetPassword() string {
|
|
if x != nil {
|
|
return x.Password
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// PeerConfig represents a configuration of a "our" peer.
|
|
// The properties are used to configure local Wireguard
|
|
type PeerConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Peer's virtual IP address within the Netbird VPN (a Wireguard address config)
|
|
Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
|
|
// Netbird 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"`
|
|
RoutingPeerDnsResolutionEnabled bool `protobuf:"varint,5,opt,name=RoutingPeerDnsResolutionEnabled,proto3" json:"RoutingPeerDnsResolutionEnabled,omitempty"`
|
|
LazyConnectionEnabled bool `protobuf:"varint,6,opt,name=LazyConnectionEnabled,proto3" json:"LazyConnectionEnabled,omitempty"`
|
|
}
|
|
|
|
func (x *PeerConfig) Reset() {
|
|
*x = PeerConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[18]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PeerConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PeerConfig) ProtoMessage() {}
|
|
|
|
func (x *PeerConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[18]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PeerConfig.ProtoReflect.Descriptor instead.
|
|
func (*PeerConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{18}
|
|
}
|
|
|
|
func (x *PeerConfig) GetAddress() string {
|
|
if x != nil {
|
|
return x.Address
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerConfig) GetDns() string {
|
|
if x != nil {
|
|
return x.Dns
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerConfig) GetSshConfig() *SSHConfig {
|
|
if x != nil {
|
|
return x.SshConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PeerConfig) GetFqdn() string {
|
|
if x != nil {
|
|
return x.Fqdn
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *PeerConfig) GetRoutingPeerDnsResolutionEnabled() bool {
|
|
if x != nil {
|
|
return x.RoutingPeerDnsResolutionEnabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *PeerConfig) GetLazyConnectionEnabled() bool {
|
|
if x != nil {
|
|
return x.LazyConnectionEnabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
// NetworkMap represents a network state of the peer with the corresponding configuration parameters to establish peer-to-peer connections
|
|
type NetworkMap struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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"`
|
|
// RemotePeerConfig represents a list of remote peers that the receiver can connect to
|
|
OfflinePeers []*RemotePeerConfig `protobuf:"bytes,7,rep,name=offlinePeers,proto3" json:"offlinePeers,omitempty"`
|
|
// FirewallRule represents a list of firewall rules to be applied to peer
|
|
FirewallRules []*FirewallRule `protobuf:"bytes,8,rep,name=FirewallRules,proto3" json:"FirewallRules,omitempty"`
|
|
// firewallRulesIsEmpty indicates whether FirewallRule array is empty or not to bypass protobuf null and empty array equality.
|
|
FirewallRulesIsEmpty bool `protobuf:"varint,9,opt,name=firewallRulesIsEmpty,proto3" json:"firewallRulesIsEmpty,omitempty"`
|
|
// RoutesFirewallRules represents a list of routes firewall rules to be applied to peer
|
|
RoutesFirewallRules []*RouteFirewallRule `protobuf:"bytes,10,rep,name=routesFirewallRules,proto3" json:"routesFirewallRules,omitempty"`
|
|
// RoutesFirewallRulesIsEmpty indicates whether RouteFirewallRule array is empty or not to bypass protobuf null and empty array equality.
|
|
RoutesFirewallRulesIsEmpty bool `protobuf:"varint,11,opt,name=routesFirewallRulesIsEmpty,proto3" json:"routesFirewallRulesIsEmpty,omitempty"`
|
|
ForwardingRules []*ForwardingRule `protobuf:"bytes,12,rep,name=forwardingRules,proto3" json:"forwardingRules,omitempty"`
|
|
}
|
|
|
|
func (x *NetworkMap) Reset() {
|
|
*x = NetworkMap{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[19]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *NetworkMap) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*NetworkMap) ProtoMessage() {}
|
|
|
|
func (x *NetworkMap) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[19]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use NetworkMap.ProtoReflect.Descriptor instead.
|
|
func (*NetworkMap) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{19}
|
|
}
|
|
|
|
func (x *NetworkMap) GetSerial() uint64 {
|
|
if x != nil {
|
|
return x.Serial
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *NetworkMap) GetPeerConfig() *PeerConfig {
|
|
if x != nil {
|
|
return x.PeerConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetworkMap) GetRemotePeers() []*RemotePeerConfig {
|
|
if x != nil {
|
|
return x.RemotePeers
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetworkMap) GetRemotePeersIsEmpty() bool {
|
|
if x != nil {
|
|
return x.RemotePeersIsEmpty
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *NetworkMap) GetRoutes() []*Route {
|
|
if x != nil {
|
|
return x.Routes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetworkMap) GetDNSConfig() *DNSConfig {
|
|
if x != nil {
|
|
return x.DNSConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetworkMap) GetOfflinePeers() []*RemotePeerConfig {
|
|
if x != nil {
|
|
return x.OfflinePeers
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetworkMap) GetFirewallRules() []*FirewallRule {
|
|
if x != nil {
|
|
return x.FirewallRules
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetworkMap) GetFirewallRulesIsEmpty() bool {
|
|
if x != nil {
|
|
return x.FirewallRulesIsEmpty
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *NetworkMap) GetRoutesFirewallRules() []*RouteFirewallRule {
|
|
if x != nil {
|
|
return x.RoutesFirewallRules
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NetworkMap) GetRoutesFirewallRulesIsEmpty() bool {
|
|
if x != nil {
|
|
return x.RoutesFirewallRulesIsEmpty
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *NetworkMap) GetForwardingRules() []*ForwardingRule {
|
|
if x != nil {
|
|
return x.ForwardingRules
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// RemotePeerConfig represents a configuration of a remote peer.
|
|
// The properties are used to configure WireGuard Peers sections
|
|
type RemotePeerConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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"`
|
|
AgentVersion string `protobuf:"bytes,5,opt,name=agentVersion,proto3" json:"agentVersion,omitempty"`
|
|
}
|
|
|
|
func (x *RemotePeerConfig) Reset() {
|
|
*x = RemotePeerConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[20]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *RemotePeerConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RemotePeerConfig) ProtoMessage() {}
|
|
|
|
func (x *RemotePeerConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[20]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RemotePeerConfig.ProtoReflect.Descriptor instead.
|
|
func (*RemotePeerConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{20}
|
|
}
|
|
|
|
func (x *RemotePeerConfig) GetWgPubKey() string {
|
|
if x != nil {
|
|
return x.WgPubKey
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RemotePeerConfig) GetAllowedIps() []string {
|
|
if x != nil {
|
|
return x.AllowedIps
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RemotePeerConfig) GetSshConfig() *SSHConfig {
|
|
if x != nil {
|
|
return x.SshConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RemotePeerConfig) GetFqdn() string {
|
|
if x != nil {
|
|
return x.Fqdn
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RemotePeerConfig) GetAgentVersion() string {
|
|
if x != nil {
|
|
return x.AgentVersion
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// SSHConfig represents SSH configurations of a peer.
|
|
type SSHConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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"`
|
|
}
|
|
|
|
func (x *SSHConfig) Reset() {
|
|
*x = SSHConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[21]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SSHConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SSHConfig) ProtoMessage() {}
|
|
|
|
func (x *SSHConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[21]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SSHConfig.ProtoReflect.Descriptor instead.
|
|
func (*SSHConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{21}
|
|
}
|
|
|
|
func (x *SSHConfig) GetSshEnabled() bool {
|
|
if x != nil {
|
|
return x.SshEnabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *SSHConfig) GetSshPubKey() []byte {
|
|
if x != nil {
|
|
return x.SshPubKey
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// DeviceAuthorizationFlowRequest empty struct for future expansion
|
|
type DeviceAuthorizationFlowRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
}
|
|
|
|
func (x *DeviceAuthorizationFlowRequest) Reset() {
|
|
*x = DeviceAuthorizationFlowRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[22]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *DeviceAuthorizationFlowRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DeviceAuthorizationFlowRequest) ProtoMessage() {}
|
|
|
|
func (x *DeviceAuthorizationFlowRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[22]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DeviceAuthorizationFlowRequest.ProtoReflect.Descriptor instead.
|
|
func (*DeviceAuthorizationFlowRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{22}
|
|
}
|
|
|
|
// 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
|
|
type DeviceAuthorizationFlow struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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"`
|
|
}
|
|
|
|
func (x *DeviceAuthorizationFlow) Reset() {
|
|
*x = DeviceAuthorizationFlow{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[23]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *DeviceAuthorizationFlow) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DeviceAuthorizationFlow) ProtoMessage() {}
|
|
|
|
func (x *DeviceAuthorizationFlow) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[23]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DeviceAuthorizationFlow.ProtoReflect.Descriptor instead.
|
|
func (*DeviceAuthorizationFlow) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{23}
|
|
}
|
|
|
|
func (x *DeviceAuthorizationFlow) GetProvider() DeviceAuthorizationFlowProvider {
|
|
if x != nil {
|
|
return x.Provider
|
|
}
|
|
return DeviceAuthorizationFlow_HOSTED
|
|
}
|
|
|
|
func (x *DeviceAuthorizationFlow) GetProviderConfig() *ProviderConfig {
|
|
if x != nil {
|
|
return x.ProviderConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// PKCEAuthorizationFlowRequest empty struct for future expansion
|
|
type PKCEAuthorizationFlowRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
}
|
|
|
|
func (x *PKCEAuthorizationFlowRequest) Reset() {
|
|
*x = PKCEAuthorizationFlowRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[24]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PKCEAuthorizationFlowRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PKCEAuthorizationFlowRequest) ProtoMessage() {}
|
|
|
|
func (x *PKCEAuthorizationFlowRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[24]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PKCEAuthorizationFlowRequest.ProtoReflect.Descriptor instead.
|
|
func (*PKCEAuthorizationFlowRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{24}
|
|
}
|
|
|
|
// PKCEAuthorizationFlow represents Authorization Code Flow information
|
|
// that can be used by the client to login initiate a Oauth 2.0 authorization code grant flow
|
|
// with Proof Key for Code Exchange (PKCE). See https://datatracker.ietf.org/doc/html/rfc7636
|
|
type PKCEAuthorizationFlow struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
ProviderConfig *ProviderConfig `protobuf:"bytes,1,opt,name=ProviderConfig,proto3" json:"ProviderConfig,omitempty"`
|
|
}
|
|
|
|
func (x *PKCEAuthorizationFlow) Reset() {
|
|
*x = PKCEAuthorizationFlow{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[25]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PKCEAuthorizationFlow) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PKCEAuthorizationFlow) ProtoMessage() {}
|
|
|
|
func (x *PKCEAuthorizationFlow) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[25]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PKCEAuthorizationFlow.ProtoReflect.Descriptor instead.
|
|
func (*PKCEAuthorizationFlow) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{25}
|
|
}
|
|
|
|
func (x *PKCEAuthorizationFlow) GetProviderConfig() *ProviderConfig {
|
|
if x != nil {
|
|
return x.ProviderConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// ProviderConfig has all attributes needed to initiate a device/pkce authorization flow
|
|
type ProviderConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// 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"`
|
|
// Scopes provides the scopes to be included in the token request
|
|
Scope string `protobuf:"bytes,7,opt,name=Scope,proto3" json:"Scope,omitempty"`
|
|
// UseIDToken indicates if the id token should be used for authentication
|
|
UseIDToken bool `protobuf:"varint,8,opt,name=UseIDToken,proto3" json:"UseIDToken,omitempty"`
|
|
// AuthorizationEndpoint is the endpoint of an IDP manager where clients can obtain authorization code.
|
|
AuthorizationEndpoint string `protobuf:"bytes,9,opt,name=AuthorizationEndpoint,proto3" json:"AuthorizationEndpoint,omitempty"`
|
|
// RedirectURLs handles authorization code from IDP manager
|
|
RedirectURLs []string `protobuf:"bytes,10,rep,name=RedirectURLs,proto3" json:"RedirectURLs,omitempty"`
|
|
// DisablePromptLogin makes the PKCE flow to not prompt the user for login
|
|
DisablePromptLogin bool `protobuf:"varint,11,opt,name=DisablePromptLogin,proto3" json:"DisablePromptLogin,omitempty"`
|
|
// LoginFlags sets the PKCE flow login details
|
|
LoginFlag uint32 `protobuf:"varint,12,opt,name=LoginFlag,proto3" json:"LoginFlag,omitempty"`
|
|
}
|
|
|
|
func (x *ProviderConfig) Reset() {
|
|
*x = ProviderConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[26]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ProviderConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ProviderConfig) ProtoMessage() {}
|
|
|
|
func (x *ProviderConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[26]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ProviderConfig.ProtoReflect.Descriptor instead.
|
|
func (*ProviderConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{26}
|
|
}
|
|
|
|
func (x *ProviderConfig) GetClientID() string {
|
|
if x != nil {
|
|
return x.ClientID
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetClientSecret() string {
|
|
if x != nil {
|
|
return x.ClientSecret
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetDomain() string {
|
|
if x != nil {
|
|
return x.Domain
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetAudience() string {
|
|
if x != nil {
|
|
return x.Audience
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetDeviceAuthEndpoint() string {
|
|
if x != nil {
|
|
return x.DeviceAuthEndpoint
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetTokenEndpoint() string {
|
|
if x != nil {
|
|
return x.TokenEndpoint
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetScope() string {
|
|
if x != nil {
|
|
return x.Scope
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetUseIDToken() bool {
|
|
if x != nil {
|
|
return x.UseIDToken
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *ProviderConfig) GetAuthorizationEndpoint() string {
|
|
if x != nil {
|
|
return x.AuthorizationEndpoint
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetRedirectURLs() []string {
|
|
if x != nil {
|
|
return x.RedirectURLs
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ProviderConfig) GetDisablePromptLogin() bool {
|
|
if x != nil {
|
|
return x.DisablePromptLogin
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *ProviderConfig) GetLoginFlag() uint32 {
|
|
if x != nil {
|
|
return x.LoginFlag
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// Route represents a route.Route object
|
|
type Route struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
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"`
|
|
Domains []string `protobuf:"bytes,8,rep,name=Domains,proto3" json:"Domains,omitempty"`
|
|
KeepRoute bool `protobuf:"varint,9,opt,name=keepRoute,proto3" json:"keepRoute,omitempty"`
|
|
}
|
|
|
|
func (x *Route) Reset() {
|
|
*x = Route{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[27]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Route) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Route) ProtoMessage() {}
|
|
|
|
func (x *Route) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[27]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Route.ProtoReflect.Descriptor instead.
|
|
func (*Route) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{27}
|
|
}
|
|
|
|
func (x *Route) GetID() string {
|
|
if x != nil {
|
|
return x.ID
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Route) GetNetwork() string {
|
|
if x != nil {
|
|
return x.Network
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Route) GetNetworkType() int64 {
|
|
if x != nil {
|
|
return x.NetworkType
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Route) GetPeer() string {
|
|
if x != nil {
|
|
return x.Peer
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Route) GetMetric() int64 {
|
|
if x != nil {
|
|
return x.Metric
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Route) GetMasquerade() bool {
|
|
if x != nil {
|
|
return x.Masquerade
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Route) GetNetID() string {
|
|
if x != nil {
|
|
return x.NetID
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Route) GetDomains() []string {
|
|
if x != nil {
|
|
return x.Domains
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Route) GetKeepRoute() bool {
|
|
if x != nil {
|
|
return x.KeepRoute
|
|
}
|
|
return false
|
|
}
|
|
|
|
// DNSConfig represents a dns.Update
|
|
type DNSConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
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"`
|
|
}
|
|
|
|
func (x *DNSConfig) Reset() {
|
|
*x = DNSConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[28]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *DNSConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DNSConfig) ProtoMessage() {}
|
|
|
|
func (x *DNSConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[28]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DNSConfig.ProtoReflect.Descriptor instead.
|
|
func (*DNSConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{28}
|
|
}
|
|
|
|
func (x *DNSConfig) GetServiceEnable() bool {
|
|
if x != nil {
|
|
return x.ServiceEnable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DNSConfig) GetNameServerGroups() []*NameServerGroup {
|
|
if x != nil {
|
|
return x.NameServerGroups
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *DNSConfig) GetCustomZones() []*CustomZone {
|
|
if x != nil {
|
|
return x.CustomZones
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// CustomZone represents a dns.CustomZone
|
|
type CustomZone struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Domain string `protobuf:"bytes,1,opt,name=Domain,proto3" json:"Domain,omitempty"`
|
|
Records []*SimpleRecord `protobuf:"bytes,2,rep,name=Records,proto3" json:"Records,omitempty"`
|
|
}
|
|
|
|
func (x *CustomZone) Reset() {
|
|
*x = CustomZone{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[29]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CustomZone) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CustomZone) ProtoMessage() {}
|
|
|
|
func (x *CustomZone) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[29]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use CustomZone.ProtoReflect.Descriptor instead.
|
|
func (*CustomZone) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{29}
|
|
}
|
|
|
|
func (x *CustomZone) GetDomain() string {
|
|
if x != nil {
|
|
return x.Domain
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CustomZone) GetRecords() []*SimpleRecord {
|
|
if x != nil {
|
|
return x.Records
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SimpleRecord represents a dns.SimpleRecord
|
|
type SimpleRecord struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
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"`
|
|
}
|
|
|
|
func (x *SimpleRecord) Reset() {
|
|
*x = SimpleRecord{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[30]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SimpleRecord) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SimpleRecord) ProtoMessage() {}
|
|
|
|
func (x *SimpleRecord) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[30]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SimpleRecord.ProtoReflect.Descriptor instead.
|
|
func (*SimpleRecord) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{30}
|
|
}
|
|
|
|
func (x *SimpleRecord) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *SimpleRecord) GetType() int64 {
|
|
if x != nil {
|
|
return x.Type
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *SimpleRecord) GetClass() string {
|
|
if x != nil {
|
|
return x.Class
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *SimpleRecord) GetTTL() int64 {
|
|
if x != nil {
|
|
return x.TTL
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *SimpleRecord) GetRData() string {
|
|
if x != nil {
|
|
return x.RData
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// NameServerGroup represents a dns.NameServerGroup
|
|
type NameServerGroup struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
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"`
|
|
SearchDomainsEnabled bool `protobuf:"varint,4,opt,name=SearchDomainsEnabled,proto3" json:"SearchDomainsEnabled,omitempty"`
|
|
}
|
|
|
|
func (x *NameServerGroup) Reset() {
|
|
*x = NameServerGroup{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[31]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *NameServerGroup) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*NameServerGroup) ProtoMessage() {}
|
|
|
|
func (x *NameServerGroup) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[31]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use NameServerGroup.ProtoReflect.Descriptor instead.
|
|
func (*NameServerGroup) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{31}
|
|
}
|
|
|
|
func (x *NameServerGroup) GetNameServers() []*NameServer {
|
|
if x != nil {
|
|
return x.NameServers
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NameServerGroup) GetPrimary() bool {
|
|
if x != nil {
|
|
return x.Primary
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *NameServerGroup) GetDomains() []string {
|
|
if x != nil {
|
|
return x.Domains
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NameServerGroup) GetSearchDomainsEnabled() bool {
|
|
if x != nil {
|
|
return x.SearchDomainsEnabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
// NameServer represents a dns.NameServer
|
|
type NameServer struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
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"`
|
|
}
|
|
|
|
func (x *NameServer) Reset() {
|
|
*x = NameServer{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[32]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *NameServer) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*NameServer) ProtoMessage() {}
|
|
|
|
func (x *NameServer) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[32]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use NameServer.ProtoReflect.Descriptor instead.
|
|
func (*NameServer) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{32}
|
|
}
|
|
|
|
func (x *NameServer) GetIP() string {
|
|
if x != nil {
|
|
return x.IP
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *NameServer) GetNSType() int64 {
|
|
if x != nil {
|
|
return x.NSType
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *NameServer) GetPort() int64 {
|
|
if x != nil {
|
|
return x.Port
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// FirewallRule represents a firewall rule
|
|
type FirewallRule struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
PeerIP string `protobuf:"bytes,1,opt,name=PeerIP,proto3" json:"PeerIP,omitempty"`
|
|
Direction RuleDirection `protobuf:"varint,2,opt,name=Direction,proto3,enum=management.RuleDirection" json:"Direction,omitempty"`
|
|
Action RuleAction `protobuf:"varint,3,opt,name=Action,proto3,enum=management.RuleAction" json:"Action,omitempty"`
|
|
Protocol RuleProtocol `protobuf:"varint,4,opt,name=Protocol,proto3,enum=management.RuleProtocol" json:"Protocol,omitempty"`
|
|
Port string `protobuf:"bytes,5,opt,name=Port,proto3" json:"Port,omitempty"`
|
|
PortInfo *PortInfo `protobuf:"bytes,6,opt,name=PortInfo,proto3" json:"PortInfo,omitempty"`
|
|
// PolicyID is the ID of the policy that this rule belongs to
|
|
PolicyID []byte `protobuf:"bytes,7,opt,name=PolicyID,proto3" json:"PolicyID,omitempty"`
|
|
}
|
|
|
|
func (x *FirewallRule) Reset() {
|
|
*x = FirewallRule{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[33]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *FirewallRule) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*FirewallRule) ProtoMessage() {}
|
|
|
|
func (x *FirewallRule) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[33]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use FirewallRule.ProtoReflect.Descriptor instead.
|
|
func (*FirewallRule) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{33}
|
|
}
|
|
|
|
func (x *FirewallRule) GetPeerIP() string {
|
|
if x != nil {
|
|
return x.PeerIP
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *FirewallRule) GetDirection() RuleDirection {
|
|
if x != nil {
|
|
return x.Direction
|
|
}
|
|
return RuleDirection_IN
|
|
}
|
|
|
|
func (x *FirewallRule) GetAction() RuleAction {
|
|
if x != nil {
|
|
return x.Action
|
|
}
|
|
return RuleAction_ACCEPT
|
|
}
|
|
|
|
func (x *FirewallRule) GetProtocol() RuleProtocol {
|
|
if x != nil {
|
|
return x.Protocol
|
|
}
|
|
return RuleProtocol_UNKNOWN
|
|
}
|
|
|
|
func (x *FirewallRule) GetPort() string {
|
|
if x != nil {
|
|
return x.Port
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *FirewallRule) GetPortInfo() *PortInfo {
|
|
if x != nil {
|
|
return x.PortInfo
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *FirewallRule) GetPolicyID() []byte {
|
|
if x != nil {
|
|
return x.PolicyID
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type NetworkAddress struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
NetIP string `protobuf:"bytes,1,opt,name=netIP,proto3" json:"netIP,omitempty"`
|
|
Mac string `protobuf:"bytes,2,opt,name=mac,proto3" json:"mac,omitempty"`
|
|
}
|
|
|
|
func (x *NetworkAddress) Reset() {
|
|
*x = NetworkAddress{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[34]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *NetworkAddress) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*NetworkAddress) ProtoMessage() {}
|
|
|
|
func (x *NetworkAddress) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[34]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use NetworkAddress.ProtoReflect.Descriptor instead.
|
|
func (*NetworkAddress) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{34}
|
|
}
|
|
|
|
func (x *NetworkAddress) GetNetIP() string {
|
|
if x != nil {
|
|
return x.NetIP
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *NetworkAddress) GetMac() string {
|
|
if x != nil {
|
|
return x.Mac
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type Checks struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Files []string `protobuf:"bytes,1,rep,name=Files,proto3" json:"Files,omitempty"`
|
|
}
|
|
|
|
func (x *Checks) Reset() {
|
|
*x = Checks{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[35]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Checks) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Checks) ProtoMessage() {}
|
|
|
|
func (x *Checks) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[35]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use Checks.ProtoReflect.Descriptor instead.
|
|
func (*Checks) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{35}
|
|
}
|
|
|
|
func (x *Checks) GetFiles() []string {
|
|
if x != nil {
|
|
return x.Files
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type PortInfo struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Types that are assignable to PortSelection:
|
|
//
|
|
// *PortInfo_Port
|
|
// *PortInfo_Range_
|
|
PortSelection isPortInfo_PortSelection `protobuf_oneof:"portSelection"`
|
|
}
|
|
|
|
func (x *PortInfo) Reset() {
|
|
*x = PortInfo{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[36]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PortInfo) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PortInfo) ProtoMessage() {}
|
|
|
|
func (x *PortInfo) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[36]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PortInfo.ProtoReflect.Descriptor instead.
|
|
func (*PortInfo) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{36}
|
|
}
|
|
|
|
func (m *PortInfo) GetPortSelection() isPortInfo_PortSelection {
|
|
if m != nil {
|
|
return m.PortSelection
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PortInfo) GetPort() uint32 {
|
|
if x, ok := x.GetPortSelection().(*PortInfo_Port); ok {
|
|
return x.Port
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *PortInfo) GetRange() *PortInfo_Range {
|
|
if x, ok := x.GetPortSelection().(*PortInfo_Range_); ok {
|
|
return x.Range
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type isPortInfo_PortSelection interface {
|
|
isPortInfo_PortSelection()
|
|
}
|
|
|
|
type PortInfo_Port struct {
|
|
Port uint32 `protobuf:"varint,1,opt,name=port,proto3,oneof"`
|
|
}
|
|
|
|
type PortInfo_Range_ struct {
|
|
Range *PortInfo_Range `protobuf:"bytes,2,opt,name=range,proto3,oneof"`
|
|
}
|
|
|
|
func (*PortInfo_Port) isPortInfo_PortSelection() {}
|
|
|
|
func (*PortInfo_Range_) isPortInfo_PortSelection() {}
|
|
|
|
// RouteFirewallRule signifies a firewall rule applicable for a routed network.
|
|
type RouteFirewallRule struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// sourceRanges IP ranges of the routing peers.
|
|
SourceRanges []string `protobuf:"bytes,1,rep,name=sourceRanges,proto3" json:"sourceRanges,omitempty"`
|
|
// Action to be taken by the firewall when the rule is applicable.
|
|
Action RuleAction `protobuf:"varint,2,opt,name=action,proto3,enum=management.RuleAction" json:"action,omitempty"`
|
|
// Network prefix for the routed network.
|
|
Destination string `protobuf:"bytes,3,opt,name=destination,proto3" json:"destination,omitempty"`
|
|
// Protocol of the routed network.
|
|
Protocol RuleProtocol `protobuf:"varint,4,opt,name=protocol,proto3,enum=management.RuleProtocol" json:"protocol,omitempty"`
|
|
// Details about the port.
|
|
PortInfo *PortInfo `protobuf:"bytes,5,opt,name=portInfo,proto3" json:"portInfo,omitempty"`
|
|
// IsDynamic indicates if the route is a DNS route.
|
|
IsDynamic bool `protobuf:"varint,6,opt,name=isDynamic,proto3" json:"isDynamic,omitempty"`
|
|
// Domains is a list of domains for which the rule is applicable.
|
|
Domains []string `protobuf:"bytes,7,rep,name=domains,proto3" json:"domains,omitempty"`
|
|
// CustomProtocol is a custom protocol ID.
|
|
CustomProtocol uint32 `protobuf:"varint,8,opt,name=customProtocol,proto3" json:"customProtocol,omitempty"`
|
|
// PolicyID is the ID of the policy that this rule belongs to
|
|
PolicyID []byte `protobuf:"bytes,9,opt,name=PolicyID,proto3" json:"PolicyID,omitempty"`
|
|
// RouteID is the ID of the route that this rule belongs to
|
|
RouteID string `protobuf:"bytes,10,opt,name=RouteID,proto3" json:"RouteID,omitempty"`
|
|
}
|
|
|
|
func (x *RouteFirewallRule) Reset() {
|
|
*x = RouteFirewallRule{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[37]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *RouteFirewallRule) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RouteFirewallRule) ProtoMessage() {}
|
|
|
|
func (x *RouteFirewallRule) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[37]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use RouteFirewallRule.ProtoReflect.Descriptor instead.
|
|
func (*RouteFirewallRule) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{37}
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetSourceRanges() []string {
|
|
if x != nil {
|
|
return x.SourceRanges
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetAction() RuleAction {
|
|
if x != nil {
|
|
return x.Action
|
|
}
|
|
return RuleAction_ACCEPT
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetDestination() string {
|
|
if x != nil {
|
|
return x.Destination
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetProtocol() RuleProtocol {
|
|
if x != nil {
|
|
return x.Protocol
|
|
}
|
|
return RuleProtocol_UNKNOWN
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetPortInfo() *PortInfo {
|
|
if x != nil {
|
|
return x.PortInfo
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetIsDynamic() bool {
|
|
if x != nil {
|
|
return x.IsDynamic
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetDomains() []string {
|
|
if x != nil {
|
|
return x.Domains
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetCustomProtocol() uint32 {
|
|
if x != nil {
|
|
return x.CustomProtocol
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetPolicyID() []byte {
|
|
if x != nil {
|
|
return x.PolicyID
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RouteFirewallRule) GetRouteID() string {
|
|
if x != nil {
|
|
return x.RouteID
|
|
}
|
|
return ""
|
|
}
|
|
|
|
type ForwardingRule struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Protocol of the forwarding rule
|
|
Protocol RuleProtocol `protobuf:"varint,1,opt,name=protocol,proto3,enum=management.RuleProtocol" json:"protocol,omitempty"`
|
|
// portInfo is the ingress destination port information, where the traffic arrives in the gateway node
|
|
DestinationPort *PortInfo `protobuf:"bytes,2,opt,name=destinationPort,proto3" json:"destinationPort,omitempty"`
|
|
// IP address of the translated address (remote peer) to send traffic to
|
|
TranslatedAddress []byte `protobuf:"bytes,3,opt,name=translatedAddress,proto3" json:"translatedAddress,omitempty"`
|
|
// Translated port information, where the traffic should be forwarded to
|
|
TranslatedPort *PortInfo `protobuf:"bytes,4,opt,name=translatedPort,proto3" json:"translatedPort,omitempty"`
|
|
}
|
|
|
|
func (x *ForwardingRule) Reset() {
|
|
*x = ForwardingRule{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[38]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ForwardingRule) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ForwardingRule) ProtoMessage() {}
|
|
|
|
func (x *ForwardingRule) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[38]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ForwardingRule.ProtoReflect.Descriptor instead.
|
|
func (*ForwardingRule) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{38}
|
|
}
|
|
|
|
func (x *ForwardingRule) GetProtocol() RuleProtocol {
|
|
if x != nil {
|
|
return x.Protocol
|
|
}
|
|
return RuleProtocol_UNKNOWN
|
|
}
|
|
|
|
func (x *ForwardingRule) GetDestinationPort() *PortInfo {
|
|
if x != nil {
|
|
return x.DestinationPort
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ForwardingRule) GetTranslatedAddress() []byte {
|
|
if x != nil {
|
|
return x.TranslatedAddress
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ForwardingRule) GetTranslatedPort() *PortInfo {
|
|
if x != nil {
|
|
return x.TranslatedPort
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type PortInfo_Range struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Start uint32 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"`
|
|
End uint32 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
|
|
}
|
|
|
|
func (x *PortInfo_Range) Reset() {
|
|
*x = PortInfo_Range{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[39]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PortInfo_Range) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PortInfo_Range) ProtoMessage() {}
|
|
|
|
func (x *PortInfo_Range) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[39]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use PortInfo_Range.ProtoReflect.Descriptor instead.
|
|
func (*PortInfo_Range) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{36, 0}
|
|
}
|
|
|
|
func (x *PortInfo_Range) GetStart() uint32 {
|
|
if x != nil {
|
|
return x.Start
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *PortInfo_Range) GetEnd() uint32 {
|
|
if x != nil {
|
|
return x.End
|
|
}
|
|
return 0
|
|
}
|
|
|
|
var File_management_proto protoreflect.FileDescriptor
|
|
|
|
var file_management_proto_rawDesc = []byte{
|
|
0x0a, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f,
|
|
0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x1a, 0x1f,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
|
|
0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
|
|
0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
|
|
0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
|
|
0x5c, 0x0a, 0x10, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73,
|
|
0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x67, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x67, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12,
|
|
0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62,
|
|
0x6f, 0x64, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03,
|
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x3d, 0x0a,
|
|
0x0b, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x04,
|
|
0x6d, 0x65, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x6e,
|
|
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74,
|
|
0x65, 0x6d, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x22, 0xdb, 0x02, 0x0a,
|
|
0x0c, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a,
|
|
0x0d, 0x6e, 0x65, 0x74, 0x62, 0x69, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e,
|
|
0x74, 0x2e, 0x4e, 0x65, 0x74, 0x62, 0x69, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
|
|
0x0d, 0x6e, 0x65, 0x74, 0x62, 0x69, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x36,
|
|
0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01,
|
|
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
|
|
0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0a, 0x70, 0x65, 0x65, 0x72,
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3e, 0x0a, 0x0b, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
|
|
0x50, 0x65, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50,
|
|
0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x72, 0x65, 0x6d, 0x6f, 0x74,
|
|
0x65, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
|
|
0x50, 0x65, 0x65, 0x72, 0x73, 0x49, 0x73, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01,
|
|
0x28, 0x08, 0x52, 0x12, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x65, 0x65, 0x72, 0x73, 0x49,
|
|
0x73, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x36, 0x0a, 0x0a, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
|
|
0x6b, 0x4d, 0x61, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e,
|
|
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d,
|
|
0x61, 0x70, 0x52, 0x0a, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x12, 0x2a,
|
|
0x0a, 0x06, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12,
|
|
0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x68, 0x65, 0x63,
|
|
0x6b, 0x73, 0x52, 0x06, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x22, 0x41, 0x0a, 0x0f, 0x53, 0x79,
|
|
0x6e, 0x63, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a,
|
|
0x04, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x53, 0x79, 0x73,
|
|
0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x22, 0xc6, 0x01,
|
|
0x0a, 0x0c, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a,
|
|
0x0a, 0x08, 0x73, 0x65, 0x74, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x08, 0x73, 0x65, 0x74, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x04, 0x6d, 0x65,
|
|
0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
|
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d,
|
|
0x4d, 0x65, 0x74, 0x61, 0x52, 0x04, 0x6d, 0x65, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x6a, 0x77,
|
|
0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6a, 0x77,
|
|
0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x30, 0x0a, 0x08, 0x70, 0x65, 0x65, 0x72, 0x4b, 0x65,
|
|
0x79, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
|
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x08,
|
|
0x70, 0x65, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x6e, 0x73, 0x4c,
|
|
0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73,
|
|
0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x22, 0x44, 0x0a, 0x08, 0x50, 0x65, 0x65, 0x72, 0x4b, 0x65,
|
|
0x79, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x68, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x73, 0x68, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79,
|
|
0x12, 0x1a, 0x0a, 0x08, 0x77, 0x67, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01,
|
|
0x28, 0x0c, 0x52, 0x08, 0x77, 0x67, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x22, 0x3f, 0x0a, 0x0b,
|
|
0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x63,
|
|
0x6c, 0x6f, 0x75, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x63, 0x6c, 0x6f, 0x75,
|
|
0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x5c, 0x0a,
|
|
0x04, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x78, 0x69,
|
|
0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x65, 0x78, 0x69, 0x73, 0x74, 0x12,
|
|
0x2a, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x73, 0x52, 0x75, 0x6e, 0x6e,
|
|
0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x63, 0x65,
|
|
0x73, 0x73, 0x49, 0x73, 0x52, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0xbf, 0x02, 0x0a, 0x05,
|
|
0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x72, 0x6f, 0x73, 0x65, 0x6e, 0x70, 0x61,
|
|
0x73, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
|
|
0x10, 0x72, 0x6f, 0x73, 0x65, 0x6e, 0x70, 0x61, 0x73, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
|
|
0x64, 0x12, 0x30, 0x0a, 0x13, 0x72, 0x6f, 0x73, 0x65, 0x6e, 0x70, 0x61, 0x73, 0x73, 0x50, 0x65,
|
|
0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13,
|
|
0x72, 0x6f, 0x73, 0x65, 0x6e, 0x70, 0x61, 0x73, 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
|
|
0x69, 0x76, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x53, 0x48,
|
|
0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73,
|
|
0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x53, 0x48, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x12,
|
|
0x30, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
|
|
0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x64, 0x69,
|
|
0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x52, 0x6f, 0x75, 0x74, 0x65,
|
|
0x73, 0x12, 0x30, 0x0a, 0x13, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76,
|
|
0x65, 0x72, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13,
|
|
0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x6f, 0x75,
|
|
0x74, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x44, 0x4e,
|
|
0x53, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65,
|
|
0x44, 0x4e, 0x53, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69,
|
|
0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x64, 0x69,
|
|
0x73, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x22, 0xf2, 0x04,
|
|
0x0a, 0x0e, 0x50, 0x65, 0x65, 0x72, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x4d, 0x65, 0x74, 0x61,
|
|
0x12, 0x1a, 0x0a, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04,
|
|
0x67, 0x6f, 0x4f, 0x53, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x67, 0x6f, 0x4f, 0x53,
|
|
0x12, 0x16, 0x0a, 0x06, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x06, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x72, 0x65,
|
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1a, 0x0a, 0x08,
|
|
0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
|
|
0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x4f, 0x53, 0x18, 0x06,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x4f, 0x53, 0x12, 0x26, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x62,
|
|
0x69, 0x72, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x0e, 0x6e, 0x65, 0x74, 0x62, 0x69, 0x72, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
|
|
0x12, 0x1c, 0x0a, 0x09, 0x75, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x24,
|
|
0x0a, 0x0d, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
|
|
0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6b, 0x65, 0x72, 0x6e, 0x65, 0x6c, 0x56, 0x65, 0x72,
|
|
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x4f, 0x53, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
|
|
0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x4f, 0x53, 0x56, 0x65, 0x72, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x64, 0x64,
|
|
0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d,
|
|
0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
|
|
0x6b, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
|
|
0x6b, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x79,
|
|
0x73, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x79, 0x73, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x4e, 0x75,
|
|
0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x79, 0x73, 0x50, 0x72, 0x6f, 0x64, 0x75,
|
|
0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x79,
|
|
0x73, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0f,
|
|
0x73, 0x79, 0x73, 0x4d, 0x61, 0x6e, 0x75, 0x66, 0x61, 0x63, 0x74, 0x75, 0x72, 0x65, 0x72, 0x18,
|
|
0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x79, 0x73, 0x4d, 0x61, 0x6e, 0x75, 0x66, 0x61,
|
|
0x63, 0x74, 0x75, 0x72, 0x65, 0x72, 0x12, 0x39, 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
|
|
0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
|
|
0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
|
|
0x74, 0x12, 0x26, 0x0a, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b,
|
|
0x32, 0x10, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x69,
|
|
0x6c, 0x65, 0x52, 0x05, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x66, 0x6c, 0x61,
|
|
0x67, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
|
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x52, 0x05, 0x66, 0x6c, 0x61,
|
|
0x67, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x0d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70,
|
|
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x0d, 0x6e, 0x65, 0x74, 0x62, 0x69, 0x72, 0x64, 0x43,
|
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x62, 0x69, 0x72, 0x64,
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x62, 0x69, 0x72, 0x64, 0x43,
|
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x36, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e,
|
|
0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
|
|
0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69,
|
|
0x67, 0x52, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2a, 0x0a,
|
|
0x06, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e,
|
|
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b,
|
|
0x73, 0x52, 0x06, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x22, 0x79, 0x0a, 0x11, 0x53, 0x65, 0x72,
|
|
0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x10,
|
|
0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
|
|
0x12, 0x38, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
|
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52,
|
|
0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65,
|
|
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72,
|
|
0x73, 0x69, 0x6f, 0x6e, 0x22, 0x07, 0x0a, 0x05, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xff, 0x01,
|
|
0x0a, 0x0d, 0x4e, 0x65, 0x74, 0x62, 0x69, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
|
|
0x2c, 0x0a, 0x05, 0x73, 0x74, 0x75, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16,
|
|
0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x48, 0x6f, 0x73, 0x74,
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x73, 0x74, 0x75, 0x6e, 0x73, 0x12, 0x35, 0x0a,
|
|
0x05, 0x74, 0x75, 0x72, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6d,
|
|
0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63,
|
|
0x74, 0x65, 0x64, 0x48, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x74,
|
|
0x75, 0x72, 0x6e, 0x73, 0x12, 0x2e, 0x0a, 0x06, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x18, 0x03,
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e,
|
|
0x74, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x73, 0x69,
|
|
0x67, 0x6e, 0x61, 0x6c, 0x12, 0x2d, 0x0a, 0x05, 0x72, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x04, 0x20,
|
|
0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74,
|
|
0x2e, 0x52, 0x65, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x72, 0x65,
|
|
0x6c, 0x61, 0x79, 0x12, 0x2a, 0x0a, 0x04, 0x66, 0x6c, 0x6f, 0x77, 0x18, 0x05, 0x20, 0x01, 0x28,
|
|
0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x46,
|
|
0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x04, 0x66, 0x6c, 0x6f, 0x77, 0x22,
|
|
0x98, 0x01, 0x0a, 0x0a, 0x48, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10,
|
|
0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69,
|
|
0x12, 0x3b, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x02, 0x20, 0x01,
|
|
0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
|
|
0x48, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f,
|
|
0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x22, 0x3b, 0x0a,
|
|
0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x07, 0x0a, 0x03, 0x55, 0x44, 0x50,
|
|
0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x43, 0x50, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x48,
|
|
0x54, 0x54, 0x50, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x48, 0x54, 0x54, 0x50, 0x53, 0x10, 0x03,
|
|
0x12, 0x08, 0x0a, 0x04, 0x44, 0x54, 0x4c, 0x53, 0x10, 0x04, 0x22, 0x6d, 0x0a, 0x0b, 0x52, 0x65,
|
|
0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x72, 0x6c,
|
|
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x75, 0x72, 0x6c, 0x73, 0x12, 0x22, 0x0a,
|
|
0x0c, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61,
|
|
0x64, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74,
|
|
0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
|
|
0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0xad, 0x02, 0x0a, 0x0a, 0x46, 0x6c,
|
|
0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x6f,
|
|
0x6b, 0x65, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x0c, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x26,
|
|
0x0a, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x53, 0x69, 0x67,
|
|
0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76,
|
|
0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x18, 0x0a,
|
|
0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
|
|
0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x75, 0x6e, 0x74,
|
|
0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x6f, 0x75, 0x6e, 0x74,
|
|
0x65, 0x72, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x65, 0x78, 0x69, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x43,
|
|
0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52,
|
|
0x12, 0x65, 0x78, 0x69, 0x74, 0x4e, 0x6f, 0x64, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x6e, 0x73, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x64, 0x6e, 0x73, 0x43,
|
|
0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x7d, 0x0a, 0x13, 0x50, 0x72, 0x6f,
|
|
0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x48, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
|
0x12, 0x36, 0x0a, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e,
|
|
0x74, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0a, 0x68, 0x6f,
|
|
0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72,
|
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08,
|
|
0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
|
|
0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x81, 0x02, 0x0a, 0x0a, 0x50, 0x65, 0x65,
|
|
0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65,
|
|
0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73,
|
|
0x73, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
|
|
0x64, 0x6e, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x73, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
|
|
0x65, 0x6e, 0x74, 0x2e, 0x53, 0x53, 0x48, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x73,
|
|
0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x71, 0x64, 0x6e,
|
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x71, 0x64, 0x6e, 0x12, 0x48, 0x0a, 0x1f,
|
|
0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65, 0x65, 0x72, 0x44, 0x6e, 0x73, 0x52, 0x65,
|
|
0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18,
|
|
0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1f, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x65,
|
|
0x65, 0x72, 0x44, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x45,
|
|
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x15, 0x4c, 0x61, 0x7a, 0x79, 0x43, 0x6f,
|
|
0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18,
|
|
0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x4c, 0x61, 0x7a, 0x79, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
|
|
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0xb9, 0x05, 0x0a,
|
|
0x0a, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x53,
|
|
0x65, 0x72, 0x69, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x53, 0x65, 0x72,
|
|
0x69, 0x61, 0x6c, 0x12, 0x36, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69,
|
|
0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65,
|
|
0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
|
|
0x0a, 0x70, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3e, 0x0a, 0x0b, 0x72,
|
|
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x65, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
|
|
0x32, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65,
|
|
0x6d, 0x6f, 0x74, 0x65, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b,
|
|
0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x72,
|
|
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x65, 0x65, 0x72, 0x73, 0x49, 0x73, 0x45, 0x6d, 0x70, 0x74,
|
|
0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50,
|
|
0x65, 0x65, 0x72, 0x73, 0x49, 0x73, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x06, 0x52,
|
|
0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x06,
|
|
0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x44, 0x4e, 0x53, 0x43, 0x6f, 0x6e,
|
|
0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
|
|
0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x44, 0x4e, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
|
0x52, 0x09, 0x44, 0x4e, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x0c, 0x6f,
|
|
0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x65, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28,
|
|
0x0b, 0x32, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52,
|
|
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
|
|
0x0c, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x3e, 0x0a,
|
|
0x0d, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x08,
|
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e,
|
|
0x74, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x0d,
|
|
0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x32, 0x0a,
|
|
0x14, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x49, 0x73,
|
|
0x45, 0x6d, 0x70, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x66, 0x69, 0x72,
|
|
0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x49, 0x73, 0x45, 0x6d, 0x70, 0x74,
|
|
0x79, 0x12, 0x4f, 0x0a, 0x13, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x46, 0x69, 0x72, 0x65, 0x77,
|
|
0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d,
|
|
0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x75, 0x74,
|
|
0x65, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x13, 0x72,
|
|
0x6f, 0x75, 0x74, 0x65, 0x73, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c,
|
|
0x65, 0x73, 0x12, 0x3e, 0x0a, 0x1a, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x46, 0x69, 0x72, 0x65,
|
|
0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x49, 0x73, 0x45, 0x6d, 0x70, 0x74, 0x79,
|
|
0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x46, 0x69,
|
|
0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x49, 0x73, 0x45, 0x6d, 0x70,
|
|
0x74, 0x79, 0x12, 0x44, 0x0a, 0x0f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67,
|
|
0x52, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
|
|
0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x0f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
|
|
0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x22, 0xbb, 0x01, 0x0a, 0x10, 0x52, 0x65, 0x6d,
|
|
0x6f, 0x74, 0x65, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a,
|
|
0x08, 0x77, 0x67, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x08, 0x77, 0x67, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x6c, 0x6c,
|
|
0x6f, 0x77, 0x65, 0x64, 0x49, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x61,
|
|
0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x49, 0x70, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x73, 0x73, 0x68,
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6d,
|
|
0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x53, 0x48, 0x43, 0x6f, 0x6e,
|
|
0x66, 0x69, 0x67, 0x52, 0x09, 0x73, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12,
|
|
0x0a, 0x04, 0x66, 0x71, 0x64, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x71,
|
|
0x64, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x56,
|
|
0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x0a, 0x09, 0x53, 0x53, 0x48, 0x43, 0x6f, 0x6e,
|
|
0x66, 0x69, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x73, 0x68, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
|
|
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x73, 0x73, 0x68, 0x45, 0x6e, 0x61, 0x62,
|
|
0x6c, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x73, 0x68, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79,
|
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x73, 0x68, 0x50, 0x75, 0x62, 0x4b, 0x65,
|
|
0x79, 0x22, 0x20, 0x0a, 0x1e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f,
|
|
0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x75,
|
|
0x65, 0x73, 0x74, 0x22, 0xbf, 0x01, 0x0a, 0x17, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75,
|
|
0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x12,
|
|
0x48, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
|
|
0x0e, 0x32, 0x2c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x44,
|
|
0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x2e, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52,
|
|
0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x0e, 0x50, 0x72, 0x6f,
|
|
0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28,
|
|
0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50,
|
|
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x50,
|
|
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x16, 0x0a,
|
|
0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x0a, 0x0a, 0x06, 0x48, 0x4f, 0x53,
|
|
0x54, 0x45, 0x44, 0x10, 0x00, 0x22, 0x1e, 0x0a, 0x1c, 0x50, 0x4b, 0x43, 0x45, 0x41, 0x75, 0x74,
|
|
0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x52, 0x65,
|
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x5b, 0x0a, 0x15, 0x50, 0x4b, 0x43, 0x45, 0x41, 0x75, 0x74,
|
|
0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x12, 0x42,
|
|
0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
|
|
0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66,
|
|
0x69, 0x67, 0x52, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66,
|
|
0x69, 0x67, 0x22, 0xb8, 0x03, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43,
|
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49,
|
|
0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49,
|
|
0x44, 0x12, 0x22, 0x0a, 0x0c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65,
|
|
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53,
|
|
0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18,
|
|
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1a, 0x0a,
|
|
0x08, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x08, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x44, 0x65, 0x76,
|
|
0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18,
|
|
0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74,
|
|
0x68, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x54, 0x6f, 0x6b,
|
|
0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x0d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12,
|
|
0x14, 0x0a, 0x05, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
|
|
0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x55, 0x73, 0x65, 0x49, 0x44, 0x54, 0x6f,
|
|
0x6b, 0x65, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x55, 0x73, 0x65, 0x49, 0x44,
|
|
0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x34, 0x0a, 0x15, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69,
|
|
0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x09,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x52,
|
|
0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x55, 0x52, 0x4c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28,
|
|
0x09, 0x52, 0x0c, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x55, 0x52, 0x4c, 0x73, 0x12,
|
|
0x2e, 0x0a, 0x12, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74,
|
|
0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x44, 0x69, 0x73,
|
|
0x61, 0x62, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12,
|
|
0x1c, 0x0a, 0x09, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x18, 0x0c, 0x20, 0x01,
|
|
0x28, 0x0d, 0x52, 0x09, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x22, 0xed, 0x01,
|
|
0x0a, 0x05, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x4e, 0x65, 0x74, 0x77, 0x6f,
|
|
0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
|
|
0x6b, 0x12, 0x20, 0x0a, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65,
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54,
|
|
0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x65, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x04, 0x50, 0x65, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x4d, 0x65, 0x74, 0x72, 0x69,
|
|
0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12,
|
|
0x1e, 0x0a, 0x0a, 0x4d, 0x61, 0x73, 0x71, 0x75, 0x65, 0x72, 0x61, 0x64, 0x65, 0x18, 0x06, 0x20,
|
|
0x01, 0x28, 0x08, 0x52, 0x0a, 0x4d, 0x61, 0x73, 0x71, 0x75, 0x65, 0x72, 0x61, 0x64, 0x65, 0x12,
|
|
0x14, 0x0a, 0x05, 0x4e, 0x65, 0x74, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
|
|
0x4e, 0x65, 0x74, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73,
|
|
0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12,
|
|
0x1c, 0x0a, 0x09, 0x6b, 0x65, 0x65, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01,
|
|
0x28, 0x08, 0x52, 0x09, 0x6b, 0x65, 0x65, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x22, 0xb4, 0x01,
|
|
0x0a, 0x09, 0x44, 0x4e, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x0a, 0x0d, 0x53,
|
|
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x08, 0x52, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c,
|
|
0x65, 0x12, 0x47, 0x0a, 0x10, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47,
|
|
0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72,
|
|
0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x10, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65,
|
|
0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x38, 0x0a, 0x0b, 0x43, 0x75,
|
|
0x73, 0x74, 0x6f, 0x6d, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
|
|
0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x43, 0x75, 0x73,
|
|
0x74, 0x6f, 0x6d, 0x5a, 0x6f, 0x6e, 0x65, 0x52, 0x0b, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5a,
|
|
0x6f, 0x6e, 0x65, 0x73, 0x22, 0x58, 0x0a, 0x0a, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5a, 0x6f,
|
|
0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x06, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x32, 0x0a, 0x07, 0x52, 0x65,
|
|
0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x52,
|
|
0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x22, 0x74,
|
|
0x0a, 0x0c, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x12,
|
|
0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61,
|
|
0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03,
|
|
0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x18,
|
|
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03,
|
|
0x54, 0x54, 0x4c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x54, 0x54, 0x4c, 0x12, 0x14,
|
|
0x0a, 0x05, 0x52, 0x44, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x52,
|
|
0x44, 0x61, 0x74, 0x61, 0x22, 0xb3, 0x01, 0x0a, 0x0f, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72,
|
|
0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x38, 0x0a, 0x0b, 0x4e, 0x61, 0x6d, 0x65,
|
|
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e,
|
|
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x53,
|
|
0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x0b, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65,
|
|
0x72, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x08, 0x52, 0x07, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07,
|
|
0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x44,
|
|
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68,
|
|
0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x04,
|
|
0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x44, 0x6f, 0x6d, 0x61,
|
|
0x69, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x48, 0x0a, 0x0a, 0x4e, 0x61,
|
|
0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x50, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x50, 0x12, 0x16, 0x0a, 0x06, 0x4e, 0x53, 0x54, 0x79,
|
|
0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x4e, 0x53, 0x54, 0x79, 0x70, 0x65,
|
|
0x12, 0x12, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04,
|
|
0x50, 0x6f, 0x72, 0x74, 0x22, 0xa7, 0x02, 0x0a, 0x0c, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c,
|
|
0x6c, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x65, 0x65, 0x72, 0x49, 0x50, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x50, 0x65, 0x65, 0x72, 0x49, 0x50, 0x12, 0x37, 0x0a,
|
|
0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
|
|
0x32, 0x19, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x75,
|
|
0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x44, 0x69, 0x72,
|
|
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
|
|
0x65, 0x6e, 0x74, 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06,
|
|
0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
|
|
0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
|
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
|
|
0x6f, 0x6c, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x12, 0x0a, 0x04,
|
|
0x50, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x50, 0x6f, 0x72, 0x74,
|
|
0x12, 0x30, 0x0a, 0x08, 0x50, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x06, 0x20, 0x01,
|
|
0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
|
|
0x50, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x50, 0x6f, 0x72, 0x74, 0x49, 0x6e,
|
|
0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x44, 0x18, 0x07,
|
|
0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x44, 0x22, 0x38,
|
|
0x0a, 0x0e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73,
|
|
0x12, 0x14, 0x0a, 0x05, 0x6e, 0x65, 0x74, 0x49, 0x50, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x05, 0x6e, 0x65, 0x74, 0x49, 0x50, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x63, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x61, 0x63, 0x22, 0x1e, 0x0a, 0x06, 0x43, 0x68, 0x65, 0x63,
|
|
0x6b, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
|
|
0x09, 0x52, 0x05, 0x46, 0x69, 0x6c, 0x65, 0x73, 0x22, 0x96, 0x01, 0x0a, 0x08, 0x50, 0x6f, 0x72,
|
|
0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20,
|
|
0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x72,
|
|
0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x6e,
|
|
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f,
|
|
0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x00, 0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x1a,
|
|
0x2f, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72,
|
|
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10,
|
|
0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x65, 0x6e, 0x64,
|
|
0x42, 0x0f, 0x0a, 0x0d, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x22, 0x87, 0x03, 0x0a, 0x11, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x46, 0x69, 0x72, 0x65, 0x77,
|
|
0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63,
|
|
0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x73,
|
|
0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x06, 0x61,
|
|
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x6d, 0x61,
|
|
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x41, 0x63, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64,
|
|
0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a,
|
|
0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32,
|
|
0x18, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x75, 0x6c,
|
|
0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
0x63, 0x6f, 0x6c, 0x12, 0x30, 0x0a, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18,
|
|
0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65,
|
|
0x6e, 0x74, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x70, 0x6f, 0x72,
|
|
0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x44, 0x79, 0x6e, 0x61, 0x6d,
|
|
0x69, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x69, 0x73, 0x44, 0x79, 0x6e, 0x61,
|
|
0x6d, 0x69, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x07,
|
|
0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x26, 0x0a,
|
|
0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18,
|
|
0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x72, 0x6f,
|
|
0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49,
|
|
0x44, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49,
|
|
0x44, 0x12, 0x18, 0x0a, 0x07, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x49, 0x44, 0x18, 0x0a, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x07, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x49, 0x44, 0x22, 0xf2, 0x01, 0x0a, 0x0e,
|
|
0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x34,
|
|
0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
|
|
0x32, 0x18, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x75,
|
|
0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74,
|
|
0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x3e, 0x0a, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e,
|
|
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x49,
|
|
0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x50, 0x6f, 0x72, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74,
|
|
0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52,
|
|
0x11, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65,
|
|
0x73, 0x73, 0x12, 0x3c, 0x0a, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x65, 0x64,
|
|
0x50, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x61, 0x6e,
|
|
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x49, 0x6e, 0x66, 0x6f,
|
|
0x52, 0x0e, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x72, 0x74,
|
|
0x2a, 0x4c, 0x0a, 0x0c, 0x52, 0x75, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
|
|
0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a,
|
|
0x03, 0x41, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x43, 0x50, 0x10, 0x02, 0x12,
|
|
0x07, 0x0a, 0x03, 0x55, 0x44, 0x50, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x43, 0x4d, 0x50,
|
|
0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x10, 0x05, 0x2a, 0x20,
|
|
0x0a, 0x0d, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
|
|
0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x55, 0x54, 0x10, 0x01,
|
|
0x2a, 0x22, 0x0a, 0x0a, 0x52, 0x75, 0x6c, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0a,
|
|
0x0a, 0x06, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x52,
|
|
0x4f, 0x50, 0x10, 0x01, 0x32, 0x90, 0x04, 0x0a, 0x11, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
|
|
0x65, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x45, 0x0a, 0x05, 0x4c, 0x6f,
|
|
0x67, 0x69, 0x6e, 0x12, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74,
|
|
0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
|
|
0x65, 0x1a, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45,
|
|
0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22,
|
|
0x00, 0x12, 0x46, 0x0a, 0x04, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
|
|
0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64,
|
|
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65,
|
|
0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4d, 0x65,
|
|
0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, 0x42, 0x0a, 0x0c, 0x47, 0x65, 0x74,
|
|
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x12, 0x11, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
|
|
0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1d, 0x2e, 0x6d,
|
|
0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
|
|
0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x33, 0x0a,
|
|
0x09, 0x69, 0x73, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x79, 0x12, 0x11, 0x2e, 0x6d, 0x61, 0x6e,
|
|
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x11, 0x2e,
|
|
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
|
|
0x22, 0x00, 0x12, 0x5a, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41,
|
|
0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77,
|
|
0x12, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e,
|
|
0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x1c,
|
|
0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e, 0x63, 0x72,
|
|
0x79, 0x70, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x00, 0x12, 0x58,
|
|
0x0a, 0x18, 0x47, 0x65, 0x74, 0x50, 0x4b, 0x43, 0x45, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69,
|
|
0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x12, 0x1c, 0x2e, 0x6d, 0x61, 0x6e,
|
|
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65,
|
|
0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
|
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4d,
|
|
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x08, 0x53, 0x79, 0x6e, 0x63,
|
|
0x4d, 0x65, 0x74, 0x61, 0x12, 0x1c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e,
|
|
0x74, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61,
|
|
0x67, 0x65, 0x1a, 0x11, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
|
|
0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x42, 0x08, 0x5a, 0x06, 0x2f, 0x70, 0x72, 0x6f, 0x74,
|
|
0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
|
}
|
|
|
|
var (
|
|
file_management_proto_rawDescOnce sync.Once
|
|
file_management_proto_rawDescData = file_management_proto_rawDesc
|
|
)
|
|
|
|
func file_management_proto_rawDescGZIP() []byte {
|
|
file_management_proto_rawDescOnce.Do(func() {
|
|
file_management_proto_rawDescData = protoimpl.X.CompressGZIP(file_management_proto_rawDescData)
|
|
})
|
|
return file_management_proto_rawDescData
|
|
}
|
|
|
|
var file_management_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
|
|
var file_management_proto_msgTypes = make([]protoimpl.MessageInfo, 40)
|
|
var file_management_proto_goTypes = []interface{}{
|
|
(RuleProtocol)(0), // 0: management.RuleProtocol
|
|
(RuleDirection)(0), // 1: management.RuleDirection
|
|
(RuleAction)(0), // 2: management.RuleAction
|
|
(HostConfig_Protocol)(0), // 3: management.HostConfig.Protocol
|
|
(DeviceAuthorizationFlowProvider)(0), // 4: management.DeviceAuthorizationFlow.provider
|
|
(*EncryptedMessage)(nil), // 5: management.EncryptedMessage
|
|
(*SyncRequest)(nil), // 6: management.SyncRequest
|
|
(*SyncResponse)(nil), // 7: management.SyncResponse
|
|
(*SyncMetaRequest)(nil), // 8: management.SyncMetaRequest
|
|
(*LoginRequest)(nil), // 9: management.LoginRequest
|
|
(*PeerKeys)(nil), // 10: management.PeerKeys
|
|
(*Environment)(nil), // 11: management.Environment
|
|
(*File)(nil), // 12: management.File
|
|
(*Flags)(nil), // 13: management.Flags
|
|
(*PeerSystemMeta)(nil), // 14: management.PeerSystemMeta
|
|
(*LoginResponse)(nil), // 15: management.LoginResponse
|
|
(*ServerKeyResponse)(nil), // 16: management.ServerKeyResponse
|
|
(*Empty)(nil), // 17: management.Empty
|
|
(*NetbirdConfig)(nil), // 18: management.NetbirdConfig
|
|
(*HostConfig)(nil), // 19: management.HostConfig
|
|
(*RelayConfig)(nil), // 20: management.RelayConfig
|
|
(*FlowConfig)(nil), // 21: management.FlowConfig
|
|
(*ProtectedHostConfig)(nil), // 22: management.ProtectedHostConfig
|
|
(*PeerConfig)(nil), // 23: management.PeerConfig
|
|
(*NetworkMap)(nil), // 24: management.NetworkMap
|
|
(*RemotePeerConfig)(nil), // 25: management.RemotePeerConfig
|
|
(*SSHConfig)(nil), // 26: management.SSHConfig
|
|
(*DeviceAuthorizationFlowRequest)(nil), // 27: management.DeviceAuthorizationFlowRequest
|
|
(*DeviceAuthorizationFlow)(nil), // 28: management.DeviceAuthorizationFlow
|
|
(*PKCEAuthorizationFlowRequest)(nil), // 29: management.PKCEAuthorizationFlowRequest
|
|
(*PKCEAuthorizationFlow)(nil), // 30: management.PKCEAuthorizationFlow
|
|
(*ProviderConfig)(nil), // 31: management.ProviderConfig
|
|
(*Route)(nil), // 32: management.Route
|
|
(*DNSConfig)(nil), // 33: management.DNSConfig
|
|
(*CustomZone)(nil), // 34: management.CustomZone
|
|
(*SimpleRecord)(nil), // 35: management.SimpleRecord
|
|
(*NameServerGroup)(nil), // 36: management.NameServerGroup
|
|
(*NameServer)(nil), // 37: management.NameServer
|
|
(*FirewallRule)(nil), // 38: management.FirewallRule
|
|
(*NetworkAddress)(nil), // 39: management.NetworkAddress
|
|
(*Checks)(nil), // 40: management.Checks
|
|
(*PortInfo)(nil), // 41: management.PortInfo
|
|
(*RouteFirewallRule)(nil), // 42: management.RouteFirewallRule
|
|
(*ForwardingRule)(nil), // 43: management.ForwardingRule
|
|
(*PortInfo_Range)(nil), // 44: management.PortInfo.Range
|
|
(*timestamppb.Timestamp)(nil), // 45: google.protobuf.Timestamp
|
|
(*durationpb.Duration)(nil), // 46: google.protobuf.Duration
|
|
}
|
|
var file_management_proto_depIdxs = []int32{
|
|
14, // 0: management.SyncRequest.meta:type_name -> management.PeerSystemMeta
|
|
18, // 1: management.SyncResponse.netbirdConfig:type_name -> management.NetbirdConfig
|
|
23, // 2: management.SyncResponse.peerConfig:type_name -> management.PeerConfig
|
|
25, // 3: management.SyncResponse.remotePeers:type_name -> management.RemotePeerConfig
|
|
24, // 4: management.SyncResponse.NetworkMap:type_name -> management.NetworkMap
|
|
40, // 5: management.SyncResponse.Checks:type_name -> management.Checks
|
|
14, // 6: management.SyncMetaRequest.meta:type_name -> management.PeerSystemMeta
|
|
14, // 7: management.LoginRequest.meta:type_name -> management.PeerSystemMeta
|
|
10, // 8: management.LoginRequest.peerKeys:type_name -> management.PeerKeys
|
|
39, // 9: management.PeerSystemMeta.networkAddresses:type_name -> management.NetworkAddress
|
|
11, // 10: management.PeerSystemMeta.environment:type_name -> management.Environment
|
|
12, // 11: management.PeerSystemMeta.files:type_name -> management.File
|
|
13, // 12: management.PeerSystemMeta.flags:type_name -> management.Flags
|
|
18, // 13: management.LoginResponse.netbirdConfig:type_name -> management.NetbirdConfig
|
|
23, // 14: management.LoginResponse.peerConfig:type_name -> management.PeerConfig
|
|
40, // 15: management.LoginResponse.Checks:type_name -> management.Checks
|
|
45, // 16: management.ServerKeyResponse.expiresAt:type_name -> google.protobuf.Timestamp
|
|
19, // 17: management.NetbirdConfig.stuns:type_name -> management.HostConfig
|
|
22, // 18: management.NetbirdConfig.turns:type_name -> management.ProtectedHostConfig
|
|
19, // 19: management.NetbirdConfig.signal:type_name -> management.HostConfig
|
|
20, // 20: management.NetbirdConfig.relay:type_name -> management.RelayConfig
|
|
21, // 21: management.NetbirdConfig.flow:type_name -> management.FlowConfig
|
|
3, // 22: management.HostConfig.protocol:type_name -> management.HostConfig.Protocol
|
|
46, // 23: management.FlowConfig.interval:type_name -> google.protobuf.Duration
|
|
19, // 24: management.ProtectedHostConfig.hostConfig:type_name -> management.HostConfig
|
|
26, // 25: management.PeerConfig.sshConfig:type_name -> management.SSHConfig
|
|
23, // 26: management.NetworkMap.peerConfig:type_name -> management.PeerConfig
|
|
25, // 27: management.NetworkMap.remotePeers:type_name -> management.RemotePeerConfig
|
|
32, // 28: management.NetworkMap.Routes:type_name -> management.Route
|
|
33, // 29: management.NetworkMap.DNSConfig:type_name -> management.DNSConfig
|
|
25, // 30: management.NetworkMap.offlinePeers:type_name -> management.RemotePeerConfig
|
|
38, // 31: management.NetworkMap.FirewallRules:type_name -> management.FirewallRule
|
|
42, // 32: management.NetworkMap.routesFirewallRules:type_name -> management.RouteFirewallRule
|
|
43, // 33: management.NetworkMap.forwardingRules:type_name -> management.ForwardingRule
|
|
26, // 34: management.RemotePeerConfig.sshConfig:type_name -> management.SSHConfig
|
|
4, // 35: management.DeviceAuthorizationFlow.Provider:type_name -> management.DeviceAuthorizationFlow.provider
|
|
31, // 36: management.DeviceAuthorizationFlow.ProviderConfig:type_name -> management.ProviderConfig
|
|
31, // 37: management.PKCEAuthorizationFlow.ProviderConfig:type_name -> management.ProviderConfig
|
|
36, // 38: management.DNSConfig.NameServerGroups:type_name -> management.NameServerGroup
|
|
34, // 39: management.DNSConfig.CustomZones:type_name -> management.CustomZone
|
|
35, // 40: management.CustomZone.Records:type_name -> management.SimpleRecord
|
|
37, // 41: management.NameServerGroup.NameServers:type_name -> management.NameServer
|
|
1, // 42: management.FirewallRule.Direction:type_name -> management.RuleDirection
|
|
2, // 43: management.FirewallRule.Action:type_name -> management.RuleAction
|
|
0, // 44: management.FirewallRule.Protocol:type_name -> management.RuleProtocol
|
|
41, // 45: management.FirewallRule.PortInfo:type_name -> management.PortInfo
|
|
44, // 46: management.PortInfo.range:type_name -> management.PortInfo.Range
|
|
2, // 47: management.RouteFirewallRule.action:type_name -> management.RuleAction
|
|
0, // 48: management.RouteFirewallRule.protocol:type_name -> management.RuleProtocol
|
|
41, // 49: management.RouteFirewallRule.portInfo:type_name -> management.PortInfo
|
|
0, // 50: management.ForwardingRule.protocol:type_name -> management.RuleProtocol
|
|
41, // 51: management.ForwardingRule.destinationPort:type_name -> management.PortInfo
|
|
41, // 52: management.ForwardingRule.translatedPort:type_name -> management.PortInfo
|
|
5, // 53: management.ManagementService.Login:input_type -> management.EncryptedMessage
|
|
5, // 54: management.ManagementService.Sync:input_type -> management.EncryptedMessage
|
|
17, // 55: management.ManagementService.GetServerKey:input_type -> management.Empty
|
|
17, // 56: management.ManagementService.isHealthy:input_type -> management.Empty
|
|
5, // 57: management.ManagementService.GetDeviceAuthorizationFlow:input_type -> management.EncryptedMessage
|
|
5, // 58: management.ManagementService.GetPKCEAuthorizationFlow:input_type -> management.EncryptedMessage
|
|
5, // 59: management.ManagementService.SyncMeta:input_type -> management.EncryptedMessage
|
|
5, // 60: management.ManagementService.Login:output_type -> management.EncryptedMessage
|
|
5, // 61: management.ManagementService.Sync:output_type -> management.EncryptedMessage
|
|
16, // 62: management.ManagementService.GetServerKey:output_type -> management.ServerKeyResponse
|
|
17, // 63: management.ManagementService.isHealthy:output_type -> management.Empty
|
|
5, // 64: management.ManagementService.GetDeviceAuthorizationFlow:output_type -> management.EncryptedMessage
|
|
5, // 65: management.ManagementService.GetPKCEAuthorizationFlow:output_type -> management.EncryptedMessage
|
|
17, // 66: management.ManagementService.SyncMeta:output_type -> management.Empty
|
|
60, // [60:67] is the sub-list for method output_type
|
|
53, // [53:60] is the sub-list for method input_type
|
|
53, // [53:53] is the sub-list for extension type_name
|
|
53, // [53:53] is the sub-list for extension extendee
|
|
0, // [0:53] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_management_proto_init() }
|
|
func file_management_proto_init() {
|
|
if File_management_proto != nil {
|
|
return
|
|
}
|
|
if !protoimpl.UnsafeEnabled {
|
|
file_management_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*EncryptedMessage); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SyncRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SyncResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SyncMetaRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*LoginRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PeerKeys); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Environment); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*File); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Flags); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PeerSystemMeta); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*LoginResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ServerKeyResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Empty); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*NetbirdConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*HostConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*RelayConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*FlowConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ProtectedHostConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PeerConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*NetworkMap); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*RemotePeerConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SSHConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*DeviceAuthorizationFlowRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*DeviceAuthorizationFlow); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PKCEAuthorizationFlowRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PKCEAuthorizationFlow); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ProviderConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Route); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*DNSConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CustomZone); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SimpleRecord); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*NameServerGroup); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*NameServer); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*FirewallRule); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*NetworkAddress); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Checks); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PortInfo); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*RouteFirewallRule); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ForwardingRule); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PortInfo_Range); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[36].OneofWrappers = []interface{}{
|
|
(*PortInfo_Port)(nil),
|
|
(*PortInfo_Range_)(nil),
|
|
}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: file_management_proto_rawDesc,
|
|
NumEnums: 5,
|
|
NumMessages: 40,
|
|
NumExtensions: 0,
|
|
NumServices: 1,
|
|
},
|
|
GoTypes: file_management_proto_goTypes,
|
|
DependencyIndexes: file_management_proto_depIdxs,
|
|
EnumInfos: file_management_proto_enumTypes,
|
|
MessageInfos: file_management_proto_msgTypes,
|
|
}.Build()
|
|
File_management_proto = out.File
|
|
file_management_proto_rawDesc = nil
|
|
file_management_proto_goTypes = nil
|
|
file_management_proto_depIdxs = nil
|
|
}
|