1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: grafeas/v1/vulnerability.proto 3 4package grafeas 5 6import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11) 12 13// Reference imports to suppress errors if they are not otherwise used. 14var _ = proto.Marshal 15var _ = fmt.Errorf 16var _ = math.Inf 17 18// This is a compile-time assertion to ensure that this generated file 19// is compatible with the proto package it is being compiled against. 20// A compilation error at this line likely means your copy of the 21// proto package needs to be updated. 22const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 23 24// Note provider assigned severity/impact ranking. 25type Severity int32 26 27const ( 28 // Unknown. 29 Severity_SEVERITY_UNSPECIFIED Severity = 0 30 // Minimal severity. 31 Severity_MINIMAL Severity = 1 32 // Low severity. 33 Severity_LOW Severity = 2 34 // Medium severity. 35 Severity_MEDIUM Severity = 3 36 // High severity. 37 Severity_HIGH Severity = 4 38 // Critical severity. 39 Severity_CRITICAL Severity = 5 40) 41 42var Severity_name = map[int32]string{ 43 0: "SEVERITY_UNSPECIFIED", 44 1: "MINIMAL", 45 2: "LOW", 46 3: "MEDIUM", 47 4: "HIGH", 48 5: "CRITICAL", 49} 50 51var Severity_value = map[string]int32{ 52 "SEVERITY_UNSPECIFIED": 0, 53 "MINIMAL": 1, 54 "LOW": 2, 55 "MEDIUM": 3, 56 "HIGH": 4, 57 "CRITICAL": 5, 58} 59 60func (x Severity) String() string { 61 return proto.EnumName(Severity_name, int32(x)) 62} 63 64func (Severity) EnumDescriptor() ([]byte, []int) { 65 return fileDescriptor_cc4b69df8d04ae33, []int{0} 66} 67 68// A security vulnerability that can be found in resources. 69type VulnerabilityNote struct { 70 // The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10 71 // where 0 indicates low severity and 10 indicates high severity. 72 CvssScore float32 `protobuf:"fixed32,1,opt,name=cvss_score,json=cvssScore,proto3" json:"cvss_score,omitempty"` 73 // The note provider assigned severity of this vulnerability. 74 Severity Severity `protobuf:"varint,2,opt,name=severity,proto3,enum=grafeas.v1.Severity" json:"severity,omitempty"` 75 // Details of all known distros and packages affected by this vulnerability. 76 Details []*VulnerabilityNote_Detail `protobuf:"bytes,3,rep,name=details,proto3" json:"details,omitempty"` 77 // The full description of the CVSSv3 for this vulnerability. 78 CvssV3 *CVSSv3 `protobuf:"bytes,4,opt,name=cvss_v3,json=cvssV3,proto3" json:"cvss_v3,omitempty"` 79 // Windows details get their own format because the information format and 80 // model don't match a normal detail. Specifically Windows updates are done as 81 // patches, thus Windows vulnerabilities really are a missing package, rather 82 // than a package being at an incorrect version. 83 WindowsDetails []*VulnerabilityNote_WindowsDetail `protobuf:"bytes,5,rep,name=windows_details,json=windowsDetails,proto3" json:"windows_details,omitempty"` 84 XXX_NoUnkeyedLiteral struct{} `json:"-"` 85 XXX_unrecognized []byte `json:"-"` 86 XXX_sizecache int32 `json:"-"` 87} 88 89func (m *VulnerabilityNote) Reset() { *m = VulnerabilityNote{} } 90func (m *VulnerabilityNote) String() string { return proto.CompactTextString(m) } 91func (*VulnerabilityNote) ProtoMessage() {} 92func (*VulnerabilityNote) Descriptor() ([]byte, []int) { 93 return fileDescriptor_cc4b69df8d04ae33, []int{0} 94} 95 96func (m *VulnerabilityNote) XXX_Unmarshal(b []byte) error { 97 return xxx_messageInfo_VulnerabilityNote.Unmarshal(m, b) 98} 99func (m *VulnerabilityNote) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 100 return xxx_messageInfo_VulnerabilityNote.Marshal(b, m, deterministic) 101} 102func (m *VulnerabilityNote) XXX_Merge(src proto.Message) { 103 xxx_messageInfo_VulnerabilityNote.Merge(m, src) 104} 105func (m *VulnerabilityNote) XXX_Size() int { 106 return xxx_messageInfo_VulnerabilityNote.Size(m) 107} 108func (m *VulnerabilityNote) XXX_DiscardUnknown() { 109 xxx_messageInfo_VulnerabilityNote.DiscardUnknown(m) 110} 111 112var xxx_messageInfo_VulnerabilityNote proto.InternalMessageInfo 113 114func (m *VulnerabilityNote) GetCvssScore() float32 { 115 if m != nil { 116 return m.CvssScore 117 } 118 return 0 119} 120 121func (m *VulnerabilityNote) GetSeverity() Severity { 122 if m != nil { 123 return m.Severity 124 } 125 return Severity_SEVERITY_UNSPECIFIED 126} 127 128func (m *VulnerabilityNote) GetDetails() []*VulnerabilityNote_Detail { 129 if m != nil { 130 return m.Details 131 } 132 return nil 133} 134 135func (m *VulnerabilityNote) GetCvssV3() *CVSSv3 { 136 if m != nil { 137 return m.CvssV3 138 } 139 return nil 140} 141 142func (m *VulnerabilityNote) GetWindowsDetails() []*VulnerabilityNote_WindowsDetail { 143 if m != nil { 144 return m.WindowsDetails 145 } 146 return nil 147} 148 149// A detail for a distro and package affected by this vulnerability and its 150// associated fix (if one is available). 151type VulnerabilityNote_Detail struct { 152 // The distro assigned severity of this vulnerability. 153 SeverityName string `protobuf:"bytes,1,opt,name=severity_name,json=severityName,proto3" json:"severity_name,omitempty"` 154 // A vendor-specific description of this vulnerability. 155 Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` 156 // The type of package; whether native or non native (e.g., ruby gems, 157 // node.js packages, etc.). 158 PackageType string `protobuf:"bytes,3,opt,name=package_type,json=packageType,proto3" json:"package_type,omitempty"` 159 // Required. The [CPE URI](https://cpe.mitre.org/specification/) this 160 // vulnerability affects. 161 AffectedCpeUri string `protobuf:"bytes,4,opt,name=affected_cpe_uri,json=affectedCpeUri,proto3" json:"affected_cpe_uri,omitempty"` 162 // Required. The package this vulnerability affects. 163 AffectedPackage string `protobuf:"bytes,5,opt,name=affected_package,json=affectedPackage,proto3" json:"affected_package,omitempty"` 164 // The version number at the start of an interval in which this 165 // vulnerability exists. A vulnerability can affect a package between 166 // version numbers that are disjoint sets of intervals (example: 167 // [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be 168 // represented in its own Detail. If a specific affected version is provided 169 // by a vulnerability database, affected_version_start and 170 // affected_version_end will be the same in that Detail. 171 AffectedVersionStart *Version `protobuf:"bytes,6,opt,name=affected_version_start,json=affectedVersionStart,proto3" json:"affected_version_start,omitempty"` 172 // The version number at the end of an interval in which this vulnerability 173 // exists. A vulnerability can affect a package between version numbers 174 // that are disjoint sets of intervals (example: [1.0.0-1.1.0], 175 // [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its 176 // own Detail. If a specific affected version is provided by a vulnerability 177 // database, affected_version_start and affected_version_end will be the 178 // same in that Detail. 179 AffectedVersionEnd *Version `protobuf:"bytes,7,opt,name=affected_version_end,json=affectedVersionEnd,proto3" json:"affected_version_end,omitempty"` 180 // The distro recommended [CPE URI](https://cpe.mitre.org/specification/) 181 // to update to that contains a fix for this vulnerability. It is possible 182 // for this to be different from the affected_cpe_uri. 183 FixedCpeUri string `protobuf:"bytes,8,opt,name=fixed_cpe_uri,json=fixedCpeUri,proto3" json:"fixed_cpe_uri,omitempty"` 184 // The distro recommended package to update to that contains a fix for this 185 // vulnerability. It is possible for this to be different from the 186 // affected_package. 187 FixedPackage string `protobuf:"bytes,9,opt,name=fixed_package,json=fixedPackage,proto3" json:"fixed_package,omitempty"` 188 // The distro recommended version to update to that contains a 189 // fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no 190 // such version is yet available. 191 FixedVersion *Version `protobuf:"bytes,10,opt,name=fixed_version,json=fixedVersion,proto3" json:"fixed_version,omitempty"` 192 // Whether this detail is obsolete. Occurrences are expected not to point to 193 // obsolete details. 194 IsObsolete bool `protobuf:"varint,11,opt,name=is_obsolete,json=isObsolete,proto3" json:"is_obsolete,omitempty"` 195 XXX_NoUnkeyedLiteral struct{} `json:"-"` 196 XXX_unrecognized []byte `json:"-"` 197 XXX_sizecache int32 `json:"-"` 198} 199 200func (m *VulnerabilityNote_Detail) Reset() { *m = VulnerabilityNote_Detail{} } 201func (m *VulnerabilityNote_Detail) String() string { return proto.CompactTextString(m) } 202func (*VulnerabilityNote_Detail) ProtoMessage() {} 203func (*VulnerabilityNote_Detail) Descriptor() ([]byte, []int) { 204 return fileDescriptor_cc4b69df8d04ae33, []int{0, 0} 205} 206 207func (m *VulnerabilityNote_Detail) XXX_Unmarshal(b []byte) error { 208 return xxx_messageInfo_VulnerabilityNote_Detail.Unmarshal(m, b) 209} 210func (m *VulnerabilityNote_Detail) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 211 return xxx_messageInfo_VulnerabilityNote_Detail.Marshal(b, m, deterministic) 212} 213func (m *VulnerabilityNote_Detail) XXX_Merge(src proto.Message) { 214 xxx_messageInfo_VulnerabilityNote_Detail.Merge(m, src) 215} 216func (m *VulnerabilityNote_Detail) XXX_Size() int { 217 return xxx_messageInfo_VulnerabilityNote_Detail.Size(m) 218} 219func (m *VulnerabilityNote_Detail) XXX_DiscardUnknown() { 220 xxx_messageInfo_VulnerabilityNote_Detail.DiscardUnknown(m) 221} 222 223var xxx_messageInfo_VulnerabilityNote_Detail proto.InternalMessageInfo 224 225func (m *VulnerabilityNote_Detail) GetSeverityName() string { 226 if m != nil { 227 return m.SeverityName 228 } 229 return "" 230} 231 232func (m *VulnerabilityNote_Detail) GetDescription() string { 233 if m != nil { 234 return m.Description 235 } 236 return "" 237} 238 239func (m *VulnerabilityNote_Detail) GetPackageType() string { 240 if m != nil { 241 return m.PackageType 242 } 243 return "" 244} 245 246func (m *VulnerabilityNote_Detail) GetAffectedCpeUri() string { 247 if m != nil { 248 return m.AffectedCpeUri 249 } 250 return "" 251} 252 253func (m *VulnerabilityNote_Detail) GetAffectedPackage() string { 254 if m != nil { 255 return m.AffectedPackage 256 } 257 return "" 258} 259 260func (m *VulnerabilityNote_Detail) GetAffectedVersionStart() *Version { 261 if m != nil { 262 return m.AffectedVersionStart 263 } 264 return nil 265} 266 267func (m *VulnerabilityNote_Detail) GetAffectedVersionEnd() *Version { 268 if m != nil { 269 return m.AffectedVersionEnd 270 } 271 return nil 272} 273 274func (m *VulnerabilityNote_Detail) GetFixedCpeUri() string { 275 if m != nil { 276 return m.FixedCpeUri 277 } 278 return "" 279} 280 281func (m *VulnerabilityNote_Detail) GetFixedPackage() string { 282 if m != nil { 283 return m.FixedPackage 284 } 285 return "" 286} 287 288func (m *VulnerabilityNote_Detail) GetFixedVersion() *Version { 289 if m != nil { 290 return m.FixedVersion 291 } 292 return nil 293} 294 295func (m *VulnerabilityNote_Detail) GetIsObsolete() bool { 296 if m != nil { 297 return m.IsObsolete 298 } 299 return false 300} 301 302type VulnerabilityNote_WindowsDetail struct { 303 // Required. The [CPE URI](https://cpe.mitre.org/specification/) this 304 // vulnerability affects. 305 CpeUri string `protobuf:"bytes,1,opt,name=cpe_uri,json=cpeUri,proto3" json:"cpe_uri,omitempty"` 306 // Required. The name of this vulnerability. 307 Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` 308 // The description of this vulnerability. 309 Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 310 // Required. The names of the KBs which have hotfixes to mitigate this 311 // vulnerability. Note that there may be multiple hotfixes (and thus 312 // multiple KBs) that mitigate a given vulnerability. Currently any listed 313 // KBs presence is considered a fix. 314 FixingKbs []*VulnerabilityNote_WindowsDetail_KnowledgeBase `protobuf:"bytes,4,rep,name=fixing_kbs,json=fixingKbs,proto3" json:"fixing_kbs,omitempty"` 315 XXX_NoUnkeyedLiteral struct{} `json:"-"` 316 XXX_unrecognized []byte `json:"-"` 317 XXX_sizecache int32 `json:"-"` 318} 319 320func (m *VulnerabilityNote_WindowsDetail) Reset() { *m = VulnerabilityNote_WindowsDetail{} } 321func (m *VulnerabilityNote_WindowsDetail) String() string { return proto.CompactTextString(m) } 322func (*VulnerabilityNote_WindowsDetail) ProtoMessage() {} 323func (*VulnerabilityNote_WindowsDetail) Descriptor() ([]byte, []int) { 324 return fileDescriptor_cc4b69df8d04ae33, []int{0, 1} 325} 326 327func (m *VulnerabilityNote_WindowsDetail) XXX_Unmarshal(b []byte) error { 328 return xxx_messageInfo_VulnerabilityNote_WindowsDetail.Unmarshal(m, b) 329} 330func (m *VulnerabilityNote_WindowsDetail) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 331 return xxx_messageInfo_VulnerabilityNote_WindowsDetail.Marshal(b, m, deterministic) 332} 333func (m *VulnerabilityNote_WindowsDetail) XXX_Merge(src proto.Message) { 334 xxx_messageInfo_VulnerabilityNote_WindowsDetail.Merge(m, src) 335} 336func (m *VulnerabilityNote_WindowsDetail) XXX_Size() int { 337 return xxx_messageInfo_VulnerabilityNote_WindowsDetail.Size(m) 338} 339func (m *VulnerabilityNote_WindowsDetail) XXX_DiscardUnknown() { 340 xxx_messageInfo_VulnerabilityNote_WindowsDetail.DiscardUnknown(m) 341} 342 343var xxx_messageInfo_VulnerabilityNote_WindowsDetail proto.InternalMessageInfo 344 345func (m *VulnerabilityNote_WindowsDetail) GetCpeUri() string { 346 if m != nil { 347 return m.CpeUri 348 } 349 return "" 350} 351 352func (m *VulnerabilityNote_WindowsDetail) GetName() string { 353 if m != nil { 354 return m.Name 355 } 356 return "" 357} 358 359func (m *VulnerabilityNote_WindowsDetail) GetDescription() string { 360 if m != nil { 361 return m.Description 362 } 363 return "" 364} 365 366func (m *VulnerabilityNote_WindowsDetail) GetFixingKbs() []*VulnerabilityNote_WindowsDetail_KnowledgeBase { 367 if m != nil { 368 return m.FixingKbs 369 } 370 return nil 371} 372 373type VulnerabilityNote_WindowsDetail_KnowledgeBase struct { 374 // The KB name (generally of the form KB[0-9]+ (e.g., KB123456)). 375 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 376 // A link to the KB in the [Windows update catalog] 377 // (https://www.catalog.update.microsoft.com/). 378 Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"` 379 XXX_NoUnkeyedLiteral struct{} `json:"-"` 380 XXX_unrecognized []byte `json:"-"` 381 XXX_sizecache int32 `json:"-"` 382} 383 384func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) Reset() { 385 *m = VulnerabilityNote_WindowsDetail_KnowledgeBase{} 386} 387func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) String() string { 388 return proto.CompactTextString(m) 389} 390func (*VulnerabilityNote_WindowsDetail_KnowledgeBase) ProtoMessage() {} 391func (*VulnerabilityNote_WindowsDetail_KnowledgeBase) Descriptor() ([]byte, []int) { 392 return fileDescriptor_cc4b69df8d04ae33, []int{0, 1, 0} 393} 394 395func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) XXX_Unmarshal(b []byte) error { 396 return xxx_messageInfo_VulnerabilityNote_WindowsDetail_KnowledgeBase.Unmarshal(m, b) 397} 398func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 399 return xxx_messageInfo_VulnerabilityNote_WindowsDetail_KnowledgeBase.Marshal(b, m, deterministic) 400} 401func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) XXX_Merge(src proto.Message) { 402 xxx_messageInfo_VulnerabilityNote_WindowsDetail_KnowledgeBase.Merge(m, src) 403} 404func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) XXX_Size() int { 405 return xxx_messageInfo_VulnerabilityNote_WindowsDetail_KnowledgeBase.Size(m) 406} 407func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) XXX_DiscardUnknown() { 408 xxx_messageInfo_VulnerabilityNote_WindowsDetail_KnowledgeBase.DiscardUnknown(m) 409} 410 411var xxx_messageInfo_VulnerabilityNote_WindowsDetail_KnowledgeBase proto.InternalMessageInfo 412 413func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) GetName() string { 414 if m != nil { 415 return m.Name 416 } 417 return "" 418} 419 420func (m *VulnerabilityNote_WindowsDetail_KnowledgeBase) GetUrl() string { 421 if m != nil { 422 return m.Url 423 } 424 return "" 425} 426 427// An occurrence of a severity vulnerability on a resource. 428type VulnerabilityOccurrence struct { 429 // The type of package; whether native or non native (e.g., ruby gems, node.js 430 // packages, etc.). 431 Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` 432 // Output only. The note provider assigned severity of this vulnerability. 433 Severity Severity `protobuf:"varint,2,opt,name=severity,proto3,enum=grafeas.v1.Severity" json:"severity,omitempty"` 434 // Output only. The CVSS score of this vulnerability. CVSS score is on a 435 // scale of 0 - 10 where 0 indicates low severity and 10 indicates high 436 // severity. 437 CvssScore float32 `protobuf:"fixed32,3,opt,name=cvss_score,json=cvssScore,proto3" json:"cvss_score,omitempty"` 438 // Required. The set of affected locations and their fixes (if available) 439 // within the associated resource. 440 PackageIssue []*VulnerabilityOccurrence_PackageIssue `protobuf:"bytes,4,rep,name=package_issue,json=packageIssue,proto3" json:"package_issue,omitempty"` 441 // Output only. A one sentence description of this vulnerability. 442 ShortDescription string `protobuf:"bytes,5,opt,name=short_description,json=shortDescription,proto3" json:"short_description,omitempty"` 443 // Output only. A detailed description of this vulnerability. 444 LongDescription string `protobuf:"bytes,6,opt,name=long_description,json=longDescription,proto3" json:"long_description,omitempty"` 445 // Output only. URLs related to this vulnerability. 446 RelatedUrls []*RelatedUrl `protobuf:"bytes,7,rep,name=related_urls,json=relatedUrls,proto3" json:"related_urls,omitempty"` 447 // The distro assigned severity for this vulnerability when it is available, 448 // and note provider assigned severity when distro has not yet assigned a 449 // severity for this vulnerability. 450 EffectiveSeverity Severity `protobuf:"varint,8,opt,name=effective_severity,json=effectiveSeverity,proto3,enum=grafeas.v1.Severity" json:"effective_severity,omitempty"` 451 // Output only. Whether at least one of the affected packages has a fix 452 // available. 453 FixAvailable bool `protobuf:"varint,9,opt,name=fix_available,json=fixAvailable,proto3" json:"fix_available,omitempty"` 454 XXX_NoUnkeyedLiteral struct{} `json:"-"` 455 XXX_unrecognized []byte `json:"-"` 456 XXX_sizecache int32 `json:"-"` 457} 458 459func (m *VulnerabilityOccurrence) Reset() { *m = VulnerabilityOccurrence{} } 460func (m *VulnerabilityOccurrence) String() string { return proto.CompactTextString(m) } 461func (*VulnerabilityOccurrence) ProtoMessage() {} 462func (*VulnerabilityOccurrence) Descriptor() ([]byte, []int) { 463 return fileDescriptor_cc4b69df8d04ae33, []int{1} 464} 465 466func (m *VulnerabilityOccurrence) XXX_Unmarshal(b []byte) error { 467 return xxx_messageInfo_VulnerabilityOccurrence.Unmarshal(m, b) 468} 469func (m *VulnerabilityOccurrence) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 470 return xxx_messageInfo_VulnerabilityOccurrence.Marshal(b, m, deterministic) 471} 472func (m *VulnerabilityOccurrence) XXX_Merge(src proto.Message) { 473 xxx_messageInfo_VulnerabilityOccurrence.Merge(m, src) 474} 475func (m *VulnerabilityOccurrence) XXX_Size() int { 476 return xxx_messageInfo_VulnerabilityOccurrence.Size(m) 477} 478func (m *VulnerabilityOccurrence) XXX_DiscardUnknown() { 479 xxx_messageInfo_VulnerabilityOccurrence.DiscardUnknown(m) 480} 481 482var xxx_messageInfo_VulnerabilityOccurrence proto.InternalMessageInfo 483 484func (m *VulnerabilityOccurrence) GetType() string { 485 if m != nil { 486 return m.Type 487 } 488 return "" 489} 490 491func (m *VulnerabilityOccurrence) GetSeverity() Severity { 492 if m != nil { 493 return m.Severity 494 } 495 return Severity_SEVERITY_UNSPECIFIED 496} 497 498func (m *VulnerabilityOccurrence) GetCvssScore() float32 { 499 if m != nil { 500 return m.CvssScore 501 } 502 return 0 503} 504 505func (m *VulnerabilityOccurrence) GetPackageIssue() []*VulnerabilityOccurrence_PackageIssue { 506 if m != nil { 507 return m.PackageIssue 508 } 509 return nil 510} 511 512func (m *VulnerabilityOccurrence) GetShortDescription() string { 513 if m != nil { 514 return m.ShortDescription 515 } 516 return "" 517} 518 519func (m *VulnerabilityOccurrence) GetLongDescription() string { 520 if m != nil { 521 return m.LongDescription 522 } 523 return "" 524} 525 526func (m *VulnerabilityOccurrence) GetRelatedUrls() []*RelatedUrl { 527 if m != nil { 528 return m.RelatedUrls 529 } 530 return nil 531} 532 533func (m *VulnerabilityOccurrence) GetEffectiveSeverity() Severity { 534 if m != nil { 535 return m.EffectiveSeverity 536 } 537 return Severity_SEVERITY_UNSPECIFIED 538} 539 540func (m *VulnerabilityOccurrence) GetFixAvailable() bool { 541 if m != nil { 542 return m.FixAvailable 543 } 544 return false 545} 546 547// A detail for a distro and package this vulnerability occurrence was found 548// in and its associated fix (if one is available). 549type VulnerabilityOccurrence_PackageIssue struct { 550 // Required. The [CPE URI](https://cpe.mitre.org/specification/) this 551 // vulnerability was found in. 552 AffectedCpeUri string `protobuf:"bytes,1,opt,name=affected_cpe_uri,json=affectedCpeUri,proto3" json:"affected_cpe_uri,omitempty"` 553 // Required. The package this vulnerability was found in. 554 AffectedPackage string `protobuf:"bytes,2,opt,name=affected_package,json=affectedPackage,proto3" json:"affected_package,omitempty"` 555 // Required. The version of the package that is installed on the resource 556 // affected by this vulnerability. 557 AffectedVersion *Version `protobuf:"bytes,3,opt,name=affected_version,json=affectedVersion,proto3" json:"affected_version,omitempty"` 558 // The [CPE URI](https://cpe.mitre.org/specification/) this vulnerability 559 // was fixed in. It is possible for this to be different from the 560 // affected_cpe_uri. 561 FixedCpeUri string `protobuf:"bytes,4,opt,name=fixed_cpe_uri,json=fixedCpeUri,proto3" json:"fixed_cpe_uri,omitempty"` 562 // The package this vulnerability was fixed in. It is possible for this to 563 // be different from the affected_package. 564 FixedPackage string `protobuf:"bytes,5,opt,name=fixed_package,json=fixedPackage,proto3" json:"fixed_package,omitempty"` 565 // Required. The version of the package this vulnerability was fixed in. 566 // Setting this to VersionKind.MAXIMUM means no fix is yet available. 567 FixedVersion *Version `protobuf:"bytes,6,opt,name=fixed_version,json=fixedVersion,proto3" json:"fixed_version,omitempty"` 568 // Output only. Whether a fix is available for this package. 569 FixAvailable bool `protobuf:"varint,7,opt,name=fix_available,json=fixAvailable,proto3" json:"fix_available,omitempty"` 570 XXX_NoUnkeyedLiteral struct{} `json:"-"` 571 XXX_unrecognized []byte `json:"-"` 572 XXX_sizecache int32 `json:"-"` 573} 574 575func (m *VulnerabilityOccurrence_PackageIssue) Reset() { *m = VulnerabilityOccurrence_PackageIssue{} } 576func (m *VulnerabilityOccurrence_PackageIssue) String() string { return proto.CompactTextString(m) } 577func (*VulnerabilityOccurrence_PackageIssue) ProtoMessage() {} 578func (*VulnerabilityOccurrence_PackageIssue) Descriptor() ([]byte, []int) { 579 return fileDescriptor_cc4b69df8d04ae33, []int{1, 0} 580} 581 582func (m *VulnerabilityOccurrence_PackageIssue) XXX_Unmarshal(b []byte) error { 583 return xxx_messageInfo_VulnerabilityOccurrence_PackageIssue.Unmarshal(m, b) 584} 585func (m *VulnerabilityOccurrence_PackageIssue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 586 return xxx_messageInfo_VulnerabilityOccurrence_PackageIssue.Marshal(b, m, deterministic) 587} 588func (m *VulnerabilityOccurrence_PackageIssue) XXX_Merge(src proto.Message) { 589 xxx_messageInfo_VulnerabilityOccurrence_PackageIssue.Merge(m, src) 590} 591func (m *VulnerabilityOccurrence_PackageIssue) XXX_Size() int { 592 return xxx_messageInfo_VulnerabilityOccurrence_PackageIssue.Size(m) 593} 594func (m *VulnerabilityOccurrence_PackageIssue) XXX_DiscardUnknown() { 595 xxx_messageInfo_VulnerabilityOccurrence_PackageIssue.DiscardUnknown(m) 596} 597 598var xxx_messageInfo_VulnerabilityOccurrence_PackageIssue proto.InternalMessageInfo 599 600func (m *VulnerabilityOccurrence_PackageIssue) GetAffectedCpeUri() string { 601 if m != nil { 602 return m.AffectedCpeUri 603 } 604 return "" 605} 606 607func (m *VulnerabilityOccurrence_PackageIssue) GetAffectedPackage() string { 608 if m != nil { 609 return m.AffectedPackage 610 } 611 return "" 612} 613 614func (m *VulnerabilityOccurrence_PackageIssue) GetAffectedVersion() *Version { 615 if m != nil { 616 return m.AffectedVersion 617 } 618 return nil 619} 620 621func (m *VulnerabilityOccurrence_PackageIssue) GetFixedCpeUri() string { 622 if m != nil { 623 return m.FixedCpeUri 624 } 625 return "" 626} 627 628func (m *VulnerabilityOccurrence_PackageIssue) GetFixedPackage() string { 629 if m != nil { 630 return m.FixedPackage 631 } 632 return "" 633} 634 635func (m *VulnerabilityOccurrence_PackageIssue) GetFixedVersion() *Version { 636 if m != nil { 637 return m.FixedVersion 638 } 639 return nil 640} 641 642func (m *VulnerabilityOccurrence_PackageIssue) GetFixAvailable() bool { 643 if m != nil { 644 return m.FixAvailable 645 } 646 return false 647} 648 649func init() { 650 proto.RegisterEnum("grafeas.v1.Severity", Severity_name, Severity_value) 651 proto.RegisterType((*VulnerabilityNote)(nil), "grafeas.v1.VulnerabilityNote") 652 proto.RegisterType((*VulnerabilityNote_Detail)(nil), "grafeas.v1.VulnerabilityNote.Detail") 653 proto.RegisterType((*VulnerabilityNote_WindowsDetail)(nil), "grafeas.v1.VulnerabilityNote.WindowsDetail") 654 proto.RegisterType((*VulnerabilityNote_WindowsDetail_KnowledgeBase)(nil), "grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase") 655 proto.RegisterType((*VulnerabilityOccurrence)(nil), "grafeas.v1.VulnerabilityOccurrence") 656 proto.RegisterType((*VulnerabilityOccurrence_PackageIssue)(nil), "grafeas.v1.VulnerabilityOccurrence.PackageIssue") 657} 658 659func init() { proto.RegisterFile("grafeas/v1/vulnerability.proto", fileDescriptor_cc4b69df8d04ae33) } 660 661var fileDescriptor_cc4b69df8d04ae33 = []byte{ 662 // 897 bytes of a gzipped FileDescriptorProto 663 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x55, 0xdd, 0x6e, 0xdb, 0x36, 664 0x14, 0x9e, 0x2c, 0xc7, 0x3f, 0xc7, 0x76, 0xa2, 0x70, 0x59, 0x23, 0x18, 0xd8, 0xe6, 0xa5, 0xbb, 665 0x70, 0x17, 0x40, 0x6e, 0x13, 0x0c, 0x68, 0x31, 0xa0, 0x40, 0xea, 0x78, 0xad, 0xd0, 0xfc, 0x4d, 666 0x8e, 0xd3, 0x6d, 0x17, 0x13, 0x64, 0x99, 0xd6, 0x88, 0x2a, 0xa2, 0x41, 0xca, 0x4a, 0xf3, 0x28, 667 0xbb, 0x1b, 0xf6, 0x3a, 0x7b, 0x98, 0x3d, 0xc1, 0x80, 0x41, 0x24, 0xe5, 0xd0, 0x71, 0x13, 0x64, 668 0xbd, 0xa3, 0xbe, 0xf3, 0x1d, 0xf2, 0xe3, 0xc7, 0x73, 0x8e, 0xe0, 0xab, 0x88, 0x05, 0x53, 0x1c, 669 0xf0, 0x5e, 0xf6, 0xac, 0x97, 0xcd, 0xe3, 0x04, 0xb3, 0x60, 0x4c, 0x62, 0x92, 0x5e, 0x3b, 0x33, 670 0x46, 0x53, 0x8a, 0x40, 0xc5, 0x9d, 0xec, 0x59, 0x7b, 0x5b, 0xe3, 0x86, 0xf4, 0xf2, 0x92, 0x26, 671 0x92, 0xd4, 0xfe, 0x42, 0x0f, 0x64, 0x9c, 0x2b, 0xd8, 0xd6, 0xe0, 0x59, 0x10, 0xbe, 0x0f, 0x22, 672 0x2c, 0x23, 0x3b, 0x7f, 0xd4, 0x60, 0xf3, 0x42, 0x3f, 0xed, 0x84, 0xa6, 0x18, 0x7d, 0x09, 0x90, 673 0x67, 0xfb, 0x3c, 0xa4, 0x0c, 0xdb, 0x46, 0xc7, 0xe8, 0x96, 0xbc, 0x7a, 0x8e, 0x0c, 0x73, 0x00, 674 0x3d, 0x85, 0x1a, 0xc7, 0x19, 0x66, 0x24, 0xbd, 0xb6, 0x4b, 0x1d, 0xa3, 0xbb, 0xbe, 0xb7, 0xe5, 675 0xdc, 0xa8, 0x73, 0x86, 0x2a, 0xe6, 0x2d, 0x58, 0xe8, 0x25, 0x54, 0x27, 0x38, 0x0d, 0x48, 0xcc, 676 0x6d, 0xb3, 0x63, 0x76, 0x1b, 0x7b, 0xdf, 0xea, 0x09, 0x2b, 0x02, 0x9c, 0x43, 0x41, 0xf6, 0x8a, 677 0x24, 0xb4, 0x0b, 0x55, 0x21, 0x28, 0xdb, 0xb7, 0xcb, 0x1d, 0xa3, 0xdb, 0xd8, 0x43, 0x7a, 0x7e, 678 0xff, 0x62, 0x38, 0xcc, 0xf6, 0xbd, 0x4a, 0x4e, 0xb9, 0xd8, 0x47, 0xe7, 0xb0, 0x71, 0x45, 0x92, 679 0x09, 0xbd, 0xe2, 0x7e, 0x71, 0xe8, 0x9a, 0x38, 0x74, 0xf7, 0xfe, 0x43, 0xdf, 0xc9, 0x24, 0x75, 680 0xf6, 0xfa, 0x95, 0xfe, 0xc9, 0xdb, 0xff, 0x9a, 0x50, 0x91, 0x6b, 0xf4, 0x18, 0x5a, 0xc5, 0xcd, 681 0xfc, 0x24, 0xb8, 0x94, 0x0e, 0xd5, 0xbd, 0x66, 0x01, 0x9e, 0x04, 0x97, 0x18, 0x75, 0xa0, 0x31, 682 0xc1, 0x3c, 0x64, 0x64, 0x96, 0x12, 0x9a, 0x08, 0x9f, 0xea, 0x9e, 0x0e, 0xa1, 0x6f, 0xa0, 0xa9, 683 0x1e, 0xc3, 0x4f, 0xaf, 0x67, 0xd8, 0x36, 0x25, 0x45, 0x61, 0xe7, 0xd7, 0x33, 0x8c, 0xba, 0x60, 684 0x05, 0xd3, 0x29, 0x0e, 0x53, 0x3c, 0xf1, 0xc3, 0x19, 0xf6, 0xe7, 0x8c, 0x08, 0x03, 0xea, 0xde, 685 0x7a, 0x81, 0xf7, 0x67, 0x78, 0xc4, 0x08, 0x7a, 0xa2, 0x31, 0xd5, 0x0e, 0xf6, 0x9a, 0x60, 0x6e, 686 0x14, 0xf8, 0x99, 0x84, 0x91, 0x0b, 0x8f, 0x16, 0xd4, 0x0c, 0x33, 0x4e, 0x68, 0xe2, 0xf3, 0x34, 687 0x60, 0xa9, 0x5d, 0x11, 0xde, 0x7e, 0xbe, 0x64, 0x93, 0x24, 0x78, 0x5b, 0x45, 0x8a, 0x02, 0x86, 688 0x79, 0x02, 0x1a, 0xc0, 0xd6, 0xca, 0x56, 0x38, 0x99, 0xd8, 0xd5, 0xbb, 0x37, 0x42, 0xb7, 0x36, 689 0x1a, 0x24, 0x13, 0xb4, 0x03, 0xad, 0x29, 0xf9, 0xa0, 0xdd, 0xb1, 0x26, 0xad, 0x10, 0xa0, 0xba, 690 0xe0, 0xe3, 0x82, 0x53, 0xdc, 0xae, 0x2e, 0x4d, 0x17, 0x60, 0x71, 0xb5, 0xe7, 0x05, 0x49, 0x89, 691 0xb1, 0xe1, 0x6e, 0x21, 0x32, 0x53, 0x7d, 0xa1, 0xaf, 0xa1, 0x41, 0xb8, 0x4f, 0xc7, 0x9c, 0xc6, 692 0x38, 0xc5, 0x76, 0xa3, 0x63, 0x74, 0x6b, 0x1e, 0x10, 0x7e, 0xaa, 0x90, 0xf6, 0x3f, 0x06, 0xb4, 693 0x96, 0x2a, 0x04, 0x6d, 0x43, 0xb5, 0xd0, 0x2b, 0x0b, 0xa0, 0x12, 0x4a, 0xa9, 0x08, 0xca, 0xa2, 694 0x2c, 0xe4, 0x9b, 0x8b, 0xf5, 0xed, 0x72, 0x30, 0x57, 0xcb, 0xe1, 0x67, 0x80, 0x29, 0xf9, 0x40, 695 0x92, 0xc8, 0x7f, 0x3f, 0xe6, 0x76, 0x59, 0x54, 0xec, 0x8b, 0xff, 0x51, 0xb1, 0xce, 0xdb, 0x84, 696 0x5e, 0xc5, 0x78, 0x12, 0xe1, 0x57, 0x01, 0xc7, 0x5e, 0x5d, 0x6e, 0xf6, 0x76, 0xcc, 0xdb, 0xdf, 697 0x43, 0x6b, 0x29, 0xb6, 0x10, 0x68, 0x68, 0x02, 0x2d, 0x30, 0xe7, 0x2c, 0x56, 0x9a, 0xf3, 0xe5, 698 0xce, 0x9f, 0x15, 0xd8, 0x5e, 0x3a, 0xf3, 0x34, 0x0c, 0xe7, 0x8c, 0xe1, 0x24, 0x14, 0x3b, 0x88, 699 0x9a, 0x55, 0x3b, 0xe4, 0xeb, 0x4f, 0x18, 0x0b, 0xcb, 0x73, 0xc6, 0xbc, 0x3d, 0x67, 0x46, 0xd0, 700 0x2a, 0x1a, 0x84, 0x70, 0x3e, 0xc7, 0xca, 0x94, 0xa7, 0x77, 0x9a, 0x72, 0x23, 0xd0, 0x51, 0x15, 701 0xe1, 0xe6, 0x79, 0x5e, 0xd1, 0x67, 0xe2, 0x0b, 0xed, 0xc2, 0x26, 0xff, 0x9d, 0xb2, 0xd4, 0xd7, 702 0x1f, 0x44, 0xf6, 0x8a, 0x25, 0x02, 0x87, 0xda, 0xab, 0x3c, 0x01, 0x2b, 0xa6, 0x49, 0xb4, 0xc4, 703 0xad, 0xc8, 0xbe, 0xca, 0x71, 0x9d, 0xfa, 0x02, 0x9a, 0x0c, 0xc7, 0x41, 0xde, 0x0b, 0x73, 0x16, 704 0x73, 0xbb, 0x2a, 0xd4, 0x3e, 0xd2, 0xd5, 0x7a, 0x32, 0x3e, 0x62, 0xb1, 0xd7, 0x60, 0x8b, 0x35, 705 0x47, 0x7d, 0x40, 0x58, 0xb4, 0x05, 0xc9, 0xb0, 0xbf, 0x30, 0xb1, 0x76, 0x8f, 0x89, 0x9b, 0x0b, 706 0x7e, 0x01, 0xa9, 0x0e, 0xf1, 0x83, 0x2c, 0x20, 0x71, 0x30, 0x8e, 0x65, 0x87, 0xd4, 0x44, 0x9d, 707 0x1f, 0x14, 0x58, 0xfb, 0xef, 0x12, 0x34, 0x75, 0x6f, 0x3e, 0x3a, 0x62, 0x8c, 0x07, 0x8f, 0x98, 708 0xd2, 0xc7, 0x47, 0xcc, 0x4b, 0x8d, 0x5a, 0xb4, 0xa2, 0x79, 0x77, 0x2b, 0x6e, 0xdc, 0x9a, 0x09, 709 0xab, 0x03, 0xa1, 0xfc, 0x80, 0x81, 0xb0, 0xf6, 0x90, 0x81, 0x50, 0x79, 0xe8, 0x40, 0x58, 0x71, 710 0xb3, 0xba, 0xea, 0xe6, 0x77, 0xbf, 0x41, 0x6d, 0x61, 0xbf, 0x0d, 0x5b, 0xc3, 0xc1, 0xc5, 0xc0, 711 0x73, 0xcf, 0x7f, 0xf1, 0x47, 0x27, 0xc3, 0xb3, 0x41, 0xdf, 0xfd, 0xd1, 0x1d, 0x1c, 0x5a, 0x9f, 712 0xa1, 0x06, 0x54, 0x8f, 0xdd, 0x13, 0xf7, 0xf8, 0xe0, 0xc8, 0x32, 0x50, 0x15, 0xcc, 0xa3, 0xd3, 713 0x77, 0x56, 0x09, 0x01, 0x54, 0x8e, 0x07, 0x87, 0xee, 0xe8, 0xd8, 0x32, 0x51, 0x0d, 0xca, 0x6f, 714 0xdc, 0xd7, 0x6f, 0xac, 0x32, 0x6a, 0x42, 0xad, 0xef, 0xb9, 0xe7, 0x6e, 0xff, 0xe0, 0xc8, 0x5a, 715 0x7b, 0xf5, 0x13, 0xb4, 0x08, 0xd5, 0xb4, 0x9e, 0x19, 0xbf, 0x3e, 0x8f, 0x28, 0x8d, 0x62, 0xec, 716 0x44, 0x34, 0x0e, 0x92, 0xc8, 0xa1, 0x2c, 0xea, 0x45, 0x38, 0x11, 0x7f, 0xf3, 0x9e, 0x0c, 0x05, 717 0x33, 0xc2, 0x7b, 0x37, 0x7f, 0xfc, 0x1f, 0xd4, 0xf2, 0xaf, 0x92, 0xf9, 0xda, 0x3b, 0x18, 0x57, 718 0x04, 0x75, 0xff, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc3, 0x5d, 0x01, 0x75, 0x70, 0x08, 0x00, 719 0x00, 720} 721