[patch-team] update wing to 20110329 - Signed off by Roberto Riggio <roberto.riggio@create-net.org>

git-svn-id: svn://svn.openwrt.org/openwrt/packages@26386 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
dingo 2011-03-31 02:53:51 +00:00
parent 84a4257a6b
commit 0a14f0bd77
3 changed files with 26 additions and 24 deletions

View File

@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=wing
PKG_VERSION:=20101023
PKG_RELEASE:=1
PKG_REV:=daffb8d7642c4a343951d67159504ff4f4da49ed
PKG_VERSION:=20110329
PKG_RELEASE:=2
PKG_REV:=4ef2a352b29c26ce76d8b3d7c6897d301362a101
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://github.com/create-net/click-wing.git
PKG_SOURCE_URL:=git://github.com/rriggio/click.git
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=$(PKG_REV)
PKG_SOURCE_PROTO:=git
@ -29,7 +29,6 @@ define Package/wing
TITLE:=Wireless mesh networking toolkit
SECTION:=net
CATEGORY:=Network
SUBMENU:=Routing and Redirection
MAINTAINER:=Roberto Riggio <roberto.riggio@create-net.org>
DEPENDS:=+kmod-tun +libpcap +libstdcpp
URL:=http://www.wing-project.org/
@ -48,12 +47,14 @@ CONFIGURE_ARGS += \
--enable-userlevel \
--enable-wifi \
--enable-wing \
--enable-diffserv \
--disable-linuxmodule \
--disable-dynamic-linking \
HOST_CONFIGURE_ARGS += \
--enable-userlevel \
--enable-wifi \
--enable-diffserv \
--enable-wing \
--disable-linuxmodule \
@ -65,11 +66,11 @@ define Build/Compile
(cd $(PKG_BUILD_DIR)/userlevel; \
$(STAGING_DIR_HOST)/bin/click-mkmindriver -p $(PKG_NAME) -C $(STAGING_DIR_HOST) \
-f $(PKG_BUILD_DIR)/conf/wing/sample.click \
-A --all -E Discard -E Print -E Null \
-A --all -E Discard -E Print -E PrintWifi -E Null \
-E InfiniteSource -E RatedSource -E EtherEncap -E UDPIPEncap \
-E RadiotapDecap -E RadiotapEncap \
-E WINGETTMetric -E WINGETXMetric -E WINGHopCountMetric \
-E ProbeTXRate -E MadwifiRate -E AutoRateFallback -E Minstrel \
-E RoundRobinSched -E DRRSched; \
-E FairBuffer -E DeAggregator -E DWRRSched -E WFQSched -E WRRSched; \
);
$(call Build/Install/Default, MINDRIVER=$(PKG_NAME) install)
endef

View File

@ -1,13 +1,13 @@
uci set network.mesh=interface
uci set network.mesh.proto=wing
uci set network.mesh.profile=bulk
uci set network.mesh.rc=static
uci set network.mesh.rc=minstrel
uci set network.mesh.ls=fcfs
uci set network.mesh.metric=wcett
uci set network.mesh.prefix=6
uci set network.mesh.period=36000
uci set network.mesh.tau=360000
uci set network.mesh.debug=true
uci set network.mesh.period=10000
uci set network.mesh.tau=100000
uci set network.mesh.debug=false
cfg=$(uci add firewall zone)
uci set firewall.$cfg.name="mesh"

View File

@ -36,32 +36,32 @@ setup_interface_wing() {
exit 1
fi
local profile rc ls prefix debug
local profile rc ls metric prefix period tau debug
config_get profile $config profile "bulk"
config_get rc $config rc "static"
config_get rc $config rc "minstrel"
config_get ls $config ls "fcfs"
config_get metric $config metric "wcett"
config_get prefix $config prefix "6"
config_get period $config period "10000"
config_get tau $config tau "100000"
config_get_bool debug $config debug "False"
config_get_bool debug $config debug "false"
local hwaddr=$(echo $hwaddrs | sed 's/ .*//');
local ipaddr=$(printf "$prefix.%d.%d.%d" $(echo $hwaddr | awk -F: '{printf "0x%s 0x%s 0x%s",$4,$5,$6}'))
local netmask=255.0.0.0
if ! wing_template_available "profile" "$profile" "bulk"; then
if ! wing_template_available "profile" "$profile"; then
logger -t "$config" "Unable to configure router. Exiting."
exit 1
fi
if ! wing_template_available "rc" "$rc" "static"; then
if ! wing_template_available "rc" "$rc"; then
logger -t "$config" "Unable to configure rate control. Exiting."
exit 1
fi
if ! wing_template_available "ls" "$ls" "radiotap"; then
if ! wing_template_available "ls" "$ls"; then
logger -t "$config" "Unable to configure link scheduler. Exiting."
exit 1
fi
@ -115,10 +115,7 @@ setup_interface_wing() {
wing_template_available() { # prefix, template, default
local template="/etc/wing/$1.$2.click"
[ ! -f $template ] && {
template="/etc/wing/$1.$3.click"
[ ! -f $template ] && {
return 1
}
return 1
}
return 0
}
@ -131,8 +128,12 @@ wing_list_interfaces() {
config_get ifname $1 ifname
config_get device $1 device
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}')
freq=${freq:-"0"}
config_get channel $device channel "0"
[ "$channel" = "0" -o "$channel" = "auto" ] && {
logger -t "$device" "Channel not specified. Ignoring."
return 0
}
freq=$(iwlist $ifname freq | sed -n "s/^.*Channel 0*$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)
freqs=${freqs:+"$freqs "}$freq
hwmodes=${hwmodes:+"$hwmodes "}$hwmode