Re: Restricting CDC-ACM devices

Nate
2007-08-22T14:41:49Z

> Why do you not want to modify the driver?

Modifying the cdc-acm driver is an alternative; however, I would like to
avoid that when I'm adding my vendor specific restrictions. My hope is
that when patches are made to that file, I don't need to worry about
someone merging them over the my previous ones. Is this a bad goal?

> You can disconnect the device from the driver from userspace for any
> device you just don't want to have connected by using the sysfs
> bind/unbind files. That doesn't require any kernel changes at all.

I don't fully follow you here. Are you saying that I can disconnect the
CDC-ACM driver from my USB device and allow my driver to get a call probe?

> Why do you want to do this, what are you expecting to achieve with such
> a change?

The main application accesses data from USB devices over the /dev/ttyACMx
files, so using the CDC-ACM driver makes it easy for me to get the USB
device data. There will be multiple USB devices that will be
communicating using CDC-ACM protocol, and I would like to restrict access
to only devices with the correct product IDs. I was thinking if my driver
checked the VID/PID before allowing the CDC-ACM driver to process the
probe call, then I can restrict the devices. The approved devices would
then be connected to ttyACMx by the standard cdc-acm driver code.

I'm still pretty green with regards to USB driver development, so there
might be a better way to achieve this. If there is please tell me. :)

Thanks,
-Nate