1147682Sbrooks#!/bin/sh
2147682Sbrooks#
3147682Sbrooks# $FreeBSD$
4147682Sbrooks#
5147682Sbrooks
6147682Sbrooks# PROVIDE: wpa_supplicant
7147682Sbrooks# REQUIRE: mountcritremote
8147682Sbrooks# KEYWORD: nojail nostart
9147682Sbrooks
10147682Sbrooks. /etc/rc.subr
11147682Sbrooks. /etc/network.subr
12147682Sbrooks
13147682Sbrooksname="wpa_supplicant"
14298514Slmedesc="WPA/802.11i Supplicant for wireless network devices"
15147682Sbrooksrcvar=
16147682Sbrooks
17147682Sbrooksifn="$2"
18147682Sbrooksif [ -z "$ifn" ]; then
19147682Sbrooks	return 1
20147682Sbrooksfi
21147682Sbrooks
22178356Ssamis_ndis_interface()
23178356Ssam{
24178356Ssam	case `sysctl -n net.wlan.${1#wlan}.%parent 2>/dev/null` in
25178356Ssam		ndis*) true ;;
26178356Ssam		*) false ;;
27178356Ssam	esac
28178356Ssam}
29178356Ssam
30178356Ssamif is_wired_interface ${ifn} ; then
31178356Ssam	driver="wired"
32178356Ssamelif is_ndis_interface ${ifn} ; then
33151489Sjkim	driver="ndis"
34178356Ssamelse
35178356Ssam	driver="bsd"
36178356Ssamfi
37151489Sjkim
38147682Sbrooksload_rc_config $name
39147682Sbrooks
40178022Ssamcommand=${wpa_supplicant_program}
41178022Ssamconf_file=${wpa_supplicant_conf_file}
42178018Ssampidfile="/var/run/${name}/${ifn}.pid"
43178022Ssamcommand_args="-B -i $ifn -c $conf_file -D $driver -P $pidfile"
44147682Sbrooksrequired_files=$conf_file
45178356Ssamrequired_modules="wlan_wep wlan_tkip wlan_ccmp"
46147682Sbrooks
47147682Sbrooksrun_rc_command "$1"
48