From b0947553167615d7bb1b67b22d2d080e5a5ab2cd Mon Sep 17 00:00:00 2001 From: TheOfficialFloW Date: Thu, 30 Jul 2020 11:33:48 +0200 Subject: all: initialize vhci in linux * all: initialize vhci in linux * executor/common_linux.h: improve vhci initialization * pkg/repro/repro.go: add missing vhci options * executor/common_linux.h: fix type and add missing header * executor, pkg: do it like NetInjection * pkg/csource/csource.go: do not emit syz_emit_vhci if vhci is not enabled * executor/common_linux.h: fix format string * executor/common_linux.h: initialize with memset For som reason {0} gets complains about missing braces... * executor/common_linux.h: simplify vhci init * executor/common_linux.h: try to bring all available hci devices up * executor/common_linux.h: find which hci device has been registered * executor/common_linux.h: use HCI_VENDOR_PKT response to retrieve device id * sys/linux/dev_vhci.txt: fix structs of inquiry and report packets * executor/common_linux.h: remove unnecessary return statement and check vendor_pkt read size * executor/common_linux.h: remove unnecessary return statement and check vendor_pkt read size * sys/linux/dev_vhci.txt: pack extended_inquiry_info_t * sys/linux/l2cap.txt: add l2cap_conf_opt struct * executor/common_linux.h: just fill bd addr will 0xaa * executor/common_linux.h: just fill bd addr will 0xaa --- pkg/host/features_linux.go | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'pkg/host/features_linux.go') diff --git a/pkg/host/features_linux.go b/pkg/host/features_linux.go index 8c6f63004..230022c38 100644 --- a/pkg/host/features_linux.go +++ b/pkg/host/features_linux.go @@ -28,6 +28,7 @@ func init() { checkFeature[FeatureKCSAN] = checkKCSAN checkFeature[FeatureDevlinkPCI] = checkDevlinkPCI checkFeature[FeatureUSBEmulation] = checkUSBEmulation + checkFeature[FeatureVhciInjection] = checkVhciInjection } func checkCoverage() string { @@ -191,6 +192,13 @@ func checkUSBEmulation() string { return "" } +func checkVhciInjection() string { + if err := osutil.IsAccessible("/dev/vhci"); err != nil { + return err.Error() + } + return "" +} + func checkDebugFS() string { if err := osutil.IsAccessible("/sys/kernel/debug"); err != nil { return "debugfs is not enabled or not mounted" -- cgit mrf-deployment