mirror of
https://github.com/netbirdio/netbird.git
synced 2026-07-18 04:29:54 +00:00
9076 lines
334 KiB
Go
9076 lines
334 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||
// versions:
|
||
// protoc-gen-go v1.26.0
|
||
// protoc v7.34.1
|
||
// 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 JobStatus int32
|
||
|
||
const (
|
||
JobStatus_unknown_status JobStatus = 0 //placeholder
|
||
JobStatus_succeeded JobStatus = 1
|
||
JobStatus_failed JobStatus = 2
|
||
)
|
||
|
||
// Enum value maps for JobStatus.
|
||
var (
|
||
JobStatus_name = map[int32]string{
|
||
0: "unknown_status",
|
||
1: "succeeded",
|
||
2: "failed",
|
||
}
|
||
JobStatus_value = map[string]int32{
|
||
"unknown_status": 0,
|
||
"succeeded": 1,
|
||
"failed": 2,
|
||
}
|
||
)
|
||
|
||
func (x JobStatus) Enum() *JobStatus {
|
||
p := new(JobStatus)
|
||
*p = x
|
||
return p
|
||
}
|
||
|
||
func (x JobStatus) String() string {
|
||
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
||
}
|
||
|
||
func (JobStatus) Descriptor() protoreflect.EnumDescriptor {
|
||
return file_management_proto_enumTypes[0].Descriptor()
|
||
}
|
||
|
||
func (JobStatus) Type() protoreflect.EnumType {
|
||
return &file_management_proto_enumTypes[0]
|
||
}
|
||
|
||
func (x JobStatus) Number() protoreflect.EnumNumber {
|
||
return protoreflect.EnumNumber(x)
|
||
}
|
||
|
||
// Deprecated: Use JobStatus.Descriptor instead.
|
||
func (JobStatus) EnumDescriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{0}
|
||
}
|
||
|
||
// PeerCapability represents a feature the client binary supports.
|
||
// Reported in PeerSystemMeta.capabilities on every login/sync.
|
||
type PeerCapability int32
|
||
|
||
const (
|
||
PeerCapability_PeerCapabilityUnknown PeerCapability = 0
|
||
// Client reads SourcePrefixes instead of the deprecated PeerIP string.
|
||
PeerCapability_PeerCapabilitySourcePrefixes PeerCapability = 1
|
||
// Client handles IPv6 overlay addresses and firewall rules.
|
||
PeerCapability_PeerCapabilityIPv6Overlay PeerCapability = 2
|
||
// Client receives NetworkMap as components and assembles it locally.
|
||
PeerCapability_PeerCapabilityComponentNetworkMap PeerCapability = 3
|
||
)
|
||
|
||
// Enum value maps for PeerCapability.
|
||
var (
|
||
PeerCapability_name = map[int32]string{
|
||
0: "PeerCapabilityUnknown",
|
||
1: "PeerCapabilitySourcePrefixes",
|
||
2: "PeerCapabilityIPv6Overlay",
|
||
3: "PeerCapabilityComponentNetworkMap",
|
||
}
|
||
PeerCapability_value = map[string]int32{
|
||
"PeerCapabilityUnknown": 0,
|
||
"PeerCapabilitySourcePrefixes": 1,
|
||
"PeerCapabilityIPv6Overlay": 2,
|
||
"PeerCapabilityComponentNetworkMap": 3,
|
||
}
|
||
)
|
||
|
||
func (x PeerCapability) Enum() *PeerCapability {
|
||
p := new(PeerCapability)
|
||
*p = x
|
||
return p
|
||
}
|
||
|
||
func (x PeerCapability) String() string {
|
||
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
||
}
|
||
|
||
func (PeerCapability) Descriptor() protoreflect.EnumDescriptor {
|
||
return file_management_proto_enumTypes[1].Descriptor()
|
||
}
|
||
|
||
func (PeerCapability) Type() protoreflect.EnumType {
|
||
return &file_management_proto_enumTypes[1]
|
||
}
|
||
|
||
func (x PeerCapability) Number() protoreflect.EnumNumber {
|
||
return protoreflect.EnumNumber(x)
|
||
}
|
||
|
||
// Deprecated: Use PeerCapability.Descriptor instead.
|
||
func (PeerCapability) EnumDescriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{1}
|
||
}
|
||
|
||
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
|
||
// NETBIRD_SSH (types.PolicyRuleProtocolType "netbird-ssh") is the marker
|
||
// policy rule that drives SSH-server activation in Calculate(). The legacy
|
||
// proto.FirewallRule path doesn't ship this value (Calculate already
|
||
// expands SSH rules into TCP/22 before encoding), but the components path
|
||
// ships RAW policies — the client must see this protocol to derive
|
||
// AuthorizedUsers locally.
|
||
RuleProtocol_NETBIRD_SSH RuleProtocol = 6
|
||
)
|
||
|
||
// Enum value maps for RuleProtocol.
|
||
var (
|
||
RuleProtocol_name = map[int32]string{
|
||
0: "UNKNOWN",
|
||
1: "ALL",
|
||
2: "TCP",
|
||
3: "UDP",
|
||
4: "ICMP",
|
||
5: "CUSTOM",
|
||
6: "NETBIRD_SSH",
|
||
}
|
||
RuleProtocol_value = map[string]int32{
|
||
"UNKNOWN": 0,
|
||
"ALL": 1,
|
||
"TCP": 2,
|
||
"UDP": 3,
|
||
"ICMP": 4,
|
||
"CUSTOM": 5,
|
||
"NETBIRD_SSH": 6,
|
||
}
|
||
)
|
||
|
||
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[2].Descriptor()
|
||
}
|
||
|
||
func (RuleProtocol) Type() protoreflect.EnumType {
|
||
return &file_management_proto_enumTypes[2]
|
||
}
|
||
|
||
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{2}
|
||
}
|
||
|
||
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[3].Descriptor()
|
||
}
|
||
|
||
func (RuleDirection) Type() protoreflect.EnumType {
|
||
return &file_management_proto_enumTypes[3]
|
||
}
|
||
|
||
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{3}
|
||
}
|
||
|
||
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[4].Descriptor()
|
||
}
|
||
|
||
func (RuleAction) Type() protoreflect.EnumType {
|
||
return &file_management_proto_enumTypes[4]
|
||
}
|
||
|
||
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{4}
|
||
}
|
||
|
||
type ExposeProtocol int32
|
||
|
||
const (
|
||
ExposeProtocol_EXPOSE_HTTP ExposeProtocol = 0
|
||
ExposeProtocol_EXPOSE_HTTPS ExposeProtocol = 1
|
||
ExposeProtocol_EXPOSE_TCP ExposeProtocol = 2
|
||
ExposeProtocol_EXPOSE_UDP ExposeProtocol = 3
|
||
ExposeProtocol_EXPOSE_TLS ExposeProtocol = 4
|
||
)
|
||
|
||
// Enum value maps for ExposeProtocol.
|
||
var (
|
||
ExposeProtocol_name = map[int32]string{
|
||
0: "EXPOSE_HTTP",
|
||
1: "EXPOSE_HTTPS",
|
||
2: "EXPOSE_TCP",
|
||
3: "EXPOSE_UDP",
|
||
4: "EXPOSE_TLS",
|
||
}
|
||
ExposeProtocol_value = map[string]int32{
|
||
"EXPOSE_HTTP": 0,
|
||
"EXPOSE_HTTPS": 1,
|
||
"EXPOSE_TCP": 2,
|
||
"EXPOSE_UDP": 3,
|
||
"EXPOSE_TLS": 4,
|
||
}
|
||
)
|
||
|
||
func (x ExposeProtocol) Enum() *ExposeProtocol {
|
||
p := new(ExposeProtocol)
|
||
*p = x
|
||
return p
|
||
}
|
||
|
||
func (x ExposeProtocol) String() string {
|
||
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
||
}
|
||
|
||
func (ExposeProtocol) Descriptor() protoreflect.EnumDescriptor {
|
||
return file_management_proto_enumTypes[5].Descriptor()
|
||
}
|
||
|
||
func (ExposeProtocol) Type() protoreflect.EnumType {
|
||
return &file_management_proto_enumTypes[5]
|
||
}
|
||
|
||
func (x ExposeProtocol) Number() protoreflect.EnumNumber {
|
||
return protoreflect.EnumNumber(x)
|
||
}
|
||
|
||
// Deprecated: Use ExposeProtocol.Descriptor instead.
|
||
func (ExposeProtocol) EnumDescriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{5}
|
||
}
|
||
|
||
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[6].Descriptor()
|
||
}
|
||
|
||
func (HostConfig_Protocol) Type() protoreflect.EnumType {
|
||
return &file_management_proto_enumTypes[6]
|
||
}
|
||
|
||
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{20, 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[7].Descriptor()
|
||
}
|
||
|
||
func (DeviceAuthorizationFlowProvider) Type() protoreflect.EnumType {
|
||
return &file_management_proto_enumTypes[7]
|
||
}
|
||
|
||
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{34, 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 JobRequest struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
ID []byte `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"`
|
||
// Types that are assignable to WorkloadParameters:
|
||
//
|
||
// *JobRequest_Bundle
|
||
WorkloadParameters isJobRequest_WorkloadParameters `protobuf_oneof:"workload_parameters"`
|
||
}
|
||
|
||
func (x *JobRequest) Reset() {
|
||
*x = JobRequest{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[1]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *JobRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*JobRequest) ProtoMessage() {}
|
||
|
||
func (x *JobRequest) 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 JobRequest.ProtoReflect.Descriptor instead.
|
||
func (*JobRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{1}
|
||
}
|
||
|
||
func (x *JobRequest) GetID() []byte {
|
||
if x != nil {
|
||
return x.ID
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (m *JobRequest) GetWorkloadParameters() isJobRequest_WorkloadParameters {
|
||
if m != nil {
|
||
return m.WorkloadParameters
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *JobRequest) GetBundle() *BundleParameters {
|
||
if x, ok := x.GetWorkloadParameters().(*JobRequest_Bundle); ok {
|
||
return x.Bundle
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type isJobRequest_WorkloadParameters interface {
|
||
isJobRequest_WorkloadParameters()
|
||
}
|
||
|
||
type JobRequest_Bundle struct {
|
||
Bundle *BundleParameters `protobuf:"bytes,10,opt,name=bundle,proto3,oneof"` //OtherParameters other = 11;
|
||
}
|
||
|
||
func (*JobRequest_Bundle) isJobRequest_WorkloadParameters() {}
|
||
|
||
type JobResponse struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
ID []byte `protobuf:"bytes,1,opt,name=ID,proto3" json:"ID,omitempty"`
|
||
Status JobStatus `protobuf:"varint,2,opt,name=status,proto3,enum=management.JobStatus" json:"status,omitempty"`
|
||
Reason []byte `protobuf:"bytes,3,opt,name=Reason,proto3" json:"Reason,omitempty"`
|
||
// Types that are assignable to WorkloadResults:
|
||
//
|
||
// *JobResponse_Bundle
|
||
WorkloadResults isJobResponse_WorkloadResults `protobuf_oneof:"workload_results"`
|
||
}
|
||
|
||
func (x *JobResponse) Reset() {
|
||
*x = JobResponse{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[2]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *JobResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*JobResponse) ProtoMessage() {}
|
||
|
||
func (x *JobResponse) 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 JobResponse.ProtoReflect.Descriptor instead.
|
||
func (*JobResponse) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{2}
|
||
}
|
||
|
||
func (x *JobResponse) GetID() []byte {
|
||
if x != nil {
|
||
return x.ID
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *JobResponse) GetStatus() JobStatus {
|
||
if x != nil {
|
||
return x.Status
|
||
}
|
||
return JobStatus_unknown_status
|
||
}
|
||
|
||
func (x *JobResponse) GetReason() []byte {
|
||
if x != nil {
|
||
return x.Reason
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (m *JobResponse) GetWorkloadResults() isJobResponse_WorkloadResults {
|
||
if m != nil {
|
||
return m.WorkloadResults
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *JobResponse) GetBundle() *BundleResult {
|
||
if x, ok := x.GetWorkloadResults().(*JobResponse_Bundle); ok {
|
||
return x.Bundle
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type isJobResponse_WorkloadResults interface {
|
||
isJobResponse_WorkloadResults()
|
||
}
|
||
|
||
type JobResponse_Bundle struct {
|
||
Bundle *BundleResult `protobuf:"bytes,10,opt,name=bundle,proto3,oneof"` //OtherResult other = 11;
|
||
}
|
||
|
||
func (*JobResponse_Bundle) isJobResponse_WorkloadResults() {}
|
||
|
||
type BundleParameters struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
BundleFor bool `protobuf:"varint,1,opt,name=bundle_for,json=bundleFor,proto3" json:"bundle_for,omitempty"`
|
||
BundleForTime int64 `protobuf:"varint,2,opt,name=bundle_for_time,json=bundleForTime,proto3" json:"bundle_for_time,omitempty"`
|
||
LogFileCount int32 `protobuf:"varint,3,opt,name=log_file_count,json=logFileCount,proto3" json:"log_file_count,omitempty"`
|
||
Anonymize bool `protobuf:"varint,4,opt,name=anonymize,proto3" json:"anonymize,omitempty"`
|
||
}
|
||
|
||
func (x *BundleParameters) Reset() {
|
||
*x = BundleParameters{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[3]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *BundleParameters) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*BundleParameters) ProtoMessage() {}
|
||
|
||
func (x *BundleParameters) 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 BundleParameters.ProtoReflect.Descriptor instead.
|
||
func (*BundleParameters) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{3}
|
||
}
|
||
|
||
func (x *BundleParameters) GetBundleFor() bool {
|
||
if x != nil {
|
||
return x.BundleFor
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *BundleParameters) GetBundleForTime() int64 {
|
||
if x != nil {
|
||
return x.BundleForTime
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *BundleParameters) GetLogFileCount() int32 {
|
||
if x != nil {
|
||
return x.LogFileCount
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *BundleParameters) GetAnonymize() bool {
|
||
if x != nil {
|
||
return x.Anonymize
|
||
}
|
||
return false
|
||
}
|
||
|
||
type BundleResult struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
UploadKey string `protobuf:"bytes,1,opt,name=upload_key,json=uploadKey,proto3" json:"upload_key,omitempty"`
|
||
}
|
||
|
||
func (x *BundleResult) Reset() {
|
||
*x = BundleResult{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[4]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *BundleResult) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*BundleResult) ProtoMessage() {}
|
||
|
||
func (x *BundleResult) 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 BundleResult.ProtoReflect.Descriptor instead.
|
||
func (*BundleResult) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{4}
|
||
}
|
||
|
||
func (x *BundleResult) GetUploadKey() string {
|
||
if x != nil {
|
||
return x.UploadKey
|
||
}
|
||
return ""
|
||
}
|
||
|
||
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[5]
|
||
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[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 SyncRequest.ProtoReflect.Descriptor instead.
|
||
func (*SyncRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{5}
|
||
}
|
||
|
||
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"`
|
||
// 3-state session deadline. Carried on every Sync snapshot so admin-side
|
||
// changes propagate live without a client reconnect.
|
||
//
|
||
// field unset (nil) → snapshot carries no info; client keeps the
|
||
// deadline it already had
|
||
// set, seconds=0 nanos=0 → explicit "expiry disabled" or peer is not
|
||
// SSO-registered; client clears its anchor
|
||
// set, valid timestamp → new absolute UTC deadline
|
||
SessionExpiresAt *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=sessionExpiresAt,proto3" json:"sessionExpiresAt,omitempty"`
|
||
// NetworkMapEnvelope carries the component-based wire format for peers that
|
||
// advertise PeerCapabilityComponentNetworkMap. When set, NetworkMap (field 5)
|
||
// is left empty: management ships components and the client runs Calculate()
|
||
// locally instead of receiving an expanded NetworkMap.
|
||
NetworkMapEnvelope *NetworkMapEnvelope `protobuf:"bytes,8,opt,name=NetworkMapEnvelope,proto3" json:"NetworkMapEnvelope,omitempty"`
|
||
}
|
||
|
||
func (x *SyncResponse) Reset() {
|
||
*x = SyncResponse{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[6]
|
||
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[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 SyncResponse.ProtoReflect.Descriptor instead.
|
||
func (*SyncResponse) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{6}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *SyncResponse) GetSessionExpiresAt() *timestamppb.Timestamp {
|
||
if x != nil {
|
||
return x.SessionExpiresAt
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *SyncResponse) GetNetworkMapEnvelope() *NetworkMapEnvelope {
|
||
if x != nil {
|
||
return x.NetworkMapEnvelope
|
||
}
|
||
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[7]
|
||
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[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 SyncMetaRequest.ProtoReflect.Descriptor instead.
|
||
func (*SyncMetaRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{7}
|
||
}
|
||
|
||
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[8]
|
||
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[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 LoginRequest.ProtoReflect.Descriptor instead.
|
||
func (*LoginRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{8}
|
||
}
|
||
|
||
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[9]
|
||
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[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 PeerKeys.ProtoReflect.Descriptor instead.
|
||
func (*PeerKeys) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{9}
|
||
}
|
||
|
||
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[10]
|
||
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[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 Environment.ProtoReflect.Descriptor instead.
|
||
func (*Environment) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{10}
|
||
}
|
||
|
||
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[11]
|
||
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[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 File.ProtoReflect.Descriptor instead.
|
||
func (*File) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{11}
|
||
}
|
||
|
||
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"`
|
||
BlockLANAccess bool `protobuf:"varint,8,opt,name=blockLANAccess,proto3" json:"blockLANAccess,omitempty"`
|
||
BlockInbound bool `protobuf:"varint,9,opt,name=blockInbound,proto3" json:"blockInbound,omitempty"`
|
||
LazyConnectionEnabled bool `protobuf:"varint,10,opt,name=lazyConnectionEnabled,proto3" json:"lazyConnectionEnabled,omitempty"`
|
||
EnableSSHRoot bool `protobuf:"varint,11,opt,name=enableSSHRoot,proto3" json:"enableSSHRoot,omitempty"`
|
||
EnableSSHSFTP bool `protobuf:"varint,12,opt,name=enableSSHSFTP,proto3" json:"enableSSHSFTP,omitempty"`
|
||
EnableSSHLocalPortForwarding bool `protobuf:"varint,13,opt,name=enableSSHLocalPortForwarding,proto3" json:"enableSSHLocalPortForwarding,omitempty"`
|
||
EnableSSHRemotePortForwarding bool `protobuf:"varint,14,opt,name=enableSSHRemotePortForwarding,proto3" json:"enableSSHRemotePortForwarding,omitempty"`
|
||
DisableSSHAuth bool `protobuf:"varint,15,opt,name=disableSSHAuth,proto3" json:"disableSSHAuth,omitempty"`
|
||
DisableIPv6 bool `protobuf:"varint,16,opt,name=disableIPv6,proto3" json:"disableIPv6,omitempty"`
|
||
}
|
||
|
||
func (x *Flags) Reset() {
|
||
*x = Flags{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[12]
|
||
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[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 Flags.ProtoReflect.Descriptor instead.
|
||
func (*Flags) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{12}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *Flags) GetBlockLANAccess() bool {
|
||
if x != nil {
|
||
return x.BlockLANAccess
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *Flags) GetBlockInbound() bool {
|
||
if x != nil {
|
||
return x.BlockInbound
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *Flags) GetLazyConnectionEnabled() bool {
|
||
if x != nil {
|
||
return x.LazyConnectionEnabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *Flags) GetEnableSSHRoot() bool {
|
||
if x != nil {
|
||
return x.EnableSSHRoot
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *Flags) GetEnableSSHSFTP() bool {
|
||
if x != nil {
|
||
return x.EnableSSHSFTP
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *Flags) GetEnableSSHLocalPortForwarding() bool {
|
||
if x != nil {
|
||
return x.EnableSSHLocalPortForwarding
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *Flags) GetEnableSSHRemotePortForwarding() bool {
|
||
if x != nil {
|
||
return x.EnableSSHRemotePortForwarding
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *Flags) GetDisableSSHAuth() bool {
|
||
if x != nil {
|
||
return x.DisableSSHAuth
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *Flags) GetDisableIPv6() bool {
|
||
if x != nil {
|
||
return x.DisableIPv6
|
||
}
|
||
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"`
|
||
Capabilities []PeerCapability `protobuf:"varint,18,rep,packed,name=capabilities,proto3,enum=management.PeerCapability" json:"capabilities,omitempty"`
|
||
}
|
||
|
||
func (x *PeerSystemMeta) Reset() {
|
||
*x = PeerSystemMeta{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[13]
|
||
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[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 PeerSystemMeta.ProtoReflect.Descriptor instead.
|
||
func (*PeerSystemMeta) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{13}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *PeerSystemMeta) GetCapabilities() []PeerCapability {
|
||
if x != nil {
|
||
return x.Capabilities
|
||
}
|
||
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"`
|
||
// 3-state session deadline; same encoding as SyncResponse.sessionExpiresAt.
|
||
//
|
||
// field unset (nil) → no info; client keeps any deadline it had
|
||
// set, seconds=0 nanos=0 → explicit "expiry disabled" / non-SSO peer
|
||
// set, valid timestamp → new absolute UTC deadline
|
||
SessionExpiresAt *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=sessionExpiresAt,proto3" json:"sessionExpiresAt,omitempty"`
|
||
}
|
||
|
||
func (x *LoginResponse) Reset() {
|
||
*x = LoginResponse{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[14]
|
||
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[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 LoginResponse.ProtoReflect.Descriptor instead.
|
||
func (*LoginResponse) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{14}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *LoginResponse) GetSessionExpiresAt() *timestamppb.Timestamp {
|
||
if x != nil {
|
||
return x.SessionExpiresAt
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// ExtendAuthSessionRequest carries a fresh JWT to refresh the peer's session deadline.
|
||
// The encrypted body of an EncryptedMessage with this payload is sent to the
|
||
// ExtendAuthSession RPC.
|
||
type ExtendAuthSessionRequest struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// SSO token (must be a fresh, valid JWT for the peer's owning user)
|
||
JwtToken string `protobuf:"bytes,1,opt,name=jwtToken,proto3" json:"jwtToken,omitempty"`
|
||
// Meta data of the peer (used for IdP user info refresh consistent with Login)
|
||
Meta *PeerSystemMeta `protobuf:"bytes,2,opt,name=meta,proto3" json:"meta,omitempty"`
|
||
}
|
||
|
||
func (x *ExtendAuthSessionRequest) Reset() {
|
||
*x = ExtendAuthSessionRequest{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[15]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *ExtendAuthSessionRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ExtendAuthSessionRequest) ProtoMessage() {}
|
||
|
||
func (x *ExtendAuthSessionRequest) 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 ExtendAuthSessionRequest.ProtoReflect.Descriptor instead.
|
||
func (*ExtendAuthSessionRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{15}
|
||
}
|
||
|
||
func (x *ExtendAuthSessionRequest) GetJwtToken() string {
|
||
if x != nil {
|
||
return x.JwtToken
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ExtendAuthSessionRequest) GetMeta() *PeerSystemMeta {
|
||
if x != nil {
|
||
return x.Meta
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// ExtendAuthSessionResponse contains the refreshed session deadline.
|
||
type ExtendAuthSessionResponse struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// 3-state session deadline; same encoding as SyncResponse.sessionExpiresAt.
|
||
// In practice ExtendAuthSession only succeeds for SSO peers with expiry
|
||
// enabled, so this carries a valid timestamp on the success path. The
|
||
// 3-state encoding is documented here for symmetry with Login/Sync.
|
||
SessionExpiresAt *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=sessionExpiresAt,proto3" json:"sessionExpiresAt,omitempty"`
|
||
}
|
||
|
||
func (x *ExtendAuthSessionResponse) Reset() {
|
||
*x = ExtendAuthSessionResponse{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[16]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *ExtendAuthSessionResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ExtendAuthSessionResponse) ProtoMessage() {}
|
||
|
||
func (x *ExtendAuthSessionResponse) 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 ExtendAuthSessionResponse.ProtoReflect.Descriptor instead.
|
||
func (*ExtendAuthSessionResponse) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{16}
|
||
}
|
||
|
||
func (x *ExtendAuthSessionResponse) GetSessionExpiresAt() *timestamppb.Timestamp {
|
||
if x != nil {
|
||
return x.SessionExpiresAt
|
||
}
|
||
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[17]
|
||
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[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 ServerKeyResponse.ProtoReflect.Descriptor instead.
|
||
func (*ServerKeyResponse) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{17}
|
||
}
|
||
|
||
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[18]
|
||
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[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 Empty.ProtoReflect.Descriptor instead.
|
||
func (*Empty) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{18}
|
||
}
|
||
|
||
// 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"`
|
||
Metrics *MetricsConfig `protobuf:"bytes,6,opt,name=metrics,proto3" json:"metrics,omitempty"`
|
||
}
|
||
|
||
func (x *NetbirdConfig) Reset() {
|
||
*x = NetbirdConfig{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[19]
|
||
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[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 NetbirdConfig.ProtoReflect.Descriptor instead.
|
||
func (*NetbirdConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{19}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *NetbirdConfig) GetMetrics() *MetricsConfig {
|
||
if x != nil {
|
||
return x.Metrics
|
||
}
|
||
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[20]
|
||
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[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 HostConfig.ProtoReflect.Descriptor instead.
|
||
func (*HostConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{20}
|
||
}
|
||
|
||
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[21]
|
||
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[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 RelayConfig.ProtoReflect.Descriptor instead.
|
||
func (*RelayConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{21}
|
||
}
|
||
|
||
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[22]
|
||
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[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 FlowConfig.ProtoReflect.Descriptor instead.
|
||
func (*FlowConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{22}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
type MetricsConfig struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
|
||
}
|
||
|
||
func (x *MetricsConfig) Reset() {
|
||
*x = MetricsConfig{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[23]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *MetricsConfig) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*MetricsConfig) ProtoMessage() {}
|
||
|
||
func (x *MetricsConfig) 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 MetricsConfig.ProtoReflect.Descriptor instead.
|
||
func (*MetricsConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{23}
|
||
}
|
||
|
||
func (x *MetricsConfig) GetEnabled() bool {
|
||
if x != nil {
|
||
return x.Enabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
// JWTConfig represents JWT authentication configuration for validating tokens.
|
||
type JWTConfig struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Issuer string `protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"`
|
||
// Deprecated: audience is kept for backwards compatibility only. Use audiences instead in the client code but populate this field.
|
||
Audience string `protobuf:"bytes,2,opt,name=audience,proto3" json:"audience,omitempty"`
|
||
KeysLocation string `protobuf:"bytes,3,opt,name=keysLocation,proto3" json:"keysLocation,omitempty"`
|
||
MaxTokenAge int64 `protobuf:"varint,4,opt,name=maxTokenAge,proto3" json:"maxTokenAge,omitempty"`
|
||
// audiences contains the list of valid audiences for JWT validation.
|
||
// Tokens matching any audience in this list are considered valid.
|
||
Audiences []string `protobuf:"bytes,5,rep,name=audiences,proto3" json:"audiences,omitempty"`
|
||
}
|
||
|
||
func (x *JWTConfig) Reset() {
|
||
*x = JWTConfig{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[24]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *JWTConfig) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*JWTConfig) ProtoMessage() {}
|
||
|
||
func (x *JWTConfig) 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 JWTConfig.ProtoReflect.Descriptor instead.
|
||
func (*JWTConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{24}
|
||
}
|
||
|
||
func (x *JWTConfig) GetIssuer() string {
|
||
if x != nil {
|
||
return x.Issuer
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *JWTConfig) GetAudience() string {
|
||
if x != nil {
|
||
return x.Audience
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *JWTConfig) GetKeysLocation() string {
|
||
if x != nil {
|
||
return x.KeysLocation
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *JWTConfig) GetMaxTokenAge() int64 {
|
||
if x != nil {
|
||
return x.MaxTokenAge
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *JWTConfig) GetAudiences() []string {
|
||
if x != nil {
|
||
return x.Audiences
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// 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[25]
|
||
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[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 ProtectedHostConfig.ProtoReflect.Descriptor instead.
|
||
func (*ProtectedHostConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{25}
|
||
}
|
||
|
||
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"`
|
||
Mtu int32 `protobuf:"varint,7,opt,name=mtu,proto3" json:"mtu,omitempty"`
|
||
// Auto-update config
|
||
AutoUpdate *AutoUpdateSettings `protobuf:"bytes,8,opt,name=autoUpdate,proto3" json:"autoUpdate,omitempty"`
|
||
// IPv6 overlay address as compact bytes: 16 bytes IP + 1 byte prefix length.
|
||
AddressV6 []byte `protobuf:"bytes,9,opt,name=address_v6,json=addressV6,proto3" json:"address_v6,omitempty"`
|
||
}
|
||
|
||
func (x *PeerConfig) Reset() {
|
||
*x = PeerConfig{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[26]
|
||
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[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 PeerConfig.ProtoReflect.Descriptor instead.
|
||
func (*PeerConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{26}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *PeerConfig) GetMtu() int32 {
|
||
if x != nil {
|
||
return x.Mtu
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *PeerConfig) GetAutoUpdate() *AutoUpdateSettings {
|
||
if x != nil {
|
||
return x.AutoUpdate
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PeerConfig) GetAddressV6() []byte {
|
||
if x != nil {
|
||
return x.AddressV6
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type AutoUpdateSettings struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
|
||
// alwaysUpdate = true → Updates are installed automatically in the background
|
||
// alwaysUpdate = false → Updates require user interaction from the UI
|
||
AlwaysUpdate bool `protobuf:"varint,2,opt,name=alwaysUpdate,proto3" json:"alwaysUpdate,omitempty"`
|
||
}
|
||
|
||
func (x *AutoUpdateSettings) Reset() {
|
||
*x = AutoUpdateSettings{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[27]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *AutoUpdateSettings) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*AutoUpdateSettings) ProtoMessage() {}
|
||
|
||
func (x *AutoUpdateSettings) 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 AutoUpdateSettings.ProtoReflect.Descriptor instead.
|
||
func (*AutoUpdateSettings) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{27}
|
||
}
|
||
|
||
func (x *AutoUpdateSettings) GetVersion() string {
|
||
if x != nil {
|
||
return x.Version
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AutoUpdateSettings) GetAlwaysUpdate() bool {
|
||
if x != nil {
|
||
return x.AlwaysUpdate
|
||
}
|
||
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"`
|
||
// SSHAuth represents SSH authorization configuration
|
||
SshAuth *SSHAuth `protobuf:"bytes,13,opt,name=sshAuth,proto3" json:"sshAuth,omitempty"`
|
||
}
|
||
|
||
func (x *NetworkMap) Reset() {
|
||
*x = NetworkMap{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[28]
|
||
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[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 NetworkMap.ProtoReflect.Descriptor instead.
|
||
func (*NetworkMap) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{28}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *NetworkMap) GetSshAuth() *SSHAuth {
|
||
if x != nil {
|
||
return x.SshAuth
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type SSHAuth struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// UserIDClaim is the JWT claim to be used to get the users ID
|
||
UserIDClaim string `protobuf:"bytes,1,opt,name=UserIDClaim,proto3" json:"UserIDClaim,omitempty"`
|
||
// AuthorizedUsers is a list of hashed user IDs authorized to access this peer via SSH
|
||
AuthorizedUsers [][]byte `protobuf:"bytes,2,rep,name=AuthorizedUsers,proto3" json:"AuthorizedUsers,omitempty"`
|
||
// MachineUsers is a map of machine user names to their corresponding indexes in the AuthorizedUsers list
|
||
MachineUsers map[string]*MachineUserIndexes `protobuf:"bytes,3,rep,name=machine_users,json=machineUsers,proto3" json:"machine_users,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||
}
|
||
|
||
func (x *SSHAuth) Reset() {
|
||
*x = SSHAuth{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[29]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *SSHAuth) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*SSHAuth) ProtoMessage() {}
|
||
|
||
func (x *SSHAuth) 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 SSHAuth.ProtoReflect.Descriptor instead.
|
||
func (*SSHAuth) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{29}
|
||
}
|
||
|
||
func (x *SSHAuth) GetUserIDClaim() string {
|
||
if x != nil {
|
||
return x.UserIDClaim
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *SSHAuth) GetAuthorizedUsers() [][]byte {
|
||
if x != nil {
|
||
return x.AuthorizedUsers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *SSHAuth) GetMachineUsers() map[string]*MachineUserIndexes {
|
||
if x != nil {
|
||
return x.MachineUsers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type MachineUserIndexes struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Indexes []uint32 `protobuf:"varint,1,rep,packed,name=indexes,proto3" json:"indexes,omitempty"`
|
||
}
|
||
|
||
func (x *MachineUserIndexes) Reset() {
|
||
*x = MachineUserIndexes{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[30]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *MachineUserIndexes) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*MachineUserIndexes) ProtoMessage() {}
|
||
|
||
func (x *MachineUserIndexes) 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 MachineUserIndexes.ProtoReflect.Descriptor instead.
|
||
func (*MachineUserIndexes) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{30}
|
||
}
|
||
|
||
func (x *MachineUserIndexes) GetIndexes() []uint32 {
|
||
if x != nil {
|
||
return x.Indexes
|
||
}
|
||
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[31]
|
||
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[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 RemotePeerConfig.ProtoReflect.Descriptor instead.
|
||
func (*RemotePeerConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{31}
|
||
}
|
||
|
||
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"`
|
||
JwtConfig *JWTConfig `protobuf:"bytes,3,opt,name=jwtConfig,proto3" json:"jwtConfig,omitempty"`
|
||
}
|
||
|
||
func (x *SSHConfig) Reset() {
|
||
*x = SSHConfig{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[32]
|
||
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[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 SSHConfig.ProtoReflect.Descriptor instead.
|
||
func (*SSHConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{32}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *SSHConfig) GetJwtConfig() *JWTConfig {
|
||
if x != nil {
|
||
return x.JwtConfig
|
||
}
|
||
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[33]
|
||
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[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 DeviceAuthorizationFlowRequest.ProtoReflect.Descriptor instead.
|
||
func (*DeviceAuthorizationFlowRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{33}
|
||
}
|
||
|
||
// 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[34]
|
||
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[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 DeviceAuthorizationFlow.ProtoReflect.Descriptor instead.
|
||
func (*DeviceAuthorizationFlow) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{34}
|
||
}
|
||
|
||
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[35]
|
||
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[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 PKCEAuthorizationFlowRequest.ProtoReflect.Descriptor instead.
|
||
func (*PKCEAuthorizationFlowRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{35}
|
||
}
|
||
|
||
// 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[36]
|
||
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[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 PKCEAuthorizationFlow.ProtoReflect.Descriptor instead.
|
||
func (*PKCEAuthorizationFlow) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{36}
|
||
}
|
||
|
||
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"`
|
||
// Deprecated: use embedded IdP for providers that require a client secret (e.g. Google Workspace).
|
||
//
|
||
// Deprecated: Do not use.
|
||
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[37]
|
||
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[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 ProviderConfig.ProtoReflect.Descriptor instead.
|
||
func (*ProviderConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{37}
|
||
}
|
||
|
||
func (x *ProviderConfig) GetClientID() string {
|
||
if x != nil {
|
||
return x.ClientID
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// Deprecated: Do not use.
|
||
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"`
|
||
SkipAutoApply bool `protobuf:"varint,10,opt,name=skipAutoApply,proto3" json:"skipAutoApply,omitempty"`
|
||
}
|
||
|
||
func (x *Route) Reset() {
|
||
*x = Route{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[38]
|
||
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[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 Route.ProtoReflect.Descriptor instead.
|
||
func (*Route) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{38}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *Route) GetSkipAutoApply() bool {
|
||
if x != nil {
|
||
return x.SkipAutoApply
|
||
}
|
||
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"`
|
||
// Deprecated: Do not use.
|
||
ForwarderPort int64 `protobuf:"varint,4,opt,name=ForwarderPort,proto3" json:"ForwarderPort,omitempty"`
|
||
}
|
||
|
||
func (x *DNSConfig) Reset() {
|
||
*x = DNSConfig{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[39]
|
||
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[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 DNSConfig.ProtoReflect.Descriptor instead.
|
||
func (*DNSConfig) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{39}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
// Deprecated: Do not use.
|
||
func (x *DNSConfig) GetForwarderPort() int64 {
|
||
if x != nil {
|
||
return x.ForwarderPort
|
||
}
|
||
return 0
|
||
}
|
||
|
||
// 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"`
|
||
SearchDomainDisabled bool `protobuf:"varint,3,opt,name=SearchDomainDisabled,proto3" json:"SearchDomainDisabled,omitempty"`
|
||
// NonAuthoritative indicates this is a user-created zone (not the built-in peer DNS zone).
|
||
// Non-authoritative zones will fallthrough to lower-priority handlers on NXDOMAIN and skip PTR processing.
|
||
NonAuthoritative bool `protobuf:"varint,4,opt,name=NonAuthoritative,proto3" json:"NonAuthoritative,omitempty"`
|
||
}
|
||
|
||
func (x *CustomZone) Reset() {
|
||
*x = CustomZone{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[40]
|
||
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[40]
|
||
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{40}
|
||
}
|
||
|
||
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
|
||
}
|
||
|
||
func (x *CustomZone) GetSearchDomainDisabled() bool {
|
||
if x != nil {
|
||
return x.SearchDomainDisabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *CustomZone) GetNonAuthoritative() bool {
|
||
if x != nil {
|
||
return x.NonAuthoritative
|
||
}
|
||
return false
|
||
}
|
||
|
||
// 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[41]
|
||
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[41]
|
||
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{41}
|
||
}
|
||
|
||
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[42]
|
||
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[42]
|
||
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{42}
|
||
}
|
||
|
||
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[43]
|
||
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[43]
|
||
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{43}
|
||
}
|
||
|
||
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
|
||
|
||
// Use sourcePrefixes instead.
|
||
//
|
||
// Deprecated: Do not use.
|
||
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"`
|
||
// CustomProtocol is a custom protocol ID when Protocol is CUSTOM.
|
||
CustomProtocol uint32 `protobuf:"varint,8,opt,name=customProtocol,proto3" json:"customProtocol,omitempty"`
|
||
// Compact source IP prefixes for this rule, supersedes PeerIP.
|
||
// Each entry is 5 bytes (v4) or 17 bytes (v6): [IP bytes][1 byte prefix_len].
|
||
SourcePrefixes [][]byte `protobuf:"bytes,9,rep,name=sourcePrefixes,proto3" json:"sourcePrefixes,omitempty"`
|
||
}
|
||
|
||
func (x *FirewallRule) Reset() {
|
||
*x = FirewallRule{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[44]
|
||
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[44]
|
||
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{44}
|
||
}
|
||
|
||
// Deprecated: Do not use.
|
||
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
|
||
}
|
||
|
||
func (x *FirewallRule) GetCustomProtocol() uint32 {
|
||
if x != nil {
|
||
return x.CustomProtocol
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *FirewallRule) GetSourcePrefixes() [][]byte {
|
||
if x != nil {
|
||
return x.SourcePrefixes
|
||
}
|
||
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[45]
|
||
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[45]
|
||
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{45}
|
||
}
|
||
|
||
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[46]
|
||
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[46]
|
||
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{46}
|
||
}
|
||
|
||
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[47]
|
||
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[47]
|
||
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{47}
|
||
}
|
||
|
||
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[48]
|
||
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[48]
|
||
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{48}
|
||
}
|
||
|
||
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[49]
|
||
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[49]
|
||
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{49}
|
||
}
|
||
|
||
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 ExposeServiceRequest struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Port uint32 `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
|
||
Protocol ExposeProtocol `protobuf:"varint,2,opt,name=protocol,proto3,enum=management.ExposeProtocol" json:"protocol,omitempty"`
|
||
Pin string `protobuf:"bytes,3,opt,name=pin,proto3" json:"pin,omitempty"`
|
||
Password string `protobuf:"bytes,4,opt,name=password,proto3" json:"password,omitempty"`
|
||
UserGroups []string `protobuf:"bytes,5,rep,name=user_groups,json=userGroups,proto3" json:"user_groups,omitempty"`
|
||
Domain string `protobuf:"bytes,6,opt,name=domain,proto3" json:"domain,omitempty"`
|
||
NamePrefix string `protobuf:"bytes,7,opt,name=name_prefix,json=namePrefix,proto3" json:"name_prefix,omitempty"`
|
||
ListenPort uint32 `protobuf:"varint,8,opt,name=listen_port,json=listenPort,proto3" json:"listen_port,omitempty"`
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) Reset() {
|
||
*x = ExposeServiceRequest{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[50]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ExposeServiceRequest) ProtoMessage() {}
|
||
|
||
func (x *ExposeServiceRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[50]
|
||
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 ExposeServiceRequest.ProtoReflect.Descriptor instead.
|
||
func (*ExposeServiceRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{50}
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) GetPort() uint32 {
|
||
if x != nil {
|
||
return x.Port
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) GetProtocol() ExposeProtocol {
|
||
if x != nil {
|
||
return x.Protocol
|
||
}
|
||
return ExposeProtocol_EXPOSE_HTTP
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) GetPin() string {
|
||
if x != nil {
|
||
return x.Pin
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) GetPassword() string {
|
||
if x != nil {
|
||
return x.Password
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) GetUserGroups() []string {
|
||
if x != nil {
|
||
return x.UserGroups
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) GetDomain() string {
|
||
if x != nil {
|
||
return x.Domain
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) GetNamePrefix() string {
|
||
if x != nil {
|
||
return x.NamePrefix
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ExposeServiceRequest) GetListenPort() uint32 {
|
||
if x != nil {
|
||
return x.ListenPort
|
||
}
|
||
return 0
|
||
}
|
||
|
||
type ExposeServiceResponse struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
|
||
ServiceUrl string `protobuf:"bytes,2,opt,name=service_url,json=serviceUrl,proto3" json:"service_url,omitempty"`
|
||
Domain string `protobuf:"bytes,3,opt,name=domain,proto3" json:"domain,omitempty"`
|
||
PortAutoAssigned bool `protobuf:"varint,4,opt,name=port_auto_assigned,json=portAutoAssigned,proto3" json:"port_auto_assigned,omitempty"`
|
||
}
|
||
|
||
func (x *ExposeServiceResponse) Reset() {
|
||
*x = ExposeServiceResponse{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[51]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *ExposeServiceResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ExposeServiceResponse) ProtoMessage() {}
|
||
|
||
func (x *ExposeServiceResponse) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[51]
|
||
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 ExposeServiceResponse.ProtoReflect.Descriptor instead.
|
||
func (*ExposeServiceResponse) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{51}
|
||
}
|
||
|
||
func (x *ExposeServiceResponse) GetServiceName() string {
|
||
if x != nil {
|
||
return x.ServiceName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ExposeServiceResponse) GetServiceUrl() string {
|
||
if x != nil {
|
||
return x.ServiceUrl
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ExposeServiceResponse) GetDomain() string {
|
||
if x != nil {
|
||
return x.Domain
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ExposeServiceResponse) GetPortAutoAssigned() bool {
|
||
if x != nil {
|
||
return x.PortAutoAssigned
|
||
}
|
||
return false
|
||
}
|
||
|
||
type RenewExposeRequest struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Domain string `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"`
|
||
}
|
||
|
||
func (x *RenewExposeRequest) Reset() {
|
||
*x = RenewExposeRequest{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[52]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *RenewExposeRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenewExposeRequest) ProtoMessage() {}
|
||
|
||
func (x *RenewExposeRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[52]
|
||
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 RenewExposeRequest.ProtoReflect.Descriptor instead.
|
||
func (*RenewExposeRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{52}
|
||
}
|
||
|
||
func (x *RenewExposeRequest) GetDomain() string {
|
||
if x != nil {
|
||
return x.Domain
|
||
}
|
||
return ""
|
||
}
|
||
|
||
type RenewExposeResponse struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
}
|
||
|
||
func (x *RenewExposeResponse) Reset() {
|
||
*x = RenewExposeResponse{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[53]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *RenewExposeResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenewExposeResponse) ProtoMessage() {}
|
||
|
||
func (x *RenewExposeResponse) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[53]
|
||
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 RenewExposeResponse.ProtoReflect.Descriptor instead.
|
||
func (*RenewExposeResponse) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{53}
|
||
}
|
||
|
||
type StopExposeRequest struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Domain string `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"`
|
||
}
|
||
|
||
func (x *StopExposeRequest) Reset() {
|
||
*x = StopExposeRequest{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[54]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *StopExposeRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*StopExposeRequest) ProtoMessage() {}
|
||
|
||
func (x *StopExposeRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[54]
|
||
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 StopExposeRequest.ProtoReflect.Descriptor instead.
|
||
func (*StopExposeRequest) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{54}
|
||
}
|
||
|
||
func (x *StopExposeRequest) GetDomain() string {
|
||
if x != nil {
|
||
return x.Domain
|
||
}
|
||
return ""
|
||
}
|
||
|
||
type StopExposeResponse struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
}
|
||
|
||
func (x *StopExposeResponse) Reset() {
|
||
*x = StopExposeResponse{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[55]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *StopExposeResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*StopExposeResponse) ProtoMessage() {}
|
||
|
||
func (x *StopExposeResponse) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[55]
|
||
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 StopExposeResponse.ProtoReflect.Descriptor instead.
|
||
func (*StopExposeResponse) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{55}
|
||
}
|
||
|
||
// NetworkMapEnvelope wraps either a full snapshot or a delta. Only Full is
|
||
// emitted today; Delta is reserved for the incremental-update work.
|
||
type NetworkMapEnvelope struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// Types that are assignable to Payload:
|
||
//
|
||
// *NetworkMapEnvelope_Full
|
||
// *NetworkMapEnvelope_Delta
|
||
Payload isNetworkMapEnvelope_Payload `protobuf_oneof:"payload"`
|
||
}
|
||
|
||
func (x *NetworkMapEnvelope) Reset() {
|
||
*x = NetworkMapEnvelope{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[56]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *NetworkMapEnvelope) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*NetworkMapEnvelope) ProtoMessage() {}
|
||
|
||
func (x *NetworkMapEnvelope) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[56]
|
||
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 NetworkMapEnvelope.ProtoReflect.Descriptor instead.
|
||
func (*NetworkMapEnvelope) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{56}
|
||
}
|
||
|
||
func (m *NetworkMapEnvelope) GetPayload() isNetworkMapEnvelope_Payload {
|
||
if m != nil {
|
||
return m.Payload
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapEnvelope) GetFull() *NetworkMapComponentsFull {
|
||
if x, ok := x.GetPayload().(*NetworkMapEnvelope_Full); ok {
|
||
return x.Full
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapEnvelope) GetDelta() *NetworkMapComponentsDelta {
|
||
if x, ok := x.GetPayload().(*NetworkMapEnvelope_Delta); ok {
|
||
return x.Delta
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type isNetworkMapEnvelope_Payload interface {
|
||
isNetworkMapEnvelope_Payload()
|
||
}
|
||
|
||
type NetworkMapEnvelope_Full struct {
|
||
Full *NetworkMapComponentsFull `protobuf:"bytes,1,opt,name=full,proto3,oneof"`
|
||
}
|
||
|
||
type NetworkMapEnvelope_Delta struct {
|
||
Delta *NetworkMapComponentsDelta `protobuf:"bytes,2,opt,name=delta,proto3,oneof"`
|
||
}
|
||
|
||
func (*NetworkMapEnvelope_Full) isNetworkMapEnvelope_Payload() {}
|
||
|
||
func (*NetworkMapEnvelope_Delta) isNetworkMapEnvelope_Payload() {}
|
||
|
||
// NetworkMapComponentsFull is the full per-peer component snapshot. The
|
||
// client decodes it into a types.NetworkMapComponents and runs Calculate()
|
||
// locally to produce the same NetworkMap the legacy server path would have
|
||
// produced. Every field carries RAW component data — no server-side
|
||
// expansion (firewall rules, DNS config, SSH auth, route firewall rules,
|
||
// forwarding rules) is shipped; the client computes those itself.
|
||
type NetworkMapComponentsFull struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Serial uint64 `protobuf:"varint,1,opt,name=serial,proto3" json:"serial,omitempty"`
|
||
// Peer config for the receiving peer (legacy proto.PeerConfig kept as-is —
|
||
// it carries the receiving peer's own overlay address, FQDN, SSH config).
|
||
PeerConfig *PeerConfig `protobuf:"bytes,2,opt,name=peer_config,json=peerConfig,proto3" json:"peer_config,omitempty"`
|
||
// Account-level network metadata (id, IPv4/IPv6 overlay subnets, DNS,
|
||
// serial). Mirrors types.Network.
|
||
Network *AccountNetwork `protobuf:"bytes,3,opt,name=network,proto3" json:"network,omitempty"`
|
||
// Account-level settings the client needs for its local Calculate().
|
||
AccountSettings *AccountSettingsCompact `protobuf:"bytes,4,opt,name=account_settings,json=accountSettings,proto3" json:"account_settings,omitempty"`
|
||
// Account DNS settings (mirrors types.DNSSettings).
|
||
DnsSettings *DNSSettingsCompact `protobuf:"bytes,5,opt,name=dns_settings,json=dnsSettings,proto3" json:"dns_settings,omitempty"`
|
||
// Domain shared across all peers in this account, e.g. "netbird.cloud".
|
||
// Each peer's FQDN is dns_label + "." + dns_domain.
|
||
DnsDomain string `protobuf:"bytes,6,opt,name=dns_domain,json=dnsDomain,proto3" json:"dns_domain,omitempty"`
|
||
// Custom-zone domain for this peer's view (c.CustomZoneDomain). Empty when
|
||
// the peer has no custom zone records.
|
||
CustomZoneDomain string `protobuf:"bytes,7,opt,name=custom_zone_domain,json=customZoneDomain,proto3" json:"custom_zone_domain,omitempty"`
|
||
// Deduplicated agent versions; PeerCompact.agent_version_idx indexes here.
|
||
// Empty string at index 0 if any peer has no version.
|
||
AgentVersions []string `protobuf:"bytes,8,rep,name=agent_versions,json=agentVersions,proto3" json:"agent_versions,omitempty"`
|
||
// All peers (deduplicated). The client splits peers into online / offline
|
||
// locally using account_settings.peer_login_expiration on receive.
|
||
Peers []*PeerCompact `protobuf:"bytes,9,rep,name=peers,proto3" json:"peers,omitempty"`
|
||
// Indexes into peers for the subset that may act as routers.
|
||
RouterPeerIndexes []uint32 `protobuf:"varint,10,rep,packed,name=router_peer_indexes,json=routerPeerIndexes,proto3" json:"router_peer_indexes,omitempty"`
|
||
// Policies that affect the receiving peer.
|
||
Policies []*PolicyCompact `protobuf:"bytes,11,rep,name=policies,proto3" json:"policies,omitempty"`
|
||
// Groups in unspecified order — clients key off id (account_seq_id).
|
||
Groups []*GroupCompact `protobuf:"bytes,12,rep,name=groups,proto3" json:"groups,omitempty"`
|
||
// Routes relevant to this peer, raw shape (mirrors []*route.Route).
|
||
Routes []*RouteRaw `protobuf:"bytes,13,rep,name=routes,proto3" json:"routes,omitempty"`
|
||
// Nameserver groups (mirrors []*nbdns.NameServerGroup).
|
||
NameserverGroups []*NameServerGroupRaw `protobuf:"bytes,14,rep,name=nameserver_groups,json=nameserverGroups,proto3" json:"nameserver_groups,omitempty"`
|
||
// All DNS records the client needs to assemble its custom zone. Reuses
|
||
// the existing SimpleRecord wire shape.
|
||
AllDnsRecords []*SimpleRecord `protobuf:"bytes,15,rep,name=all_dns_records,json=allDnsRecords,proto3" json:"all_dns_records,omitempty"`
|
||
// Custom zones (typically the peer's own zone). Reuses the existing
|
||
// CustomZone wire shape.
|
||
AccountZones []*CustomZone `protobuf:"bytes,16,rep,name=account_zones,json=accountZones,proto3" json:"account_zones,omitempty"`
|
||
// Network resources (mirrors []*resourceTypes.NetworkResource).
|
||
NetworkResources []*NetworkResourceRaw `protobuf:"bytes,17,rep,name=network_resources,json=networkResources,proto3" json:"network_resources,omitempty"`
|
||
// Routers per network. Outer key: network account_seq_id. Each entry is
|
||
// the set of routers backing that network for this peer's view.
|
||
//
|
||
// INCOMPATIBLE WIRE CHANGE: the map key changed from string (network xid)
|
||
// to uint32 (account_seq_id). Field 18 was reused without a `reserved`
|
||
// entry because capability=3 has never been released — every cap=3
|
||
// producer and consumer carries the same regenerated descriptor. Do NOT
|
||
// reuse this pattern for any further wire change once cap=3 ships.
|
||
RoutersMap map[uint32]*NetworkRouterList `protobuf:"bytes,18,rep,name=routers_map,json=routersMap,proto3" json:"routers_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||
// For each NetworkResource account_seq_id, the indexes into policies[]
|
||
// that apply to it.
|
||
//
|
||
// INCOMPATIBLE WIRE CHANGE: see routers_map note above.
|
||
ResourcePoliciesMap map[uint32]*PolicyIndexes `protobuf:"bytes,19,rep,name=resource_policies_map,json=resourcePoliciesMap,proto3" json:"resource_policies_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||
// Group-id (account_seq_id) → user ids authorized for SSH on members.
|
||
GroupIdToUserIds map[uint32]*UserIDList `protobuf:"bytes,20,rep,name=group_id_to_user_ids,json=groupIdToUserIds,proto3" json:"group_id_to_user_ids,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||
// Account-level allowed user ids (used by Calculate() when assembling SSH
|
||
// authorized users for the receiving peer).
|
||
AllowedUserIds []string `protobuf:"bytes,21,rep,name=allowed_user_ids,json=allowedUserIds,proto3" json:"allowed_user_ids,omitempty"`
|
||
// Per posture-check account_seq_id, the set of peer indexes that failed
|
||
// the check. Server-side evaluation result; clients do not re-evaluate.
|
||
//
|
||
// INCOMPATIBLE WIRE CHANGE: see routers_map note above.
|
||
PostureFailedPeers map[uint32]*PeerIndexSet `protobuf:"bytes,22,rep,name=posture_failed_peers,json=postureFailedPeers,proto3" json:"posture_failed_peers,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||
// Account-level DNS forwarder port (mirrors the legacy
|
||
// proto.DNSConfig.ForwarderPort). Computed by the controller from peer
|
||
// versions; clients fold it into their Calculate() DNS output.
|
||
DnsForwarderPort int64 `protobuf:"varint,23,opt,name=dns_forwarder_port,json=dnsForwarderPort,proto3" json:"dns_forwarder_port,omitempty"`
|
||
// Pre-expanded NetworkMap fragments injected post-Calculate by external
|
||
// controllers (BYOP / port-forwarding proxies). The receiving client
|
||
// merges these into its locally-computed NetworkMap the same way the
|
||
// legacy server does via NetworkMap.Merge — so downstream consumers see
|
||
// a unified merged result regardless of source.
|
||
ProxyPatch *ProxyPatch `protobuf:"bytes,24,opt,name=proxy_patch,json=proxyPatch,proto3" json:"proxy_patch,omitempty"`
|
||
// SSH UserIDClaim — server-side HttpServerConfig.AuthUserIDClaim, or
|
||
// "sub" by default. Populated in proto.SSHAuth.UserIDClaim when the
|
||
// client rebuilds the NetworkMap from this envelope. Empty when the
|
||
// account has no AuthorizedUsers (and thus no SshAuth to populate).
|
||
UserIdClaim string `protobuf:"bytes,25,opt,name=user_id_claim,json=userIdClaim,proto3" json:"user_id_claim,omitempty"`
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) Reset() {
|
||
*x = NetworkMapComponentsFull{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[57]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*NetworkMapComponentsFull) ProtoMessage() {}
|
||
|
||
func (x *NetworkMapComponentsFull) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[57]
|
||
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 NetworkMapComponentsFull.ProtoReflect.Descriptor instead.
|
||
func (*NetworkMapComponentsFull) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{57}
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetSerial() uint64 {
|
||
if x != nil {
|
||
return x.Serial
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetPeerConfig() *PeerConfig {
|
||
if x != nil {
|
||
return x.PeerConfig
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetNetwork() *AccountNetwork {
|
||
if x != nil {
|
||
return x.Network
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetAccountSettings() *AccountSettingsCompact {
|
||
if x != nil {
|
||
return x.AccountSettings
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetDnsSettings() *DNSSettingsCompact {
|
||
if x != nil {
|
||
return x.DnsSettings
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetDnsDomain() string {
|
||
if x != nil {
|
||
return x.DnsDomain
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetCustomZoneDomain() string {
|
||
if x != nil {
|
||
return x.CustomZoneDomain
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetAgentVersions() []string {
|
||
if x != nil {
|
||
return x.AgentVersions
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetPeers() []*PeerCompact {
|
||
if x != nil {
|
||
return x.Peers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetRouterPeerIndexes() []uint32 {
|
||
if x != nil {
|
||
return x.RouterPeerIndexes
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetPolicies() []*PolicyCompact {
|
||
if x != nil {
|
||
return x.Policies
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetGroups() []*GroupCompact {
|
||
if x != nil {
|
||
return x.Groups
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetRoutes() []*RouteRaw {
|
||
if x != nil {
|
||
return x.Routes
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetNameserverGroups() []*NameServerGroupRaw {
|
||
if x != nil {
|
||
return x.NameserverGroups
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetAllDnsRecords() []*SimpleRecord {
|
||
if x != nil {
|
||
return x.AllDnsRecords
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetAccountZones() []*CustomZone {
|
||
if x != nil {
|
||
return x.AccountZones
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetNetworkResources() []*NetworkResourceRaw {
|
||
if x != nil {
|
||
return x.NetworkResources
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetRoutersMap() map[uint32]*NetworkRouterList {
|
||
if x != nil {
|
||
return x.RoutersMap
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetResourcePoliciesMap() map[uint32]*PolicyIndexes {
|
||
if x != nil {
|
||
return x.ResourcePoliciesMap
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetGroupIdToUserIds() map[uint32]*UserIDList {
|
||
if x != nil {
|
||
return x.GroupIdToUserIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetAllowedUserIds() []string {
|
||
if x != nil {
|
||
return x.AllowedUserIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetPostureFailedPeers() map[uint32]*PeerIndexSet {
|
||
if x != nil {
|
||
return x.PostureFailedPeers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetDnsForwarderPort() int64 {
|
||
if x != nil {
|
||
return x.DnsForwarderPort
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetProxyPatch() *ProxyPatch {
|
||
if x != nil {
|
||
return x.ProxyPatch
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkMapComponentsFull) GetUserIdClaim() string {
|
||
if x != nil {
|
||
return x.UserIdClaim
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// ProxyPatch carries NetworkMap fragments that don't fit the component-graph
|
||
// model — they're pre-expanded by external controllers (BYOP /
|
||
// port-forwarding proxies) and injected post-Calculate. Fields use the
|
||
// legacy wire types because the proxy delivers them pre-formed; there is
|
||
// no raw component shape to convert from. Empty when no proxy is active.
|
||
type ProxyPatch struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Peers []*RemotePeerConfig `protobuf:"bytes,1,rep,name=peers,proto3" json:"peers,omitempty"`
|
||
OfflinePeers []*RemotePeerConfig `protobuf:"bytes,2,rep,name=offline_peers,json=offlinePeers,proto3" json:"offline_peers,omitempty"`
|
||
FirewallRules []*FirewallRule `protobuf:"bytes,3,rep,name=firewall_rules,json=firewallRules,proto3" json:"firewall_rules,omitempty"`
|
||
Routes []*Route `protobuf:"bytes,4,rep,name=routes,proto3" json:"routes,omitempty"`
|
||
RouteFirewallRules []*RouteFirewallRule `protobuf:"bytes,5,rep,name=route_firewall_rules,json=routeFirewallRules,proto3" json:"route_firewall_rules,omitempty"`
|
||
ForwardingRules []*ForwardingRule `protobuf:"bytes,6,rep,name=forwarding_rules,json=forwardingRules,proto3" json:"forwarding_rules,omitempty"`
|
||
}
|
||
|
||
func (x *ProxyPatch) Reset() {
|
||
*x = ProxyPatch{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[58]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *ProxyPatch) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ProxyPatch) ProtoMessage() {}
|
||
|
||
func (x *ProxyPatch) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[58]
|
||
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 ProxyPatch.ProtoReflect.Descriptor instead.
|
||
func (*ProxyPatch) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{58}
|
||
}
|
||
|
||
func (x *ProxyPatch) GetPeers() []*RemotePeerConfig {
|
||
if x != nil {
|
||
return x.Peers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProxyPatch) GetOfflinePeers() []*RemotePeerConfig {
|
||
if x != nil {
|
||
return x.OfflinePeers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProxyPatch) GetFirewallRules() []*FirewallRule {
|
||
if x != nil {
|
||
return x.FirewallRules
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProxyPatch) GetRoutes() []*Route {
|
||
if x != nil {
|
||
return x.Routes
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProxyPatch) GetRouteFirewallRules() []*RouteFirewallRule {
|
||
if x != nil {
|
||
return x.RouteFirewallRules
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProxyPatch) GetForwardingRules() []*ForwardingRule {
|
||
if x != nil {
|
||
return x.ForwardingRules
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// AccountSettingsCompact carries the account-level settings the client needs
|
||
// to evaluate locally. Mirrors the subset of types.AccountSettingsInfo that
|
||
// Calculate() actually reads — login-expiration (used to filter expired
|
||
// peers). Inactivity expiration is purely server-side bookkeeping and is not
|
||
// shipped.
|
||
type AccountSettingsCompact struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
PeerLoginExpirationEnabled bool `protobuf:"varint,1,opt,name=peer_login_expiration_enabled,json=peerLoginExpirationEnabled,proto3" json:"peer_login_expiration_enabled,omitempty"`
|
||
// Login expiration window. Unit is nanoseconds (matches time.Duration).
|
||
PeerLoginExpirationNs int64 `protobuf:"varint,2,opt,name=peer_login_expiration_ns,json=peerLoginExpirationNs,proto3" json:"peer_login_expiration_ns,omitempty"`
|
||
}
|
||
|
||
func (x *AccountSettingsCompact) Reset() {
|
||
*x = AccountSettingsCompact{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[59]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *AccountSettingsCompact) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*AccountSettingsCompact) ProtoMessage() {}
|
||
|
||
func (x *AccountSettingsCompact) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[59]
|
||
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 AccountSettingsCompact.ProtoReflect.Descriptor instead.
|
||
func (*AccountSettingsCompact) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{59}
|
||
}
|
||
|
||
func (x *AccountSettingsCompact) GetPeerLoginExpirationEnabled() bool {
|
||
if x != nil {
|
||
return x.PeerLoginExpirationEnabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *AccountSettingsCompact) GetPeerLoginExpirationNs() int64 {
|
||
if x != nil {
|
||
return x.PeerLoginExpirationNs
|
||
}
|
||
return 0
|
||
}
|
||
|
||
// AccountNetwork is the account-level overlay metadata. Mirrors types.Network
|
||
// so the client can populate NetworkMap.Network without a server round-trip.
|
||
type AccountNetwork struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Identifier string `protobuf:"bytes,1,opt,name=identifier,proto3" json:"identifier,omitempty"`
|
||
// IPv4 overlay subnet in CIDR form (e.g. "100.64.0.0/16").
|
||
NetCidr string `protobuf:"bytes,2,opt,name=net_cidr,json=netCidr,proto3" json:"net_cidr,omitempty"`
|
||
// IPv6 ULA overlay subnet in CIDR form (e.g. "fd00:4e42::/64"). Empty when
|
||
// the account has no IPv6 overlay yet.
|
||
NetV6Cidr string `protobuf:"bytes,3,opt,name=net_v6_cidr,json=netV6Cidr,proto3" json:"net_v6_cidr,omitempty"`
|
||
Dns string `protobuf:"bytes,4,opt,name=dns,proto3" json:"dns,omitempty"`
|
||
Serial uint64 `protobuf:"varint,5,opt,name=serial,proto3" json:"serial,omitempty"`
|
||
}
|
||
|
||
func (x *AccountNetwork) Reset() {
|
||
*x = AccountNetwork{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[60]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *AccountNetwork) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*AccountNetwork) ProtoMessage() {}
|
||
|
||
func (x *AccountNetwork) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[60]
|
||
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 AccountNetwork.ProtoReflect.Descriptor instead.
|
||
func (*AccountNetwork) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{60}
|
||
}
|
||
|
||
func (x *AccountNetwork) GetIdentifier() string {
|
||
if x != nil {
|
||
return x.Identifier
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AccountNetwork) GetNetCidr() string {
|
||
if x != nil {
|
||
return x.NetCidr
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AccountNetwork) GetNetV6Cidr() string {
|
||
if x != nil {
|
||
return x.NetV6Cidr
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AccountNetwork) GetDns() string {
|
||
if x != nil {
|
||
return x.Dns
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AccountNetwork) GetSerial() uint64 {
|
||
if x != nil {
|
||
return x.Serial
|
||
}
|
||
return 0
|
||
}
|
||
|
||
// NetworkMapComponentsDelta is reserved for the incremental update
|
||
// protocol. Field numbers 1–100 are pre-allocated to keep room for the
|
||
// planned event types without needing a renumber.
|
||
type NetworkMapComponentsDelta struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
}
|
||
|
||
func (x *NetworkMapComponentsDelta) Reset() {
|
||
*x = NetworkMapComponentsDelta{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[61]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *NetworkMapComponentsDelta) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*NetworkMapComponentsDelta) ProtoMessage() {}
|
||
|
||
func (x *NetworkMapComponentsDelta) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[61]
|
||
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 NetworkMapComponentsDelta.ProtoReflect.Descriptor instead.
|
||
func (*NetworkMapComponentsDelta) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{61}
|
||
}
|
||
|
||
// PeerCompact is the wire-shape of a remote peer used by the component
|
||
// format. It carries every field of types.Peer that the client's local
|
||
// Calculate() reads — including the trio needed to evaluate
|
||
// LoginExpired() (added_with_sso_login + login_expiration_enabled +
|
||
// last_login_unix_nano). Fields the client does not consume (Status,
|
||
// CreatedAt, etc.) are not shipped.
|
||
type PeerCompact struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// Raw 32-byte WireGuard public key (no base64 wrapping).
|
||
WgPubKey []byte `protobuf:"bytes,1,opt,name=wg_pub_key,json=wgPubKey,proto3" json:"wg_pub_key,omitempty"`
|
||
// Raw 4-byte IPv4 overlay address. Always a /32 host route, so no prefix
|
||
// byte is needed.
|
||
Ip []byte `protobuf:"bytes,2,opt,name=ip,proto3" json:"ip,omitempty"`
|
||
// Raw 16-byte IPv6 overlay address; always a /128 host route. Empty when
|
||
// the peer has no IPv6 overlay address.
|
||
Ipv6 []byte `protobuf:"bytes,3,opt,name=ipv6,proto3" json:"ipv6,omitempty"`
|
||
// Raw SSH public key bytes (or empty).
|
||
SshPubKey []byte `protobuf:"bytes,4,opt,name=ssh_pub_key,json=sshPubKey,proto3" json:"ssh_pub_key,omitempty"`
|
||
// DNS label without the account's domain suffix. Full FQDN is
|
||
// dns_label + "." + NetworkMapComponentsFull.dns_domain.
|
||
DnsLabel string `protobuf:"bytes,5,opt,name=dns_label,json=dnsLabel,proto3" json:"dns_label,omitempty"`
|
||
// Index into NetworkMapComponentsFull.agent_versions.
|
||
AgentVersionIdx uint32 `protobuf:"varint,6,opt,name=agent_version_idx,json=agentVersionIdx,proto3" json:"agent_version_idx,omitempty"`
|
||
// True iff the peer was added via SSO login (i.e., types.Peer.UserID is
|
||
// non-empty). Combined with login_expiration_enabled and
|
||
// last_login_unix_nano this lets the client reproduce
|
||
// (*Peer).LoginExpired() locally.
|
||
AddedWithSsoLogin bool `protobuf:"varint,7,opt,name=added_with_sso_login,json=addedWithSsoLogin,proto3" json:"added_with_sso_login,omitempty"`
|
||
// True when the peer's login can expire — mirrors
|
||
// types.Peer.LoginExpirationEnabled.
|
||
LoginExpirationEnabled bool `protobuf:"varint,8,opt,name=login_expiration_enabled,json=loginExpirationEnabled,proto3" json:"login_expiration_enabled,omitempty"`
|
||
// Unix-nanosecond timestamp of the peer's last login. 0 when the peer has
|
||
// never logged in (server stores nil; client treats 0 as "epoch", which
|
||
// makes a fresh peer immediately expired iff login_expiration_enabled is
|
||
// true — the same semantics as types.Peer.GetLastLogin).
|
||
LastLoginUnixNano int64 `protobuf:"varint,9,opt,name=last_login_unix_nano,json=lastLoginUnixNano,proto3" json:"last_login_unix_nano,omitempty"`
|
||
// True when the peer has an SSH server enabled locally. Used by the
|
||
// legacy SSH path in Calculate() (`policyRuleImpliesLegacySSH`): a rule
|
||
// with protocol ALL/TCP-with-SSH-ports activates SSH for the receiving
|
||
// peer when this bit is set, even without an explicit NetbirdSSH rule.
|
||
SshEnabled bool `protobuf:"varint,10,opt,name=ssh_enabled,json=sshEnabled,proto3" json:"ssh_enabled,omitempty"`
|
||
// Mirror of types.Peer.SupportsIPv6() — !Meta.Flags.DisableIPv6 &&
|
||
// HasCapability(PeerCapabilityIPv6Overlay). Used by the local peer's
|
||
// Calculate() when deciding whether to emit IPv6 firewall rules
|
||
// (appendIPv6FirewallRule) against this peer's IPv6 address.
|
||
SupportsIpv6 bool `protobuf:"varint,12,opt,name=supports_ipv6,json=supportsIpv6,proto3" json:"supports_ipv6,omitempty"`
|
||
// Mirror of types.Peer.SupportsSourcePrefixes() —
|
||
// HasCapability(PeerCapabilitySourcePrefixes). Determines whether the
|
||
// local peer's Calculate() emits SourcePrefixes alongside legacy PeerIP
|
||
// fields in proto.FirewallRule.
|
||
SupportsSourcePrefixes bool `protobuf:"varint,13,opt,name=supports_source_prefixes,json=supportsSourcePrefixes,proto3" json:"supports_source_prefixes,omitempty"`
|
||
// Mirror of types.Peer.Meta.Flags.ServerSSHAllowed. Read by Calculate()
|
||
// when expanding TCP port-22 firewall rules — the native SSH companion
|
||
// (port 22022) is only added when this flag is set and the peer agent
|
||
// version supports it.
|
||
ServerSshAllowed bool `protobuf:"varint,14,opt,name=server_ssh_allowed,json=serverSshAllowed,proto3" json:"server_ssh_allowed,omitempty"`
|
||
}
|
||
|
||
func (x *PeerCompact) Reset() {
|
||
*x = PeerCompact{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[62]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *PeerCompact) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PeerCompact) ProtoMessage() {}
|
||
|
||
func (x *PeerCompact) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[62]
|
||
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 PeerCompact.ProtoReflect.Descriptor instead.
|
||
func (*PeerCompact) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{62}
|
||
}
|
||
|
||
func (x *PeerCompact) GetWgPubKey() []byte {
|
||
if x != nil {
|
||
return x.WgPubKey
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PeerCompact) GetIp() []byte {
|
||
if x != nil {
|
||
return x.Ip
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PeerCompact) GetIpv6() []byte {
|
||
if x != nil {
|
||
return x.Ipv6
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PeerCompact) GetSshPubKey() []byte {
|
||
if x != nil {
|
||
return x.SshPubKey
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PeerCompact) GetDnsLabel() string {
|
||
if x != nil {
|
||
return x.DnsLabel
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PeerCompact) GetAgentVersionIdx() uint32 {
|
||
if x != nil {
|
||
return x.AgentVersionIdx
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *PeerCompact) GetAddedWithSsoLogin() bool {
|
||
if x != nil {
|
||
return x.AddedWithSsoLogin
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *PeerCompact) GetLoginExpirationEnabled() bool {
|
||
if x != nil {
|
||
return x.LoginExpirationEnabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *PeerCompact) GetLastLoginUnixNano() int64 {
|
||
if x != nil {
|
||
return x.LastLoginUnixNano
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *PeerCompact) GetSshEnabled() bool {
|
||
if x != nil {
|
||
return x.SshEnabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *PeerCompact) GetSupportsIpv6() bool {
|
||
if x != nil {
|
||
return x.SupportsIpv6
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *PeerCompact) GetSupportsSourcePrefixes() bool {
|
||
if x != nil {
|
||
return x.SupportsSourcePrefixes
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *PeerCompact) GetServerSshAllowed() bool {
|
||
if x != nil {
|
||
return x.ServerSshAllowed
|
||
}
|
||
return false
|
||
}
|
||
|
||
// PolicyCompact is the compact form of a policy rule. Group references use
|
||
// the per-account integer ids from account_seq_counters; the client resolves
|
||
// them against NetworkMapComponentsFull.groups. Direction is derived per-peer
|
||
// on the client (ingress when the peer is in destination_group_ids, egress
|
||
// when in source_group_ids; both when bidirectional).
|
||
type PolicyCompact struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// Per-account integer id (matches policies.account_seq_id). Used as a
|
||
// stable reference for ResourcePoliciesMap.indexes and future delta
|
||
// updates.
|
||
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
|
||
Action RuleAction `protobuf:"varint,2,opt,name=action,proto3,enum=management.RuleAction" json:"action,omitempty"`
|
||
Protocol RuleProtocol `protobuf:"varint,3,opt,name=protocol,proto3,enum=management.RuleProtocol" json:"protocol,omitempty"`
|
||
Bidirectional bool `protobuf:"varint,4,opt,name=bidirectional,proto3" json:"bidirectional,omitempty"`
|
||
// Single ports referenced by the rule.
|
||
Ports []uint32 `protobuf:"varint,5,rep,packed,name=ports,proto3" json:"ports,omitempty"`
|
||
// Port ranges (start..end) referenced by the rule.
|
||
PortRanges []*PortInfo_Range `protobuf:"bytes,6,rep,name=port_ranges,json=portRanges,proto3" json:"port_ranges,omitempty"`
|
||
// Group ids (account_seq_id) of source / destination groups.
|
||
SourceGroupIds []uint32 `protobuf:"varint,7,rep,packed,name=source_group_ids,json=sourceGroupIds,proto3" json:"source_group_ids,omitempty"`
|
||
DestinationGroupIds []uint32 `protobuf:"varint,8,rep,packed,name=destination_group_ids,json=destinationGroupIds,proto3" json:"destination_group_ids,omitempty"`
|
||
// SSH authorization fields. PolicyRule.AuthorizedGroups maps the rule's
|
||
// applicable group ids (account_seq_id) to a list of local-user names —
|
||
// when a peer in one of those groups is the SSH destination, the named
|
||
// local users gain access. AuthorizedUser is the single-user form
|
||
// (legacy: rule scopes SSH to one specific user id).
|
||
//
|
||
// Both fields are only consumed by Calculate() when the rule's protocol
|
||
// is NetbirdSSH (or the legacy implicit-SSH heuristic).
|
||
AuthorizedGroups map[uint32]*UserNameList `protobuf:"bytes,10,rep,name=authorized_groups,json=authorizedGroups,proto3" json:"authorized_groups,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
||
AuthorizedUser string `protobuf:"bytes,11,opt,name=authorized_user,json=authorizedUser,proto3" json:"authorized_user,omitempty"`
|
||
// Resource-typed rule sources/destinations. When a rule targets a specific
|
||
// peer (rather than groups), Calculate() reads SourceResource /
|
||
// DestinationResource — without these the rule's connection resources
|
||
// can't be produced on the client. ResourceCompact's peer_index refers to
|
||
// NetworkMapComponentsFull.peers; type is the raw ResourceType string
|
||
// ("peer", "host", "subnet", "domain"). Only "peer" is meaningful for
|
||
// Calculate's resource-typed rule path today.
|
||
SourceResource *ResourceCompact `protobuf:"bytes,12,opt,name=source_resource,json=sourceResource,proto3" json:"source_resource,omitempty"`
|
||
DestinationResource *ResourceCompact `protobuf:"bytes,13,opt,name=destination_resource,json=destinationResource,proto3" json:"destination_resource,omitempty"`
|
||
// Posture-check seq ids gating this policy's source peers. Calculate()
|
||
// reads them when filtering rule peers (peers that fail any listed check
|
||
// are dropped from sourcePeers). Match keys in
|
||
// NetworkMapComponentsFull.posture_failed_peers.
|
||
SourcePostureCheckSeqIds []uint32 `protobuf:"varint,15,rep,packed,name=source_posture_check_seq_ids,json=sourcePostureCheckSeqIds,proto3" json:"source_posture_check_seq_ids,omitempty"`
|
||
}
|
||
|
||
func (x *PolicyCompact) Reset() {
|
||
*x = PolicyCompact{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[63]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *PolicyCompact) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PolicyCompact) ProtoMessage() {}
|
||
|
||
func (x *PolicyCompact) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[63]
|
||
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 PolicyCompact.ProtoReflect.Descriptor instead.
|
||
func (*PolicyCompact) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{63}
|
||
}
|
||
|
||
func (x *PolicyCompact) GetId() uint32 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *PolicyCompact) GetAction() RuleAction {
|
||
if x != nil {
|
||
return x.Action
|
||
}
|
||
return RuleAction_ACCEPT
|
||
}
|
||
|
||
func (x *PolicyCompact) GetProtocol() RuleProtocol {
|
||
if x != nil {
|
||
return x.Protocol
|
||
}
|
||
return RuleProtocol_UNKNOWN
|
||
}
|
||
|
||
func (x *PolicyCompact) GetBidirectional() bool {
|
||
if x != nil {
|
||
return x.Bidirectional
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *PolicyCompact) GetPorts() []uint32 {
|
||
if x != nil {
|
||
return x.Ports
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PolicyCompact) GetPortRanges() []*PortInfo_Range {
|
||
if x != nil {
|
||
return x.PortRanges
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PolicyCompact) GetSourceGroupIds() []uint32 {
|
||
if x != nil {
|
||
return x.SourceGroupIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PolicyCompact) GetDestinationGroupIds() []uint32 {
|
||
if x != nil {
|
||
return x.DestinationGroupIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PolicyCompact) GetAuthorizedGroups() map[uint32]*UserNameList {
|
||
if x != nil {
|
||
return x.AuthorizedGroups
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PolicyCompact) GetAuthorizedUser() string {
|
||
if x != nil {
|
||
return x.AuthorizedUser
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PolicyCompact) GetSourceResource() *ResourceCompact {
|
||
if x != nil {
|
||
return x.SourceResource
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PolicyCompact) GetDestinationResource() *ResourceCompact {
|
||
if x != nil {
|
||
return x.DestinationResource
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PolicyCompact) GetSourcePostureCheckSeqIds() []uint32 {
|
||
if x != nil {
|
||
return x.SourcePostureCheckSeqIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// ResourceCompact mirrors types.Resource. Used by PolicyCompact to carry
|
||
// rule.SourceResource / rule.DestinationResource when the rule targets a
|
||
// specific resource (typically a peer) rather than groups.
|
||
// peer_index_set tells whether peer_index is valid (proto3 uint32 cannot
|
||
// disambiguate "0" from "unset"); set only when type == "peer".
|
||
type ResourceCompact struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
|
||
PeerIndexSet bool `protobuf:"varint,2,opt,name=peer_index_set,json=peerIndexSet,proto3" json:"peer_index_set,omitempty"`
|
||
PeerIndex uint32 `protobuf:"varint,3,opt,name=peer_index,json=peerIndex,proto3" json:"peer_index,omitempty"`
|
||
}
|
||
|
||
func (x *ResourceCompact) Reset() {
|
||
*x = ResourceCompact{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[64]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *ResourceCompact) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ResourceCompact) ProtoMessage() {}
|
||
|
||
func (x *ResourceCompact) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[64]
|
||
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 ResourceCompact.ProtoReflect.Descriptor instead.
|
||
func (*ResourceCompact) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{64}
|
||
}
|
||
|
||
func (x *ResourceCompact) GetType() string {
|
||
if x != nil {
|
||
return x.Type
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ResourceCompact) GetPeerIndexSet() bool {
|
||
if x != nil {
|
||
return x.PeerIndexSet
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *ResourceCompact) GetPeerIndex() uint32 {
|
||
if x != nil {
|
||
return x.PeerIndex
|
||
}
|
||
return 0
|
||
}
|
||
|
||
// UserNameList is a list of local-user names — used as the value type in
|
||
// PolicyCompact.authorized_groups.
|
||
type UserNameList struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Names []string `protobuf:"bytes,1,rep,name=names,proto3" json:"names,omitempty"`
|
||
}
|
||
|
||
func (x *UserNameList) Reset() {
|
||
*x = UserNameList{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[65]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *UserNameList) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*UserNameList) ProtoMessage() {}
|
||
|
||
func (x *UserNameList) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[65]
|
||
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 UserNameList.ProtoReflect.Descriptor instead.
|
||
func (*UserNameList) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{65}
|
||
}
|
||
|
||
func (x *UserNameList) GetNames() []string {
|
||
if x != nil {
|
||
return x.Names
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// GroupCompact is the wire-shape of a group: per-account integer id, optional
|
||
// name, and indexes into NetworkMapComponentsFull.peers identifying members.
|
||
type GroupCompact struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// Per-account integer id (matches groups.account_seq_id). Used by
|
||
// PolicyCompact.source_group_ids / destination_group_ids.
|
||
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
|
||
// Group name; only sent when non-empty (clients use it for diagnostics).
|
||
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
||
// Indexes into NetworkMapComponentsFull.peers.
|
||
PeerIndexes []uint32 `protobuf:"varint,3,rep,packed,name=peer_indexes,json=peerIndexes,proto3" json:"peer_indexes,omitempty"`
|
||
}
|
||
|
||
func (x *GroupCompact) Reset() {
|
||
*x = GroupCompact{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[66]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *GroupCompact) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*GroupCompact) ProtoMessage() {}
|
||
|
||
func (x *GroupCompact) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[66]
|
||
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 GroupCompact.ProtoReflect.Descriptor instead.
|
||
func (*GroupCompact) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{66}
|
||
}
|
||
|
||
func (x *GroupCompact) GetId() uint32 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *GroupCompact) GetName() string {
|
||
if x != nil {
|
||
return x.Name
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *GroupCompact) GetPeerIndexes() []uint32 {
|
||
if x != nil {
|
||
return x.PeerIndexes
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// DNSSettingsCompact mirrors types.DNSSettings.
|
||
type DNSSettingsCompact struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// Group ids (account_seq_id) whose DNS management is disabled.
|
||
DisabledManagementGroupIds []uint32 `protobuf:"varint,1,rep,packed,name=disabled_management_group_ids,json=disabledManagementGroupIds,proto3" json:"disabled_management_group_ids,omitempty"`
|
||
}
|
||
|
||
func (x *DNSSettingsCompact) Reset() {
|
||
*x = DNSSettingsCompact{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[67]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *DNSSettingsCompact) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*DNSSettingsCompact) ProtoMessage() {}
|
||
|
||
func (x *DNSSettingsCompact) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[67]
|
||
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 DNSSettingsCompact.ProtoReflect.Descriptor instead.
|
||
func (*DNSSettingsCompact) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{67}
|
||
}
|
||
|
||
func (x *DNSSettingsCompact) GetDisabledManagementGroupIds() []uint32 {
|
||
if x != nil {
|
||
return x.DisabledManagementGroupIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// RouteRaw mirrors *route.Route (the domain type), trimmed to fields that
|
||
// types.NetworkMapComponents.Calculate() reads. Group references are
|
||
// account_seq_ids; the routing peer (when set) is referenced by index into
|
||
// NetworkMapComponentsFull.peers.
|
||
type RouteRaw struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// Per-account integer id (matches routes.account_seq_id).
|
||
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
|
||
NetId string `protobuf:"bytes,2,opt,name=net_id,json=netId,proto3" json:"net_id,omitempty"`
|
||
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
|
||
// Either network_cidr (e.g. "10.0.0.0/16") or domains is set, not both.
|
||
NetworkCidr string `protobuf:"bytes,4,opt,name=network_cidr,json=networkCidr,proto3" json:"network_cidr,omitempty"`
|
||
Domains []string `protobuf:"bytes,5,rep,name=domains,proto3" json:"domains,omitempty"`
|
||
KeepRoute bool `protobuf:"varint,6,opt,name=keep_route,json=keepRoute,proto3" json:"keep_route,omitempty"`
|
||
// Routing peer reference: peer_index_set tells whether peer_index is valid
|
||
// (proto3 uint32 cannot disambiguate "0" from "unset"). Mutually exclusive
|
||
// with peer_group_ids.
|
||
//
|
||
// peer_index decodes back to types.Peer.ID (the peer's xid string), NOT
|
||
// to its WireGuard public key. This matches the server-side data flow:
|
||
// c.Routes carry route.Peer = peer.ID, and getRoutingPeerRoutes mutates
|
||
// it to peer.Key only after the route has been admitted to the network
|
||
// map. Decoders MUST set Route.Peer = peer.ID; the legacy Calculate()
|
||
// path will substitute the WG key downstream.
|
||
PeerIndexSet bool `protobuf:"varint,7,opt,name=peer_index_set,json=peerIndexSet,proto3" json:"peer_index_set,omitempty"`
|
||
PeerIndex uint32 `protobuf:"varint,8,opt,name=peer_index,json=peerIndex,proto3" json:"peer_index,omitempty"`
|
||
PeerGroupIds []uint32 `protobuf:"varint,9,rep,packed,name=peer_group_ids,json=peerGroupIds,proto3" json:"peer_group_ids,omitempty"`
|
||
NetworkType int32 `protobuf:"varint,10,opt,name=network_type,json=networkType,proto3" json:"network_type,omitempty"`
|
||
Masquerade bool `protobuf:"varint,11,opt,name=masquerade,proto3" json:"masquerade,omitempty"`
|
||
Metric int32 `protobuf:"varint,12,opt,name=metric,proto3" json:"metric,omitempty"`
|
||
Enabled bool `protobuf:"varint,13,opt,name=enabled,proto3" json:"enabled,omitempty"`
|
||
GroupIds []uint32 `protobuf:"varint,14,rep,packed,name=group_ids,json=groupIds,proto3" json:"group_ids,omitempty"`
|
||
AccessControlGroupIds []uint32 `protobuf:"varint,15,rep,packed,name=access_control_group_ids,json=accessControlGroupIds,proto3" json:"access_control_group_ids,omitempty"`
|
||
SkipAutoApply bool `protobuf:"varint,16,opt,name=skip_auto_apply,json=skipAutoApply,proto3" json:"skip_auto_apply,omitempty"`
|
||
}
|
||
|
||
func (x *RouteRaw) Reset() {
|
||
*x = RouteRaw{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[68]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *RouteRaw) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RouteRaw) ProtoMessage() {}
|
||
|
||
func (x *RouteRaw) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[68]
|
||
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 RouteRaw.ProtoReflect.Descriptor instead.
|
||
func (*RouteRaw) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{68}
|
||
}
|
||
|
||
func (x *RouteRaw) GetId() uint32 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *RouteRaw) GetNetId() string {
|
||
if x != nil {
|
||
return x.NetId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RouteRaw) GetDescription() string {
|
||
if x != nil {
|
||
return x.Description
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RouteRaw) GetNetworkCidr() string {
|
||
if x != nil {
|
||
return x.NetworkCidr
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RouteRaw) GetDomains() []string {
|
||
if x != nil {
|
||
return x.Domains
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RouteRaw) GetKeepRoute() bool {
|
||
if x != nil {
|
||
return x.KeepRoute
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *RouteRaw) GetPeerIndexSet() bool {
|
||
if x != nil {
|
||
return x.PeerIndexSet
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *RouteRaw) GetPeerIndex() uint32 {
|
||
if x != nil {
|
||
return x.PeerIndex
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *RouteRaw) GetPeerGroupIds() []uint32 {
|
||
if x != nil {
|
||
return x.PeerGroupIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RouteRaw) GetNetworkType() int32 {
|
||
if x != nil {
|
||
return x.NetworkType
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *RouteRaw) GetMasquerade() bool {
|
||
if x != nil {
|
||
return x.Masquerade
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *RouteRaw) GetMetric() int32 {
|
||
if x != nil {
|
||
return x.Metric
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *RouteRaw) GetEnabled() bool {
|
||
if x != nil {
|
||
return x.Enabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *RouteRaw) GetGroupIds() []uint32 {
|
||
if x != nil {
|
||
return x.GroupIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RouteRaw) GetAccessControlGroupIds() []uint32 {
|
||
if x != nil {
|
||
return x.AccessControlGroupIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RouteRaw) GetSkipAutoApply() bool {
|
||
if x != nil {
|
||
return x.SkipAutoApply
|
||
}
|
||
return false
|
||
}
|
||
|
||
// NameServerGroupRaw mirrors *nbdns.NameServerGroup. Distinct from the
|
||
// legacy NameServerGroup (which is the wire-trimmed shape consumed by
|
||
// proto.DNSConfig and lacks the Name/Description/Groups/Enabled fields).
|
||
type NameServerGroupRaw struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // nameserver_groups.account_seq_id
|
||
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
||
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
|
||
// Reuses the legacy NameServer wire shape (IP as string).
|
||
Nameservers []*NameServer `protobuf:"bytes,4,rep,name=nameservers,proto3" json:"nameservers,omitempty"`
|
||
// Group ids (account_seq_id) the NSG distributes nameservers to.
|
||
GroupIds []uint32 `protobuf:"varint,5,rep,packed,name=group_ids,json=groupIds,proto3" json:"group_ids,omitempty"`
|
||
Primary bool `protobuf:"varint,6,opt,name=primary,proto3" json:"primary,omitempty"`
|
||
Domains []string `protobuf:"bytes,7,rep,name=domains,proto3" json:"domains,omitempty"`
|
||
Enabled bool `protobuf:"varint,8,opt,name=enabled,proto3" json:"enabled,omitempty"`
|
||
SearchDomainsEnabled bool `protobuf:"varint,9,opt,name=search_domains_enabled,json=searchDomainsEnabled,proto3" json:"search_domains_enabled,omitempty"`
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) Reset() {
|
||
*x = NameServerGroupRaw{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[69]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*NameServerGroupRaw) ProtoMessage() {}
|
||
|
||
func (x *NameServerGroupRaw) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[69]
|
||
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 NameServerGroupRaw.ProtoReflect.Descriptor instead.
|
||
func (*NameServerGroupRaw) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{69}
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetId() uint32 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetName() string {
|
||
if x != nil {
|
||
return x.Name
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetDescription() string {
|
||
if x != nil {
|
||
return x.Description
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetNameservers() []*NameServer {
|
||
if x != nil {
|
||
return x.Nameservers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetGroupIds() []uint32 {
|
||
if x != nil {
|
||
return x.GroupIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetPrimary() bool {
|
||
if x != nil {
|
||
return x.Primary
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetDomains() []string {
|
||
if x != nil {
|
||
return x.Domains
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetEnabled() bool {
|
||
if x != nil {
|
||
return x.Enabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *NameServerGroupRaw) GetSearchDomainsEnabled() bool {
|
||
if x != nil {
|
||
return x.SearchDomainsEnabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
// NetworkResourceRaw mirrors *resourceTypes.NetworkResource.
|
||
//
|
||
// INCOMPATIBLE WIRE CHANGE: field 2 changed from `string network_id` (xid)
|
||
// to `uint32 network_seq` without a `reserved` entry. Safe only because
|
||
// capability=3 has never been released — every cap=3 producer and consumer
|
||
// carries the same regenerated descriptor. Do NOT reuse this pattern once
|
||
// cap=3 ships.
|
||
type NetworkResourceRaw struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // network_resources.account_seq_id
|
||
NetworkSeq uint32 `protobuf:"varint,2,opt,name=network_seq,json=networkSeq,proto3" json:"network_seq,omitempty"` // networks.account_seq_id (replaces xid)
|
||
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
|
||
Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
|
||
// Resource type: "host" / "subnet" / "domain".
|
||
Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type,omitempty"`
|
||
Address string `protobuf:"bytes,6,opt,name=address,proto3" json:"address,omitempty"`
|
||
DomainValue string `protobuf:"bytes,7,opt,name=domain_value,json=domainValue,proto3" json:"domain_value,omitempty"` // resource.Domain
|
||
PrefixCidr string `protobuf:"bytes,8,opt,name=prefix_cidr,json=prefixCidr,proto3" json:"prefix_cidr,omitempty"`
|
||
Enabled bool `protobuf:"varint,9,opt,name=enabled,proto3" json:"enabled,omitempty"`
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) Reset() {
|
||
*x = NetworkResourceRaw{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[70]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*NetworkResourceRaw) ProtoMessage() {}
|
||
|
||
func (x *NetworkResourceRaw) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[70]
|
||
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 NetworkResourceRaw.ProtoReflect.Descriptor instead.
|
||
func (*NetworkResourceRaw) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{70}
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetId() uint32 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetNetworkSeq() uint32 {
|
||
if x != nil {
|
||
return x.NetworkSeq
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetName() string {
|
||
if x != nil {
|
||
return x.Name
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetDescription() string {
|
||
if x != nil {
|
||
return x.Description
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetType() string {
|
||
if x != nil {
|
||
return x.Type
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetAddress() string {
|
||
if x != nil {
|
||
return x.Address
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetDomainValue() string {
|
||
if x != nil {
|
||
return x.DomainValue
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetPrefixCidr() string {
|
||
if x != nil {
|
||
return x.PrefixCidr
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *NetworkResourceRaw) GetEnabled() bool {
|
||
if x != nil {
|
||
return x.Enabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
// NetworkRouterList carries the routers backing one network.
|
||
type NetworkRouterList struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
// Routers in this network, keyed by peer_index (the routing peer).
|
||
Entries []*NetworkRouterEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
|
||
}
|
||
|
||
func (x *NetworkRouterList) Reset() {
|
||
*x = NetworkRouterList{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[71]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *NetworkRouterList) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*NetworkRouterList) ProtoMessage() {}
|
||
|
||
func (x *NetworkRouterList) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[71]
|
||
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 NetworkRouterList.ProtoReflect.Descriptor instead.
|
||
func (*NetworkRouterList) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{71}
|
||
}
|
||
|
||
func (x *NetworkRouterList) GetEntries() []*NetworkRouterEntry {
|
||
if x != nil {
|
||
return x.Entries
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// NetworkRouterEntry mirrors a single *routerTypes.NetworkRouter; the routing
|
||
// peer is referenced by index into NetworkMapComponentsFull.peers.
|
||
type NetworkRouterEntry struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // network_routers.account_seq_id
|
||
PeerIndex uint32 `protobuf:"varint,2,opt,name=peer_index,json=peerIndex,proto3" json:"peer_index,omitempty"`
|
||
PeerIndexSet bool `protobuf:"varint,3,opt,name=peer_index_set,json=peerIndexSet,proto3" json:"peer_index_set,omitempty"`
|
||
PeerGroupIds []uint32 `protobuf:"varint,4,rep,packed,name=peer_group_ids,json=peerGroupIds,proto3" json:"peer_group_ids,omitempty"`
|
||
Masquerade bool `protobuf:"varint,5,opt,name=masquerade,proto3" json:"masquerade,omitempty"`
|
||
Metric int32 `protobuf:"varint,6,opt,name=metric,proto3" json:"metric,omitempty"`
|
||
Enabled bool `protobuf:"varint,7,opt,name=enabled,proto3" json:"enabled,omitempty"`
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) Reset() {
|
||
*x = NetworkRouterEntry{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[72]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*NetworkRouterEntry) ProtoMessage() {}
|
||
|
||
func (x *NetworkRouterEntry) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[72]
|
||
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 NetworkRouterEntry.ProtoReflect.Descriptor instead.
|
||
func (*NetworkRouterEntry) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{72}
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) GetId() uint32 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) GetPeerIndex() uint32 {
|
||
if x != nil {
|
||
return x.PeerIndex
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) GetPeerIndexSet() bool {
|
||
if x != nil {
|
||
return x.PeerIndexSet
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) GetPeerGroupIds() []uint32 {
|
||
if x != nil {
|
||
return x.PeerGroupIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) GetMasquerade() bool {
|
||
if x != nil {
|
||
return x.Masquerade
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) GetMetric() int32 {
|
||
if x != nil {
|
||
return x.Metric
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *NetworkRouterEntry) GetEnabled() bool {
|
||
if x != nil {
|
||
return x.Enabled
|
||
}
|
||
return false
|
||
}
|
||
|
||
// PolicyIndexes is a list of indexes into NetworkMapComponentsFull.policies.
|
||
type PolicyIndexes struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
Indexes []uint32 `protobuf:"varint,1,rep,packed,name=indexes,proto3" json:"indexes,omitempty"`
|
||
}
|
||
|
||
func (x *PolicyIndexes) Reset() {
|
||
*x = PolicyIndexes{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[73]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *PolicyIndexes) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PolicyIndexes) ProtoMessage() {}
|
||
|
||
func (x *PolicyIndexes) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[73]
|
||
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 PolicyIndexes.ProtoReflect.Descriptor instead.
|
||
func (*PolicyIndexes) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{73}
|
||
}
|
||
|
||
func (x *PolicyIndexes) GetIndexes() []uint32 {
|
||
if x != nil {
|
||
return x.Indexes
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// UserIDList is a list of user ids — used as the value type in
|
||
// NetworkMapComponentsFull.group_id_to_user_ids.
|
||
type UserIDList struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
UserIds []string `protobuf:"bytes,1,rep,name=user_ids,json=userIds,proto3" json:"user_ids,omitempty"`
|
||
}
|
||
|
||
func (x *UserIDList) Reset() {
|
||
*x = UserIDList{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[74]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *UserIDList) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*UserIDList) ProtoMessage() {}
|
||
|
||
func (x *UserIDList) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[74]
|
||
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 UserIDList.ProtoReflect.Descriptor instead.
|
||
func (*UserIDList) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{74}
|
||
}
|
||
|
||
func (x *UserIDList) GetUserIds() []string {
|
||
if x != nil {
|
||
return x.UserIds
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// PeerIndexSet is a set of peer indexes — used as the value type in
|
||
// NetworkMapComponentsFull.posture_failed_peers.
|
||
type PeerIndexSet struct {
|
||
state protoimpl.MessageState
|
||
sizeCache protoimpl.SizeCache
|
||
unknownFields protoimpl.UnknownFields
|
||
|
||
PeerIndexes []uint32 `protobuf:"varint,1,rep,packed,name=peer_indexes,json=peerIndexes,proto3" json:"peer_indexes,omitempty"`
|
||
}
|
||
|
||
func (x *PeerIndexSet) Reset() {
|
||
*x = PeerIndexSet{}
|
||
if protoimpl.UnsafeEnabled {
|
||
mi := &file_management_proto_msgTypes[75]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
}
|
||
|
||
func (x *PeerIndexSet) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PeerIndexSet) ProtoMessage() {}
|
||
|
||
func (x *PeerIndexSet) ProtoReflect() protoreflect.Message {
|
||
mi := &file_management_proto_msgTypes[75]
|
||
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 PeerIndexSet.ProtoReflect.Descriptor instead.
|
||
func (*PeerIndexSet) Descriptor() ([]byte, []int) {
|
||
return file_management_proto_rawDescGZIP(), []int{75}
|
||
}
|
||
|
||
func (x *PeerIndexSet) GetPeerIndexes() []uint32 {
|
||
if x != nil {
|
||
return x.PeerIndexes
|
||
}
|
||
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[77]
|
||
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[77]
|
||
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{47, 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, 0x6b, 0x0a,
|
||
0x0a, 0x4a, 0x6f, 0x62, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49,
|
||
0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x49, 0x44, 0x12, 0x36, 0x0a, 0x06, 0x62,
|
||
0x75, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6d, 0x61,
|
||
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x50,
|
||
0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x00, 0x52, 0x06, 0x62, 0x75, 0x6e,
|
||
0x64, 0x6c, 0x65, 0x42, 0x15, 0x0a, 0x13, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61, 0x64, 0x5f,
|
||
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0xac, 0x01, 0x0a, 0x0b, 0x4a,
|
||
0x6f, 0x62, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44,
|
||
0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x49, 0x44, 0x12, 0x2d, 0x0a, 0x06, 0x73, 0x74,
|
||
0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6d, 0x61, 0x6e,
|
||
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x61, 0x74, 0x75,
|
||
0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x61,
|
||
0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x52, 0x65, 0x61, 0x73, 0x6f,
|
||
0x6e, 0x12, 0x32, 0x0a, 0x06, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28,
|
||
0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x42,
|
||
0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x48, 0x00, 0x52, 0x06, 0x62,
|
||
0x75, 0x6e, 0x64, 0x6c, 0x65, 0x42, 0x12, 0x0a, 0x10, 0x77, 0x6f, 0x72, 0x6b, 0x6c, 0x6f, 0x61,
|
||
0x64, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x22, 0x9d, 0x01, 0x0a, 0x10, 0x42, 0x75,
|
||
0x6e, 0x64, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1d,
|
||
0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01,
|
||
0x28, 0x08, 0x52, 0x09, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x12, 0x26, 0x0a,
|
||
0x0f, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x5f, 0x74, 0x69, 0x6d, 0x65,
|
||
0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x6f,
|
||
0x72, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x6c, 0x6f, 0x67, 0x5f, 0x66, 0x69, 0x6c,
|
||
0x65, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6c,
|
||
0x6f, 0x67, 0x46, 0x69, 0x6c, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61,
|
||
0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
|
||
0x61, 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x69, 0x7a, 0x65, 0x22, 0x2d, 0x0a, 0x0c, 0x42, 0x75, 0x6e,
|
||
0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x70, 0x6c,
|
||
0x6f, 0x61, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75,
|
||
0x70, 0x6c, 0x6f, 0x61, 0x64, 0x4b, 0x65, 0x79, 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, 0xf3, 0x03, 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, 0x12, 0x46, 0x0a, 0x10, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
|
||
0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x18, 0x07, 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, 0x10, 0x73, 0x65, 0x73,
|
||
0x73, 0x69, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x12, 0x4e, 0x0a,
|
||
0x12, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x76, 0x65, 0x6c,
|
||
0x6f, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
|
||
0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61,
|
||
0x70, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x52, 0x12, 0x4e, 0x65, 0x74, 0x77, 0x6f,
|
||
0x72, 0x6b, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 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, 0xe1,
|
||
0x05, 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,
|
||
0x12, 0x26, 0x0a, 0x0e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4c, 0x41, 0x4e, 0x41, 0x63, 0x63, 0x65,
|
||
0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x4c,
|
||
0x41, 0x4e, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x6c, 0x6f, 0x63,
|
||
0x6b, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c,
|
||
0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x12, 0x34, 0x0a, 0x15,
|
||
0x6c, 0x61, 0x7a, 0x79, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e,
|
||
0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x6c, 0x61, 0x7a,
|
||
0x79, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c,
|
||
0x65, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x53, 0x48, 0x52,
|
||
0x6f, 0x6f, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c,
|
||
0x65, 0x53, 0x53, 0x48, 0x52, 0x6f, 0x6f, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x65, 0x6e, 0x61, 0x62,
|
||
0x6c, 0x65, 0x53, 0x53, 0x48, 0x53, 0x46, 0x54, 0x50, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52,
|
||
0x0d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x53, 0x48, 0x53, 0x46, 0x54, 0x50, 0x12, 0x42,
|
||
0x0a, 0x1c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x53, 0x48, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
|
||
0x50, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x0d,
|
||
0x20, 0x01, 0x28, 0x08, 0x52, 0x1c, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x53, 0x48, 0x4c,
|
||
0x6f, 0x63, 0x61, 0x6c, 0x50, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x69,
|
||
0x6e, 0x67, 0x12, 0x44, 0x0a, 0x1d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x53, 0x48, 0x52,
|
||
0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
|
||
0x69, 0x6e, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1d, 0x65, 0x6e, 0x61, 0x62, 0x6c,
|
||
0x65, 0x53, 0x53, 0x48, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x72, 0x74, 0x46, 0x6f,
|
||
0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x26, 0x0a, 0x0e, 0x64, 0x69, 0x73, 0x61,
|
||
0x62, 0x6c, 0x65, 0x53, 0x53, 0x48, 0x41, 0x75, 0x74, 0x68, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08,
|
||
0x52, 0x0e, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x53, 0x48, 0x41, 0x75, 0x74, 0x68,
|
||
0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x50, 0x76, 0x36, 0x18,
|
||
0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x49, 0x50,
|
||
0x76, 0x36, 0x22, 0xb2, 0x05, 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, 0x12, 0x3e, 0x0a, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62,
|
||
0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x1a, 0x2e,
|
||
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43,
|
||
0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x63, 0x61, 0x70, 0x61, 0x62,
|
||
0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0xfc, 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, 0x12, 0x46,
|
||
0x0a, 0x10, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73,
|
||
0x41, 0x74, 0x18, 0x04, 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, 0x10, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x78, 0x70,
|
||
0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x22, 0x66, 0x0a, 0x18, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64,
|
||
0x41, 0x75, 0x74, 0x68, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
|
||
0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x6a, 0x77, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01,
|
||
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6a, 0x77, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 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, 0x22, 0x63,
|
||
0x0a, 0x19, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x41, 0x75, 0x74, 0x68, 0x53, 0x65, 0x73, 0x73,
|
||
0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x10, 0x73,
|
||
0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x41, 0x74, 0x18,
|
||
0x01, 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, 0x10, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65,
|
||
0x73, 0x41, 0x74, 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, 0xb4, 0x02, 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, 0x12, 0x33, 0x0a, 0x07, 0x6d, 0x65, 0x74,
|
||
0x72, 0x69, 0x63, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6d, 0x61, 0x6e,
|
||
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x43,
|
||
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 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, 0x29, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x72,
|
||
0x69, 0x63, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61,
|
||
0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62,
|
||
0x6c, 0x65, 0x64, 0x22, 0xa3, 0x01, 0x0a, 0x09, 0x4a, 0x57, 0x54, 0x43, 0x6f, 0x6e, 0x66, 0x69,
|
||
0x67, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||
0x09, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x75, 0x64,
|
||
0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x75, 0x64,
|
||
0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6b, 0x65, 0x79, 0x73, 0x4c, 0x6f, 0x63,
|
||
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6b, 0x65, 0x79,
|
||
0x73, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x78,
|
||
0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x41, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b,
|
||
0x6d, 0x61, 0x78, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x41, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61,
|
||
0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09,
|
||
0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x73, 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, 0xf2, 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, 0x12, 0x10, 0x0a, 0x03,
|
||
0x6d, 0x74, 0x75, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6d, 0x74, 0x75, 0x12, 0x3e,
|
||
0x0a, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01,
|
||
0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
|
||
0x41, 0x75, 0x74, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e,
|
||
0x67, 0x73, 0x52, 0x0a, 0x61, 0x75, 0x74, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1d,
|
||
0x0a, 0x0a, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x76, 0x36, 0x18, 0x09, 0x20, 0x01,
|
||
0x28, 0x0c, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x56, 0x36, 0x22, 0x52, 0x0a,
|
||
0x12, 0x41, 0x75, 0x74, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69,
|
||
0x6e, 0x67, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01,
|
||
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a,
|
||
0x0c, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20,
|
||
0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74,
|
||
0x65, 0x22, 0xe8, 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, 0x12, 0x2d, 0x0a,
|
||
0x07, 0x73, 0x73, 0x68, 0x41, 0x75, 0x74, 0x68, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
|
||
0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x53, 0x48, 0x41,
|
||
0x75, 0x74, 0x68, 0x52, 0x07, 0x73, 0x73, 0x68, 0x41, 0x75, 0x74, 0x68, 0x22, 0x82, 0x02, 0x0a,
|
||
0x07, 0x53, 0x53, 0x48, 0x41, 0x75, 0x74, 0x68, 0x12, 0x20, 0x0a, 0x0b, 0x55, 0x73, 0x65, 0x72,
|
||
0x49, 0x44, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x55,
|
||
0x73, 0x65, 0x72, 0x49, 0x44, 0x43, 0x6c, 0x61, 0x69, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x41, 0x75,
|
||
0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x55, 0x73, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20,
|
||
0x03, 0x28, 0x0c, 0x52, 0x0f, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x55,
|
||
0x73, 0x65, 0x72, 0x73, 0x12, 0x4a, 0x0a, 0x0d, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f,
|
||
0x75, 0x73, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61,
|
||
0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x53, 0x48, 0x41, 0x75, 0x74, 0x68,
|
||
0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74,
|
||
0x72, 0x79, 0x52, 0x0c, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73,
|
||
0x1a, 0x5f, 0x0a, 0x11, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x55, 0x73, 0x65, 0x72, 0x73,
|
||
0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
|
||
0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
|
||
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
|
||
0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x55, 0x73, 0x65, 0x72, 0x49,
|
||
0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
|
||
0x01, 0x22, 0x2e, 0x0a, 0x12, 0x4d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x55, 0x73, 0x65, 0x72,
|
||
0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78,
|
||
0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 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,
|
||
0x7e, 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, 0x12, 0x33, 0x0a, 0x09, 0x6a, 0x77,
|
||
0x74, 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, 0x4a, 0x57, 0x54, 0x43, 0x6f,
|
||
0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x6a, 0x77, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 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, 0xbc, 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,
|
||
0x26, 0x0a, 0x0c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18,
|
||
0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 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,
|
||
0x93, 0x02, 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, 0x12,
|
||
0x24, 0x0a, 0x0d, 0x73, 0x6b, 0x69, 0x70, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x70, 0x70, 0x6c, 0x79,
|
||
0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x6b, 0x69, 0x70, 0x41, 0x75, 0x74, 0x6f,
|
||
0x41, 0x70, 0x70, 0x6c, 0x79, 0x22, 0xde, 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, 0x12, 0x28, 0x0a, 0x0d,
|
||
0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x04, 0x20,
|
||
0x01, 0x28, 0x03, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0d, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
|
||
0x65, 0x72, 0x50, 0x6f, 0x72, 0x74, 0x22, 0xb8, 0x01, 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, 0x12, 0x32, 0x0a, 0x14, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x44, 0x6f, 0x6d, 0x61, 0x69,
|
||
0x6e, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52,
|
||
0x14, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x44, 0x69, 0x73,
|
||
0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x4e, 0x6f, 0x6e, 0x41, 0x75, 0x74, 0x68,
|
||
0x6f, 0x72, 0x69, 0x74, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
|
||
0x10, 0x4e, 0x6f, 0x6e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x61, 0x74, 0x69, 0x76,
|
||
0x65, 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, 0xfb, 0x02, 0x0a, 0x0c, 0x46, 0x69, 0x72, 0x65,
|
||
0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x06, 0x50, 0x65, 0x65, 0x72,
|
||
0x49, 0x50, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 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, 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, 0x26, 0x0a,
|
||
0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x73, 0x18,
|
||
0x09, 0x20, 0x03, 0x28, 0x0c, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x72, 0x65,
|
||
0x66, 0x69, 0x78, 0x65, 0x73, 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, 0x22, 0x8b, 0x02, 0x0a, 0x14, 0x45, 0x78, 0x70, 0x6f,
|
||
0x73, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||
0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04,
|
||
0x70, 0x6f, 0x72, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
|
||
0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
|
||
0x65, 0x6e, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63,
|
||
0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x10, 0x0a, 0x03,
|
||
0x70, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x12, 0x1a,
|
||
0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
|
||
0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x75, 0x73,
|
||
0x65, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52,
|
||
0x0a, 0x75, 0x73, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x64,
|
||
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d,
|
||
0x61, 0x69, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x66,
|
||
0x69, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x61, 0x6d, 0x65, 0x50, 0x72,
|
||
0x65, 0x66, 0x69, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x5f, 0x70,
|
||
0x6f, 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74, 0x65,
|
||
0x6e, 0x50, 0x6f, 0x72, 0x74, 0x22, 0xa1, 0x01, 0x0a, 0x15, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65,
|
||
0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
|
||
0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
|
||
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61,
|
||
0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x72,
|
||
0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
|
||
0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20,
|
||
0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x2c, 0x0a, 0x12, 0x70,
|
||
0x6f, 0x72, 0x74, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65,
|
||
0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x75, 0x74,
|
||
0x6f, 0x41, 0x73, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x22, 0x2c, 0x0a, 0x12, 0x52, 0x65, 0x6e,
|
||
0x65, 0x77, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
|
||
0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||
0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x22, 0x15, 0x0a, 0x13, 0x52, 0x65, 0x6e, 0x65, 0x77,
|
||
0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2b,
|
||
0x0a, 0x11, 0x53, 0x74, 0x6f, 0x70, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75,
|
||
0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20,
|
||
0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x22, 0x14, 0x0a, 0x12, 0x53,
|
||
0x74, 0x6f, 0x70, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
||
0x65, 0x22, 0x9a, 0x01, 0x0a, 0x12, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70,
|
||
0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x04, 0x66, 0x75, 0x6c, 0x6c,
|
||
0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
|
||
0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x43, 0x6f,
|
||
0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x04,
|
||
0x66, 0x75, 0x6c, 0x6c, 0x12, 0x3d, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x18, 0x02, 0x20,
|
||
0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74,
|
||
0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
|
||
0x6e, 0x65, 0x6e, 0x74, 0x73, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x48, 0x00, 0x52, 0x05, 0x64, 0x65,
|
||
0x6c, 0x74, 0x61, 0x42, 0x09, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x22, 0x96,
|
||
0x0f, 0x0a, 0x18, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x43, 0x6f, 0x6d,
|
||
0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75, 0x6c, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73,
|
||
0x65, 0x72, 0x69, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x73, 0x65, 0x72,
|
||
0x69, 0x61, 0x6c, 0x12, 0x37, 0x0a, 0x0b, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x63, 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, 0x34, 0x0a, 0x07,
|
||
0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
|
||
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75,
|
||
0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f,
|
||
0x72, 0x6b, 0x12, 0x4d, 0x0a, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x73, 0x65,
|
||
0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d,
|
||
0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
|
||
0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74,
|
||
0x52, 0x0f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67,
|
||
0x73, 0x12, 0x41, 0x0a, 0x0c, 0x64, 0x6e, 0x73, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67,
|
||
0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65,
|
||
0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x44, 0x4e, 0x53, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
|
||
0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x52, 0x0b, 0x64, 0x6e, 0x73, 0x53, 0x65, 0x74, 0x74,
|
||
0x69, 0x6e, 0x67, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x64, 0x6e, 0x73, 0x5f, 0x64, 0x6f, 0x6d, 0x61,
|
||
0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x6e, 0x73, 0x44, 0x6f, 0x6d,
|
||
0x61, 0x69, 0x6e, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x7a, 0x6f,
|
||
0x6e, 0x65, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||
0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5a, 0x6f, 0x6e, 0x65, 0x44, 0x6f, 0x6d, 0x61, 0x69,
|
||
0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
|
||
0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74,
|
||
0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2d, 0x0a, 0x05, 0x70, 0x65, 0x65, 0x72,
|
||
0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65,
|
||
0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74,
|
||
0x52, 0x05, 0x70, 0x65, 0x65, 0x72, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x6f, 0x75, 0x74, 0x65,
|
||
0x72, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x0a,
|
||
0x20, 0x03, 0x28, 0x0d, 0x52, 0x11, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x50, 0x65, 0x65, 0x72,
|
||
0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63,
|
||
0x69, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
|
||
0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6d,
|
||
0x70, 0x61, 0x63, 0x74, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x12, 0x30,
|
||
0x0a, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18,
|
||
0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x47, 0x72, 0x6f, 0x75,
|
||
0x70, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x52, 0x06, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x73,
|
||
0x12, 0x2c, 0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b,
|
||
0x32, 0x14, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x6f,
|
||
0x75, 0x74, 0x65, 0x52, 0x61, 0x77, 0x52, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x4b,
|
||
0x0a, 0x11, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x67, 0x72, 0x6f,
|
||
0x75, 0x70, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 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, 0x61, 0x77, 0x52, 0x10, 0x6e, 0x61, 0x6d, 0x65, 0x73,
|
||
0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x40, 0x0a, 0x0f, 0x61,
|
||
0x6c, 0x6c, 0x5f, 0x64, 0x6e, 0x73, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x0f,
|
||
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, 0x0d,
|
||
0x61, 0x6c, 0x6c, 0x44, 0x6e, 0x73, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x3b, 0x0a,
|
||
0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x10,
|
||
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, 0x0c, 0x61, 0x63,
|
||
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x12, 0x4b, 0x0a, 0x11, 0x6e, 0x65,
|
||
0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18,
|
||
0x11, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65,
|
||
0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
||
0x63, 0x65, 0x52, 0x61, 0x77, 0x52, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65,
|
||
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x55, 0x0a, 0x0b, 0x72, 0x6f, 0x75, 0x74, 0x65,
|
||
0x72, 0x73, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x6d,
|
||
0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
|
||
0x6b, 0x4d, 0x61, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75,
|
||
0x6c, 0x6c, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74,
|
||
0x72, 0x79, 0x52, 0x0a, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x4d, 0x61, 0x70, 0x12, 0x71,
|
||
0x0a, 0x15, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63,
|
||
0x69, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x13, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3d, 0x2e,
|
||
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f,
|
||
0x72, 0x6b, 0x4d, 0x61, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x46,
|
||
0x75, 0x6c, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6c, 0x69,
|
||
0x63, 0x69, 0x65, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x13, 0x72, 0x65,
|
||
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x4d, 0x61,
|
||
0x70, 0x12, 0x6a, 0x0a, 0x14, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x5f, 0x74, 0x6f,
|
||
0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0b, 0x32,
|
||
0x3a, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74,
|
||
0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74,
|
||
0x73, 0x46, 0x75, 0x6c, 0x6c, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x54, 0x6f, 0x55,
|
||
0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x67, 0x72, 0x6f,
|
||
0x75, 0x70, 0x49, 0x64, 0x54, 0x6f, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x28, 0x0a,
|
||
0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64,
|
||
0x73, 0x18, 0x15, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64,
|
||
0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x6e, 0x0a, 0x14, 0x70, 0x6f, 0x73, 0x74, 0x75,
|
||
0x72, 0x65, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18,
|
||
0x16, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65,
|
||
0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x43, 0x6f, 0x6d,
|
||
0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x46, 0x75, 0x6c, 0x6c, 0x2e, 0x50, 0x6f, 0x73, 0x74,
|
||
0x75, 0x72, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x73, 0x45, 0x6e,
|
||
0x74, 0x72, 0x79, 0x52, 0x12, 0x70, 0x6f, 0x73, 0x74, 0x75, 0x72, 0x65, 0x46, 0x61, 0x69, 0x6c,
|
||
0x65, 0x64, 0x50, 0x65, 0x65, 0x72, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x64, 0x6e, 0x73, 0x5f, 0x66,
|
||
0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x65, 0x72, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x17, 0x20,
|
||
0x01, 0x28, 0x03, 0x52, 0x10, 0x64, 0x6e, 0x73, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x65,
|
||
0x72, 0x50, 0x6f, 0x72, 0x74, 0x12, 0x37, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x70,
|
||
0x61, 0x74, 0x63, 0x68, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e,
|
||
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x50, 0x61, 0x74,
|
||
0x63, 0x68, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x50, 0x61, 0x74, 0x63, 0x68, 0x12, 0x22,
|
||
0x0a, 0x0d, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x5f, 0x63, 0x6c, 0x61, 0x69, 0x6d, 0x18,
|
||
0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x43, 0x6c, 0x61,
|
||
0x69, 0x6d, 0x1a, 0x5c, 0x0a, 0x0f, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x73, 0x4d, 0x61, 0x70,
|
||
0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
|
||
0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
|
||
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d,
|
||
0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x6f, 0x75, 0x74, 0x65,
|
||
0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
|
||
0x1a, 0x61, 0x0a, 0x18, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x6c, 0x69,
|
||
0x63, 0x69, 0x65, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
|
||
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2f,
|
||
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
|
||
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63,
|
||
0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
|
||
0x02, 0x38, 0x01, 0x1a, 0x5b, 0x0a, 0x15, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x54, 0x6f,
|
||
0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
|
||
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c,
|
||
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e,
|
||
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x49,
|
||
0x44, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
|
||
0x1a, 0x5f, 0x0a, 0x17, 0x50, 0x6f, 0x73, 0x74, 0x75, 0x72, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x65,
|
||
0x64, 0x50, 0x65, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
|
||
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2e, 0x0a,
|
||
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d,
|
||
0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e,
|
||
0x64, 0x65, 0x78, 0x53, 0x65, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
|
||
0x01, 0x4a, 0x04, 0x08, 0x1a, 0x10, 0x33, 0x22, 0x87, 0x03, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x78,
|
||
0x79, 0x50, 0x61, 0x74, 0x63, 0x68, 0x12, 0x32, 0x0a, 0x05, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18,
|
||
0x01, 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, 0x05, 0x70, 0x65, 0x65, 0x72, 0x73, 0x12, 0x41, 0x0a, 0x0d, 0x6f, 0x66,
|
||
0x66, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x70, 0x65, 0x65, 0x72, 0x73, 0x18, 0x02, 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, 0x3f, 0x0a,
|
||
0x0e, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18,
|
||
0x03, 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, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x29,
|
||
0x0a, 0x06, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x04, 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, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x4f, 0x0a, 0x14, 0x72, 0x6f, 0x75,
|
||
0x74, 0x65, 0x5f, 0x66, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x5f, 0x72, 0x75, 0x6c, 0x65,
|
||
0x73, 0x18, 0x05, 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, 0x12, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x46, 0x69, 0x72,
|
||
0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x10, 0x66, 0x6f,
|
||
0x72, 0x77, 0x61, 0x72, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x06,
|
||
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, 0x94, 0x01, 0x0a, 0x16, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x53, 0x65, 0x74,
|
||
0x74, 0x69, 0x6e, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x41, 0x0a, 0x1d,
|
||
0x70, 0x65, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72,
|
||
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20,
|
||
0x01, 0x28, 0x08, 0x52, 0x1a, 0x70, 0x65, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45, 0x78,
|
||
0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
|
||
0x37, 0x0a, 0x18, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x65, 0x78,
|
||
0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||
0x03, 0x52, 0x15, 0x70, 0x65, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45, 0x78, 0x70, 0x69,
|
||
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x73, 0x22, 0x95, 0x01, 0x0a, 0x0e, 0x41, 0x63, 0x63,
|
||
0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x69,
|
||
0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||
0x0a, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6e,
|
||
0x65, 0x74, 0x5f, 0x63, 0x69, 0x64, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e,
|
||
0x65, 0x74, 0x43, 0x69, 0x64, 0x72, 0x12, 0x1e, 0x0a, 0x0b, 0x6e, 0x65, 0x74, 0x5f, 0x76, 0x36,
|
||
0x5f, 0x63, 0x69, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x74,
|
||
0x56, 0x36, 0x43, 0x69, 0x64, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x6e, 0x73, 0x18, 0x04, 0x20,
|
||
0x01, 0x28, 0x09, 0x52, 0x03, 0x64, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x69,
|
||
0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x06, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c,
|
||
0x22, 0x21, 0x0a, 0x19, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4d, 0x61, 0x70, 0x43, 0x6f,
|
||
0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x73, 0x44, 0x65, 0x6c, 0x74, 0x61, 0x4a, 0x04, 0x08,
|
||
0x01, 0x10, 0x65, 0x22, 0x88, 0x04, 0x0a, 0x0b, 0x50, 0x65, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70,
|
||
0x61, 0x63, 0x74, 0x12, 0x1c, 0x0a, 0x0a, 0x77, 0x67, 0x5f, 0x70, 0x75, 0x62, 0x5f, 0x6b, 0x65,
|
||
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x77, 0x67, 0x50, 0x75, 0x62, 0x4b, 0x65,
|
||
0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x02, 0x69,
|
||
0x70, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x70, 0x76, 0x36, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52,
|
||
0x04, 0x69, 0x70, 0x76, 0x36, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x73, 0x68, 0x5f, 0x70, 0x75, 0x62,
|
||
0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x73, 0x68, 0x50,
|
||
0x75, 0x62, 0x4b, 0x65, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x6e, 0x73, 0x5f, 0x6c, 0x61, 0x62,
|
||
0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x6e, 0x73, 0x4c, 0x61, 0x62,
|
||
0x65, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73,
|
||
0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x61,
|
||
0x67, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x78, 0x12, 0x2f,
|
||
0x0a, 0x14, 0x61, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x73, 0x73, 0x6f,
|
||
0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x61, 0x64,
|
||
0x64, 0x65, 0x64, 0x57, 0x69, 0x74, 0x68, 0x53, 0x73, 0x6f, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12,
|
||
0x38, 0x0a, 0x18, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74,
|
||
0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28,
|
||
0x08, 0x52, 0x16, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69,
|
||
0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x6c, 0x61, 0x73,
|
||
0x74, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x75, 0x6e, 0x69, 0x78, 0x5f, 0x6e, 0x61, 0x6e,
|
||
0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x6c, 0x61, 0x73, 0x74, 0x4c, 0x6f, 0x67,
|
||
0x69, 0x6e, 0x55, 0x6e, 0x69, 0x78, 0x4e, 0x61, 0x6e, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x73,
|
||
0x68, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52,
|
||
0x0a, 0x73, 0x73, 0x68, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73,
|
||
0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x69, 0x70, 0x76, 0x36, 0x18, 0x0c, 0x20, 0x01,
|
||
0x28, 0x08, 0x52, 0x0c, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x49, 0x70, 0x76, 0x36,
|
||
0x12, 0x38, 0x0a, 0x18, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x5f, 0x73, 0x6f, 0x75,
|
||
0x72, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01,
|
||
0x28, 0x08, 0x52, 0x16, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x53, 0x6f, 0x75, 0x72,
|
||
0x63, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x65,
|
||
0x72, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x73, 0x68, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64,
|
||
0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x73,
|
||
0x68, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x4a, 0x04, 0x08, 0x0b, 0x10, 0x0c, 0x22, 0xa4,
|
||
0x06, 0x0a, 0x0d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74,
|
||
0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64,
|
||
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, 0x34, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x03, 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, 0x24, 0x0a, 0x0d, 0x62, 0x69, 0x64, 0x69, 0x72, 0x65,
|
||
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x62,
|
||
0x69, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05,
|
||
0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x05, 0x70, 0x6f, 0x72,
|
||
0x74, 0x73, 0x12, 0x3b, 0x0a, 0x0b, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65,
|
||
0x73, 0x18, 0x06, 0x20, 0x03, 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, 0x52, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x12,
|
||
0x28, 0x0a, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f,
|
||
0x69, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63,
|
||
0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x65, 0x73,
|
||
0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69,
|
||
0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x13, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
|
||
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x5c, 0x0a,
|
||
0x11, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x67, 0x72, 0x6f, 0x75,
|
||
0x70, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
||
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x43, 0x6f, 0x6d, 0x70,
|
||
0x61, 0x63, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x47, 0x72,
|
||
0x6f, 0x75, 0x70, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, 0x61, 0x75, 0x74, 0x68, 0x6f,
|
||
0x72, 0x69, 0x7a, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x61,
|
||
0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18, 0x0b,
|
||
0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64,
|
||
0x55, 0x73, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x72,
|
||
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e,
|
||
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75,
|
||
0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x52, 0x0e, 0x73, 0x6f, 0x75, 0x72,
|
||
0x63, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x4e, 0x0a, 0x14, 0x64, 0x65,
|
||
0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
||
0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
||
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f,
|
||
0x6d, 0x70, 0x61, 0x63, 0x74, 0x52, 0x13, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
|
||
0x6f, 0x6e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3e, 0x0a, 0x1c, 0x73, 0x6f,
|
||
0x75, 0x72, 0x63, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x68, 0x65,
|
||
0x63, 0x6b, 0x5f, 0x73, 0x65, 0x71, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0d,
|
||
0x52, 0x18, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x75, 0x72, 0x65, 0x43,
|
||
0x68, 0x65, 0x63, 0x6b, 0x53, 0x65, 0x71, 0x49, 0x64, 0x73, 0x1a, 0x5d, 0x0a, 0x15, 0x41, 0x75,
|
||
0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x45, 0x6e,
|
||
0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
|
||
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
|
||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e,
|
||
0x74, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x05,
|
||
0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, 0x08, 0x09, 0x10, 0x0a, 0x4a,
|
||
0x04, 0x08, 0x0e, 0x10, 0x0f, 0x22, 0x70, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
|
||
0x65, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
|
||
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0e,
|
||
0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x02,
|
||
0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53,
|
||
0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
|
||
0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65,
|
||
0x78, 0x4a, 0x04, 0x08, 0x04, 0x10, 0x05, 0x22, 0x24, 0x0a, 0x0c, 0x55, 0x73, 0x65, 0x72, 0x4e,
|
||
0x61, 0x6d, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73,
|
||
0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x55, 0x0a,
|
||
0x0c, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x0e, 0x0a,
|
||
0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a,
|
||
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d,
|
||
0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65,
|
||
0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x64,
|
||
0x65, 0x78, 0x65, 0x73, 0x22, 0x57, 0x0a, 0x12, 0x44, 0x4e, 0x53, 0x53, 0x65, 0x74, 0x74, 0x69,
|
||
0x6e, 0x67, 0x73, 0x43, 0x6f, 0x6d, 0x70, 0x61, 0x63, 0x74, 0x12, 0x41, 0x0a, 0x1d, 0x64, 0x69,
|
||
0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e,
|
||
0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
|
||
0x0d, 0x52, 0x1a, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67,
|
||
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x22, 0x93, 0x04,
|
||
0x0a, 0x08, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x61, 0x77, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
|
||
0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x65,
|
||
0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x65, 0x74, 0x49,
|
||
0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
|
||
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
|
||
0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63,
|
||
0x69, 0x64, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f,
|
||
0x72, 0x6b, 0x43, 0x69, 0x64, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e,
|
||
0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73,
|
||
0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x06,
|
||
0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6b, 0x65, 0x65, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x12,
|
||
0x24, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73, 0x65,
|
||
0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x64,
|
||
0x65, 0x78, 0x53, 0x65, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e,
|
||
0x64, 0x65, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x65, 0x65, 0x72, 0x49,
|
||
0x6e, 0x64, 0x65, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x67, 0x72, 0x6f,
|
||
0x75, 0x70, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x65,
|
||
0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x6e, 0x65,
|
||
0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05,
|
||
0x52, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a,
|
||
0x0a, 0x6d, 0x61, 0x73, 0x71, 0x75, 0x65, 0x72, 0x61, 0x64, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28,
|
||
0x08, 0x52, 0x0a, 0x6d, 0x61, 0x73, 0x71, 0x75, 0x65, 0x72, 0x61, 0x64, 0x65, 0x12, 0x16, 0x0a,
|
||
0x06, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6d,
|
||
0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
|
||
0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
|
||
0x1b, 0x0a, 0x09, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0e, 0x20, 0x03,
|
||
0x28, 0x0d, 0x52, 0x08, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x37, 0x0a, 0x18,
|
||
0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x67,
|
||
0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x15,
|
||
0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x47, 0x72, 0x6f,
|
||
0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x61, 0x75,
|
||
0x74, 0x6f, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d,
|
||
0x73, 0x6b, 0x69, 0x70, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4a, 0x04, 0x08,
|
||
0x11, 0x10, 0x12, 0x22, 0xb5, 0x02, 0x0a, 0x12, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76,
|
||
0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x61, 0x77, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64,
|
||
0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
|
||
0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20,
|
||
0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20,
|
||
0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
|
||
0x12, 0x38, 0x0a, 0x0b, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18,
|
||
0x04, 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, 0x6e,
|
||
0x61, 0x6d, 0x65, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x72,
|
||
0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x08, 0x67,
|
||
0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61,
|
||
0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72,
|
||
0x79, 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, 0x18, 0x0a, 0x07, 0x65,
|
||
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e,
|
||
0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x5f,
|
||
0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18,
|
||
0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x44, 0x6f, 0x6d,
|
||
0x61, 0x69, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x8d, 0x02, 0x0a, 0x12,
|
||
0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52,
|
||
0x61, 0x77, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02,
|
||
0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65,
|
||
0x71, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
|
||
0x53, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
|
||
0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
|
||
0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65,
|
||
0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70,
|
||
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a,
|
||
0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
|
||
0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x6f, 0x6d, 0x61, 0x69,
|
||
0x6e, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
|
||
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72,
|
||
0x65, 0x66, 0x69, 0x78, 0x5f, 0x63, 0x69, 0x64, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||
0x0a, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x43, 0x69, 0x64, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x65,
|
||
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e,
|
||
0x61, 0x62, 0x6c, 0x65, 0x64, 0x4a, 0x04, 0x08, 0x0a, 0x10, 0x0b, 0x22, 0x4d, 0x0a, 0x11, 0x4e,
|
||
0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74,
|
||
0x12, 0x38, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
|
||
0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e,
|
||
0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72,
|
||
0x79, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x22, 0xe1, 0x01, 0x0a, 0x12, 0x4e,
|
||
0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x45, 0x6e, 0x74, 0x72,
|
||
0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69,
|
||
0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18,
|
||
0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78,
|
||
0x12, 0x24, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x5f, 0x73,
|
||
0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e,
|
||
0x64, 0x65, 0x78, 0x53, 0x65, 0x74, 0x12, 0x24, 0x0a, 0x0e, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x67,
|
||
0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0c,
|
||
0x70, 0x65, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a,
|
||
0x6d, 0x61, 0x73, 0x71, 0x75, 0x65, 0x72, 0x61, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
|
||
0x52, 0x0a, 0x6d, 0x61, 0x73, 0x71, 0x75, 0x65, 0x72, 0x61, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06,
|
||
0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6d, 0x65,
|
||
0x74, 0x72, 0x69, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18,
|
||
0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x29,
|
||
0x0a, 0x0d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x12,
|
||
0x18, 0x0a, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d,
|
||
0x52, 0x07, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0x22, 0x27, 0x0a, 0x0a, 0x55, 0x73, 0x65,
|
||
0x72, 0x49, 0x44, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x5f,
|
||
0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x75, 0x73, 0x65, 0x72, 0x49,
|
||
0x64, 0x73, 0x22, 0x31, 0x0a, 0x0c, 0x50, 0x65, 0x65, 0x72, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x53,
|
||
0x65, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78,
|
||
0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x65, 0x65, 0x72, 0x49, 0x6e,
|
||
0x64, 0x65, 0x78, 0x65, 0x73, 0x2a, 0x3a, 0x0a, 0x09, 0x4a, 0x6f, 0x62, 0x53, 0x74, 0x61, 0x74,
|
||
0x75, 0x73, 0x12, 0x12, 0x0a, 0x0e, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x74,
|
||
0x61, 0x74, 0x75, 0x73, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x73, 0x75, 0x63, 0x63, 0x65, 0x65,
|
||
0x64, 0x65, 0x64, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x10,
|
||
0x02, 0x2a, 0x93, 0x01, 0x0a, 0x0e, 0x50, 0x65, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69,
|
||
0x6c, 0x69, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x65, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61,
|
||
0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x00, 0x12,
|
||
0x20, 0x0a, 0x1c, 0x50, 0x65, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
|
||
0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x73, 0x10,
|
||
0x01, 0x12, 0x1d, 0x0a, 0x19, 0x50, 0x65, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c,
|
||
0x69, 0x74, 0x79, 0x49, 0x50, 0x76, 0x36, 0x4f, 0x76, 0x65, 0x72, 0x6c, 0x61, 0x79, 0x10, 0x02,
|
||
0x12, 0x25, 0x0a, 0x21, 0x50, 0x65, 0x65, 0x72, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69,
|
||
0x74, 0x79, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x74, 0x77, 0x6f,
|
||
0x72, 0x6b, 0x4d, 0x61, 0x70, 0x10, 0x03, 0x2a, 0x5d, 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, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x45, 0x54, 0x42, 0x49, 0x52, 0x44,
|
||
0x5f, 0x53, 0x53, 0x48, 0x10, 0x06, 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, 0x2a, 0x63, 0x0a, 0x0e,
|
||
0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x0f,
|
||
0x0a, 0x0b, 0x45, 0x58, 0x50, 0x4f, 0x53, 0x45, 0x5f, 0x48, 0x54, 0x54, 0x50, 0x10, 0x00, 0x12,
|
||
0x10, 0x0a, 0x0c, 0x45, 0x58, 0x50, 0x4f, 0x53, 0x45, 0x5f, 0x48, 0x54, 0x54, 0x50, 0x53, 0x10,
|
||
0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x58, 0x50, 0x4f, 0x53, 0x45, 0x5f, 0x54, 0x43, 0x50, 0x10,
|
||
0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x58, 0x50, 0x4f, 0x53, 0x45, 0x5f, 0x55, 0x44, 0x50, 0x10,
|
||
0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x58, 0x50, 0x4f, 0x53, 0x45, 0x5f, 0x54, 0x4c, 0x53, 0x10,
|
||
0x04, 0x32, 0xd0, 0x07, 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, 0x12, 0x3b, 0x0a, 0x06, 0x4c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 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, 0x12, 0x47, 0x0a, 0x03, 0x4a, 0x6f, 0x62, 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, 0x28, 0x01, 0x30, 0x01, 0x12, 0x51, 0x0a, 0x11, 0x45, 0x78,
|
||
0x74, 0x65, 0x6e, 0x64, 0x41, 0x75, 0x74, 0x68, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 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, 0x4c, 0x0a,
|
||
0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 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, 0x4b, 0x0a, 0x0b, 0x52,
|
||
0x65, 0x6e, 0x65, 0x77, 0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 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, 0x4a, 0x0a, 0x0a, 0x53, 0x74, 0x6f, 0x70,
|
||
0x45, 0x78, 0x70, 0x6f, 0x73, 0x65, 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, 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, 8)
|
||
var file_management_proto_msgTypes = make([]protoimpl.MessageInfo, 83)
|
||
var file_management_proto_goTypes = []interface{}{
|
||
(JobStatus)(0), // 0: management.JobStatus
|
||
(PeerCapability)(0), // 1: management.PeerCapability
|
||
(RuleProtocol)(0), // 2: management.RuleProtocol
|
||
(RuleDirection)(0), // 3: management.RuleDirection
|
||
(RuleAction)(0), // 4: management.RuleAction
|
||
(ExposeProtocol)(0), // 5: management.ExposeProtocol
|
||
(HostConfig_Protocol)(0), // 6: management.HostConfig.Protocol
|
||
(DeviceAuthorizationFlowProvider)(0), // 7: management.DeviceAuthorizationFlow.provider
|
||
(*EncryptedMessage)(nil), // 8: management.EncryptedMessage
|
||
(*JobRequest)(nil), // 9: management.JobRequest
|
||
(*JobResponse)(nil), // 10: management.JobResponse
|
||
(*BundleParameters)(nil), // 11: management.BundleParameters
|
||
(*BundleResult)(nil), // 12: management.BundleResult
|
||
(*SyncRequest)(nil), // 13: management.SyncRequest
|
||
(*SyncResponse)(nil), // 14: management.SyncResponse
|
||
(*SyncMetaRequest)(nil), // 15: management.SyncMetaRequest
|
||
(*LoginRequest)(nil), // 16: management.LoginRequest
|
||
(*PeerKeys)(nil), // 17: management.PeerKeys
|
||
(*Environment)(nil), // 18: management.Environment
|
||
(*File)(nil), // 19: management.File
|
||
(*Flags)(nil), // 20: management.Flags
|
||
(*PeerSystemMeta)(nil), // 21: management.PeerSystemMeta
|
||
(*LoginResponse)(nil), // 22: management.LoginResponse
|
||
(*ExtendAuthSessionRequest)(nil), // 23: management.ExtendAuthSessionRequest
|
||
(*ExtendAuthSessionResponse)(nil), // 24: management.ExtendAuthSessionResponse
|
||
(*ServerKeyResponse)(nil), // 25: management.ServerKeyResponse
|
||
(*Empty)(nil), // 26: management.Empty
|
||
(*NetbirdConfig)(nil), // 27: management.NetbirdConfig
|
||
(*HostConfig)(nil), // 28: management.HostConfig
|
||
(*RelayConfig)(nil), // 29: management.RelayConfig
|
||
(*FlowConfig)(nil), // 30: management.FlowConfig
|
||
(*MetricsConfig)(nil), // 31: management.MetricsConfig
|
||
(*JWTConfig)(nil), // 32: management.JWTConfig
|
||
(*ProtectedHostConfig)(nil), // 33: management.ProtectedHostConfig
|
||
(*PeerConfig)(nil), // 34: management.PeerConfig
|
||
(*AutoUpdateSettings)(nil), // 35: management.AutoUpdateSettings
|
||
(*NetworkMap)(nil), // 36: management.NetworkMap
|
||
(*SSHAuth)(nil), // 37: management.SSHAuth
|
||
(*MachineUserIndexes)(nil), // 38: management.MachineUserIndexes
|
||
(*RemotePeerConfig)(nil), // 39: management.RemotePeerConfig
|
||
(*SSHConfig)(nil), // 40: management.SSHConfig
|
||
(*DeviceAuthorizationFlowRequest)(nil), // 41: management.DeviceAuthorizationFlowRequest
|
||
(*DeviceAuthorizationFlow)(nil), // 42: management.DeviceAuthorizationFlow
|
||
(*PKCEAuthorizationFlowRequest)(nil), // 43: management.PKCEAuthorizationFlowRequest
|
||
(*PKCEAuthorizationFlow)(nil), // 44: management.PKCEAuthorizationFlow
|
||
(*ProviderConfig)(nil), // 45: management.ProviderConfig
|
||
(*Route)(nil), // 46: management.Route
|
||
(*DNSConfig)(nil), // 47: management.DNSConfig
|
||
(*CustomZone)(nil), // 48: management.CustomZone
|
||
(*SimpleRecord)(nil), // 49: management.SimpleRecord
|
||
(*NameServerGroup)(nil), // 50: management.NameServerGroup
|
||
(*NameServer)(nil), // 51: management.NameServer
|
||
(*FirewallRule)(nil), // 52: management.FirewallRule
|
||
(*NetworkAddress)(nil), // 53: management.NetworkAddress
|
||
(*Checks)(nil), // 54: management.Checks
|
||
(*PortInfo)(nil), // 55: management.PortInfo
|
||
(*RouteFirewallRule)(nil), // 56: management.RouteFirewallRule
|
||
(*ForwardingRule)(nil), // 57: management.ForwardingRule
|
||
(*ExposeServiceRequest)(nil), // 58: management.ExposeServiceRequest
|
||
(*ExposeServiceResponse)(nil), // 59: management.ExposeServiceResponse
|
||
(*RenewExposeRequest)(nil), // 60: management.RenewExposeRequest
|
||
(*RenewExposeResponse)(nil), // 61: management.RenewExposeResponse
|
||
(*StopExposeRequest)(nil), // 62: management.StopExposeRequest
|
||
(*StopExposeResponse)(nil), // 63: management.StopExposeResponse
|
||
(*NetworkMapEnvelope)(nil), // 64: management.NetworkMapEnvelope
|
||
(*NetworkMapComponentsFull)(nil), // 65: management.NetworkMapComponentsFull
|
||
(*ProxyPatch)(nil), // 66: management.ProxyPatch
|
||
(*AccountSettingsCompact)(nil), // 67: management.AccountSettingsCompact
|
||
(*AccountNetwork)(nil), // 68: management.AccountNetwork
|
||
(*NetworkMapComponentsDelta)(nil), // 69: management.NetworkMapComponentsDelta
|
||
(*PeerCompact)(nil), // 70: management.PeerCompact
|
||
(*PolicyCompact)(nil), // 71: management.PolicyCompact
|
||
(*ResourceCompact)(nil), // 72: management.ResourceCompact
|
||
(*UserNameList)(nil), // 73: management.UserNameList
|
||
(*GroupCompact)(nil), // 74: management.GroupCompact
|
||
(*DNSSettingsCompact)(nil), // 75: management.DNSSettingsCompact
|
||
(*RouteRaw)(nil), // 76: management.RouteRaw
|
||
(*NameServerGroupRaw)(nil), // 77: management.NameServerGroupRaw
|
||
(*NetworkResourceRaw)(nil), // 78: management.NetworkResourceRaw
|
||
(*NetworkRouterList)(nil), // 79: management.NetworkRouterList
|
||
(*NetworkRouterEntry)(nil), // 80: management.NetworkRouterEntry
|
||
(*PolicyIndexes)(nil), // 81: management.PolicyIndexes
|
||
(*UserIDList)(nil), // 82: management.UserIDList
|
||
(*PeerIndexSet)(nil), // 83: management.PeerIndexSet
|
||
nil, // 84: management.SSHAuth.MachineUsersEntry
|
||
(*PortInfo_Range)(nil), // 85: management.PortInfo.Range
|
||
nil, // 86: management.NetworkMapComponentsFull.RoutersMapEntry
|
||
nil, // 87: management.NetworkMapComponentsFull.ResourcePoliciesMapEntry
|
||
nil, // 88: management.NetworkMapComponentsFull.GroupIdToUserIdsEntry
|
||
nil, // 89: management.NetworkMapComponentsFull.PostureFailedPeersEntry
|
||
nil, // 90: management.PolicyCompact.AuthorizedGroupsEntry
|
||
(*timestamppb.Timestamp)(nil), // 91: google.protobuf.Timestamp
|
||
(*durationpb.Duration)(nil), // 92: google.protobuf.Duration
|
||
}
|
||
var file_management_proto_depIdxs = []int32{
|
||
11, // 0: management.JobRequest.bundle:type_name -> management.BundleParameters
|
||
0, // 1: management.JobResponse.status:type_name -> management.JobStatus
|
||
12, // 2: management.JobResponse.bundle:type_name -> management.BundleResult
|
||
21, // 3: management.SyncRequest.meta:type_name -> management.PeerSystemMeta
|
||
27, // 4: management.SyncResponse.netbirdConfig:type_name -> management.NetbirdConfig
|
||
34, // 5: management.SyncResponse.peerConfig:type_name -> management.PeerConfig
|
||
39, // 6: management.SyncResponse.remotePeers:type_name -> management.RemotePeerConfig
|
||
36, // 7: management.SyncResponse.NetworkMap:type_name -> management.NetworkMap
|
||
54, // 8: management.SyncResponse.Checks:type_name -> management.Checks
|
||
91, // 9: management.SyncResponse.sessionExpiresAt:type_name -> google.protobuf.Timestamp
|
||
64, // 10: management.SyncResponse.NetworkMapEnvelope:type_name -> management.NetworkMapEnvelope
|
||
21, // 11: management.SyncMetaRequest.meta:type_name -> management.PeerSystemMeta
|
||
21, // 12: management.LoginRequest.meta:type_name -> management.PeerSystemMeta
|
||
17, // 13: management.LoginRequest.peerKeys:type_name -> management.PeerKeys
|
||
53, // 14: management.PeerSystemMeta.networkAddresses:type_name -> management.NetworkAddress
|
||
18, // 15: management.PeerSystemMeta.environment:type_name -> management.Environment
|
||
19, // 16: management.PeerSystemMeta.files:type_name -> management.File
|
||
20, // 17: management.PeerSystemMeta.flags:type_name -> management.Flags
|
||
1, // 18: management.PeerSystemMeta.capabilities:type_name -> management.PeerCapability
|
||
27, // 19: management.LoginResponse.netbirdConfig:type_name -> management.NetbirdConfig
|
||
34, // 20: management.LoginResponse.peerConfig:type_name -> management.PeerConfig
|
||
54, // 21: management.LoginResponse.Checks:type_name -> management.Checks
|
||
91, // 22: management.LoginResponse.sessionExpiresAt:type_name -> google.protobuf.Timestamp
|
||
21, // 23: management.ExtendAuthSessionRequest.meta:type_name -> management.PeerSystemMeta
|
||
91, // 24: management.ExtendAuthSessionResponse.sessionExpiresAt:type_name -> google.protobuf.Timestamp
|
||
91, // 25: management.ServerKeyResponse.expiresAt:type_name -> google.protobuf.Timestamp
|
||
28, // 26: management.NetbirdConfig.stuns:type_name -> management.HostConfig
|
||
33, // 27: management.NetbirdConfig.turns:type_name -> management.ProtectedHostConfig
|
||
28, // 28: management.NetbirdConfig.signal:type_name -> management.HostConfig
|
||
29, // 29: management.NetbirdConfig.relay:type_name -> management.RelayConfig
|
||
30, // 30: management.NetbirdConfig.flow:type_name -> management.FlowConfig
|
||
31, // 31: management.NetbirdConfig.metrics:type_name -> management.MetricsConfig
|
||
6, // 32: management.HostConfig.protocol:type_name -> management.HostConfig.Protocol
|
||
92, // 33: management.FlowConfig.interval:type_name -> google.protobuf.Duration
|
||
28, // 34: management.ProtectedHostConfig.hostConfig:type_name -> management.HostConfig
|
||
40, // 35: management.PeerConfig.sshConfig:type_name -> management.SSHConfig
|
||
35, // 36: management.PeerConfig.autoUpdate:type_name -> management.AutoUpdateSettings
|
||
34, // 37: management.NetworkMap.peerConfig:type_name -> management.PeerConfig
|
||
39, // 38: management.NetworkMap.remotePeers:type_name -> management.RemotePeerConfig
|
||
46, // 39: management.NetworkMap.Routes:type_name -> management.Route
|
||
47, // 40: management.NetworkMap.DNSConfig:type_name -> management.DNSConfig
|
||
39, // 41: management.NetworkMap.offlinePeers:type_name -> management.RemotePeerConfig
|
||
52, // 42: management.NetworkMap.FirewallRules:type_name -> management.FirewallRule
|
||
56, // 43: management.NetworkMap.routesFirewallRules:type_name -> management.RouteFirewallRule
|
||
57, // 44: management.NetworkMap.forwardingRules:type_name -> management.ForwardingRule
|
||
37, // 45: management.NetworkMap.sshAuth:type_name -> management.SSHAuth
|
||
84, // 46: management.SSHAuth.machine_users:type_name -> management.SSHAuth.MachineUsersEntry
|
||
40, // 47: management.RemotePeerConfig.sshConfig:type_name -> management.SSHConfig
|
||
32, // 48: management.SSHConfig.jwtConfig:type_name -> management.JWTConfig
|
||
7, // 49: management.DeviceAuthorizationFlow.Provider:type_name -> management.DeviceAuthorizationFlow.provider
|
||
45, // 50: management.DeviceAuthorizationFlow.ProviderConfig:type_name -> management.ProviderConfig
|
||
45, // 51: management.PKCEAuthorizationFlow.ProviderConfig:type_name -> management.ProviderConfig
|
||
50, // 52: management.DNSConfig.NameServerGroups:type_name -> management.NameServerGroup
|
||
48, // 53: management.DNSConfig.CustomZones:type_name -> management.CustomZone
|
||
49, // 54: management.CustomZone.Records:type_name -> management.SimpleRecord
|
||
51, // 55: management.NameServerGroup.NameServers:type_name -> management.NameServer
|
||
3, // 56: management.FirewallRule.Direction:type_name -> management.RuleDirection
|
||
4, // 57: management.FirewallRule.Action:type_name -> management.RuleAction
|
||
2, // 58: management.FirewallRule.Protocol:type_name -> management.RuleProtocol
|
||
55, // 59: management.FirewallRule.PortInfo:type_name -> management.PortInfo
|
||
85, // 60: management.PortInfo.range:type_name -> management.PortInfo.Range
|
||
4, // 61: management.RouteFirewallRule.action:type_name -> management.RuleAction
|
||
2, // 62: management.RouteFirewallRule.protocol:type_name -> management.RuleProtocol
|
||
55, // 63: management.RouteFirewallRule.portInfo:type_name -> management.PortInfo
|
||
2, // 64: management.ForwardingRule.protocol:type_name -> management.RuleProtocol
|
||
55, // 65: management.ForwardingRule.destinationPort:type_name -> management.PortInfo
|
||
55, // 66: management.ForwardingRule.translatedPort:type_name -> management.PortInfo
|
||
5, // 67: management.ExposeServiceRequest.protocol:type_name -> management.ExposeProtocol
|
||
65, // 68: management.NetworkMapEnvelope.full:type_name -> management.NetworkMapComponentsFull
|
||
69, // 69: management.NetworkMapEnvelope.delta:type_name -> management.NetworkMapComponentsDelta
|
||
34, // 70: management.NetworkMapComponentsFull.peer_config:type_name -> management.PeerConfig
|
||
68, // 71: management.NetworkMapComponentsFull.network:type_name -> management.AccountNetwork
|
||
67, // 72: management.NetworkMapComponentsFull.account_settings:type_name -> management.AccountSettingsCompact
|
||
75, // 73: management.NetworkMapComponentsFull.dns_settings:type_name -> management.DNSSettingsCompact
|
||
70, // 74: management.NetworkMapComponentsFull.peers:type_name -> management.PeerCompact
|
||
71, // 75: management.NetworkMapComponentsFull.policies:type_name -> management.PolicyCompact
|
||
74, // 76: management.NetworkMapComponentsFull.groups:type_name -> management.GroupCompact
|
||
76, // 77: management.NetworkMapComponentsFull.routes:type_name -> management.RouteRaw
|
||
77, // 78: management.NetworkMapComponentsFull.nameserver_groups:type_name -> management.NameServerGroupRaw
|
||
49, // 79: management.NetworkMapComponentsFull.all_dns_records:type_name -> management.SimpleRecord
|
||
48, // 80: management.NetworkMapComponentsFull.account_zones:type_name -> management.CustomZone
|
||
78, // 81: management.NetworkMapComponentsFull.network_resources:type_name -> management.NetworkResourceRaw
|
||
86, // 82: management.NetworkMapComponentsFull.routers_map:type_name -> management.NetworkMapComponentsFull.RoutersMapEntry
|
||
87, // 83: management.NetworkMapComponentsFull.resource_policies_map:type_name -> management.NetworkMapComponentsFull.ResourcePoliciesMapEntry
|
||
88, // 84: management.NetworkMapComponentsFull.group_id_to_user_ids:type_name -> management.NetworkMapComponentsFull.GroupIdToUserIdsEntry
|
||
89, // 85: management.NetworkMapComponentsFull.posture_failed_peers:type_name -> management.NetworkMapComponentsFull.PostureFailedPeersEntry
|
||
66, // 86: management.NetworkMapComponentsFull.proxy_patch:type_name -> management.ProxyPatch
|
||
39, // 87: management.ProxyPatch.peers:type_name -> management.RemotePeerConfig
|
||
39, // 88: management.ProxyPatch.offline_peers:type_name -> management.RemotePeerConfig
|
||
52, // 89: management.ProxyPatch.firewall_rules:type_name -> management.FirewallRule
|
||
46, // 90: management.ProxyPatch.routes:type_name -> management.Route
|
||
56, // 91: management.ProxyPatch.route_firewall_rules:type_name -> management.RouteFirewallRule
|
||
57, // 92: management.ProxyPatch.forwarding_rules:type_name -> management.ForwardingRule
|
||
4, // 93: management.PolicyCompact.action:type_name -> management.RuleAction
|
||
2, // 94: management.PolicyCompact.protocol:type_name -> management.RuleProtocol
|
||
85, // 95: management.PolicyCompact.port_ranges:type_name -> management.PortInfo.Range
|
||
90, // 96: management.PolicyCompact.authorized_groups:type_name -> management.PolicyCompact.AuthorizedGroupsEntry
|
||
72, // 97: management.PolicyCompact.source_resource:type_name -> management.ResourceCompact
|
||
72, // 98: management.PolicyCompact.destination_resource:type_name -> management.ResourceCompact
|
||
51, // 99: management.NameServerGroupRaw.nameservers:type_name -> management.NameServer
|
||
80, // 100: management.NetworkRouterList.entries:type_name -> management.NetworkRouterEntry
|
||
38, // 101: management.SSHAuth.MachineUsersEntry.value:type_name -> management.MachineUserIndexes
|
||
79, // 102: management.NetworkMapComponentsFull.RoutersMapEntry.value:type_name -> management.NetworkRouterList
|
||
81, // 103: management.NetworkMapComponentsFull.ResourcePoliciesMapEntry.value:type_name -> management.PolicyIndexes
|
||
82, // 104: management.NetworkMapComponentsFull.GroupIdToUserIdsEntry.value:type_name -> management.UserIDList
|
||
83, // 105: management.NetworkMapComponentsFull.PostureFailedPeersEntry.value:type_name -> management.PeerIndexSet
|
||
73, // 106: management.PolicyCompact.AuthorizedGroupsEntry.value:type_name -> management.UserNameList
|
||
8, // 107: management.ManagementService.Login:input_type -> management.EncryptedMessage
|
||
8, // 108: management.ManagementService.Sync:input_type -> management.EncryptedMessage
|
||
26, // 109: management.ManagementService.GetServerKey:input_type -> management.Empty
|
||
26, // 110: management.ManagementService.isHealthy:input_type -> management.Empty
|
||
8, // 111: management.ManagementService.GetDeviceAuthorizationFlow:input_type -> management.EncryptedMessage
|
||
8, // 112: management.ManagementService.GetPKCEAuthorizationFlow:input_type -> management.EncryptedMessage
|
||
8, // 113: management.ManagementService.SyncMeta:input_type -> management.EncryptedMessage
|
||
8, // 114: management.ManagementService.Logout:input_type -> management.EncryptedMessage
|
||
8, // 115: management.ManagementService.Job:input_type -> management.EncryptedMessage
|
||
8, // 116: management.ManagementService.ExtendAuthSession:input_type -> management.EncryptedMessage
|
||
8, // 117: management.ManagementService.CreateExpose:input_type -> management.EncryptedMessage
|
||
8, // 118: management.ManagementService.RenewExpose:input_type -> management.EncryptedMessage
|
||
8, // 119: management.ManagementService.StopExpose:input_type -> management.EncryptedMessage
|
||
8, // 120: management.ManagementService.Login:output_type -> management.EncryptedMessage
|
||
8, // 121: management.ManagementService.Sync:output_type -> management.EncryptedMessage
|
||
25, // 122: management.ManagementService.GetServerKey:output_type -> management.ServerKeyResponse
|
||
26, // 123: management.ManagementService.isHealthy:output_type -> management.Empty
|
||
8, // 124: management.ManagementService.GetDeviceAuthorizationFlow:output_type -> management.EncryptedMessage
|
||
8, // 125: management.ManagementService.GetPKCEAuthorizationFlow:output_type -> management.EncryptedMessage
|
||
26, // 126: management.ManagementService.SyncMeta:output_type -> management.Empty
|
||
26, // 127: management.ManagementService.Logout:output_type -> management.Empty
|
||
8, // 128: management.ManagementService.Job:output_type -> management.EncryptedMessage
|
||
8, // 129: management.ManagementService.ExtendAuthSession:output_type -> management.EncryptedMessage
|
||
8, // 130: management.ManagementService.CreateExpose:output_type -> management.EncryptedMessage
|
||
8, // 131: management.ManagementService.RenewExpose:output_type -> management.EncryptedMessage
|
||
8, // 132: management.ManagementService.StopExpose:output_type -> management.EncryptedMessage
|
||
120, // [120:133] is the sub-list for method output_type
|
||
107, // [107:120] is the sub-list for method input_type
|
||
107, // [107:107] is the sub-list for extension type_name
|
||
107, // [107:107] is the sub-list for extension extendee
|
||
0, // [0:107] 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.(*JobRequest); 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.(*JobResponse); 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.(*BundleParameters); 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.(*BundleResult); 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.(*SyncRequest); 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.(*SyncResponse); 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.(*SyncMetaRequest); 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.(*LoginRequest); 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.(*PeerKeys); 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.(*Environment); 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.(*File); 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.(*Flags); 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.(*PeerSystemMeta); 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.(*LoginResponse); 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.(*ExtendAuthSessionRequest); 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.(*ExtendAuthSessionResponse); 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.(*ServerKeyResponse); 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.(*Empty); 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.(*NetbirdConfig); 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.(*HostConfig); 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.(*RelayConfig); 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.(*FlowConfig); 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.(*MetricsConfig); 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.(*JWTConfig); 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.(*ProtectedHostConfig); 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.(*PeerConfig); 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.(*AutoUpdateSettings); 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.(*NetworkMap); 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.(*SSHAuth); 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.(*MachineUserIndexes); 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.(*RemotePeerConfig); 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.(*SSHConfig); 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.(*DeviceAuthorizationFlowRequest); 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.(*DeviceAuthorizationFlow); 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.(*PKCEAuthorizationFlowRequest); 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.(*PKCEAuthorizationFlow); 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.(*ProviderConfig); 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.(*Route); 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.(*DNSConfig); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[40].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[41].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[42].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[43].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[44].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[45].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[46].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[47].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[48].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[49].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[50].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*ExposeServiceRequest); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*ExposeServiceResponse); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*RenewExposeRequest); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*RenewExposeResponse); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*StopExposeRequest); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*StopExposeResponse); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*NetworkMapEnvelope); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*NetworkMapComponentsFull); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*ProxyPatch); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*AccountSettingsCompact); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*AccountNetwork); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*NetworkMapComponentsDelta); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*PeerCompact); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*PolicyCompact); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*ResourceCompact); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*UserNameList); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*GroupCompact); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*DNSSettingsCompact); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*RouteRaw); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*NameServerGroupRaw); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*NetworkResourceRaw); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*NetworkRouterList); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*NetworkRouterEntry); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*PolicyIndexes); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*UserIDList); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} {
|
||
switch v := v.(*PeerIndexSet); i {
|
||
case 0:
|
||
return &v.state
|
||
case 1:
|
||
return &v.sizeCache
|
||
case 2:
|
||
return &v.unknownFields
|
||
default:
|
||
return nil
|
||
}
|
||
}
|
||
file_management_proto_msgTypes[77].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[1].OneofWrappers = []interface{}{
|
||
(*JobRequest_Bundle)(nil),
|
||
}
|
||
file_management_proto_msgTypes[2].OneofWrappers = []interface{}{
|
||
(*JobResponse_Bundle)(nil),
|
||
}
|
||
file_management_proto_msgTypes[47].OneofWrappers = []interface{}{
|
||
(*PortInfo_Port)(nil),
|
||
(*PortInfo_Range_)(nil),
|
||
}
|
||
file_management_proto_msgTypes[56].OneofWrappers = []interface{}{
|
||
(*NetworkMapEnvelope_Full)(nil),
|
||
(*NetworkMapEnvelope_Delta)(nil),
|
||
}
|
||
type x struct{}
|
||
out := protoimpl.TypeBuilder{
|
||
File: protoimpl.DescBuilder{
|
||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||
RawDescriptor: file_management_proto_rawDesc,
|
||
NumEnums: 8,
|
||
NumMessages: 83,
|
||
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
|
||
}
|