SCSITaskDevice vs our own driver

Charles Davis cdavis at mymail.mines.edu
Sat Oct 17 22:06:50 CDT 2009


James McKenzie wrote:
> Charles Davis wrote:
>> Alexandre Julliard wrote:
>>   
>>> Charles Davis <cdavis at mymail.mines.edu> writes:
>>>
>>>     
>>>> Eventually, I want to implement IOCTL_SCSI_PASS_THOROUGH on Mac OS. The
>>>> way I see it, there are two ways to do this:
>>>>
>>>> 1. Use the SCSITaskDevice interface. This is a CFPlugIn object provided
>>>> by the driver (it's like a COM object). We have to get exclusive access
>>>> (this requires all the handles to all device files to be closed, and the
>>>> disk unmounted), and then we can send whatever SCSI commands we like.
>>>>       
>>> I don't think we can realistically require the device to be unmounted.
>>> Most apps will want to check for files too.
>>>
>>>     
>> Good point. Based on what Ken and you said, I think we'll have to write
>> our own driver. But, it's kernel-mode C++. I'm not sure you'd be willing
>> to accept that solution, either.
>>
>>   
> Can the driver be written in 'c'?  Does it absolutely have to be C++?
> 
> James McKenzie
> 
If it's an I/O Kit driver--yes it does have to be written in C++. And it
has to be an I/O Kit driver if we want this integrated into the CD-ROM
device file. If we don't, then we can write it in C. But then we'll have
to figure out a way to get from the CD-ROM FD to an FD to our new device
file.




More information about the wine-devel mailing list