|
@@ -301,6 +301,12 @@ static int sg_ioctl_trans(unsigned int fd, unsigned int cmd,
|
|
u32 data;
|
|
u32 data;
|
|
void __user *dxferp;
|
|
void __user *dxferp;
|
|
int err;
|
|
int err;
|
|
|
|
+ int interface_id;
|
|
|
|
+
|
|
|
|
+ if (get_user(interface_id, &sgio32->interface_id))
|
|
|
|
+ return -EFAULT;
|
|
|
|
+ if (interface_id != 'S')
|
|
|
|
+ return sys_ioctl(fd, cmd, (unsigned long)sgio32);
|
|
|
|
|
|
if (get_user(iovec_count, &sgio32->iovec_count))
|
|
if (get_user(iovec_count, &sgio32->iovec_count))
|
|
return -EFAULT;
|
|
return -EFAULT;
|