Message ID | 1468690195-10155-1-git-send-email-mayosemmel@gmail.com |
---|---|
State | Accepted, archived |
Headers | show |
diff --git a/src/packages/fff/fff-sysupgrade/Makefile b/src/packages/fff/fff-sysupgrade/Makefile index ded9852..e790c82 100644 --- a/src/packages/fff/fff-sysupgrade/Makefile +++ b/src/packages/fff/fff-sysupgrade/Makefile @@ -1,8 +1,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fff-sysupgrade -PKG_VERSION:=0.0.1 -PKG_RELEASE:=1 +PKG_VERSION:=0.0.2 +PKG_RELEASE:=2 PKG_BUILD_DIR:=$(BUILD_DIR)/fff-sysupgrade @@ -13,7 +13,7 @@ define Package/fff-sysupgrade CATEGORY:=Freifunk TITLE:=Freifunk-Franken sysupgrade URL:=http://www.freifunk-franken.de - DEPENDS:=+fff-boardname + DEPENDS:=+fff-boardname +micrond endef define Package/fff-sysupgrade/description diff --git a/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade b/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade new file mode 100644 index 0000000..312972f --- /dev/null +++ b/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade @@ -0,0 +1 @@ +*/5 * * * * /usr/sbin/copy_netmon_coordinates.sh \ No newline at end of file diff --git a/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh b/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh new file mode 100755 index 0000000..4c20974 --- /dev/null +++ b/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh @@ -0,0 +1,63 @@ +#!/bin/sh + +delete_myself() +{ + echo "This Script will be deleted now!" + rm -f /usr/lib/micron.d/fff-sysupgrade + rm -f "$0" + exit 0 +} + +#Get Mac Address of br-mesh if already up +if ! mac=$( cat /sys/class/net/br-mesh/address ); then + echo "Interface br-mesh is not available!" + exit 1 +fi + +#Check if Coordinates are already set +if uci get system.@system[0].latitude && uci get system.@system[0].longitude; then + echo "Coordinates are already set." + delete_myself +fi + +#Get Router from Netmon Database +xml_data=$( wget -q -O - "http://fe80::ff:feee:1%br-mesh/api/rest/api.php?rquest=router&mac=${mac//:}" 2>&1) + +if [ -z "$xml_data" ]; then + echo "xml_data is not set" + exit 1 +elif echo "$xml_data"|grep "HTTP/1.1 404 Not Found" ;then + echo "This Router is not present in the Netmon Database." + delete_myself +fi + +#Reduce XML_DATA to Router only +xml_data=$( echo $xml_data |grep -o '<router>.*<\/router>' |sed -e 's/<user>.*<\/user>//g' |sed -e 's/<chipset>.*<\/chipset>//g' |sed -e 's/<chipset>.*<\/chipset>//g' ) + +#Get needed Variables +hostname=$( echo $xml_data |grep -o '<hostname>.*<\/hostname>'|sed -e 's/<\/\?hostname>//g' ) +description=$( echo $xml_data |grep -o '<description>.*<\/description>'|sed -e 's/<\/\?description>//g' ) +latitude=$( echo $xml_data |grep -o '<latitude>.*<\/latitude>'|sed -e 's/<\/\?latitude>//g' ) +longitude=$( echo $xml_data |grep -o '<longitude>.*<\/longitude>'|sed -e 's/<\/\?longitude>//g' ) + +#Check for netmon default coordinates +if [ "$latitude" -eq 0 ] && [ "$longitude" -eq 0 ]; then + echo "Unable to retrieve coordinates from Netmon." + echo "Maybe the coordinates are suppressed." + delete_myself +fi + +uci set system.@system[0]=system +echo "Setting hostname $hostname" +uci set system.@system[0].hostname="$hostname" +echo "Setting description $description" +uci set system.@system[0].description="$description" +echo "Setting latitude $latitude" +uci set system.@system[0].latitude="$latitude" +echo "Setting longitude $longitude" +uci set system.@system[0].longitude="$longitude" +uci commit + +echo "Coordinates are now copied from Netmon. Router will be rebooted." +reboot +exit 0 \ No newline at end of file
Nabnd Sieht gut aus und nachdem wir gerade wieder einen Router haben der in das Problem gerannt ist eben mal drüber geguckt und soweit möglich getestet (ging nicht ganz alles, weil wegen hab keinen passenden alten Router) Reviewed-by: Christian Dresel <fff@chrisi01.de> mfg Christian On 16.07.2016 19:29, Jan Kraus wrote: > Signed-off-by: Jan Kraus <mayosemmel@gmail.com> > --- > Changes in v2: Added Check for default coordinates 0/0 > --- > src/packages/fff/fff-sysupgrade/Makefile | 6 +-- > .../files/usr/lib/micron.d/fff-sysupgrade | 1 + > .../files/usr/sbin/copy_netmon_coordinates.sh | 63 ++++++++++++++++++++++ > 3 files changed, 67 insertions(+), 3 deletions(-) > create mode 100644 src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > create mode 100755 src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > > diff --git a/src/packages/fff/fff-sysupgrade/Makefile b/src/packages/fff/fff-sysupgrade/Makefile > index ded9852..e790c82 100644 > --- a/src/packages/fff/fff-sysupgrade/Makefile > +++ b/src/packages/fff/fff-sysupgrade/Makefile > @@ -1,8 +1,8 @@ > include $(TOPDIR)/rules.mk > > PKG_NAME:=fff-sysupgrade > -PKG_VERSION:=0.0.1 > -PKG_RELEASE:=1 > +PKG_VERSION:=0.0.2 > +PKG_RELEASE:=2 > > PKG_BUILD_DIR:=$(BUILD_DIR)/fff-sysupgrade > > @@ -13,7 +13,7 @@ define Package/fff-sysupgrade > CATEGORY:=Freifunk > TITLE:=Freifunk-Franken sysupgrade > URL:=http://www.freifunk-franken.de > - DEPENDS:=+fff-boardname > + DEPENDS:=+fff-boardname +micrond > endef > > define Package/fff-sysupgrade/description > diff --git a/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade b/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > new file mode 100644 > index 0000000..312972f > --- /dev/null > +++ b/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > @@ -0,0 +1 @@ > +*/5 * * * * /usr/sbin/copy_netmon_coordinates.sh > \ No newline at end of file > diff --git a/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh b/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > new file mode 100755 > index 0000000..4c20974 > --- /dev/null > +++ b/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > @@ -0,0 +1,63 @@ > +#!/bin/sh > + > +delete_myself() > +{ > + echo "This Script will be deleted now!" > + rm -f /usr/lib/micron.d/fff-sysupgrade > + rm -f "$0" > + exit 0 > +} > + > +#Get Mac Address of br-mesh if already up > +if ! mac=$( cat /sys/class/net/br-mesh/address ); then > + echo "Interface br-mesh is not available!" > + exit 1 > +fi > + > +#Check if Coordinates are already set > +if uci get system.@system[0].latitude && uci get system.@system[0].longitude; then > + echo "Coordinates are already set." > + delete_myself > +fi > + > +#Get Router from Netmon Database > +xml_data=$( wget -q -O - "http://fe80::ff:feee:1%br-mesh/api/rest/api.php?rquest=router&mac=${mac//:}" 2>&1) > + > +if [ -z "$xml_data" ]; then > + echo "xml_data is not set" > + exit 1 > +elif echo "$xml_data"|grep "HTTP/1.1 404 Not Found" ;then > + echo "This Router is not present in the Netmon Database." > + delete_myself > +fi > + > +#Reduce XML_DATA to Router only > +xml_data=$( echo $xml_data |grep -o '<router>.*<\/router>' |sed -e 's/<user>.*<\/user>//g' |sed -e 's/<chipset>.*<\/chipset>//g' |sed -e 's/<chipset>.*<\/chipset>//g' ) > + > +#Get needed Variables > +hostname=$( echo $xml_data |grep -o '<hostname>.*<\/hostname>'|sed -e 's/<\/\?hostname>//g' ) > +description=$( echo $xml_data |grep -o '<description>.*<\/description>'|sed -e 's/<\/\?description>//g' ) > +latitude=$( echo $xml_data |grep -o '<latitude>.*<\/latitude>'|sed -e 's/<\/\?latitude>//g' ) > +longitude=$( echo $xml_data |grep -o '<longitude>.*<\/longitude>'|sed -e 's/<\/\?longitude>//g' ) > + > +#Check for netmon default coordinates > +if [ "$latitude" -eq 0 ] && [ "$longitude" -eq 0 ]; then > + echo "Unable to retrieve coordinates from Netmon." > + echo "Maybe the coordinates are suppressed." > + delete_myself > +fi > + > +uci set system.@system[0]=system > +echo "Setting hostname $hostname" > +uci set system.@system[0].hostname="$hostname" > +echo "Setting description $description" > +uci set system.@system[0].description="$description" > +echo "Setting latitude $latitude" > +uci set system.@system[0].latitude="$latitude" > +echo "Setting longitude $longitude" > +uci set system.@system[0].longitude="$longitude" > +uci commit > + > +echo "Coordinates are now copied from Netmon. Router will be rebooted." > +reboot > +exit 0 > \ No newline at end of file
Hi Dies könnte besser sein: * Script löschen, nach erfolgreichen Download. Ist aber nicht so tragisch, weil es dann ja beim nächsten Aufruf passieren wird. Von daher sieht es gut aus: Reviewed-by: Tim Niemeyer <tim@tn-x.org> Tim Am Samstag, den 16.07.2016, 19:29 +0200 schrieb Jan Kraus: > Signed-off-by: Jan Kraus <mayosemmel@gmail.com> > --- > Changes in v2: Added Check for default coordinates 0/0 > --- > src/packages/fff/fff-sysupgrade/Makefile | 6 +-- > .../files/usr/lib/micron.d/fff-sysupgrade | 1 + > .../files/usr/sbin/copy_netmon_coordinates.sh | 63 ++++++++++++++++++++++ > 3 files changed, 67 insertions(+), 3 deletions(-) > create mode 100644 src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > create mode 100755 src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > > diff --git a/src/packages/fff/fff-sysupgrade/Makefile b/src/packages/fff/fff-sysupgrade/Makefile > index ded9852..e790c82 100644 > --- a/src/packages/fff/fff-sysupgrade/Makefile > +++ b/src/packages/fff/fff-sysupgrade/Makefile > @@ -1,8 +1,8 @@ > include $(TOPDIR)/rules.mk > > PKG_NAME:=fff-sysupgrade > -PKG_VERSION:=0.0.1 > -PKG_RELEASE:=1 > +PKG_VERSION:=0.0.2 > +PKG_RELEASE:=2 > > PKG_BUILD_DIR:=$(BUILD_DIR)/fff-sysupgrade > > @@ -13,7 +13,7 @@ define Package/fff-sysupgrade > CATEGORY:=Freifunk > TITLE:=Freifunk-Franken sysupgrade > URL:=http://www.freifunk-franken.de > - DEPENDS:=+fff-boardname > + DEPENDS:=+fff-boardname +micrond > endef > > define Package/fff-sysupgrade/description > diff --git a/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade b/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > new file mode 100644 > index 0000000..312972f > --- /dev/null > +++ b/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > @@ -0,0 +1 @@ > +*/5 * * * * /usr/sbin/copy_netmon_coordinates.sh > \ No newline at end of file > diff --git a/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh b/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > new file mode 100755 > index 0000000..4c20974 > --- /dev/null > +++ b/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > @@ -0,0 +1,63 @@ > +#!/bin/sh > + > +delete_myself() > +{ > + echo "This Script will be deleted now!" > + rm -f /usr/lib/micron.d/fff-sysupgrade > + rm -f "$0" > + exit 0 > +} > + > +#Get Mac Address of br-mesh if already up > +if ! mac=$( cat /sys/class/net/br-mesh/address ); then > + echo "Interface br-mesh is not available!" > + exit 1 > +fi > + > +#Check if Coordinates are already set > +if uci get system.@system[0].latitude && uci get system.@system[0].longitude; then > + echo "Coordinates are already set." > + delete_myself > +fi > + > +#Get Router from Netmon Database > +xml_data=$( wget -q -O - "http://fe80::ff:feee:1%br-mesh/api/rest/api.php?rquest=router&mac=${mac//:}" 2>&1) > + > +if [ -z "$xml_data" ]; then > + echo "xml_data is not set" > + exit 1 > +elif echo "$xml_data"|grep "HTTP/1.1 404 Not Found" ;then > + echo "This Router is not present in the Netmon Database." > + delete_myself > +fi > + > +#Reduce XML_DATA to Router only > +xml_data=$( echo $xml_data |grep -o '<router>.*<\/router>' |sed -e 's/<user>.*<\/user>//g' |sed -e 's/<chipset>.*<\/chipset>//g' |sed -e 's/<chipset>.*<\/chipset>//g' ) > + > +#Get needed Variables > +hostname=$( echo $xml_data |grep -o '<hostname>.*<\/hostname>'|sed -e 's/<\/\?hostname>//g' ) > +description=$( echo $xml_data |grep -o '<description>.*<\/description>'|sed -e 's/<\/\?description>//g' ) > +latitude=$( echo $xml_data |grep -o '<latitude>.*<\/latitude>'|sed -e 's/<\/\?latitude>//g' ) > +longitude=$( echo $xml_data |grep -o '<longitude>.*<\/longitude>'|sed -e 's/<\/\?longitude>//g' ) > + > +#Check for netmon default coordinates > +if [ "$latitude" -eq 0 ] && [ "$longitude" -eq 0 ]; then > + echo "Unable to retrieve coordinates from Netmon." > + echo "Maybe the coordinates are suppressed." > + delete_myself > +fi > + > +uci set system.@system[0]=system > +echo "Setting hostname $hostname" > +uci set system.@system[0].hostname="$hostname" > +echo "Setting description $description" > +uci set system.@system[0].description="$description" > +echo "Setting latitude $latitude" > +uci set system.@system[0].latitude="$latitude" > +echo "Setting longitude $longitude" > +uci set system.@system[0].longitude="$longitude" > +uci commit > + > +echo "Coordinates are now copied from Netmon. Router will be rebooted." > +reboot > +exit 0 > \ No newline at end of file > -- > 2.1.4 >
Ist unter Aufsicht von Tim applied worden. Jan Am Samstag, den 20.08.2016, 16:09 +0200 schrieb Tim Niemeyer: > Hi > > Dies könnte besser sein: > * Script löschen, nach erfolgreichen Download. > > Ist aber nicht so tragisch, weil es dann ja beim nächsten Aufruf > passieren wird. > > Von daher sieht es gut aus: > Reviewed-by: Tim Niemeyer <tim@tn-x.org> > > Tim > > Am Samstag, den 16.07.2016, 19:29 +0200 schrieb Jan Kraus: > > Signed-off-by: Jan Kraus <mayosemmel@gmail.com> > > --- > > Changes in v2: Added Check for default coordinates 0/0 > > --- > > src/packages/fff/fff-sysupgrade/Makefile | 6 +-- > > .../files/usr/lib/micron.d/fff-sysupgrade | 1 + > > .../files/usr/sbin/copy_netmon_coordinates.sh | 63 ++++++++++++++++++++++ > > 3 files changed, 67 insertions(+), 3 deletions(-) > > create mode 100644 src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > > create mode 100755 src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > > > > diff --git a/src/packages/fff/fff-sysupgrade/Makefile b/src/packages/fff/fff-sysupgrade/Makefile > > index ded9852..e790c82 100644 > > --- a/src/packages/fff/fff-sysupgrade/Makefile > > +++ b/src/packages/fff/fff-sysupgrade/Makefile > > @@ -1,8 +1,8 @@ > > include $(TOPDIR)/rules.mk > > > > PKG_NAME:=fff-sysupgrade > > -PKG_VERSION:=0.0.1 > > -PKG_RELEASE:=1 > > +PKG_VERSION:=0.0.2 > > +PKG_RELEASE:=2 > > > > PKG_BUILD_DIR:=$(BUILD_DIR)/fff-sysupgrade > > > > @@ -13,7 +13,7 @@ define Package/fff-sysupgrade > > CATEGORY:=Freifunk > > TITLE:=Freifunk-Franken sysupgrade > > URL:=http://www.freifunk-franken.de > > - DEPENDS:=+fff-boardname > > + DEPENDS:=+fff-boardname +micrond > > endef > > > > define Package/fff-sysupgrade/description > > diff --git a/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade b/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > > new file mode 100644 > > index 0000000..312972f > > --- /dev/null > > +++ b/src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade > > @@ -0,0 +1 @@ > > +*/5 * * * * /usr/sbin/copy_netmon_coordinates.sh > > \ No newline at end of file > > diff --git a/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh b/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > > new file mode 100755 > > index 0000000..4c20974 > > --- /dev/null > > +++ b/src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh > > @@ -0,0 +1,63 @@ > > +#!/bin/sh > > + > > +delete_myself() > > +{ > > + echo "This Script will be deleted now!" > > + rm -f /usr/lib/micron.d/fff-sysupgrade > > + rm -f "$0" > > + exit 0 > > +} > > + > > +#Get Mac Address of br-mesh if already up > > +if ! mac=$( cat /sys/class/net/br-mesh/address ); then > > + echo "Interface br-mesh is not available!" > > + exit 1 > > +fi > > + > > +#Check if Coordinates are already set > > +if uci get system.@system[0].latitude && uci get system.@system[0].longitude; then > > + echo "Coordinates are already set." > > + delete_myself > > +fi > > + > > +#Get Router from Netmon Database > > +xml_data=$( wget -q -O - "http://fe80::ff:feee:1%br-mesh/api/rest/api.php?rquest=router&mac=${mac//:}" 2>&1) > > + > > +if [ -z "$xml_data" ]; then > > + echo "xml_data is not set" > > + exit 1 > > +elif echo "$xml_data"|grep "HTTP/1.1 404 Not Found" ;then > > + echo "This Router is not present in the Netmon Database." > > + delete_myself > > +fi > > + > > +#Reduce XML_DATA to Router only > > +xml_data=$( echo $xml_data |grep -o '<router>.*<\/router>' |sed -e 's/<user>.*<\/user>//g' |sed -e 's/<chipset>.*<\/chipset>//g' |sed -e 's/<chipset>.*<\/chipset>//g' ) > > + > > +#Get needed Variables > > +hostname=$( echo $xml_data |grep -o '<hostname>.*<\/hostname>'|sed -e 's/<\/\?hostname>//g' ) > > +description=$( echo $xml_data |grep -o '<description>.*<\/description>'|sed -e 's/<\/\?description>//g' ) > > +latitude=$( echo $xml_data |grep -o '<latitude>.*<\/latitude>'|sed -e 's/<\/\?latitude>//g' ) > > +longitude=$( echo $xml_data |grep -o '<longitude>.*<\/longitude>'|sed -e 's/<\/\?longitude>//g' ) > > + > > +#Check for netmon default coordinates > > +if [ "$latitude" -eq 0 ] && [ "$longitude" -eq 0 ]; then > > + echo "Unable to retrieve coordinates from Netmon." > > + echo "Maybe the coordinates are suppressed." > > + delete_myself > > +fi > > + > > +uci set system.@system[0]=system > > +echo "Setting hostname $hostname" > > +uci set system.@system[0].hostname="$hostname" > > +echo "Setting description $description" > > +uci set system.@system[0].description="$description" > > +echo "Setting latitude $latitude" > > +uci set system.@system[0].latitude="$latitude" > > +echo "Setting longitude $longitude" > > +uci set system.@system[0].longitude="$longitude" > > +uci commit > > + > > +echo "Coordinates are now copied from Netmon. Router will be rebooted." > > +reboot > > +exit 0 > > \ No newline at end of file > > -- > > 2.1.4 > > >
Signed-off-by: Jan Kraus <mayosemmel@gmail.com> --- Changes in v2: Added Check for default coordinates 0/0 --- src/packages/fff/fff-sysupgrade/Makefile | 6 +-- .../files/usr/lib/micron.d/fff-sysupgrade | 1 + .../files/usr/sbin/copy_netmon_coordinates.sh | 63 ++++++++++++++++++++++ 3 files changed, 67 insertions(+), 3 deletions(-) create mode 100644 src/packages/fff/fff-sysupgrade/files/usr/lib/micron.d/fff-sysupgrade create mode 100755 src/packages/fff/fff-sysupgrade/files/usr/sbin/copy_netmon_coordinates.sh