// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.36.10 // protoc (unknown) // source: v1sync/syncservice.proto package v1sync import ( _ "github.com/garethgeorge/backrest/gen/go/types" v1 "github.com/garethgeorge/backrest/gen/go/v1" _ "google.golang.org/genproto/googleapis/api/annotations" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" _ "google.golang.org/protobuf/types/known/anypb" _ "google.golang.org/protobuf/types/known/emptypb" reflect "reflect" sync "sync" unsafe "unsafe" ) 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 ConnectionState int32 const ( ConnectionState_CONNECTION_STATE_UNKNOWN ConnectionState = 0 ConnectionState_CONNECTION_STATE_PENDING ConnectionState = 1 ConnectionState_CONNECTION_STATE_CONNECTED ConnectionState = 2 ConnectionState_CONNECTION_STATE_DISCONNECTED ConnectionState = 3 ConnectionState_CONNECTION_STATE_RETRY_WAIT ConnectionState = 4 ConnectionState_CONNECTION_STATE_ERROR_AUTH ConnectionState = 10 ConnectionState_CONNECTION_STATE_ERROR_PROTOCOL ConnectionState = 11 ConnectionState_CONNECTION_STATE_ERROR_INTERNAL ConnectionState = 12 ) // Enum value maps for ConnectionState. var ( ConnectionState_name = map[int32]string{ 0: "CONNECTION_STATE_UNKNOWN", 1: "CONNECTION_STATE_PENDING", 2: "CONNECTION_STATE_CONNECTED", 3: "CONNECTION_STATE_DISCONNECTED", 4: "CONNECTION_STATE_RETRY_WAIT", 10: "CONNECTION_STATE_ERROR_AUTH", 11: "CONNECTION_STATE_ERROR_PROTOCOL", 12: "CONNECTION_STATE_ERROR_INTERNAL", } ConnectionState_value = map[string]int32{ "CONNECTION_STATE_UNKNOWN": 0, "CONNECTION_STATE_PENDING": 1, "CONNECTION_STATE_CONNECTED": 2, "CONNECTION_STATE_DISCONNECTED": 3, "CONNECTION_STATE_RETRY_WAIT": 4, "CONNECTION_STATE_ERROR_AUTH": 10, "CONNECTION_STATE_ERROR_PROTOCOL": 11, "CONNECTION_STATE_ERROR_INTERNAL": 12, } ) func (x ConnectionState) Enum() *ConnectionState { p := new(ConnectionState) *p = x return p } func (x ConnectionState) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (ConnectionState) Descriptor() protoreflect.EnumDescriptor { return file_v1sync_syncservice_proto_enumTypes[0].Descriptor() } func (ConnectionState) Type() protoreflect.EnumType { return &file_v1sync_syncservice_proto_enumTypes[0] } func (x ConnectionState) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use ConnectionState.Descriptor instead. func (ConnectionState) EnumDescriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{0} } type SyncStreamItem_RepoConnectionState int32 const ( SyncStreamItem_CONNECTION_STATE_UNKNOWN SyncStreamItem_RepoConnectionState = 0 SyncStreamItem_CONNECTION_STATE_PENDING SyncStreamItem_RepoConnectionState = 1 // queried, response not yet received. SyncStreamItem_CONNECTION_STATE_CONNECTED SyncStreamItem_RepoConnectionState = 2 SyncStreamItem_CONNECTION_STATE_UNAUTHORIZED SyncStreamItem_RepoConnectionState = 3 SyncStreamItem_CONNECTION_STATE_NOT_FOUND SyncStreamItem_RepoConnectionState = 4 ) // Enum value maps for SyncStreamItem_RepoConnectionState. var ( SyncStreamItem_RepoConnectionState_name = map[int32]string{ 0: "CONNECTION_STATE_UNKNOWN", 1: "CONNECTION_STATE_PENDING", 2: "CONNECTION_STATE_CONNECTED", 3: "CONNECTION_STATE_UNAUTHORIZED", 4: "CONNECTION_STATE_NOT_FOUND", } SyncStreamItem_RepoConnectionState_value = map[string]int32{ "CONNECTION_STATE_UNKNOWN": 0, "CONNECTION_STATE_PENDING": 1, "CONNECTION_STATE_CONNECTED": 2, "CONNECTION_STATE_UNAUTHORIZED": 3, "CONNECTION_STATE_NOT_FOUND": 4, } ) func (x SyncStreamItem_RepoConnectionState) Enum() *SyncStreamItem_RepoConnectionState { p := new(SyncStreamItem_RepoConnectionState) *p = x return p } func (x SyncStreamItem_RepoConnectionState) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (SyncStreamItem_RepoConnectionState) Descriptor() protoreflect.EnumDescriptor { return file_v1sync_syncservice_proto_enumTypes[1].Descriptor() } func (SyncStreamItem_RepoConnectionState) Type() protoreflect.EnumType { return &file_v1sync_syncservice_proto_enumTypes[1] } func (x SyncStreamItem_RepoConnectionState) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use SyncStreamItem_RepoConnectionState.Descriptor instead. func (SyncStreamItem_RepoConnectionState) EnumDescriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 0} } type SyncStateStreamRequest struct { state protoimpl.MessageState `protogen:"open.v1"` Subscribe bool `protobuf:"varint,1,opt,name=subscribe,proto3" json:"subscribe,omitempty"` // If true, the stream will continue to send updates until cancelled. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStateStreamRequest) Reset() { *x = SyncStateStreamRequest{} mi := &file_v1sync_syncservice_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStateStreamRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStateStreamRequest) ProtoMessage() {} func (x *SyncStateStreamRequest) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[0] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStateStreamRequest.ProtoReflect.Descriptor instead. func (*SyncStateStreamRequest) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{0} } func (x *SyncStateStreamRequest) GetSubscribe() bool { if x != nil { return x.Subscribe } return false } type PeerState struct { state protoimpl.MessageState `protogen:"open.v1"` PeerInstanceId string `protobuf:"bytes,1,opt,name=peer_instance_id,json=peerInstanceId,proto3" json:"peer_instance_id,omitempty"` PeerKeyid string `protobuf:"bytes,2,opt,name=peer_keyid,json=peerKeyid,proto3" json:"peer_keyid,omitempty"` State ConnectionState `protobuf:"varint,3,opt,name=state,proto3,enum=v1sync.ConnectionState" json:"state,omitempty"` StatusMessage string `protobuf:"bytes,4,opt,name=status_message,json=statusMessage,proto3" json:"status_message,omitempty"` KnownPlans []*PlanMetadata `protobuf:"bytes,5,rep,name=known_plans,json=knownPlans,proto3" json:"known_plans,omitempty"` // List of plan IDs that the peer has. KnownRepos []*RepoMetadata `protobuf:"bytes,6,rep,name=known_repos,json=knownRepos,proto3" json:"known_repos,omitempty"` // List of repo IDs that the peer has. RemoteConfig *RemoteConfig `protobuf:"bytes,7,opt,name=remote_config,json=remoteConfig,proto3" json:"remote_config,omitempty"` // The remote config of the peer, if available. LastHeartbeatMillis int64 `protobuf:"varint,8,opt,name=last_heartbeat_millis,json=lastHeartbeatMillis,proto3" json:"last_heartbeat_millis,omitempty"` // The last time the peer sent a heartbeat, in milliseconds since epoch. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PeerState) Reset() { *x = PeerState{} mi := &file_v1sync_syncservice_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PeerState) String() string { return protoimpl.X.MessageStringOf(x) } func (*PeerState) ProtoMessage() {} func (x *PeerState) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PeerState.ProtoReflect.Descriptor instead. func (*PeerState) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{1} } func (x *PeerState) GetPeerInstanceId() string { if x != nil { return x.PeerInstanceId } return "" } func (x *PeerState) GetPeerKeyid() string { if x != nil { return x.PeerKeyid } return "" } func (x *PeerState) GetState() ConnectionState { if x != nil { return x.State } return ConnectionState_CONNECTION_STATE_UNKNOWN } func (x *PeerState) GetStatusMessage() string { if x != nil { return x.StatusMessage } return "" } func (x *PeerState) GetKnownPlans() []*PlanMetadata { if x != nil { return x.KnownPlans } return nil } func (x *PeerState) GetKnownRepos() []*RepoMetadata { if x != nil { return x.KnownRepos } return nil } func (x *PeerState) GetRemoteConfig() *RemoteConfig { if x != nil { return x.RemoteConfig } return nil } func (x *PeerState) GetLastHeartbeatMillis() int64 { if x != nil { return x.LastHeartbeatMillis } return 0 } type AuthenticateRequest struct { state protoimpl.MessageState `protogen:"open.v1"` InstanceId *v1.SignedMessage `protobuf:"bytes,1,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"` // The ID of the peer instance. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *AuthenticateRequest) Reset() { *x = AuthenticateRequest{} mi := &file_v1sync_syncservice_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *AuthenticateRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AuthenticateRequest) ProtoMessage() {} func (x *AuthenticateRequest) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[2] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use AuthenticateRequest.ProtoReflect.Descriptor instead. func (*AuthenticateRequest) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{2} } func (x *AuthenticateRequest) GetInstanceId() *v1.SignedMessage { if x != nil { return x.InstanceId } return nil } type GetOperationMetadataResponse struct { state protoimpl.MessageState `protogen:"open.v1"` OpIds []int64 `protobuf:"varint,1,rep,packed,name=op_ids,json=opIds,proto3" json:"op_ids,omitempty"` // The IDs of the operations. Modnos []int64 `protobuf:"varint,2,rep,packed,name=modnos,proto3" json:"modnos,omitempty"` // The modnos of the operations. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetOperationMetadataResponse) Reset() { *x = GetOperationMetadataResponse{} mi := &file_v1sync_syncservice_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetOperationMetadataResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetOperationMetadataResponse) ProtoMessage() {} func (x *GetOperationMetadataResponse) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetOperationMetadataResponse.ProtoReflect.Descriptor instead. func (*GetOperationMetadataResponse) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{3} } func (x *GetOperationMetadataResponse) GetOpIds() []int64 { if x != nil { return x.OpIds } return nil } func (x *GetOperationMetadataResponse) GetModnos() []int64 { if x != nil { return x.Modnos } return nil } type LogDataEntry struct { state protoimpl.MessageState `protogen:"open.v1"` LogId string `protobuf:"bytes,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"` // The ID of the log, only used for the first message in a log data stream. OwnerOpid int64 `protobuf:"varint,2,opt,name=owner_opid,json=ownerOpid,proto3" json:"owner_opid,omitempty"` // The operation ID of the operation that owns this log data. ExpirationTsUnix int64 `protobuf:"varint,3,opt,name=expiration_ts_unix,json=expirationTsUnix,proto3" json:"expiration_ts_unix,omitempty"` // Unix timestamp in seconds when the log data expires. Chunk []byte `protobuf:"bytes,4,opt,name=chunk,proto3" json:"chunk,omitempty"` // The log data chunk, can be sent repeatedly, must be terminated by a packet with size = 0. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *LogDataEntry) Reset() { *x = LogDataEntry{} mi := &file_v1sync_syncservice_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *LogDataEntry) String() string { return protoimpl.X.MessageStringOf(x) } func (*LogDataEntry) ProtoMessage() {} func (x *LogDataEntry) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use LogDataEntry.ProtoReflect.Descriptor instead. func (*LogDataEntry) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{4} } func (x *LogDataEntry) GetLogId() string { if x != nil { return x.LogId } return "" } func (x *LogDataEntry) GetOwnerOpid() int64 { if x != nil { return x.OwnerOpid } return 0 } func (x *LogDataEntry) GetExpirationTsUnix() int64 { if x != nil { return x.ExpirationTsUnix } return 0 } func (x *LogDataEntry) GetChunk() []byte { if x != nil { return x.Chunk } return nil } type SetAvailableResourcesRequest struct { state protoimpl.MessageState `protogen:"open.v1"` Repos []*PlanMetadata `protobuf:"bytes,1,rep,name=repos,proto3" json:"repos,omitempty"` // The repos that are available. Plans []*RepoMetadata `protobuf:"bytes,2,rep,name=plans,proto3" json:"plans,omitempty"` // The plans that are available. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SetAvailableResourcesRequest) Reset() { *x = SetAvailableResourcesRequest{} mi := &file_v1sync_syncservice_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SetAvailableResourcesRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetAvailableResourcesRequest) ProtoMessage() {} func (x *SetAvailableResourcesRequest) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SetAvailableResourcesRequest.ProtoReflect.Descriptor instead. func (*SetAvailableResourcesRequest) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{5} } func (x *SetAvailableResourcesRequest) GetRepos() []*PlanMetadata { if x != nil { return x.Repos } return nil } func (x *SetAvailableResourcesRequest) GetPlans() []*RepoMetadata { if x != nil { return x.Plans } return nil } type RepoMetadata struct { state protoimpl.MessageState `protogen:"open.v1"` Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` Guid string `protobuf:"bytes,2,opt,name=guid,proto3" json:"guid,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RepoMetadata) Reset() { *x = RepoMetadata{} mi := &file_v1sync_syncservice_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RepoMetadata) String() string { return protoimpl.X.MessageStringOf(x) } func (*RepoMetadata) ProtoMessage() {} func (x *RepoMetadata) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RepoMetadata.ProtoReflect.Descriptor instead. func (*RepoMetadata) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{6} } func (x *RepoMetadata) GetId() string { if x != nil { return x.Id } return "" } func (x *RepoMetadata) GetGuid() string { if x != nil { return x.Guid } return "" } type PlanMetadata struct { state protoimpl.MessageState `protogen:"open.v1"` Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PlanMetadata) Reset() { *x = PlanMetadata{} mi := &file_v1sync_syncservice_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PlanMetadata) String() string { return protoimpl.X.MessageStringOf(x) } func (*PlanMetadata) ProtoMessage() {} func (x *PlanMetadata) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PlanMetadata.ProtoReflect.Descriptor instead. func (*PlanMetadata) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{7} } func (x *PlanMetadata) GetId() string { if x != nil { return x.Id } return "" } type SetConfigRequest struct { state protoimpl.MessageState `protogen:"open.v1"` Plans []*v1.Plan `protobuf:"bytes,1,rep,name=plans,proto3" json:"plans,omitempty"` // The plans to set. Repos []*v1.Repo `protobuf:"bytes,2,rep,name=repos,proto3" json:"repos,omitempty"` // The repos to set. ReposToDelete []string `protobuf:"bytes,3,rep,name=repos_to_delete,json=reposToDelete,proto3" json:"repos_to_delete,omitempty"` // The repo IDs to delete. PlansToDelete []string `protobuf:"bytes,4,rep,name=plans_to_delete,json=plansToDelete,proto3" json:"plans_to_delete,omitempty"` // The plan IDs to delete. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SetConfigRequest) Reset() { *x = SetConfigRequest{} mi := &file_v1sync_syncservice_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SetConfigRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetConfigRequest) ProtoMessage() {} func (x *SetConfigRequest) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SetConfigRequest.ProtoReflect.Descriptor instead. func (*SetConfigRequest) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{8} } func (x *SetConfigRequest) GetPlans() []*v1.Plan { if x != nil { return x.Plans } return nil } func (x *SetConfigRequest) GetRepos() []*v1.Repo { if x != nil { return x.Repos } return nil } func (x *SetConfigRequest) GetReposToDelete() []string { if x != nil { return x.ReposToDelete } return nil } func (x *SetConfigRequest) GetPlansToDelete() []string { if x != nil { return x.PlansToDelete } return nil } type SetRemoteClientConfigRequest struct { state protoimpl.MessageState `protogen:"open.v1"` PeerKeyid string `protobuf:"bytes,1,opt,name=peer_keyid,json=peerKeyid,proto3" json:"peer_keyid,omitempty"` // The key ID of the connected peer to push config to. Repos []*v1.Repo `protobuf:"bytes,2,rep,name=repos,proto3" json:"repos,omitempty"` // Repos to create or update on the peer. Plans []*v1.Plan `protobuf:"bytes,3,rep,name=plans,proto3" json:"plans,omitempty"` // Plans to create or update on the peer. ReposToDelete []string `protobuf:"bytes,4,rep,name=repos_to_delete,json=reposToDelete,proto3" json:"repos_to_delete,omitempty"` // Repo IDs to delete on the peer. PlansToDelete []string `protobuf:"bytes,5,rep,name=plans_to_delete,json=plansToDelete,proto3" json:"plans_to_delete,omitempty"` // Plan IDs to delete on the peer. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SetRemoteClientConfigRequest) Reset() { *x = SetRemoteClientConfigRequest{} mi := &file_v1sync_syncservice_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SetRemoteClientConfigRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetRemoteClientConfigRequest) ProtoMessage() {} func (x *SetRemoteClientConfigRequest) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SetRemoteClientConfigRequest.ProtoReflect.Descriptor instead. func (*SetRemoteClientConfigRequest) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{9} } func (x *SetRemoteClientConfigRequest) GetPeerKeyid() string { if x != nil { return x.PeerKeyid } return "" } func (x *SetRemoteClientConfigRequest) GetRepos() []*v1.Repo { if x != nil { return x.Repos } return nil } func (x *SetRemoteClientConfigRequest) GetPlans() []*v1.Plan { if x != nil { return x.Plans } return nil } func (x *SetRemoteClientConfigRequest) GetReposToDelete() []string { if x != nil { return x.ReposToDelete } return nil } func (x *SetRemoteClientConfigRequest) GetPlansToDelete() []string { if x != nil { return x.PlansToDelete } return nil } type SetRemoteClientConfigResponse struct { state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SetRemoteClientConfigResponse) Reset() { *x = SetRemoteClientConfigResponse{} mi := &file_v1sync_syncservice_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SetRemoteClientConfigResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*SetRemoteClientConfigResponse) ProtoMessage() {} func (x *SetRemoteClientConfigResponse) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SetRemoteClientConfigResponse.ProtoReflect.Descriptor instead. func (*SetRemoteClientConfigResponse) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{10} } type RemoteConfig struct { state protoimpl.MessageState `protogen:"open.v1"` Modno int32 `protobuf:"varint,1,opt,name=modno,proto3" json:"modno,omitempty"` // The modno of the config. Version int32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"` // The storage version of the config. Repos []*v1.Repo `protobuf:"bytes,3,rep,name=repos,proto3" json:"repos,omitempty"` Plans []*v1.Plan `protobuf:"bytes,4,rep,name=plans,proto3" json:"plans,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RemoteConfig) Reset() { *x = RemoteConfig{} mi := &file_v1sync_syncservice_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RemoteConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoteConfig) ProtoMessage() {} func (x *RemoteConfig) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RemoteConfig.ProtoReflect.Descriptor instead. func (*RemoteConfig) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{11} } func (x *RemoteConfig) GetModno() int32 { if x != nil { return x.Modno } return 0 } func (x *RemoteConfig) GetVersion() int32 { if x != nil { return x.Version } return 0 } func (x *RemoteConfig) GetRepos() []*v1.Repo { if x != nil { return x.Repos } return nil } func (x *RemoteConfig) GetPlans() []*v1.Plan { if x != nil { return x.Plans } return nil } type AuthorizationToken struct { state protoimpl.MessageState `protogen:"open.v1"` PublicKey *v1.PublicKey `protobuf:"bytes,1,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` InstanceId *v1.SignedMessage `protobuf:"bytes,2,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"` // The ID of the peer instance. unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *AuthorizationToken) Reset() { *x = AuthorizationToken{} mi := &file_v1sync_syncservice_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *AuthorizationToken) String() string { return protoimpl.X.MessageStringOf(x) } func (*AuthorizationToken) ProtoMessage() {} func (x *AuthorizationToken) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use AuthorizationToken.ProtoReflect.Descriptor instead. func (*AuthorizationToken) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{12} } func (x *AuthorizationToken) GetPublicKey() *v1.PublicKey { if x != nil { return x.PublicKey } return nil } func (x *AuthorizationToken) GetInstanceId() *v1.SignedMessage { if x != nil { return x.InstanceId } return nil } type SyncStreamItem struct { state protoimpl.MessageState `protogen:"open.v1"` // Types that are valid to be assigned to Action: // // *SyncStreamItem_SignedMessage // *SyncStreamItem_Handshake // *SyncStreamItem_Heartbeat // *SyncStreamItem_OperationManifest // *SyncStreamItem_ReceiveOperations // *SyncStreamItem_RequestOperationData // *SyncStreamItem_ReceiveConfig // *SyncStreamItem_SetConfig // *SyncStreamItem_RequestResources // *SyncStreamItem_ReceiveResources // *SyncStreamItem_RequestLog // *SyncStreamItem_ReceiveLogData // *SyncStreamItem_Throttle // *SyncStreamItem_EstablishSharedSecret // *SyncStreamItem_Encrypted Action isSyncStreamItem_Action `protobuf_oneof:"action"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem) Reset() { *x = SyncStreamItem{} mi := &file_v1sync_syncservice_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem) ProtoMessage() {} func (x *SyncStreamItem) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem.ProtoReflect.Descriptor instead. func (*SyncStreamItem) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13} } func (x *SyncStreamItem) GetAction() isSyncStreamItem_Action { if x != nil { return x.Action } return nil } func (x *SyncStreamItem) GetSignedMessage() *v1.SignedMessage { if x != nil { if x, ok := x.Action.(*SyncStreamItem_SignedMessage); ok { return x.SignedMessage } } return nil } func (x *SyncStreamItem) GetHandshake() *SyncStreamItem_SyncActionHandshake { if x != nil { if x, ok := x.Action.(*SyncStreamItem_Handshake); ok { return x.Handshake } } return nil } func (x *SyncStreamItem) GetHeartbeat() *SyncStreamItem_SyncActionHeartbeat { if x != nil { if x, ok := x.Action.(*SyncStreamItem_Heartbeat); ok { return x.Heartbeat } } return nil } func (x *SyncStreamItem) GetOperationManifest() *SyncStreamItem_SyncActionOperationManifest { if x != nil { if x, ok := x.Action.(*SyncStreamItem_OperationManifest); ok { return x.OperationManifest } } return nil } func (x *SyncStreamItem) GetReceiveOperations() *SyncStreamItem_SyncActionReceiveOperations { if x != nil { if x, ok := x.Action.(*SyncStreamItem_ReceiveOperations); ok { return x.ReceiveOperations } } return nil } func (x *SyncStreamItem) GetRequestOperationData() *SyncStreamItem_SyncActionRequestOperationData { if x != nil { if x, ok := x.Action.(*SyncStreamItem_RequestOperationData); ok { return x.RequestOperationData } } return nil } func (x *SyncStreamItem) GetReceiveConfig() *SyncStreamItem_SyncActionReceiveConfig { if x != nil { if x, ok := x.Action.(*SyncStreamItem_ReceiveConfig); ok { return x.ReceiveConfig } } return nil } func (x *SyncStreamItem) GetSetConfig() *SyncStreamItem_SyncActionSetConfig { if x != nil { if x, ok := x.Action.(*SyncStreamItem_SetConfig); ok { return x.SetConfig } } return nil } func (x *SyncStreamItem) GetRequestResources() *SyncStreamItem_SyncActionRequestResources { if x != nil { if x, ok := x.Action.(*SyncStreamItem_RequestResources); ok { return x.RequestResources } } return nil } func (x *SyncStreamItem) GetReceiveResources() *SyncStreamItem_SyncActionReceiveResources { if x != nil { if x, ok := x.Action.(*SyncStreamItem_ReceiveResources); ok { return x.ReceiveResources } } return nil } func (x *SyncStreamItem) GetRequestLog() *SyncStreamItem_SyncActionRequestLog { if x != nil { if x, ok := x.Action.(*SyncStreamItem_RequestLog); ok { return x.RequestLog } } return nil } func (x *SyncStreamItem) GetReceiveLogData() *SyncStreamItem_SyncActionReceiveLogData { if x != nil { if x, ok := x.Action.(*SyncStreamItem_ReceiveLogData); ok { return x.ReceiveLogData } } return nil } func (x *SyncStreamItem) GetThrottle() *SyncStreamItem_SyncActionThrottle { if x != nil { if x, ok := x.Action.(*SyncStreamItem_Throttle); ok { return x.Throttle } } return nil } func (x *SyncStreamItem) GetEstablishSharedSecret() *SyncStreamItem_SyncEstablishSharedSecret { if x != nil { if x, ok := x.Action.(*SyncStreamItem_EstablishSharedSecret); ok { return x.EstablishSharedSecret } } return nil } func (x *SyncStreamItem) GetEncrypted() *SyncStreamItem_SyncActionEncrypted { if x != nil { if x, ok := x.Action.(*SyncStreamItem_Encrypted); ok { return x.Encrypted } } return nil } type isSyncStreamItem_Action interface { isSyncStreamItem_Action() } type SyncStreamItem_SignedMessage struct { SignedMessage *v1.SignedMessage `protobuf:"bytes,1,opt,name=signed_message,json=signedMessage,proto3,oneof"` } type SyncStreamItem_Handshake struct { Handshake *SyncStreamItem_SyncActionHandshake `protobuf:"bytes,3,opt,name=handshake,proto3,oneof"` // note: mostly deprecated, sent through headers rather than stream. } type SyncStreamItem_Heartbeat struct { Heartbeat *SyncStreamItem_SyncActionHeartbeat `protobuf:"bytes,4,opt,name=heartbeat,proto3,oneof"` } type SyncStreamItem_OperationManifest struct { OperationManifest *SyncStreamItem_SyncActionOperationManifest `protobuf:"bytes,20,opt,name=operation_manifest,json=operationManifest,proto3,oneof"` } type SyncStreamItem_ReceiveOperations struct { ReceiveOperations *SyncStreamItem_SyncActionReceiveOperations `protobuf:"bytes,21,opt,name=receive_operations,json=receiveOperations,proto3,oneof"` } type SyncStreamItem_RequestOperationData struct { RequestOperationData *SyncStreamItem_SyncActionRequestOperationData `protobuf:"bytes,22,opt,name=request_operation_data,json=requestOperationData,proto3,oneof"` } type SyncStreamItem_ReceiveConfig struct { ReceiveConfig *SyncStreamItem_SyncActionReceiveConfig `protobuf:"bytes,23,opt,name=receive_config,json=receiveConfig,proto3,oneof"` } type SyncStreamItem_SetConfig struct { SetConfig *SyncStreamItem_SyncActionSetConfig `protobuf:"bytes,24,opt,name=set_config,json=setConfig,proto3,oneof"` } type SyncStreamItem_RequestResources struct { RequestResources *SyncStreamItem_SyncActionRequestResources `protobuf:"bytes,25,opt,name=request_resources,json=requestResources,proto3,oneof"` // request a list of available resources. Only used by the server. } type SyncStreamItem_ReceiveResources struct { ReceiveResources *SyncStreamItem_SyncActionReceiveResources `protobuf:"bytes,26,opt,name=receive_resources,json=receiveResources,proto3,oneof"` // receiving a list of available resources. } type SyncStreamItem_RequestLog struct { RequestLog *SyncStreamItem_SyncActionRequestLog `protobuf:"bytes,30,opt,name=request_log,json=requestLog,proto3,oneof"` } type SyncStreamItem_ReceiveLogData struct { ReceiveLogData *SyncStreamItem_SyncActionReceiveLogData `protobuf:"bytes,31,opt,name=receive_log_data,json=receiveLogData,proto3,oneof"` } type SyncStreamItem_Throttle struct { Throttle *SyncStreamItem_SyncActionThrottle `protobuf:"bytes,1000,opt,name=throttle,proto3,oneof"` } type SyncStreamItem_EstablishSharedSecret struct { EstablishSharedSecret *SyncStreamItem_SyncEstablishSharedSecret `protobuf:"bytes,2,opt,name=establish_shared_secret,json=establishSharedSecret,proto3,oneof"` } type SyncStreamItem_Encrypted struct { Encrypted *SyncStreamItem_SyncActionEncrypted `protobuf:"bytes,5,opt,name=encrypted,proto3,oneof"` } func (*SyncStreamItem_SignedMessage) isSyncStreamItem_Action() {} func (*SyncStreamItem_Handshake) isSyncStreamItem_Action() {} func (*SyncStreamItem_Heartbeat) isSyncStreamItem_Action() {} func (*SyncStreamItem_OperationManifest) isSyncStreamItem_Action() {} func (*SyncStreamItem_ReceiveOperations) isSyncStreamItem_Action() {} func (*SyncStreamItem_RequestOperationData) isSyncStreamItem_Action() {} func (*SyncStreamItem_ReceiveConfig) isSyncStreamItem_Action() {} func (*SyncStreamItem_SetConfig) isSyncStreamItem_Action() {} func (*SyncStreamItem_RequestResources) isSyncStreamItem_Action() {} func (*SyncStreamItem_ReceiveResources) isSyncStreamItem_Action() {} func (*SyncStreamItem_RequestLog) isSyncStreamItem_Action() {} func (*SyncStreamItem_ReceiveLogData) isSyncStreamItem_Action() {} func (*SyncStreamItem_Throttle) isSyncStreamItem_Action() {} func (*SyncStreamItem_EstablishSharedSecret) isSyncStreamItem_Action() {} func (*SyncStreamItem_Encrypted) isSyncStreamItem_Action() {} // SyncActionHandshake is the first message sent by each peer over the // post-quantum encrypted channel. It carries the sender's long-term // ed25519 identity, its instance ID, and a single signature that binds // the identity to *this* transport session. // // The signature covers a domain-separated hash of: // // "backrest-sync-handshake/v1\x00" // || protocol_version (8 bytes BE) // || LP(instance_id) // || LP(pairing_secret) // || LP(transport transcript) // // where LP(x) = 4-byte BE length prefix || x, and the transport transcript // is cryptoutil.TransportSession.Transcript() — a hash that commits to // the ephemeral KEM messages of this connection. // // The transcript binding is what defeats a MITM that completes a separate // KEM with each side: each leg has a different transcript, and the // legitimate peer's signature only commits to its own transcript, so the // attacker cannot forward a usable signature to either side. // // Receivers MUST recompute the transcript locally from their TransportSession // and reject the handshake if the signature does not verify against // public_key. There is no timestamp because freshness is provided by the // ephemeral KEM, not by clock comparison. type SyncStreamItem_SyncActionHandshake struct { state protoimpl.MessageState `protogen:"open.v1"` ProtocolVersion int64 `protobuf:"varint,1,opt,name=protocol_version,json=protocolVersion,proto3" json:"protocol_version,omitempty"` PublicKey *v1.PublicKey `protobuf:"bytes,2,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` // sender's long-term ed25519 identity InstanceId string `protobuf:"bytes,3,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"` // covered by signature below PairingSecret string `protobuf:"bytes,4,opt,name=pairing_secret,json=pairingSecret,proto3" json:"pairing_secret,omitempty"` // optional pairing token; covered by signature below Signature []byte `protobuf:"bytes,5,opt,name=signature,proto3" json:"signature,omitempty"` // ed25519(public_key, H(handshake bind input)) unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionHandshake) Reset() { *x = SyncStreamItem_SyncActionHandshake{} mi := &file_v1sync_syncservice_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionHandshake) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionHandshake) ProtoMessage() {} func (x *SyncStreamItem_SyncActionHandshake) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionHandshake.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionHandshake) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 0} } func (x *SyncStreamItem_SyncActionHandshake) GetProtocolVersion() int64 { if x != nil { return x.ProtocolVersion } return 0 } func (x *SyncStreamItem_SyncActionHandshake) GetPublicKey() *v1.PublicKey { if x != nil { return x.PublicKey } return nil } func (x *SyncStreamItem_SyncActionHandshake) GetInstanceId() string { if x != nil { return x.InstanceId } return "" } func (x *SyncStreamItem_SyncActionHandshake) GetPairingSecret() string { if x != nil { return x.PairingSecret } return "" } func (x *SyncStreamItem_SyncActionHandshake) GetSignature() []byte { if x != nil { return x.Signature } return nil } // SyncActionEncrypted wraps an encrypted SyncStreamItem. // After the post-quantum KEM handshake, all subsequent messages are sent // inside this envelope. type SyncStreamItem_SyncActionEncrypted struct { state protoimpl.MessageState `protogen:"open.v1"` Nonce []byte `protobuf:"bytes,1,opt,name=nonce,proto3" json:"nonce,omitempty"` // 12-byte GCM nonce Ciphertext []byte `protobuf:"bytes,2,opt,name=ciphertext,proto3" json:"ciphertext,omitempty"` // AES-256-GCM(serialized SyncStreamItem) unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionEncrypted) Reset() { *x = SyncStreamItem_SyncActionEncrypted{} mi := &file_v1sync_syncservice_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionEncrypted) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionEncrypted) ProtoMessage() {} func (x *SyncStreamItem_SyncActionEncrypted) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionEncrypted.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionEncrypted) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 1} } func (x *SyncStreamItem_SyncActionEncrypted) GetNonce() []byte { if x != nil { return x.Nonce } return nil } func (x *SyncStreamItem_SyncActionEncrypted) GetCiphertext() []byte { if x != nil { return x.Ciphertext } return nil } // SyncActionHeartbeat is sent periodically to keep the connection alive. type SyncStreamItem_SyncActionHeartbeat struct { state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionHeartbeat) Reset() { *x = SyncStreamItem_SyncActionHeartbeat{} mi := &file_v1sync_syncservice_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionHeartbeat) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionHeartbeat) ProtoMessage() {} func (x *SyncStreamItem_SyncActionHeartbeat) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[16] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionHeartbeat.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionHeartbeat) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 2} } type SyncStreamItem_SyncActionReceiveConfig struct { state protoimpl.MessageState `protogen:"open.v1"` Config *RemoteConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionReceiveConfig) Reset() { *x = SyncStreamItem_SyncActionReceiveConfig{} mi := &file_v1sync_syncservice_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionReceiveConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionReceiveConfig) ProtoMessage() {} func (x *SyncStreamItem_SyncActionReceiveConfig) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[17] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionReceiveConfig.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionReceiveConfig) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 3} } func (x *SyncStreamItem_SyncActionReceiveConfig) GetConfig() *RemoteConfig { if x != nil { return x.Config } return nil } type SyncStreamItem_SyncActionSetConfig struct { state protoimpl.MessageState `protogen:"open.v1"` Repos []*v1.Repo `protobuf:"bytes,1,rep,name=repos,proto3" json:"repos,omitempty"` Plans []*v1.Plan `protobuf:"bytes,2,rep,name=plans,proto3" json:"plans,omitempty"` ReposToDelete []string `protobuf:"bytes,3,rep,name=repos_to_delete,json=reposToDelete,proto3" json:"repos_to_delete,omitempty"` PlansToDelete []string `protobuf:"bytes,4,rep,name=plans_to_delete,json=plansToDelete,proto3" json:"plans_to_delete,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionSetConfig) Reset() { *x = SyncStreamItem_SyncActionSetConfig{} mi := &file_v1sync_syncservice_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionSetConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionSetConfig) ProtoMessage() {} func (x *SyncStreamItem_SyncActionSetConfig) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[18] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionSetConfig.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionSetConfig) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 4} } func (x *SyncStreamItem_SyncActionSetConfig) GetRepos() []*v1.Repo { if x != nil { return x.Repos } return nil } func (x *SyncStreamItem_SyncActionSetConfig) GetPlans() []*v1.Plan { if x != nil { return x.Plans } return nil } func (x *SyncStreamItem_SyncActionSetConfig) GetReposToDelete() []string { if x != nil { return x.ReposToDelete } return nil } func (x *SyncStreamItem_SyncActionSetConfig) GetPlansToDelete() []string { if x != nil { return x.PlansToDelete } return nil } type SyncStreamItem_SyncActionRequestResources struct { state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionRequestResources) Reset() { *x = SyncStreamItem_SyncActionRequestResources{} mi := &file_v1sync_syncservice_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionRequestResources) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionRequestResources) ProtoMessage() {} func (x *SyncStreamItem_SyncActionRequestResources) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionRequestResources.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionRequestResources) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 5} } type SyncStreamItem_SyncActionReceiveResources struct { state protoimpl.MessageState `protogen:"open.v1"` Repos []*RepoMetadata `protobuf:"bytes,1,rep,name=repos,proto3" json:"repos,omitempty"` Plans []*PlanMetadata `protobuf:"bytes,2,rep,name=plans,proto3" json:"plans,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionReceiveResources) Reset() { *x = SyncStreamItem_SyncActionReceiveResources{} mi := &file_v1sync_syncservice_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionReceiveResources) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionReceiveResources) ProtoMessage() {} func (x *SyncStreamItem_SyncActionReceiveResources) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionReceiveResources.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionReceiveResources) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 6} } func (x *SyncStreamItem_SyncActionReceiveResources) GetRepos() []*RepoMetadata { if x != nil { return x.Repos } return nil } func (x *SyncStreamItem_SyncActionReceiveResources) GetPlans() []*PlanMetadata { if x != nil { return x.Plans } return nil } type SyncStreamItem_SyncActionConnectRepo struct { state protoimpl.MessageState `protogen:"open.v1"` RepoId string `protobuf:"bytes,1,opt,name=repo_id,json=repoId,proto3" json:"repo_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionConnectRepo) Reset() { *x = SyncStreamItem_SyncActionConnectRepo{} mi := &file_v1sync_syncservice_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionConnectRepo) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionConnectRepo) ProtoMessage() {} func (x *SyncStreamItem_SyncActionConnectRepo) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[21] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionConnectRepo.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionConnectRepo) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 7} } func (x *SyncStreamItem_SyncActionConnectRepo) GetRepoId() string { if x != nil { return x.RepoId } return "" } type SyncStreamItem_SyncActionOperationManifest struct { state protoimpl.MessageState `protogen:"open.v1"` OpIds []int64 `protobuf:"varint,1,rep,packed,name=op_ids,json=opIds,proto3" json:"op_ids,omitempty"` Modnos []int64 `protobuf:"varint,2,rep,packed,name=modnos,proto3" json:"modnos,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionOperationManifest) Reset() { *x = SyncStreamItem_SyncActionOperationManifest{} mi := &file_v1sync_syncservice_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionOperationManifest) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionOperationManifest) ProtoMessage() {} func (x *SyncStreamItem_SyncActionOperationManifest) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[22] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionOperationManifest.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionOperationManifest) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 8} } func (x *SyncStreamItem_SyncActionOperationManifest) GetOpIds() []int64 { if x != nil { return x.OpIds } return nil } func (x *SyncStreamItem_SyncActionOperationManifest) GetModnos() []int64 { if x != nil { return x.Modnos } return nil } type SyncStreamItem_SyncActionRequestOperationData struct { state protoimpl.MessageState `protogen:"open.v1"` OpIds []int64 `protobuf:"varint,1,rep,packed,name=op_ids,json=opIds,proto3" json:"op_ids,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionRequestOperationData) Reset() { *x = SyncStreamItem_SyncActionRequestOperationData{} mi := &file_v1sync_syncservice_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionRequestOperationData) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionRequestOperationData) ProtoMessage() {} func (x *SyncStreamItem_SyncActionRequestOperationData) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[23] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionRequestOperationData.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionRequestOperationData) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 9} } func (x *SyncStreamItem_SyncActionRequestOperationData) GetOpIds() []int64 { if x != nil { return x.OpIds } return nil } type SyncStreamItem_SyncActionReceiveOperations struct { state protoimpl.MessageState `protogen:"open.v1"` Event *v1.OperationEvent `protobuf:"bytes,1,opt,name=event,proto3" json:"event,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionReceiveOperations) Reset() { *x = SyncStreamItem_SyncActionReceiveOperations{} mi := &file_v1sync_syncservice_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionReceiveOperations) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionReceiveOperations) ProtoMessage() {} func (x *SyncStreamItem_SyncActionReceiveOperations) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[24] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionReceiveOperations.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionReceiveOperations) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 10} } func (x *SyncStreamItem_SyncActionReceiveOperations) GetEvent() *v1.OperationEvent { if x != nil { return x.Event } return nil } type SyncStreamItem_SyncActionRequestLog struct { state protoimpl.MessageState `protogen:"open.v1"` LogId string `protobuf:"bytes,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionRequestLog) Reset() { *x = SyncStreamItem_SyncActionRequestLog{} mi := &file_v1sync_syncservice_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionRequestLog) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionRequestLog) ProtoMessage() {} func (x *SyncStreamItem_SyncActionRequestLog) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[25] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionRequestLog.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionRequestLog) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 11} } func (x *SyncStreamItem_SyncActionRequestLog) GetLogId() string { if x != nil { return x.LogId } return "" } type SyncStreamItem_SyncActionReceiveLogData struct { state protoimpl.MessageState `protogen:"open.v1"` LogId string `protobuf:"bytes,1,opt,name=log_id,json=logId,proto3" json:"log_id,omitempty"` // Required only for first message in a log data stream. OwnerOpid int64 `protobuf:"varint,2,opt,name=owner_opid,json=ownerOpid,proto3" json:"owner_opid,omitempty"` // The operation ID of the operation that owns this log data. ExpirationTsUnix int64 `protobuf:"varint,3,opt,name=expiration_ts_unix,json=expirationTsUnix,proto3" json:"expiration_ts_unix,omitempty"` // Unix timestamp in seconds when the log data expires. // Can be sent repeatedly, must be terminated by a packet with size = 0. Chunk []byte `protobuf:"bytes,4,opt,name=chunk,proto3" json:"chunk,omitempty"` // If set, indicates an error occurred while fetching the log data. ErrorMessage string `protobuf:"bytes,5,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionReceiveLogData) Reset() { *x = SyncStreamItem_SyncActionReceiveLogData{} mi := &file_v1sync_syncservice_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionReceiveLogData) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionReceiveLogData) ProtoMessage() {} func (x *SyncStreamItem_SyncActionReceiveLogData) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[26] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionReceiveLogData.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionReceiveLogData) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 12} } func (x *SyncStreamItem_SyncActionReceiveLogData) GetLogId() string { if x != nil { return x.LogId } return "" } func (x *SyncStreamItem_SyncActionReceiveLogData) GetOwnerOpid() int64 { if x != nil { return x.OwnerOpid } return 0 } func (x *SyncStreamItem_SyncActionReceiveLogData) GetExpirationTsUnix() int64 { if x != nil { return x.ExpirationTsUnix } return 0 } func (x *SyncStreamItem_SyncActionReceiveLogData) GetChunk() []byte { if x != nil { return x.Chunk } return nil } func (x *SyncStreamItem_SyncActionReceiveLogData) GetErrorMessage() string { if x != nil { return x.ErrorMessage } return "" } type SyncStreamItem_SyncActionThrottle struct { state protoimpl.MessageState `protogen:"open.v1"` DelayMs int64 `protobuf:"varint,1,opt,name=delay_ms,json=delayMs,proto3" json:"delay_ms,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncActionThrottle) Reset() { *x = SyncStreamItem_SyncActionThrottle{} mi := &file_v1sync_syncservice_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncActionThrottle) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncActionThrottle) ProtoMessage() {} func (x *SyncStreamItem_SyncActionThrottle) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[27] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncActionThrottle.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncActionThrottle) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 13} } func (x *SyncStreamItem_SyncActionThrottle) GetDelayMs() int64 { if x != nil { return x.DelayMs } return 0 } // SyncEstablishSharedSecret is exchanged immediately after the connection // is opened. The initiator (client) sends kem_public_key. The responder // (server) replies with kem_encapsulation. Both sides then derive a shared // AES-256-GCM session key via the HPKE Export interface. All subsequent // messages must be wrapped in SyncActionEncrypted. // // The KEM is the post-quantum hybrid ML-KEM-1024 + ECDH-P384 (HPKE // ciphersuite ML-KEM-1024-P384 / KEM ID 0x0050, RFC 9180 + the IETF hybrid // KEM drafts). KDF is HKDF-SHA256, AEAD is AES-256-GCM. Peers must use // protocol_version=1; mismatched versions abort the connection. type SyncStreamItem_SyncEstablishSharedSecret struct { state protoimpl.MessageState `protogen:"open.v1"` ProtocolVersion uint32 `protobuf:"varint,1,opt,name=protocol_version,json=protocolVersion,proto3" json:"protocol_version,omitempty"` // current: 1 KemPublicKey []byte `protobuf:"bytes,2,opt,name=kem_public_key,json=kemPublicKey,proto3" json:"kem_public_key,omitempty"` // set by initiator KemEncapsulation []byte `protobuf:"bytes,3,opt,name=kem_encapsulation,json=kemEncapsulation,proto3" json:"kem_encapsulation,omitempty"` // set by responder unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SyncStreamItem_SyncEstablishSharedSecret) Reset() { *x = SyncStreamItem_SyncEstablishSharedSecret{} mi := &file_v1sync_syncservice_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SyncStreamItem_SyncEstablishSharedSecret) String() string { return protoimpl.X.MessageStringOf(x) } func (*SyncStreamItem_SyncEstablishSharedSecret) ProtoMessage() {} func (x *SyncStreamItem_SyncEstablishSharedSecret) ProtoReflect() protoreflect.Message { mi := &file_v1sync_syncservice_proto_msgTypes[28] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SyncStreamItem_SyncEstablishSharedSecret.ProtoReflect.Descriptor instead. func (*SyncStreamItem_SyncEstablishSharedSecret) Descriptor() ([]byte, []int) { return file_v1sync_syncservice_proto_rawDescGZIP(), []int{13, 14} } func (x *SyncStreamItem_SyncEstablishSharedSecret) GetProtocolVersion() uint32 { if x != nil { return x.ProtocolVersion } return 0 } func (x *SyncStreamItem_SyncEstablishSharedSecret) GetKemPublicKey() []byte { if x != nil { return x.KemPublicKey } return nil } func (x *SyncStreamItem_SyncEstablishSharedSecret) GetKemEncapsulation() []byte { if x != nil { return x.KemEncapsulation } return nil } var File_v1sync_syncservice_proto protoreflect.FileDescriptor const file_v1sync_syncservice_proto_rawDesc = "" + "\n" + "\x18v1sync/syncservice.proto\x12\x06v1sync\x1a\x0fv1/config.proto\x1a\x0fv1/crypto.proto\x1a\x0fv1/restic.proto\x1a\x10v1/service.proto\x1a\x13v1/operations.proto\x1a\x11types/value.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x19google/protobuf/any.proto\"6\n" + "\x16SyncStateStreamRequest\x12\x1c\n" + "\tsubscribe\x18\x01 \x01(\bR\tsubscribe\"\x87\x03\n" + "\tPeerState\x12(\n" + "\x10peer_instance_id\x18\x01 \x01(\tR\x0epeerInstanceId\x12\x1d\n" + "\n" + "peer_keyid\x18\x02 \x01(\tR\tpeerKeyid\x12-\n" + "\x05state\x18\x03 \x01(\x0e2\x17.v1sync.ConnectionStateR\x05state\x12%\n" + "\x0estatus_message\x18\x04 \x01(\tR\rstatusMessage\x125\n" + "\vknown_plans\x18\x05 \x03(\v2\x14.v1sync.PlanMetadataR\n" + "knownPlans\x125\n" + "\vknown_repos\x18\x06 \x03(\v2\x14.v1sync.RepoMetadataR\n" + "knownRepos\x129\n" + "\rremote_config\x18\a \x01(\v2\x14.v1sync.RemoteConfigR\fremoteConfig\x122\n" + "\x15last_heartbeat_millis\x18\b \x01(\x03R\x13lastHeartbeatMillis\"I\n" + "\x13AuthenticateRequest\x122\n" + "\vinstance_id\x18\x01 \x01(\v2\x11.v1.SignedMessageR\n" + "instanceId\"M\n" + "\x1cGetOperationMetadataResponse\x12\x15\n" + "\x06op_ids\x18\x01 \x03(\x03R\x05opIds\x12\x16\n" + "\x06modnos\x18\x02 \x03(\x03R\x06modnos\"\x88\x01\n" + "\fLogDataEntry\x12\x15\n" + "\x06log_id\x18\x01 \x01(\tR\x05logId\x12\x1d\n" + "\n" + "owner_opid\x18\x02 \x01(\x03R\townerOpid\x12,\n" + "\x12expiration_ts_unix\x18\x03 \x01(\x03R\x10expirationTsUnix\x12\x14\n" + "\x05chunk\x18\x04 \x01(\fR\x05chunk\"v\n" + "\x1cSetAvailableResourcesRequest\x12*\n" + "\x05repos\x18\x01 \x03(\v2\x14.v1sync.PlanMetadataR\x05repos\x12*\n" + "\x05plans\x18\x02 \x03(\v2\x14.v1sync.RepoMetadataR\x05plans\"2\n" + "\fRepoMetadata\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" + "\x04guid\x18\x02 \x01(\tR\x04guid\"\x1e\n" + "\fPlanMetadata\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\"\xa2\x01\n" + "\x10SetConfigRequest\x12\x1e\n" + "\x05plans\x18\x01 \x03(\v2\b.v1.PlanR\x05plans\x12\x1e\n" + "\x05repos\x18\x02 \x03(\v2\b.v1.RepoR\x05repos\x12&\n" + "\x0frepos_to_delete\x18\x03 \x03(\tR\rreposToDelete\x12&\n" + "\x0fplans_to_delete\x18\x04 \x03(\tR\rplansToDelete\"\xcd\x01\n" + "\x1cSetRemoteClientConfigRequest\x12\x1d\n" + "\n" + "peer_keyid\x18\x01 \x01(\tR\tpeerKeyid\x12\x1e\n" + "\x05repos\x18\x02 \x03(\v2\b.v1.RepoR\x05repos\x12\x1e\n" + "\x05plans\x18\x03 \x03(\v2\b.v1.PlanR\x05plans\x12&\n" + "\x0frepos_to_delete\x18\x04 \x03(\tR\rreposToDelete\x12&\n" + "\x0fplans_to_delete\x18\x05 \x03(\tR\rplansToDelete\"\x1f\n" + "\x1dSetRemoteClientConfigResponse\"~\n" + "\fRemoteConfig\x12\x14\n" + "\x05modno\x18\x01 \x01(\x05R\x05modno\x12\x18\n" + "\aversion\x18\x02 \x01(\x05R\aversion\x12\x1e\n" + "\x05repos\x18\x03 \x03(\v2\b.v1.RepoR\x05repos\x12\x1e\n" + "\x05plans\x18\x04 \x03(\v2\b.v1.PlanR\x05plans\"v\n" + "\x12AuthorizationToken\x12,\n" + "\n" + "public_key\x18\x01 \x01(\v2\r.v1.PublicKeyR\tpublicKey\x122\n" + "\vinstance_id\x18\x02 \x01(\v2\x11.v1.SignedMessageR\n" + "instanceId\"\xf1\x16\n" + "\x0eSyncStreamItem\x12:\n" + "\x0esigned_message\x18\x01 \x01(\v2\x11.v1.SignedMessageH\x00R\rsignedMessage\x12J\n" + "\thandshake\x18\x03 \x01(\v2*.v1sync.SyncStreamItem.SyncActionHandshakeH\x00R\thandshake\x12J\n" + "\theartbeat\x18\x04 \x01(\v2*.v1sync.SyncStreamItem.SyncActionHeartbeatH\x00R\theartbeat\x12c\n" + "\x12operation_manifest\x18\x14 \x01(\v22.v1sync.SyncStreamItem.SyncActionOperationManifestH\x00R\x11operationManifest\x12c\n" + "\x12receive_operations\x18\x15 \x01(\v22.v1sync.SyncStreamItem.SyncActionReceiveOperationsH\x00R\x11receiveOperations\x12m\n" + "\x16request_operation_data\x18\x16 \x01(\v25.v1sync.SyncStreamItem.SyncActionRequestOperationDataH\x00R\x14requestOperationData\x12W\n" + "\x0ereceive_config\x18\x17 \x01(\v2..v1sync.SyncStreamItem.SyncActionReceiveConfigH\x00R\rreceiveConfig\x12K\n" + "\n" + "set_config\x18\x18 \x01(\v2*.v1sync.SyncStreamItem.SyncActionSetConfigH\x00R\tsetConfig\x12`\n" + "\x11request_resources\x18\x19 \x01(\v21.v1sync.SyncStreamItem.SyncActionRequestResourcesH\x00R\x10requestResources\x12`\n" + "\x11receive_resources\x18\x1a \x01(\v21.v1sync.SyncStreamItem.SyncActionReceiveResourcesH\x00R\x10receiveResources\x12N\n" + "\vrequest_log\x18\x1e \x01(\v2+.v1sync.SyncStreamItem.SyncActionRequestLogH\x00R\n" + "requestLog\x12[\n" + "\x10receive_log_data\x18\x1f \x01(\v2/.v1sync.SyncStreamItem.SyncActionReceiveLogDataH\x00R\x0ereceiveLogData\x12H\n" + "\bthrottle\x18\xe8\a \x01(\v2).v1sync.SyncStreamItem.SyncActionThrottleH\x00R\bthrottle\x12j\n" + "\x17establish_shared_secret\x18\x02 \x01(\v20.v1sync.SyncStreamItem.SyncEstablishSharedSecretH\x00R\x15establishSharedSecret\x12J\n" + "\tencrypted\x18\x05 \x01(\v2*.v1sync.SyncStreamItem.SyncActionEncryptedH\x00R\tencrypted\x1a\xd4\x01\n" + "\x13SyncActionHandshake\x12)\n" + "\x10protocol_version\x18\x01 \x01(\x03R\x0fprotocolVersion\x12,\n" + "\n" + "public_key\x18\x02 \x01(\v2\r.v1.PublicKeyR\tpublicKey\x12\x1f\n" + "\vinstance_id\x18\x03 \x01(\tR\n" + "instanceId\x12%\n" + "\x0epairing_secret\x18\x04 \x01(\tR\rpairingSecret\x12\x1c\n" + "\tsignature\x18\x05 \x01(\fR\tsignature\x1aK\n" + "\x13SyncActionEncrypted\x12\x14\n" + "\x05nonce\x18\x01 \x01(\fR\x05nonce\x12\x1e\n" + "\n" + "ciphertext\x18\x02 \x01(\fR\n" + "ciphertext\x1a\x15\n" + "\x13SyncActionHeartbeat\x1aG\n" + "\x17SyncActionReceiveConfig\x12,\n" + "\x06config\x18\x01 \x01(\v2\x14.v1sync.RemoteConfigR\x06config\x1a\xa5\x01\n" + "\x13SyncActionSetConfig\x12\x1e\n" + "\x05repos\x18\x01 \x03(\v2\b.v1.RepoR\x05repos\x12\x1e\n" + "\x05plans\x18\x02 \x03(\v2\b.v1.PlanR\x05plans\x12&\n" + "\x0frepos_to_delete\x18\x03 \x03(\tR\rreposToDelete\x12&\n" + "\x0fplans_to_delete\x18\x04 \x03(\tR\rplansToDelete\x1a\x1c\n" + "\x1aSyncActionRequestResources\x1at\n" + "\x1aSyncActionReceiveResources\x12*\n" + "\x05repos\x18\x01 \x03(\v2\x14.v1sync.RepoMetadataR\x05repos\x12*\n" + "\x05plans\x18\x02 \x03(\v2\x14.v1sync.PlanMetadataR\x05plans\x1a0\n" + "\x15SyncActionConnectRepo\x12\x17\n" + "\arepo_id\x18\x01 \x01(\tR\x06repoId\x1aL\n" + "\x1bSyncActionOperationManifest\x12\x15\n" + "\x06op_ids\x18\x01 \x03(\x03R\x05opIds\x12\x16\n" + "\x06modnos\x18\x02 \x03(\x03R\x06modnos\x1a7\n" + "\x1eSyncActionRequestOperationData\x12\x15\n" + "\x06op_ids\x18\x01 \x03(\x03R\x05opIds\x1aG\n" + "\x1bSyncActionReceiveOperations\x12(\n" + "\x05event\x18\x01 \x01(\v2\x12.v1.OperationEventR\x05event\x1a-\n" + "\x14SyncActionRequestLog\x12\x15\n" + "\x06log_id\x18\x01 \x01(\tR\x05logId\x1a\xb9\x01\n" + "\x18SyncActionReceiveLogData\x12\x15\n" + "\x06log_id\x18\x01 \x01(\tR\x05logId\x12\x1d\n" + "\n" + "owner_opid\x18\x02 \x01(\x03R\townerOpid\x12,\n" + "\x12expiration_ts_unix\x18\x03 \x01(\x03R\x10expirationTsUnix\x12\x14\n" + "\x05chunk\x18\x04 \x01(\fR\x05chunk\x12#\n" + "\rerror_message\x18\x05 \x01(\tR\ferrorMessage\x1a/\n" + "\x12SyncActionThrottle\x12\x19\n" + "\bdelay_ms\x18\x01 \x01(\x03R\adelayMs\x1a\x99\x01\n" + "\x19SyncEstablishSharedSecret\x12)\n" + "\x10protocol_version\x18\x01 \x01(\rR\x0fprotocolVersion\x12$\n" + "\x0ekem_public_key\x18\x02 \x01(\fR\fkemPublicKey\x12+\n" + "\x11kem_encapsulation\x18\x03 \x01(\fR\x10kemEncapsulation\"\xb4\x01\n" + "\x13RepoConnectionState\x12\x1c\n" + "\x18CONNECTION_STATE_UNKNOWN\x10\x00\x12\x1c\n" + "\x18CONNECTION_STATE_PENDING\x10\x01\x12\x1e\n" + "\x1aCONNECTION_STATE_CONNECTED\x10\x02\x12!\n" + "\x1dCONNECTION_STATE_UNAUTHORIZED\x10\x03\x12\x1e\n" + "\x1aCONNECTION_STATE_NOT_FOUND\x10\x04B\b\n" + "\x06action*\x9c\x02\n" + "\x0fConnectionState\x12\x1c\n" + "\x18CONNECTION_STATE_UNKNOWN\x10\x00\x12\x1c\n" + "\x18CONNECTION_STATE_PENDING\x10\x01\x12\x1e\n" + "\x1aCONNECTION_STATE_CONNECTED\x10\x02\x12!\n" + "\x1dCONNECTION_STATE_DISCONNECTED\x10\x03\x12\x1f\n" + "\x1bCONNECTION_STATE_RETRY_WAIT\x10\x04\x12\x1f\n" + "\x1bCONNECTION_STATE_ERROR_AUTH\x10\n" + "\x12#\n" + "\x1fCONNECTION_STATE_ERROR_PROTOCOL\x10\v\x12#\n" + "\x1fCONNECTION_STATE_ERROR_INTERNAL\x10\f2S\n" + "\x13BackrestSyncService\x12<\n" + "\x04Sync\x12\x16.v1sync.SyncStreamItem\x1a\x16.v1sync.SyncStreamItem\"\x00(\x010\x012\xd4\x01\n" + "\x18BackrestSyncStateService\x12P\n" + "\x17GetPeerSyncStatesStream\x12\x1e.v1sync.SyncStateStreamRequest\x1a\x11.v1sync.PeerState\"\x000\x01\x12f\n" + "\x15SetRemoteClientConfig\x12$.v1sync.SetRemoteClientConfigRequest\x1a%.v1sync.SetRemoteClientConfigResponse\"\x00B0Z.github.com/garethgeorge/backrest/gen/go/v1syncb\x06proto3" var ( file_v1sync_syncservice_proto_rawDescOnce sync.Once file_v1sync_syncservice_proto_rawDescData []byte ) func file_v1sync_syncservice_proto_rawDescGZIP() []byte { file_v1sync_syncservice_proto_rawDescOnce.Do(func() { file_v1sync_syncservice_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_v1sync_syncservice_proto_rawDesc), len(file_v1sync_syncservice_proto_rawDesc))) }) return file_v1sync_syncservice_proto_rawDescData } var file_v1sync_syncservice_proto_enumTypes = make([]protoimpl.EnumInfo, 2) var file_v1sync_syncservice_proto_msgTypes = make([]protoimpl.MessageInfo, 29) var file_v1sync_syncservice_proto_goTypes = []any{ (ConnectionState)(0), // 0: v1sync.ConnectionState (SyncStreamItem_RepoConnectionState)(0), // 1: v1sync.SyncStreamItem.RepoConnectionState (*SyncStateStreamRequest)(nil), // 2: v1sync.SyncStateStreamRequest (*PeerState)(nil), // 3: v1sync.PeerState (*AuthenticateRequest)(nil), // 4: v1sync.AuthenticateRequest (*GetOperationMetadataResponse)(nil), // 5: v1sync.GetOperationMetadataResponse (*LogDataEntry)(nil), // 6: v1sync.LogDataEntry (*SetAvailableResourcesRequest)(nil), // 7: v1sync.SetAvailableResourcesRequest (*RepoMetadata)(nil), // 8: v1sync.RepoMetadata (*PlanMetadata)(nil), // 9: v1sync.PlanMetadata (*SetConfigRequest)(nil), // 10: v1sync.SetConfigRequest (*SetRemoteClientConfigRequest)(nil), // 11: v1sync.SetRemoteClientConfigRequest (*SetRemoteClientConfigResponse)(nil), // 12: v1sync.SetRemoteClientConfigResponse (*RemoteConfig)(nil), // 13: v1sync.RemoteConfig (*AuthorizationToken)(nil), // 14: v1sync.AuthorizationToken (*SyncStreamItem)(nil), // 15: v1sync.SyncStreamItem (*SyncStreamItem_SyncActionHandshake)(nil), // 16: v1sync.SyncStreamItem.SyncActionHandshake (*SyncStreamItem_SyncActionEncrypted)(nil), // 17: v1sync.SyncStreamItem.SyncActionEncrypted (*SyncStreamItem_SyncActionHeartbeat)(nil), // 18: v1sync.SyncStreamItem.SyncActionHeartbeat (*SyncStreamItem_SyncActionReceiveConfig)(nil), // 19: v1sync.SyncStreamItem.SyncActionReceiveConfig (*SyncStreamItem_SyncActionSetConfig)(nil), // 20: v1sync.SyncStreamItem.SyncActionSetConfig (*SyncStreamItem_SyncActionRequestResources)(nil), // 21: v1sync.SyncStreamItem.SyncActionRequestResources (*SyncStreamItem_SyncActionReceiveResources)(nil), // 22: v1sync.SyncStreamItem.SyncActionReceiveResources (*SyncStreamItem_SyncActionConnectRepo)(nil), // 23: v1sync.SyncStreamItem.SyncActionConnectRepo (*SyncStreamItem_SyncActionOperationManifest)(nil), // 24: v1sync.SyncStreamItem.SyncActionOperationManifest (*SyncStreamItem_SyncActionRequestOperationData)(nil), // 25: v1sync.SyncStreamItem.SyncActionRequestOperationData (*SyncStreamItem_SyncActionReceiveOperations)(nil), // 26: v1sync.SyncStreamItem.SyncActionReceiveOperations (*SyncStreamItem_SyncActionRequestLog)(nil), // 27: v1sync.SyncStreamItem.SyncActionRequestLog (*SyncStreamItem_SyncActionReceiveLogData)(nil), // 28: v1sync.SyncStreamItem.SyncActionReceiveLogData (*SyncStreamItem_SyncActionThrottle)(nil), // 29: v1sync.SyncStreamItem.SyncActionThrottle (*SyncStreamItem_SyncEstablishSharedSecret)(nil), // 30: v1sync.SyncStreamItem.SyncEstablishSharedSecret (*v1.SignedMessage)(nil), // 31: v1.SignedMessage (*v1.Plan)(nil), // 32: v1.Plan (*v1.Repo)(nil), // 33: v1.Repo (*v1.PublicKey)(nil), // 34: v1.PublicKey (*v1.OperationEvent)(nil), // 35: v1.OperationEvent } var file_v1sync_syncservice_proto_depIdxs = []int32{ 0, // 0: v1sync.PeerState.state:type_name -> v1sync.ConnectionState 9, // 1: v1sync.PeerState.known_plans:type_name -> v1sync.PlanMetadata 8, // 2: v1sync.PeerState.known_repos:type_name -> v1sync.RepoMetadata 13, // 3: v1sync.PeerState.remote_config:type_name -> v1sync.RemoteConfig 31, // 4: v1sync.AuthenticateRequest.instance_id:type_name -> v1.SignedMessage 9, // 5: v1sync.SetAvailableResourcesRequest.repos:type_name -> v1sync.PlanMetadata 8, // 6: v1sync.SetAvailableResourcesRequest.plans:type_name -> v1sync.RepoMetadata 32, // 7: v1sync.SetConfigRequest.plans:type_name -> v1.Plan 33, // 8: v1sync.SetConfigRequest.repos:type_name -> v1.Repo 33, // 9: v1sync.SetRemoteClientConfigRequest.repos:type_name -> v1.Repo 32, // 10: v1sync.SetRemoteClientConfigRequest.plans:type_name -> v1.Plan 33, // 11: v1sync.RemoteConfig.repos:type_name -> v1.Repo 32, // 12: v1sync.RemoteConfig.plans:type_name -> v1.Plan 34, // 13: v1sync.AuthorizationToken.public_key:type_name -> v1.PublicKey 31, // 14: v1sync.AuthorizationToken.instance_id:type_name -> v1.SignedMessage 31, // 15: v1sync.SyncStreamItem.signed_message:type_name -> v1.SignedMessage 16, // 16: v1sync.SyncStreamItem.handshake:type_name -> v1sync.SyncStreamItem.SyncActionHandshake 18, // 17: v1sync.SyncStreamItem.heartbeat:type_name -> v1sync.SyncStreamItem.SyncActionHeartbeat 24, // 18: v1sync.SyncStreamItem.operation_manifest:type_name -> v1sync.SyncStreamItem.SyncActionOperationManifest 26, // 19: v1sync.SyncStreamItem.receive_operations:type_name -> v1sync.SyncStreamItem.SyncActionReceiveOperations 25, // 20: v1sync.SyncStreamItem.request_operation_data:type_name -> v1sync.SyncStreamItem.SyncActionRequestOperationData 19, // 21: v1sync.SyncStreamItem.receive_config:type_name -> v1sync.SyncStreamItem.SyncActionReceiveConfig 20, // 22: v1sync.SyncStreamItem.set_config:type_name -> v1sync.SyncStreamItem.SyncActionSetConfig 21, // 23: v1sync.SyncStreamItem.request_resources:type_name -> v1sync.SyncStreamItem.SyncActionRequestResources 22, // 24: v1sync.SyncStreamItem.receive_resources:type_name -> v1sync.SyncStreamItem.SyncActionReceiveResources 27, // 25: v1sync.SyncStreamItem.request_log:type_name -> v1sync.SyncStreamItem.SyncActionRequestLog 28, // 26: v1sync.SyncStreamItem.receive_log_data:type_name -> v1sync.SyncStreamItem.SyncActionReceiveLogData 29, // 27: v1sync.SyncStreamItem.throttle:type_name -> v1sync.SyncStreamItem.SyncActionThrottle 30, // 28: v1sync.SyncStreamItem.establish_shared_secret:type_name -> v1sync.SyncStreamItem.SyncEstablishSharedSecret 17, // 29: v1sync.SyncStreamItem.encrypted:type_name -> v1sync.SyncStreamItem.SyncActionEncrypted 34, // 30: v1sync.SyncStreamItem.SyncActionHandshake.public_key:type_name -> v1.PublicKey 13, // 31: v1sync.SyncStreamItem.SyncActionReceiveConfig.config:type_name -> v1sync.RemoteConfig 33, // 32: v1sync.SyncStreamItem.SyncActionSetConfig.repos:type_name -> v1.Repo 32, // 33: v1sync.SyncStreamItem.SyncActionSetConfig.plans:type_name -> v1.Plan 8, // 34: v1sync.SyncStreamItem.SyncActionReceiveResources.repos:type_name -> v1sync.RepoMetadata 9, // 35: v1sync.SyncStreamItem.SyncActionReceiveResources.plans:type_name -> v1sync.PlanMetadata 35, // 36: v1sync.SyncStreamItem.SyncActionReceiveOperations.event:type_name -> v1.OperationEvent 15, // 37: v1sync.BackrestSyncService.Sync:input_type -> v1sync.SyncStreamItem 2, // 38: v1sync.BackrestSyncStateService.GetPeerSyncStatesStream:input_type -> v1sync.SyncStateStreamRequest 11, // 39: v1sync.BackrestSyncStateService.SetRemoteClientConfig:input_type -> v1sync.SetRemoteClientConfigRequest 15, // 40: v1sync.BackrestSyncService.Sync:output_type -> v1sync.SyncStreamItem 3, // 41: v1sync.BackrestSyncStateService.GetPeerSyncStatesStream:output_type -> v1sync.PeerState 12, // 42: v1sync.BackrestSyncStateService.SetRemoteClientConfig:output_type -> v1sync.SetRemoteClientConfigResponse 40, // [40:43] is the sub-list for method output_type 37, // [37:40] is the sub-list for method input_type 37, // [37:37] is the sub-list for extension type_name 37, // [37:37] is the sub-list for extension extendee 0, // [0:37] is the sub-list for field type_name } func init() { file_v1sync_syncservice_proto_init() } func file_v1sync_syncservice_proto_init() { if File_v1sync_syncservice_proto != nil { return } file_v1sync_syncservice_proto_msgTypes[13].OneofWrappers = []any{ (*SyncStreamItem_SignedMessage)(nil), (*SyncStreamItem_Handshake)(nil), (*SyncStreamItem_Heartbeat)(nil), (*SyncStreamItem_OperationManifest)(nil), (*SyncStreamItem_ReceiveOperations)(nil), (*SyncStreamItem_RequestOperationData)(nil), (*SyncStreamItem_ReceiveConfig)(nil), (*SyncStreamItem_SetConfig)(nil), (*SyncStreamItem_RequestResources)(nil), (*SyncStreamItem_ReceiveResources)(nil), (*SyncStreamItem_RequestLog)(nil), (*SyncStreamItem_ReceiveLogData)(nil), (*SyncStreamItem_Throttle)(nil), (*SyncStreamItem_EstablishSharedSecret)(nil), (*SyncStreamItem_Encrypted)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_v1sync_syncservice_proto_rawDesc), len(file_v1sync_syncservice_proto_rawDesc)), NumEnums: 2, NumMessages: 29, NumExtensions: 0, NumServices: 2, }, GoTypes: file_v1sync_syncservice_proto_goTypes, DependencyIndexes: file_v1sync_syncservice_proto_depIdxs, EnumInfos: file_v1sync_syncservice_proto_enumTypes, MessageInfos: file_v1sync_syncservice_proto_msgTypes, }.Build() File_v1sync_syncservice_proto = out.File file_v1sync_syncservice_proto_goTypes = nil file_v1sync_syncservice_proto_depIdxs = nil }