wpa_supplicant revision 178022
1147682Sbrooks#!/bin/sh
2147682Sbrooks#
3147682Sbrooks# $FreeBSD: head/etc/rc.d/wpa_supplicant 178022 2008-04-08 23:12:15Z sam $
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"
14147682Sbrooksrcvar=
15147682Sbrooks
16147682Sbrooksifn="$2"
17147682Sbrooksif [ -z "$ifn" ]; then
18147682Sbrooks	return 1
19147682Sbrooksfi
20147682Sbrooks
21178021Ssamis_wired_interface()
22178021Ssam{
23178021Ssam	media=`ifconfig $1 2>/dev/null | while read line; do
24178021Ssam		case "$line" in
25178021Ssam		*media:?Ethernet*)
26178021Ssam			echo Ethernet
27178021Ssam			;;
28178021Ssam		esac
29178021Ssam	done`
30178021Ssam	test "$media" = "Ethernet"
31178021Ssam}
32178021Ssam
33151489Sjkimcase ${ifn} in
34151489Sjkimndis*)
35151489Sjkim	driver="ndis"
36151489Sjkim	;;
37151489Sjkim*)
38178021Ssam	if is_wired_interface ${ifn} ; then
39178021Ssam		driver="wired"
40178021Ssam	else
41178021Ssam		driver="bsd"
42178021Ssam	fi
43151489Sjkim	;;
44151489Sjkimesac
45151489Sjkim
46147682Sbrooksload_rc_config $name
47147682Sbrooks
48178022Ssamcommand=${wpa_supplicant_program}
49178022Ssamconf_file=${wpa_supplicant_conf_file}
50178018Ssampidfile="/var/run/${name}/${ifn}.pid"
51178022Ssamcommand_args="-B -i $ifn -c $conf_file -D $driver -P $pidfile"
52147682Sbrooksrequired_files=$conf_file
53147682Sbrooks
54147682Sbrooksrun_rc_command "$1"
55