2005-06-30 04:52:47 +00:00
|
|
|
#!/bin/sh
|
|
|
|
#
|
|
|
|
# $FreeBSD$
|
|
|
|
#
|
|
|
|
|
|
|
|
# PROVIDE: wpa_supplicant
|
|
|
|
# REQUIRE: mountcritremote
|
|
|
|
# KEYWORD: nojail nostart
|
|
|
|
|
|
|
|
. /etc/rc.subr
|
|
|
|
. /etc/network.subr
|
|
|
|
|
|
|
|
name="wpa_supplicant"
|
|
|
|
rcvar=
|
|
|
|
command="/usr/sbin/${name}"
|
|
|
|
conf_file="/etc/wpa_supplicant.conf"
|
|
|
|
|
|
|
|
ifn="$2"
|
|
|
|
if [ -z "$ifn" ]; then
|
|
|
|
return 1
|
|
|
|
fi
|
|
|
|
|
2008-04-08 23:00:04 +00:00
|
|
|
is_wired_interface()
|
|
|
|
{
|
|
|
|
media=`ifconfig $1 2>/dev/null | while read line; do
|
|
|
|
case "$line" in
|
|
|
|
*media:?Ethernet*)
|
|
|
|
echo Ethernet
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
done`
|
|
|
|
test "$media" = "Ethernet"
|
|
|
|
}
|
|
|
|
|
2005-10-19 22:26:47 +00:00
|
|
|
case ${ifn} in
|
|
|
|
ndis*)
|
|
|
|
driver="ndis"
|
|
|
|
;;
|
|
|
|
*)
|
2008-04-08 23:00:04 +00:00
|
|
|
if is_wired_interface ${ifn} ; then
|
|
|
|
driver="wired"
|
|
|
|
else
|
|
|
|
driver="bsd"
|
|
|
|
fi
|
2005-10-19 22:26:47 +00:00
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
2005-06-30 04:52:47 +00:00
|
|
|
load_rc_config $name
|
|
|
|
|
2008-04-08 18:54:42 +00:00
|
|
|
pidfile="/var/run/${name}/${ifn}.pid"
|
|
|
|
command_args="-B -q -i $ifn -c $conf_file -D $driver -P $pidfile"
|
2005-06-30 04:52:47 +00:00
|
|
|
required_files=$conf_file
|
|
|
|
|
|
|
|
run_rc_command "$1"
|