#!/bin/sh # PROVIDE: wpa_supplicant # REQUIRE: mountcritremote # KEYWORD: nojail nostart . /etc/rc.subr . /etc/network.subr name="wpa_supplicant" desc="WPA/802.11i Supplicant for wireless network devices" rcvar= ifn="$2" if [ -z "$ifn" ]; then return 1 fi is_ndis_interface() { case `sysctl -n net.wlan.${1#wlan}.%parent 2>/dev/null` in ndis*) true ;; *) false ;; esac } if is_wired_interface ${ifn} ; then driver="wired" elif is_ndis_interface ${ifn} ; then driver="ndis" else driver="bsd" fi load_rc_config $name # # This portion of this rc.script is different from base. case ${command} in /usr/sbin/wpa_supplicant) # Assume user does not want base hostapd because # user specified WITHOUT_WIRELESS in make.conf # and /etc/defaults/rc.conf contains this value. unset command;; esac command=${wpa_supplicant_program:-%%PREFIX%%/sbin/wpa_supplicant} # End of differences from base. The rest of the file should remain the same. conf_file=${wpa_supplicant_conf_file} pidfile="/var/run/${name}/${ifn}.pid" command_args="-B -i $ifn -c $conf_file -D $driver -P $pidfile" required_files=$conf_file required_modules="wlan_wep wlan_tkip wlan_ccmp" run_rc_command "$1"