mirror of
https://github.com/aquasecurity/trivy.git
synced 2025-12-23 15:37:50 -08:00
refactor: move PkgRef under PkgIdentifier (#5831)
Signed-off-by: knqyf263 <knqyf263@gmail.com>
This commit is contained in:
@@ -42,13 +42,19 @@ func TestSBOM(t *testing.T) {
|
|||||||
Target: "testdata/fixtures/sbom/centos-7-cyclonedx.json (centos 7.6.1810)",
|
Target: "testdata/fixtures/sbom/centos-7-cyclonedx.json (centos 7.6.1810)",
|
||||||
Vulnerabilities: []types.DetectedVulnerability{
|
Vulnerabilities: []types.DetectedVulnerability{
|
||||||
{
|
{
|
||||||
PkgRef: "pkg:rpm/centos/bash@4.2.46-31.el7?arch=x86_64&distro=centos-7.6.1810",
|
PkgIdentifier: ftypes.PkgIdentifier{
|
||||||
|
BOMRef: "pkg:rpm/centos/bash@4.2.46-31.el7?arch=x86_64&distro=centos-7.6.1810",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
PkgRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
PkgIdentifier: ftypes.PkgIdentifier{
|
||||||
|
BOMRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
PkgRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
PkgIdentifier: ftypes.PkgIdentifier{
|
||||||
|
BOMRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -89,13 +95,19 @@ func TestSBOM(t *testing.T) {
|
|||||||
Target: "testdata/fixtures/sbom/centos-7-cyclonedx.intoto.jsonl (centos 7.6.1810)",
|
Target: "testdata/fixtures/sbom/centos-7-cyclonedx.intoto.jsonl (centos 7.6.1810)",
|
||||||
Vulnerabilities: []types.DetectedVulnerability{
|
Vulnerabilities: []types.DetectedVulnerability{
|
||||||
{
|
{
|
||||||
PkgRef: "pkg:rpm/centos/bash@4.2.46-31.el7?arch=x86_64&distro=centos-7.6.1810",
|
PkgIdentifier: ftypes.PkgIdentifier{
|
||||||
|
BOMRef: "pkg:rpm/centos/bash@4.2.46-31.el7?arch=x86_64&distro=centos-7.6.1810",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
PkgRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
PkgIdentifier: ftypes.PkgIdentifier{
|
||||||
|
BOMRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
PkgRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
PkgIdentifier: ftypes.PkgIdentifier{
|
||||||
|
BOMRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -116,17 +128,6 @@ func TestSBOM(t *testing.T) {
|
|||||||
Results: types.Results{
|
Results: types.Results{
|
||||||
{
|
{
|
||||||
Target: "testdata/fixtures/sbom/centos-7-spdx.txt (centos 7.6.1810)",
|
Target: "testdata/fixtures/sbom/centos-7-spdx.txt (centos 7.6.1810)",
|
||||||
Vulnerabilities: []types.DetectedVulnerability{
|
|
||||||
{
|
|
||||||
PkgRef: "pkg:rpm/centos/bash@4.2.46-31.el7?arch=x86_64&distro=centos-7.6.1810",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
PkgRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
PkgRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -145,17 +146,6 @@ func TestSBOM(t *testing.T) {
|
|||||||
Results: types.Results{
|
Results: types.Results{
|
||||||
{
|
{
|
||||||
Target: "testdata/fixtures/sbom/centos-7-spdx.json (centos 7.6.1810)",
|
Target: "testdata/fixtures/sbom/centos-7-spdx.json (centos 7.6.1810)",
|
||||||
Vulnerabilities: []types.DetectedVulnerability{
|
|
||||||
{
|
|
||||||
PkgRef: "pkg:rpm/centos/bash@4.2.46-31.el7?arch=x86_64&distro=centos-7.6.1810",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
PkgRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
PkgRef: "pkg:rpm/centos/openssl-libs@1.0.2k-16.el7?arch=x86_64&epoch=1&distro=centos-7.6.1810",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -223,12 +213,11 @@ func compareSBOMReports(t *testing.T, wantFile, gotFile string, overrideWant typ
|
|||||||
for i, result := range overrideWant.Results {
|
for i, result := range overrideWant.Results {
|
||||||
want.Results[i].Target = result.Target
|
want.Results[i].Target = result.Target
|
||||||
for j, vuln := range result.Vulnerabilities {
|
for j, vuln := range result.Vulnerabilities {
|
||||||
want.Results[i].Vulnerabilities[j].PkgRef = vuln.PkgRef
|
if vuln.PkgIdentifier.PURL != nil {
|
||||||
if vuln.PkgIdentifier.Empty() {
|
want.Results[i].Vulnerabilities[j].PkgIdentifier.PURL = vuln.PkgIdentifier.PURL
|
||||||
continue
|
|
||||||
}
|
}
|
||||||
want.Results[i].Vulnerabilities[j].PkgIdentifier = ftypes.PkgIdentifier{
|
if vuln.PkgIdentifier.BOMRef != "" {
|
||||||
PURL: vuln.PkgIdentifier.PURL,
|
want.Results[i].Vulnerabilities[j].PkgIdentifier.BOMRef = vuln.PkgIdentifier.BOMRef
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
12
integration/testdata/conda-spdx.json.golden
vendored
12
integration/testdata/conda-spdx.json.golden
vendored
@@ -22,7 +22,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "openssl",
|
"name": "openssl",
|
||||||
"SPDXID": "SPDXRef-Package-a4bad823866cc210",
|
"SPDXID": "SPDXRef-Package-38e5db7a21fc70a8",
|
||||||
"versionInfo": "1.1.1q",
|
"versionInfo": "1.1.1q",
|
||||||
"supplier": "NOASSERTION",
|
"supplier": "NOASSERTION",
|
||||||
"downloadLocation": "NONE",
|
"downloadLocation": "NONE",
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "pip",
|
"name": "pip",
|
||||||
"SPDXID": "SPDXRef-Package-e8a0eb2c9979a021",
|
"SPDXID": "SPDXRef-Package-f9844c873ead5dbe",
|
||||||
"versionInfo": "22.2.2",
|
"versionInfo": "22.2.2",
|
||||||
"supplier": "NOASSERTION",
|
"supplier": "NOASSERTION",
|
||||||
"downloadLocation": "NONE",
|
"downloadLocation": "NONE",
|
||||||
@@ -110,21 +110,21 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"spdxElementId": "SPDXRef-Application-ee5ef1aa4ac89125",
|
"spdxElementId": "SPDXRef-Application-ee5ef1aa4ac89125",
|
||||||
"relatedSpdxElement": "SPDXRef-Package-a4bad823866cc210",
|
"relatedSpdxElement": "SPDXRef-Package-38e5db7a21fc70a8",
|
||||||
"relationshipType": "CONTAINS"
|
"relationshipType": "CONTAINS"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"spdxElementId": "SPDXRef-Package-a4bad823866cc210",
|
"spdxElementId": "SPDXRef-Package-38e5db7a21fc70a8",
|
||||||
"relatedSpdxElement": "SPDXRef-File-600e5e0110a84891",
|
"relatedSpdxElement": "SPDXRef-File-600e5e0110a84891",
|
||||||
"relationshipType": "CONTAINS"
|
"relationshipType": "CONTAINS"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"spdxElementId": "SPDXRef-Application-ee5ef1aa4ac89125",
|
"spdxElementId": "SPDXRef-Application-ee5ef1aa4ac89125",
|
||||||
"relatedSpdxElement": "SPDXRef-Package-e8a0eb2c9979a021",
|
"relatedSpdxElement": "SPDXRef-Package-f9844c873ead5dbe",
|
||||||
"relationshipType": "CONTAINS"
|
"relationshipType": "CONTAINS"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"spdxElementId": "SPDXRef-Package-e8a0eb2c9979a021",
|
"spdxElementId": "SPDXRef-Package-f9844c873ead5dbe",
|
||||||
"relatedSpdxElement": "SPDXRef-File-7eb62e2a3edddc0a",
|
"relatedSpdxElement": "SPDXRef-File-7eb62e2a3edddc0a",
|
||||||
"relationshipType": "CONTAINS"
|
"relationshipType": "CONTAINS"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,14 +29,14 @@
|
|||||||
"VulnerabilityID": "CVE-2019-18276",
|
"VulnerabilityID": "CVE-2019-18276",
|
||||||
"PkgName": "bash",
|
"PkgName": "bash",
|
||||||
"PkgIdentifier": {
|
"PkgIdentifier": {
|
||||||
"PURL": "pkg:deb/debian/bash@5.0-4?distro=debian-10.2"
|
"PURL": "pkg:deb/debian/bash@5.0-4?distro=debian-10.2",
|
||||||
|
"BOMRef": "pkg:deb/debian/bash@5.0-4?distro=debian-10.2"
|
||||||
},
|
},
|
||||||
"InstalledVersion": "5.0-4",
|
"InstalledVersion": "5.0-4",
|
||||||
"Status": "affected",
|
"Status": "affected",
|
||||||
"Layer": {},
|
"Layer": {},
|
||||||
"SeveritySource": "debian",
|
"SeveritySource": "debian",
|
||||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18276",
|
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18276",
|
||||||
"PkgRef": "pkg:deb/debian/bash@5.0-4?distro=debian-10.2",
|
|
||||||
"DataSource": {
|
"DataSource": {
|
||||||
"ID": "debian",
|
"ID": "debian",
|
||||||
"Name": "Debian Security Tracker",
|
"Name": "Debian Security Tracker",
|
||||||
@@ -92,7 +92,8 @@
|
|||||||
],
|
],
|
||||||
"PkgName": "libidn2-0",
|
"PkgName": "libidn2-0",
|
||||||
"PkgIdentifier": {
|
"PkgIdentifier": {
|
||||||
"PURL": "pkg:deb/debian/libidn2-0@2.0.5-1?distro=debian-10.2"
|
"PURL": "pkg:deb/debian/libidn2-0@2.0.5-1?distro=debian-10.2",
|
||||||
|
"BOMRef": "pkg:deb/debian/libidn2-0@2.0.5-1?distro=debian-10.2"
|
||||||
},
|
},
|
||||||
"InstalledVersion": "2.0.5-1",
|
"InstalledVersion": "2.0.5-1",
|
||||||
"FixedVersion": "2.0.5-1+deb10u1",
|
"FixedVersion": "2.0.5-1+deb10u1",
|
||||||
@@ -100,7 +101,6 @@
|
|||||||
"Layer": {},
|
"Layer": {},
|
||||||
"SeveritySource": "nvd",
|
"SeveritySource": "nvd",
|
||||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18224",
|
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18224",
|
||||||
"PkgRef": "pkg:deb/debian/libidn2-0@2.0.5-1?distro=debian-10.2",
|
|
||||||
"DataSource": {
|
"DataSource": {
|
||||||
"ID": "debian",
|
"ID": "debian",
|
||||||
"Name": "Debian Security Tracker",
|
"Name": "Debian Security Tracker",
|
||||||
@@ -161,7 +161,8 @@
|
|||||||
"PkgName": "activesupport",
|
"PkgName": "activesupport",
|
||||||
"PkgPath": "var/lib/gems/2.5.0/specifications/activesupport-6.0.2.1.gemspec",
|
"PkgPath": "var/lib/gems/2.5.0/specifications/activesupport-6.0.2.1.gemspec",
|
||||||
"PkgIdentifier": {
|
"PkgIdentifier": {
|
||||||
"PURL": "pkg:gem/activesupport@6.0.2.1"
|
"PURL": "pkg:gem/activesupport@6.0.2.1",
|
||||||
|
"BOMRef": "pkg:gem/activesupport@6.0.2.1?file_path=var%2Flib%2Fgems%2F2.5.0%2Fspecifications%2Factivesupport-6.0.2.1.gemspec"
|
||||||
},
|
},
|
||||||
"InstalledVersion": "6.0.2.1",
|
"InstalledVersion": "6.0.2.1",
|
||||||
"FixedVersion": "6.0.3.1, 5.2.4.3",
|
"FixedVersion": "6.0.3.1, 5.2.4.3",
|
||||||
@@ -169,7 +170,6 @@
|
|||||||
"Layer": {},
|
"Layer": {},
|
||||||
"SeveritySource": "ghsa",
|
"SeveritySource": "ghsa",
|
||||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2020-8165",
|
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2020-8165",
|
||||||
"PkgRef": "pkg:gem/activesupport@6.0.2.1?file_path=var%2Flib%2Fgems%2F2.5.0%2Fspecifications%2Factivesupport-6.0.2.1.gemspec",
|
|
||||||
"DataSource": {
|
"DataSource": {
|
||||||
"ID": "ghsa",
|
"ID": "ghsa",
|
||||||
"Name": "GitHub Security Advisory RubyGems",
|
"Name": "GitHub Security Advisory RubyGems",
|
||||||
|
|||||||
@@ -34,7 +34,8 @@
|
|||||||
"VulnerabilityID": "CVE-2023-2431",
|
"VulnerabilityID": "CVE-2023-2431",
|
||||||
"PkgName": "k8s.io/kubelet",
|
"PkgName": "k8s.io/kubelet",
|
||||||
"PkgIdentifier": {
|
"PkgIdentifier": {
|
||||||
"PURL": "pkg:k8s/k8s.io%2Fkubelet@1.27.0"
|
"PURL": "pkg:k8s/k8s.io%2Fkubelet@1.27.0",
|
||||||
|
"BOMRef": "pkg:k8s/k8s.io%2Fkubelet@1.27.0"
|
||||||
},
|
},
|
||||||
"InstalledVersion": "1.27.0",
|
"InstalledVersion": "1.27.0",
|
||||||
"FixedVersion": "1.24.14, 1.25.9, 1.26.4, 1.27.1",
|
"FixedVersion": "1.24.14, 1.25.9, 1.26.4, 1.27.1",
|
||||||
@@ -42,7 +43,6 @@
|
|||||||
"Layer": {},
|
"Layer": {},
|
||||||
"SeveritySource": "k8s",
|
"SeveritySource": "k8s",
|
||||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2023-2431",
|
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2023-2431",
|
||||||
"PkgRef": "pkg:k8s/k8s.io%2Fkubelet@1.27.0",
|
|
||||||
"DataSource": {
|
"DataSource": {
|
||||||
"ID": "k8s",
|
"ID": "k8s",
|
||||||
"Name": "Official Kubernetes CVE Feed",
|
"Name": "Official Kubernetes CVE Feed",
|
||||||
|
|||||||
@@ -33,7 +33,6 @@ func detect(driver Driver, libs []ftypes.Package) ([]types.DetectedVulnerability
|
|||||||
for i := range vulns {
|
for i := range vulns {
|
||||||
vulns[i].Layer = lib.Layer
|
vulns[i].Layer = lib.Layer
|
||||||
vulns[i].PkgPath = lib.FilePath
|
vulns[i].PkgPath = lib.FilePath
|
||||||
vulns[i].PkgRef = lib.Ref
|
|
||||||
vulns[i].PkgIdentifier = lib.Identifier
|
vulns[i].PkgIdentifier = lib.Identifier
|
||||||
}
|
}
|
||||||
vulnerabilities = append(vulnerabilities, vulns...)
|
vulnerabilities = append(vulnerabilities, vulns...)
|
||||||
|
|||||||
@@ -90,7 +90,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: installed,
|
InstalledVersion: installed,
|
||||||
FixedVersion: fixedVersion.String(),
|
FixedVersion: fixedVersion.String(),
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
DataSource: adv.DataSource,
|
DataSource: adv.DataSource,
|
||||||
|
|||||||
@@ -130,7 +130,6 @@ func (s *Scanner) Detect(osVer string, repo *ftypes.Repository, pkgs []ftypes.Pa
|
|||||||
InstalledVersion: utils.FormatVersion(pkg),
|
InstalledVersion: utils.FormatVersion(pkg),
|
||||||
FixedVersion: adv.FixedVersion,
|
FixedVersion: adv.FixedVersion,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Custom: adv.Custom,
|
Custom: adv.Custom,
|
||||||
DataSource: adv.DataSource,
|
DataSource: adv.DataSource,
|
||||||
|
|||||||
@@ -103,7 +103,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: installed,
|
InstalledVersion: installed,
|
||||||
FixedVersion: adv.FixedVersion,
|
FixedVersion: adv.FixedVersion,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
Custom: adv.Custom,
|
Custom: adv.Custom,
|
||||||
|
|||||||
@@ -81,7 +81,6 @@ func (s *Scanner) Detect(_ string, _ *ftypes.Repository, pkgs []ftypes.Package)
|
|||||||
InstalledVersion: installed,
|
InstalledVersion: installed,
|
||||||
FixedVersion: adv.FixedVersion,
|
FixedVersion: adv.FixedVersion,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Custom: adv.Custom,
|
Custom: adv.Custom,
|
||||||
DataSource: adv.DataSource,
|
DataSource: adv.DataSource,
|
||||||
|
|||||||
@@ -103,7 +103,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: utils.FormatVersion(pkg),
|
InstalledVersion: utils.FormatVersion(pkg),
|
||||||
FixedVersion: adv.FixedVersion,
|
FixedVersion: adv.FixedVersion,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Status: adv.Status,
|
Status: adv.Status,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
|
|||||||
@@ -49,7 +49,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
VulnerabilityID: adv.VulnerabilityID,
|
VulnerabilityID: adv.VulnerabilityID,
|
||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: utils.FormatVersion(pkg),
|
InstalledVersion: utils.FormatVersion(pkg),
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
DataSource: adv.DataSource,
|
DataSource: adv.DataSource,
|
||||||
|
|||||||
@@ -86,7 +86,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
PkgID: pkg.ID,
|
PkgID: pkg.ID,
|
||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: installed,
|
InstalledVersion: installed,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
Custom: adv.Custom,
|
Custom: adv.Custom,
|
||||||
|
|||||||
@@ -81,7 +81,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
PkgID: pkg.ID,
|
PkgID: pkg.ID,
|
||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: installed,
|
InstalledVersion: installed,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
Custom: adv.Custom,
|
Custom: adv.Custom,
|
||||||
|
|||||||
@@ -157,7 +157,6 @@ func (s *Scanner) detect(osVer string, pkg ftypes.Package) ([]types.DetectedVuln
|
|||||||
PkgID: pkg.ID,
|
PkgID: pkg.ID,
|
||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: utils.FormatVersion(pkg),
|
InstalledVersion: utils.FormatVersion(pkg),
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Status: adv.Status,
|
Status: adv.Status,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
|
|||||||
@@ -90,7 +90,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: installed,
|
InstalledVersion: installed,
|
||||||
FixedVersion: fixedVersion.String(),
|
FixedVersion: fixedVersion.String(),
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
DataSource: adv.DataSource,
|
DataSource: adv.DataSource,
|
||||||
|
|||||||
@@ -133,7 +133,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
PkgID: pkg.ID,
|
PkgID: pkg.ID,
|
||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: installed,
|
InstalledVersion: installed,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
Custom: adv.Custom,
|
Custom: adv.Custom,
|
||||||
|
|||||||
@@ -123,7 +123,6 @@ func (s *Scanner) Detect(osVer string, _ *ftypes.Repository, pkgs []ftypes.Packa
|
|||||||
PkgName: pkg.Name,
|
PkgName: pkg.Name,
|
||||||
InstalledVersion: utils.FormatVersion(pkg),
|
InstalledVersion: utils.FormatVersion(pkg),
|
||||||
FixedVersion: adv.FixedVersion,
|
FixedVersion: adv.FixedVersion,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
Custom: adv.Custom,
|
Custom: adv.Custom,
|
||||||
|
|||||||
@@ -81,7 +81,6 @@ func (s *Scanner) Detect(_ string, _ *ftypes.Repository, pkgs []ftypes.Package)
|
|||||||
InstalledVersion: installed,
|
InstalledVersion: installed,
|
||||||
FixedVersion: adv.FixedVersion,
|
FixedVersion: adv.FixedVersion,
|
||||||
Layer: pkg.Layer,
|
Layer: pkg.Layer,
|
||||||
PkgRef: pkg.Ref,
|
|
||||||
PkgIdentifier: pkg.Identifier,
|
PkgIdentifier: pkg.Identifier,
|
||||||
Custom: adv.Custom,
|
Custom: adv.Custom,
|
||||||
DataSource: adv.DataSource,
|
DataSource: adv.DataSource,
|
||||||
|
|||||||
@@ -33,7 +33,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "co.elastic.apm:apm-agent",
|
Name: "co.elastic.apm:apm-agent",
|
||||||
Version: "1.36.0",
|
Version: "1.36.0",
|
||||||
Ref: "pkg:maven/co.elastic.apm/apm-agent@1.36.0",
|
|
||||||
FilePath: "opt/bitnami/elasticsearch",
|
FilePath: "opt/bitnami/elasticsearch",
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
@@ -49,7 +48,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "co.elastic.apm:apm-agent-cached-lookup-key",
|
Name: "co.elastic.apm:apm-agent-cached-lookup-key",
|
||||||
Version: "1.36.0",
|
Version: "1.36.0",
|
||||||
Ref: "pkg:maven/co.elastic.apm/apm-agent-cached-lookup-key@1.36.0",
|
|
||||||
FilePath: "opt/bitnami/elasticsearch",
|
FilePath: "opt/bitnami/elasticsearch",
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
@@ -65,7 +63,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "co.elastic.apm:apm-agent-common",
|
Name: "co.elastic.apm:apm-agent-common",
|
||||||
Version: "1.36.0",
|
Version: "1.36.0",
|
||||||
Ref: "pkg:maven/co.elastic.apm/apm-agent-common@1.36.0",
|
|
||||||
FilePath: "opt/bitnami/elasticsearch",
|
FilePath: "opt/bitnami/elasticsearch",
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
@@ -81,7 +78,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "co.elastic.apm:apm-agent-core",
|
Name: "co.elastic.apm:apm-agent-core",
|
||||||
Version: "1.36.0",
|
Version: "1.36.0",
|
||||||
Ref: "pkg:maven/co.elastic.apm/apm-agent-core@1.36.0",
|
|
||||||
FilePath: "opt/bitnami/elasticsearch",
|
FilePath: "opt/bitnami/elasticsearch",
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
@@ -103,7 +99,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "elasticsearch",
|
Name: "elasticsearch",
|
||||||
Version: "8.9.1",
|
Version: "8.9.1",
|
||||||
Ref: "pkg:bitnami/elasticsearch@8.9.1?arch=arm64",
|
|
||||||
Arch: "arm64",
|
Arch: "arm64",
|
||||||
Licenses: []string{"Elastic-2.0"},
|
Licenses: []string{"Elastic-2.0"},
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
@@ -141,7 +136,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
FilePath: "opt/bitnami/elasticsearch/modules/apm/elastic-apm-agent-1.36.0.jar",
|
FilePath: "opt/bitnami/elasticsearch/modules/apm/elastic-apm-agent-1.36.0.jar",
|
||||||
Name: "co.elastic.apm:apm-agent",
|
Name: "co.elastic.apm:apm-agent",
|
||||||
Version: "1.36.0",
|
Version: "1.36.0",
|
||||||
Ref: "pkg:maven/co.elastic.apm/apm-agent@1.36.0",
|
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
PackageURL: packageurl.PackageURL{
|
PackageURL: packageurl.PackageURL{
|
||||||
@@ -152,13 +146,13 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "opt/bitnami/elasticsearch/modules/apm/elastic-apm-agent-1.36.0.jar",
|
FilePath: "opt/bitnami/elasticsearch/modules/apm/elastic-apm-agent-1.36.0.jar",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:maven/co.elastic.apm/apm-agent@1.36.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
FilePath: "opt/bitnami/elasticsearch/modules/apm/elastic-apm-agent-1.36.0.jar",
|
FilePath: "opt/bitnami/elasticsearch/modules/apm/elastic-apm-agent-1.36.0.jar",
|
||||||
Name: "co.elastic.apm:apm-agent-cached-lookup-key",
|
Name: "co.elastic.apm:apm-agent-cached-lookup-key",
|
||||||
Version: "1.36.0",
|
Version: "1.36.0",
|
||||||
Ref: "pkg:maven/co.elastic.apm/apm-agent-cached-lookup-key@1.36.0",
|
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
PackageURL: packageurl.PackageURL{
|
PackageURL: packageurl.PackageURL{
|
||||||
@@ -169,6 +163,7 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "opt/bitnami/elasticsearch/modules/apm/elastic-apm-agent-1.36.0.jar",
|
FilePath: "opt/bitnami/elasticsearch/modules/apm/elastic-apm-agent-1.36.0.jar",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:maven/co.elastic.apm/apm-agent-cached-lookup-key@1.36.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -190,7 +185,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "gdal",
|
Name: "gdal",
|
||||||
Version: "3.7.1",
|
Version: "3.7.1",
|
||||||
Ref: "pkg:bitnami/gdal@3.7.1",
|
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
@@ -205,7 +199,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "geos",
|
Name: "geos",
|
||||||
Version: "3.8.3",
|
Version: "3.8.3",
|
||||||
Ref: "pkg:bitnami/geos@3.8.3",
|
|
||||||
Licenses: []string{"LGPL-2.1-only"},
|
Licenses: []string{"LGPL-2.1-only"},
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
@@ -220,7 +213,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "postgresql",
|
Name: "postgresql",
|
||||||
Version: "15.3.0",
|
Version: "15.3.0",
|
||||||
Ref: "pkg:bitnami/postgresql@15.3.0",
|
|
||||||
Licenses: []string{"PostgreSQL"},
|
Licenses: []string{"PostgreSQL"},
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
@@ -235,7 +227,6 @@ func Test_sbomAnalyzer_Analyze(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "proj",
|
Name: "proj",
|
||||||
Version: "6.3.2",
|
Version: "6.3.2",
|
||||||
Ref: "pkg:bitnami/proj@6.3.2",
|
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
|
|||||||
@@ -280,7 +280,6 @@ func TestApplyLayers(t *testing.T) {
|
|||||||
Arch: "all",
|
Arch: "all",
|
||||||
SrcName: "adduser",
|
SrcName: "adduser",
|
||||||
SrcVersion: "3.118+deb11u1",
|
SrcVersion: "3.118+deb11u1",
|
||||||
Ref: "pkg:deb/debian/adduser@3.118%2Bdeb11u1?arch=all&distro=debian-11.8",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
Digest: "sha256:e67fdae3559346105027c63e7fb032bba57e62b1fe9f2da23e6fdfb56384e00b",
|
Digest: "sha256:e67fdae3559346105027c63e7fb032bba57e62b1fe9f2da23e6fdfb56384e00b",
|
||||||
DiffID: "sha256:633f5bf471f7595b236a21e62dc60beef321db45916363a02ad5af02d794d497",
|
DiffID: "sha256:633f5bf471f7595b236a21e62dc60beef321db45916363a02ad5af02d794d497",
|
||||||
@@ -319,7 +318,6 @@ func TestApplyLayers(t *testing.T) {
|
|||||||
Arch: "all",
|
Arch: "all",
|
||||||
SrcName: "adduser",
|
SrcName: "adduser",
|
||||||
SrcVersion: "3.118+deb11u1",
|
SrcVersion: "3.118+deb11u1",
|
||||||
Ref: "pkg:deb/debian/adduser@3.118%2Bdeb11u1?arch=all&distro=debian-11.8",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
Digest: "sha256:e67fdae3559346105027c63e7fb032bba57e62b1fe9f2da23e6fdfb56384e00b",
|
Digest: "sha256:e67fdae3559346105027c63e7fb032bba57e62b1fe9f2da23e6fdfb56384e00b",
|
||||||
DiffID: "sha256:633f5bf471f7595b236a21e62dc60beef321db45916363a02ad5af02d794d497",
|
DiffID: "sha256:633f5bf471f7595b236a21e62dc60beef321db45916363a02ad5af02d794d497",
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ func TestArtifact_InspectRekorAttestation(t *testing.T) {
|
|||||||
putBlobExpectations: []cache.ArtifactCachePutBlobExpectation{
|
putBlobExpectations: []cache.ArtifactCachePutBlobExpectation{
|
||||||
{
|
{
|
||||||
Args: cache.ArtifactCachePutBlobArgs{
|
Args: cache.ArtifactCachePutBlobArgs{
|
||||||
BlobID: "sha256:754c66ef82bae2e07dc6e7a7bc42f078e1f48cbbc5b9124d18f1c18a48e1ad31",
|
BlobID: "sha256:5c9fad635c53ddafd1b5248fcd989b6c0f311c91a2fe2a206c7d67a715335fa1",
|
||||||
BlobInfo: types.BlobInfo{
|
BlobInfo: types.BlobInfo{
|
||||||
SchemaVersion: types.BlobJSONSchemaVersion,
|
SchemaVersion: types.BlobJSONSchemaVersion,
|
||||||
OS: types.OS{
|
OS: types.OS{
|
||||||
@@ -98,11 +98,11 @@ func TestArtifact_InspectRekorAttestation(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.2",
|
||||||
},
|
},
|
||||||
SrcName: "musl",
|
SrcName: "musl",
|
||||||
SrcVersion: "1.2.3-r0",
|
SrcVersion: "1.2.3-r0",
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
Ref: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.2",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:994393dc58e7931862558d06e46aa2bb17487044f670f310dffe1d24e4d1eec7",
|
DiffID: "sha256:994393dc58e7931862558d06e46aa2bb17487044f670f310dffe1d24e4d1eec7",
|
||||||
},
|
},
|
||||||
@@ -121,9 +121,9 @@ func TestArtifact_InspectRekorAttestation(t *testing.T) {
|
|||||||
want: types.ArtifactReference{
|
want: types.ArtifactReference{
|
||||||
Name: "test/image:10",
|
Name: "test/image:10",
|
||||||
Type: types.ArtifactCycloneDX,
|
Type: types.ArtifactCycloneDX,
|
||||||
ID: "sha256:754c66ef82bae2e07dc6e7a7bc42f078e1f48cbbc5b9124d18f1c18a48e1ad31",
|
ID: "sha256:5c9fad635c53ddafd1b5248fcd989b6c0f311c91a2fe2a206c7d67a715335fa1",
|
||||||
BlobIDs: []string{
|
BlobIDs: []string{
|
||||||
"sha256:754c66ef82bae2e07dc6e7a7bc42f078e1f48cbbc5b9124d18f1c18a48e1ad31",
|
"sha256:5c9fad635c53ddafd1b5248fcd989b6c0f311c91a2fe2a206c7d67a715335fa1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -224,7 +224,7 @@ func TestArtifact_inspectOCIReferrerSBOM(t *testing.T) {
|
|||||||
putBlobExpectations: []cache.ArtifactCachePutBlobExpectation{
|
putBlobExpectations: []cache.ArtifactCachePutBlobExpectation{
|
||||||
{
|
{
|
||||||
Args: cache.ArtifactCachePutBlobArgs{
|
Args: cache.ArtifactCachePutBlobArgs{
|
||||||
BlobID: "sha256:c4e3bd56d4b5f9634c918d0953f7667928c2410e23bdacb299bfe5802217809a",
|
BlobID: "sha256:fb9379cfc2aeff911515f04ca04300a8c0609c8a2a19b4a3b05a984802fa44eb",
|
||||||
BlobInfo: types.BlobInfo{
|
BlobInfo: types.BlobInfo{
|
||||||
SchemaVersion: types.BlobJSONSchemaVersion,
|
SchemaVersion: types.BlobJSONSchemaVersion,
|
||||||
Applications: []types.Application{
|
Applications: []types.Application{
|
||||||
@@ -243,8 +243,8 @@ func TestArtifact_inspectOCIReferrerSBOM(t *testing.T) {
|
|||||||
Version: "v1.0.0",
|
Version: "v1.0.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:golang/github.com/opencontainers/go-digest@v1.0.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:golang/github.com/opencontainers/go-digest@v1.0.0",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Name: "golang.org/x/sync",
|
Name: "golang.org/x/sync",
|
||||||
@@ -258,8 +258,8 @@ func TestArtifact_inspectOCIReferrerSBOM(t *testing.T) {
|
|||||||
Version: "v0.1.0",
|
Version: "v0.1.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:golang/golang.org/x/sync@v0.1.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:golang/golang.org/x/sync@v0.1.0",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -271,9 +271,9 @@ func TestArtifact_inspectOCIReferrerSBOM(t *testing.T) {
|
|||||||
want: types.ArtifactReference{
|
want: types.ArtifactReference{
|
||||||
Name: registry + "/test/image:10",
|
Name: registry + "/test/image:10",
|
||||||
Type: types.ArtifactCycloneDX,
|
Type: types.ArtifactCycloneDX,
|
||||||
ID: "sha256:c4e3bd56d4b5f9634c918d0953f7667928c2410e23bdacb299bfe5802217809a",
|
ID: "sha256:fb9379cfc2aeff911515f04ca04300a8c0609c8a2a19b4a3b05a984802fa44eb",
|
||||||
BlobIDs: []string{
|
BlobIDs: []string{
|
||||||
"sha256:c4e3bd56d4b5f9634c918d0953f7667928c2410e23bdacb299bfe5802217809a",
|
"sha256:fb9379cfc2aeff911515f04ca04300a8c0609c8a2a19b4a3b05a984802fa44eb",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
filePath: filepath.Join("testdata", "bom.json"),
|
filePath: filepath.Join("testdata", "bom.json"),
|
||||||
putBlobExpectation: cache.ArtifactCachePutBlobExpectation{
|
putBlobExpectation: cache.ArtifactCachePutBlobExpectation{
|
||||||
Args: cache.ArtifactCachePutBlobArgs{
|
Args: cache.ArtifactCachePutBlobArgs{
|
||||||
BlobID: "sha256:c1cc58e08422fd7606a8e9ee2b42bf722b7af8b703b895461c23b83956f33227",
|
BlobID: "sha256:5d7b14f463a56006dd4060d04295afbda468350f2e5a786ae48d18fd02fb9a89",
|
||||||
BlobInfo: types.BlobInfo{
|
BlobInfo: types.BlobInfo{
|
||||||
SchemaVersion: types.BlobJSONSchemaVersion,
|
SchemaVersion: types.BlobJSONSchemaVersion,
|
||||||
OS: types.OS{
|
OS: types.OS{
|
||||||
@@ -46,7 +46,6 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
SrcName: "musl",
|
SrcName: "musl",
|
||||||
SrcVersion: "1.2.3-r0",
|
SrcVersion: "1.2.3-r0",
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
Ref: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:dd565ff850e7003356e2b252758f9bdc1ff2803f61e995e24c7844f6297f8fc3",
|
DiffID: "sha256:dd565ff850e7003356e2b252758f9bdc1ff2803f61e995e24c7844f6297f8fc3",
|
||||||
},
|
},
|
||||||
@@ -65,6 +64,7 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -78,7 +78,6 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "pear/log",
|
Name: "pear/log",
|
||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -91,13 +90,13 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/log@1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
||||||
Name: "pear/pear_exception",
|
Name: "pear/pear_exception",
|
||||||
Version: "v1.0.0",
|
Version: "v1.0.0",
|
||||||
Ref: "pkg:composer/pear/pear_exception@v1.0.0",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -110,6 +109,7 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
Version: "v1.0.0",
|
Version: "v1.0.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/pear_exception@v1.0.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -121,7 +121,6 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "github.com/package-url/packageurl-go",
|
Name: "github.com/package-url/packageurl-go",
|
||||||
Version: "v0.1.1-0.20220203205134-d70459300c8a",
|
Version: "v0.1.1-0.20220203205134-d70459300c8a",
|
||||||
Ref: "pkg:golang/github.com/package-url/packageurl-go@v0.1.1-0.20220203205134-d70459300c8a",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -134,6 +133,7 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
Version: "v0.1.1-0.20220203205134-d70459300c8a",
|
Version: "v0.1.1-0.20220203205134-d70459300c8a",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:golang/github.com/package-url/packageurl-go@v0.1.1-0.20220203205134-d70459300c8a",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -144,7 +144,6 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
Libraries: types.Packages{
|
Libraries: types.Packages{
|
||||||
{
|
{
|
||||||
Name: "org.codehaus.mojo:child-project",
|
Name: "org.codehaus.mojo:child-project",
|
||||||
Ref: "pkg:maven/org.codehaus.mojo/child-project@1.0?file_path=app%2Fmaven%2Ftarget%2Fchild-project-1.0.jar",
|
|
||||||
Version: "1.0",
|
Version: "1.0",
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
@@ -160,6 +159,7 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "app/maven/target/child-project-1.0.jar",
|
FilePath: "app/maven/target/child-project-1.0.jar",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:maven/org.codehaus.mojo/child-project@1.0?file_path=app%2Fmaven%2Ftarget%2Fchild-project-1.0.jar",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -171,7 +171,6 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "bootstrap",
|
Name: "bootstrap",
|
||||||
Version: "5.0.2",
|
Version: "5.0.2",
|
||||||
Ref: "pkg:npm/bootstrap@5.0.2?file_path=app%2Fapp%2Fpackage.json",
|
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
@@ -186,6 +185,7 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "app/app/package.json",
|
FilePath: "app/app/package.json",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:npm/bootstrap@5.0.2?file_path=app%2Fapp%2Fpackage.json",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -198,9 +198,9 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
want: types.ArtifactReference{
|
want: types.ArtifactReference{
|
||||||
Name: filepath.Join("testdata", "bom.json"),
|
Name: filepath.Join("testdata", "bom.json"),
|
||||||
Type: types.ArtifactCycloneDX,
|
Type: types.ArtifactCycloneDX,
|
||||||
ID: "sha256:c1cc58e08422fd7606a8e9ee2b42bf722b7af8b703b895461c23b83956f33227",
|
ID: "sha256:5d7b14f463a56006dd4060d04295afbda468350f2e5a786ae48d18fd02fb9a89",
|
||||||
BlobIDs: []string{
|
BlobIDs: []string{
|
||||||
"sha256:c1cc58e08422fd7606a8e9ee2b42bf722b7af8b703b895461c23b83956f33227",
|
"sha256:5d7b14f463a56006dd4060d04295afbda468350f2e5a786ae48d18fd02fb9a89",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -209,7 +209,7 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
filePath: filepath.Join("testdata", "sbom.cdx.intoto.jsonl"),
|
filePath: filepath.Join("testdata", "sbom.cdx.intoto.jsonl"),
|
||||||
putBlobExpectation: cache.ArtifactCachePutBlobExpectation{
|
putBlobExpectation: cache.ArtifactCachePutBlobExpectation{
|
||||||
Args: cache.ArtifactCachePutBlobArgs{
|
Args: cache.ArtifactCachePutBlobArgs{
|
||||||
BlobID: "sha256:c1cc58e08422fd7606a8e9ee2b42bf722b7af8b703b895461c23b83956f33227",
|
BlobID: "sha256:5d7b14f463a56006dd4060d04295afbda468350f2e5a786ae48d18fd02fb9a89",
|
||||||
BlobInfo: types.BlobInfo{
|
BlobInfo: types.BlobInfo{
|
||||||
SchemaVersion: types.BlobJSONSchemaVersion,
|
SchemaVersion: types.BlobJSONSchemaVersion,
|
||||||
OS: types.OS{
|
OS: types.OS{
|
||||||
@@ -240,8 +240,8 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:dd565ff850e7003356e2b252758f9bdc1ff2803f61e995e24c7844f6297f8fc3",
|
DiffID: "sha256:dd565ff850e7003356e2b252758f9bdc1ff2803f61e995e24c7844f6297f8fc3",
|
||||||
},
|
},
|
||||||
@@ -266,8 +266,8 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/log@1.13.1",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -285,8 +285,8 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
Version: "v1.0.0",
|
Version: "v1.0.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/pear_exception@v1.0.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/pear_exception@v1.0.0",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -309,8 +309,8 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
Version: "v0.1.1-0.20220203205134-d70459300c8a",
|
Version: "v0.1.1-0.20220203205134-d70459300c8a",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:golang/github.com/package-url/packageurl-go@v0.1.1-0.20220203205134-d70459300c8a",
|
||||||
},
|
},
|
||||||
Ref: "pkg:golang/github.com/package-url/packageurl-go@v0.1.1-0.20220203205134-d70459300c8a",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -334,8 +334,8 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "app/maven/target/child-project-1.0.jar",
|
FilePath: "app/maven/target/child-project-1.0.jar",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:maven/org.codehaus.mojo/child-project@1.0?file_path=app%2Fmaven%2Ftarget%2Fchild-project-1.0.jar",
|
||||||
},
|
},
|
||||||
Ref: "pkg:maven/org.codehaus.mojo/child-project@1.0?file_path=app%2Fmaven%2Ftarget%2Fchild-project-1.0.jar",
|
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -359,8 +359,8 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "app/app/package.json",
|
FilePath: "app/app/package.json",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:npm/bootstrap@5.0.2?file_path=app%2Fapp%2Fpackage.json",
|
||||||
},
|
},
|
||||||
Ref: "pkg:npm/bootstrap@5.0.2?file_path=app%2Fapp%2Fpackage.json",
|
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
Layer: types.Layer{
|
Layer: types.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
@@ -377,9 +377,9 @@ func TestArtifact_Inspect(t *testing.T) {
|
|||||||
want: types.ArtifactReference{
|
want: types.ArtifactReference{
|
||||||
Name: filepath.Join("testdata", "sbom.cdx.intoto.jsonl"),
|
Name: filepath.Join("testdata", "sbom.cdx.intoto.jsonl"),
|
||||||
Type: types.ArtifactCycloneDX,
|
Type: types.ArtifactCycloneDX,
|
||||||
ID: "sha256:c1cc58e08422fd7606a8e9ee2b42bf722b7af8b703b895461c23b83956f33227",
|
ID: "sha256:5d7b14f463a56006dd4060d04295afbda468350f2e5a786ae48d18fd02fb9a89",
|
||||||
BlobIDs: []string{
|
BlobIDs: []string{
|
||||||
"sha256:c1cc58e08422fd7606a8e9ee2b42bf722b7af8b703b895461c23b83956f33227",
|
"sha256:5d7b14f463a56006dd4060d04295afbda468350f2e5a786ae48d18fd02fb9a89",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
2
pkg/fanal/cache/mock_artifact_cache.go
vendored
2
pkg/fanal/cache/mock_artifact_cache.go
vendored
@@ -193,7 +193,7 @@ type ArtifactCachePutBlobExpectation struct {
|
|||||||
Returns ArtifactCachePutBlobReturns
|
Returns ArtifactCachePutBlobReturns
|
||||||
}
|
}
|
||||||
|
|
||||||
func (_m *MockArtifactCache) ApplyPutBlobExpectation(e ArtifactCachePutBlobExpectation) *mock.Call{
|
func (_m *MockArtifactCache) ApplyPutBlobExpectation(e ArtifactCachePutBlobExpectation) *mock.Call {
|
||||||
var args []interface{}
|
var args []interface{}
|
||||||
if e.Args.BlobIDAnything {
|
if e.Args.BlobIDAnything {
|
||||||
args = append(args, mock.Anything)
|
args = append(args, mock.Anything)
|
||||||
|
|||||||
@@ -45,7 +45,6 @@ func Test_unpackagedHook_Handle(t *testing.T) {
|
|||||||
{
|
{
|
||||||
Name: "github.com/spf13/cobra",
|
Name: "github.com/spf13/cobra",
|
||||||
Version: "1.5.0",
|
Version: "1.5.0",
|
||||||
Ref: "pkg:golang/github.com/spf13/cobra@1.5.0",
|
|
||||||
Identifier: types.PkgIdentifier{
|
Identifier: types.PkgIdentifier{
|
||||||
PURL: &types.PackageURL{
|
PURL: &types.PackageURL{
|
||||||
PackageURL: packageurl.PackageURL{
|
PackageURL: packageurl.PackageURL{
|
||||||
@@ -55,6 +54,7 @@ func Test_unpackagedHook_Handle(t *testing.T) {
|
|||||||
Version: "1.5.0",
|
Version: "1.5.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:golang/github.com/spf13/cobra@1.5.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -81,14 +81,6 @@ type Package struct {
|
|||||||
BuildInfo *BuildInfo `json:",omitempty"` // only for Red Hat
|
BuildInfo *BuildInfo `json:",omitempty"` // only for Red Hat
|
||||||
Indirect bool `json:",omitempty"` // this package is direct dependency of the project or not
|
Indirect bool `json:",omitempty"` // this package is direct dependency of the project or not
|
||||||
|
|
||||||
// TO BE DEPRECATED - use Identifier instead
|
|
||||||
// Only used when scanning SBOM and contains the reference ID used in it.
|
|
||||||
// It could be PURL, UUID, etc.
|
|
||||||
// e.g.
|
|
||||||
// - pkg:npm/acme/component@1.0.0
|
|
||||||
// - b2a46a4b-8367-4bae-9820-95557cfe03a8
|
|
||||||
Ref string `json:",omitempty"`
|
|
||||||
|
|
||||||
// Dependencies of this package
|
// Dependencies of this package
|
||||||
// Note: it may have interdependencies, which may lead to infinite loops.
|
// Note: it may have interdependencies, which may lead to infinite loops.
|
||||||
DependsOn []string `json:",omitempty"`
|
DependsOn []string `json:",omitempty"`
|
||||||
@@ -110,12 +102,22 @@ type Package struct {
|
|||||||
|
|
||||||
// PkgIdentifier represents a software identifiers in one of more of the supported formats.
|
// PkgIdentifier represents a software identifiers in one of more of the supported formats.
|
||||||
type PkgIdentifier struct {
|
type PkgIdentifier struct {
|
||||||
// PURL is a package URL
|
PURL *PackageURL `json:",omitempty"`
|
||||||
PURL *PackageURL `json:",omitempty"`
|
BOMRef string `json:",omitempty"` // For CycloneDX
|
||||||
}
|
}
|
||||||
|
|
||||||
func (id *PkgIdentifier) Empty() bool {
|
func (id *PkgIdentifier) Empty() bool {
|
||||||
return id.PURL == nil
|
return id.PURL == nil && id.BOMRef == ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func (id *PkgIdentifier) Match(s string) bool {
|
||||||
|
switch {
|
||||||
|
case id.BOMRef == s:
|
||||||
|
return true
|
||||||
|
case id.PURL != nil && id.PURL.String() == s:
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
type Location struct {
|
type Location struct {
|
||||||
|
|||||||
@@ -1632,8 +1632,6 @@ func easyjson6601e8cdDecodeGithubComAquasecurityTrivyPkgTypes(in *jlexer.Lexer,
|
|||||||
out.SeveritySource = types2.SourceID(in.String())
|
out.SeveritySource = types2.SourceID(in.String())
|
||||||
case "PrimaryURL":
|
case "PrimaryURL":
|
||||||
out.PrimaryURL = string(in.String())
|
out.PrimaryURL = string(in.String())
|
||||||
case "PkgRef":
|
|
||||||
out.PkgRef = string(in.String())
|
|
||||||
case "DataSource":
|
case "DataSource":
|
||||||
if in.IsNull() {
|
if in.IsNull() {
|
||||||
in.Skip()
|
in.Skip()
|
||||||
@@ -1907,16 +1905,6 @@ func easyjson6601e8cdEncodeGithubComAquasecurityTrivyPkgTypes(out *jwriter.Write
|
|||||||
}
|
}
|
||||||
out.String(string(in.PrimaryURL))
|
out.String(string(in.PrimaryURL))
|
||||||
}
|
}
|
||||||
if in.PkgRef != "" {
|
|
||||||
const prefix string = ",\"PkgRef\":"
|
|
||||||
if first {
|
|
||||||
first = false
|
|
||||||
out.RawString(prefix[1:])
|
|
||||||
} else {
|
|
||||||
out.RawString(prefix)
|
|
||||||
}
|
|
||||||
out.String(string(in.PkgRef))
|
|
||||||
}
|
|
||||||
if in.DataSource != nil {
|
if in.DataSource != nil {
|
||||||
const prefix string = ",\"DataSource\":"
|
const prefix string = ",\"DataSource\":"
|
||||||
if first {
|
if first {
|
||||||
@@ -2258,6 +2246,8 @@ func easyjson6601e8cdDecodeGithubComAquasecurityTrivyPkgFanalTypes9(in *jlexer.L
|
|||||||
in.AddError((*out.PURL).UnmarshalJSON(data))
|
in.AddError((*out.PURL).UnmarshalJSON(data))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
case "BOMRef":
|
||||||
|
out.BOMRef = string(in.String())
|
||||||
default:
|
default:
|
||||||
in.SkipRecursive()
|
in.SkipRecursive()
|
||||||
}
|
}
|
||||||
@@ -2278,6 +2268,16 @@ func easyjson6601e8cdEncodeGithubComAquasecurityTrivyPkgFanalTypes9(out *jwriter
|
|||||||
out.RawString(prefix[1:])
|
out.RawString(prefix[1:])
|
||||||
out.Raw((*in.PURL).MarshalJSON())
|
out.Raw((*in.PURL).MarshalJSON())
|
||||||
}
|
}
|
||||||
|
if in.BOMRef != "" {
|
||||||
|
const prefix string = ",\"BOMRef\":"
|
||||||
|
if first {
|
||||||
|
first = false
|
||||||
|
out.RawString(prefix[1:])
|
||||||
|
} else {
|
||||||
|
out.RawString(prefix)
|
||||||
|
}
|
||||||
|
out.String(string(in.BOMRef))
|
||||||
|
}
|
||||||
out.RawByte('}')
|
out.RawByte('}')
|
||||||
}
|
}
|
||||||
func easyjson6601e8cdDecodeGithubComAquasecurityTrivyPkgFanalTypes(in *jlexer.Lexer, out *types1.Package) {
|
func easyjson6601e8cdDecodeGithubComAquasecurityTrivyPkgFanalTypes(in *jlexer.Lexer, out *types1.Package) {
|
||||||
@@ -2362,8 +2362,6 @@ func easyjson6601e8cdDecodeGithubComAquasecurityTrivyPkgFanalTypes(in *jlexer.Le
|
|||||||
}
|
}
|
||||||
case "Indirect":
|
case "Indirect":
|
||||||
out.Indirect = bool(in.Bool())
|
out.Indirect = bool(in.Bool())
|
||||||
case "Ref":
|
|
||||||
out.Ref = string(in.String())
|
|
||||||
case "DependsOn":
|
case "DependsOn":
|
||||||
if in.IsNull() {
|
if in.IsNull() {
|
||||||
in.Skip()
|
in.Skip()
|
||||||
@@ -2628,16 +2626,6 @@ func easyjson6601e8cdEncodeGithubComAquasecurityTrivyPkgFanalTypes(out *jwriter.
|
|||||||
}
|
}
|
||||||
out.Bool(bool(in.Indirect))
|
out.Bool(bool(in.Indirect))
|
||||||
}
|
}
|
||||||
if in.Ref != "" {
|
|
||||||
const prefix string = ",\"Ref\":"
|
|
||||||
if first {
|
|
||||||
first = false
|
|
||||||
out.RawString(prefix[1:])
|
|
||||||
} else {
|
|
||||||
out.RawString(prefix)
|
|
||||||
}
|
|
||||||
out.String(string(in.Ref))
|
|
||||||
}
|
|
||||||
if len(in.DependsOn) != 0 {
|
if len(in.DependsOn) != 0 {
|
||||||
const prefix string = ",\"DependsOn\":"
|
const prefix string = ",\"DependsOn\":"
|
||||||
if first {
|
if first {
|
||||||
|
|||||||
@@ -85,7 +85,8 @@ func ConvertToRPCPkgIdentifier(pkg ftypes.PkgIdentifier) *common.PkgIdentifier {
|
|||||||
p = pkg.PURL.BOMRef() // Use BOMRef() instead of String() so that we won't lose file_path
|
p = pkg.PURL.BOMRef() // Use BOMRef() instead of String() so that we won't lose file_path
|
||||||
}
|
}
|
||||||
return &common.PkgIdentifier{
|
return &common.PkgIdentifier{
|
||||||
Purl: p,
|
Purl: p,
|
||||||
|
BomRef: pkg.BOMRef,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -217,16 +218,23 @@ func ConvertFromRPCPkgs(rpcPkgs []*common.Package) []ftypes.Package {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func ConvertFromRPCPkgIdentifier(pkg *common.PkgIdentifier) ftypes.PkgIdentifier {
|
func ConvertFromRPCPkgIdentifier(pkg *common.PkgIdentifier) ftypes.PkgIdentifier {
|
||||||
if pkg == nil || pkg.Purl == "" {
|
if pkg == nil {
|
||||||
return ftypes.PkgIdentifier{}
|
return ftypes.PkgIdentifier{}
|
||||||
}
|
}
|
||||||
pu, err := purl.FromString(pkg.Purl)
|
|
||||||
if err != nil {
|
pkgID := ftypes.PkgIdentifier{
|
||||||
log.Logger.Error("Failed to parse PURL (%s): %s", pkg.Purl, err)
|
BOMRef: pkg.BomRef,
|
||||||
}
|
}
|
||||||
return ftypes.PkgIdentifier{
|
|
||||||
PURL: pu,
|
if pkg.Purl != "" {
|
||||||
|
pu, err := purl.FromString(pkg.Purl)
|
||||||
|
if err != nil {
|
||||||
|
log.Logger.Error("Failed to parse PURL (%s): %s", pkg.Purl, err)
|
||||||
|
}
|
||||||
|
pkgID.PURL = pu
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return pkgID
|
||||||
}
|
}
|
||||||
|
|
||||||
// ConvertToRPCVulns returns common.Vulnerability
|
// ConvertToRPCVulns returns common.Vulnerability
|
||||||
|
|||||||
@@ -351,7 +351,6 @@ func toPackage(component cdx.Component) (*ftypes.PackageURL, *ftypes.Package, er
|
|||||||
// Trivy's marshall loses case-sensitivity in PURL used in SBOM for packages (Go, Npm, PyPI),
|
// Trivy's marshall loses case-sensitivity in PURL used in SBOM for packages (Go, Npm, PyPI),
|
||||||
// so we have to use an original package name
|
// so we have to use an original package name
|
||||||
pkg.Name = packageName(p.Type, pkg.Name, component)
|
pkg.Name = packageName(p.Type, pkg.Name, component)
|
||||||
pkg.Ref = component.BOMRef
|
|
||||||
pkg.Licenses = parsePackageLicenses(component.Licenses)
|
pkg.Licenses = parsePackageLicenses(component.Licenses)
|
||||||
|
|
||||||
for key, value := range core.UnmarshalProperties(component.Properties) {
|
for key, value := range core.UnmarshalProperties(component.Properties) {
|
||||||
@@ -383,7 +382,10 @@ func toPackage(component cdx.Component) (*ftypes.PackageURL, *ftypes.Package, er
|
|||||||
if pkg.FilePath != "" {
|
if pkg.FilePath != "" {
|
||||||
p.FilePath = pkg.FilePath
|
p.FilePath = pkg.FilePath
|
||||||
}
|
}
|
||||||
pkg.Identifier = ftypes.PkgIdentifier{PURL: p}
|
pkg.Identifier = ftypes.PkgIdentifier{
|
||||||
|
PURL: p,
|
||||||
|
BOMRef: component.BOMRef,
|
||||||
|
}
|
||||||
|
|
||||||
if purl.Class(p) == types.ClassOSPkg {
|
if purl.Class(p) == types.ClassOSPkg {
|
||||||
fillSrcPkg(pkg)
|
fillSrcPkg(pkg)
|
||||||
|
|||||||
@@ -54,8 +54,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:dd565ff850e7003356e2b252758f9bdc1ff2803f61e995e24c7844f6297f8fc3",
|
DiffID: "sha256:dd565ff850e7003356e2b252758f9bdc1ff2803f61e995e24c7844f6297f8fc3",
|
||||||
},
|
},
|
||||||
@@ -80,8 +80,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/log@1.13.1",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -99,8 +99,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "v1.0.0",
|
Version: "v1.0.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/pear_exception@v1.0.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/pear_exception@v1.0.0",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -123,8 +123,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "v0.1.1-0.20220203205134-d70459300c8a",
|
Version: "v0.1.1-0.20220203205134-d70459300c8a",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:golang/github.com/package-url/packageurl-go@v0.1.1-0.20220203205134-d70459300c8a",
|
||||||
},
|
},
|
||||||
Ref: "pkg:golang/github.com/package-url/packageurl-go@v0.1.1-0.20220203205134-d70459300c8a",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -146,8 +146,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "0.0.1",
|
Version: "0.0.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:maven/com.example/example@0.0.1",
|
||||||
},
|
},
|
||||||
Ref: "pkg:maven/com.example/example@0.0.1",
|
|
||||||
Version: "0.0.1",
|
Version: "0.0.1",
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
@@ -170,8 +170,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "app/maven/target/child-project-1.0.jar",
|
FilePath: "app/maven/target/child-project-1.0.jar",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:maven/org.codehaus.mojo/child-project@1.0?file_path=app%2Fmaven%2Ftarget%2Fchild-project-1.0.jar",
|
||||||
},
|
},
|
||||||
Ref: "pkg:maven/org.codehaus.mojo/child-project@1.0?file_path=app%2Fmaven%2Ftarget%2Fchild-project-1.0.jar",
|
|
||||||
Version: "1.0",
|
Version: "1.0",
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
@@ -196,8 +196,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "app/app/package.json",
|
FilePath: "app/app/package.json",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:npm/bootstrap@5.0.2?file_path=app%2Fapp%2Fpackage.json",
|
||||||
},
|
},
|
||||||
Ref: "pkg:npm/bootstrap@5.0.2?file_path=app%2Fapp%2Fpackage.json",
|
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
@@ -237,8 +237,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "24.0.4",
|
Version: "24.0.4",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:golang/docker@24.0.4",
|
||||||
},
|
},
|
||||||
Ref: "pkg:golang/docker@24.0.4",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -260,8 +260,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.27.4",
|
Version: "1.27.4",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:k8s/k8s.io%2Fapiserver@1.27.4",
|
||||||
},
|
},
|
||||||
Ref: "pkg:k8s/k8s.io%2Fapiserver@1.27.4",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Name: "k8s.io/controller-manager",
|
Name: "k8s.io/controller-manager",
|
||||||
@@ -274,8 +274,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.27.4",
|
Version: "1.27.4",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:k8s/k8s.io%2Fcontroller-manager@1.27.4",
|
||||||
},
|
},
|
||||||
Ref: "pkg:k8s/k8s.io%2Fcontroller-manager@1.27.4",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Name: "k8s.io/kube-proxy",
|
Name: "k8s.io/kube-proxy",
|
||||||
@@ -288,8 +288,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.27.4",
|
Version: "1.27.4",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:k8s/k8s.io%2Fkube-proxy@1.27.4",
|
||||||
},
|
},
|
||||||
Ref: "pkg:k8s/k8s.io%2Fkube-proxy@1.27.4",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Name: "k8s.io/kube-scheduler",
|
Name: "k8s.io/kube-scheduler",
|
||||||
@@ -302,8 +302,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.27.4",
|
Version: "1.27.4",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:k8s/k8s.io%2Fkube-scheduler@1.27.4",
|
||||||
},
|
},
|
||||||
Ref: "pkg:k8s/k8s.io%2Fkube-scheduler@1.27.4",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Name: "k8s.io/kubelet",
|
Name: "k8s.io/kubelet",
|
||||||
@@ -316,8 +316,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.27.4",
|
Version: "1.27.4",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:k8s/k8s.io%2Fkubelet@1.27.4",
|
||||||
},
|
},
|
||||||
Ref: "pkg:k8s/k8s.io%2Fkubelet@1.27.4",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Name: "k8s.io/kubernetes",
|
Name: "k8s.io/kubernetes",
|
||||||
@@ -330,8 +330,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.27.4",
|
Version: "1.27.4",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:k8s/k8s.io%2Fkubernetes@1.27.4",
|
||||||
},
|
},
|
||||||
Ref: "pkg:k8s/k8s.io%2Fkubernetes@1.27.4",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -376,8 +376,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:deb/ubuntu/libc6@2.35-0ubuntu3.1?distro=ubuntu-22.04",
|
||||||
},
|
},
|
||||||
Ref: "pkg:deb/ubuntu/libc6@2.35-0ubuntu3.1?distro=ubuntu-22.04",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
Digest: "sha256:74ac377868f863e123f24c409f79709f7563fa464557c36a09cf6f85c8b92b7f",
|
Digest: "sha256:74ac377868f863e123f24c409f79709f7563fa464557c36a09cf6f85c8b92b7f",
|
||||||
DiffID: "sha256:b93c1bd012ab8fda60f5b4f5906bf244586e0e3292d84571d3abb56472248466",
|
DiffID: "sha256:b93c1bd012ab8fda60f5b4f5906bf244586e0e3292d84571d3abb56472248466",
|
||||||
@@ -411,8 +411,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:deb/ubuntu/libcrypt1@4.4.27-1?epoch=1&distro=ubuntu-22.04",
|
||||||
},
|
},
|
||||||
Ref: "pkg:deb/ubuntu/libcrypt1@4.4.27-1?epoch=1&distro=ubuntu-22.04",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
Digest: "sha256:74ac377868f863e123f24c409f79709f7563fa464557c36a09cf6f85c8b92b7f",
|
Digest: "sha256:74ac377868f863e123f24c409f79709f7563fa464557c36a09cf6f85c8b92b7f",
|
||||||
DiffID: "sha256:b93c1bd012ab8fda60f5b4f5906bf244586e0e3292d84571d3abb56472248466",
|
DiffID: "sha256:b93c1bd012ab8fda60f5b4f5906bf244586e0e3292d84571d3abb56472248466",
|
||||||
@@ -455,8 +455,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -478,8 +478,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/log@1.13.1",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -495,8 +495,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "v1.0.0",
|
Version: "v1.0.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/pear_exception@v1.0.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/pear_exception@v1.0.0",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -524,8 +524,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/log@1.13.1",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -553,8 +553,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/log@1.13.1",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -569,8 +569,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "v1.0.0",
|
Version: "v1.0.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/pear_exception@v1.0.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/pear_exception@v1.0.0",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -598,8 +598,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/core@1.13.1",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/core@1.13.1",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
Name: "pear/log",
|
Name: "pear/log",
|
||||||
@@ -613,8 +613,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "1.13.1",
|
Version: "1.13.1",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/log@1.13.1",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -629,8 +629,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
Version: "v1.0.0",
|
Version: "v1.0.0",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:composer/pear/pear_exception@v1.0.0",
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/pear_exception@v1.0.0",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -658,8 +658,8 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
FilePath: "spring-web-5.3.22.jar",
|
FilePath: "spring-web-5.3.22.jar",
|
||||||
},
|
},
|
||||||
|
BOMRef: "pkg:maven/org.springframework/spring-web@5.3.22?file_path=spring-web-5.3.22.jar",
|
||||||
},
|
},
|
||||||
Ref: "pkg:maven/org.springframework/spring-web@5.3.22?file_path=spring-web-5.3.22.jar",
|
|
||||||
FilePath: "spring-web-5.3.22.jar",
|
FilePath: "spring-web-5.3.22.jar",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -290,7 +290,6 @@ func parseExternalReferences(refs []*spdx.PackageExternalReference) (*ftypes.Pac
|
|||||||
return nil, nil, xerrors.Errorf("failed to parse purl from string: %w", err)
|
return nil, nil, xerrors.Errorf("failed to parse purl from string: %w", err)
|
||||||
}
|
}
|
||||||
pkg := purl.ToPackage(packageURL)
|
pkg := purl.ToPackage(packageURL)
|
||||||
pkg.Ref = ref.Locator
|
|
||||||
pkg.Identifier = ftypes.PkgIdentifier{
|
pkg.Identifier = ftypes.PkgIdentifier{
|
||||||
PURL: packageURL,
|
PURL: packageURL,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,7 +55,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:apk/alpine/musl@1.2.3-r0?distro=3.16.0",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:dd565ff850e7003356e2b252758f9bdc1ff2803f61e995e24c7844f6297f8fc3",
|
DiffID: "sha256:dd565ff850e7003356e2b252758f9bdc1ff2803f61e995e24c7844f6297f8fc3",
|
||||||
},
|
},
|
||||||
@@ -81,7 +80,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -100,7 +98,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/pear_exception@v1.0.0",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -124,7 +121,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:golang/github.com/package-url/packageurl-go@v0.1.1-0.20220203205134-d70459300c8a",
|
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
},
|
},
|
||||||
@@ -146,7 +142,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:maven/org.codehaus.mojo/child-project@1.0",
|
|
||||||
Version: "1.0",
|
Version: "1.0",
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
@@ -169,7 +164,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:npm/bootstrap@5.0.2",
|
|
||||||
Licenses: []string{"MIT"},
|
Licenses: []string{"MIT"},
|
||||||
Layer: ftypes.Layer{
|
Layer: ftypes.Layer{
|
||||||
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
DiffID: "sha256:3c79e832b1b4891a1cb4a326ef8524e0bd14a2537150ac0e203a5677176c1ca1",
|
||||||
@@ -202,7 +196,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:npm/yargs-parser@21.1.1",
|
|
||||||
FilePath: "node_modules/yargs-parser/package.json",
|
FilePath: "node_modules/yargs-parser/package.json",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -232,7 +225,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:npm/yargs-parser@21.1.1",
|
|
||||||
FilePath: "node_modules/yargs-parser/package.json",
|
FilePath: "node_modules/yargs-parser/package.json",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -262,7 +254,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/log@1.13.1",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -278,7 +269,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:composer/pear/pear_exception@v1.0.0",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -307,7 +297,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:maven/co.elastic.apm/apm-agent@1.36.0",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
FilePath: "modules/apm/elastic-apm-agent-1.36.0.jar",
|
FilePath: "modules/apm/elastic-apm-agent-1.36.0.jar",
|
||||||
@@ -323,7 +312,6 @@ func TestUnmarshaler_Unmarshal(t *testing.T) {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
Ref: "pkg:maven/co.elastic.apm/apm-agent-cached-lookup-key@1.36.0",
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -20,14 +20,6 @@ type DetectedVulnerability struct {
|
|||||||
SeveritySource types.SourceID `json:",omitempty"`
|
SeveritySource types.SourceID `json:",omitempty"`
|
||||||
PrimaryURL string `json:",omitempty"`
|
PrimaryURL string `json:",omitempty"`
|
||||||
|
|
||||||
// TO BE DEPRECATED - use PkgIdentifier instead
|
|
||||||
// Only used when scanning SBOM and contains the reference ID used in it.
|
|
||||||
// It could be PURL, UUID, etc.
|
|
||||||
// e.g.
|
|
||||||
// - pkg:npm/acme/component@1.0.0
|
|
||||||
// - b2a46a4b-8367-4bae-9820-95557cfe03a8
|
|
||||||
PkgRef string `json:",omitempty"`
|
|
||||||
|
|
||||||
// DataSource holds where the advisory comes from
|
// DataSource holds where the advisory comes from
|
||||||
DataSource *types.DataSource `json:",omitempty"`
|
DataSource *types.DataSource `json:",omitempty"`
|
||||||
|
|
||||||
|
|||||||
@@ -128,7 +128,7 @@ func (v *CycloneDX) affected(vuln types.DetectedVulnerability, stmt Statement) b
|
|||||||
zap.Int("version", link.Version()))
|
zap.Int("version", link.Version()))
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if v.matchRef(vuln, link.Reference()) && (stmt.Status == StatusNotAffected || stmt.Status == StatusFixed) {
|
if vuln.PkgIdentifier.Match(link.Reference()) && (stmt.Status == StatusNotAffected || stmt.Status == StatusFixed) {
|
||||||
v.logger.Infow("Filtered out the detected vulnerability", zap.String("vulnerability-id", vuln.VulnerabilityID),
|
v.logger.Infow("Filtered out the detected vulnerability", zap.String("vulnerability-id", vuln.VulnerabilityID),
|
||||||
zap.String("status", string(stmt.Status)), zap.String("justification", stmt.Justification))
|
zap.String("status", string(stmt.Status)), zap.String("justification", stmt.Justification))
|
||||||
return false
|
return false
|
||||||
@@ -137,16 +137,6 @@ func (v *CycloneDX) affected(vuln types.DetectedVulnerability, stmt Statement) b
|
|||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *CycloneDX) matchRef(vuln types.DetectedVulnerability, ref string) bool {
|
|
||||||
switch {
|
|
||||||
case vuln.PkgRef == ref: // BOM-Ref
|
|
||||||
return true
|
|
||||||
case vuln.PkgIdentifier.PURL != nil && vuln.PkgIdentifier.PURL.String() == ref: // PURL
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
func cdxStatus(s cdx.ImpactAnalysisState) Status {
|
func cdxStatus(s cdx.ImpactAnalysisState) Status {
|
||||||
switch s {
|
switch s {
|
||||||
case cdx.IASResolved, cdx.IASResolvedWithPedigree:
|
case cdx.IASResolved, cdx.IASResolvedWithPedigree:
|
||||||
|
|||||||
@@ -629,8 +629,8 @@ type PkgIdentifier struct {
|
|||||||
sizeCache protoimpl.SizeCache
|
sizeCache protoimpl.SizeCache
|
||||||
unknownFields protoimpl.UnknownFields
|
unknownFields protoimpl.UnknownFields
|
||||||
|
|
||||||
Purl string `protobuf:"bytes,1,opt,name=purl,proto3" json:"purl,omitempty"`
|
Purl string `protobuf:"bytes,1,opt,name=purl,proto3" json:"purl,omitempty"`
|
||||||
Cpe string `protobuf:"bytes,2,opt,name=cpe,proto3" json:"cpe,omitempty"`
|
BomRef string `protobuf:"bytes,2,opt,name=bom_ref,json=bomRef,proto3" json:"bom_ref,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (x *PkgIdentifier) Reset() {
|
func (x *PkgIdentifier) Reset() {
|
||||||
@@ -672,9 +672,9 @@ func (x *PkgIdentifier) GetPurl() string {
|
|||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
func (x *PkgIdentifier) GetCpe() string {
|
func (x *PkgIdentifier) GetBomRef() string {
|
||||||
if x != nil {
|
if x != nil {
|
||||||
return x.Cpe
|
return x.BomRef
|
||||||
}
|
}
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
@@ -2246,8 +2246,8 @@ func (x *LicenseFinding) GetLink() string {
|
|||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
// Enumerations are wrapped with a message to improve the readability of enumerations
|
// Enumerations are wrapped with a message to improve the readability of
|
||||||
// in generated code and avoid name conflicts.
|
// enumerations in generated code and avoid name conflicts.
|
||||||
// https://github.com/golang/protobuf/issues/513
|
// https://github.com/golang/protobuf/issues/513
|
||||||
type LicenseCategory struct {
|
type LicenseCategory struct {
|
||||||
state protoimpl.MessageState
|
state protoimpl.MessageState
|
||||||
@@ -2390,318 +2390,319 @@ var file_rpc_common_service_proto_rawDesc = []byte{
|
|||||||
0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a,
|
0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a,
|
||||||
0x03, 0x64, 0x65, 0x76, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x64, 0x65, 0x76, 0x12,
|
0x03, 0x64, 0x65, 0x76, 0x18, 0x11, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x64, 0x65, 0x76, 0x12,
|
||||||
0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28,
|
0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28,
|
||||||
0x08, 0x52, 0x08, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x22, 0x35, 0x0a, 0x0d, 0x50,
|
0x08, 0x52, 0x08, 0x69, 0x6e, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x22, 0x3c, 0x0a, 0x0d, 0x50,
|
||||||
0x6b, 0x67, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04,
|
0x6b, 0x67, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04,
|
||||||
0x70, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x75, 0x72, 0x6c,
|
0x70, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x75, 0x72, 0x6c,
|
||||||
0x12, 0x10, 0x0a, 0x03, 0x63, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63,
|
0x12, 0x17, 0x0a, 0x07, 0x62, 0x6f, 0x6d, 0x5f, 0x72, 0x65, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||||||
0x70, 0x65, 0x22, 0xb6, 0x02, 0x0a, 0x10, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
|
0x09, 0x52, 0x06, 0x62, 0x6f, 0x6d, 0x52, 0x65, 0x66, 0x22, 0xb6, 0x02, 0x0a, 0x10, 0x4d, 0x69,
|
||||||
0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f,
|
0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b,
|
||||||
0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65,
|
0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||||
0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74,
|
0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66,
|
||||||
0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74,
|
0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
|
||||||
0x68, 0x12, 0x39, 0x0a, 0x09, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03,
|
0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x39, 0x0a, 0x09, 0x73, 0x75, 0x63, 0x63,
|
||||||
0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d,
|
0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72,
|
||||||
0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x52, 0x65, 0x73, 0x75, 0x6c,
|
0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x69, 0x73, 0x63, 0x6f,
|
||||||
0x74, 0x52, 0x09, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x08,
|
0x6e, 0x66, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x09, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73,
|
||||||
0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b,
|
0x73, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18,
|
||||||
|
0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f,
|
||||||
|
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x52, 0x65, 0x73, 0x75,
|
||||||
|
0x6c, 0x74, 0x52, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x37, 0x0a, 0x08,
|
||||||
|
0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b,
|
||||||
0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x69,
|
0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x69,
|
||||||
0x73, 0x63, 0x6f, 0x6e, 0x66, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x08, 0x77, 0x61, 0x72,
|
0x73, 0x63, 0x6f, 0x6e, 0x66, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x08, 0x66, 0x61, 0x69,
|
||||||
0x6e, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x37, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65,
|
0x6c, 0x75, 0x72, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69,
|
||||||
0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e,
|
0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76,
|
||||||
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x52, 0x65,
|
0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66,
|
||||||
0x73, 0x75, 0x6c, 0x74, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x12, 0x3b,
|
0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f,
|
||||||
0x0a, 0x0a, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03,
|
0x6e, 0x73, 0x22, 0xf3, 0x01, 0x0a, 0x0d, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x52, 0x65,
|
||||||
0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
|
0x73, 0x75, 0x6c, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63,
|
||||||
0x6e, 0x2e, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52,
|
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61,
|
||||||
0x0a, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xf3, 0x01, 0x0a, 0x0d,
|
0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20,
|
||||||
0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1c, 0x0a,
|
0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x45, 0x0a, 0x0f,
|
||||||
0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18,
|
||||||
0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d,
|
0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f,
|
||||||
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65,
|
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64,
|
||||||
0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x45, 0x0a, 0x0f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f,
|
0x61, 0x74, 0x61, 0x52, 0x0e, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64,
|
||||||
0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c,
|
0x61, 0x74, 0x61, 0x12, 0x42, 0x0a, 0x0e, 0x63, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x6d, 0x65, 0x74,
|
||||||
0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x6f,
|
0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72,
|
||||||
0x6c, 0x69, 0x63, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0e, 0x70, 0x6f,
|
0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x61, 0x75, 0x73, 0x65,
|
||||||
0x6c, 0x69, 0x63, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x42, 0x0a, 0x0e,
|
0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0d, 0x63, 0x61, 0x75, 0x73, 0x65, 0x4d,
|
||||||
0x63, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08,
|
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x07, 0x52, 0x04, 0x74,
|
||||||
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d,
|
0x79, 0x70, 0x65, 0x52, 0x02, 0x69, 0x64, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x52, 0x08,
|
||||||
0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
|
0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x22, 0xf0, 0x01, 0x0a, 0x0e, 0x50, 0x6f, 0x6c,
|
||||||
0x61, 0x52, 0x0d, 0x63, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
|
0x69, 0x63, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69,
|
||||||
0x4a, 0x04, 0x08, 0x03, 0x10, 0x07, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x52, 0x02, 0x69, 0x64,
|
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x61,
|
||||||
0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74,
|
0x64, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x64, 0x76,
|
||||||
0x79, 0x22, 0xf0, 0x01, 0x0a, 0x0e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4d, 0x65, 0x74, 0x61,
|
0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
||||||
0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18,
|
||||||
0x52, 0x02, 0x69, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x64, 0x76, 0x5f, 0x69, 0x64, 0x18, 0x02,
|
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b,
|
||||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x64, 0x76, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74,
|
0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
|
||||||
0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12,
|
0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a,
|
||||||
0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
|
0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
|
||||||
0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
|
0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x2f, 0x0a, 0x13, 0x72, 0x65,
|
||||||
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
|
0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e,
|
||||||
0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72,
|
0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65,
|
||||||
0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72,
|
0x6e, 0x64, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72,
|
||||||
0x69, 0x74, 0x79, 0x12, 0x2f, 0x0a, 0x13, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64,
|
0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52,
|
||||||
0x65, 0x64, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
|
0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x22, 0xf7, 0x03, 0x0a, 0x18,
|
||||||
0x52, 0x12, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x41, 0x63, 0x74,
|
0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69,
|
||||||
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63,
|
0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65,
|
||||||
0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65,
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02,
|
||||||
0x6e, 0x63, 0x65, 0x73, 0x22, 0xf7, 0x03, 0x0a, 0x18, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65,
|
0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05,
|
||||||
0x64, 0x4d, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74,
|
||||||
0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
|
0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
|
||||||
0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
|
0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
|
||||||
0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03,
|
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
|
||||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64,
|
0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c,
|
||||||
0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
|
0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
|
||||||
0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a,
|
0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a,
|
||||||
0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07,
|
0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09,
|
||||||
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73,
|
0x52, 0x0a, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x08,
|
||||||
0x70, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65,
|
0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16,
|
||||||
0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x73, 0x6f, 0x6c, 0x75, 0x74,
|
0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x65,
|
||||||
0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x6f, 0x6c,
|
0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79,
|
||||||
0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74,
|
|
||||||
0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e,
|
|
||||||
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52,
|
|
||||||
0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x69,
|
|
||||||
0x6d, 0x61, 0x72, 0x79, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
|
|
||||||
0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x55, 0x72, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65,
|
|
||||||
0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a,
|
|
||||||
0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74,
|
|
||||||
0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
|
|
||||||
0x75, 0x73, 0x12, 0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28,
|
|
||||||
0x0b, 0x32, 0x13, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
|
|
||||||
0x2e, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x42, 0x0a,
|
|
||||||
0x0e, 0x63, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18,
|
|
||||||
0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f,
|
|
||||||
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
|
|
||||||
0x74, 0x61, 0x52, 0x0d, 0x63, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
|
|
||||||
0x61, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x76, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28,
|
|
||||||
0x09, 0x52, 0x05, 0x61, 0x76, 0x64, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72,
|
|
||||||
0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0xff,
|
|
||||||
0x09, 0x0a, 0x0d, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
|
|
||||||
0x12, 0x29, 0x0a, 0x10, 0x76, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
|
|
||||||
0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x76, 0x75, 0x6c, 0x6e,
|
|
||||||
0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70,
|
|
||||||
0x6b, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70,
|
|
||||||
0x6b, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c,
|
|
||||||
0x6c, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
||||||
0x09, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73,
|
|
||||||
0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72,
|
|
||||||
0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x66, 0x69, 0x78, 0x65,
|
|
||||||
0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c,
|
|
||||||
0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20,
|
|
||||||
0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20,
|
|
||||||
0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e,
|
|
||||||
0x12, 0x32, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01,
|
|
||||||
0x28, 0x0e, 0x32, 0x16, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
|
|
||||||
0x6e, 0x2e, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65,
|
|
||||||
0x72, 0x69, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63,
|
|
||||||
0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65,
|
|
||||||
0x6e, 0x63, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0e, 0x70, 0x6b, 0x67, 0x5f, 0x69, 0x64, 0x65, 0x6e,
|
|
||||||
0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74,
|
|
||||||
0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x50, 0x6b, 0x67, 0x49,
|
|
||||||
0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x0d, 0x70, 0x6b, 0x67, 0x49, 0x64,
|
|
||||||
0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65,
|
|
||||||
0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e,
|
|
||||||
0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x05, 0x6c, 0x61,
|
|
||||||
0x79, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x5f,
|
|
||||||
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65,
|
|
||||||
0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x04,
|
|
||||||
0x63, 0x76, 0x73, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x74, 0x72, 0x69,
|
|
||||||
0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72,
|
|
||||||
0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x43, 0x76, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72,
|
|
||||||
0x79, 0x52, 0x04, 0x63, 0x76, 0x73, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x77, 0x65, 0x5f, 0x69,
|
|
||||||
0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x63, 0x77, 0x65, 0x49, 0x64, 0x73,
|
|
||||||
0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x75, 0x72, 0x6c, 0x18,
|
0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x75, 0x72, 0x6c, 0x18,
|
||||||
0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x55, 0x72,
|
0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x55, 0x72,
|
||||||
0x6c, 0x12, 0x41, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x64,
|
0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18,
|
||||||
0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65,
|
||||||
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
|
0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28,
|
||||||
0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64,
|
0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79,
|
||||||
0x44, 0x61, 0x74, 0x65, 0x12, 0x48, 0x0a, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x64,
|
0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79,
|
||||||
0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b,
|
0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x05, 0x6c,
|
||||||
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
|
0x61, 0x79, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x0e, 0x63, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x6d, 0x65,
|
||||||
0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x10, 0x6c, 0x61,
|
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74,
|
||||||
0x73, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x48,
|
0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x61, 0x75, 0x73,
|
||||||
0x0a, 0x14, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x61, 0x64, 0x76, 0x69, 0x73, 0x6f, 0x72,
|
0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x0d, 0x63, 0x61, 0x75, 0x73, 0x65,
|
||||||
0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67,
|
0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x76, 0x64, 0x5f,
|
||||||
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56,
|
0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x76, 0x64, 0x49, 0x64, 0x12,
|
||||||
0x61, 0x6c, 0x75, 0x65, 0x52, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x64, 0x76, 0x69,
|
0x14, 0x0a, 0x05, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
|
||||||
0x73, 0x6f, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x40, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74,
|
0x71, 0x75, 0x65, 0x72, 0x79, 0x22, 0xff, 0x09, 0x0a, 0x0d, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72,
|
||||||
0x6f, 0x6d, 0x5f, 0x76, 0x75, 0x6c, 0x6e, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x12, 0x20, 0x01,
|
0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x76, 0x75, 0x6c, 0x6e, 0x65,
|
||||||
0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
|
0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||||
0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74,
|
0x09, 0x52, 0x0f, 0x76, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79,
|
||||||
0x6f, 0x6d, 0x56, 0x75, 0x6c, 0x6e, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x65,
|
0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6b, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
|
||||||
0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09,
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6b, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a,
|
||||||
0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x64, 0x73, 0x12, 0x39, 0x0a, 0x0b, 0x64, 0x61, 0x74,
|
0x11, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
|
||||||
0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
|
0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c,
|
||||||
0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61,
|
0x6c, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x69,
|
||||||
0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x53, 0x6f,
|
0x78, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28,
|
||||||
0x75, 0x72, 0x63, 0x65, 0x12, 0x58, 0x0a, 0x0f, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x73,
|
0x09, 0x52, 0x0c, 0x66, 0x69, 0x78, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
|
||||||
0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e,
|
0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
|
||||||
0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x56, 0x75, 0x6c,
|
0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
|
||||||
0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x56, 0x65, 0x6e, 0x64, 0x6f,
|
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
|
||||||
0x72, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e,
|
0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72,
|
||||||
0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x19,
|
0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x74, 0x72, 0x69, 0x76,
|
||||||
0x0a, 0x08, 0x70, 0x6b, 0x67, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09,
|
0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74,
|
||||||
0x52, 0x07, 0x70, 0x6b, 0x67, 0x50, 0x61, 0x74, 0x68, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6b, 0x67,
|
0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x72,
|
||||||
0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6b, 0x67, 0x49, 0x64,
|
0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52,
|
||||||
0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05,
|
0x0a, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0e, 0x70,
|
||||||
0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x4b, 0x0a, 0x09, 0x43, 0x76, 0x73, 0x73,
|
0x6b, 0x67, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x19, 0x20,
|
||||||
0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
|
0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
|
||||||
0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
|
0x6f, 0x6e, 0x2e, 0x50, 0x6b, 0x67, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72,
|
||||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63,
|
0x52, 0x0d, 0x70, 0x6b, 0x67, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12,
|
||||||
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x56, 0x53, 0x53, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
|
|
||||||
0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x59, 0x0a, 0x13, 0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x53,
|
|
||||||
0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
|
|
||||||
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c,
|
|
||||||
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e,
|
|
||||||
0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x76,
|
|
||||||
0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
|
|
||||||
0x22, 0x42, 0x0a, 0x0a, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0e,
|
|
||||||
0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12,
|
|
||||||
0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
|
|
||||||
0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
||||||
0x03, 0x75, 0x72, 0x6c, 0x22, 0x57, 0x0a, 0x05, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x16, 0x0a,
|
|
||||||
0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64,
|
|
||||||
0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x64, 0x69, 0x66, 0x66, 0x5f, 0x69, 0x64,
|
|
||||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x69, 0x66, 0x66, 0x49, 0x64, 0x12, 0x1d,
|
|
||||||
0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01,
|
|
||||||
0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x22, 0xc3, 0x01,
|
|
||||||
0x0a, 0x0d, 0x43, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12,
|
|
||||||
0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
|
|
||||||
0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70,
|
|
||||||
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70,
|
|
||||||
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69,
|
|
||||||
0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
|
|
||||||
0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x18,
|
|
||||||
0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4c, 0x69, 0x6e, 0x65,
|
|
||||||
0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01,
|
|
||||||
0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x63,
|
|
||||||
0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x72, 0x69, 0x76,
|
|
||||||
0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63,
|
|
||||||
0x6f, 0x64, 0x65, 0x22, 0x76, 0x0a, 0x04, 0x43, 0x56, 0x53, 0x53, 0x12, 0x1b, 0x0a, 0x09, 0x76,
|
|
||||||
0x32, 0x5f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
|
|
||||||
0x76, 0x32, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x33, 0x5f, 0x76,
|
|
||||||
0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x33, 0x56,
|
|
||||||
0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x32, 0x5f, 0x73, 0x63, 0x6f, 0x72,
|
|
||||||
0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x76, 0x32, 0x53, 0x63, 0x6f, 0x72, 0x65,
|
|
||||||
0x12, 0x19, 0x0a, 0x08, 0x76, 0x33, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01,
|
|
||||||
0x28, 0x01, 0x52, 0x07, 0x76, 0x33, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x98, 0x01, 0x0a, 0x0e,
|
|
||||||
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x12,
|
|
||||||
0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79,
|
|
||||||
0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18,
|
|
||||||
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12,
|
|
||||||
0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
|
|
||||||
0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x61,
|
|
||||||
0x79, 0x65, 0x72, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x2a, 0x0a, 0x04, 0x64, 0x61,
|
|
||||||
0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
||||||
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65,
|
|
||||||
0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xf3, 0x01, 0x0a, 0x04, 0x4c, 0x69, 0x6e, 0x65, 0x12,
|
|
||||||
0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52,
|
|
||||||
0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65,
|
|
||||||
0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
|
|
||||||
0x74, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x63, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20,
|
|
||||||
0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x43, 0x61, 0x75, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a,
|
|
||||||
0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
|
|
||||||
0x52, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09,
|
|
||||||
0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
|
|
||||||
0x09, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x68, 0x69,
|
|
||||||
0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
||||||
0x0b, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b,
|
|
||||||
0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x63, 0x61, 0x75, 0x73, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
|
|
||||||
0x08, 0x52, 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x43, 0x61, 0x75, 0x73, 0x65, 0x12, 0x1d, 0x0a,
|
|
||||||
0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x61, 0x75, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
|
|
||||||
0x08, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x61, 0x75, 0x73, 0x65, 0x22, 0x30, 0x0a, 0x04,
|
|
||||||
0x43, 0x6f, 0x64, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20,
|
|
||||||
0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
|
|
||||||
0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x05, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x22, 0x9f,
|
|
||||||
0x02, 0x0a, 0x0d, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67,
|
|
||||||
0x12, 0x17, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
|
|
||||||
0x09, 0x52, 0x06, 0x72, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x74,
|
|
||||||
0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x61, 0x74,
|
|
||||||
0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74,
|
|
||||||
0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74,
|
|
||||||
0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
|
|
||||||
0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74,
|
|
||||||
0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61,
|
|
||||||
0x72, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x6c, 0x69,
|
|
||||||
0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x4c, 0x69, 0x6e,
|
|
||||||
0x65, 0x12, 0x26, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
|
||||||
0x12, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43,
|
|
||||||
0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x61, 0x74,
|
|
||||||
0x63, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12,
|
|
||||||
0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
|
0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13,
|
||||||
0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x61,
|
0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x61,
|
||||||
0x79, 0x65, 0x72, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x4a, 0x04, 0x08, 0x09, 0x10, 0x0a,
|
0x79, 0x65, 0x72, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65,
|
||||||
0x22, 0x5d, 0x0a, 0x06, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69,
|
0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x0b, 0x20,
|
||||||
0x6c, 0x65, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69,
|
0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x53, 0x6f, 0x75,
|
||||||
0x6c, 0x65, 0x70, 0x61, 0x74, 0x68, 0x12, 0x37, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x64, 0x69, 0x6e,
|
0x72, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x04, 0x63, 0x76, 0x73, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28,
|
||||||
0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79,
|
0x0b, 0x32, 0x25, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e,
|
||||||
0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x46, 0x69,
|
0x2e, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2e, 0x43,
|
||||||
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x22,
|
0x76, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x63, 0x76, 0x73, 0x73, 0x12, 0x17,
|
||||||
0x85, 0x02, 0x0a, 0x0f, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x65, 0x64, 0x4c, 0x69, 0x63, 0x65,
|
0x0a, 0x07, 0x63, 0x77, 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52,
|
||||||
0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18,
|
0x06, 0x63, 0x77, 0x65, 0x49, 0x64, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x72, 0x69, 0x6d, 0x61,
|
||||||
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f,
|
0x72, 0x79, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72,
|
||||||
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73,
|
0x69, 0x6d, 0x61, 0x72, 0x79, 0x55, 0x72, 0x6c, 0x12, 0x41, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c,
|
||||||
0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x3e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67,
|
0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b,
|
||||||
0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x74, 0x72, 0x69, 0x76,
|
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
|
||||||
0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65,
|
0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0d, 0x70, 0x75,
|
||||||
0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x08, 0x63,
|
0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x48, 0x0a, 0x12, 0x6c,
|
||||||
0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6b, 0x67, 0x5f, 0x6e,
|
0x61, 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74,
|
||||||
0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6b, 0x67, 0x4e, 0x61,
|
0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
||||||
0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18,
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
|
||||||
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12,
|
0x61, 0x6d, 0x70, 0x52, 0x10, 0x6c, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65,
|
||||||
0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
|
0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x48, 0x0a, 0x14, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f,
|
||||||
0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
|
0x61, 0x64, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x11, 0x20,
|
||||||
0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65,
|
0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
||||||
0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28,
|
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x12, 0x63, 0x75, 0x73,
|
||||||
0x09, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0xed, 0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x63, 0x65,
|
0x74, 0x6f, 0x6d, 0x41, 0x64, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12,
|
||||||
0x6e, 0x73, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x41, 0x0a, 0x0c, 0x6c, 0x69, 0x63, 0x65, 0x6e,
|
0x40, 0x0a, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x76, 0x75, 0x6c, 0x6e, 0x5f, 0x64,
|
||||||
0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e,
|
0x61, 0x74, 0x61, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
||||||
0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x63,
|
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75,
|
||||||
0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x0b, 0x6c,
|
0x65, 0x52, 0x0e, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x56, 0x75, 0x6c, 0x6e, 0x44, 0x61, 0x74,
|
||||||
0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69,
|
0x61, 0x12, 0x1d, 0x0a, 0x0a, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18,
|
||||||
0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66,
|
0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x49, 0x64, 0x73,
|
||||||
0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6b, 0x67, 0x5f, 0x6e,
|
0x12, 0x39, 0x0a, 0x0b, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
|
||||||
0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6b, 0x67, 0x4e, 0x61,
|
0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f,
|
||||||
0x6d, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04,
|
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52,
|
||||||
0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d,
|
0x0a, 0x64, 0x61, 0x74, 0x61, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x58, 0x0a, 0x0f, 0x76,
|
||||||
0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x46, 0x69, 0x6e, 0x64, 0x69,
|
0x65, 0x6e, 0x64, 0x6f, 0x72, 0x5f, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x15,
|
||||||
0x6e, 0x67, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x29, 0x0a, 0x05,
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d,
|
||||||
0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x74, 0x72,
|
0x6d, 0x6f, 0x6e, 0x2e, 0x56, 0x75, 0x6c, 0x6e, 0x65, 0x72, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74,
|
||||||
0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x61, 0x79, 0x65, 0x72,
|
0x79, 0x2e, 0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79,
|
||||||
0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x22, 0x98, 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x63, 0x65,
|
0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x76, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x53, 0x65, 0x76,
|
||||||
0x6e, 0x73, 0x65, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x3e, 0x0a, 0x08, 0x63, 0x61,
|
0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6b, 0x67, 0x5f, 0x70, 0x61, 0x74,
|
||||||
0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x74,
|
0x68, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6b, 0x67, 0x50, 0x61, 0x74, 0x68,
|
||||||
0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x63, 0x65,
|
0x12, 0x15, 0x0a, 0x06, 0x70, 0x6b, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09,
|
||||||
0x6e, 0x73, 0x65, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x2e, 0x45, 0x6e, 0x75, 0x6d,
|
0x52, 0x05, 0x70, 0x6b, 0x67, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
|
||||||
0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
|
0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a,
|
||||||
0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e,
|
0x4b, 0x0a, 0x09, 0x43, 0x76, 0x73, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
|
||||||
0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01,
|
0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x28,
|
||||||
0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12,
|
0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
|
||||||
0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x69,
|
0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x56, 0x53,
|
||||||
0x6e, 0x6b, 0x22, 0x95, 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x61,
|
0x53, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x59, 0x0a, 0x13,
|
||||||
0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x81, 0x01, 0x0a, 0x04, 0x45, 0x6e, 0x75, 0x6d, 0x12,
|
0x56, 0x65, 0x6e, 0x64, 0x6f, 0x72, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x45, 0x6e,
|
||||||
0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
|
0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
|
||||||
0x12, 0x0d, 0x0a, 0x09, 0x46, 0x4f, 0x52, 0x42, 0x49, 0x44, 0x44, 0x45, 0x4e, 0x10, 0x01, 0x12,
|
0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
|
||||||
0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x53, 0x54, 0x52, 0x49, 0x43, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12,
|
0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d,
|
||||||
0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x43, 0x49, 0x50, 0x52, 0x4f, 0x43, 0x41, 0x4c, 0x10, 0x03, 0x12,
|
0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x05, 0x76, 0x61,
|
||||||
0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x54, 0x49, 0x43, 0x45, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x50,
|
0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x42, 0x0a, 0x0a, 0x44, 0x61, 0x74, 0x61, 0x53,
|
||||||
0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x56, 0x45, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x55,
|
0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||||
0x4e, 0x45, 0x4e, 0x43, 0x55, 0x4d, 0x42, 0x45, 0x52, 0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a,
|
0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20,
|
||||||
0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x07, 0x22, 0x4e, 0x0a, 0x0b, 0x4c, 0x69,
|
0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c,
|
||||||
0x63, 0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0x3f, 0x0a, 0x04, 0x45, 0x6e, 0x75,
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x57, 0x0a, 0x05, 0x4c,
|
||||||
0x6d, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
|
0x61, 0x79, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x18, 0x01,
|
||||||
0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x50, 0x4b, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06,
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x69, 0x67, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x07,
|
||||||
0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x49, 0x43, 0x45,
|
0x64, 0x69, 0x66, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64,
|
||||||
0x4e, 0x53, 0x45, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x10, 0x03, 0x2a, 0x44, 0x0a, 0x08, 0x53, 0x65,
|
0x69, 0x66, 0x66, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
|
||||||
0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57,
|
0x5f, 0x62, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74,
|
||||||
0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4c, 0x4f, 0x57, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06,
|
0x65, 0x64, 0x42, 0x79, 0x22, 0xc3, 0x01, 0x0a, 0x0d, 0x43, 0x61, 0x75, 0x73, 0x65, 0x4d, 0x65,
|
||||||
0x4d, 0x45, 0x44, 0x49, 0x55, 0x4d, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x49, 0x47, 0x48,
|
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
||||||
0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x49, 0x54, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x04,
|
0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
||||||
0x42, 0x31, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61,
|
0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x02,
|
||||||
0x71, 0x75, 0x61, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x2f, 0x74, 0x72, 0x69, 0x76,
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x18,
|
||||||
0x79, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x3b, 0x63, 0x6f, 0x6d,
|
0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||||
0x6d, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72,
|
||||||
|
0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74,
|
||||||
|
0x61, 0x72, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x6c,
|
||||||
|
0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x4c, 0x69,
|
||||||
|
0x6e, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
|
||||||
|
0x32, 0x12, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e,
|
||||||
|
0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x76, 0x0a, 0x04, 0x43, 0x56,
|
||||||
|
0x53, 0x53, 0x12, 0x1b, 0x0a, 0x09, 0x76, 0x32, 0x5f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18,
|
||||||
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x32, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12,
|
||||||
|
0x1b, 0x0a, 0x09, 0x76, 0x33, 0x5f, 0x76, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01,
|
||||||
|
0x28, 0x09, 0x52, 0x08, 0x76, 0x33, 0x56, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x19, 0x0a, 0x08,
|
||||||
|
0x76, 0x32, 0x5f, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07,
|
||||||
|
0x76, 0x32, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x76, 0x33, 0x5f, 0x73, 0x63,
|
||||||
|
0x6f, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x01, 0x52, 0x07, 0x76, 0x33, 0x53, 0x63, 0x6f,
|
||||||
|
0x72, 0x65, 0x22, 0x98, 0x01, 0x0a, 0x0e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x65, 0x73,
|
||||||
|
0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
|
||||||
|
0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c,
|
||||||
|
0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69,
|
||||||
|
0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18,
|
||||||
|
0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f,
|
||||||
|
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65,
|
||||||
|
0x72, 0x12, 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
||||||
|
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
|
||||||
|
0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xf3, 0x01,
|
||||||
|
0x0a, 0x04, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
|
||||||
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x18,
|
||||||
|
0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||||
|
0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x63,
|
||||||
|
0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x43, 0x61,
|
||||||
|
0x75, 0x73, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
|
||||||
|
0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
|
||||||
|
0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65, 0x64,
|
||||||
|
0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x63, 0x61, 0x74, 0x65,
|
||||||
|
0x64, 0x12, 0x20, 0x0a, 0x0b, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x65, 0x64,
|
||||||
|
0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68,
|
||||||
|
0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x63, 0x61, 0x75,
|
||||||
|
0x73, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x66, 0x69, 0x72, 0x73, 0x74, 0x43,
|
||||||
|
0x61, 0x75, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x61, 0x75,
|
||||||
|
0x73, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x61,
|
||||||
|
0x75, 0x73, 0x65, 0x22, 0x30, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x28, 0x0a, 0x05, 0x6c,
|
||||||
|
0x69, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x72, 0x69,
|
||||||
|
0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x6e, 0x65, 0x52, 0x05,
|
||||||
|
0x6c, 0x69, 0x6e, 0x65, 0x73, 0x22, 0x9f, 0x02, 0x0a, 0x0d, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74,
|
||||||
|
0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x75, 0x6c, 0x65, 0x5f,
|
||||||
|
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x75, 0x6c, 0x65, 0x49, 0x64,
|
||||||
|
0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01,
|
||||||
|
0x28, 0x09, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08,
|
||||||
|
0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
|
||||||
|
0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c,
|
||||||
|
0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1d,
|
||||||
|
0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01,
|
||||||
|
0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x19, 0x0a,
|
||||||
|
0x08, 0x65, 0x6e, 0x64, 0x5f, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52,
|
||||||
|
0x07, 0x65, 0x6e, 0x64, 0x4c, 0x69, 0x6e, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65,
|
||||||
|
0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63,
|
||||||
|
0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65,
|
||||||
|
0x12, 0x14, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||||
|
0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18,
|
||||||
|
0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f,
|
||||||
|
0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65,
|
||||||
|
0x72, 0x4a, 0x04, 0x08, 0x09, 0x10, 0x0a, 0x22, 0x5d, 0x0a, 0x06, 0x53, 0x65, 0x63, 0x72, 0x65,
|
||||||
|
0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x70, 0x61, 0x74, 0x68, 0x18, 0x01, 0x20,
|
||||||
|
0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x70, 0x61, 0x74, 0x68, 0x12, 0x37, 0x0a,
|
||||||
|
0x08, 0x66, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
|
||||||
|
0x1b, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53,
|
||||||
|
0x65, 0x63, 0x72, 0x65, 0x74, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x66, 0x69,
|
||||||
|
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x22, 0x85, 0x02, 0x0a, 0x0f, 0x44, 0x65, 0x74, 0x65, 0x63,
|
||||||
|
0x74, 0x65, 0x64, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x08, 0x73, 0x65,
|
||||||
|
0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x74,
|
||||||
|
0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x76, 0x65,
|
||||||
|
0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x3e,
|
||||||
|
0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
|
||||||
|
0x32, 0x22, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e,
|
||||||
|
0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x2e,
|
||||||
|
0x45, 0x6e, 0x75, 0x6d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x19,
|
||||||
|
0x0a, 0x08, 0x70, 0x6b, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
||||||
|
0x52, 0x07, 0x70, 0x6b, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c,
|
||||||
|
0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69,
|
||||||
|
0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05,
|
||||||
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f,
|
||||||
|
0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a,
|
||||||
|
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69,
|
||||||
|
0x6e, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0xed,
|
||||||
|
0x01, 0x0a, 0x0b, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x41,
|
||||||
|
0x0a, 0x0c, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01,
|
||||||
|
0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d,
|
||||||
|
0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65, 0x2e,
|
||||||
|
0x45, 0x6e, 0x75, 0x6d, 0x52, 0x0b, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70,
|
||||||
|
0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02,
|
||||||
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x50, 0x61, 0x74, 0x68, 0x12, 0x19,
|
||||||
|
0x0a, 0x08, 0x70, 0x6b, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
||||||
|
0x52, 0x07, 0x70, 0x6b, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x66, 0x69, 0x6e,
|
||||||
|
0x67, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x72,
|
||||||
|
0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x63, 0x65, 0x6e,
|
||||||
|
0x73, 0x65, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x67, 0x69,
|
||||||
|
0x6e, 0x67, 0x73, 0x12, 0x29, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01,
|
||||||
|
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f,
|
||||||
|
0x6e, 0x2e, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x52, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x22, 0x98,
|
||||||
|
0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x46, 0x69, 0x6e, 0x64, 0x69, 0x6e,
|
||||||
|
0x67, 0x12, 0x3e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20,
|
||||||
|
0x01, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2e, 0x63, 0x6f, 0x6d, 0x6d,
|
||||||
|
0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f,
|
||||||
|
0x72, 0x79, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72,
|
||||||
|
0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||||
|
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65,
|
||||||
|
0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69,
|
||||||
|
0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x04, 0x20,
|
||||||
|
0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x6b, 0x22, 0x95, 0x01, 0x0a, 0x0f, 0x4c, 0x69,
|
||||||
|
0x63, 0x65, 0x6e, 0x73, 0x65, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x81, 0x01,
|
||||||
|
0x0a, 0x04, 0x45, 0x6e, 0x75, 0x6d, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
|
||||||
|
0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x46, 0x4f, 0x52, 0x42, 0x49,
|
||||||
|
0x44, 0x44, 0x45, 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x53, 0x54, 0x52, 0x49,
|
||||||
|
0x43, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x45, 0x43, 0x49, 0x50, 0x52,
|
||||||
|
0x4f, 0x43, 0x41, 0x4c, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x54, 0x49, 0x43, 0x45,
|
||||||
|
0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x45, 0x52, 0x4d, 0x49, 0x53, 0x53, 0x49, 0x56, 0x45,
|
||||||
|
0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x55, 0x4e, 0x45, 0x4e, 0x43, 0x55, 0x4d, 0x42, 0x45, 0x52,
|
||||||
|
0x45, 0x44, 0x10, 0x06, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10,
|
||||||
|
0x07, 0x22, 0x4e, 0x0a, 0x0b, 0x4c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65, 0x54, 0x79, 0x70, 0x65,
|
||||||
|
0x22, 0x3f, 0x0a, 0x04, 0x45, 0x6e, 0x75, 0x6d, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50,
|
||||||
|
0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x50, 0x4b,
|
||||||
|
0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x10, 0x02, 0x12,
|
||||||
|
0x10, 0x0a, 0x0c, 0x4c, 0x49, 0x43, 0x45, 0x4e, 0x53, 0x45, 0x5f, 0x46, 0x49, 0x4c, 0x45, 0x10,
|
||||||
|
0x03, 0x2a, 0x44, 0x0a, 0x08, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x0b, 0x0a,
|
||||||
|
0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4c, 0x4f,
|
||||||
|
0x57, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x45, 0x44, 0x49, 0x55, 0x4d, 0x10, 0x02, 0x12,
|
||||||
|
0x08, 0x0a, 0x04, 0x48, 0x49, 0x47, 0x48, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x49,
|
||||||
|
0x54, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x04, 0x42, 0x31, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75,
|
||||||
|
0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x71, 0x75, 0x61, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
|
||||||
|
0x74, 0x79, 0x2f, 0x74, 0x72, 0x69, 0x76, 0x79, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x6f, 0x6d,
|
||||||
|
0x6d, 0x6f, 0x6e, 0x3b, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
|
||||||
|
0x6f, 0x33,
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|||||||
@@ -33,13 +33,13 @@ message Application {
|
|||||||
message Package {
|
message Package {
|
||||||
// binary package
|
// binary package
|
||||||
// e.g. bind-utils
|
// e.g. bind-utils
|
||||||
string id = 13;
|
string id = 13;
|
||||||
string name = 1;
|
string name = 1;
|
||||||
string version = 2;
|
string version = 2;
|
||||||
string release = 3;
|
string release = 3;
|
||||||
int32 epoch = 4;
|
int32 epoch = 4;
|
||||||
PkgIdentifier identifier = 19;
|
PkgIdentifier identifier = 19;
|
||||||
string arch = 5;
|
string arch = 5;
|
||||||
// src package containing some binary packages
|
// src package containing some binary packages
|
||||||
// e.g. bind
|
// e.g. bind
|
||||||
string src_name = 6;
|
string src_name = 6;
|
||||||
@@ -56,8 +56,8 @@ message Package {
|
|||||||
}
|
}
|
||||||
|
|
||||||
message PkgIdentifier {
|
message PkgIdentifier {
|
||||||
string purl = 1;
|
string purl = 1;
|
||||||
string cpe = 2;
|
string bom_ref = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
message Misconfiguration {
|
message Misconfiguration {
|
||||||
@@ -236,8 +236,8 @@ message LicenseFinding {
|
|||||||
string link = 4;
|
string link = 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Enumerations are wrapped with a message to improve the readability of enumerations
|
// Enumerations are wrapped with a message to improve the readability of
|
||||||
// in generated code and avoid name conflicts.
|
// enumerations in generated code and avoid name conflicts.
|
||||||
// https://github.com/golang/protobuf/issues/513
|
// https://github.com/golang/protobuf/issues/513
|
||||||
message LicenseCategory {
|
message LicenseCategory {
|
||||||
enum Enum {
|
enum Enum {
|
||||||
|
|||||||
Reference in New Issue
Block a user