Mac系统上给USB设备发送SCSI自定义命令

lwei2 2020-08-05 10:29:35
各位大佬,请问在Mac上给USB发送SCSI命令,是使用哪个结构体?SCSICmd_INQUIRY_StandardDataAll还是SCSI_Sense_Data,又怎么实现发送呢?在Linux下会有一个结构体专门处理这事,代码如下:

sg_io_hdr_t p_io_hdr;
memset(&p_io_hdr,0x00,sizeof(sg_io_hdr_t));

p_io_hdr.interface_id = 'S';
p_io_hdr.flags = SG_FLAG_LUN_INHIBIT;

if(aDataIn == DATA_USB_TO_HOST)
p_io_hdr.dxfer_direction = SG_DXFER_FROM_DEV;
else
p_io_hdr.dxfer_direction = SG_DXFER_TO_DEV;

p_io_hdr.cmd_len = aCBDLen; //指向 SCSI 命令的 cmdp 的字节长度
p_io_hdr.cmdp = (unsigned char*)aCBD; //指向将要执行的 SCSI 命令的指针
p_io_hdr.dxfer_len = aDataLen; //数据传输的用户内存的长度
p_io_hdr.dxferp = aData; //指向数据传输时长度至少为 dxfer_len 字节的用户内存的指针


int ret = ioctl(aHandle,SG_IO,&p_io_hdr);
if(ret<0 || p_io_hdr.driver_status != 0)
return -1;
怎么把这段代码用Mac系统上的结构体写出来呢?
...全文
16263 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhanli88 2021-10-20
  • 打赏
  • 举报
回复

解决了么,小伙伴们

qq_39161185 2021-03-14
  • 打赏
  • 举报
回复
楼主搞定了吗 ?我现在也遇到同样的场景,要在MAC下面访问 SCSI 设备,也是Linux上访问,切到MAC下访问。 方便的话加QQ 一起讨论,1035375772
lwei2 2020-11-16
  • 打赏
  • 举报
回复
引用 3 楼 Andeth-FQ 的回复:
Andeth-FQ 2020-11-15
  • 打赏
  • 举报
回复 1
lwei2 2020-09-02
  • 打赏
  • 举报
回复
ε=(´ο`*)))唉,大佬估计太忙了……
dvll 2020-09-02
  • 打赏
  • 举报
回复
没有大佬看到吗

29,046

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧