aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Johnston <markj@FreeBSD.org>2022-09-29 17:07:52 +0000
committerMark Johnston <markj@FreeBSD.org>2022-11-01 13:28:11 +0000
commitfff5c5fe911e7067390e6ff73c4c58489a30c849 (patch)
treee06e6ab3ace84b810d34b03349b869bdb02deb29
parent4867d7d34dfd54986d5798eddc3ce92a70cc9841 (diff)
cam: Provide compatibility for CAMGETPASSTHRU for periph drivers
The CAM version bump 0x19 -> 0x1a changed the CAMGETPASSTHRU definition, so applications using the old ioctl are broken. However, that version change did not affect anything relating to the ioctl implementation for periphs. Approved by: so Security: FreeBSD-EN-22:26.cam Fixes: 8f9be1eed11c ("cam(4): Improve XPT_DEV_MATCH") PR: 264709 Tested by: andreas.mahling@googlemail.com Reviewed by: imp (cherry picked from commit 0cd631ee0693dd7337c38b251044e018aad6fbaf) (cherry picked from commit 16d4c1de7b40f1cc0d323b9ecc5a38afb7a42f8a)
-rw-r--r--sys/cam/cam_periph.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/cam/cam_periph.c b/sys/cam/cam_periph.c
index 9a4f4a2b160b..a76f20480aff 100644
--- a/sys/cam/cam_periph.c
+++ b/sys/cam/cam_periph.c
@@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$");
#include <cam/cam.h>
#include <cam/cam_ccb.h>
+#include <cam/cam_compat.h>
#include <cam/cam_queue.h>
#include <cam/cam_xpt_periph.h>
#include <cam/cam_xpt_internal.h>
@@ -1106,6 +1107,7 @@ cam_periph_ioctl(struct cam_periph *periph, u_long cmd, caddr_t addr,
error = found = 0;
switch(cmd){
+ case CAMGETPASSTHRU_0x19:
case CAMGETPASSTHRU:
ccb = cam_periph_getccb(periph, CAM_PRIORITY_NORMAL);
xpt_setup_ccb(&ccb->ccb_h,