summaryrefslogtreecommitdiff
path: root/usr
diff options
context:
space:
mode:
authorDan McDonald <danmcd@mnx.io>2022-05-03 00:10:41 -0400
committerGitHub <noreply@github.com>2022-05-03 00:10:41 -0400
commite2ccbc6b238eb1f8e74a434c640e5b322f359224 (patch)
tree679c0fdb9270e3844f7bb68a60eea351a58702d2 /usr
parente9f6569a02449ea535efa06fb1c4f3b93bb85a35 (diff)
downloadillumos-joyent-e2ccbc6b238eb1f8e74a434c640e5b322f359224.tar.gz
OS-8378 Have bhhwcompat exploit illumos#14660
Reviewed by: Brian Bennett <brian.bennett@mnx.io> Approved by: Brian Bennett <brian.bennett@mnx.io>
Diffstat (limited to 'usr')
-rw-r--r--usr/src/lib/brand/bhyve/zone/bhhwcompat.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/usr/src/lib/brand/bhyve/zone/bhhwcompat.c b/usr/src/lib/brand/bhyve/zone/bhhwcompat.c
index 5f7a20feba..d13df8cd42 100644
--- a/usr/src/lib/brand/bhyve/zone/bhhwcompat.c
+++ b/usr/src/lib/brand/bhyve/zone/bhhwcompat.c
@@ -11,6 +11,7 @@
/*
* Copyright 2018, Joyent, Inc.
+ * Copyright 2022 MNX Cloud, Inc.
*/
/*
@@ -43,7 +44,7 @@ usage()
int
main(int argc, char *argv[])
{
- int fd, c;
+ int fd, c, version;
char emsg[128];
boolean_t max_cpu = B_FALSE;
boolean_t verbose = B_FALSE;
@@ -72,6 +73,15 @@ main(int argc, char *argv[])
}
emsg[0] = '\0';
+ version = ioctl(fd, VMM_INTERFACE_VERSION, 0);
+ if (version != VMM_CURRENT_INTERFACE_VERSION) {
+ if (verbose) {
+ fprintf(stderr, "mismatched interface version, "
+ "expecting %d, got %d\n",
+ VMM_CURRENT_INTERFACE_VERSION, version);
+ }
+ exit(1);
+ }
if (ioctl(fd, VMM_VM_SUPPORTED, emsg) < 0) {
if (verbose)
fprintf(stderr, "%s\n", emsg);