aboutsummaryrefslogtreecommitdiffstats
path: root/pkg
diff options
context:
space:
mode:
Diffstat (limited to 'pkg')
-rw-r--r--pkg/asset/type.go37
1 files changed, 37 insertions, 0 deletions
diff --git a/pkg/asset/type.go b/pkg/asset/type.go
new file mode 100644
index 000000000..1f3f2f220
--- /dev/null
+++ b/pkg/asset/type.go
@@ -0,0 +1,37 @@
+// Copyright 2022 syzkaller project authors. All rights reserved.
+// Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
+
+package asset
+
+import "github.com/google/syzkaller/sys/targets"
+
+type Type string
+
+// Asset types used throughout the system.
+const (
+ BootableDisk Type = "bootable_disk"
+ NonBootableDisk Type = "non_bootable_disk"
+ KernelObject Type = "kernel_object"
+ KernelImage Type = "kernel_image"
+ HTMLCoverageReport Type = "html_coverage_report"
+)
+
+func GetHumanReadableName(assetType Type, target *targets.Target) string {
+ switch assetType {
+ case BootableDisk:
+ return "disk image"
+ case NonBootableDisk:
+ return "disk image (non-bootable)"
+ case KernelImage:
+ return "kernel image"
+ case KernelObject:
+ if target != nil && target.KernelObject != "" {
+ return target.KernelObject
+ }
+ return "kernel object"
+ case HTMLCoverageReport:
+ return "coverage report (html)"
+ default:
+ panic("invalid asset type: " + assetType)
+ }
+}