Committed revision 33033.

On Mon, Aug 6, 2012 at 4:16 PM, Roberto Riggio
<[email protected]> wrote:
> Upgrade wing package to latest git revision. Fixes a segfault which
> could happen in very particular situations. Plus a few netifd fixes.
>
> Signed-off-by: Roberto Riggio <[email protected]>
>
> --
>
> Index: net/wing/Makefile
> ===================================================================
> --- net/wing/Makefile   (revision 32900)
> +++ net/wing/Makefile   (working copy)
> @@ -8,9 +8,9 @@
>  include $(TOPDIR)/rules.mk
>
>  PKG_NAME:=wing
> -PKG_VERSION:=20120625
> +PKG_VERSION:=20120805
>  PKG_RELEASE:=1
> -PKG_REV:=ce245718dd01fad9a9bd78dd5792245b7cdd09aa
> +PKG_REV:=d189e36d111788a647cd784536137acbe7a92e17
>
>  PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
>  PKG_SOURCE_URL:=git://github.com/rriggio/click.git
> @@ -67,7 +67,7 @@
>                 -f $(PKG_BUILD_DIR)/conf/wing/sample.click \
>                 -A --all -E Discard -E Print -E PrintWifi -E Strip -E Null \
>                 -E InfiniteSource -E RatedSource -E EtherEncap -E UDPIPEncap \
> -               -E RadiotapEncapHT -E SetTXRateHT \
> +               -E SetTXRateHT \
>                 -E WINGETTMetric -E WINGETXMetric -E WINGHopCountMetric \
>                 -E ProbeTXRate -E MadwifiRate -E AutoRateFallback -E Minstrel 
> \
>                 -E FairBuffer -E DeAggregator -E DWRRSched -E WFQSched -E 
> WRRSched; \
> Index: net/wing/files/usr/bin/wing_status
> ===================================================================
> --- net/wing/files/usr/bin/wing_status  (revision 32900)
> +++ net/wing/files/usr/bin/wing_status  (working copy)
> @@ -1,6 +1,6 @@
>  #!/bin/sh
>
> -# Copyright (c) 2006, Roberto Riggio
> +# Copyright (c) 2012, Roberto Riggio
>  #
>  # All rights reserved.
>  #
> @@ -37,6 +37,7 @@
>  ARP=0
>  GATEWAY=0
>  PROBES=0
> +INTERFACES=0
>
>  show_status() {
>
> @@ -58,6 +59,11 @@
>                 read_handler lt.hosts
>         }
>
> +       [ $INTERFACES = 1 ] && {
> +               printf "\nInterfaces:\n"
> +               read_handler lt.interfaces
> +       }
> +
>         [ $LINKS = 1 ] && {
>                 printf "\nLinks:\n"
>                 read_handler lt.links
> @@ -82,6 +88,8 @@
>                 for interface in $interfaces; do
>                         printf "\nBroadcast statistics ($interface):\n"
>                         read_handler wr/es/es_$interface.bcast_stats
> +                       printf "\nBroadcast statistics HT ($interface):\n"
> +                       read_handler wr/es/es_$interface.bcast_stats_ht
>                 done
>         }
>
> @@ -97,9 +105,10 @@
>         ARP=1
>         GATEWAY=1
>         PROBES=1
> +       INTERFACES=1
>  fi
>
> -while getopts "rshlagp" OPTVAL
> +while getopts "rshlagpi" OPTVAL
>  do
>         case $OPTVAL in
>         r) ROUTES=1
> @@ -110,6 +119,8 @@
>           ;;
>         l) LINKS=1
>           ;;
> +       i) INTERFACES=1
> +         ;;
>         a) ARP=1
>           ;;
>         g) GATEWAY=1
> Index: net/wing/files/lib/netifd/proto/wing.sh
> ===================================================================
> --- net/wing/files/lib/netifd/proto/wing.sh     (revision 32900)
> +++ net/wing/files/lib/netifd/proto/wing.sh     (working copy)
> @@ -4,12 +4,12 @@
>  . ../netifd-proto.sh
>  init_proto "$@"
>
> -proto_wing_init_config() {
> -       no_device=1
> +proto_wing_init_config() {
> +       no_device=1
>         available=1
> -        proto_config_add_string "ipaddr"
> +        proto_config_add_string "ipaddr"
>         proto_config_add_string "netmask"
> -}
> +}
>
>  proto_wing_teardown() {
>         local config="$1"
> @@ -32,7 +32,7 @@
>         local ifnames=""
>         local hwaddrs=""
>
> -       # temporary hack waiting for a way to delay wing interfaces until the
> +       # temporary hack waiting for a way to delay wing interfaces until the
>         # wifi sub-system has been brought up
>         sleep 15
>
> @@ -47,6 +47,7 @@
>
>         local profile rc ls metric prefix period tau debug
>
> +       config_load network
>         config_get profile $config profile "bulk"
>         config_get rc $config rc "minstrel"
>         config_get ls $config ls "fcfs"
> @@ -83,6 +84,8 @@
>
>         [ "$debug" == 0 ] && dbg="" || dbg="-d"
>
> +       export CLICK_BACKTRACE=1
> +
>         /usr/bin/click_config -p $profile -r $rc -s $ls -l $metric \
>                 -m "$hwmodes" -c "$freqs" -n "$ifnames" -a "$hwaddrs" $dbg \
>                 | sed -e "s/__XR_IFNAME__/$link/g" \
> @@ -111,13 +114,19 @@
>
>         ps | grep /usr/bin/click | grep -v grep | awk '{print $1}' > 
> /var/run/$link.pid
>
> +        uci_set_state network $config ifname "$iface"
> +        uci_set_state network $config ipaddr "$ipaddr"
> +        uci_set_state network $config netmask "$netmask"
> +        uci_set_state network $config gateway "0.0.0.0"
> +
>         env -i ACTION="ifup" INTERFACE="$config" DEVICE="$link" PROTO=wing 
> /sbin/hotplug-call "link" &
>
>         proto_init_update "$link" 1
> -       proto_add_ipv4_address "$ipaddr" "$netmasj"
> +       proto_add_ipv4_address "$ipaddr" "$netmask"
> +       proto_add_ipv4_route "$prefix.0.0.0" "255.0.0.0" "$iface"
>
>         route -n | grep -q '^0.0.0.0' || {
> -               proto_add_ipv4_route "0.0.0.0" 0
> +               proto_add_ipv4_route "0.0.0.0" "0" "$iface"
>         }
>
>         proto_send_update "$config"
> _______________________________________________
> openwrt-devel mailing list
> [email protected]
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to