diff --git a/docs/receptor_v1/receptor.md b/docs/receptor_v1/receptor.md index 31498b8..8fe5e69 100644 --- a/docs/receptor_v1/receptor.md +++ b/docs/receptor_v1/receptor.md @@ -568,3 +568,4 @@ and contains the service's configuration information. For example, an AWS S3 | bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | | string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) | | bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) | + diff --git a/go/receptor_sdk/cmd/report.go b/go/receptor_sdk/cmd/report.go index cd6aea3..5b15c38 100644 --- a/go/receptor_sdk/cmd/report.go +++ b/go/receptor_sdk/cmd/report.go @@ -17,7 +17,6 @@ import ( "github.com/trustero/api/go/receptor_sdk" "github.com/trustero/api/go/receptor_sdk/multipartkit" "github.com/trustero/api/go/receptor_v1" - "google.golang.org/protobuf/encoding/protowire" "google.golang.org/protobuf/types/known/timestamppb" ) @@ -69,23 +68,23 @@ func reportEvidence(rc receptor_v1.ReceptorClient, finding *receptor_v1.Finding, ColTags: map[string]string{}, } reportEvidence := receptor_v1.Evidence{ - Caption: evidence.Caption, - Description: evidence.Description, - ServiceName: evidence.ServiceName, - EntityType: evidence.EntityType, - Sources: evidence.Sources, - ServiceAccountId: evidence.ServiceAccountId, - Controls: evidence.Controls, - IsManual: evidence.IsManual, - RelevantDate: &evidence.RelevantDate, - EvidenceObjectType: evidence.EvidenceObjectType, - Policies: evidence.Policies, - RecordIds: evidence.RecordIds, - EvidenceKey: evidence.EvidenceKey, - Exceptions: evidence.Exceptions, - EvidenceLink: evidence.EvidenceLink, + Caption: evidence.Caption, + Description: evidence.Description, + ServiceName: evidence.ServiceName, + EntityType: evidence.EntityType, + Sources: evidence.Sources, + ServiceAccountId: evidence.ServiceAccountId, + Controls: evidence.Controls, + IsManual: evidence.IsManual, + RelevantDate: &evidence.RelevantDate, + EvidenceObjectType: evidence.EvidenceObjectType, + Policies: evidence.Policies, + RecordIds: evidence.RecordIds, + EvidenceKey: evidence.EvidenceKey, + Exceptions: evidence.Exceptions, + EvidenceLink: evidence.EvidenceLink, + SummaryGenerationMode: evidence.SummaryGenerationMode, } - addSummaryGenerationModeUnknownField(&reportEvidence, evidence.SummaryGenerationMode) if evidence.Document != nil && len(*evidence.Document) > 0 { paths := []FilePathsInfo{} @@ -219,14 +218,6 @@ func reportEvidence(rc receptor_v1.ReceptorClient, finding *receptor_v1.Finding, } -func addSummaryGenerationModeUnknownField(ev *receptor_v1.Evidence, summaryGenerationMode int32) { - // summary_generation_mode is field number 19 in receptor_v1.Evidence. - unknown := ev.ProtoReflect().GetUnknown() - encoded := protowire.AppendTag(nil, 19, protowire.VarintType) - encoded = protowire.AppendVarint(encoded, uint64(summaryGenerationMode)) - ev.ProtoReflect().SetUnknown(append(unknown, encoded...)) -} - // ExtractMetaData Extracts tag information from struct func ExtractMetaData(row interface{}, reportStruct *receptor_v1.Struct) (entityIdFieldName string, rowFieldNames []string, err error) { rowFieldNames = []string{} diff --git a/go/receptor_v1/receptor.pb.go b/go/receptor_v1/receptor.pb.go index cdd946f..043cc9c 100644 --- a/go/receptor_v1/receptor.pb.go +++ b/go/receptor_v1/receptor.pb.go @@ -3,7 +3,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.30.0 +// protoc-gen-go v1.36.11 // protoc v3.20.3 // source: receptor_v1/receptor.proto @@ -17,6 +17,7 @@ import ( wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" reflect "reflect" sync "sync" + unsafe "unsafe" ) const ( @@ -108,10 +109,7 @@ func (EvidenceObjectType) EnumDescriptor() ([]byte, []int) { // Finding is a set of evidence(s) collected from a service provider account. type Finding struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Unique receptor identifier. A receptor is expected to report findings from only one service provider type. A // stable identifier that represent the type of receptor reporting this finding. The identifier is a simple URL // encoded string that includes an organization name and the service provider name. For example: "trustero_gitlab". @@ -123,16 +121,16 @@ type Finding struct { // One or more evidence collected by a typical receptor scan. Evidences []*Evidence `protobuf:"bytes,4,rep,name=evidences,proto3" json:"evidences,omitempty"` // discovery_id is the unique identifier for the discovery process that led to this finding. - DiscoveryId string `protobuf:"bytes,5,opt,name=discovery_id,json=discoveryId,proto3" json:"discovery_id,omitempty"` + DiscoveryId string `protobuf:"bytes,5,opt,name=discovery_id,json=discoveryId,proto3" json:"discovery_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Finding) Reset() { *x = Finding{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Finding) String() string { @@ -143,7 +141,7 @@ func (*Finding) ProtoMessage() {} func (x *Finding) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -196,10 +194,7 @@ func (x *Finding) GetDiscoveryId() string { // Evidence is a unstructured or structured document that represent the how a service is being used within a // service provider account. For example, the configuration of an S3 bucket in AWS. type Evidence struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Caption is a human readable English string that identifies this evidence. Caption must be stable for // all scans of the same evidence type. Trustero uses the caption to associate this evidence with a // set of relevant controls. @@ -217,7 +212,7 @@ type Evidence struct { Sources []*Source `protobuf:"bytes,5,rep,name=sources,proto3" json:"sources,omitempty"` // Evidence_type can be either an unstructured (Document) or structured (Struct) type. // - // Types that are assignable to EvidenceType: + // Types that are valid to be assigned to EvidenceType: // // *Evidence_Doc // *Evidence_Struct @@ -234,6 +229,9 @@ type Evidence struct { RelevantDate *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=relevant_date,json=relevantDate,proto3" json:"relevant_date,omitempty"` // evidence_object_type is an enum of EvidenceObjectType. For example, "evidences", "controls", "policies", "policy_document". EvidenceObjectType EvidenceObjectType `protobuf:"varint,12,opt,name=evidence_object_type,json=evidenceObjectType,proto3,enum=receptor_v1.EvidenceObjectType" json:"evidence_object_type,omitempty"` + // summary_generation_mode identifies the evidence content category and is distinct from Document.mime. + // 0 = static, 1 = dynamic. + SummaryGenerationMode int32 `protobuf:"varint,19,opt,name=summary_generation_mode,json=summaryGenerationMode,proto3" json:"summary_generation_mode,omitempty"` // evidence_key is a unique key for the evidence object. This key is used to identify the evidence object in the external system. EvidenceKey string `protobuf:"bytes,13,opt,name=evidence_key,json=evidenceKey,proto3" json:"evidence_key,omitempty"` // Policies is a list of policies names that the document is associated with. @@ -243,16 +241,16 @@ type Evidence struct { // exceptions is a list of exceptions for the evidence object. Exceptions string `protobuf:"bytes,16,opt,name=exceptions,proto3" json:"exceptions,omitempty"` // // link to the evidence object in the external system. - EvidenceLink string `protobuf:"bytes,17,opt,name=evidence_link,json=evidenceLink,proto3" json:"evidence_link,omitempty"` + EvidenceLink string `protobuf:"bytes,17,opt,name=evidence_link,json=evidenceLink,proto3" json:"evidence_link,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Evidence) Reset() { *x = Evidence{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Evidence) String() string { @@ -263,7 +261,7 @@ func (*Evidence) ProtoMessage() {} func (x *Evidence) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -313,30 +311,36 @@ func (x *Evidence) GetSources() []*Source { return nil } -func (m *Evidence) GetEvidenceType() isEvidence_EvidenceType { - if m != nil { - return m.EvidenceType +func (x *Evidence) GetEvidenceType() isEvidence_EvidenceType { + if x != nil { + return x.EvidenceType } return nil } func (x *Evidence) GetDoc() *Document { - if x, ok := x.GetEvidenceType().(*Evidence_Doc); ok { - return x.Doc + if x != nil { + if x, ok := x.EvidenceType.(*Evidence_Doc); ok { + return x.Doc + } } return nil } func (x *Evidence) GetStruct() *Struct { - if x, ok := x.GetEvidenceType().(*Evidence_Struct); ok { - return x.Struct + if x != nil { + if x, ok := x.EvidenceType.(*Evidence_Struct); ok { + return x.Struct + } } return nil } func (x *Evidence) GetDocs() *Documents { - if x, ok := x.GetEvidenceType().(*Evidence_Docs); ok { - return x.Docs + if x != nil { + if x, ok := x.EvidenceType.(*Evidence_Docs); ok { + return x.Docs + } } return nil } @@ -376,6 +380,13 @@ func (x *Evidence) GetEvidenceObjectType() EvidenceObjectType { return EvidenceObjectType_EVIDENCES } +func (x *Evidence) GetSummaryGenerationMode() int32 { + if x != nil { + return x.SummaryGenerationMode + } + return 0 +} + func (x *Evidence) GetEvidenceKey() string { if x != nil { return x.EvidenceKey @@ -438,23 +449,20 @@ func (*Evidence_Docs) isEvidence_EvidenceType() {} // Source is the raw service provider API request and response. type Source struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Raw_api_request is the raw API request used to generate this evidence. RawApiRequest string `protobuf:"bytes,1,opt,name=raw_api_request,json=rawApiRequest,proto3" json:"raw_api_request,omitempty"` // Raw_api_response is the raw API response used to generate this evidence. RawApiResponse string `protobuf:"bytes,2,opt,name=raw_api_response,json=rawApiResponse,proto3" json:"raw_api_response,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Source) Reset() { *x = Source{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Source) String() string { @@ -465,7 +473,7 @@ func (*Source) ProtoMessage() {} func (x *Source) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -495,20 +503,17 @@ func (x *Source) GetRawApiResponse() string { } type Sources struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Sources []*Source `protobuf:"bytes,1,rep,name=sources,proto3" json:"sources,omitempty"` unknownFields protoimpl.UnknownFields - - Sources []*Source `protobuf:"bytes,1,rep,name=sources,proto3" json:"sources,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Sources) Reset() { *x = Sources{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Sources) String() string { @@ -519,7 +524,7 @@ func (*Sources) ProtoMessage() {} func (x *Sources) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -543,10 +548,7 @@ func (x *Sources) GetSources() []*Source { // Document is an unstructured evidence provided as a MIME document. type Document struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Mime is the document type defined using [MIME]. // [MIME]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types Mime string `protobuf:"bytes,2,opt,name=mime,proto3" json:"mime,omitempty"` @@ -559,16 +561,16 @@ type Document struct { // Last modified date of the document at the source LastModified *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=last_modified,json=lastModified,proto3" json:"last_modified,omitempty"` // Metadata is a map of key-value pairs that provide additional information about the document. - Metadata map[string]string `protobuf:"bytes,7,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Metadata map[string]string `protobuf:"bytes,7,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Document) Reset() { *x = Document{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Document) String() string { @@ -579,7 +581,7 @@ func (*Document) ProtoMessage() {} func (x *Document) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -637,20 +639,17 @@ func (x *Document) GetMetadata() map[string]string { } type Documents struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Docs []*Document `protobuf:"bytes,1,rep,name=docs,proto3" json:"docs,omitempty"` unknownFields protoimpl.UnknownFields - - Docs []*Document `protobuf:"bytes,1,rep,name=docs,proto3" json:"docs,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Documents) Reset() { *x = Documents{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Documents) String() string { @@ -661,7 +660,7 @@ func (*Documents) ProtoMessage() {} func (x *Documents) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -688,31 +687,28 @@ func (x *Documents) GetDocs() []*Document { // instance and its configurations. A row contains column name and column value pairs. All rows in a struct // must have the same column name-value pairs. type Struct struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Rows of key-value pairs. Each row typically represents the configuration of a service instance or an data // type such as a member of GitLab group. Rows []*Row `protobuf:"bytes,2,rep,name=rows,proto3" json:"rows,omitempty"` // Col_display_names is a map of row column name to it's corresponding display name. Display names are used // by the user interface to render a field in a struct's rows. - ColDisplayNames map[string]string `protobuf:"bytes,3,rep,name=col_display_names,json=colDisplayNames,proto3" json:"col_display_names,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + ColDisplayNames map[string]string `protobuf:"bytes,3,rep,name=col_display_names,json=colDisplayNames,proto3" json:"col_display_names,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // Col_display_order is an ordered list of row column names. The order of the column names are used by the user // interface to render the column order of a struct's rows. ColDisplayOrder []string `protobuf:"bytes,4,rep,name=col_display_order,json=colDisplayOrder,proto3" json:"col_display_order,omitempty"` // Col_tags is a map of column tag to row column name. These tags are used by Trustero's evidence testing interface // to identify relevant evidence. - ColTags map[string]string `protobuf:"bytes,5,rep,name=col_tags,json=colTags,proto3" json:"col_tags,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + ColTags map[string]string `protobuf:"bytes,5,rep,name=col_tags,json=colTags,proto3" json:"col_tags,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Struct) Reset() { *x = Struct{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Struct) String() string { @@ -723,7 +719,7 @@ func (*Struct) ProtoMessage() {} func (x *Struct) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -768,26 +764,23 @@ func (x *Struct) GetColTags() map[string]string { // Row is a row of structured data. type Row struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Entity_instance_id of a discovered entity instance. For example, an AWS "ECS" cluster UUID or GitLab // "repository" ID. EntityInstanceId string `protobuf:"bytes,1,opt,name=entity_instance_id,json=entityInstanceId,proto3" json:"entity_instance_id,omitempty"` // Cols are columns of the row in column name to value pairs. All rows in a struct must have the same column // names and corresponding value types. In addition, one of the key-value pair in the cols map must be the // entity_instance_id, a unique instance of this row's Struct.entity_type. - Cols map[string]*Value `protobuf:"bytes,2,rep,name=cols,proto3" json:"cols,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Cols map[string]*Value `protobuf:"bytes,2,rep,name=cols,proto3" json:"cols,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Row) Reset() { *x = Row{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Row) String() string { @@ -798,7 +791,7 @@ func (*Row) ProtoMessage() {} func (x *Row) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -829,11 +822,8 @@ func (x *Row) GetCols() map[string]*Value { // Value is a [Struct.row.col] column value. Value types can be simple protobuf scalar or [google.proto.Timestamp]. type Value struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Types that are assignable to ValueType: + state protoimpl.MessageState `protogen:"open.v1"` + // Types that are valid to be assigned to ValueType: // // *Value_DoubleValue // *Value_FloatValue @@ -846,16 +836,16 @@ type Value struct { // *Value_TimestampValue // *Value_StringListValue // *Value_StructListValue - ValueType isValue_ValueType `protobuf_oneof:"value_type"` + ValueType isValue_ValueType `protobuf_oneof:"value_type"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Value) Reset() { *x = Value{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Value) String() string { @@ -866,7 +856,7 @@ func (*Value) ProtoMessage() {} func (x *Value) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -881,86 +871,108 @@ func (*Value) Descriptor() ([]byte, []int) { return file_receptor_v1_receptor_proto_rawDescGZIP(), []int{8} } -func (m *Value) GetValueType() isValue_ValueType { - if m != nil { - return m.ValueType +func (x *Value) GetValueType() isValue_ValueType { + if x != nil { + return x.ValueType } return nil } func (x *Value) GetDoubleValue() float64 { - if x, ok := x.GetValueType().(*Value_DoubleValue); ok { - return x.DoubleValue + if x != nil { + if x, ok := x.ValueType.(*Value_DoubleValue); ok { + return x.DoubleValue + } } return 0 } func (x *Value) GetFloatValue() float32 { - if x, ok := x.GetValueType().(*Value_FloatValue); ok { - return x.FloatValue + if x != nil { + if x, ok := x.ValueType.(*Value_FloatValue); ok { + return x.FloatValue + } } return 0 } func (x *Value) GetInt32Value() int32 { - if x, ok := x.GetValueType().(*Value_Int32Value); ok { - return x.Int32Value + if x != nil { + if x, ok := x.ValueType.(*Value_Int32Value); ok { + return x.Int32Value + } } return 0 } func (x *Value) GetInt64Value() int64 { - if x, ok := x.GetValueType().(*Value_Int64Value); ok { - return x.Int64Value + if x != nil { + if x, ok := x.ValueType.(*Value_Int64Value); ok { + return x.Int64Value + } } return 0 } func (x *Value) GetUint32Value() uint32 { - if x, ok := x.GetValueType().(*Value_Uint32Value); ok { - return x.Uint32Value + if x != nil { + if x, ok := x.ValueType.(*Value_Uint32Value); ok { + return x.Uint32Value + } } return 0 } func (x *Value) GetUint64Value() uint64 { - if x, ok := x.GetValueType().(*Value_Uint64Value); ok { - return x.Uint64Value + if x != nil { + if x, ok := x.ValueType.(*Value_Uint64Value); ok { + return x.Uint64Value + } } return 0 } func (x *Value) GetBoolValue() bool { - if x, ok := x.GetValueType().(*Value_BoolValue); ok { - return x.BoolValue + if x != nil { + if x, ok := x.ValueType.(*Value_BoolValue); ok { + return x.BoolValue + } } return false } func (x *Value) GetStringValue() string { - if x, ok := x.GetValueType().(*Value_StringValue); ok { - return x.StringValue + if x != nil { + if x, ok := x.ValueType.(*Value_StringValue); ok { + return x.StringValue + } } return "" } func (x *Value) GetTimestampValue() *timestamppb.Timestamp { - if x, ok := x.GetValueType().(*Value_TimestampValue); ok { - return x.TimestampValue + if x != nil { + if x, ok := x.ValueType.(*Value_TimestampValue); ok { + return x.TimestampValue + } } return nil } func (x *Value) GetStringListValue() *StringList { - if x, ok := x.GetValueType().(*Value_StringListValue); ok { - return x.StringListValue + if x != nil { + if x, ok := x.ValueType.(*Value_StringListValue); ok { + return x.StringListValue + } } return nil } func (x *Value) GetStructListValue() *StructList { - if x, ok := x.GetValueType().(*Value_StructListValue); ok { - return x.StructListValue + if x != nil { + if x, ok := x.ValueType.(*Value_StructListValue); ok { + return x.StructListValue + } } return nil } @@ -1036,20 +1048,17 @@ func (*Value_StringListValue) isValue_ValueType() {} func (*Value_StructListValue) isValue_ValueType() {} type StringList struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` unknownFields protoimpl.UnknownFields - - Values []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` + sizeCache protoimpl.SizeCache } func (x *StringList) Reset() { *x = StringList{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StringList) String() string { @@ -1060,7 +1069,7 @@ func (*StringList) ProtoMessage() {} func (x *StringList) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1083,20 +1092,17 @@ func (x *StringList) GetValues() []string { } type StructList struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Values []*StructStruct `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` // Array of structs unknownFields protoimpl.UnknownFields - - Values []*StructStruct `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` // Array of structs + sizeCache protoimpl.SizeCache } func (x *StructList) Reset() { *x = StructList{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StructList) String() string { @@ -1107,7 +1113,7 @@ func (*StructList) ProtoMessage() {} func (x *StructList) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1130,20 +1136,17 @@ func (x *StructList) GetValues() []*StructStruct { } type StructStruct struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Fields map[string]*Value `protobuf:"bytes,1,rep,name=fields,proto3" json:"fields,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // Fields of the struct unknownFields protoimpl.UnknownFields - - Fields map[string]*Value `protobuf:"bytes,1,rep,name=fields,proto3" json:"fields,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Fields of the struct + sizeCache protoimpl.SizeCache } func (x *StructStruct) Reset() { *x = StructStruct{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *StructStruct) String() string { @@ -1154,7 +1157,7 @@ func (*StructStruct) ProtoMessage() {} func (x *StructStruct) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1181,10 +1184,7 @@ func (x *StructStruct) GetFields() map[string]*Value { // depends on how a receptor represents it's findings. Each service instance_id should be associated with at least // one Evidence. type ServiceEntities struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Receptor_type is a unique receptor type. A stable string identifier that represent the type of receptor // reporting this finding. The identifier is a simple URL encode string that includes the organization name // and a service provider name. For example "trustero_gitlab". @@ -1192,16 +1192,16 @@ type ServiceEntities struct { // Service_provider_account is the service provider account where the services are configured in. ServiceProviderAccount string `protobuf:"bytes,2,opt,name=service_provider_account,json=serviceProviderAccount,proto3" json:"service_provider_account,omitempty"` // Entities is a list of service instances configured in the service provider account. - Entities []*ServiceEntity `protobuf:"bytes,3,rep,name=entities,proto3" json:"entities,omitempty"` + Entities []*ServiceEntity `protobuf:"bytes,3,rep,name=entities,proto3" json:"entities,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ServiceEntities) Reset() { *x = ServiceEntities{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ServiceEntities) String() string { @@ -1212,7 +1212,7 @@ func (*ServiceEntities) ProtoMessage() {} func (x *ServiceEntities) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1253,10 +1253,7 @@ func (x *ServiceEntities) GetEntities() []*ServiceEntity { // detailed configurations collected by Receptor.Reported() calls. Service entities allows Trustero to filter // collected evidence that aren't relevant to specific audit contexts. type ServiceEntity struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Service_name of the entity source. This is a Trustero assigned identifier for a known service such as // "GitLab" or AWS "ECS". ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"` @@ -1275,15 +1272,15 @@ type ServiceEntity struct { // Service_account_id is the member account of the organization. For example, an AWS account number in a an organization // that has more than one account. ServiceAccountId string `protobuf:"bytes,5,opt,name=service_account_id,json=serviceAccountId,proto3" json:"service_account_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ServiceEntity) Reset() { *x = ServiceEntity{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ServiceEntity) String() string { @@ -1294,7 +1291,7 @@ func (*ServiceEntity) ProtoMessage() {} func (x *ServiceEntity) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1346,10 +1343,7 @@ func (x *ServiceEntity) GetServiceAccountId() string { // Credential is returned by a Verified request noting if a given service provider account credential is valid. type Credential struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Receptor_object_id is Trustero's receptor record identifier. This identifier is typically provided to the // receptor as part of a reporting findings or discover services request. ReceptorObjectId string `protobuf:"bytes,1,opt,name=receptor_object_id,json=receptorObjectId,proto3" json:"receptor_object_id,omitempty"` @@ -1361,16 +1355,16 @@ type Credential struct { // Message contains the reason for why the service provider credential in this message is invalid. Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"` // Exceptions contains information about the permissions that are missing for the credentials provided. - Exceptions string `protobuf:"bytes,5,opt,name=exceptions,proto3" json:"exceptions,omitempty"` + Exceptions string `protobuf:"bytes,5,opt,name=exceptions,proto3" json:"exceptions,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Credential) Reset() { *x = Credential{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Credential) String() string { @@ -1381,7 +1375,7 @@ func (*Credential) ProtoMessage() {} func (x *Credential) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1433,21 +1427,18 @@ func (x *Credential) GetExceptions() string { // ReceptorOID is Trustero's receptor record identifier. type ReceptorOID struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Receptor_object_id is the string representation of a Trustero persistent record. ReceptorObjectId string `protobuf:"bytes,1,opt,name=receptor_object_id,json=receptorObjectId,proto3" json:"receptor_object_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ReceptorOID) Reset() { *x = ReceptorOID{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ReceptorOID) String() string { @@ -1458,7 +1449,7 @@ func (*ReceptorOID) ProtoMessage() {} func (x *ReceptorOID) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1482,10 +1473,7 @@ func (x *ReceptorOID) GetReceptorObjectId() string { // ReceptorConfiguration contains a configurations a receptor needs to access a service provider account. type ReceptorConfiguration struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Receptor_object_id is Trustero's receptor record identifier. ReceptorObjectId string `protobuf:"bytes,1,opt,name=receptor_object_id,json=receptorObjectId,proto3" json:"receptor_object_id,omitempty"` // Credential required to access a service provider for report finding and discover services purposes. @@ -1495,16 +1483,16 @@ type ReceptorConfiguration struct { // Service_provider_account is the service provider account name. ServiceProviderAccount string `protobuf:"bytes,4,opt,name=service_provider_account,json=serviceProviderAccount,proto3" json:"service_provider_account,omitempty"` // Model_id is the receptor model id - ModelId string `protobuf:"bytes,5,opt,name=model_id,json=modelId,proto3" json:"model_id,omitempty"` + ModelId string `protobuf:"bytes,5,opt,name=model_id,json=modelId,proto3" json:"model_id,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ReceptorConfiguration) Reset() { *x = ReceptorConfiguration{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ReceptorConfiguration) String() string { @@ -1515,7 +1503,7 @@ func (*ReceptorConfiguration) ProtoMessage() {} func (x *ReceptorConfiguration) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1567,10 +1555,7 @@ func (x *ReceptorConfiguration) GetModelId() string { // JobResult reports the result of a receptor request. type JobResult struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` // Tracer_id is used to track the progress of the receptor request. TracerId string `protobuf:"bytes,1,opt,name=tracer_id,json=tracerId,proto3" json:"tracer_id,omitempty"` // Command is the receptor request that completed. One of "verify", "scan", or "discover" @@ -1580,16 +1565,16 @@ type JobResult struct { // Receptor_object_id is Trustero's receptor record identifier. ReceptorObjectId string `protobuf:"bytes,4,opt,name=receptor_object_id,json=receptorObjectId,proto3" json:"receptor_object_id,omitempty"` // Exceptions contain information about the error like permission missing for the credentials provided. - Exceptions string `protobuf:"bytes,5,opt,name=exceptions,proto3" json:"exceptions,omitempty"` + Exceptions string `protobuf:"bytes,5,opt,name=exceptions,proto3" json:"exceptions,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *JobResult) Reset() { *x = JobResult{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *JobResult) String() string { @@ -1600,7 +1585,7 @@ func (*JobResult) ProtoMessage() {} func (x *JobResult) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1651,21 +1636,18 @@ func (x *JobResult) GetExceptions() string { } type ReportChunk struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` + IsBoundary bool `protobuf:"varint,2,opt,name=is_boundary,json=isBoundary,proto3" json:"is_boundary,omitempty"` // Whether this chunk contains the boundary unknownFields protoimpl.UnknownFields - - Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` - IsBoundary bool `protobuf:"varint,2,opt,name=is_boundary,json=isBoundary,proto3" json:"is_boundary,omitempty"` // Whether this chunk contains the boundary + sizeCache protoimpl.SizeCache } func (x *ReportChunk) Reset() { *x = ReportChunk{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ReportChunk) String() string { @@ -1676,7 +1658,7 @@ func (*ReportChunk) ProtoMessage() {} func (x *ReportChunk) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1707,20 +1689,17 @@ func (x *ReportChunk) GetIsBoundary() bool { // Server response after receiving the whole streamed report type ReportResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` // Could use "ok" or other status information unknownFields protoimpl.UnknownFields - - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` // Could use "ok" or other status information + sizeCache protoimpl.SizeCache } func (x *ReportResponse) Reset() { *x = ReportResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_receptor_v1_receptor_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_receptor_v1_receptor_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ReportResponse) String() string { @@ -1731,7 +1710,7 @@ func (*ReportResponse) ProtoMessage() {} func (x *ReportResponse) ProtoReflect() protoreflect.Message { mi := &file_receptor_v1_receptor_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1755,341 +1734,191 @@ func (x *ReportResponse) GetStatus() string { var File_receptor_v1_receptor_proto protoreflect.FileDescriptor -var file_receptor_v1_receptor_proto_rawDesc = []byte{ - 0x0a, 0x1a, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2f, 0x72, 0x65, - 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x72, 0x65, - 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 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, 0xf8, 0x01, 0x0a, 0x07, 0x46, 0x69, 0x6e, 0x64, - 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65, - 0x70, 0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x73, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x73, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, - 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x65, 0x76, - 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, - 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x45, 0x76, 0x69, 0x64, - 0x65, 0x6e, 0x63, 0x65, 0x52, 0x09, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, - 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x69, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, - 0x49, 0x64, 0x22, 0xf0, 0x05, 0x0a, 0x08, 0x45, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, - 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x2d, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x13, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x29, - 0x0a, 0x03, 0x64, 0x6f, 0x63, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x72, 0x65, - 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, - 0x6e, 0x74, 0x48, 0x00, 0x52, 0x03, 0x64, 0x6f, 0x63, 0x12, 0x2d, 0x0a, 0x06, 0x73, 0x74, 0x72, - 0x75, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x72, 0x65, 0x63, 0x65, - 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x48, 0x00, - 0x52, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x6f, 0x63, 0x73, - 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, - 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x48, 0x00, - 0x52, 0x04, 0x64, 0x6f, 0x63, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x10, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, - 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, - 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x6d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x12, 0x3f, 0x0a, - 0x0d, 0x72, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x6e, 0x74, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0b, - 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, 0x0c, 0x72, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x6e, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x51, - 0x0a, 0x14, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x72, - 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x45, 0x76, 0x69, 0x64, 0x65, - 0x6e, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x12, 0x65, - 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6b, 0x65, - 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, - 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, - 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, - 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0f, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x49, 0x64, 0x73, 0x12, - 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x10, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x23, 0x0a, 0x0d, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, - 0x4c, 0x69, 0x6e, 0x6b, 0x42, 0x0f, 0x0a, 0x0d, 0x65, 0x76, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, - 0x26, 0x0a, 0x0f, 0x72, 0x61, 0x77, 0x5f, 0x61, 0x70, 0x69, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x61, 0x77, 0x41, 0x70, 0x69, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x28, 0x0a, 0x10, 0x72, 0x61, 0x77, 0x5f, 0x61, - 0x70, 0x69, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x72, 0x61, 0x77, 0x41, 0x70, 0x69, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x38, 0x0a, 0x07, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x07, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, - 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x52, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x22, 0xb8, 0x02, 0x0a, 0x08, - 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x69, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, - 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, - 0x12, 0x28, 0x0a, 0x10, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, - 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x74, 0x72, 0x65, - 0x61, 0x6d, 0x46, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, - 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, - 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x0d, 0x6c, 0x61, 0x73, 0x74, 0x5f, - 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x06, 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, 0x0c, 0x6c, 0x61, 0x73, 0x74, - 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x3f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x72, 0x65, 0x63, - 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, - 0x74, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x36, 0x0a, 0x09, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x6f, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x15, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, - 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x64, 0x6f, 0x63, 0x73, 0x22, 0xed, - 0x02, 0x0a, 0x06, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x04, 0x72, 0x6f, 0x77, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, - 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x77, 0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x12, - 0x54, 0x0a, 0x11, 0x63, 0x6f, 0x6c, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x63, - 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, - 0x43, 0x6f, 0x6c, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0f, 0x63, 0x6f, 0x6c, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6f, 0x6c, 0x5f, 0x64, 0x69, 0x73, - 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0f, 0x63, 0x6f, 0x6c, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4f, 0x72, 0x64, 0x65, - 0x72, 0x12, 0x3b, 0x0a, 0x08, 0x63, 0x6f, 0x6c, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, - 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6c, 0x54, 0x61, 0x67, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x1a, 0x42, - 0x0a, 0x14, 0x43, 0x6f, 0x6c, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x1a, 0x3a, 0x0a, 0x0c, 0x43, 0x6f, 0x6c, 0x54, 0x61, 0x67, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb0, - 0x01, 0x0a, 0x03, 0x52, 0x6f, 0x77, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x10, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, - 0x63, 0x65, 0x49, 0x64, 0x12, 0x2e, 0x0a, 0x04, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, - 0x2e, 0x52, 0x6f, 0x77, 0x2e, 0x43, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, - 0x63, 0x6f, 0x6c, 0x73, 0x1a, 0x4b, 0x0a, 0x09, 0x43, 0x6f, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, - 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x22, 0x88, 0x04, 0x0a, 0x05, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x64, - 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x01, 0x48, 0x00, 0x52, 0x0b, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x12, 0x21, 0x0a, 0x0b, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x02, 0x48, 0x00, 0x52, 0x0a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x5f, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x33, - 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0a, 0x69, - 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x75, 0x69, 0x6e, - 0x74, 0x33, 0x32, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x48, - 0x00, 0x52, 0x0b, 0x75, 0x69, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, - 0x0a, 0x0c, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x04, 0x48, 0x00, 0x52, 0x0b, 0x75, 0x69, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x62, 0x6f, 0x6f, 0x6c, 0x5f, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x09, 0x62, 0x6f, 0x6f, 0x6c, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x45, 0x0a, 0x0f, 0x74, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x09, 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, 0x48, 0x00, - 0x52, 0x0e, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x72, 0x65, - 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, - 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x69, - 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x74, 0x72, 0x75, 0x63, - 0x74, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, - 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x00, 0x52, 0x0f, 0x73, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x0c, - 0x0a, 0x0a, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x24, 0x0a, 0x0a, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x61, - 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x73, 0x22, 0x3f, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, - 0x12, 0x31, 0x0a, 0x06, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x19, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x53, - 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x06, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, - 0x72, 0x75, 0x63, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, - 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, - 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x66, 0x69, 0x65, - 0x6c, 0x64, 0x73, 0x1a, 0x4d, 0x0a, 0x0b, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, - 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0xa8, 0x01, 0x0a, 0x0f, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, - 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, - 0x6f, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, - 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x0a, 0x18, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, - 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0xe1, 0x01, - 0x0a, 0x0d, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, - 0x21, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x14, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x6e, - 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x12, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, - 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x10, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, - 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x10, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x64, 0x22, 0xc4, 0x01, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, - 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, - 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1e, - 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x2e, - 0x0a, 0x13, 0x69, 0x73, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x5f, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x73, 0x43, - 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x12, 0x18, - 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x63, 0x65, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x78, - 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x3b, 0x0a, 0x0b, 0x52, 0x65, 0x63, 0x65, - 0x70, 0x74, 0x6f, 0x72, 0x4f, 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x63, 0x65, 0x70, - 0x74, 0x6f, 0x72, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x49, 0x64, 0x22, 0xd2, 0x01, 0x0a, 0x15, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74, - 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x63, - 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, - 0x0a, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x16, 0x0a, - 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x18, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x16, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x19, 0x0a, 0x08, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x49, 0x64, 0x22, 0xa8, 0x01, 0x0a, 0x09, 0x4a, - 0x6f, 0x62, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x63, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x61, - 0x63, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x65, 0x63, 0x65, 0x70, - 0x74, 0x6f, 0x72, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x10, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x48, 0x0a, 0x0b, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, - 0x68, 0x75, 0x6e, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1f, - 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x42, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x22, - 0x28, 0x0a, 0x0e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2a, 0xeb, 0x02, 0x0a, 0x12, 0x45, 0x76, - 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x56, 0x49, 0x44, 0x45, 0x4e, 0x43, 0x45, 0x53, 0x10, 0x00, 0x12, - 0x0c, 0x0a, 0x08, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x53, 0x10, 0x01, 0x12, 0x0c, 0x0a, - 0x08, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x49, 0x45, 0x53, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x50, - 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x44, 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x03, - 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x4f, 0x4c, 0x49, - 0x43, 0x59, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, - 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, 0x55, 0x52, - 0x45, 0x53, 0x10, 0x05, 0x12, 0x25, 0x0a, 0x21, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, - 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, 0x55, 0x52, - 0x45, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x06, 0x12, 0x1c, 0x0a, 0x18, 0x43, - 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x45, 0x56, 0x49, 0x44, 0x45, 0x4e, 0x43, 0x45, 0x5f, - 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x07, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x56, 0x49, - 0x44, 0x45, 0x4e, 0x43, 0x45, 0x53, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x10, 0x08, 0x12, 0x22, 0x0a, - 0x1e, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x44, 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, - 0x5f, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, - 0x09, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4f, 0x4c, 0x49, 0x43, 0x59, 0x5f, 0x44, 0x4f, 0x43, 0x55, - 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x10, 0x0a, 0x12, 0x26, 0x0a, 0x22, 0x43, - 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x44, 0x55, 0x52, 0x45, - 0x5f, 0x45, 0x56, 0x49, 0x44, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x41, 0x50, 0x50, 0x49, 0x4e, - 0x47, 0x10, 0x0b, 0x12, 0x22, 0x0a, 0x1e, 0x57, 0x4f, 0x52, 0x4b, 0x46, 0x4c, 0x4f, 0x57, 0x5f, - 0x54, 0x41, 0x53, 0x4b, 0x5f, 0x45, 0x56, 0x49, 0x44, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4d, 0x41, - 0x50, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x0c, 0x32, 0xf4, 0x03, 0x0a, 0x08, 0x52, 0x65, 0x63, 0x65, - 0x70, 0x74, 0x6f, 0x72, 0x12, 0x3b, 0x0a, 0x08, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, - 0x12, 0x17, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x43, - 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, - 0x79, 0x12, 0x50, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, - 0x5f, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x4f, 0x49, 0x44, 0x1a, - 0x22, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x52, 0x65, - 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, - 0x64, 0x12, 0x1c, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x1a, - 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x3c, 0x0a, - 0x06, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x14, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, - 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x1a, 0x1c, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x38, 0x0a, 0x06, 0x4e, - 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x16, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, - 0x5f, 0x76, 0x31, 0x2e, 0x4a, 0x6f, 0x62, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x1a, 0x16, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4e, 0x0a, 0x10, 0x53, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x2e, 0x72, 0x65, 0x63, 0x65, - 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x16, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x47, 0x0a, 0x0c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, - 0x5f, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x68, 0x75, 0x6e, 0x6b, 0x1a, - 0x1b, 0x2e, 0x72, 0x65, 0x63, 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x2e, 0x52, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x28, 0x01, 0x42, 0x28, - 0x5a, 0x26, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x74, 0x72, 0x75, - 0x73, 0x74, 0x65, 0x72, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x6f, 0x2f, 0x72, 0x65, 0x63, - 0x65, 0x70, 0x74, 0x6f, 0x72, 0x5f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} +const file_receptor_v1_receptor_proto_rawDesc = "" + + "\n" + + "\x1areceptor_v1/receptor.proto\x12\vreceptor_v1\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xf8\x01\n" + + "\aFinding\x12#\n" + + "\rreceptor_type\x18\x01 \x01(\tR\freceptorType\x128\n" + + "\x18service_provider_account\x18\x02 \x01(\tR\x16serviceProviderAccount\x126\n" + + "\bentities\x18\x03 \x03(\v2\x1a.receptor_v1.ServiceEntityR\bentities\x123\n" + + "\tevidences\x18\x04 \x03(\v2\x15.receptor_v1.EvidenceR\tevidences\x12!\n" + + "\fdiscovery_id\x18\x05 \x01(\tR\vdiscoveryId\"\xa8\x06\n" + + "\bEvidence\x12\x18\n" + + "\acaption\x18\x01 \x01(\tR\acaption\x12 \n" + + "\vdescription\x18\x02 \x01(\tR\vdescription\x12!\n" + + "\fservice_name\x18\x03 \x01(\tR\vserviceName\x12\x1f\n" + + "\ventity_type\x18\x04 \x01(\tR\n" + + "entityType\x12-\n" + + "\asources\x18\x05 \x03(\v2\x13.receptor_v1.SourceR\asources\x12)\n" + + "\x03doc\x18\x06 \x01(\v2\x15.receptor_v1.DocumentH\x00R\x03doc\x12-\n" + + "\x06struct\x18\a \x01(\v2\x13.receptor_v1.StructH\x00R\x06struct\x12,\n" + + "\x04docs\x18\x12 \x01(\v2\x16.receptor_v1.DocumentsH\x00R\x04docs\x12,\n" + + "\x12service_account_id\x18\b \x01(\tR\x10serviceAccountId\x12\x1a\n" + + "\bcontrols\x18\t \x03(\tR\bcontrols\x12\x1b\n" + + "\tis_manual\x18\n" + + " \x01(\bR\bisManual\x12?\n" + + "\rrelevant_date\x18\v \x01(\v2\x1a.google.protobuf.TimestampR\frelevantDate\x12Q\n" + + "\x14evidence_object_type\x18\f \x01(\x0e2\x1f.receptor_v1.EvidenceObjectTypeR\x12evidenceObjectType\x126\n" + + "\x17summary_generation_mode\x18\x13 \x01(\x05R\x15summaryGenerationMode\x12!\n" + + "\fevidence_key\x18\r \x01(\tR\vevidenceKey\x12\x1a\n" + + "\bpolicies\x18\x0e \x03(\tR\bpolicies\x12\x1d\n" + + "\n" + + "record_ids\x18\x0f \x03(\tR\trecordIds\x12\x1e\n" + + "\n" + + "exceptions\x18\x10 \x01(\tR\n" + + "exceptions\x12#\n" + + "\revidence_link\x18\x11 \x01(\tR\fevidenceLinkB\x0f\n" + + "\revidence_type\"Z\n" + + "\x06Source\x12&\n" + + "\x0fraw_api_request\x18\x01 \x01(\tR\rrawApiRequest\x12(\n" + + "\x10raw_api_response\x18\x02 \x01(\tR\x0erawApiResponse\"8\n" + + "\aSources\x12-\n" + + "\asources\x18\x01 \x03(\v2\x13.receptor_v1.SourceR\asources\"\xb8\x02\n" + + "\bDocument\x12\x12\n" + + "\x04mime\x18\x02 \x01(\tR\x04mime\x12\x12\n" + + "\x04body\x18\x03 \x01(\fR\x04body\x12(\n" + + "\x10stream_file_path\x18\x04 \x01(\tR\x0estreamFilePath\x12\x1b\n" + + "\tfile_name\x18\x05 \x01(\tR\bfileName\x12?\n" + + "\rlast_modified\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampR\flastModified\x12?\n" + + "\bmetadata\x18\a \x03(\v2#.receptor_v1.Document.MetadataEntryR\bmetadata\x1a;\n" + + "\rMetadataEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"6\n" + + "\tDocuments\x12)\n" + + "\x04docs\x18\x01 \x03(\v2\x15.receptor_v1.DocumentR\x04docs\"\xed\x02\n" + + "\x06Struct\x12$\n" + + "\x04rows\x18\x02 \x03(\v2\x10.receptor_v1.RowR\x04rows\x12T\n" + + "\x11col_display_names\x18\x03 \x03(\v2(.receptor_v1.Struct.ColDisplayNamesEntryR\x0fcolDisplayNames\x12*\n" + + "\x11col_display_order\x18\x04 \x03(\tR\x0fcolDisplayOrder\x12;\n" + + "\bcol_tags\x18\x05 \x03(\v2 .receptor_v1.Struct.ColTagsEntryR\acolTags\x1aB\n" + + "\x14ColDisplayNamesEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1a:\n" + + "\fColTagsEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\xb0\x01\n" + + "\x03Row\x12,\n" + + "\x12entity_instance_id\x18\x01 \x01(\tR\x10entityInstanceId\x12.\n" + + "\x04cols\x18\x02 \x03(\v2\x1a.receptor_v1.Row.ColsEntryR\x04cols\x1aK\n" + + "\tColsEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12(\n" + + "\x05value\x18\x02 \x01(\v2\x12.receptor_v1.ValueR\x05value:\x028\x01\"\x88\x04\n" + + "\x05Value\x12#\n" + + "\fdouble_value\x18\x01 \x01(\x01H\x00R\vdoubleValue\x12!\n" + + "\vfloat_value\x18\x02 \x01(\x02H\x00R\n" + + "floatValue\x12!\n" + + "\vint32_value\x18\x03 \x01(\x05H\x00R\n" + + "int32Value\x12!\n" + + "\vint64_value\x18\x04 \x01(\x03H\x00R\n" + + "int64Value\x12#\n" + + "\fuint32_value\x18\x05 \x01(\rH\x00R\vuint32Value\x12#\n" + + "\fuint64_value\x18\x06 \x01(\x04H\x00R\vuint64Value\x12\x1f\n" + + "\n" + + "bool_value\x18\a \x01(\bH\x00R\tboolValue\x12#\n" + + "\fstring_value\x18\b \x01(\tH\x00R\vstringValue\x12E\n" + + "\x0ftimestamp_value\x18\t \x01(\v2\x1a.google.protobuf.TimestampH\x00R\x0etimestampValue\x12E\n" + + "\x11string_list_value\x18\n" + + " \x01(\v2\x17.receptor_v1.StringListH\x00R\x0fstringListValue\x12E\n" + + "\x11struct_list_value\x18\v \x01(\v2\x17.receptor_v1.StructListH\x00R\x0fstructListValueB\f\n" + + "\n" + + "value_type\"$\n" + + "\n" + + "StringList\x12\x16\n" + + "\x06values\x18\x01 \x03(\tR\x06values\"?\n" + + "\n" + + "StructList\x121\n" + + "\x06values\x18\x01 \x03(\v2\x19.receptor_v1.StructStructR\x06values\"\x9c\x01\n" + + "\fStructStruct\x12=\n" + + "\x06fields\x18\x01 \x03(\v2%.receptor_v1.StructStruct.FieldsEntryR\x06fields\x1aM\n" + + "\vFieldsEntry\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12(\n" + + "\x05value\x18\x02 \x01(\v2\x12.receptor_v1.ValueR\x05value:\x028\x01\"\xa8\x01\n" + + "\x0fServiceEntities\x12#\n" + + "\rreceptor_type\x18\x01 \x01(\tR\freceptorType\x128\n" + + "\x18service_provider_account\x18\x02 \x01(\tR\x16serviceProviderAccount\x126\n" + + "\bentities\x18\x03 \x03(\v2\x1a.receptor_v1.ServiceEntityR\bentities\"\xe1\x01\n" + + "\rServiceEntity\x12!\n" + + "\fservice_name\x18\x01 \x01(\tR\vserviceName\x12\x1f\n" + + "\ventity_type\x18\x02 \x01(\tR\n" + + "entityType\x120\n" + + "\x14entity_instance_name\x18\x03 \x01(\tR\x12entityInstanceName\x12,\n" + + "\x12entity_instance_id\x18\x04 \x01(\tR\x10entityInstanceId\x12,\n" + + "\x12service_account_id\x18\x05 \x01(\tR\x10serviceAccountId\"\xc4\x01\n" + + "\n" + + "Credential\x12,\n" + + "\x12receptor_object_id\x18\x01 \x01(\tR\x10receptorObjectId\x12\x1e\n" + + "\n" + + "credential\x18\x02 \x01(\tR\n" + + "credential\x12.\n" + + "\x13is_credential_valid\x18\x03 \x01(\bR\x11isCredentialValid\x12\x18\n" + + "\amessage\x18\x04 \x01(\tR\amessage\x12\x1e\n" + + "\n" + + "exceptions\x18\x05 \x01(\tR\n" + + "exceptions\";\n" + + "\vReceptorOID\x12,\n" + + "\x12receptor_object_id\x18\x01 \x01(\tR\x10receptorObjectId\"\xd2\x01\n" + + "\x15ReceptorConfiguration\x12,\n" + + "\x12receptor_object_id\x18\x01 \x01(\tR\x10receptorObjectId\x12\x1e\n" + + "\n" + + "credential\x18\x02 \x01(\tR\n" + + "credential\x12\x16\n" + + "\x06config\x18\x03 \x01(\tR\x06config\x128\n" + + "\x18service_provider_account\x18\x04 \x01(\tR\x16serviceProviderAccount\x12\x19\n" + + "\bmodel_id\x18\x05 \x01(\tR\amodelId\"\xa8\x01\n" + + "\tJobResult\x12\x1b\n" + + "\ttracer_id\x18\x01 \x01(\tR\btracerId\x12\x18\n" + + "\acommand\x18\x02 \x01(\tR\acommand\x12\x16\n" + + "\x06result\x18\x03 \x01(\tR\x06result\x12,\n" + + "\x12receptor_object_id\x18\x04 \x01(\tR\x10receptorObjectId\x12\x1e\n" + + "\n" + + "exceptions\x18\x05 \x01(\tR\n" + + "exceptions\"H\n" + + "\vReportChunk\x12\x18\n" + + "\acontent\x18\x01 \x01(\fR\acontent\x12\x1f\n" + + "\vis_boundary\x18\x02 \x01(\bR\n" + + "isBoundary\"(\n" + + "\x0eReportResponse\x12\x16\n" + + "\x06status\x18\x01 \x01(\tR\x06status*\xeb\x02\n" + + "\x12EvidenceObjectType\x12\r\n" + + "\tEVIDENCES\x10\x00\x12\f\n" + + "\bCONTROLS\x10\x01\x12\f\n" + + "\bPOLICIES\x10\x02\x12\x13\n" + + "\x0fPOLICY_DOCUMENT\x10\x03\x12\x1a\n" + + "\x16CONTROL_POLICY_MAPPING\x10\x04\x12\x16\n" + + "\x12CONTROL_PROCEDURES\x10\x05\x12%\n" + + "!CONTROL_CONTROL_PROCEDURE_MAPPING\x10\x06\x12\x1c\n" + + "\x18CONTROL_EVIDENCE_MAPPING\x10\a\x12\x12\n" + + "\x0eEVIDENCES_META\x10\b\x12\"\n" + + "\x1ePOLICY_DOCUMENT_POLICY_MAPPING\x10\t\x12\x18\n" + + "\x14POLICY_DOCUMENT_META\x10\n" + + "\x12&\n" + + "\"CONTROL_PROCEDURE_EVIDENCE_MAPPING\x10\v\x12\"\n" + + "\x1eWORKFLOW_TASK_EVIDENCE_MAPPING\x10\f2\xf4\x03\n" + + "\bReceptor\x12;\n" + + "\bVerified\x12\x17.receptor_v1.Credential\x1a\x16.google.protobuf.Empty\x12P\n" + + "\x10GetConfiguration\x12\x18.receptor_v1.ReceptorOID\x1a\".receptor_v1.ReceptorConfiguration\x12H\n" + + "\n" + + "Discovered\x12\x1c.receptor_v1.ServiceEntities\x1a\x1c.google.protobuf.StringValue\x12<\n" + + "\x06Report\x12\x14.receptor_v1.Finding\x1a\x1c.google.protobuf.StringValue\x128\n" + + "\x06Notify\x12\x16.receptor_v1.JobResult\x1a\x16.google.protobuf.Empty\x12N\n" + + "\x10SetConfiguration\x12\".receptor_v1.ReceptorConfiguration\x1a\x16.google.protobuf.Empty\x12G\n" + + "\fStreamReport\x12\x18.receptor_v1.ReportChunk\x1a\x1b.receptor_v1.ReportResponse(\x01B(Z&github.com/trustero/api/go/receptor_v1b\x06proto3" var ( file_receptor_v1_receptor_proto_rawDescOnce sync.Once - file_receptor_v1_receptor_proto_rawDescData = file_receptor_v1_receptor_proto_rawDesc + file_receptor_v1_receptor_proto_rawDescData []byte ) func file_receptor_v1_receptor_proto_rawDescGZIP() []byte { file_receptor_v1_receptor_proto_rawDescOnce.Do(func() { - file_receptor_v1_receptor_proto_rawDescData = protoimpl.X.CompressGZIP(file_receptor_v1_receptor_proto_rawDescData) + file_receptor_v1_receptor_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_receptor_v1_receptor_proto_rawDesc), len(file_receptor_v1_receptor_proto_rawDesc))) }) return file_receptor_v1_receptor_proto_rawDescData } var file_receptor_v1_receptor_proto_enumTypes = make([]protoimpl.EnumInfo, 1) var file_receptor_v1_receptor_proto_msgTypes = make([]protoimpl.MessageInfo, 25) -var file_receptor_v1_receptor_proto_goTypes = []interface{}{ +var file_receptor_v1_receptor_proto_goTypes = []any{ (EvidenceObjectType)(0), // 0: receptor_v1.EvidenceObjectType (*Finding)(nil), // 1: receptor_v1.Finding (*Evidence)(nil), // 2: receptor_v1.Evidence @@ -2171,254 +2000,12 @@ func file_receptor_v1_receptor_proto_init() { if File_receptor_v1_receptor_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_receptor_v1_receptor_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Finding); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Evidence); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Source); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Sources); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Document); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Documents); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Struct); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Row); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Value); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StringList); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StructList); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StructStruct); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ServiceEntities); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ServiceEntity); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Credential); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReceptorOID); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReceptorConfiguration); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*JobResult); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReportChunk); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_receptor_v1_receptor_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReportResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_receptor_v1_receptor_proto_msgTypes[1].OneofWrappers = []interface{}{ + file_receptor_v1_receptor_proto_msgTypes[1].OneofWrappers = []any{ (*Evidence_Doc)(nil), (*Evidence_Struct)(nil), (*Evidence_Docs)(nil), } - file_receptor_v1_receptor_proto_msgTypes[8].OneofWrappers = []interface{}{ + file_receptor_v1_receptor_proto_msgTypes[8].OneofWrappers = []any{ (*Value_DoubleValue)(nil), (*Value_FloatValue)(nil), (*Value_Int32Value)(nil), @@ -2435,7 +2022,7 @@ func file_receptor_v1_receptor_proto_init() { out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_receptor_v1_receptor_proto_rawDesc, + RawDescriptor: unsafe.Slice(unsafe.StringData(file_receptor_v1_receptor_proto_rawDesc), len(file_receptor_v1_receptor_proto_rawDesc)), NumEnums: 1, NumMessages: 25, NumExtensions: 0, @@ -2447,7 +2034,6 @@ func file_receptor_v1_receptor_proto_init() { MessageInfos: file_receptor_v1_receptor_proto_msgTypes, }.Build() File_receptor_v1_receptor_proto = out.File - file_receptor_v1_receptor_proto_rawDesc = nil file_receptor_v1_receptor_proto_goTypes = nil file_receptor_v1_receptor_proto_depIdxs = nil }