mirror of
https://github.com/netbirdio/netbird.git
synced 2024-11-26 10:03:47 +01:00
51f133fdc6
* wip: add posture checks structs * add netbird version check * Refactor posture checks and add version checks * Add posture check activities (#1445) * Integrate Endpoints for Posture Checks (#1432) * wip: add posture checks structs * add netbird version check * Refactor posture checks and add version checks * Implement posture and version checks in API models * Refactor API models and enhance posture check functionality * wip: add posture checks endpoints * go mod tidy * Reference the posture checks by id's in policy * Add posture checks management to server * Add posture checks management mocks * implement posture checks handlers * Add posture checks to account copy and fix tests * Refactor posture checks validation * wip: Add posture checks handler tests * Add JSON encoding support to posture checks * Encode posture checks to correct api response object * Refactored posture checks implementation to align with the new API schema * Refactor structure of `Checks` from slice to map * Cleanup * Add posture check activities (#1445) * Revert map to use list of checks * Add posture check activity events * Refactor posture check initialization in account test * Improve the handling of version range in posture check * Fix tests and linter * Remove max_version from NBVersionCheck * Added unit tests for NBVersionCheck * go mod tidy * Extend policy endpoint with posture checks (#1450) * Implement posture and version checks in API models * go mod tidy * Allow attaching posture checks to policy * Update error message for linked posture check on deleting * Refactor PostureCheck and Checks structures * go mod tidy * Add validation for non-existing posture checks * fix unit tests * use Wt version * Remove the enabled field, as posture check will now automatically be activated by default when attaching to a policy * wip: add posture checks structs * add netbird version check * Refactor posture checks and add version checks * Add posture check activities (#1445) * Integrate Endpoints for Posture Checks (#1432) * wip: add posture checks structs * add netbird version check * Refactor posture checks and add version checks * Implement posture and version checks in API models * Refactor API models and enhance posture check functionality * wip: add posture checks endpoints * go mod tidy * Reference the posture checks by id's in policy * Add posture checks management to server * Add posture checks management mocks * implement posture checks handlers * Add posture checks to account copy and fix tests * Refactor posture checks validation * wip: Add posture checks handler tests * Add JSON encoding support to posture checks * Encode posture checks to correct api response object * Refactored posture checks implementation to align with the new API schema * Refactor structure of `Checks` from slice to map * Cleanup * Add posture check activities (#1445) * Revert map to use list of checks * Add posture check activity events * Refactor posture check initialization in account test * Improve the handling of version range in posture check * Fix tests and linter * Remove max_version from NBVersionCheck * Added unit tests for NBVersionCheck * go mod tidy * Extend policy endpoint with posture checks (#1450) * Implement posture and version checks in API models * go mod tidy * Allow attaching posture checks to policy * Update error message for linked posture check on deleting * Refactor PostureCheck and Checks structures * go mod tidy * Add validation for non-existing posture checks * fix unit tests * use Wt version * Remove the enabled field, as posture check will now automatically be activated by default when attaching to a policy * Extend network map generation with posture checks (#1466) * Apply posture checks to network map generation * run policy posture checks on peers to connect * Refactor and streamline policy posture check process for peers to connect. * Add posture checks testing in a network map * Remove redundant nil check in policy.go * Refactor peer validation check in policy.go * Update 'Check' function signature and use logger for version check * Refactor posture checks run on sources and updated the validation func * Update peer validation * fix tests * improved test coverage for policy posture check * Refactoring * Extend NetBird agent to collect kernel version (#1495) * Add KernelVersion field to LoginRequest * Add KernelVersion to system info retrieval * Fix tests * Remove Core field from system info * Replace Core field with new OSVersion field in system info * Added WMI dependency to info_windows.go * Add OS Version posture checks (#1479) * Initial support of Geolocation service (#1491) * Add Geo Location posture check (#1500) * wip: implement geolocation check * add geo location posture checks to posture api * Merge branch 'feature/posture-checks' into geo-posture-check * Remove CityGeoNameID and update required fields in API * Add geoLocation checks to posture checks handler tests * Implement geo location-based checks for peers * Update test values and embed location struct in peer system * add support for country wide checks * initialize country code regex once * Fix peer meta core compability with older clients (#1515) * Refactor extraction of OSVersion in grpcserver * Ignore lint check * Fix peer meta core compability with older management (#1532) * Revert core field deprecation * fix tests * Extend peer meta with location information (#1517) This PR uses the geolocation service to resolve IP to location. The lookup happens once on the first connection - when a client calls the Sync func. The location is stored as part of the peer: * Add Locations endpoints (#1516) * add locations endpoints * Add sqlite3 check and database generation in geolite script * Add SQLite storage for geolocation data * Refactor file existence check into a separate function * Integrate geolocation services into management application * Refactoring * Refactor city retrieval to include Geonames ID * Add signature verification for GeoLite2 database download * Change to in-memory database for geolocation store * Merge manager to geolocation * Update GetAllCountries to return Country name and iso code * fix tests * Add reload to SqliteStore * Add geoname indexes * move db file check to connectDB * Add concurrency safety to SQL queries and database reloading The commit adds mutex locks to the GetAllCountries and GetCitiesByCountry functions to ensure thread-safety during database queries. Additionally, it introduces a mechanism to safely close the old database connection before a new connection is established upon reloading, which improves the reliability of database operations. Lastly, it moves the checking of database file existence to the connectDB function. * Add sha256 sum check to geolocation store before reload * Use read lock * Check SHA256 twice when reload geonames db --------- Co-authored-by: Yury Gargay <yury.gargay@gmail.com> * Add tests and validation for empty peer location in GeoLocationCheck (#1546) * Disallow Geo check creation/update without configured Geo DB (#1548) * Fix shared access to in memory copy of geonames.db (#1550) * Trim suffix in when evaluate Min Kernel Version in OS check * Add Valid Peer Windows Kernel version test * Add Geolocation handler tests (#1556) * Implement user admin checks in posture checks * Add geolocation handler tests * Mark initGeolocationTestData as helper func * Add error handling to geolocation database closure * Add cleanup function to close geolocation resources * Simplify checks definition serialisation (#1555) * Regenerate network map on posture check update (#1563) * change network state and generate map on posture check update * Refactoring * Make city name optional (#1575) * Do not return empty city name * Validate action param of geo location checks (#1577) We only support allow and deny * Switch realip middleware to upstream (#1578) * Be more silent in download-geolite2.sh script * Fix geonames db reload (#1580) * Ensure posture check name uniqueness when create (#1594) * Enhance the management of posture checks (#1595) * add a correct min version and kernel for os posture check example * handle error when geo or location db is nil * expose all peer location details in api response * Check for nil geolocation manager only * Validate posture check before save * bump open api version * add peer location fields to toPeerListItemResponse * Feautre/extend sys meta (#1536) * Collect network addresses * Add Linux sys product info * Fix peer meta comparison * Collect sys info on mac * Add windows sys info * Fix test * Fix test * Fix grpc client * Ignore test * Fix test * Collect IPv6 addresses * Change the IP to IP + net * fix tests * Use netip on server side * Serialize netip to json * Extend Peer metadata with cloud detection (#1552) * add cloud detection + test binary * test windows exe * Collect IPv6 addresses * Change the IP to IP + net * switch to forked cloud detect lib * new test builds * new GCE build * discontinue using library but local copy instead * fix imports * remove openstack check * add hierarchy to cloud check * merge IBM and SoftLayer * close resp bodies and use os lib for file reading * close more resp bodies * fix error check logic * parallelize IBM checks * fix response value * go mod tidy * include context + change kubernetes detection * add context in info functions * extract platform into separate field * fix imports * add missing wmi import --------- Co-authored-by: Zoltan Papp <zoltan.pmail@gmail.com> --------- Co-authored-by: pascal-fischer <32096965+pascal-fischer@users.noreply.github.com> * generate proto * remove test binaries --------- Co-authored-by: bcmmbaga <bethuelmbaga12@gmail.com> Co-authored-by: Yury Gargay <yury.gargay@gmail.com> Co-authored-by: Zoltan Papp <zoltan.pmail@gmail.com>
3129 lines
108 KiB
Go
3129 lines
108 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// versions:
|
|
// protoc-gen-go v1.26.0
|
|
// protoc v4.24.3
|
|
// source: management.proto
|
|
|
|
package proto
|
|
|
|
import (
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
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 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[0].Descriptor()
|
|
}
|
|
|
|
func (HostConfig_Protocol) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[0]
|
|
}
|
|
|
|
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{10, 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[1].Descriptor()
|
|
}
|
|
|
|
func (DeviceAuthorizationFlowProvider) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[1]
|
|
}
|
|
|
|
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{17, 0}
|
|
}
|
|
|
|
type FirewallRuleDirection int32
|
|
|
|
const (
|
|
FirewallRule_IN FirewallRuleDirection = 0
|
|
FirewallRule_OUT FirewallRuleDirection = 1
|
|
)
|
|
|
|
// Enum value maps for FirewallRuleDirection.
|
|
var (
|
|
FirewallRuleDirection_name = map[int32]string{
|
|
0: "IN",
|
|
1: "OUT",
|
|
}
|
|
FirewallRuleDirection_value = map[string]int32{
|
|
"IN": 0,
|
|
"OUT": 1,
|
|
}
|
|
)
|
|
|
|
func (x FirewallRuleDirection) Enum() *FirewallRuleDirection {
|
|
p := new(FirewallRuleDirection)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x FirewallRuleDirection) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (FirewallRuleDirection) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_management_proto_enumTypes[2].Descriptor()
|
|
}
|
|
|
|
func (FirewallRuleDirection) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[2]
|
|
}
|
|
|
|
func (x FirewallRuleDirection) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use FirewallRuleDirection.Descriptor instead.
|
|
func (FirewallRuleDirection) EnumDescriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{27, 0}
|
|
}
|
|
|
|
type FirewallRuleAction int32
|
|
|
|
const (
|
|
FirewallRule_ACCEPT FirewallRuleAction = 0
|
|
FirewallRule_DROP FirewallRuleAction = 1
|
|
)
|
|
|
|
// Enum value maps for FirewallRuleAction.
|
|
var (
|
|
FirewallRuleAction_name = map[int32]string{
|
|
0: "ACCEPT",
|
|
1: "DROP",
|
|
}
|
|
FirewallRuleAction_value = map[string]int32{
|
|
"ACCEPT": 0,
|
|
"DROP": 1,
|
|
}
|
|
)
|
|
|
|
func (x FirewallRuleAction) Enum() *FirewallRuleAction {
|
|
p := new(FirewallRuleAction)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x FirewallRuleAction) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (FirewallRuleAction) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_management_proto_enumTypes[3].Descriptor()
|
|
}
|
|
|
|
func (FirewallRuleAction) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[3]
|
|
}
|
|
|
|
func (x FirewallRuleAction) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use FirewallRuleAction.Descriptor instead.
|
|
func (FirewallRuleAction) EnumDescriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{27, 1}
|
|
}
|
|
|
|
type FirewallRuleProtocol int32
|
|
|
|
const (
|
|
FirewallRule_UNKNOWN FirewallRuleProtocol = 0
|
|
FirewallRule_ALL FirewallRuleProtocol = 1
|
|
FirewallRule_TCP FirewallRuleProtocol = 2
|
|
FirewallRule_UDP FirewallRuleProtocol = 3
|
|
FirewallRule_ICMP FirewallRuleProtocol = 4
|
|
)
|
|
|
|
// Enum value maps for FirewallRuleProtocol.
|
|
var (
|
|
FirewallRuleProtocol_name = map[int32]string{
|
|
0: "UNKNOWN",
|
|
1: "ALL",
|
|
2: "TCP",
|
|
3: "UDP",
|
|
4: "ICMP",
|
|
}
|
|
FirewallRuleProtocol_value = map[string]int32{
|
|
"UNKNOWN": 0,
|
|
"ALL": 1,
|
|
"TCP": 2,
|
|
"UDP": 3,
|
|
"ICMP": 4,
|
|
}
|
|
)
|
|
|
|
func (x FirewallRuleProtocol) Enum() *FirewallRuleProtocol {
|
|
p := new(FirewallRuleProtocol)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x FirewallRuleProtocol) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (FirewallRuleProtocol) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_management_proto_enumTypes[4].Descriptor()
|
|
}
|
|
|
|
func (FirewallRuleProtocol) Type() protoreflect.EnumType {
|
|
return &file_management_proto_enumTypes[4]
|
|
}
|
|
|
|
func (x FirewallRuleProtocol) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use FirewallRuleProtocol.Descriptor instead.
|
|
func (FirewallRuleProtocol) EnumDescriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{27, 2}
|
|
}
|
|
|
|
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 Wiretrustee Management Service protocol
|
|
Version int32 `protobuf:"varint,3,opt,name=version,proto3" json:"version,omitempty"`
|
|
}
|
|
|
|
func (x *EncryptedMessage) Reset() {
|
|
*x = EncryptedMessage{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *EncryptedMessage) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*EncryptedMessage) ProtoMessage() {}
|
|
|
|
func (x *EncryptedMessage) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[0]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use EncryptedMessage.ProtoReflect.Descriptor instead.
|
|
func (*EncryptedMessage) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *EncryptedMessage) GetWgPubKey() string {
|
|
if x != nil {
|
|
return x.WgPubKey
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *EncryptedMessage) GetBody() []byte {
|
|
if x != nil {
|
|
return x.Body
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *EncryptedMessage) GetVersion() int32 {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type SyncRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
}
|
|
|
|
func (x *SyncRequest) Reset() {
|
|
*x = SyncRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SyncRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SyncRequest) ProtoMessage() {}
|
|
|
|
func (x *SyncRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[1]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SyncRequest.ProtoReflect.Descriptor instead.
|
|
func (*SyncRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
// SyncResponse represents a state that should be applied to the local peer (e.g. Wiretrustee servers config as well as local peer and remote peers configs)
|
|
type SyncResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Global config
|
|
WiretrusteeConfig *WiretrusteeConfig `protobuf:"bytes,1,opt,name=wiretrusteeConfig,proto3" json:"wiretrusteeConfig,omitempty"`
|
|
// Deprecated. Use NetworkMap.PeerConfig
|
|
PeerConfig *PeerConfig `protobuf:"bytes,2,opt,name=peerConfig,proto3" json:"peerConfig,omitempty"`
|
|
// Deprecated. Use NetworkMap.RemotePeerConfig
|
|
RemotePeers []*RemotePeerConfig `protobuf:"bytes,3,rep,name=remotePeers,proto3" json:"remotePeers,omitempty"`
|
|
// Indicates whether remotePeers array is empty or not to bypass protobuf null and empty array equality.
|
|
// Deprecated. Use NetworkMap.remotePeersIsEmpty
|
|
RemotePeersIsEmpty bool `protobuf:"varint,4,opt,name=remotePeersIsEmpty,proto3" json:"remotePeersIsEmpty,omitempty"`
|
|
NetworkMap *NetworkMap `protobuf:"bytes,5,opt,name=NetworkMap,proto3" json:"NetworkMap,omitempty"`
|
|
}
|
|
|
|
func (x *SyncResponse) Reset() {
|
|
*x = SyncResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *SyncResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*SyncResponse) ProtoMessage() {}
|
|
|
|
func (x *SyncResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_management_proto_msgTypes[2]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use SyncResponse.ProtoReflect.Descriptor instead.
|
|
func (*SyncResponse) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *SyncResponse) GetWiretrusteeConfig() *WiretrusteeConfig {
|
|
if x != nil {
|
|
return x.WiretrusteeConfig
|
|
}
|
|
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
|
|
}
|
|
|
|
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"`
|
|
}
|
|
|
|
func (x *LoginRequest) Reset() {
|
|
*x = LoginRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[3]
|
|
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[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 LoginRequest.ProtoReflect.Descriptor instead.
|
|
func (*LoginRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
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
|
|
}
|
|
|
|
// 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[4]
|
|
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[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 PeerKeys.ProtoReflect.Descriptor instead.
|
|
func (*PeerKeys) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
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
|
|
}
|
|
|
|
// 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"`
|
|
WiretrusteeVersion string `protobuf:"bytes,7,opt,name=wiretrusteeVersion,proto3" json:"wiretrusteeVersion,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"`
|
|
}
|
|
|
|
func (x *PeerSystemMeta) Reset() {
|
|
*x = PeerSystemMeta{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[5]
|
|
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[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 PeerSystemMeta.ProtoReflect.Descriptor instead.
|
|
func (*PeerSystemMeta) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
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) GetWiretrusteeVersion() string {
|
|
if x != nil {
|
|
return x.WiretrusteeVersion
|
|
}
|
|
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 ""
|
|
}
|
|
|
|
type LoginResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Global config
|
|
WiretrusteeConfig *WiretrusteeConfig `protobuf:"bytes,1,opt,name=wiretrusteeConfig,proto3" json:"wiretrusteeConfig,omitempty"`
|
|
// Peer local config
|
|
PeerConfig *PeerConfig `protobuf:"bytes,2,opt,name=peerConfig,proto3" json:"peerConfig,omitempty"`
|
|
}
|
|
|
|
func (x *LoginResponse) Reset() {
|
|
*x = LoginResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[6]
|
|
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[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 LoginResponse.ProtoReflect.Descriptor instead.
|
|
func (*LoginResponse) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (x *LoginResponse) GetWiretrusteeConfig() *WiretrusteeConfig {
|
|
if x != nil {
|
|
return x.WiretrusteeConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *LoginResponse) GetPeerConfig() *PeerConfig {
|
|
if x != nil {
|
|
return x.PeerConfig
|
|
}
|
|
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 Wiretrustee 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[7]
|
|
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[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 ServerKeyResponse.ProtoReflect.Descriptor instead.
|
|
func (*ServerKeyResponse) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
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[8]
|
|
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[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 Empty.ProtoReflect.Descriptor instead.
|
|
func (*Empty) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
// WiretrusteeConfig is a common configuration of any Wiretrustee peer. It contains STUN, TURN, Signal and Management servers configurations
|
|
type WiretrusteeConfig 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"`
|
|
}
|
|
|
|
func (x *WiretrusteeConfig) Reset() {
|
|
*x = WiretrusteeConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[9]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *WiretrusteeConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*WiretrusteeConfig) ProtoMessage() {}
|
|
|
|
func (x *WiretrusteeConfig) 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 WiretrusteeConfig.ProtoReflect.Descriptor instead.
|
|
func (*WiretrusteeConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
func (x *WiretrusteeConfig) GetStuns() []*HostConfig {
|
|
if x != nil {
|
|
return x.Stuns
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WiretrusteeConfig) GetTurns() []*ProtectedHostConfig {
|
|
if x != nil {
|
|
return x.Turns
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WiretrusteeConfig) GetSignal() *HostConfig {
|
|
if x != nil {
|
|
return x.Signal
|
|
}
|
|
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.wiretrustee.com:4430 or signal.wiretrustee.com:10000
|
|
Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
|
|
Protocol HostConfig_Protocol `protobuf:"varint,2,opt,name=protocol,proto3,enum=management.HostConfig_Protocol" json:"protocol,omitempty"`
|
|
}
|
|
|
|
func (x *HostConfig) Reset() {
|
|
*x = HostConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[10]
|
|
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[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 HostConfig.ProtoReflect.Descriptor instead.
|
|
func (*HostConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
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
|
|
}
|
|
|
|
// 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[11]
|
|
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[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 ProtectedHostConfig.ProtoReflect.Descriptor instead.
|
|
func (*ProtectedHostConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
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 Wiretrustee VPN (a Wireguard address config)
|
|
Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
|
|
// Wiretrustee DNS server (a Wireguard DNS config)
|
|
Dns string `protobuf:"bytes,2,opt,name=dns,proto3" json:"dns,omitempty"`
|
|
// SSHConfig of the peer.
|
|
SshConfig *SSHConfig `protobuf:"bytes,3,opt,name=sshConfig,proto3" json:"sshConfig,omitempty"`
|
|
// Peer fully qualified domain name
|
|
Fqdn string `protobuf:"bytes,4,opt,name=fqdn,proto3" json:"fqdn,omitempty"`
|
|
}
|
|
|
|
func (x *PeerConfig) Reset() {
|
|
*x = PeerConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[12]
|
|
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[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 PeerConfig.ProtoReflect.Descriptor instead.
|
|
func (*PeerConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{12}
|
|
}
|
|
|
|
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 ""
|
|
}
|
|
|
|
// 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"`
|
|
}
|
|
|
|
func (x *NetworkMap) Reset() {
|
|
*x = NetworkMap{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[13]
|
|
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[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 NetworkMap.ProtoReflect.Descriptor instead.
|
|
func (*NetworkMap) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{13}
|
|
}
|
|
|
|
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
|
|
}
|
|
|
|
// 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"`
|
|
}
|
|
|
|
func (x *RemotePeerConfig) Reset() {
|
|
*x = RemotePeerConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[14]
|
|
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[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 RemotePeerConfig.ProtoReflect.Descriptor instead.
|
|
func (*RemotePeerConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{14}
|
|
}
|
|
|
|
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 ""
|
|
}
|
|
|
|
// SSHConfig represents SSH configurations of a peer.
|
|
type SSHConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// sshEnabled indicates whether a SSH server is enabled on this peer
|
|
SshEnabled bool `protobuf:"varint,1,opt,name=sshEnabled,proto3" json:"sshEnabled,omitempty"`
|
|
// sshPubKey is a SSH public key of a peer to be added to authorized_hosts.
|
|
// This property should be ignore if SSHConfig comes from PeerConfig.
|
|
SshPubKey []byte `protobuf:"bytes,2,opt,name=sshPubKey,proto3" json:"sshPubKey,omitempty"`
|
|
}
|
|
|
|
func (x *SSHConfig) Reset() {
|
|
*x = SSHConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[15]
|
|
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[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 SSHConfig.ProtoReflect.Descriptor instead.
|
|
func (*SSHConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{15}
|
|
}
|
|
|
|
func (x *SSHConfig) GetSshEnabled() bool {
|
|
if x != nil {
|
|
return x.SshEnabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *SSHConfig) GetSshPubKey() []byte {
|
|
if x != nil {
|
|
return x.SshPubKey
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// DeviceAuthorizationFlowRequest empty struct for future expansion
|
|
type DeviceAuthorizationFlowRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
}
|
|
|
|
func (x *DeviceAuthorizationFlowRequest) Reset() {
|
|
*x = DeviceAuthorizationFlowRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[16]
|
|
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[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 DeviceAuthorizationFlowRequest.ProtoReflect.Descriptor instead.
|
|
func (*DeviceAuthorizationFlowRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{16}
|
|
}
|
|
|
|
// 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[17]
|
|
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[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 DeviceAuthorizationFlow.ProtoReflect.Descriptor instead.
|
|
func (*DeviceAuthorizationFlow) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{17}
|
|
}
|
|
|
|
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[18]
|
|
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[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 PKCEAuthorizationFlowRequest.ProtoReflect.Descriptor instead.
|
|
func (*PKCEAuthorizationFlowRequest) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{18}
|
|
}
|
|
|
|
// 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[19]
|
|
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[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 PKCEAuthorizationFlow.ProtoReflect.Descriptor instead.
|
|
func (*PKCEAuthorizationFlow) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{19}
|
|
}
|
|
|
|
func (x *PKCEAuthorizationFlow) GetProviderConfig() *ProviderConfig {
|
|
if x != nil {
|
|
return x.ProviderConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// ProviderConfig has all attributes needed to initiate a device/pkce authorization flow
|
|
type ProviderConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// An IDP application client id
|
|
ClientID string `protobuf:"bytes,1,opt,name=ClientID,proto3" json:"ClientID,omitempty"`
|
|
// An IDP application client secret
|
|
ClientSecret string `protobuf:"bytes,2,opt,name=ClientSecret,proto3" json:"ClientSecret,omitempty"`
|
|
// An IDP API domain
|
|
// Deprecated. Use a DeviceAuthEndpoint and TokenEndpoint
|
|
Domain string `protobuf:"bytes,3,opt,name=Domain,proto3" json:"Domain,omitempty"`
|
|
// An Audience for validation
|
|
Audience string `protobuf:"bytes,4,opt,name=Audience,proto3" json:"Audience,omitempty"`
|
|
// DeviceAuthEndpoint is an endpoint to request device authentication code.
|
|
DeviceAuthEndpoint string `protobuf:"bytes,5,opt,name=DeviceAuthEndpoint,proto3" json:"DeviceAuthEndpoint,omitempty"`
|
|
// TokenEndpoint is an endpoint to request auth token.
|
|
TokenEndpoint string `protobuf:"bytes,6,opt,name=TokenEndpoint,proto3" json:"TokenEndpoint,omitempty"`
|
|
// Scopes provides the scopes to be included in the token request
|
|
Scope string `protobuf:"bytes,7,opt,name=Scope,proto3" json:"Scope,omitempty"`
|
|
// UseIDToken indicates if the id token should be used for authentication
|
|
UseIDToken bool `protobuf:"varint,8,opt,name=UseIDToken,proto3" json:"UseIDToken,omitempty"`
|
|
// AuthorizationEndpoint is the endpoint of an IDP manager where clients can obtain authorization code.
|
|
AuthorizationEndpoint string `protobuf:"bytes,9,opt,name=AuthorizationEndpoint,proto3" json:"AuthorizationEndpoint,omitempty"`
|
|
// RedirectURLs handles authorization code from IDP manager
|
|
RedirectURLs []string `protobuf:"bytes,10,rep,name=RedirectURLs,proto3" json:"RedirectURLs,omitempty"`
|
|
}
|
|
|
|
func (x *ProviderConfig) Reset() {
|
|
*x = ProviderConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[20]
|
|
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[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 ProviderConfig.ProtoReflect.Descriptor instead.
|
|
func (*ProviderConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{20}
|
|
}
|
|
|
|
func (x *ProviderConfig) GetClientID() string {
|
|
if x != nil {
|
|
return x.ClientID
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetClientSecret() string {
|
|
if x != nil {
|
|
return x.ClientSecret
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetDomain() string {
|
|
if x != nil {
|
|
return x.Domain
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetAudience() string {
|
|
if x != nil {
|
|
return x.Audience
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetDeviceAuthEndpoint() string {
|
|
if x != nil {
|
|
return x.DeviceAuthEndpoint
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetTokenEndpoint() string {
|
|
if x != nil {
|
|
return x.TokenEndpoint
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetScope() string {
|
|
if x != nil {
|
|
return x.Scope
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetUseIDToken() bool {
|
|
if x != nil {
|
|
return x.UseIDToken
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *ProviderConfig) GetAuthorizationEndpoint() string {
|
|
if x != nil {
|
|
return x.AuthorizationEndpoint
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProviderConfig) GetRedirectURLs() []string {
|
|
if x != nil {
|
|
return x.RedirectURLs
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// 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"`
|
|
}
|
|
|
|
func (x *Route) Reset() {
|
|
*x = Route{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[21]
|
|
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[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 Route.ProtoReflect.Descriptor instead.
|
|
func (*Route) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{21}
|
|
}
|
|
|
|
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 ""
|
|
}
|
|
|
|
// DNSConfig represents a dns.Update
|
|
type DNSConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
ServiceEnable bool `protobuf:"varint,1,opt,name=ServiceEnable,proto3" json:"ServiceEnable,omitempty"`
|
|
NameServerGroups []*NameServerGroup `protobuf:"bytes,2,rep,name=NameServerGroups,proto3" json:"NameServerGroups,omitempty"`
|
|
CustomZones []*CustomZone `protobuf:"bytes,3,rep,name=CustomZones,proto3" json:"CustomZones,omitempty"`
|
|
}
|
|
|
|
func (x *DNSConfig) Reset() {
|
|
*x = DNSConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[22]
|
|
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[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 DNSConfig.ProtoReflect.Descriptor instead.
|
|
func (*DNSConfig) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{22}
|
|
}
|
|
|
|
func (x *DNSConfig) GetServiceEnable() bool {
|
|
if x != nil {
|
|
return x.ServiceEnable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DNSConfig) GetNameServerGroups() []*NameServerGroup {
|
|
if x != nil {
|
|
return x.NameServerGroups
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *DNSConfig) GetCustomZones() []*CustomZone {
|
|
if x != nil {
|
|
return x.CustomZones
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// CustomZone represents a dns.CustomZone
|
|
type CustomZone struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Domain string `protobuf:"bytes,1,opt,name=Domain,proto3" json:"Domain,omitempty"`
|
|
Records []*SimpleRecord `protobuf:"bytes,2,rep,name=Records,proto3" json:"Records,omitempty"`
|
|
}
|
|
|
|
func (x *CustomZone) Reset() {
|
|
*x = CustomZone{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[23]
|
|
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[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 CustomZone.ProtoReflect.Descriptor instead.
|
|
func (*CustomZone) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{23}
|
|
}
|
|
|
|
func (x *CustomZone) GetDomain() string {
|
|
if x != nil {
|
|
return x.Domain
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CustomZone) GetRecords() []*SimpleRecord {
|
|
if x != nil {
|
|
return x.Records
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SimpleRecord represents a dns.SimpleRecord
|
|
type SimpleRecord struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Name string `protobuf:"bytes,1,opt,name=Name,proto3" json:"Name,omitempty"`
|
|
Type int64 `protobuf:"varint,2,opt,name=Type,proto3" json:"Type,omitempty"`
|
|
Class string `protobuf:"bytes,3,opt,name=Class,proto3" json:"Class,omitempty"`
|
|
TTL int64 `protobuf:"varint,4,opt,name=TTL,proto3" json:"TTL,omitempty"`
|
|
RData string `protobuf:"bytes,5,opt,name=RData,proto3" json:"RData,omitempty"`
|
|
}
|
|
|
|
func (x *SimpleRecord) Reset() {
|
|
*x = SimpleRecord{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[24]
|
|
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[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 SimpleRecord.ProtoReflect.Descriptor instead.
|
|
func (*SimpleRecord) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{24}
|
|
}
|
|
|
|
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[25]
|
|
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[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 NameServerGroup.ProtoReflect.Descriptor instead.
|
|
func (*NameServerGroup) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{25}
|
|
}
|
|
|
|
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[26]
|
|
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[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 NameServer.ProtoReflect.Descriptor instead.
|
|
func (*NameServer) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{26}
|
|
}
|
|
|
|
func (x *NameServer) GetIP() string {
|
|
if x != nil {
|
|
return x.IP
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *NameServer) GetNSType() int64 {
|
|
if x != nil {
|
|
return x.NSType
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *NameServer) GetPort() int64 {
|
|
if x != nil {
|
|
return x.Port
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// FirewallRule represents a firewall rule
|
|
type FirewallRule struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
PeerIP string `protobuf:"bytes,1,opt,name=PeerIP,proto3" json:"PeerIP,omitempty"`
|
|
Direction FirewallRuleDirection `protobuf:"varint,2,opt,name=Direction,proto3,enum=management.FirewallRuleDirection" json:"Direction,omitempty"`
|
|
Action FirewallRuleAction `protobuf:"varint,3,opt,name=Action,proto3,enum=management.FirewallRuleAction" json:"Action,omitempty"`
|
|
Protocol FirewallRuleProtocol `protobuf:"varint,4,opt,name=Protocol,proto3,enum=management.FirewallRuleProtocol" json:"Protocol,omitempty"`
|
|
Port string `protobuf:"bytes,5,opt,name=Port,proto3" json:"Port,omitempty"`
|
|
}
|
|
|
|
func (x *FirewallRule) Reset() {
|
|
*x = FirewallRule{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_management_proto_msgTypes[27]
|
|
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[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 FirewallRule.ProtoReflect.Descriptor instead.
|
|
func (*FirewallRule) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{27}
|
|
}
|
|
|
|
func (x *FirewallRule) GetPeerIP() string {
|
|
if x != nil {
|
|
return x.PeerIP
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *FirewallRule) GetDirection() FirewallRuleDirection {
|
|
if x != nil {
|
|
return x.Direction
|
|
}
|
|
return FirewallRule_IN
|
|
}
|
|
|
|
func (x *FirewallRule) GetAction() FirewallRuleAction {
|
|
if x != nil {
|
|
return x.Action
|
|
}
|
|
return FirewallRule_ACCEPT
|
|
}
|
|
|
|
func (x *FirewallRule) GetProtocol() FirewallRuleProtocol {
|
|
if x != nil {
|
|
return x.Protocol
|
|
}
|
|
return FirewallRule_UNKNOWN
|
|
}
|
|
|
|
func (x *FirewallRule) GetPort() string {
|
|
if x != nil {
|
|
return x.Port
|
|
}
|
|
return ""
|
|
}
|
|
|
|
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[28]
|
|
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[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 NetworkAddress.ProtoReflect.Descriptor instead.
|
|
func (*NetworkAddress) Descriptor() ([]byte, []int) {
|
|
return file_management_proto_rawDescGZIP(), []int{28}
|
|
}
|
|
|
|
func (x *NetworkAddress) GetNetIP() string {
|
|
if x != nil {
|
|
return x.NetIP
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *NetworkAddress) GetMac() string {
|
|
if x != nil {
|
|
return x.Mac
|
|
}
|
|
return ""
|
|
}
|
|
|
|
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, 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, 0x0d, 0x0a,
|
|
0x0b, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xbb, 0x02, 0x0a,
|
|
0x0c, 0x53, 0x79, 0x6e, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a,
|
|
0x11, 0x77, 0x69, 0x72, 0x65, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x65, 0x43, 0x6f, 0x6e, 0x66,
|
|
0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
|
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x57, 0x69, 0x72, 0x65, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65,
|
|
0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x11, 0x77, 0x69, 0x72, 0x65, 0x74, 0x72, 0x75,
|
|
0x73, 0x74, 0x65, 0x65, 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, 0x22, 0xa8, 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, 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, 0xee, 0x03, 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, 0x2e, 0x0a, 0x12, 0x77, 0x69, 0x72, 0x65, 0x74, 0x72,
|
|
0x75, 0x73, 0x74, 0x65, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x12, 0x77, 0x69, 0x72, 0x65, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x65, 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, 0x22, 0x94, 0x01, 0x0a,
|
|
0x0d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b,
|
|
0x0a, 0x11, 0x77, 0x69, 0x72, 0x65, 0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x65, 0x43, 0x6f, 0x6e,
|
|
0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x61, 0x6e, 0x61,
|
|
0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x57, 0x69, 0x72, 0x65, 0x74, 0x72, 0x75, 0x73, 0x74,
|
|
0x65, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x11, 0x77, 0x69, 0x72, 0x65, 0x74, 0x72,
|
|
0x75, 0x73, 0x74, 0x65, 0x65, 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, 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, 0xa8, 0x01, 0x0a, 0x11, 0x57, 0x69, 0x72, 0x65,
|
|
0x74, 0x72, 0x75, 0x73, 0x74, 0x65, 0x65, 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, 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, 0x7d, 0x0a,
|
|
0x13, 0x50, 0x72, 0x6f, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x48, 0x6f, 0x73, 0x74, 0x43, 0x6f,
|
|
0x6e, 0x66, 0x69, 0x67, 0x12, 0x36, 0x0a, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66,
|
|
0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
|
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x48, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
|
0x52, 0x0a, 0x68, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04,
|
|
0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72,
|
|
0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x81, 0x01, 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,
|
|
0x22, 0xe2, 0x03, 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, 0x22, 0x97, 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, 0x22,
|
|
0x49, 0x0a, 0x09, 0x53, 0x53, 0x48, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1e, 0x0a, 0x0a,
|
|
0x73, 0x73, 0x68, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
|
|
0x52, 0x0a, 0x73, 0x73, 0x68, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09,
|
|
0x73, 0x73, 0x68, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52,
|
|
0x09, 0x73, 0x73, 0x68, 0x50, 0x75, 0x62, 0x4b, 0x65, 0x79, 0x22, 0x20, 0x0a, 0x1e, 0x44, 0x65,
|
|
0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xbf, 0x01, 0x0a,
|
|
0x17, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x12, 0x48, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x76,
|
|
0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x6d, 0x61, 0x6e,
|
|
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75,
|
|
0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x2e,
|
|
0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64,
|
|
0x65, 0x72, 0x12, 0x42, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f,
|
|
0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x61, 0x6e,
|
|
0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x16, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
|
|
0x65, 0x72, 0x12, 0x0a, 0x0a, 0x06, 0x48, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x10, 0x00, 0x22, 0x1e,
|
|
0x0a, 0x1c, 0x50, 0x4b, 0x43, 0x45, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x5b,
|
|
0x0a, 0x15, 0x50, 0x4b, 0x43, 0x45, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x6f, 0x77, 0x12, 0x42, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x76, 0x69,
|
|
0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
|
0x1a, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x72, 0x6f,
|
|
0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x50, 0x72, 0x6f,
|
|
0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xea, 0x02, 0x0a, 0x0e,
|
|
0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a,
|
|
0x0a, 0x08, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x08, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x43, 0x6c,
|
|
0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x0c, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x16,
|
|
0x0a, 0x06, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
|
|
0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e,
|
|
0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e,
|
|
0x63, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68,
|
|
0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12,
|
|
0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x41, 0x75, 0x74, 0x68, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69,
|
|
0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x45, 0x6e, 0x64, 0x70, 0x6f,
|
|
0x69, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
|
|
0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x63, 0x6f, 0x70,
|
|
0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x53, 0x63, 0x6f, 0x70, 0x65, 0x12, 0x1e,
|
|
0x0a, 0x0a, 0x55, 0x73, 0x65, 0x49, 0x44, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x08, 0x20, 0x01,
|
|
0x28, 0x08, 0x52, 0x0a, 0x55, 0x73, 0x65, 0x49, 0x44, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x34,
|
|
0x0a, 0x15, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45,
|
|
0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x41,
|
|
0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64, 0x70,
|
|
0x6f, 0x69, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
|
|
0x55, 0x52, 0x4c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x52, 0x65, 0x64, 0x69,
|
|
0x72, 0x65, 0x63, 0x74, 0x55, 0x52, 0x4c, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x05, 0x52, 0x6f, 0x75,
|
|
0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
|
|
0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x07, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x20, 0x0a, 0x0b,
|
|
0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
0x03, 0x52, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12,
|
|
0x0a, 0x04, 0x50, 0x65, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x50, 0x65,
|
|
0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x18, 0x05, 0x20, 0x01,
|
|
0x28, 0x03, 0x52, 0x06, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x61,
|
|
0x73, 0x71, 0x75, 0x65, 0x72, 0x61, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a,
|
|
0x4d, 0x61, 0x73, 0x71, 0x75, 0x65, 0x72, 0x61, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x4e, 0x65,
|
|
0x74, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x4e, 0x65, 0x74, 0x49, 0x44,
|
|
0x22, 0xb4, 0x01, 0x0a, 0x09, 0x44, 0x4e, 0x53, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24,
|
|
0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e,
|
|
0x61, 0x62, 0x6c, 0x65, 0x12, 0x47, 0x0a, 0x10, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76,
|
|
0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b,
|
|
0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x61, 0x6d, 0x65,
|
|
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x10, 0x4e, 0x61, 0x6d,
|
|
0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x73, 0x12, 0x38, 0x0a,
|
|
0x0b, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03,
|
|
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
|
|
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5a, 0x6f, 0x6e, 0x65, 0x52, 0x0b, 0x43, 0x75, 0x73, 0x74,
|
|
0x6f, 0x6d, 0x5a, 0x6f, 0x6e, 0x65, 0x73, 0x22, 0x58, 0x0a, 0x0a, 0x43, 0x75, 0x73, 0x74, 0x6f,
|
|
0x6d, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x32, 0x0a,
|
|
0x07, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18,
|
|
0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70,
|
|
0x6c, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x07, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
|
|
0x73, 0x22, 0x74, 0x0a, 0x0c, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x63, 0x6f, 0x72,
|
|
0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x03, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x6c, 0x61,
|
|
0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12,
|
|
0x10, 0x0a, 0x03, 0x54, 0x54, 0x4c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x54, 0x54,
|
|
0x4c, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x44, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x05, 0x52, 0x44, 0x61, 0x74, 0x61, 0x22, 0xb3, 0x01, 0x0a, 0x0f, 0x4e, 0x61, 0x6d, 0x65,
|
|
0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x38, 0x0a, 0x0b, 0x4e,
|
|
0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
|
|
0x32, 0x16, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4e, 0x61,
|
|
0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x0b, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65,
|
|
0x72, 0x76, 0x65, 0x72, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79,
|
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x50, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x12,
|
|
0x18, 0x0a, 0x07, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09,
|
|
0x52, 0x07, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x53, 0x65, 0x61,
|
|
0x72, 0x63, 0x68, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
|
|
0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x44,
|
|
0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x48, 0x0a,
|
|
0x0a, 0x4e, 0x61, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49,
|
|
0x50, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x50, 0x12, 0x16, 0x0a, 0x06, 0x4e,
|
|
0x53, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x4e, 0x53, 0x54,
|
|
0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
0x03, 0x52, 0x04, 0x50, 0x6f, 0x72, 0x74, 0x22, 0xf0, 0x02, 0x0a, 0x0c, 0x46, 0x69, 0x72, 0x65,
|
|
0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x50, 0x65, 0x65, 0x72,
|
|
0x49, 0x50, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x50, 0x65, 0x65, 0x72, 0x49, 0x50,
|
|
0x12, 0x40, 0x0a, 0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74,
|
|
0x2e, 0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x2e, 0x64, 0x69,
|
|
0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
|
|
0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
|
|
0x46, 0x69, 0x72, 0x65, 0x77, 0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x2e, 0x61, 0x63, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x52, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, 0x08, 0x50,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e,
|
|
0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x69, 0x72, 0x65, 0x77,
|
|
0x61, 0x6c, 0x6c, 0x52, 0x75, 0x6c, 0x65, 0x2e, 0x70, 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, 0x22, 0x1c,
|
|
0x0a, 0x09, 0x64, 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, 0x22, 0x1e, 0x0a, 0x06,
|
|
0x61, 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, 0x22, 0x3c, 0x0a, 0x08,
|
|
0x70, 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, 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, 0x32, 0xd1, 0x03, 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, 0x42, 0x08, 0x5a, 0x06, 0x2f, 0x70, 0x72, 0x6f,
|
|
0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
|
}
|
|
|
|
var (
|
|
file_management_proto_rawDescOnce sync.Once
|
|
file_management_proto_rawDescData = file_management_proto_rawDesc
|
|
)
|
|
|
|
func file_management_proto_rawDescGZIP() []byte {
|
|
file_management_proto_rawDescOnce.Do(func() {
|
|
file_management_proto_rawDescData = protoimpl.X.CompressGZIP(file_management_proto_rawDescData)
|
|
})
|
|
return file_management_proto_rawDescData
|
|
}
|
|
|
|
var file_management_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
|
|
var file_management_proto_msgTypes = make([]protoimpl.MessageInfo, 29)
|
|
var file_management_proto_goTypes = []interface{}{
|
|
(HostConfig_Protocol)(0), // 0: management.HostConfig.Protocol
|
|
(DeviceAuthorizationFlowProvider)(0), // 1: management.DeviceAuthorizationFlow.provider
|
|
(FirewallRuleDirection)(0), // 2: management.FirewallRule.direction
|
|
(FirewallRuleAction)(0), // 3: management.FirewallRule.action
|
|
(FirewallRuleProtocol)(0), // 4: management.FirewallRule.protocol
|
|
(*EncryptedMessage)(nil), // 5: management.EncryptedMessage
|
|
(*SyncRequest)(nil), // 6: management.SyncRequest
|
|
(*SyncResponse)(nil), // 7: management.SyncResponse
|
|
(*LoginRequest)(nil), // 8: management.LoginRequest
|
|
(*PeerKeys)(nil), // 9: management.PeerKeys
|
|
(*PeerSystemMeta)(nil), // 10: management.PeerSystemMeta
|
|
(*LoginResponse)(nil), // 11: management.LoginResponse
|
|
(*ServerKeyResponse)(nil), // 12: management.ServerKeyResponse
|
|
(*Empty)(nil), // 13: management.Empty
|
|
(*WiretrusteeConfig)(nil), // 14: management.WiretrusteeConfig
|
|
(*HostConfig)(nil), // 15: management.HostConfig
|
|
(*ProtectedHostConfig)(nil), // 16: management.ProtectedHostConfig
|
|
(*PeerConfig)(nil), // 17: management.PeerConfig
|
|
(*NetworkMap)(nil), // 18: management.NetworkMap
|
|
(*RemotePeerConfig)(nil), // 19: management.RemotePeerConfig
|
|
(*SSHConfig)(nil), // 20: management.SSHConfig
|
|
(*DeviceAuthorizationFlowRequest)(nil), // 21: management.DeviceAuthorizationFlowRequest
|
|
(*DeviceAuthorizationFlow)(nil), // 22: management.DeviceAuthorizationFlow
|
|
(*PKCEAuthorizationFlowRequest)(nil), // 23: management.PKCEAuthorizationFlowRequest
|
|
(*PKCEAuthorizationFlow)(nil), // 24: management.PKCEAuthorizationFlow
|
|
(*ProviderConfig)(nil), // 25: management.ProviderConfig
|
|
(*Route)(nil), // 26: management.Route
|
|
(*DNSConfig)(nil), // 27: management.DNSConfig
|
|
(*CustomZone)(nil), // 28: management.CustomZone
|
|
(*SimpleRecord)(nil), // 29: management.SimpleRecord
|
|
(*NameServerGroup)(nil), // 30: management.NameServerGroup
|
|
(*NameServer)(nil), // 31: management.NameServer
|
|
(*FirewallRule)(nil), // 32: management.FirewallRule
|
|
(*NetworkAddress)(nil), // 33: management.NetworkAddress
|
|
(*timestamppb.Timestamp)(nil), // 34: google.protobuf.Timestamp
|
|
}
|
|
var file_management_proto_depIdxs = []int32{
|
|
14, // 0: management.SyncResponse.wiretrusteeConfig:type_name -> management.WiretrusteeConfig
|
|
17, // 1: management.SyncResponse.peerConfig:type_name -> management.PeerConfig
|
|
19, // 2: management.SyncResponse.remotePeers:type_name -> management.RemotePeerConfig
|
|
18, // 3: management.SyncResponse.NetworkMap:type_name -> management.NetworkMap
|
|
10, // 4: management.LoginRequest.meta:type_name -> management.PeerSystemMeta
|
|
9, // 5: management.LoginRequest.peerKeys:type_name -> management.PeerKeys
|
|
33, // 6: management.PeerSystemMeta.networkAddresses:type_name -> management.NetworkAddress
|
|
14, // 7: management.LoginResponse.wiretrusteeConfig:type_name -> management.WiretrusteeConfig
|
|
17, // 8: management.LoginResponse.peerConfig:type_name -> management.PeerConfig
|
|
34, // 9: management.ServerKeyResponse.expiresAt:type_name -> google.protobuf.Timestamp
|
|
15, // 10: management.WiretrusteeConfig.stuns:type_name -> management.HostConfig
|
|
16, // 11: management.WiretrusteeConfig.turns:type_name -> management.ProtectedHostConfig
|
|
15, // 12: management.WiretrusteeConfig.signal:type_name -> management.HostConfig
|
|
0, // 13: management.HostConfig.protocol:type_name -> management.HostConfig.Protocol
|
|
15, // 14: management.ProtectedHostConfig.hostConfig:type_name -> management.HostConfig
|
|
20, // 15: management.PeerConfig.sshConfig:type_name -> management.SSHConfig
|
|
17, // 16: management.NetworkMap.peerConfig:type_name -> management.PeerConfig
|
|
19, // 17: management.NetworkMap.remotePeers:type_name -> management.RemotePeerConfig
|
|
26, // 18: management.NetworkMap.Routes:type_name -> management.Route
|
|
27, // 19: management.NetworkMap.DNSConfig:type_name -> management.DNSConfig
|
|
19, // 20: management.NetworkMap.offlinePeers:type_name -> management.RemotePeerConfig
|
|
32, // 21: management.NetworkMap.FirewallRules:type_name -> management.FirewallRule
|
|
20, // 22: management.RemotePeerConfig.sshConfig:type_name -> management.SSHConfig
|
|
1, // 23: management.DeviceAuthorizationFlow.Provider:type_name -> management.DeviceAuthorizationFlow.provider
|
|
25, // 24: management.DeviceAuthorizationFlow.ProviderConfig:type_name -> management.ProviderConfig
|
|
25, // 25: management.PKCEAuthorizationFlow.ProviderConfig:type_name -> management.ProviderConfig
|
|
30, // 26: management.DNSConfig.NameServerGroups:type_name -> management.NameServerGroup
|
|
28, // 27: management.DNSConfig.CustomZones:type_name -> management.CustomZone
|
|
29, // 28: management.CustomZone.Records:type_name -> management.SimpleRecord
|
|
31, // 29: management.NameServerGroup.NameServers:type_name -> management.NameServer
|
|
2, // 30: management.FirewallRule.Direction:type_name -> management.FirewallRule.direction
|
|
3, // 31: management.FirewallRule.Action:type_name -> management.FirewallRule.action
|
|
4, // 32: management.FirewallRule.Protocol:type_name -> management.FirewallRule.protocol
|
|
5, // 33: management.ManagementService.Login:input_type -> management.EncryptedMessage
|
|
5, // 34: management.ManagementService.Sync:input_type -> management.EncryptedMessage
|
|
13, // 35: management.ManagementService.GetServerKey:input_type -> management.Empty
|
|
13, // 36: management.ManagementService.isHealthy:input_type -> management.Empty
|
|
5, // 37: management.ManagementService.GetDeviceAuthorizationFlow:input_type -> management.EncryptedMessage
|
|
5, // 38: management.ManagementService.GetPKCEAuthorizationFlow:input_type -> management.EncryptedMessage
|
|
5, // 39: management.ManagementService.Login:output_type -> management.EncryptedMessage
|
|
5, // 40: management.ManagementService.Sync:output_type -> management.EncryptedMessage
|
|
12, // 41: management.ManagementService.GetServerKey:output_type -> management.ServerKeyResponse
|
|
13, // 42: management.ManagementService.isHealthy:output_type -> management.Empty
|
|
5, // 43: management.ManagementService.GetDeviceAuthorizationFlow:output_type -> management.EncryptedMessage
|
|
5, // 44: management.ManagementService.GetPKCEAuthorizationFlow:output_type -> management.EncryptedMessage
|
|
39, // [39:45] is the sub-list for method output_type
|
|
33, // [33:39] is the sub-list for method input_type
|
|
33, // [33:33] is the sub-list for extension type_name
|
|
33, // [33:33] is the sub-list for extension extendee
|
|
0, // [0:33] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_management_proto_init() }
|
|
func file_management_proto_init() {
|
|
if File_management_proto != nil {
|
|
return
|
|
}
|
|
if !protoimpl.UnsafeEnabled {
|
|
file_management_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*EncryptedMessage); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SyncRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*SyncResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_management_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*LoginRequest); 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.(*PeerKeys); 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.(*PeerSystemMeta); 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.(*LoginResponse); 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.(*ServerKeyResponse); 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.(*Empty); 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.(*WiretrusteeConfig); 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.(*HostConfig); 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.(*ProtectedHostConfig); 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.(*PeerConfig); 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.(*NetworkMap); 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.(*RemotePeerConfig); 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.(*SSHConfig); 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.(*DeviceAuthorizationFlowRequest); 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.(*DeviceAuthorizationFlow); 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.(*PKCEAuthorizationFlowRequest); 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.(*PKCEAuthorizationFlow); 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.(*ProviderConfig); 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.(*Route); 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.(*DNSConfig); 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.(*CustomZone); 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.(*SimpleRecord); 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.(*NameServerGroup); 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.(*NameServer); 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.(*FirewallRule); 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.(*NetworkAddress); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: file_management_proto_rawDesc,
|
|
NumEnums: 5,
|
|
NumMessages: 29,
|
|
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
|
|
}
|