[PATCH v12 1/5] Rearrange fff config values into their own config file

Tim Niemeyer tim at tn-x.org
So Nov 12 20:29:49 CET 2017


Hi

Patchset applied.

Tim

Am Freitag, den 03.11.2017, 15:00 +0100 schrieb Adrian Schmutzler:
> This moves the FFF configuration from
> /etc/config/system to a new file /etc/config/fff. Thus,
> this file can be copied as a whole during upgrade (with
> compatibility provided) and then resulting values in
> other files are re-set later.
> 
> This also fixes the bandwidth settings not being persistent
> during upgrade. Other settings may join ...
> 
> I tried to go through all the code and update all occurrences
> of the relevant system variables (looking for "system" both
> in GitHub and my local src folder).
> 
> Note that a downgrade will result in loss of configuration!
> 
> Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
> Tested-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
> 
> ---
> 
> Changes in v11:
>  - Redesign for keyexchange v2.
> 
> Changes in v12:
>  - Removed downgrade script
>  - Changed default hostname to FFF
>  - Rename FFF to $mac in nodewatcher
>  - Also update variables in show_info
> ---
>  src/packages/fff/fff-config/Makefile               | 40 ++++++++++++++++++++++
>  .../files/etc/uci-defaults/98-configure-fff        | 25 ++++++++++++++
>  src/packages/fff/fff-hoods/Makefile                |  2 +-
>  .../fff/fff-hoods/files/usr/sbin/configurehood     |  4 +--
>  src/packages/fff/fff-nodewatcher/Makefile          |  4 +--
>  .../fff/fff-nodewatcher/files/usr/sbin/nodewatcher | 21 ++++++------
>  .../fff/fff-support/files/usr/sbin/show_info       | 12 +++----
>  src/packages/fff/fff-sysupgrade/Makefile           |  2 +-
>  .../etc/uci-defaults/05-config-system-migration    | 36 +++++++++++--------
>  .../files/etc/uci-defaults/99-fff-sysupgrade       |  2 +-
>  src/packages/fff/fff-web/Makefile                  |  4 +--
>  .../fff-web/files/www/public/cgi-bin/status.html   | 12 +++----
>  .../fff/fff-web/files/www/ssl/cgi-bin/header       |  2 +-
>  .../fff-web/files/www/ssl/cgi-bin/settings.html    | 39 ++++++++++++---------
>  src/packages/fff/fff/Makefile                      |  1 +
>  15 files changed, 143 insertions(+), 63 deletions(-)
>  create mode 100644 src/packages/fff/fff-config/Makefile
>  create mode 100644 src/packages/fff/fff-config/files/etc/uci-defaults/98-configure-fff
> 
> diff --git a/src/packages/fff/fff-config/Makefile b/src/packages/fff/fff-config/Makefile
> new file mode 100644
> index 0000000..fe4f5df
> --- /dev/null
> +++ b/src/packages/fff/fff-config/Makefile
> @@ -0,0 +1,40 @@
> +include $(TOPDIR)/rules.mk
> +
> +PKG_NAME:=fff-config
> +PKG_VERSION:=1
> +PKG_RELEASE:=1
> +
> +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
> +
> +include $(INCLUDE_DIR)/package.mk
> +
> +define Package/$(PKG_NAME)
> +    SECTION:=base
> +    CATEGORY:=Freifunk
> +    TITLE:=Freifunk-Franken Config
> +    URL:=http://www.freifunk-franken.de
> +    DEPENDS:=+fff-boardname + at BUSYBOX_CONFIG_WGET
> +endef
> +
> +define Package/$(PKG_NAME)/description
> +    This is the Freifunk Franken Firmware Config package.
> +    This packages provides utilities for a central FFF config file.
> +endef
> +
> +define Build/Prepare
> +    echo "all: " > $(PKG_BUILD_DIR)/Makefile
> +endef
> +
> +define Build/Configure
> +    # nothing
> +endef
> +
> +define Build/Compile
> +    # nothing
> +endef
> +
> +define Package/$(PKG_NAME)/install
> +    $(CP) ./files/* $(1)/
> +endef
> +
> +$(eval $(call BuildPackage,$(PKG_NAME)))
> diff --git a/src/packages/fff/fff-config/files/etc/uci-defaults/98-configure-fff b/src/packages/fff/fff-config/files/etc/uci-defaults/98-configure-fff
> new file mode 100644
> index 0000000..677da15
> --- /dev/null
> +++ b/src/packages/fff/fff-config/files/etc/uci-defaults/98-configure-fff
> @@ -0,0 +1,25 @@
> +#!/bin/sh
> +# Copyright 2017 Adrian Schmutzler
> +# License GPLv3
> +
> +touch /etc/config/fff
> +
> +if ! uci -q get fff.system > /dev/null ; then
> +	uci -q set fff.system=fff
> +	uci -q set "fff.system.hostname=FFF"
> +fi
> +
> +FFF_hostname=$(uci -q get "fff.system.hostname")
> +test -n "${FFF_hostname}" && uci -q set "system. at system[0].hostname=${FFF_hostname}"
> +test -n "${FFF_hostname}" && echo "${FFF_hostname}" > /proc/sys/kernel/hostname
> +
> +traffic_enabled=$(uci -q get "fff.trafficcontrol.enabled")
> +traffic_in=$(uci -q get "fff.trafficcontrol.limit_in")
> +traffic_out=$(uci -q get "fff.trafficcontrol.limit_out")
> +
> +test -n "${traffic_enabled}" && uci -q set "simple-tc.example.enabled=${traffic_enabled}"
> +uci -q set "simple-tc.example.ifname=wan"
> +uci -q set "simple-tc.example.limit_ingress=${traffic_in}"
> +uci -q set "simple-tc.example.limit_egress=${traffic_out}"
> +
> +uci -q commit
> diff --git a/src/packages/fff/fff-hoods/Makefile b/src/packages/fff/fff-hoods/Makefile
> index dd22df4..11ab6d1 100644
> --- a/src/packages/fff/fff-hoods/Makefile
> +++ b/src/packages/fff/fff-hoods/Makefile
> @@ -13,7 +13,7 @@ define Package/$(PKG_NAME)
>      CATEGORY:=Freifunk
>      TITLE:= Freifunk-Franken hoods
>      URL:=http://www.freifunk-franken.de
> -    DEPENDS:=+fff-network
> +    DEPENDS:=+fff-network +fff-config
>  endef
>  
>  define Package/$(PKG_NAME)/description
> diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> index f785b7d..aeec401 100755
> --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood
> @@ -60,8 +60,8 @@ if [ -f "$hiddenapfile" ]; then
>  	rm "$hiddenapfile"
>  fi
>  
> -lat=$(uci -q get system. at system[0].latitude)
> -long=$(uci -q get system. at system[0].longitude)
> +lat=$(uci -q get fff.system.latitude)
> +long=$(uci -q get fff.system.longitude)
>  
>  # if we have Internet, we download the Hoodfile from the keyxchangev2
>  if hasInternet ; then
> diff --git a/src/packages/fff/fff-nodewatcher/Makefile b/src/packages/fff/fff-nodewatcher/Makefile
> index 79cb917..7bfd08e 100644
> --- a/src/packages/fff/fff-nodewatcher/Makefile
> +++ b/src/packages/fff/fff-nodewatcher/Makefile
> @@ -1,7 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff-nodewatcher
> -PKG_VERSION:=41
> +PKG_VERSION:=43
>  PKG_RELEASE:=1
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
> @@ -13,7 +13,7 @@ define Package/$(PKG_NAME)
>      CATEGORY:=Freifunk
>      TITLE:= Freifunk-Franken Nodewatcher
>      URL:=http://www.freifunk-franken.de
> -    DEPENDS:=+alfred +micrond +fff-random +ip +ip-bridge
> +    DEPENDS:=+alfred +micrond +fff-config +fff-random +ip +ip-bridge
>  endef
>  
>  define Package/$(PKG_NAME)/description
> diff --git a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> index 35adf91..e4a9bc9 100755
> --- a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> +++ b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> @@ -2,7 +2,7 @@
>  # Netmon Nodewatcher (C) 2010-2012 Freifunk Oldenburg
>  # License; GPL v3
>  
> -SCRIPT_VERSION="41"
> +SCRIPT_VERSION="43"
>  
>  test -f /tmp/started || exit
>  
> @@ -58,20 +58,21 @@ crawl() {
>      hostname="$(cat /proc/sys/kernel/hostname)"
>      mac=$(awk '{ mac=toupper($1); gsub(":", "", mac); print mac }' /sys/class/net/br-mesh/address 2>/dev/null)
>      [ "$hostname" = "LEDE" ] && hostname="$mac"
> -    description="$(uci get system. at system[0].description)"
> +    [ "$hostname" = "FFF" ] && hostname="$mac"
> +    description="$(uci -q get fff.system.description)"
>      if [ -n "$description" ]; then
>          description="<description><![CDATA[$description]]></description>"
>      fi
> -    latitude="$(uci get system. at system[0].latitude)"
> -    longitude="$(uci get system. at system[0].longitude)"
> +    latitude="$(uci -q get fff.system.latitude)"
> +    longitude="$(uci -q get fff.system.longitude)"
>      if [ -n "$longitude" -a -n "$latitude" ]; then
>          geo="<geo><lat>$latitude</lat><lng>$longitude</lng></geo>";
>      fi
> -    position_comment="$(uci get system. at system[0].position_comment)"
> +    position_comment="$(uci -q get fff.system.position_comment)"
>      if [ -n "$position_comment" ]; then
>          position_comment="<position_comment><![CDATA[$position_comment]]></position_comment>"
>      fi
> -    contact="$(uci get system. at system[0].contact)"
> +    contact="$(uci -q get fff.system.contact)"
>      if [ -n "$contact" ]; then
>          contact="<contact>$contact</contact>"
>      fi
> @@ -137,10 +138,10 @@ crawl() {
>      SYSTEM_DATA=$SYSTEM_DATA"${geo}"
>      SYSTEM_DATA=$SYSTEM_DATA"${position_comment}"
>      SYSTEM_DATA=$SYSTEM_DATA"${contact}"
> -    if [ "$(uci -q get "system. at system[0].hood")" ] 
> -    then                                                                                                                         
> -        SYSTEM_DATA=$SYSTEM_DATA"<hood>$(uci -q get "system. at system[0].hood")</hood>"                                            
> -    fi  
> +    if [ "$(uci -q get "system. at system[0].hood")" ]
> +    then
> +        SYSTEM_DATA=$SYSTEM_DATA"<hood>$(uci -q get "system. at system[0].hood")</hood>"
> +    fi
>      SYSTEM_DATA=$SYSTEM_DATA"<distname>$distname</distname>"
>      SYSTEM_DATA=$SYSTEM_DATA"<distversion>$distversion</distversion>"
>      SYSTEM_DATA=$SYSTEM_DATA"$cpu"
> diff --git a/src/packages/fff/fff-support/files/usr/sbin/show_info b/src/packages/fff/fff-support/files/usr/sbin/show_info
> index 3914391..58c6853 100755
> --- a/src/packages/fff/fff-support/files/usr/sbin/show_info
> +++ b/src/packages/fff/fff-support/files/usr/sbin/show_info
> @@ -4,7 +4,7 @@
>  
>  board_name=$(uci -q get board.model.name)
>  
> -HOSTNAME=$(uci -q get 'system. at system[0].hostname')
> +HOSTNAME=$(uci -q get 'fff.system.hostname')
>  
>  human_bytes() {
>  	while read B ; do
> @@ -140,11 +140,11 @@ echo "IPv6 Adressen: $(addr 6 $wanif)"
>  echo ""
>  echo "-> EINSTELLUNGEN"
>  echo "Knotenname: ${HOSTNAME}"
> -echo "Knotenbeschreibung: $(uci -q get 'system. at system[0].description')"
> -echo "GPS Breitengrad: $(uci -q get 'system. at system[0].latitude')"
> -echo "GPS Laengengrad: $(uci -q get 'system. at system[0].longitude')"
> -echo "Standortbeschreibung: $(uci -q get 'system. at system[0].position_comment')"
> -echo "E-Mail Adresse: $(uci -q get 'system. at system[0].contact')"
> +echo "Knotenbeschreibung: $(uci -q get 'fff.system.description')"
> +echo "GPS Breitengrad: $(uci -q get 'fff.system.latitude')"
> +echo "GPS Laengengrad: $(uci -q get 'fff.system.longitude')"
> +echo "Standortbeschreibung: $(uci -q get 'fff.system.position_comment')"
> +echo "E-Mail Adresse: $(uci -q get 'fff.system.contact')"
>  
>  echo ""
>  echo "-> BITRATEN-BEGRENZUNG"
> diff --git a/src/packages/fff/fff-sysupgrade/Makefile b/src/packages/fff/fff-sysupgrade/Makefile
> index ab809c9..b2e1ffa 100644
> --- a/src/packages/fff/fff-sysupgrade/Makefile
> +++ b/src/packages/fff/fff-sysupgrade/Makefile
> @@ -13,7 +13,7 @@ define Package/$(PKG_NAME)
>      CATEGORY:=Freifunk
>      TITLE:=Freifunk-Franken sysupgrade
>      URL:=http://www.freifunk-franken.de
> -    DEPENDS:=+fff-boardname +fff-hoods + at BUSYBOX_CONFIG_WGET
> +    DEPENDS:=+fff-boardname +fff-config +fff-hoods + at BUSYBOX_CONFIG_WGET
>  endef
>  
>  define Package/$(PKG_NAME)/description
> diff --git a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/05-config-system-migration b/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/05-config-system-migration
> index 0e36587..fe4ad97 100644
> --- a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/05-config-system-migration
> +++ b/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/05-config-system-migration
> @@ -1,21 +1,27 @@
>  #!/bin/sh
>  
> -UPGRADE_hostname=$(uci -q get "system. at system[0].hostname")
> -UPGRADE_description=$(uci -q get "system. at system[0].description")
> -UPGRADE_latitude=$(uci -q get "system. at system[0].latitude")
> -UPGRADE_longitude=$(uci -q get "system. at system[0].longitude")
> -UPGRADE_position_comment=$(uci -q get "system. at system[0].position_comment")
> -UPGRADE_contact=$(uci -q get "system. at system[0].contact")
> +if [ ! -s /etc/config/fff ] ; then
>  
> -/bin/rm -rf /etc/config/system
> +	UPGRADE_hostname=$(uci -q get "system. at system[0].hostname")
> +	UPGRADE_description=$(uci -q get "system. at system[0].description")
> +	UPGRADE_latitude=$(uci -q get "system. at system[0].latitude")
> +	UPGRADE_longitude=$(uci -q get "system. at system[0].longitude")
> +	UPGRADE_position_comment=$(uci -q get "system. at system[0].position_comment")
> +	UPGRADE_contact=$(uci -q get "system. at system[0].contact")
>  
> -/bin/config_generate
> +	/bin/rm -rf /etc/config/system
> +	
> +	/bin/config_generate
>  
> -test -n "${UPGRADE_hostname}" && uci -q set "system. at system[0].hostname=${UPGRADE_hostname}"
> -test -n "${UPGRADE_description}" && uci -q set "system. at system[0].description=${UPGRADE_description}"
> -test -n "${UPGRADE_latitude}" && uci -q set "system. at system[0].latitude=${UPGRADE_latitude}"
> -test -n "${UPGRADE_longitude}" && uci -q set "system. at system[0].longitude=${UPGRADE_longitude}"
> -test -n "${UPGRADE_position_comment}" && uci -q set "system. at system[0].position_comment=${UPGRADE_position_comment}"
> -test -n "${UPGRADE_contact}" && uci -q set "system. at system[0].contact=${UPGRADE_contact}"
> +	touch /etc/config/fff
>  
> -uci -q commit system
> +	uci -q set fff.system=fff
> +	test -n "${UPGRADE_hostname}" && uci -q set "fff.system.hostname=${UPGRADE_hostname}"
> +	test -n "${UPGRADE_description}" && uci -q set "fff.system.description=${UPGRADE_description}"
> +	test -n "${UPGRADE_latitude}" && uci -q set "fff.system.latitude=${UPGRADE_latitude}"
> +	test -n "${UPGRADE_longitude}" && uci -q set "fff.system.longitude=${UPGRADE_longitude}"
> +	test -n "${UPGRADE_position_comment}" && uci -q set "fff.system.position_comment=${UPGRADE_position_comment}"
> +	test -n "${UPGRADE_contact}" && uci -q set "fff.system.contact=${UPGRADE_contact}"
> +
> +	uci -q commit fff
> +fi
> diff --git a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff-sysupgrade b/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff-sysupgrade
> index ab6f2de..847ce1e 100644
> --- a/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff-sysupgrade
> +++ b/src/packages/fff/fff-sysupgrade/files/etc/uci-defaults/99-fff-sysupgrade
> @@ -8,5 +8,5 @@ cat > /etc/sysupgrade.conf <<-__EOF__
>  /etc/dropbear/dropbear_rsa_host_key
>  /etc/dropbear/authorized_keys
>  /etc/network.config
> -/etc/config/system
> +/etc/config/fff
>  __EOF__
> diff --git a/src/packages/fff/fff-web/Makefile b/src/packages/fff/fff-web/Makefile
> index 708dbb9..d7201e2 100644
> --- a/src/packages/fff/fff-web/Makefile
> +++ b/src/packages/fff/fff-web/Makefile
> @@ -1,7 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff-web
> -PKG_VERSION:=0.0.4
> +PKG_VERSION:=5
>  PKG_RELEASE:=2
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
> @@ -13,7 +13,7 @@ define Package/$(PKG_NAME)
>      CATEGORY:=Freifunk
>      TITLE:= Freifunk-Franken Webinterface
>      URL:=http://www.freifunk-franken.de
> -    DEPENDS:=+uhttpd +libustream-mbedtls +haserl +px5g +simple-tc +fff-boardname +fff-network
> +    DEPENDS:=+uhttpd +libustream-mbedtls +haserl +px5g +simple-tc +fff-boardname +fff-config +fff-network
>  endef
>  
>  define Package/$(PKG_NAME)/description
> diff --git a/src/packages/fff/fff-web/files/www/public/cgi-bin/status.html b/src/packages/fff/fff-web/files/www/public/cgi-bin/status.html
> index f96846c..96d657b 100755
> --- a/src/packages/fff/fff-web/files/www/public/cgi-bin/status.html
> +++ b/src/packages/fff/fff-web/files/www/public/cgi-bin/status.html
> @@ -2,13 +2,13 @@
>  
>  <%
>  echo -en "Content-Type: text/html\r\n\r\n"
> -HOSTNAME=$(uci -q get 'system. at system[0].hostname')
> +HOSTNAME="$(uci -q get "fff.system.hostname")"
>  hood="$(uci -q get "system. at system[0].hood")"
>  
>  MAC="$(uci -q get network.mesh.macaddr)"
> -lat="$(uci -q get system. at system[0].latitude)"
> -lon="$(uci -q get system. at system[0].longitude)"
> -contact="$(uci -q get system. at system[0].contact)"
> +lat="$(uci -q get "fff.system.latitude")"
> +lon="$(uci -q get "fff.system.longitude")"
> +contact="$(uci -q get "fff.system.contact")"
>  
>  . /etc/firmware_release
>  
> @@ -48,11 +48,11 @@ contact="$(uci -q get system. at system[0].contact)"
>  								<tr><th>MAC-Adresse:</th><td style="text-transform: uppercase;"><a href="https://monitoring.freifunk-franken.de/api/get_router_by_mac/<%= $MAC %>"><%= $MAC %></a></td></tr>
>  								<tr><th>Modell:</th><td><% cat /tmp/sysinfo/model 2>/dev/null %></td></tr>
>  								<tr><th>Firmware:</th><td><%= ${FIRMWARE_VERSION} %></td></tr>
> -								<tr><th>Beschreibung:</th><td><% uci -q get 'system. at system[0].description' %></td></tr>
> +								<tr><th>Beschreibung:</th><td><% uci -q get 'fff.system.description' %></td></tr>
>  								<tr><th>Position:</th><td><% if [ -n "$lat" -a -n "$lon" ]; then
>  									echo "<a href=\"https://monitoring.freifunk-franken.de/map?mapcenter=$lat,$lon,16\">${lat:0:8}N, ${lon:0:8}E</a>"
>  								fi %></td></tr>
> -								<tr><th>Standort:</th><td><% uci -q get 'system. at system[0].position_comment' %></td></tr>
> +								<tr><th>Standort:</th><td><% uci -q get 'fff.system.position_comment' %></td></tr>
>  								<tr><th>E-Mail Adresse:</th><td><a href="mailto:<%= $contact %>"><%= $contact %></a></td></tr>
>  							</table>
>  						</fieldset>
> diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/header b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/header
> index c327013..f98a3f3 100755
> --- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/header
> +++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/header
> @@ -12,7 +12,7 @@ nav_entry() {
>  	echo -ne "\t<li${class_active}><a href=\"${script_file}\">$2</a></li>\n\t\t"
>  }
>  
> -HOSTNAME=$(uci -q get 'system. at system[0].hostname')
> +HOSTNAME="$(uci -q get "fff.system.hostname")"
>  hood="$(uci -q get "system. at system[0].hood")"
>  
>  NOW=$(date +%s)
> diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html
> index e7bc3e9..b785aed 100755
> --- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html
> +++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/settings.html
> @@ -13,25 +13,32 @@ if [ "$REQUEST_METHOD" == "POST" ] ; then
>  		MSG='<span class="red">Knotenname enthält ungültige Zeichen!</span>'
>  	else
>  		# Allgemeine Einstellungen
> +		uci -q set "fff.system.hostname=${POST_hostname}"
> +		echo "$(uci -q get "fff.system.hostname")" > /proc/sys/kernel/hostname
>  		uci -q set "system. at system[0].hostname=${POST_hostname}"
> -		echo "$(uci -q get "system. at system[0].hostname")" > /proc/sys/kernel/hostname
> -		uci -q set "system. at system[0].description=${POST_description}"
> -		uci -q set "system. at system[0].latitude=${POST_latitude}"
> -		uci -q set "system. at system[0].longitude=${POST_longitude}"
> -		uci -q set "system. at system[0].position_comment=${POST_position_comment}"
> -		uci -q set "system. at system[0].contact=${POST_contact}"
> +		uci -q set "fff.system.description=${POST_description}"
> +		uci -q set "fff.system.latitude=${POST_latitude}"
> +		uci -q set "fff.system.longitude=${POST_longitude}"
> +		uci -q set "fff.system.position_comment=${POST_position_comment}"
> +		uci -q set "fff.system.contact=${POST_contact}"
>  
>  		# Bitratenbegrenzung
> +		uci -q get "fff.trafficcontrol" > /dev/null || uci -q set fff.trafficcontrol=fff
>  		if [ "$POST_traffic_limit" == "on" ] ; then
> -			uci -q set "simple-tc.example.ifname=wan"
> +			uci -q set "fff.trafficcontrol.enabled=1"
>  			uci -q set "simple-tc.example.enabled=1"
>  		else
> +			uci -q set "fff.trafficcontrol.enabled=0"
>  			uci -q set "simple-tc.example.enabled=0"
>  		fi
> +		uci -q set "fff.trafficcontrol.limit_in=${POST_limit_ingress}"
> +		uci -q set "fff.trafficcontrol.limit_out=${POST_limit_egress}"
> +		
> +		uci -q set "simple-tc.example.ifname=wan"
>  		uci -q set "simple-tc.example.limit_ingress=${POST_limit_ingress}"
>  		uci -q set "simple-tc.example.limit_egress=${POST_limit_egress}"
>  
> -		uci commit
> +		uci -q commit
>  
>  		MSG='<span class="green">Daten gespeichert! - Bitte Router neustarten.</span>'
>  	fi
> @@ -41,7 +48,7 @@ fi
>  <%in /www/ssl/cgi-bin/helpers %>
>  <%
>  # read
> -if [ "$(uci -q get 'simple-tc.example.enabled')" == "1" ] ; then
> +if [ "$(uci -q get 'fff.trafficcontrol.enabled')" == "1" ] ; then
>  	traffic_checked='checked="checked" '
>  else
>  	traffic_checked=""
> @@ -55,16 +62,16 @@ fi
>  	<legend>Allgemeine Einstellungen</legend>
>  	<table>
>  		<tr><th>Knotenname:</th><td><input type="text" name="hostname" value="<%= ${HOSTNAME} %>" /></td></tr>
> -		<tr><th>Knotenbeschreibung:</th><td><input type="text" name="description" value="<%= $(uci -q get 'system. at system[0].description') %>" /></td></tr>
> +		<tr><th>Knotenbeschreibung:</th><td><input type="text" name="description" value="<%= $(uci -q get 'fff.system.description') %>" /></td></tr>
>  		<tr><th>GPS Breitengrad:</th>
> -			<td><input type="text" name="latitude" value="<%= $(uci -q get 'system. at system[0].latitude') %>" /></td>
> +			<td><input type="text" name="latitude" value="<%= $(uci -q get 'fff.system.latitude') %>" /></td>
>  			<td rowspan="2" style="vertical-align: middle;">
>  				<button type="button" style="height: 100%; width: 126px; margin-left: 5px;" onclick="window.open('/map.html', '_blank', 'location=0,status=0,scrollbars=1,width=400,height=300');">Position auf Karte anzeigen / setzen</button>
>  			</td>
>  		</tr>
> -		<tr><th>GPS Längengrad:</th><td><input type="text" name="longitude" value="<%= $(uci -q get 'system. at system[0].longitude') %>" /></td></tr>
> -		<tr><th>Standortbeschreibung:</th><td><input type="text" name="position_comment" value="<%= $(uci -q get 'system. at system[0].position_comment') %>" /></td></tr>
> -		<tr><th>E-Mail Adresse:</th><td><input type="email" name="contact" value="<%= $(uci -q get 'system. at system[0].contact') %>" /></td></tr>
> +		<tr><th>GPS Längengrad:</th><td><input type="text" name="longitude" value="<%= $(uci -q get 'fff.system.longitude') %>" /></td></tr>
> +		<tr><th>Standortbeschreibung:</th><td><input type="text" name="position_comment" value="<%= $(uci -q get 'fff.system.position_comment') %>" /></td></tr>
> +		<tr><th>E-Mail Adresse:</th><td><input type="email" name="contact" value="<%= $(uci -q get 'fff.system.contact') %>" /></td></tr>
>  	</table>
>  </fieldset>
>  </td><td>
> @@ -74,8 +81,8 @@ fi
>  		<tr><th>Aktiviert:</th><td colspan="2">
>  			<input type="checkbox" name="traffic_limit" <%= ${traffic_checked} %>/>
>  		</td></tr>
> -		<tr><th>Freifunk Download:</th><td><input type="text" name="limit_ingress" value="<%= $(uci -q get 'simple-tc.example.limit_ingress') %>" /></td><td>kbit/s</td></tr>
> -		<tr><th>Freifunk Upload:</th><td><input type="text" name="limit_egress" value="<%= $(uci -q get 'simple-tc.example.limit_egress') %>" /></td><td>kbit/s</td></tr>
> +		<tr><th>Freifunk Download:</th><td><input type="text" name="limit_ingress" value="<%= $(uci -q get 'fff.trafficcontrol.limit_in') %>" /></td><td>kbit/s</td></tr>
> +		<tr><th>Freifunk Upload:</th><td><input type="text" name="limit_egress" value="<%= $(uci -q get 'fff.trafficcontrol.limit_out') %>" /></td><td>kbit/s</td></tr>
>  	</table>
>  </fieldset>
>  </td></tr>
> diff --git a/src/packages/fff/fff/Makefile b/src/packages/fff/fff/Makefile
> index 305ab8d..dce33f9 100644
> --- a/src/packages/fff/fff/Makefile
> +++ b/src/packages/fff/fff/Makefile
> @@ -18,6 +18,7 @@ define Package/fff-base
>               +ip6tables \
>               +odhcp6c \
>               +micrond \
> +             +fff-config \
>               +fff-nodewatcher \
>               +fff-web \
>               +fff-uradvd \
> -- 
> 2.7.4
> 

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 473 bytes
Beschreibung: This is a digitally signed message part
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20171112/0fdbc4e2/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev