[systemd-devel] [PATCH 1/2] wpa_supplicant: Add systemd support

Dan Williams dcbw at redhat.com
Tue Jul 12 08:41:45 PDT 2011


On Tue, 2011-07-12 at 16:20 +0200, Henry Gebhardt wrote:
> (To the hostap mailing list: I wasn't subscribed to this list when I
> sent the patches, now I am. Did they reach you?)
> 
> On Mon, Jul 11, 2011 at 10:13:52PM +0000, Alexander E. Patrakov wrote:
> > Henry Gebhardt wrote:
> > 
> > > --- /dev/null
> > > +++ b/wpa_supplicant/systemd/wpa_supplicant at .service @@ -0,0 +1,11 @@
> > > +[Unit]
> > > +Description=WPA supplicant daemon (interface-specific version)
> > > +# NetworkManager users will probably want the dbus version instead.
> > > +[Service]
> > > +Type=simple
> > > +ExecStart=/sbin/wpa_supplicant
> > > -c/etc/wpa_supplicant/wpa_supplicant.conf -i%I
> > > +[Install]
> > > +Alias=network.target.wants/wpa_supplicant at wlan0.service
> > 
> > This is not enough to get a working wpa_supplicant on a wired interface 
> > that uses 802.1X - we need -Dwired in this case.
> 
> I wasn't even aware that possibility existed. :) Do you think it makes
> sense to provide a unit file for each of the driver options? I'm rather
> thinking that providing a template that works for the most common setups
> may be sufficient.
> 
> > 
> > Also, there is a use case for two wpa_supplicants on two interfaces, with 
> > different configs: one for normal wireless, one for wired 802.1X, with 
> > different interface metrics. Your service file doesn't support this.
> 
> I suppose one could name the configuration file
> /etc/wpa_supplicant/wpa_supplicant-%I.conf
> 
> > 
> > And finally, how do you guarantee the correct ordering - i.e. that 
> > wpa_supplicant should not start before the interface appears?
> 
> Ah, right. Is "After=sys-devices-*-net-%I.device" possible and
> sufficient? systemd.unit(5) doesn't say anything about globbing.

Except that for automatically configured interfaces with eg
NetworkManager and other network control services, we don't really want
*any* configuration file given, because the control service handles all
of that itself; in that case all we want is passing "-u" to enable the
D-Bus interface.  So it's pretty hard to build a one-size-fits-all
wpa_supplicant service/unit file.

Dan




More information about the systemd-devel mailing list