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.

Fixes:		8f9be1eed1 ("cam(4): Improve XPT_DEV_MATCH")
PR:		264709
Tested by:	andreas.mahling@googlemail.com
Reviewed by:	imp

(cherry picked from commit 0cd631ee06)
This commit is contained in:
Mark Johnston 2022-09-29 13:07:52 -04:00
parent 4539de92bc
commit 16d4c1de7b

View File

@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$");
#include <cam/cam.h> #include <cam/cam.h>
#include <cam/cam_ccb.h> #include <cam/cam_ccb.h>
#include <cam/cam_compat.h>
#include <cam/cam_queue.h> #include <cam/cam_queue.h>
#include <cam/cam_xpt_periph.h> #include <cam/cam_xpt_periph.h>
#include <cam/cam_xpt_internal.h> #include <cam/cam_xpt_internal.h>
@ -1120,6 +1121,7 @@ cam_periph_ioctl(struct cam_periph *periph, u_long cmd, caddr_t addr,
error = found = 0; error = found = 0;
switch(cmd){ switch(cmd){
case CAMGETPASSTHRU_0x19:
case CAMGETPASSTHRU: case CAMGETPASSTHRU:
ccb = cam_periph_getccb(periph, CAM_PRIORITY_NORMAL); ccb = cam_periph_getccb(periph, CAM_PRIORITY_NORMAL);
xpt_setup_ccb(&ccb->ccb_h, xpt_setup_ccb(&ccb->ccb_h,