...

Source file src/google.golang.org/genproto/googleapis/grafeas/v1/vulnerability.pb.go

Documentation: google.golang.org/genproto/googleapis/grafeas/v1

     1  // Copyright 2019 The Grafeas Authors. All rights reserved.
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //    http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.26.0
    18  // 	protoc        v4.24.4
    19  // source: grafeas/v1/vulnerability.proto
    20  
    21  package grafeas
    22  
    23  import (
    24  	reflect "reflect"
    25  	sync "sync"
    26  
    27  	_ "google.golang.org/genproto/googleapis/api/annotations"
    28  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    29  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    30  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    31  )
    32  
    33  const (
    34  	// Verify that this generated code is sufficiently up-to-date.
    35  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    36  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    37  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    38  )
    39  
    40  // A security vulnerability that can be found in resources.
    41  type VulnerabilityNote struct {
    42  	state         protoimpl.MessageState
    43  	sizeCache     protoimpl.SizeCache
    44  	unknownFields protoimpl.UnknownFields
    45  
    46  	// The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10
    47  	// where 0 indicates low severity and 10 indicates high severity.
    48  	CvssScore float32 `protobuf:"fixed32,1,opt,name=cvss_score,json=cvssScore,proto3" json:"cvss_score,omitempty"`
    49  	// The note provider assigned severity of this vulnerability.
    50  	Severity Severity `protobuf:"varint,2,opt,name=severity,proto3,enum=grafeas.v1.Severity" json:"severity,omitempty"`
    51  	// Details of all known distros and packages affected by this vulnerability.
    52  	Details []*VulnerabilityNote_Detail `protobuf:"bytes,3,rep,name=details,proto3" json:"details,omitempty"`
    53  	// The full description of the CVSSv3 for this vulnerability.
    54  	CvssV3 *CVSSv3 `protobuf:"bytes,4,opt,name=cvss_v3,json=cvssV3,proto3" json:"cvss_v3,omitempty"`
    55  	// Windows details get their own format because the information format and
    56  	// model don't match a normal detail. Specifically Windows updates are done as
    57  	// patches, thus Windows vulnerabilities really are a missing package, rather
    58  	// than a package being at an incorrect version.
    59  	WindowsDetails []*VulnerabilityNote_WindowsDetail `protobuf:"bytes,5,rep,name=windows_details,json=windowsDetails,proto3" json:"windows_details,omitempty"`
    60  	// The time this information was last changed at the source. This is an
    61  	// upstream timestamp from the underlying information source - e.g. Ubuntu
    62  	// security tracker.
    63  	SourceUpdateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=source_update_time,json=sourceUpdateTime,proto3" json:"source_update_time,omitempty"`
    64  	// CVSS version used to populate cvss_score and severity.
    65  	CvssVersion CVSSVersion `protobuf:"varint,7,opt,name=cvss_version,json=cvssVersion,proto3,enum=grafeas.v1.CVSSVersion" json:"cvss_version,omitempty"`
    66  	// The full description of the v2 CVSS for this vulnerability.
    67  	CvssV2 *CVSS `protobuf:"bytes,8,opt,name=cvss_v2,json=cvssV2,proto3" json:"cvss_v2,omitempty"`
    68  }
    69  
    70  func (x *VulnerabilityNote) Reset() {
    71  	*x = VulnerabilityNote{}
    72  	if protoimpl.UnsafeEnabled {
    73  		mi := &file_grafeas_v1_vulnerability_proto_msgTypes[0]
    74  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    75  		ms.StoreMessageInfo(mi)
    76  	}
    77  }
    78  
    79  func (x *VulnerabilityNote) String() string {
    80  	return protoimpl.X.MessageStringOf(x)
    81  }
    82  
    83  func (*VulnerabilityNote) ProtoMessage() {}
    84  
    85  func (x *VulnerabilityNote) ProtoReflect() protoreflect.Message {
    86  	mi := &file_grafeas_v1_vulnerability_proto_msgTypes[0]
    87  	if protoimpl.UnsafeEnabled && x != nil {
    88  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    89  		if ms.LoadMessageInfo() == nil {
    90  			ms.StoreMessageInfo(mi)
    91  		}
    92  		return ms
    93  	}
    94  	return mi.MessageOf(x)
    95  }
    96  
    97  // Deprecated: Use VulnerabilityNote.ProtoReflect.Descriptor instead.
    98  func (*VulnerabilityNote) Descriptor() ([]byte, []int) {
    99  	return file_grafeas_v1_vulnerability_proto_rawDescGZIP(), []int{0}
   100  }
   101  
   102  func (x *VulnerabilityNote) GetCvssScore() float32 {
   103  	if x != nil {
   104  		return x.CvssScore
   105  	}
   106  	return 0
   107  }
   108  
   109  func (x *VulnerabilityNote) GetSeverity() Severity {
   110  	if x != nil {
   111  		return x.Severity
   112  	}
   113  	return Severity_SEVERITY_UNSPECIFIED
   114  }
   115  
   116  func (x *VulnerabilityNote) GetDetails() []*VulnerabilityNote_Detail {
   117  	if x != nil {
   118  		return x.Details
   119  	}
   120  	return nil
   121  }
   122  
   123  func (x *VulnerabilityNote) GetCvssV3() *CVSSv3 {
   124  	if x != nil {
   125  		return x.CvssV3
   126  	}
   127  	return nil
   128  }
   129  
   130  func (x *VulnerabilityNote) GetWindowsDetails() []*VulnerabilityNote_WindowsDetail {
   131  	if x != nil {
   132  		return x.WindowsDetails
   133  	}
   134  	return nil
   135  }
   136  
   137  func (x *VulnerabilityNote) GetSourceUpdateTime() *timestamppb.Timestamp {
   138  	if x != nil {
   139  		return x.SourceUpdateTime
   140  	}
   141  	return nil
   142  }
   143  
   144  func (x *VulnerabilityNote) GetCvssVersion() CVSSVersion {
   145  	if x != nil {
   146  		return x.CvssVersion
   147  	}
   148  	return CVSSVersion_CVSS_VERSION_UNSPECIFIED
   149  }
   150  
   151  func (x *VulnerabilityNote) GetCvssV2() *CVSS {
   152  	if x != nil {
   153  		return x.CvssV2
   154  	}
   155  	return nil
   156  }
   157  
   158  // An occurrence of a severity vulnerability on a resource.
   159  type VulnerabilityOccurrence struct {
   160  	state         protoimpl.MessageState
   161  	sizeCache     protoimpl.SizeCache
   162  	unknownFields protoimpl.UnknownFields
   163  
   164  	// The type of package; whether native or non native (e.g., ruby gems, node.js
   165  	// packages, etc.).
   166  	Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
   167  	// Output only. The note provider assigned severity of this vulnerability.
   168  	Severity Severity `protobuf:"varint,2,opt,name=severity,proto3,enum=grafeas.v1.Severity" json:"severity,omitempty"`
   169  	// Output only. The CVSS score of this vulnerability. CVSS score is on a
   170  	// scale of 0 - 10 where 0 indicates low severity and 10 indicates high
   171  	// severity.
   172  	CvssScore float32 `protobuf:"fixed32,3,opt,name=cvss_score,json=cvssScore,proto3" json:"cvss_score,omitempty"`
   173  	// The cvss v3 score for the vulnerability.
   174  	Cvssv3 *CVSS `protobuf:"bytes,10,opt,name=cvssv3,proto3" json:"cvssv3,omitempty"`
   175  	// Required. The set of affected locations and their fixes (if available)
   176  	// within the associated resource.
   177  	PackageIssue []*VulnerabilityOccurrence_PackageIssue `protobuf:"bytes,4,rep,name=package_issue,json=packageIssue,proto3" json:"package_issue,omitempty"`
   178  	// Output only. A one sentence description of this vulnerability.
   179  	ShortDescription string `protobuf:"bytes,5,opt,name=short_description,json=shortDescription,proto3" json:"short_description,omitempty"`
   180  	// Output only. A detailed description of this vulnerability.
   181  	LongDescription string `protobuf:"bytes,6,opt,name=long_description,json=longDescription,proto3" json:"long_description,omitempty"`
   182  	// Output only. URLs related to this vulnerability.
   183  	RelatedUrls []*RelatedUrl `protobuf:"bytes,7,rep,name=related_urls,json=relatedUrls,proto3" json:"related_urls,omitempty"`
   184  	// The distro assigned severity for this vulnerability when it is available,
   185  	// otherwise this is the note provider assigned severity.
   186  	//
   187  	// When there are multiple PackageIssues for this vulnerability, they can have
   188  	// different effective severities because some might be provided by the distro
   189  	// while others are provided by the language ecosystem for a language pack.
   190  	// For this reason, it is advised to use the effective severity on the
   191  	// PackageIssue level. In the case where multiple PackageIssues have differing
   192  	// effective severities, this field should be the highest severity for any of
   193  	// the PackageIssues.
   194  	EffectiveSeverity Severity `protobuf:"varint,8,opt,name=effective_severity,json=effectiveSeverity,proto3,enum=grafeas.v1.Severity" json:"effective_severity,omitempty"`
   195  	// Output only. Whether at least one of the affected packages has a fix
   196  	// available.
   197  	FixAvailable bool `protobuf:"varint,9,opt,name=fix_available,json=fixAvailable,proto3" json:"fix_available,omitempty"`
   198  	// Output only. CVSS version used to populate cvss_score and severity.
   199  	CvssVersion CVSSVersion `protobuf:"varint,11,opt,name=cvss_version,json=cvssVersion,proto3,enum=grafeas.v1.CVSSVersion" json:"cvss_version,omitempty"`
   200  	// The cvss v2 score for the vulnerability.
   201  	CvssV2        *CVSS                                  `protobuf:"bytes,12,opt,name=cvss_v2,json=cvssV2,proto3" json:"cvss_v2,omitempty"`
   202  	VexAssessment *VulnerabilityOccurrence_VexAssessment `protobuf:"bytes,13,opt,name=vex_assessment,json=vexAssessment,proto3" json:"vex_assessment,omitempty"`
   203  	// Occurrence-specific extra details about the vulnerability.
   204  	ExtraDetails string `protobuf:"bytes,14,opt,name=extra_details,json=extraDetails,proto3" json:"extra_details,omitempty"`
   205  }
   206  
   207  func (x *VulnerabilityOccurrence) Reset() {
   208  	*x = VulnerabilityOccurrence{}
   209  	if protoimpl.UnsafeEnabled {
   210  		mi := &file_grafeas_v1_vulnerability_proto_msgTypes[1]
   211  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   212  		ms.StoreMessageInfo(mi)
   213  	}
   214  }
   215  
   216  func (x *VulnerabilityOccurrence) String() string {
   217  	return protoimpl.X.MessageStringOf(x)
   218  }
   219  
   220  func (*VulnerabilityOccurrence) ProtoMessage() {}
   221  
   222  func (x *VulnerabilityOccurrence) ProtoReflect() protoreflect.Message {
   223  	mi := &file_grafeas_v1_vulnerability_proto_msgTypes[1]
   224  	if protoimpl.UnsafeEnabled && x != nil {
   225  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   226  		if ms.LoadMessageInfo() == nil {
   227  			ms.StoreMessageInfo(mi)
   228  		}
   229  		return ms
   230  	}
   231  	return mi.MessageOf(x)
   232  }
   233  
   234  // Deprecated: Use VulnerabilityOccurrence.ProtoReflect.Descriptor instead.
   235  func (*VulnerabilityOccurrence) Descriptor() ([]byte, []int) {
   236  	return file_grafeas_v1_vulnerability_proto_rawDescGZIP(), []int{1}
   237  }
   238  
   239  func (x *VulnerabilityOccurrence) GetType() string {
   240  	if x != nil {
   241  		return x.Type
   242  	}
   243  	return ""
   244  }
   245  
   246  func (x *VulnerabilityOccurrence) GetSeverity() Severity {
   247  	if x != nil {
   248  		return x.Severity
   249  	}
   250  	return Severity_SEVERITY_UNSPECIFIED
   251  }
   252  
   253  func (x *VulnerabilityOccurrence) GetCvssScore() float32 {
   254  	if x != nil {
   255  		return x.CvssScore
   256  	}
   257  	return 0
   258  }
   259  
   260  func (x *VulnerabilityOccurrence) GetCvssv3() *CVSS {
   261  	if x != nil {
   262  		return x.Cvssv3
   263  	}
   264  	return nil
   265  }
   266  
   267  func (x *VulnerabilityOccurrence) GetPackageIssue() []*VulnerabilityOccurrence_PackageIssue {
   268  	if x != nil {
   269  		return x.PackageIssue
   270  	}
   271  	return nil
   272  }
   273  
   274  func (x *VulnerabilityOccurrence) GetShortDescription() string {
   275  	if x != nil {
   276  		return x.ShortDescription
   277  	}
   278  	return ""
   279  }
   280  
   281  func (x *VulnerabilityOccurrence) GetLongDescription() string {
   282  	if x != nil {
   283  		return x.LongDescription
   284  	}
   285  	return ""
   286  }
   287  
   288  func (x *VulnerabilityOccurrence) GetRelatedUrls() []*RelatedUrl {
   289  	if x != nil {
   290  		return x.RelatedUrls
   291  	}
   292  	return nil
   293  }
   294  
   295  func (x *VulnerabilityOccurrence) GetEffectiveSeverity() Severity {
   296  	if x != nil {
   297  		return x.EffectiveSeverity
   298  	}
   299  	return Severity_SEVERITY_UNSPECIFIED
   300  }
   301  
   302  func (x *VulnerabilityOccurrence) GetFixAvailable() bool {
   303  	if x != nil {
   304  		return x.FixAvailable
   305  	}
   306  	return false
   307  }
   308  
   309  func (x *VulnerabilityOccurrence) GetCvssVersion() CVSSVersion {
   310  	if x != nil {
   311  		return x.CvssVersion
   312  	}
   313  	return CVSSVersion_CVSS_VERSION_UNSPECIFIED
   314  }
   315  
   316  func (x *VulnerabilityOccurrence) GetCvssV2() *CVSS {
   317  	if x != nil {
   318  		return x.CvssV2
   319  	}
   320  	return nil
   321  }
   322  
   323  func (x *VulnerabilityOccurrence) GetVexAssessment() *VulnerabilityOccurrence_VexAssessment {
   324  	if x != nil {
   325  		return x.VexAssessment
   326  	}
   327  	return nil
   328  }
   329  
   330  func (x *VulnerabilityOccurrence) GetExtraDetails() string {
   331  	if x != nil {
   332  		return x.ExtraDetails
   333  	}
   334  	return ""
   335  }
   336  
   337  // A detail for a distro and package affected by this vulnerability and its
   338  // associated fix (if one is available).
   339  type VulnerabilityNote_Detail struct {
   340  	state         protoimpl.MessageState
   341  	sizeCache     protoimpl.SizeCache
   342  	unknownFields protoimpl.UnknownFields
   343  
   344  	// The distro assigned severity of this vulnerability.
   345  	SeverityName string `protobuf:"bytes,1,opt,name=severity_name,json=severityName,proto3" json:"severity_name,omitempty"`
   346  	// A vendor-specific description of this vulnerability.
   347  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   348  	// The type of package; whether native or non native (e.g., ruby gems,
   349  	// node.js packages, etc.).
   350  	PackageType string `protobuf:"bytes,3,opt,name=package_type,json=packageType,proto3" json:"package_type,omitempty"`
   351  	// Required. The [CPE URI](https://cpe.mitre.org/specification/) this
   352  	// vulnerability affects.
   353  	AffectedCpeUri string `protobuf:"bytes,4,opt,name=affected_cpe_uri,json=affectedCpeUri,proto3" json:"affected_cpe_uri,omitempty"`
   354  	// Required. The package this vulnerability affects.
   355  	AffectedPackage string `protobuf:"bytes,5,opt,name=affected_package,json=affectedPackage,proto3" json:"affected_package,omitempty"`
   356  	// The version number at the start of an interval in which this
   357  	// vulnerability exists. A vulnerability can affect a package between
   358  	// version numbers that are disjoint sets of intervals (example:
   359  	// [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
   360  	// represented in its own Detail. If a specific affected version is provided
   361  	// by a vulnerability database, affected_version_start and
   362  	// affected_version_end will be the same in that Detail.
   363  	AffectedVersionStart *Version `protobuf:"bytes,6,opt,name=affected_version_start,json=affectedVersionStart,proto3" json:"affected_version_start,omitempty"`
   364  	// The version number at the end of an interval in which this vulnerability
   365  	// exists. A vulnerability can affect a package between version numbers
   366  	// that are disjoint sets of intervals (example: [1.0.0-1.1.0],
   367  	// [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
   368  	// own Detail. If a specific affected version is provided by a vulnerability
   369  	// database, affected_version_start and affected_version_end will be the
   370  	// same in that Detail.
   371  	AffectedVersionEnd *Version `protobuf:"bytes,7,opt,name=affected_version_end,json=affectedVersionEnd,proto3" json:"affected_version_end,omitempty"`
   372  	// The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
   373  	// to update to that contains a fix for this vulnerability. It is possible
   374  	// for this to be different from the affected_cpe_uri.
   375  	FixedCpeUri string `protobuf:"bytes,8,opt,name=fixed_cpe_uri,json=fixedCpeUri,proto3" json:"fixed_cpe_uri,omitempty"`
   376  	// The distro recommended package to update to that contains a fix for this
   377  	// vulnerability. It is possible for this to be different from the
   378  	// affected_package.
   379  	FixedPackage string `protobuf:"bytes,9,opt,name=fixed_package,json=fixedPackage,proto3" json:"fixed_package,omitempty"`
   380  	// The distro recommended version to update to that contains a
   381  	// fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
   382  	// such version is yet available.
   383  	FixedVersion *Version `protobuf:"bytes,10,opt,name=fixed_version,json=fixedVersion,proto3" json:"fixed_version,omitempty"`
   384  	// Whether this detail is obsolete. Occurrences are expected not to point to
   385  	// obsolete details.
   386  	IsObsolete bool `protobuf:"varint,11,opt,name=is_obsolete,json=isObsolete,proto3" json:"is_obsolete,omitempty"`
   387  	// The time this information was last changed at the source. This is an
   388  	// upstream timestamp from the underlying information source - e.g. Ubuntu
   389  	// security tracker.
   390  	SourceUpdateTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=source_update_time,json=sourceUpdateTime,proto3" json:"source_update_time,omitempty"`
   391  	// The source from which the information in this Detail was obtained.
   392  	Source string `protobuf:"bytes,13,opt,name=source,proto3" json:"source,omitempty"`
   393  	// The name of the vendor of the product.
   394  	Vendor string `protobuf:"bytes,14,opt,name=vendor,proto3" json:"vendor,omitempty"`
   395  }
   396  
   397  func (x *VulnerabilityNote_Detail) Reset() {
   398  	*x = VulnerabilityNote_Detail{}
   399  	if protoimpl.UnsafeEnabled {
   400  		mi := &file_grafeas_v1_vulnerability_proto_msgTypes[2]
   401  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   402  		ms.StoreMessageInfo(mi)
   403  	}
   404  }
   405  
   406  func (x *VulnerabilityNote_Detail) String() string {
   407  	return protoimpl.X.MessageStringOf(x)
   408  }
   409  
   410  func (*VulnerabilityNote_Detail) ProtoMessage() {}
   411  
   412  func (x *VulnerabilityNote_Detail) ProtoReflect() protoreflect.Message {
   413  	mi := &file_grafeas_v1_vulnerability_proto_msgTypes[2]
   414  	if protoimpl.UnsafeEnabled && x != nil {
   415  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   416  		if ms.LoadMessageInfo() == nil {
   417  			ms.StoreMessageInfo(mi)
   418  		}
   419  		return ms
   420  	}
   421  	return mi.MessageOf(x)
   422  }
   423  
   424  // Deprecated: Use VulnerabilityNote_Detail.ProtoReflect.Descriptor instead.
   425  func (*VulnerabilityNote_Detail) Descriptor() ([]byte, []int) {
   426  	return file_grafeas_v1_vulnerability_proto_rawDescGZIP(), []int{0, 0}
   427  }
   428  
   429  func (x *VulnerabilityNote_Detail) GetSeverityName() string {
   430  	if x != nil {
   431  		return x.SeverityName
   432  	}
   433  	return ""
   434  }
   435  
   436  func (x *VulnerabilityNote_Detail) GetDescription() string {
   437  	if x != nil {
   438  		return x.Description
   439  	}
   440  	return ""
   441  }
   442  
   443  func (x *VulnerabilityNote_Detail) GetPackageType() string {
   444  	if x != nil {
   445  		return x.PackageType
   446  	}
   447  	return ""
   448  }
   449  
   450  func (x *VulnerabilityNote_Detail) GetAffectedCpeUri() string {
   451  	if x != nil {
   452  		return x.AffectedCpeUri
   453  	}
   454  	return ""
   455  }
   456  
   457  func (x *VulnerabilityNote_Detail) GetAffectedPackage() string {
   458  	if x != nil {
   459  		return x.AffectedPackage
   460  	}
   461  	return ""
   462  }
   463  
   464  func (x *VulnerabilityNote_Detail) GetAffectedVersionStart() *Version {
   465  	if x != nil {
   466  		return x.AffectedVersionStart
   467  	}
   468  	return nil
   469  }
   470  
   471  func (x *VulnerabilityNote_Detail) GetAffectedVersionEnd() *Version {
   472  	if x != nil {
   473  		return x.AffectedVersionEnd
   474  	}
   475  	return nil
   476  }
   477  
   478  func (x *VulnerabilityNote_Detail) GetFixedCpeUri() string {
   479  	if x != nil {
   480  		return x.FixedCpeUri
   481  	}
   482  	return ""
   483  }
   484  
   485  func (x *VulnerabilityNote_Detail) GetFixedPackage() string {
   486  	if x != nil {
   487  		return x.FixedPackage
   488  	}
   489  	return ""
   490  }
   491  
   492  func (x *VulnerabilityNote_Detail) GetFixedVersion() *Version {
   493  	if x != nil {
   494  		return x.FixedVersion
   495  	}
   496  	return nil
   497  }
   498  
   499  func (x *VulnerabilityNote_Detail) GetIsObsolete() bool {
   500  	if x != nil {
   501  		return x.IsObsolete
   502  	}
   503  	return false
   504  }
   505  
   506  func (x *VulnerabilityNote_Detail) GetSourceUpdateTime() *timestamppb.Timestamp {
   507  	if x != nil {
   508  		return x.SourceUpdateTime
   509  	}
   510  	return nil
   511  }
   512  
   513  func (x *VulnerabilityNote_Detail) GetSource() string {
   514  	if x != nil {
   515  		return x.Source
   516  	}
   517  	return ""
   518  }
   519  
   520  func (x *VulnerabilityNote_Detail) GetVendor() string {
   521  	if x != nil {
   522  		return x.Vendor
   523  	}
   524  	return ""
   525  }
   526  
   527  type VulnerabilityNote_WindowsDetail struct {
   528  	state         protoimpl.MessageState
   529  	sizeCache     protoimpl.SizeCache
   530  	unknownFields protoimpl.UnknownFields
   531  
   532  	// Required. The [CPE URI](https://cpe.mitre.org/specification/) this
   533  	// vulnerability affects.
   534  	CpeUri string `protobuf:"bytes,1,opt,name=cpe_uri,json=cpeUri,proto3" json:"cpe_uri,omitempty"`
   535  	// Required. The name of this vulnerability.
   536  	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
   537  	// The description of this vulnerability.
   538  	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
   539  	// Required. The names of the KBs which have hotfixes to mitigate this
   540  	// vulnerability. Note that there may be multiple hotfixes (and thus
   541  	// multiple KBs) that mitigate a given vulnerability. Currently any listed
   542  	// KBs presence is considered a fix.
   543  	FixingKbs []*VulnerabilityNote_WindowsDetail_KnowledgeBase `protobuf:"bytes,4,rep,name=fixing_kbs,json=fixingKbs,proto3" json:"fixing_kbs,omitempty"`
   544  }
   545  
   546  func (x *VulnerabilityNote_WindowsDetail) Reset() {
   547  	*x = VulnerabilityNote_WindowsDetail{}
   548  	if protoimpl.UnsafeEnabled {
   549  		mi := &file_grafeas_v1_vulnerability_proto_msgTypes[3]
   550  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   551  		ms.StoreMessageInfo(mi)
   552  	}
   553  }
   554  
   555  func (x *VulnerabilityNote_WindowsDetail) String() string {
   556  	return protoimpl.X.MessageStringOf(x)
   557  }
   558  
   559  func (*VulnerabilityNote_WindowsDetail) ProtoMessage() {}
   560  
   561  func (x *VulnerabilityNote_WindowsDetail) ProtoReflect() protoreflect.Message {
   562  	mi := &file_grafeas_v1_vulnerability_proto_msgTypes[3]
   563  	if protoimpl.UnsafeEnabled && x != nil {
   564  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   565  		if ms.LoadMessageInfo() == nil {
   566  			ms.StoreMessageInfo(mi)
   567  		}
   568  		return ms
   569  	}
   570  	return mi.MessageOf(x)
   571  }
   572  
   573  // Deprecated: Use VulnerabilityNote_WindowsDetail.ProtoReflect.Descriptor instead.
   574  func (*VulnerabilityNote_WindowsDetail) Descriptor() ([]byte, []int) {
   575  	return file_grafeas_v1_vulnerability_proto_rawDescGZIP(), []int{0, 1}
   576  }
   577  
   578  func (x *VulnerabilityNote_WindowsDetail) GetCpeUri() string {
   579  	if x != nil {
   580  		return x.CpeUri
   581  	}
   582  	return ""
   583  }
   584  
   585  func (x *VulnerabilityNote_WindowsDetail) GetName() string {
   586  	if x != nil {
   587  		return x.Name
   588  	}
   589  	return ""
   590  }
   591  
   592  func (x *VulnerabilityNote_WindowsDetail) GetDescription() string {
   593  	if x != nil {
   594  		return x.Description
   595  	}
   596  	return ""
   597  }
   598  
   599  func (x *VulnerabilityNote_WindowsDetail) GetFixingKbs() []*VulnerabilityNote_WindowsDetail_KnowledgeBase {
   600  	if x != nil {
   601  		return x.FixingKbs
   602  	}
   603  	return nil
   604  }
   605  
   606  type VulnerabilityNote_WindowsDetail_KnowledgeBase struct {
   607  	state         protoimpl.MessageState
   608  	sizeCache     protoimpl.SizeCache
   609  	unknownFields protoimpl.UnknownFields
   610  
   611  	// The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
   612  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   613  	// A link to the KB in the [Windows update catalog]
   614  	// (https://www.catalog.update.microsoft.com/).
   615  	Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
   616  }
   617  
   618  func (x *VulnerabilityNote_WindowsDetail_KnowledgeBase) Reset() {
   619  	*x = VulnerabilityNote_WindowsDetail_KnowledgeBase{}
   620  	if protoimpl.UnsafeEnabled {
   621  		mi := &file_grafeas_v1_vulnerability_proto_msgTypes[4]
   622  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   623  		ms.StoreMessageInfo(mi)
   624  	}
   625  }
   626  
   627  func (x *VulnerabilityNote_WindowsDetail_KnowledgeBase) String() string {
   628  	return protoimpl.X.MessageStringOf(x)
   629  }
   630  
   631  func (*VulnerabilityNote_WindowsDetail_KnowledgeBase) ProtoMessage() {}
   632  
   633  func (x *VulnerabilityNote_WindowsDetail_KnowledgeBase) ProtoReflect() protoreflect.Message {
   634  	mi := &file_grafeas_v1_vulnerability_proto_msgTypes[4]
   635  	if protoimpl.UnsafeEnabled && x != nil {
   636  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   637  		if ms.LoadMessageInfo() == nil {
   638  			ms.StoreMessageInfo(mi)
   639  		}
   640  		return ms
   641  	}
   642  	return mi.MessageOf(x)
   643  }
   644  
   645  // Deprecated: Use VulnerabilityNote_WindowsDetail_KnowledgeBase.ProtoReflect.Descriptor instead.
   646  func (*VulnerabilityNote_WindowsDetail_KnowledgeBase) Descriptor() ([]byte, []int) {
   647  	return file_grafeas_v1_vulnerability_proto_rawDescGZIP(), []int{0, 1, 0}
   648  }
   649  
   650  func (x *VulnerabilityNote_WindowsDetail_KnowledgeBase) GetName() string {
   651  	if x != nil {
   652  		return x.Name
   653  	}
   654  	return ""
   655  }
   656  
   657  func (x *VulnerabilityNote_WindowsDetail_KnowledgeBase) GetUrl() string {
   658  	if x != nil {
   659  		return x.Url
   660  	}
   661  	return ""
   662  }
   663  
   664  // A detail for a distro and package this vulnerability occurrence was found
   665  // in and its associated fix (if one is available).
   666  type VulnerabilityOccurrence_PackageIssue struct {
   667  	state         protoimpl.MessageState
   668  	sizeCache     protoimpl.SizeCache
   669  	unknownFields protoimpl.UnknownFields
   670  
   671  	// Required. The [CPE URI](https://cpe.mitre.org/specification/) this
   672  	// vulnerability was found in.
   673  	AffectedCpeUri string `protobuf:"bytes,1,opt,name=affected_cpe_uri,json=affectedCpeUri,proto3" json:"affected_cpe_uri,omitempty"`
   674  	// Required. The package this vulnerability was found in.
   675  	AffectedPackage string `protobuf:"bytes,2,opt,name=affected_package,json=affectedPackage,proto3" json:"affected_package,omitempty"`
   676  	// Required. The version of the package that is installed on the resource
   677  	// affected by this vulnerability.
   678  	AffectedVersion *Version `protobuf:"bytes,3,opt,name=affected_version,json=affectedVersion,proto3" json:"affected_version,omitempty"`
   679  	// The [CPE URI](https://cpe.mitre.org/specification/) this vulnerability
   680  	// was fixed in. It is possible for this to be different from the
   681  	// affected_cpe_uri.
   682  	FixedCpeUri string `protobuf:"bytes,4,opt,name=fixed_cpe_uri,json=fixedCpeUri,proto3" json:"fixed_cpe_uri,omitempty"`
   683  	// The package this vulnerability was fixed in. It is possible for this to
   684  	// be different from the affected_package.
   685  	FixedPackage string `protobuf:"bytes,5,opt,name=fixed_package,json=fixedPackage,proto3" json:"fixed_package,omitempty"`
   686  	// Required. The version of the package this vulnerability was fixed in.
   687  	// Setting this to VersionKind.MAXIMUM means no fix is yet available.
   688  	FixedVersion *Version `protobuf:"bytes,6,opt,name=fixed_version,json=fixedVersion,proto3" json:"fixed_version,omitempty"`
   689  	// Output only. Whether a fix is available for this package.
   690  	FixAvailable bool `protobuf:"varint,7,opt,name=fix_available,json=fixAvailable,proto3" json:"fix_available,omitempty"`
   691  	// The type of package (e.g. OS, MAVEN, GO).
   692  	PackageType string `protobuf:"bytes,8,opt,name=package_type,json=packageType,proto3" json:"package_type,omitempty"`
   693  	// The distro or language system assigned severity for this vulnerability
   694  	// when that is available and note provider assigned severity when it is not
   695  	// available.
   696  	EffectiveSeverity Severity `protobuf:"varint,9,opt,name=effective_severity,json=effectiveSeverity,proto3,enum=grafeas.v1.Severity" json:"effective_severity,omitempty"`
   697  	// The location at which this package was found.
   698  	FileLocation []*FileLocation `protobuf:"bytes,10,rep,name=file_location,json=fileLocation,proto3" json:"file_location,omitempty"`
   699  }
   700  
   701  func (x *VulnerabilityOccurrence_PackageIssue) Reset() {
   702  	*x = VulnerabilityOccurrence_PackageIssue{}
   703  	if protoimpl.UnsafeEnabled {
   704  		mi := &file_grafeas_v1_vulnerability_proto_msgTypes[5]
   705  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   706  		ms.StoreMessageInfo(mi)
   707  	}
   708  }
   709  
   710  func (x *VulnerabilityOccurrence_PackageIssue) String() string {
   711  	return protoimpl.X.MessageStringOf(x)
   712  }
   713  
   714  func (*VulnerabilityOccurrence_PackageIssue) ProtoMessage() {}
   715  
   716  func (x *VulnerabilityOccurrence_PackageIssue) ProtoReflect() protoreflect.Message {
   717  	mi := &file_grafeas_v1_vulnerability_proto_msgTypes[5]
   718  	if protoimpl.UnsafeEnabled && x != nil {
   719  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   720  		if ms.LoadMessageInfo() == nil {
   721  			ms.StoreMessageInfo(mi)
   722  		}
   723  		return ms
   724  	}
   725  	return mi.MessageOf(x)
   726  }
   727  
   728  // Deprecated: Use VulnerabilityOccurrence_PackageIssue.ProtoReflect.Descriptor instead.
   729  func (*VulnerabilityOccurrence_PackageIssue) Descriptor() ([]byte, []int) {
   730  	return file_grafeas_v1_vulnerability_proto_rawDescGZIP(), []int{1, 0}
   731  }
   732  
   733  func (x *VulnerabilityOccurrence_PackageIssue) GetAffectedCpeUri() string {
   734  	if x != nil {
   735  		return x.AffectedCpeUri
   736  	}
   737  	return ""
   738  }
   739  
   740  func (x *VulnerabilityOccurrence_PackageIssue) GetAffectedPackage() string {
   741  	if x != nil {
   742  		return x.AffectedPackage
   743  	}
   744  	return ""
   745  }
   746  
   747  func (x *VulnerabilityOccurrence_PackageIssue) GetAffectedVersion() *Version {
   748  	if x != nil {
   749  		return x.AffectedVersion
   750  	}
   751  	return nil
   752  }
   753  
   754  func (x *VulnerabilityOccurrence_PackageIssue) GetFixedCpeUri() string {
   755  	if x != nil {
   756  		return x.FixedCpeUri
   757  	}
   758  	return ""
   759  }
   760  
   761  func (x *VulnerabilityOccurrence_PackageIssue) GetFixedPackage() string {
   762  	if x != nil {
   763  		return x.FixedPackage
   764  	}
   765  	return ""
   766  }
   767  
   768  func (x *VulnerabilityOccurrence_PackageIssue) GetFixedVersion() *Version {
   769  	if x != nil {
   770  		return x.FixedVersion
   771  	}
   772  	return nil
   773  }
   774  
   775  func (x *VulnerabilityOccurrence_PackageIssue) GetFixAvailable() bool {
   776  	if x != nil {
   777  		return x.FixAvailable
   778  	}
   779  	return false
   780  }
   781  
   782  func (x *VulnerabilityOccurrence_PackageIssue) GetPackageType() string {
   783  	if x != nil {
   784  		return x.PackageType
   785  	}
   786  	return ""
   787  }
   788  
   789  func (x *VulnerabilityOccurrence_PackageIssue) GetEffectiveSeverity() Severity {
   790  	if x != nil {
   791  		return x.EffectiveSeverity
   792  	}
   793  	return Severity_SEVERITY_UNSPECIFIED
   794  }
   795  
   796  func (x *VulnerabilityOccurrence_PackageIssue) GetFileLocation() []*FileLocation {
   797  	if x != nil {
   798  		return x.FileLocation
   799  	}
   800  	return nil
   801  }
   802  
   803  // VexAssessment provides all publisher provided Vex information that is
   804  // related to this vulnerability.
   805  type VulnerabilityOccurrence_VexAssessment struct {
   806  	state         protoimpl.MessageState
   807  	sizeCache     protoimpl.SizeCache
   808  	unknownFields protoimpl.UnknownFields
   809  
   810  	// Holds the MITRE standard Common Vulnerabilities and Exposures (CVE)
   811  	// tracking number for the vulnerability.
   812  	// Deprecated: Use vulnerability_id instead to denote CVEs.
   813  	//
   814  	// Deprecated: Do not use.
   815  	Cve string `protobuf:"bytes,1,opt,name=cve,proto3" json:"cve,omitempty"`
   816  	// The vulnerability identifier for this Assessment. Will hold one of
   817  	// common identifiers e.g. CVE, GHSA etc.
   818  	VulnerabilityId string `protobuf:"bytes,8,opt,name=vulnerability_id,json=vulnerabilityId,proto3" json:"vulnerability_id,omitempty"`
   819  	// Holds a list of references associated with this vulnerability item and
   820  	// assessment.
   821  	RelatedUris []*RelatedUrl `protobuf:"bytes,2,rep,name=related_uris,json=relatedUris,proto3" json:"related_uris,omitempty"`
   822  	// The VulnerabilityAssessment note from which this VexAssessment was
   823  	// generated.
   824  	// This will be of the form: `projects/[PROJECT_ID]/notes/[NOTE_ID]`.
   825  	// (-- api-linter: core::0122::name-suffix=disabled
   826  	//
   827  	//	aip.dev/not-precedent: The suffix is kept for consistency. --)
   828  	NoteName string `protobuf:"bytes,3,opt,name=note_name,json=noteName,proto3" json:"note_name,omitempty"`
   829  	// Provides the state of this Vulnerability assessment.
   830  	State VulnerabilityAssessmentNote_Assessment_State `protobuf:"varint,4,opt,name=state,proto3,enum=grafeas.v1.VulnerabilityAssessmentNote_Assessment_State" json:"state,omitempty"`
   831  	// Contains information about the impact of this vulnerability,
   832  	// this will change with time.
   833  	Impacts []string `protobuf:"bytes,5,rep,name=impacts,proto3" json:"impacts,omitempty"`
   834  	// Specifies details on how to handle (and presumably, fix) a vulnerability.
   835  	Remediations []*VulnerabilityAssessmentNote_Assessment_Remediation `protobuf:"bytes,6,rep,name=remediations,proto3" json:"remediations,omitempty"`
   836  	// Justification provides the justification when the state of the
   837  	// assessment if NOT_AFFECTED.
   838  	Justification *VulnerabilityAssessmentNote_Assessment_Justification `protobuf:"bytes,7,opt,name=justification,proto3" json:"justification,omitempty"`
   839  }
   840  
   841  func (x *VulnerabilityOccurrence_VexAssessment) Reset() {
   842  	*x = VulnerabilityOccurrence_VexAssessment{}
   843  	if protoimpl.UnsafeEnabled {
   844  		mi := &file_grafeas_v1_vulnerability_proto_msgTypes[6]
   845  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   846  		ms.StoreMessageInfo(mi)
   847  	}
   848  }
   849  
   850  func (x *VulnerabilityOccurrence_VexAssessment) String() string {
   851  	return protoimpl.X.MessageStringOf(x)
   852  }
   853  
   854  func (*VulnerabilityOccurrence_VexAssessment) ProtoMessage() {}
   855  
   856  func (x *VulnerabilityOccurrence_VexAssessment) ProtoReflect() protoreflect.Message {
   857  	mi := &file_grafeas_v1_vulnerability_proto_msgTypes[6]
   858  	if protoimpl.UnsafeEnabled && x != nil {
   859  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   860  		if ms.LoadMessageInfo() == nil {
   861  			ms.StoreMessageInfo(mi)
   862  		}
   863  		return ms
   864  	}
   865  	return mi.MessageOf(x)
   866  }
   867  
   868  // Deprecated: Use VulnerabilityOccurrence_VexAssessment.ProtoReflect.Descriptor instead.
   869  func (*VulnerabilityOccurrence_VexAssessment) Descriptor() ([]byte, []int) {
   870  	return file_grafeas_v1_vulnerability_proto_rawDescGZIP(), []int{1, 1}
   871  }
   872  
   873  // Deprecated: Do not use.
   874  func (x *VulnerabilityOccurrence_VexAssessment) GetCve() string {
   875  	if x != nil {
   876  		return x.Cve
   877  	}
   878  	return ""
   879  }
   880  
   881  func (x *VulnerabilityOccurrence_VexAssessment) GetVulnerabilityId() string {
   882  	if x != nil {
   883  		return x.VulnerabilityId
   884  	}
   885  	return ""
   886  }
   887  
   888  func (x *VulnerabilityOccurrence_VexAssessment) GetRelatedUris() []*RelatedUrl {
   889  	if x != nil {
   890  		return x.RelatedUris
   891  	}
   892  	return nil
   893  }
   894  
   895  func (x *VulnerabilityOccurrence_VexAssessment) GetNoteName() string {
   896  	if x != nil {
   897  		return x.NoteName
   898  	}
   899  	return ""
   900  }
   901  
   902  func (x *VulnerabilityOccurrence_VexAssessment) GetState() VulnerabilityAssessmentNote_Assessment_State {
   903  	if x != nil {
   904  		return x.State
   905  	}
   906  	return VulnerabilityAssessmentNote_Assessment_STATE_UNSPECIFIED
   907  }
   908  
   909  func (x *VulnerabilityOccurrence_VexAssessment) GetImpacts() []string {
   910  	if x != nil {
   911  		return x.Impacts
   912  	}
   913  	return nil
   914  }
   915  
   916  func (x *VulnerabilityOccurrence_VexAssessment) GetRemediations() []*VulnerabilityAssessmentNote_Assessment_Remediation {
   917  	if x != nil {
   918  		return x.Remediations
   919  	}
   920  	return nil
   921  }
   922  
   923  func (x *VulnerabilityOccurrence_VexAssessment) GetJustification() *VulnerabilityAssessmentNote_Assessment_Justification {
   924  	if x != nil {
   925  		return x.Justification
   926  	}
   927  	return nil
   928  }
   929  
   930  var File_grafeas_v1_vulnerability_proto protoreflect.FileDescriptor
   931  
   932  var file_grafeas_v1_vulnerability_proto_rawDesc = []byte{
   933  	0x0a, 0x1e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x76, 0x75, 0x6c,
   934  	0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
   935  	0x12, 0x0a, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f,
   936  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62,
   937  	0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67,
   938  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74,
   939  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17,
   940  	0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
   941  	0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73,
   942  	0x2f, 0x76, 0x31, 0x2f, 0x63, 0x76, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18,
   943  	0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x61, 0x63, 0x6b, 0x61,
   944  	0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61,
   945  	0x73, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x2e, 0x70, 0x72,
   946  	0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2f, 0x76, 0x31, 0x2f,
   947  	0x76, 0x65, 0x78, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc4, 0x0a, 0x0a, 0x11, 0x56, 0x75,
   948  	0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x65, 0x12,
   949  	0x1d, 0x0a, 0x0a, 0x63, 0x76, 0x73, 0x73, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20,
   950  	0x01, 0x28, 0x02, 0x52, 0x09, 0x63, 0x76, 0x73, 0x73, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x30,
   951  	0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
   952  	0x32, 0x14, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65,
   953  	0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79,
   954  	0x12, 0x3e, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28,
   955  	0x0b, 0x32, 0x24, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56,
   956  	0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x65,
   957  	0x2e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
   958  	0x12, 0x2b, 0x0a, 0x07, 0x63, 0x76, 0x73, 0x73, 0x5f, 0x76, 0x33, 0x18, 0x04, 0x20, 0x01, 0x28,
   959  	0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43,
   960  	0x56, 0x53, 0x53, 0x76, 0x33, 0x52, 0x06, 0x63, 0x76, 0x73, 0x73, 0x56, 0x33, 0x12, 0x54, 0x0a,
   961  	0x0f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73,
   962  	0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73,
   963  	0x2e, 0x76, 0x31, 0x2e, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
   964  	0x79, 0x4e, 0x6f, 0x74, 0x65, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x44, 0x65, 0x74,
   965  	0x61, 0x69, 0x6c, 0x52, 0x0e, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x44, 0x65, 0x74, 0x61,
   966  	0x69, 0x6c, 0x73, 0x12, 0x48, 0x0a, 0x12, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x75, 0x70,
   967  	0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
   968  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
   969  	0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x10, 0x73, 0x6f, 0x75,
   970  	0x72, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a,
   971  	0x0c, 0x63, 0x76, 0x73, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20,
   972  	0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31,
   973  	0x2e, 0x43, 0x56, 0x53, 0x53, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x63, 0x76,
   974  	0x73, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x07, 0x63, 0x76, 0x73,
   975  	0x73, 0x5f, 0x76, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67, 0x72, 0x61,
   976  	0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x56, 0x53, 0x53, 0x52, 0x06, 0x63, 0x76,
   977  	0x73, 0x73, 0x56, 0x32, 0x1a, 0xf7, 0x04, 0x0a, 0x06, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12,
   978  	0x23, 0x0a, 0x0d, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
   979  	0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79,
   980  	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
   981  	0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
   982  	0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67,
   983  	0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61,
   984  	0x63, 0x6b, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x66, 0x66,
   985  	0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x70, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x04, 0x20,
   986  	0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x43, 0x70, 0x65,
   987  	0x55, 0x72, 0x69, 0x12, 0x29, 0x0a, 0x10, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f,
   988  	0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x61,
   989  	0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x49,
   990  	0x0a, 0x16, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
   991  	0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
   992  	0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73,
   993  	0x69, 0x6f, 0x6e, 0x52, 0x14, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x56, 0x65, 0x72,
   994  	0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x45, 0x0a, 0x14, 0x61, 0x66, 0x66,
   995  	0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e,
   996  	0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61,
   997  	0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x61, 0x66,
   998  	0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x64,
   999  	0x12, 0x22, 0x0a, 0x0d, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x63, 0x70, 0x65, 0x5f, 0x75, 0x72,
  1000  	0x69, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x69, 0x78, 0x65, 0x64, 0x43, 0x70,
  1001  	0x65, 0x55, 0x72, 0x69, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x70, 0x61,
  1002  	0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x69, 0x78,
  1003  	0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x38, 0x0a, 0x0d, 0x66, 0x69, 0x78,
  1004  	0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b,
  1005  	0x32, 0x13, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65,
  1006  	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x66, 0x69, 0x78, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73,
  1007  	0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x6f, 0x62, 0x73, 0x6f, 0x6c, 0x65,
  1008  	0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x4f, 0x62, 0x73, 0x6f,
  1009  	0x6c, 0x65, 0x74, 0x65, 0x12, 0x48, 0x0a, 0x12, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x75,
  1010  	0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b,
  1011  	0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  1012  	0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x10, 0x73, 0x6f,
  1013  	0x75, 0x72, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16,
  1014  	0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
  1015  	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72,
  1016  	0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x1a, 0xef,
  1017  	0x01, 0x0a, 0x0d, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
  1018  	0x12, 0x17, 0x0a, 0x07, 0x63, 0x70, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28,
  1019  	0x09, 0x52, 0x06, 0x63, 0x70, 0x65, 0x55, 0x72, 0x69, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
  1020  	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a,
  1021  	0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01,
  1022  	0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
  1023  	0x58, 0x0a, 0x0a, 0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x5f, 0x6b, 0x62, 0x73, 0x18, 0x04, 0x20,
  1024  	0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31,
  1025  	0x2e, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4e, 0x6f,
  1026  	0x74, 0x65, 0x2e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c,
  1027  	0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x09,
  1028  	0x66, 0x69, 0x78, 0x69, 0x6e, 0x67, 0x4b, 0x62, 0x73, 0x1a, 0x35, 0x0a, 0x0d, 0x4b, 0x6e, 0x6f,
  1029  	0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
  1030  	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10,
  1031  	0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c,
  1032  	0x22, 0xbd, 0x0d, 0x0a, 0x17, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69,
  1033  	0x74, 0x79, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04,
  1034  	0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65,
  1035  	0x12, 0x30, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01,
  1036  	0x28, 0x0e, 0x32, 0x14, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e,
  1037  	0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69,
  1038  	0x74, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x76, 0x73, 0x73, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65,
  1039  	0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x63, 0x76, 0x73, 0x73, 0x53, 0x63, 0x6f, 0x72,
  1040  	0x65, 0x12, 0x28, 0x0a, 0x06, 0x63, 0x76, 0x73, 0x73, 0x76, 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28,
  1041  	0x0b, 0x32, 0x10, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43,
  1042  	0x56, 0x53, 0x53, 0x52, 0x06, 0x63, 0x76, 0x73, 0x73, 0x76, 0x33, 0x12, 0x55, 0x0a, 0x0d, 0x70,
  1043  	0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x73, 0x73, 0x75, 0x65, 0x18, 0x04, 0x20, 0x03,
  1044  	0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e,
  1045  	0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x63, 0x63,
  1046  	0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x2e, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49,
  1047  	0x73, 0x73, 0x75, 0x65, 0x52, 0x0c, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x49, 0x73, 0x73,
  1048  	0x75, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x64, 0x65, 0x73, 0x63,
  1049  	0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73,
  1050  	0x68, 0x6f, 0x72, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
  1051  	0x29, 0x0a, 0x10, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
  1052  	0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6c, 0x6f, 0x6e, 0x67, 0x44,
  1053  	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x0a, 0x0c, 0x72, 0x65,
  1054  	0x6c, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x75, 0x72, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b,
  1055  	0x32, 0x16, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65,
  1056  	0x6c, 0x61, 0x74, 0x65, 0x64, 0x55, 0x72, 0x6c, 0x52, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65,
  1057  	0x64, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x43, 0x0a, 0x12, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69,
  1058  	0x76, 0x65, 0x5f, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28,
  1059  	0x0e, 0x32, 0x14, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x53,
  1060  	0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x11, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69,
  1061  	0x76, 0x65, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x69,
  1062  	0x78, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28,
  1063  	0x08, 0x52, 0x0c, 0x66, 0x69, 0x78, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x12,
  1064  	0x3a, 0x0a, 0x0c, 0x63, 0x76, 0x73, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
  1065  	0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e,
  1066  	0x76, 0x31, 0x2e, 0x43, 0x56, 0x53, 0x53, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0b,
  1067  	0x63, 0x76, 0x73, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x07, 0x63,
  1068  	0x76, 0x73, 0x73, 0x5f, 0x76, 0x32, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x67,
  1069  	0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x56, 0x53, 0x53, 0x52, 0x06,
  1070  	0x63, 0x76, 0x73, 0x73, 0x56, 0x32, 0x12, 0x58, 0x0a, 0x0e, 0x76, 0x65, 0x78, 0x5f, 0x61, 0x73,
  1071  	0x73, 0x65, 0x73, 0x73, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31,
  1072  	0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x75, 0x6c, 0x6e,
  1073  	0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x4f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65,
  1074  	0x6e, 0x63, 0x65, 0x2e, 0x56, 0x65, 0x78, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d, 0x65, 0x6e,
  1075  	0x74, 0x52, 0x0d, 0x76, 0x65, 0x78, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d, 0x65, 0x6e, 0x74,
  1076  	0x12, 0x23, 0x0a, 0x0d, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c,
  1077  	0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x65,
  1078  	0x74, 0x61, 0x69, 0x6c, 0x73, 0x1a, 0xf7, 0x03, 0x0a, 0x0c, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67,
  1079  	0x65, 0x49, 0x73, 0x73, 0x75, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74,
  1080  	0x65, 0x64, 0x5f, 0x63, 0x70, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
  1081  	0x52, 0x0e, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x43, 0x70, 0x65, 0x55, 0x72, 0x69,
  1082  	0x12, 0x29, 0x0a, 0x10, 0x61, 0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63,
  1083  	0x6b, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x61, 0x66, 0x66, 0x65,
  1084  	0x63, 0x74, 0x65, 0x64, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x3e, 0x0a, 0x10, 0x61,
  1085  	0x66, 0x66, 0x65, 0x63, 0x74, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
  1086  	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e,
  1087  	0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x61, 0x66, 0x66, 0x65,
  1088  	0x63, 0x74, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x22, 0x0a, 0x0d, 0x66,
  1089  	0x69, 0x78, 0x65, 0x64, 0x5f, 0x63, 0x70, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x04, 0x20, 0x01,
  1090  	0x28, 0x09, 0x52, 0x0b, 0x66, 0x69, 0x78, 0x65, 0x64, 0x43, 0x70, 0x65, 0x55, 0x72, 0x69, 0x12,
  1091  	0x23, 0x0a, 0x0d, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65,
  1092  	0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x69, 0x78, 0x65, 0x64, 0x50, 0x61, 0x63,
  1093  	0x6b, 0x61, 0x67, 0x65, 0x12, 0x38, 0x0a, 0x0d, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x76, 0x65,
  1094  	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67, 0x72,
  1095  	0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
  1096  	0x52, 0x0c, 0x66, 0x69, 0x78, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23,
  1097  	0x0a, 0x0d, 0x66, 0x69, 0x78, 0x5f, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x18,
  1098  	0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x69, 0x78, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61,
  1099  	0x62, 0x6c, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x74,
  1100  	0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61, 0x63, 0x6b, 0x61,
  1101  	0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x48, 0x0a, 0x12, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74,
  1102  	0x69, 0x76, 0x65, 0x5f, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x09, 0x20, 0x01,
  1103  	0x28, 0x0e, 0x32, 0x14, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e,
  1104  	0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x65,
  1105  	0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79,
  1106  	0x12, 0x3d, 0x0a, 0x0d, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1107  	0x6e, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61,
  1108  	0x73, 0x2e, 0x76, 0x31, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1109  	0x6e, 0x52, 0x0c, 0x66, 0x69, 0x6c, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a,
  1110  	0xde, 0x03, 0x0a, 0x0d, 0x56, 0x65, 0x78, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d, 0x65, 0x6e,
  1111  	0x74, 0x12, 0x14, 0x0a, 0x03, 0x63, 0x76, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02,
  1112  	0x18, 0x01, 0x52, 0x03, 0x63, 0x76, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x76, 0x75, 0x6c, 0x6e, 0x65,
  1113  	0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28,
  1114  	0x09, 0x52, 0x0f, 0x76, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
  1115  	0x49, 0x64, 0x12, 0x39, 0x0a, 0x0c, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x75, 0x72,
  1116  	0x69, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65,
  1117  	0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x55, 0x72, 0x6c,
  1118  	0x52, 0x0b, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x55, 0x72, 0x69, 0x73, 0x12, 0x1b, 0x0a,
  1119  	0x09, 0x6e, 0x6f, 0x74, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
  1120  	0x52, 0x08, 0x6e, 0x6f, 0x74, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x4e, 0x0a, 0x05, 0x73, 0x74,
  1121  	0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x67, 0x72, 0x61, 0x66,
  1122  	0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69,
  1123  	0x6c, 0x69, 0x74, 0x79, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f,
  1124  	0x74, 0x65, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74,
  1125  	0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6d,
  1126  	0x70, 0x61, 0x63, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x69, 0x6d, 0x70,
  1127  	0x61, 0x63, 0x74, 0x73, 0x12, 0x62, 0x0a, 0x0c, 0x72, 0x65, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74,
  1128  	0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x72, 0x61,
  1129  	0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62,
  1130  	0x69, 0x6c, 0x69, 0x74, 0x79, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d, 0x65, 0x6e, 0x74, 0x4e,
  1131  	0x6f, 0x74, 0x65, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52,
  1132  	0x65, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x72, 0x65, 0x6d, 0x65,
  1133  	0x64, 0x69, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x66, 0x0a, 0x0d, 0x6a, 0x75, 0x73, 0x74,
  1134  	0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1135  	0x40, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x56, 0x75, 0x6c,
  1136  	0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73,
  1137  	0x6d, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x65, 0x2e, 0x41, 0x73, 0x73, 0x65, 0x73, 0x73, 0x6d,
  1138  	0x65, 0x6e, 0x74, 0x2e, 0x4a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1139  	0x6e, 0x52, 0x0d, 0x6a, 0x75, 0x73, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  1140  	0x42, 0x51, 0x0a, 0x0d, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0x2e, 0x76,
  1141  	0x31, 0x50, 0x01, 0x5a, 0x38, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61,
  1142  	0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
  1143  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x67, 0x72, 0x61, 0x66, 0x65,
  1144  	0x61, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x67, 0x72, 0x61, 0x66, 0x65, 0x61, 0x73, 0xa2, 0x02, 0x03,
  1145  	0x47, 0x52, 0x41, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1146  }
  1147  
  1148  var (
  1149  	file_grafeas_v1_vulnerability_proto_rawDescOnce sync.Once
  1150  	file_grafeas_v1_vulnerability_proto_rawDescData = file_grafeas_v1_vulnerability_proto_rawDesc
  1151  )
  1152  
  1153  func file_grafeas_v1_vulnerability_proto_rawDescGZIP() []byte {
  1154  	file_grafeas_v1_vulnerability_proto_rawDescOnce.Do(func() {
  1155  		file_grafeas_v1_vulnerability_proto_rawDescData = protoimpl.X.CompressGZIP(file_grafeas_v1_vulnerability_proto_rawDescData)
  1156  	})
  1157  	return file_grafeas_v1_vulnerability_proto_rawDescData
  1158  }
  1159  
  1160  var file_grafeas_v1_vulnerability_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
  1161  var file_grafeas_v1_vulnerability_proto_goTypes = []interface{}{
  1162  	(*VulnerabilityNote)(nil),                             // 0: grafeas.v1.VulnerabilityNote
  1163  	(*VulnerabilityOccurrence)(nil),                       // 1: grafeas.v1.VulnerabilityOccurrence
  1164  	(*VulnerabilityNote_Detail)(nil),                      // 2: grafeas.v1.VulnerabilityNote.Detail
  1165  	(*VulnerabilityNote_WindowsDetail)(nil),               // 3: grafeas.v1.VulnerabilityNote.WindowsDetail
  1166  	(*VulnerabilityNote_WindowsDetail_KnowledgeBase)(nil), // 4: grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase
  1167  	(*VulnerabilityOccurrence_PackageIssue)(nil),          // 5: grafeas.v1.VulnerabilityOccurrence.PackageIssue
  1168  	(*VulnerabilityOccurrence_VexAssessment)(nil),         // 6: grafeas.v1.VulnerabilityOccurrence.VexAssessment
  1169  	(Severity)(0),                 // 7: grafeas.v1.Severity
  1170  	(*CVSSv3)(nil),                // 8: grafeas.v1.CVSSv3
  1171  	(*timestamppb.Timestamp)(nil), // 9: google.protobuf.Timestamp
  1172  	(CVSSVersion)(0),              // 10: grafeas.v1.CVSSVersion
  1173  	(*CVSS)(nil),                  // 11: grafeas.v1.CVSS
  1174  	(*RelatedUrl)(nil),            // 12: grafeas.v1.RelatedUrl
  1175  	(*Version)(nil),               // 13: grafeas.v1.Version
  1176  	(*FileLocation)(nil),          // 14: grafeas.v1.FileLocation
  1177  	(VulnerabilityAssessmentNote_Assessment_State)(0),            // 15: grafeas.v1.VulnerabilityAssessmentNote.Assessment.State
  1178  	(*VulnerabilityAssessmentNote_Assessment_Remediation)(nil),   // 16: grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation
  1179  	(*VulnerabilityAssessmentNote_Assessment_Justification)(nil), // 17: grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification
  1180  }
  1181  var file_grafeas_v1_vulnerability_proto_depIdxs = []int32{
  1182  	7,  // 0: grafeas.v1.VulnerabilityNote.severity:type_name -> grafeas.v1.Severity
  1183  	2,  // 1: grafeas.v1.VulnerabilityNote.details:type_name -> grafeas.v1.VulnerabilityNote.Detail
  1184  	8,  // 2: grafeas.v1.VulnerabilityNote.cvss_v3:type_name -> grafeas.v1.CVSSv3
  1185  	3,  // 3: grafeas.v1.VulnerabilityNote.windows_details:type_name -> grafeas.v1.VulnerabilityNote.WindowsDetail
  1186  	9,  // 4: grafeas.v1.VulnerabilityNote.source_update_time:type_name -> google.protobuf.Timestamp
  1187  	10, // 5: grafeas.v1.VulnerabilityNote.cvss_version:type_name -> grafeas.v1.CVSSVersion
  1188  	11, // 6: grafeas.v1.VulnerabilityNote.cvss_v2:type_name -> grafeas.v1.CVSS
  1189  	7,  // 7: grafeas.v1.VulnerabilityOccurrence.severity:type_name -> grafeas.v1.Severity
  1190  	11, // 8: grafeas.v1.VulnerabilityOccurrence.cvssv3:type_name -> grafeas.v1.CVSS
  1191  	5,  // 9: grafeas.v1.VulnerabilityOccurrence.package_issue:type_name -> grafeas.v1.VulnerabilityOccurrence.PackageIssue
  1192  	12, // 10: grafeas.v1.VulnerabilityOccurrence.related_urls:type_name -> grafeas.v1.RelatedUrl
  1193  	7,  // 11: grafeas.v1.VulnerabilityOccurrence.effective_severity:type_name -> grafeas.v1.Severity
  1194  	10, // 12: grafeas.v1.VulnerabilityOccurrence.cvss_version:type_name -> grafeas.v1.CVSSVersion
  1195  	11, // 13: grafeas.v1.VulnerabilityOccurrence.cvss_v2:type_name -> grafeas.v1.CVSS
  1196  	6,  // 14: grafeas.v1.VulnerabilityOccurrence.vex_assessment:type_name -> grafeas.v1.VulnerabilityOccurrence.VexAssessment
  1197  	13, // 15: grafeas.v1.VulnerabilityNote.Detail.affected_version_start:type_name -> grafeas.v1.Version
  1198  	13, // 16: grafeas.v1.VulnerabilityNote.Detail.affected_version_end:type_name -> grafeas.v1.Version
  1199  	13, // 17: grafeas.v1.VulnerabilityNote.Detail.fixed_version:type_name -> grafeas.v1.Version
  1200  	9,  // 18: grafeas.v1.VulnerabilityNote.Detail.source_update_time:type_name -> google.protobuf.Timestamp
  1201  	4,  // 19: grafeas.v1.VulnerabilityNote.WindowsDetail.fixing_kbs:type_name -> grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase
  1202  	13, // 20: grafeas.v1.VulnerabilityOccurrence.PackageIssue.affected_version:type_name -> grafeas.v1.Version
  1203  	13, // 21: grafeas.v1.VulnerabilityOccurrence.PackageIssue.fixed_version:type_name -> grafeas.v1.Version
  1204  	7,  // 22: grafeas.v1.VulnerabilityOccurrence.PackageIssue.effective_severity:type_name -> grafeas.v1.Severity
  1205  	14, // 23: grafeas.v1.VulnerabilityOccurrence.PackageIssue.file_location:type_name -> grafeas.v1.FileLocation
  1206  	12, // 24: grafeas.v1.VulnerabilityOccurrence.VexAssessment.related_uris:type_name -> grafeas.v1.RelatedUrl
  1207  	15, // 25: grafeas.v1.VulnerabilityOccurrence.VexAssessment.state:type_name -> grafeas.v1.VulnerabilityAssessmentNote.Assessment.State
  1208  	16, // 26: grafeas.v1.VulnerabilityOccurrence.VexAssessment.remediations:type_name -> grafeas.v1.VulnerabilityAssessmentNote.Assessment.Remediation
  1209  	17, // 27: grafeas.v1.VulnerabilityOccurrence.VexAssessment.justification:type_name -> grafeas.v1.VulnerabilityAssessmentNote.Assessment.Justification
  1210  	28, // [28:28] is the sub-list for method output_type
  1211  	28, // [28:28] is the sub-list for method input_type
  1212  	28, // [28:28] is the sub-list for extension type_name
  1213  	28, // [28:28] is the sub-list for extension extendee
  1214  	0,  // [0:28] is the sub-list for field type_name
  1215  }
  1216  
  1217  func init() { file_grafeas_v1_vulnerability_proto_init() }
  1218  func file_grafeas_v1_vulnerability_proto_init() {
  1219  	if File_grafeas_v1_vulnerability_proto != nil {
  1220  		return
  1221  	}
  1222  	file_grafeas_v1_common_proto_init()
  1223  	file_grafeas_v1_cvss_proto_init()
  1224  	file_grafeas_v1_package_proto_init()
  1225  	file_grafeas_v1_severity_proto_init()
  1226  	file_grafeas_v1_vex_proto_init()
  1227  	if !protoimpl.UnsafeEnabled {
  1228  		file_grafeas_v1_vulnerability_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1229  			switch v := v.(*VulnerabilityNote); i {
  1230  			case 0:
  1231  				return &v.state
  1232  			case 1:
  1233  				return &v.sizeCache
  1234  			case 2:
  1235  				return &v.unknownFields
  1236  			default:
  1237  				return nil
  1238  			}
  1239  		}
  1240  		file_grafeas_v1_vulnerability_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1241  			switch v := v.(*VulnerabilityOccurrence); i {
  1242  			case 0:
  1243  				return &v.state
  1244  			case 1:
  1245  				return &v.sizeCache
  1246  			case 2:
  1247  				return &v.unknownFields
  1248  			default:
  1249  				return nil
  1250  			}
  1251  		}
  1252  		file_grafeas_v1_vulnerability_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1253  			switch v := v.(*VulnerabilityNote_Detail); i {
  1254  			case 0:
  1255  				return &v.state
  1256  			case 1:
  1257  				return &v.sizeCache
  1258  			case 2:
  1259  				return &v.unknownFields
  1260  			default:
  1261  				return nil
  1262  			}
  1263  		}
  1264  		file_grafeas_v1_vulnerability_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1265  			switch v := v.(*VulnerabilityNote_WindowsDetail); i {
  1266  			case 0:
  1267  				return &v.state
  1268  			case 1:
  1269  				return &v.sizeCache
  1270  			case 2:
  1271  				return &v.unknownFields
  1272  			default:
  1273  				return nil
  1274  			}
  1275  		}
  1276  		file_grafeas_v1_vulnerability_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1277  			switch v := v.(*VulnerabilityNote_WindowsDetail_KnowledgeBase); i {
  1278  			case 0:
  1279  				return &v.state
  1280  			case 1:
  1281  				return &v.sizeCache
  1282  			case 2:
  1283  				return &v.unknownFields
  1284  			default:
  1285  				return nil
  1286  			}
  1287  		}
  1288  		file_grafeas_v1_vulnerability_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1289  			switch v := v.(*VulnerabilityOccurrence_PackageIssue); i {
  1290  			case 0:
  1291  				return &v.state
  1292  			case 1:
  1293  				return &v.sizeCache
  1294  			case 2:
  1295  				return &v.unknownFields
  1296  			default:
  1297  				return nil
  1298  			}
  1299  		}
  1300  		file_grafeas_v1_vulnerability_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1301  			switch v := v.(*VulnerabilityOccurrence_VexAssessment); i {
  1302  			case 0:
  1303  				return &v.state
  1304  			case 1:
  1305  				return &v.sizeCache
  1306  			case 2:
  1307  				return &v.unknownFields
  1308  			default:
  1309  				return nil
  1310  			}
  1311  		}
  1312  	}
  1313  	type x struct{}
  1314  	out := protoimpl.TypeBuilder{
  1315  		File: protoimpl.DescBuilder{
  1316  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1317  			RawDescriptor: file_grafeas_v1_vulnerability_proto_rawDesc,
  1318  			NumEnums:      0,
  1319  			NumMessages:   7,
  1320  			NumExtensions: 0,
  1321  			NumServices:   0,
  1322  		},
  1323  		GoTypes:           file_grafeas_v1_vulnerability_proto_goTypes,
  1324  		DependencyIndexes: file_grafeas_v1_vulnerability_proto_depIdxs,
  1325  		MessageInfos:      file_grafeas_v1_vulnerability_proto_msgTypes,
  1326  	}.Build()
  1327  	File_grafeas_v1_vulnerability_proto = out.File
  1328  	file_grafeas_v1_vulnerability_proto_rawDesc = nil
  1329  	file_grafeas_v1_vulnerability_proto_goTypes = nil
  1330  	file_grafeas_v1_vulnerability_proto_depIdxs = nil
  1331  }
  1332  

View as plain text