Message ID | 20180610120601.21151-2-tim@tn-x.org |
---|---|
State | Accepted |
Headers | show |
diff --git a/src/packages/fff/fff-hoods/Makefile b/src/packages/fff/fff-hoods/Makefile index f36d268..b565ac7 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-hoodutils + DEPENDS:=+fff-hoodutils +fff-macnock endef define Package/$(PKG_NAME)/description diff --git a/src/packages/fff/fff-macnock/Makefile b/src/packages/fff/fff-macnock/Makefile new file mode 100644 index 0000000..359c45d --- /dev/null +++ b/src/packages/fff/fff-macnock/Makefile @@ -0,0 +1,40 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=fff-macnock +PKG_VERSION:=0.1 +PKG_RELEASE:=1 +PKG_REV:=ffd1a64515709d75afaab0f990308fd164dc4cc6 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 +PKG_SOURCE_URL:=https://github.com/FreifunkFranken/macnocker.git +PKG_SOURCE_PROTO:=git +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE_VERSION:=$(PKG_REV) + +include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/cmake.mk + +CMAKE_OPTIONS:=-DMACNOCK_DEBUG=ON + +define Package/$(PKG_NAME) + SECTION:=base + CATEGORY:=Freifunk + TITLE:= Freifunk-Franken mac nocker + URL:=http://www.freifunk-franken.de + KCONFIG:= \ + CONFIG_NET_EMATCH=y \ + CONFIG_NET_EMATCH_U32=y \ + CONFIG_NET_CLS_BASIC=y \ + CONFIG_NET_CLS_ACT=y \ + CONFIG_NET_ACT_GACT=y \ + CONFIG_NET_CLS_U32=y + DEPENDS:=+fff-network +endef + +define Package/$(PKG_NAME)/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/macnock $(1)/usr/sbin/macnock + $(CP) ./files/* $(1)/ +endef + +$(eval $(call BuildPackage,$(PKG_NAME))) diff --git a/src/packages/fff/fff-macnock/files/etc/init.d/macnock b/src/packages/fff/fff-macnock/files/etc/init.d/macnock new file mode 100755 index 0000000..41fc9f1 --- /dev/null +++ b/src/packages/fff/fff-macnock/files/etc/init.d/macnock @@ -0,0 +1,64 @@ +#!/bin/sh /etc/rc.common + +START=99 + +USE_PROCD=1 +PROCD_DEBUG=9 + +validate_hood_section() { + if [ -z "$(uci -q get network.ethmesh.ifname)" ]; then + # false + return 1 + fi + + if [ -n "$(uci -q get system.@system[0].hood)" -o -n "$(uci -q get network.mesh.macaddr)" ]; then + # true + return 0 + fi + + # false + return 1 +} + +service_triggers() +{ + local script name + + script=$(readlink -f "$initscript") + name=$(basename ${script:-$initscript}) + + procd_add_config_trigger "config.change" "system" /etc/init.d/$name reload + procd_add_interface_trigger "interface.*" "ethmesh" /etc/init.d/$name reload + procd_add_validation validate_hood_section +} + +reload_service() +{ + echo "Explicitly restarting macnocker" + stop + start +} + +start_service() { + validate_hood_section || { + echo "validation failed" + return 1 + } + + + local IFACE="$(uci -q get network.ethmesh.ifname)" + local HOOD="$(uci -q get system.@system[0].hood)" + if [ -z "$HOOD" ]; then + HOOD="$(uci -q get network.mesh.macaddr)" + fi + + procd_open_instance macnock + procd_set_param command /usr/sbin/macnock $IFACE $HOOD + procd_set_param respawn 10 10 0 + procd_set_param file /etc/config/system + procd_set_param netdev $IFACE + procd_set_param stdout 1 + procd_set_param stderr 1 + procd_set_param user root + procd_close_instance +} diff --git a/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock b/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock new file mode 100644 index 0000000..5c0b788 --- /dev/null +++ b/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock @@ -0,0 +1,6 @@ +#!/bin/sh + +if ! grep -q u32 /etc/iproute2/ematch_map; +then + echo "3 u32" > /etc/iproute2/ematch_map +fi
Den kann ich nicht reviewen, wäre aber anhand diverser Berichte damit einverstanden. Acked-by: Adrian Schmutzler <freifunk@adrianschmutzler.de> > -----Original Message----- > From: franken-dev [mailto:franken-dev-bounces@freifunk.net] On Behalf > Of Tim Niemeyer > Sent: Sonntag, 10. Juni 2018 14:06 > To: franken-dev@freifunk.net > Subject: [PATCH v1 1/4] fff-macnock: new package > > Fixes #68 > > Signed-off-by: Tim Niemeyer <tim@tn-x.org> > --- > > Changes in v1: > - change repo URL to FreifunkFranken Repo > - macnock is started w/o hood (instead mac is used) > - use quotes > - add depends to fff-network > > src/packages/fff/fff-hoods/Makefile | 2 +- > src/packages/fff/fff-macnock/Makefile | 40 ++++++++++++++ > .../fff/fff-macnock/files/etc/init.d/macnock | 64 > ++++++++++++++++++++++ > .../files/etc/uci-defaults/52-fff-macnock | 6 ++ > 4 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 > src/packages/fff/fff-macnock/Makefile > create mode 100755 src/packages/fff/fff-macnock/files/etc/init.d/macnock > create mode 100644 src/packages/fff/fff-macnock/files/etc/uci-defaults/52- > fff-macnock > > diff --git a/src/packages/fff/fff-hoods/Makefile b/src/packages/fff/fff- > hoods/Makefile > index f36d268..b565ac7 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-hoodutils > + DEPENDS:=+fff-hoodutils +fff-macnock > endef > > define Package/$(PKG_NAME)/description > diff --git a/src/packages/fff/fff-macnock/Makefile b/src/packages/fff/fff- > macnock/Makefile > new file mode 100644 > index 0000000..359c45d > --- /dev/null > +++ b/src/packages/fff/fff-macnock/Makefile > @@ -0,0 +1,40 @@ > +include $(TOPDIR)/rules.mk > + > +PKG_NAME:=fff-macnock > +PKG_VERSION:=0.1 > +PKG_RELEASE:=1 > +PKG_REV:=ffd1a64515709d75afaab0f990308fd164dc4cc6 > + > +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 > +PKG_SOURCE_URL:=https://github.com/FreifunkFranken/macnocker.git > +PKG_SOURCE_PROTO:=git > +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) > +PKG_SOURCE_VERSION:=$(PKG_REV) > + > +include $(INCLUDE_DIR)/package.mk > +include $(INCLUDE_DIR)/cmake.mk > + > +CMAKE_OPTIONS:=-DMACNOCK_DEBUG=ON > + > +define Package/$(PKG_NAME) > + SECTION:=base > + CATEGORY:=Freifunk > + TITLE:= Freifunk-Franken mac nocker > + URL:=http://www.freifunk-franken.de > + KCONFIG:= \ > + CONFIG_NET_EMATCH=y \ > + CONFIG_NET_EMATCH_U32=y \ > + CONFIG_NET_CLS_BASIC=y \ > + CONFIG_NET_CLS_ACT=y \ > + CONFIG_NET_ACT_GACT=y \ > + CONFIG_NET_CLS_U32=y > + DEPENDS:=+fff-network > +endef > + > +define Package/$(PKG_NAME)/install > + $(INSTALL_DIR) $(1)/usr/sbin > + $(INSTALL_BIN) $(PKG_BUILD_DIR)/macnock $(1)/usr/sbin/macnock > + $(CP) ./files/* $(1)/ > +endef > + > +$(eval $(call BuildPackage,$(PKG_NAME))) > diff --git a/src/packages/fff/fff-macnock/files/etc/init.d/macnock > b/src/packages/fff/fff-macnock/files/etc/init.d/macnock > new file mode 100755 > index 0000000..41fc9f1 > --- /dev/null > +++ b/src/packages/fff/fff-macnock/files/etc/init.d/macnock > @@ -0,0 +1,64 @@ > +#!/bin/sh /etc/rc.common > + > +START=99 > + > +USE_PROCD=1 > +PROCD_DEBUG=9 > + > +validate_hood_section() { > + if [ -z "$(uci -q get network.ethmesh.ifname)" ]; then > + # false > + return 1 > + fi > + > + if [ -n "$(uci -q get system.@system[0].hood)" -o -n "$(uci -q get > network.mesh.macaddr)" ]; then > + # true > + return 0 > + fi > + > + # false > + return 1 > +} > + > +service_triggers() > +{ > + local script name > + > + script=$(readlink -f "$initscript") > + name=$(basename ${script:-$initscript}) > + > + procd_add_config_trigger "config.change" "system" /etc/init.d/$name > reload > + procd_add_interface_trigger "interface.*" "ethmesh" /etc/init.d/$name > reload > + procd_add_validation validate_hood_section } > + > +reload_service() > +{ > + echo "Explicitly restarting macnocker" > + stop > + start > +} > + > +start_service() { > + validate_hood_section || { > + echo "validation failed" > + return 1 > + } > + > + > + local IFACE="$(uci -q get network.ethmesh.ifname)" > + local HOOD="$(uci -q get system.@system[0].hood)" > + if [ -z "$HOOD" ]; then > + HOOD="$(uci -q get network.mesh.macaddr)" > + fi > + > + procd_open_instance macnock > + procd_set_param command /usr/sbin/macnock $IFACE $HOOD > + procd_set_param respawn 10 10 0 > + procd_set_param file /etc/config/system > + procd_set_param netdev $IFACE > + procd_set_param stdout 1 > + procd_set_param stderr 1 > + procd_set_param user root > + procd_close_instance > +} > diff --git a/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff- > macnock b/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff- > macnock > new file mode 100644 > index 0000000..5c0b788 > --- /dev/null > +++ b/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock > @@ -0,0 +1,6 @@ > +#!/bin/sh > + > +if ! grep -q u32 /etc/iproute2/ematch_map; then > + echo "3 u32" > /etc/iproute2/ematch_map fi > -- > 2.11.0
Hallo Tim, moechtest du das PROCD_DEBUG=9 drin lassen? Die 9 hat mich erstmal leicht irritiert. Soweit ich das dann verstanden habe wird nur geprueft, ob die Variable Inhalt hat und nicht der Wert. procd.sh 59: [ -n "$PROCD_DEBUG" ] && json_dump >&2 Das kann aber auch so bleiben. Reviewed-by: Robert Langhammer <rlanghammer@web.de> gilt natuerlich nicht fuer den macnocker. Das muss jemand machen, der C kann. Am 10.06.2018 um 14:05 schrieb Tim Niemeyer: > Fixes #68 > > Signed-off-by: Tim Niemeyer <tim@tn-x.org> > --- > > Changes in v1: > - change repo URL to FreifunkFranken Repo > - macnock is started w/o hood (instead mac is used) > - use quotes > - add depends to fff-network > > src/packages/fff/fff-hoods/Makefile | 2 +- > src/packages/fff/fff-macnock/Makefile | 40 ++++++++++++++ > .../fff/fff-macnock/files/etc/init.d/macnock | 64 ++++++++++++++++++++++ > .../files/etc/uci-defaults/52-fff-macnock | 6 ++ > 4 files changed, 111 insertions(+), 1 deletion(-) > create mode 100644 src/packages/fff/fff-macnock/Makefile > create mode 100755 src/packages/fff/fff-macnock/files/etc/init.d/macnock > create mode 100644 src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock > > diff --git a/src/packages/fff/fff-hoods/Makefile b/src/packages/fff/fff-hoods/Makefile > index f36d268..b565ac7 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-hoodutils > + DEPENDS:=+fff-hoodutils +fff-macnock > endef > > define Package/$(PKG_NAME)/description > diff --git a/src/packages/fff/fff-macnock/Makefile b/src/packages/fff/fff-macnock/Makefile > new file mode 100644 > index 0000000..359c45d > --- /dev/null > +++ b/src/packages/fff/fff-macnock/Makefile > @@ -0,0 +1,40 @@ > +include $(TOPDIR)/rules.mk > + > +PKG_NAME:=fff-macnock > +PKG_VERSION:=0.1 > +PKG_RELEASE:=1 > +PKG_REV:=ffd1a64515709d75afaab0f990308fd164dc4cc6 > + > +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 > +PKG_SOURCE_URL:=https://github.com/FreifunkFranken/macnocker.git > +PKG_SOURCE_PROTO:=git > +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) > +PKG_SOURCE_VERSION:=$(PKG_REV) > + > +include $(INCLUDE_DIR)/package.mk > +include $(INCLUDE_DIR)/cmake.mk > + > +CMAKE_OPTIONS:=-DMACNOCK_DEBUG=ON > + > +define Package/$(PKG_NAME) > + SECTION:=base > + CATEGORY:=Freifunk > + TITLE:= Freifunk-Franken mac nocker > + URL:=http://www.freifunk-franken.de > + KCONFIG:= \ > + CONFIG_NET_EMATCH=y \ > + CONFIG_NET_EMATCH_U32=y \ > + CONFIG_NET_CLS_BASIC=y \ > + CONFIG_NET_CLS_ACT=y \ > + CONFIG_NET_ACT_GACT=y \ > + CONFIG_NET_CLS_U32=y > + DEPENDS:=+fff-network > +endef > + > +define Package/$(PKG_NAME)/install > + $(INSTALL_DIR) $(1)/usr/sbin > + $(INSTALL_BIN) $(PKG_BUILD_DIR)/macnock $(1)/usr/sbin/macnock > + $(CP) ./files/* $(1)/ > +endef > + > +$(eval $(call BuildPackage,$(PKG_NAME))) > diff --git a/src/packages/fff/fff-macnock/files/etc/init.d/macnock b/src/packages/fff/fff-macnock/files/etc/init.d/macnock > new file mode 100755 > index 0000000..41fc9f1 > --- /dev/null > +++ b/src/packages/fff/fff-macnock/files/etc/init.d/macnock > @@ -0,0 +1,64 @@ > +#!/bin/sh /etc/rc.common > + > +START=99 > + > +USE_PROCD=1 > +PROCD_DEBUG=9 > + > +validate_hood_section() { > + if [ -z "$(uci -q get network.ethmesh.ifname)" ]; then > + # false > + return 1 > + fi > + > + if [ -n "$(uci -q get system.@system[0].hood)" -o -n "$(uci -q get network.mesh.macaddr)" ]; then > + # true > + return 0 > + fi > + > + # false > + return 1 > +} > + > +service_triggers() > +{ > + local script name > + > + script=$(readlink -f "$initscript") > + name=$(basename ${script:-$initscript}) > + > + procd_add_config_trigger "config.change" "system" /etc/init.d/$name reload > + procd_add_interface_trigger "interface.*" "ethmesh" /etc/init.d/$name reload > + procd_add_validation validate_hood_section > +} > + > +reload_service() > +{ > + echo "Explicitly restarting macnocker" > + stop > + start > +} > + > +start_service() { > + validate_hood_section || { > + echo "validation failed" > + return 1 > + } > + > + > + local IFACE="$(uci -q get network.ethmesh.ifname)" > + local HOOD="$(uci -q get system.@system[0].hood)" > + if [ -z "$HOOD" ]; then > + HOOD="$(uci -q get network.mesh.macaddr)" > + fi > + > + procd_open_instance macnock > + procd_set_param command /usr/sbin/macnock $IFACE $HOOD > + procd_set_param respawn 10 10 0 > + procd_set_param file /etc/config/system > + procd_set_param netdev $IFACE > + procd_set_param stdout 1 > + procd_set_param stderr 1 > + procd_set_param user root > + procd_close_instance > +} > diff --git a/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock b/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock > new file mode 100644 > index 0000000..5c0b788 > --- /dev/null > +++ b/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock > @@ -0,0 +1,6 @@ > +#!/bin/sh > + > +if ! grep -q u32 /etc/iproute2/ematch_map; > +then > + echo "3 u32" > /etc/iproute2/ematch_map > +fi
Am Montag, den 11.06.2018, 18:22 +0200 schrieb robert: > Hallo Tim, > moechtest du das PROCD_DEBUG=9 drin lassen? Ja, wollte ich erstmal. Im MacNocker ist auch noch n Haufen Debug-Output drin. Für den (unwahrscheinlichen) Fall, dass es doch Probleme gibt, sollte man mMn was sehen können. Tim > Die 9 hat mich erstmal leicht irritiert. Soweit ich das dann > verstanden habe wird nur geprueft, ob die Variable Inhalt hat und > nicht der Wert. procd.sh 59: [ -n "$PROCD_DEBUG" ] && json_dump > >&2 > Das kann aber auch so bleiben. > Reviewed-by: Robert Langhammer <rlanghammer@web.de> > > gilt natuerlich nicht fuer den macnocker. Das muss jemand machen, der > C kann. > Am 10.06.2018 um 14:05 schrieb Tim Niemeyer: > > Fixes #68 > > > > Signed-off-by: Tim Niemeyer <tim@tn-x.org> > > --- > > > > Changes in v1: > > - change repo URL to FreifunkFranken Repo > > - macnock is started w/o hood (instead mac is used) > > - use quotes > > - add depends to fff-network > > > > src/packages/fff/fff-hoods/Makefile | 2 +- > > src/packages/fff/fff-macnock/Makefile | 40 > > ++++++++++++++ > > .../fff/fff-macnock/files/etc/init.d/macnock | 64 > > ++++++++++++++++++++++ > > .../files/etc/uci-defaults/52-fff-macnock | 6 ++ > > 4 files changed, 111 insertions(+), 1 deletion(-) > > create mode 100644 src/packages/fff/fff-macnock/Makefile > > create mode 100755 src/packages/fff/fff- > > macnock/files/etc/init.d/macnock > > create mode 100644 src/packages/fff/fff-macnock/files/etc/uci- > > defaults/52-fff-macnock > > > > diff --git a/src/packages/fff/fff-hoods/Makefile > > b/src/packages/fff/fff-hoods/Makefile > > index f36d268..b565ac7 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-hoodutils > > + DEPENDS:=+fff-hoodutils +fff-macnock > > endef > > > > define Package/$(PKG_NAME)/description > > diff --git a/src/packages/fff/fff-macnock/Makefile > > b/src/packages/fff/fff-macnock/Makefile > > new file mode 100644 > > index 0000000..359c45d > > --- /dev/null > > +++ b/src/packages/fff/fff-macnock/Makefile > > @@ -0,0 +1,40 @@ > > +include $(TOPDIR)/rules.mk > > + > > +PKG_NAME:=fff-macnock > > +PKG_VERSION:=0.1 > > +PKG_RELEASE:=1 > > +PKG_REV:=ffd1a64515709d75afaab0f990308fd164dc4cc6 > > + > > +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 > > +PKG_SOURCE_URL:=https://github.com/FreifunkFranken/macnocker.git > > +PKG_SOURCE_PROTO:=git > > +PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) > > +PKG_SOURCE_VERSION:=$(PKG_REV) > > + > > +include $(INCLUDE_DIR)/package.mk > > +include $(INCLUDE_DIR)/cmake.mk > > + > > +CMAKE_OPTIONS:=-DMACNOCK_DEBUG=ON > > + > > +define Package/$(PKG_NAME) > > + SECTION:=base > > + CATEGORY:=Freifunk > > + TITLE:= Freifunk-Franken mac nocker > > + URL:=http://www.freifunk-franken.de > > + KCONFIG:= \ > > + CONFIG_NET_EMATCH=y \ > > + CONFIG_NET_EMATCH_U32=y \ > > + CONFIG_NET_CLS_BASIC=y \ > > + CONFIG_NET_CLS_ACT=y \ > > + CONFIG_NET_ACT_GACT=y \ > > + CONFIG_NET_CLS_U32=y > > + DEPENDS:=+fff-network > > +endef > > + > > +define Package/$(PKG_NAME)/install > > + $(INSTALL_DIR) $(1)/usr/sbin > > + $(INSTALL_BIN) $(PKG_BUILD_DIR)/macnock > > $(1)/usr/sbin/macnock > > + $(CP) ./files/* $(1)/ > > +endef > > + > > +$(eval $(call BuildPackage,$(PKG_NAME))) > > diff --git a/src/packages/fff/fff-macnock/files/etc/init.d/macnock > > b/src/packages/fff/fff-macnock/files/etc/init.d/macnock > > new file mode 100755 > > index 0000000..41fc9f1 > > --- /dev/null > > +++ b/src/packages/fff/fff-macnock/files/etc/init.d/macnock > > @@ -0,0 +1,64 @@ > > +#!/bin/sh /etc/rc.common > > + > > +START=99 > > + > > +USE_PROCD=1 > > +PROCD_DEBUG=9 > > + > > +validate_hood_section() { > > + if [ -z "$(uci -q get network.ethmesh.ifname)" ]; then > > + # false > > + return 1 > > + fi > > + > > + if [ -n "$(uci -q get system.@system[0].hood)" -o -n "$(uci -q > > get network.mesh.macaddr)" ]; then > > + # true > > + return 0 > > + fi > > + > > + # false > > + return 1 > > +} > > + > > +service_triggers() > > +{ > > + local script name > > + > > + script=$(readlink -f "$initscript") > > + name=$(basename ${script:-$initscript}) > > + > > + procd_add_config_trigger "config.change" "system" > > /etc/init.d/$name reload > > + procd_add_interface_trigger "interface.*" "ethmesh" > > /etc/init.d/$name reload > > + procd_add_validation validate_hood_section > > +} > > + > > +reload_service() > > +{ > > + echo "Explicitly restarting macnocker" > > + stop > > + start > > +} > > + > > +start_service() { > > + validate_hood_section || { > > + echo "validation failed" > > + return 1 > > + } > > + > > + > > + local IFACE="$(uci -q get network.ethmesh.ifname)" > > + local HOOD="$(uci -q get system.@system[0].hood)" > > + if [ -z "$HOOD" ]; then > > + HOOD="$(uci -q get network.mesh.macaddr)" > > + fi > > + > > + procd_open_instance macnock > > + procd_set_param command /usr/sbin/macnock $IFACE $HOOD > > + procd_set_param respawn 10 10 0 > > + procd_set_param file /etc/config/system > > + procd_set_param netdev $IFACE > > + procd_set_param stdout 1 > > + procd_set_param stderr 1 > > + procd_set_param user root > > + procd_close_instance > > +} > > diff --git a/src/packages/fff/fff-macnock/files/etc/uci- > > defaults/52-fff-macnock b/src/packages/fff/fff- > > macnock/files/etc/uci-defaults/52-fff-macnock > > new file mode 100644 > > index 0000000..5c0b788 > > --- /dev/null > > +++ b/src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff- > > macnock > > @@ -0,0 +1,6 @@ > > +#!/bin/sh > > + > > +if ! grep -q u32 /etc/iproute2/ematch_map; > > +then > > + echo "3 u32" > /etc/iproute2/ematch_map > > +fi >
Fixes #68 Signed-off-by: Tim Niemeyer <tim@tn-x.org> --- Changes in v1: - change repo URL to FreifunkFranken Repo - macnock is started w/o hood (instead mac is used) - use quotes - add depends to fff-network src/packages/fff/fff-hoods/Makefile | 2 +- src/packages/fff/fff-macnock/Makefile | 40 ++++++++++++++ .../fff/fff-macnock/files/etc/init.d/macnock | 64 ++++++++++++++++++++++ .../files/etc/uci-defaults/52-fff-macnock | 6 ++ 4 files changed, 111 insertions(+), 1 deletion(-) create mode 100644 src/packages/fff/fff-macnock/Makefile create mode 100755 src/packages/fff/fff-macnock/files/etc/init.d/macnock create mode 100644 src/packages/fff/fff-macnock/files/etc/uci-defaults/52-fff-macnock