Hi Dan,<br><br>In my specific customer driver Start() starts the Radio and Stop() stops it saving power.<br>Unfortunately the driver itself is not written in the way when Start() / Stop() will be called through "standard" IOCTL, so neither ifconfig nor iwconfig will be able to call it.<br>
<br>I can add wifi_ioctl utility that will call IOCTLs but then I'll have 3 utilities:<br>wpa_cli (kind of), wpa_supplicant, wifi_ioctl - and I think to have only 2 is a reasonable will...<br><br>Thanks,<br><br>Dmitry<br>
<br><div class="gmail_quote">On Fri, Mar 7, 2008 at 2:33 PM, Dan Williams <<a href="mailto:dcbw@redhat.com">dcbw@redhat.com</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Fri, 2008-03-07 at 12:21 -0800, Dmitry Shmidt wrote:<br>
> I think there are both driver-specific and "generic" commands.<br>
> From "Generic" perspective I would say that Start/Stop commands will<br>
> be useful.<br>
<br>
</div>Describe start/stop more please... start and stop are "ifconfig xxx up"<br>
and "ifconfig xxx down". No more, no less.<br>
<div class="Ih2E3d"><br>
> Let's assume you want to save power on turn off WiFi if you are<br>
> temporarily not using it.<br>
<br>
</div>If you're not using the wifi, either flip the killswitch, or "ifconfig<br>
xxx down", and the driver should automatically turn off the RF power.<br>
Not all drivers work this way, but that's a bug.<br>
<br>
Custom commands really, really need to be on a case-by-case basis, if at<br>
all. I realize that WEXT doesn't handle them very well, but if we just<br>
allow any old custom commands we get right back into the horrible,<br>
horrible situation of 2 years ago where every single driver had a<br>
different command set and you had to have special cases for every single<br>
one.<br>
<font color="#888888"><br>
Dan<br>
</font><div><div></div><div class="Wj3C7c"><br>
> init/deinit are not useful for this purpose.<br>
><br>
> I can imagine driver specific commands as well, but the ability to<br>
> pass any command will solve this issue.<br>
><br>
> Thanks,<br>
><br>
> Dmitry<br>
><br>
> On Fri, Mar 7, 2008 at 11:41 AM, Jouni Malinen <<a href="mailto:j@w1.fi">j@w1.fi</a>> wrote:<br>
> On Fri, Mar 07, 2008 at 11:26:28AM -0800, Dmitry Shmidt wrote:<br>
><br>
> > I need to be able to call driver specific IOCTL (commands)<br>
> from control<br>
> > application.<br>
><br>
><br>
> Would you be able to describe what kind of functionality this<br>
> is used<br>
> for? Are these truly driver specific or could there be more<br>
> generic use<br>
> for them?<br>
><br>
> > It is possible to call IOCTL directly, but I think it will<br>
> be more<br>
> > "architecturally" correct to do this through supplicant<br>
> interface.<br>
> > It was not a big deal to add additional command processing<br>
> to ctrl_iface.c<br>
> > and additional entry to struct wpa_driver_ops, that will<br>
> > process command and pass it to the driver.<br>
> ><br>
> > Does it seem Ok ? Am I missing something ?<br>
><br>
><br>
> I would assume this depends on what the exact functionality<br>
> would be. I<br>
> could imagine some driver interaction to be perfectly<br>
> reasonable to do<br>
> directly from an external application at least when the<br>
> operations are<br>
> completely independent from the normal supplicant<br>
> functionality (e.g.,<br>
> WMM configuration) while some operations are likely to fit<br>
> better with<br>
> wpa_supplicant talking to the driver in order to avoid<br>
> conflicts with<br>
> other wpa_supplicant-initiated commands.<br>
><br>
> As far as the source code change itself is concerned, yes, I<br>
> would<br>
> expect that an additional command in ctrl_iface.c and a<br>
> handler function<br>
> in struct wpa_driver_ops would be the cleanest way of doing<br>
> this for<br>
> driver specific changes.<br>
><br>
> --<br>
> Jouni Malinen PGP<br>
> id EFC895FA<br>
> _______________________________________________<br>
> HostAP mailing list<br>
> <a href="mailto:HostAP@lists.shmoo.com">HostAP@lists.shmoo.com</a><br>
> <a href="http://lists.shmoo.com/mailman/listinfo/hostap" target="_blank">http://lists.shmoo.com/mailman/listinfo/hostap</a><br>
><br>
> _______________________________________________<br>
> HostAP mailing list<br>
> <a href="mailto:HostAP@lists.shmoo.com">HostAP@lists.shmoo.com</a><br>
> <a href="http://lists.shmoo.com/mailman/listinfo/hostap" target="_blank">http://lists.shmoo.com/mailman/listinfo/hostap</a><br>
<br>
</div></div></blockquote></div><br>