[patchteam] WING version bump / updates for HNA and fixes for some scripts

git-svn-id: svn://svn.openwrt.org/openwrt/packages@22868 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
dingo
2010-09-01 14:41:49 +00:00
parent ca799d93a3
commit 82d12458d3
3 changed files with 128 additions and 129 deletions

View File

@ -10,9 +10,9 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=wing PKG_NAME:=wing
ifneq ($(CONFIG_WING_STABLE),) ifneq ($(CONFIG_WING_STABLE),)
PKG_VERSION:=20100805 PKG_VERSION:=20100827
PKG_RELEASE:=1 PKG_RELEASE:=2
PKG_REV:=21aae2ae5bea85426aded47b055b4fe62c2cea2e PKG_REV:=6f238baa6c4f357f1fe0e55f1b71db7816747b33
else else
PKG_VERSION:=$(shell date +%Y%m%d) PKG_VERSION:=$(shell date +%Y%m%d)
PKG_RELEASE:=1 PKG_RELEASE:=1
@ -33,7 +33,7 @@ define Package/wing
TITLE:=Wireless mesh networking toolkit TITLE:=Wireless mesh networking toolkit
SECTION:=net SECTION:=net
CATEGORY:=Network CATEGORY:=Network
MAINTAINER:=Roberto Riggio <roberto.riggio@create-net.org> MAINTAINER:=Roberto Riggio (roberto.riggio@create-net.org)
DEPENDS:=+kmod-tun DEPENDS:=+kmod-tun
URL:=http://www.wing-project.org/ URL:=http://www.wing-project.org/
endef endef

View File

@ -10,8 +10,8 @@ coldplug_interface_wing() {
stop_interface_wing() { stop_interface_wing() {
local config="$1" local config="$1"
local iface="wing-$config" local iface="wing-$config"
env -i ACTION="ifdown" INTERFACE="$config" DEVICE="$iface" PROTO=wing /sbin/hotplug-call "iface"& env -i ACTION="ifdown" INTERFACE="$config" DEVICE="$iface" PROTO=wing /sbin/hotplug-call "iface" &
[ -f "/var/run/$iface.pid" ]&& { [ -f "/var/run/$iface.pid" ] && {
kill -9 $(cat /var/run/$iface.pid) kill -9 $(cat /var/run/$iface.pid)
rm /var/run/$iface.pid rm /var/run/$iface.pid
} }
@ -71,7 +71,7 @@ setup_interface_wing() {
exit 1 exit 1
fi fi
[ "$debug" == 0 ]&& dbg="" || dbg="-d" [ "$debug" == 0 ] && dbg="" || dbg="-d"
/usr/bin/click_config -p $profile -r $rc -s $ls -l $metric \ /usr/bin/click_config -p $profile -r $rc -s $ls -l $metric \
-m "$hwmodes" -c "$freqs" -n "$ifnames" -a "$hwaddrs" $dbg \ -m "$hwmodes" -c "$freqs" -n "$ifnames" -a "$hwaddrs" $dbg \
@ -79,10 +79,10 @@ setup_interface_wing() {
| sed -e "s/__XR_IP__/$ipaddr/g" \ | sed -e "s/__XR_IP__/$ipaddr/g" \
| sed -e "s/__XR_NM__/$netmask/g" \ | sed -e "s/__XR_NM__/$netmask/g" \
| sed -e "s/__XR_PERIOD__/$period/g" \ | sed -e "s/__XR_PERIOD__/$period/g" \
| sed -e "s/__XR_TAU__/$tau/g"> /tmp/$iface.click | sed -e "s/__XR_TAU__/$tau/g" > /tmp/$iface.click
/usr/bin/click-align /tmp/$iface.click> /tmp/$iface-aligned.click 2>/var/log/$iface.log /usr/bin/click-align /tmp/$iface.click > /tmp/$iface-aligned.click 2>/var/log/$iface.log
[ ! -c /dev/net/tun ]&& { [ ! -c /dev/net/tun ] && {
mkdir -p /dev/net/ mkdir -p /dev/net/
mknod /dev/net/tun c 10 200 mknod /dev/net/tun c 10 200
if [ ! -c /dev/net/tun ]; then if [ ! -c /dev/net/tun ]; then
@ -95,28 +95,28 @@ setup_interface_wing() {
# prevent it from touching iface by disabling .auto here # prevent it from touching iface by disabling .auto here
uci_set_state network "$config" auto 0 uci_set_state network "$config" auto 0
(/usr/bin/click /tmp/$iface-aligned.click>> /var/log/$iface.log 2>&1&)& (/usr/bin/click /tmp/$iface-aligned.click >> /var/log/$iface.log 2>&1 &) &
sleep 2 sleep 2
ps | grep /usr/bin/click | grep -q -v grep || { ps | grep /usr/bin/click | grep -q -v grep || {
logger -t "$config" "Unable to start click. Exiting." logger -t "$config" "Unable to start click. Exiting."
exit 1 exit 1
} }
ps | grep /usr/bin/click | grep -v grep | awk '{print $1}'> /var/run/$iface.pid ps | grep /usr/bin/click | grep -v grep | awk '{print $1}' > /var/run/$iface.pid
ifconfig "$iface" "$ipaddr" netmask "$netmask" ifconfig "$iface" "$ipaddr" netmask "$netmask"
uci_set_state network $config ipaddr "$ipaddr" uci_set_state network $config ipaddr "$ipaddr"
uci_set_state network $config netmask "$netmask" uci_set_state network $config netmask "$netmask"
env -i ACTION="ifup" INTERFACE="$config" DEVICE="$iface" PROTO=wing /sbin/hotplug-call "iface"& env -i ACTION="ifup" INTERFACE="$config" DEVICE="$iface" PROTO=wing /sbin/hotplug-call "iface" &
} }
wing_template_available() { # prefix, template, default wing_template_available() { # prefix, template, default
local template="/etc/wing/$1.$2.click" local template="/etc/wing/$1.$2.click"
[ ! -f $template ]&& { [ ! -f $template ] && {
template="/etc/wing/$1.$3.click" template="/etc/wing/$1.$3.click"
[ ! -f $template ]&& { [ ! -f $template ] && {
return 1 return 1
} }
} }
@ -125,14 +125,13 @@ wing_template_available() { # prefix, template, default
wing_list_interfaces() { wing_list_interfaces() {
local channel freq hwmode hwaddr ifname mode local channel freq hwmode hwaddr ifname mode
config_get ifname $1 ifname
config_get mode $1 mode config_get mode $1 mode
config_get device $1 device
config_get_bool up $1 up config_get_bool up $1 up
[ "$up" = "1" -a "$mode" = "monitor" ] || return 0 [ "$up" = "1" -a "$mode" = "monitor" ] || return 0
config_get hwmode $device hwmode "11b" config_get ifname $1 ifname
config_get channel $device channel "1" config_get device $1 device
freq=$(iwlist $ifname freq | sed -n "s/^.*Channel 0*$channel : \([0-9.]*\).*/\1/p" | awk '{print $1*1000}') config_get hwmode $device hwmode "11bg"
freq=$(iwlist $ifname freq | grep "Current Frequency" | sed -n "s/^.*Current Frequency:\([0-9.]*\) GHz (Channel \([0-9]*\))/\1/p" | awk '{print $1*1000}')
hwaddr=$(/sbin/ifconfig $ifname 2>&1 | sed -n 's/^.*HWaddr \([0-9A-Za-z\-]*\).*/\1/p' | sed -e 's/\-/:/g' | cut -c1-17) hwaddr=$(/sbin/ifconfig $ifname 2>&1 | sed -n 's/^.*HWaddr \([0-9A-Za-z\-]*\).*/\1/p' | sed -e 's/\-/:/g' | cut -c1-17)
freqs=${freqs:+"$freqs "}$freq freqs=${freqs:+"$freqs "}$freq
hwmodes=${hwmodes:+"$hwmodes "}$hwmode hwmodes=${hwmodes:+"$hwmodes "}$hwmode