<div dir="ltr">I agree that it's a good idea to include these udev rules as part of mbim-proxy/mbim-cli packages, so that different users of these packages will be at par with respect to device tagging.<div><br></div><div>Summarizing:</div><div>- Remove explicit checks for the user launching the proxy</div><div>- Modify checks for clients of the proxy so that they have the same gid as the proxy</div><div>- Include udev rules to CHMOD the relevant devices to be accessible by the proxy group.</div><div><br></div><div>I think it's better to use groups rather than users, since that is the intention of groups, right?</div><div>Also, should the actual group-name be a compile time option? Needs to be compile time because we need to generate the correct udev rules.</div><div><br></div><div>I can prepare these patches. I'll need help testing modems that I don't have.</div><div>Let me know if I should hack on this.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 2, 2014 at 1:36 AM, Bjørn Mork <span dir="ltr"><<a href="mailto:bjorn@mork.no" target="_blank">bjorn@mork.no</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">Aleksander Morgado <<a href="mailto:aleksander@aleksander.es">aleksander@aleksander.es</a>> writes:<br>
<br>
> To make it clear, "All required kernel devices" here would mean "All<br>
> /dev/cdc-wdm ports created by the cdc-wdm driver when used as a<br>
> subdriver of either qmi-wwan or cdc-mbim".<br>
><br>
> I have no idea how to configure those to be owned by a specific<br>
> user... Is that also done via udev rules? i.e. could we have ourselves<br>
> in libqmi/libmbim a udev rule that does the port ownership update as<br>
> soon as it's exposed?<br>
<br>
</span>Yes, that would be the usual way to achieve this.  I guess a catch all<br>
rule matching on supported drivers would work in this case.  Completely<br>
untested and probably not even working:<br>
<br>
 SUBSYSTEM=="usbmisc", DRIVER=="qmi_wwan", OWNER="qmiproxy-user", MODE="0600"<br>
 SUBSYSTEM=="usbmisc", DRIVER=="cdc_mbim", OWNER="mbimproxy-user", MODE="0600"<br>
<br>
<br>
This should leave the other /dev/cdc-wdmX devices (created by the<br>
"cdc-wdm" or "huawei_cdc_ncm" drivers) with default ownerships.<br>
<br>
This won't work with some Huawei configurations and the earliest<br>
"qmi_wwan" versions, where we let the "cdc-wdm" driver handle the<br>
control interface as an ordinary driver. I don't know if those<br>
configurations are supported anymore at all?  If so, then it should be<br>
possible to add an udev vendor+class match similar to the one in those<br>
driver versions.<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
Bjørn<br>
</font></span></blockquote></div><br></div>