include $(TOPDIR)/rules.mk
PKG_NAME:=oonf-dlep-proxy
-PKG_VERSION:=0.9.1-r1
+PKG_VERSION:=0.9.1-r2
PKG_REV:=eab3845089bc2410a3c115fb8274572b16a0e47d
PKG_RELEASE:=$(PKG_REV)
define Package/oonf-dlep-proxy
$(call Package/oonf-git/template)
TITLE:= Build DLEP Radio+Router Agent
- DEPENDS:=+librt +libnl-tiny +libuci
+ DEPENDS:=+librt +libnl-tiny +libuci +oonf-init-scripts
VERSION:=$(PKG_VERSION)
endef
#!/bin/sh
-daemon=dlep_proxy
+DAEMON='dlep_proxy'
-case "$ACTION" in
- ifup)
- . /etc/rc.common /etc/init.d/${daemon} enabled && {
- logger -t '${daemon}[hotplug]' -p daemon.info 'reloading configuration'
- . /etc/rc.common /etc/init.d/${daemon} reload
- }
- ;;
-esac
+. /lib/functions/oonf_hotplug.sh
#!/bin/sh /etc/rc.common
START=82
+DAEMON='dlep_proxy'
-daemon=dlep_proxy
-
-. /usr/share/libubox/jshn.sh
-
-oonf_log()
-{
- logger -s -t ${daemon} -p daemon.info "$1"
-}
-
-oonf_get_layer3_device()
-{
- local interface="$1" # e.g. 'mywifi'
- local status dev proto
- local query="{ \"interface\" : \"$interface\" }"
-
- status="$( ubus -S call network.interface status "$query" )" && {
- json_load "$status"
- json_get_var 'dev' l3_device
- json_get_var 'proto' proto
- case "$proto" in
- pppoe)
- # TODO: otherwise it segfaults
- oonf_log "refusing to add '$interface', because of proto '$proto'"
- ;;
- *)
- echo "$dev" # e.g. 'wlan0-1'
- ;;
- esac
- }
-}
-
-oonf_add_devices_to_configuration()
-{
- local i=0
- local device_name= section= interface= single_interface=
-
- # make a copy of configuration and
- # add a 'name' (physical name) for all
- # 'interface-names' (e.g. mywifi)
- #
- # olsrd2.@interface[2]=interface
- # olsrd2.@interface[2].ifname='wan lan wlanadhoc wlanadhocRADIO1'
-
- # /var is in ramdisc/tmpfs
- cp /etc/config/${daemon} /var/etc/${daemon}_dev
-
- while section="$( uci -q -c /etc/config get "${daemon}.@[$i]" )"; do {
- echo "section: $section"
-
- interface="$( uci -q -c /etc/config get "${daemon}.@[$i].ifname" )" || {
- i=$(( $i + 1 ))
- continue
- }
-
- case "$( uci -q get "${daemon}.@[$i].ignore" )" in
- 1|on|true|enabled|yes)
- oonf_log "removing/ignore section '$section'"
- uci -q -c /var/etc delete "${daemon}_dev.@[$j]"
- i=$(( $i + 1 ))
-
- continue
- ;;
- esac
-
- for single_interface in $interface; do {
- device_name="$( oonf_get_layer3_device "$single_interface" )"
-
- echo "Interface: $single_interface = $device_name"
-
- if [ ! -z "$device_name" ]
- then
- # add option 'name' for 'ifname' (e.g. 'mywifi')
- uci -q -c /var/etc add_list "${daemon}_dev.@[$i].name=$device_name"
- fi
- } done
- i=$(( $i + 1 ))
- } done
-
- uci -q -c /var/etc commit ${daemon}_dev
-
- oonf_log "wrote '/var/etc/${daemon}_dev'"
-}
-
-oonf_reread_config()
-{
- local pid
- local pidfile='/var/run/${daemon}.pid'
-
- if [ -e "$pidfile" ]; then
- read pid <"$pidfile"
- elif pidfile="$( uci -q get '${daemon}.@global[0].pidfile' )"; then
- read pid <"$pidfile"
- fi
-
- # if empty, ask kernel
- pid="${pid:-$( pidof ${daemon} )}"
-
- [ -n "$pid" ] && kill -SIGHUP $pid
-}
-
-start()
-{
- oonf_add_devices_to_configuration
-
- # produce coredumps
- ulimit -c unlimited
-
- service_start /usr/sbin/${daemon} --set global.fork=true --load uci:///var/etc/${daemon}_dev
-}
-
-stop()
-{
- service_stop /usr/sbin/${daemon}
-}
-
-reload()
-{
- oonf_add_devices_to_configuration
- oonf_reread_config
-}
+. /lib/functions/oonf_init.sh
include $(TOPDIR)/rules.mk
PKG_NAME:=oonf-dlep-radio
-PKG_VERSION:=0.9.1-r1
+PKG_VERSION:=0.9.1-r2
PKG_REV:=eab3845089bc2410a3c115fb8274572b16a0e47d
PKG_RELEASE:=$(PKG_REV)
define Package/oonf-dlep-radio
$(call Package/oonf-git/template)
TITLE:= Build DLEP Radio Agent
- DEPENDS:=+librt +libnl-tiny +libuci
+ DEPENDS:=+librt +libnl-tiny +libuci +oonf-init-scripts
VERSION:=$(PKG_VERSION)
endef
#!/bin/sh
-daemon=dlep_radio
+DAEMON='dlep_radio'
-case "$ACTION" in
- ifup)
- . /etc/rc.common /etc/init.d/${daemon} enabled && {
- logger -t '${daemon}[hotplug]' -p daemon.info 'reloading configuration'
- . /etc/rc.common /etc/init.d/${daemon} reload
- }
- ;;
-esac
+. /lib/functions/oonf_hotplug.sh
#!/bin/sh /etc/rc.common
START=82
+DAEMON='dlep_radio'
-daemon=dlep_radio
-
-. /usr/share/libubox/jshn.sh
-
-oonf_log()
-{
- logger -s -t ${daemon} -p daemon.info "$1"
-}
-
-oonf_get_layer3_device()
-{
- local interface="$1" # e.g. 'mywifi'
- local status dev proto
- local query="{ \"interface\" : \"$interface\" }"
-
- status="$( ubus -S call network.interface status "$query" )" && {
- json_load "$status"
- json_get_var 'dev' l3_device
- json_get_var 'proto' proto
- case "$proto" in
- pppoe)
- # TODO: otherwise it segfaults
- oonf_log "refusing to add '$interface', because of proto '$proto'"
- ;;
- *)
- echo "$dev" # e.g. 'wlan0-1'
- ;;
- esac
- }
-}
-
-oonf_add_devices_to_configuration()
-{
- local i=0
- local device_name= section= interface= single_interface=
-
- # make a copy of configuration and
- # add a 'name' (physical name) for all
- # 'interface-names' (e.g. mywifi)
- #
- # olsrd2.@interface[2]=interface
- # olsrd2.@interface[2].ifname='wan lan wlanadhoc wlanadhocRADIO1'
-
- # /var is in ramdisc/tmpfs
- cp /etc/config/${daemon} /var/etc/${daemon}_dev
-
- while section="$( uci -q -c /etc/config get "${daemon}.@[$i]" )"; do {
- echo "section: $section"
-
- interface="$( uci -q -c /etc/config get "${daemon}.@[$i].ifname" )" || {
- i=$(( $i + 1 ))
- continue
- }
-
- case "$( uci -q get "${daemon}.@[$i].ignore" )" in
- 1|on|true|enabled|yes)
- oonf_log "removing/ignore section '$section'"
- uci -q -c /var/etc delete "${daemon}_dev.@[$j]"
- i=$(( $i + 1 ))
-
- continue
- ;;
- esac
-
- for single_interface in $interface; do {
- device_name="$( oonf_get_layer3_device "$single_interface" )"
-
- echo "Interface: $single_interface = $device_name"
-
- if [ ! -z "$device_name" ]
- then
- # add option 'name' for 'ifname' (e.g. 'mywifi')
- uci -q -c /var/etc add_list "${daemon}_dev.@[$i].name=$device_name"
- fi
- } done
- i=$(( $i + 1 ))
- } done
-
- uci -q -c /var/etc commit ${daemon}_dev
-
- oonf_log "wrote '/var/etc/${daemon}_dev'"
-}
-
-oonf_reread_config()
-{
- local pid
- local pidfile='/var/run/${daemon}.pid'
-
- if [ -e "$pidfile" ]; then
- read pid <"$pidfile"
- elif pidfile="$( uci -q get '${daemon}.@global[0].pidfile' )"; then
- read pid <"$pidfile"
- fi
-
- # if empty, ask kernel
- pid="${pid:-$( pidof ${daemon} )}"
-
- [ -n "$pid" ] && kill -SIGHUP $pid
-}
-
-start()
-{
- oonf_add_devices_to_configuration
-
- # produce coredumps
- ulimit -c unlimited
-
- service_start /usr/sbin/${daemon} --set global.fork=true --load uci:///var/etc/${daemon}_dev
-}
-
-stop()
-{
- service_stop /usr/sbin/${daemon}
-}
-
-reload()
-{
- oonf_add_devices_to_configuration
- oonf_reread_config
-}
+. /lib/functions/oonf_init.sh
--- /dev/null
+include $(TOPDIR)/rules.mk
+include $(INCLUDE_DIR)/kernel.mk
+
+PKG_NAME:=oonf-init-scripts
+PKG_VERSION:=0.9.1-r2
+PKG_RELEASE:=1
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/oonf-init-scripts
+ SECTION:=net
+ CATEGORY:=Network
+ MAINTAINER:=Henning Rogge <hrogge@gmail.com>
+ SUBMENU:=OLSR.org network framework
+ URL:=http://www.olsr.org/
+ TITLE:= Common OONF startup scripts
+ VERSION:=$(PKG_VERSION)
+endef
+
+define Build/Prepare
+ mkdir -p $(PKG_BUILD_DIR)
+endef
+
+define Build/Configure
+endef
+
+define Build/Compile
+endef
+
+define Package/oonf-init-scripts/install
+ $(INSTALL_BIN) -D ./files/oonf_init.sh $(1)/lib/functions/oonf_init.sh
+ $(INSTALL_BIN) -D ./files/oonf_hotplug.sh $(1)/lib/functions/oonf_hotplug.sh
+endef
+
+$(eval $(call BuildPackage,oonf-init-scripts))
--- /dev/null
+#!/bin/sh
+
+case "${ACTION}" in
+ ifup)
+ . /etc/rc.common /etc/init.d/${DAEMON} enabled && {
+ logger -t '${DAEMON}[hotplug]' -p daemon.info 'reloading configuration'
+ . /etc/rc.common /etc/init.d/${DAEMON} reload
+ }
+ ;;
+esac
--- /dev/null
+#!/bin/sh
+
+. /usr/share/libubox/jshn.sh
+
+oonf_log()
+{
+ logger -s -t ${DAEMON} -p daemon.info "${1}"
+}
+
+oonf_get_layer3_device()
+{
+ local interface="${1}" # e.g. 'mywifi'
+ local status dev proto
+ local query="{ \"interface\" : \"${interface}\" }"
+
+ status="$( ubus -S call network.interface status "${query}" )" && {
+ json_load "${status}"
+ json_get_var 'dev' l3_device
+ json_get_var 'proto' proto
+ case "${proto}" in
+ pppoe)
+ # TODO: otherwise it segfaults
+ oonf_log "refusing to add '$interface', because of proto '${proto}'"
+ ;;
+ *)
+ echo "${dev}" # e.g. 'wlan0-1'
+ ;;
+ esac
+ }
+}
+
+oonf_add_devices_to_configuration()
+{
+ local i=0
+ local device_name= section= interface= single_interface=
+
+ # make a copy of configuration and
+ # add a 'name' (physical name) for all
+ # 'interface-names' (e.g. mywifi)
+ #
+ # olsrd2.@interface[2]=interface
+ # olsrd2.@interface[2].ifname='wan lan wlanadhoc wlanadhocRADIO1'
+
+ # /var is in ramdisc/tmpfs
+ uci export ${DAEMON} >"/var/etc/${DAEMON}_dev"
+
+ while section="$( uci -q -c /etc/config get "${DAEMON}.@[${i}]" )"; do {
+ echo "section: ${section}"
+
+ interface="$( uci -q -c /etc/config get "${DAEMON}.@[${i}].ifname" )" || {
+ i=$(( i + 1 ))
+ continue
+ }
+
+ case "$( uci -q get "${DAEMON}.@[${i}].ignore" )" in
+ 1|on|true|enabled|yes)
+ oonf_log "removing/ignore section '$section'"
+ uci -q -c /var/etc delete "${DAEMON}_dev.@[${j}]"
+ i=$(( i + 1 ))
+
+ continue
+ ;;
+ esac
+
+ for single_interface in ${interface}; do {
+ device_name="$( oonf_get_layer3_device "${single_interface}" )"
+
+ echo "Interface: ${single_interface} = ${device_name}"
+
+ if [ ! -z "${device_name}" ]
+ then
+ # add option 'name' for 'ifname' (e.g. 'mywifi')
+ uci -q -c /var/etc add_list "${DAEMON}_dev.@[${i}].name=${device_name}"
+ fi
+ } done
+ i=$(( $i + 1 ))
+ } done
+
+ uci -q -c /var/etc commit "${DAEMON}_dev"
+
+ oonf_log "wrote '/var/etc/${DAEMON}_dev'"
+}
+
+oonf_reread_config()
+{
+ local pid
+ local pidfile="/var/run/${DAEMON}.pid"
+
+ if [ -e "${pidfile}" ]; then
+ read pid <"${pidfile}"
+ elif pidfile="$( uci -q get "${DAEMON}.@global[0].pidfile" )"; then
+ read pid <"${pidfile}"
+ fi
+
+ # if empty, ask kernel
+ pid="${pid:-$( pidof ${DAEMON} )}"
+
+ [ -n "${pid}" ] && kill -SIGHUP ${pid}
+}
+
+start()
+{
+ oonf_add_devices_to_configuration
+
+ # produce coredumps
+ ulimit -c unlimited
+
+ service_start /usr/sbin/${DAEMON} --set global.fork=true --load uci:///var/etc/${DAEMON}_dev
+}
+
+stop()
+{
+ service_stop /usr/sbin/${DAEMON}
+}
+
+reload()
+{
+ oonf_add_devices_to_configuration
+ oonf_reread_config
+}
include $(TOPDIR)/rules.mk
PKG_NAME:=oonf-olsrd2
-PKG_VERSION:=0.9.1-r1
+PKG_VERSION:=0.9.1-r2
PKG_REV:=eab3845089bc2410a3c115fb8274572b16a0e47d
PKG_RELEASE:=$(PKG_REV)
define Package/oonf-olsrd2
$(call Package/oonf-git/template)
TITLE:= Build Olsrd V2 Routing Agent
- DEPENDS:=+librt +libnl-tiny +libuci
+ DEPENDS:=+librt +libnl-tiny +libuci +oonf-init-scripts
VERSION:=$(PKG_VERSION)
endef
#!/bin/sh
-daemon=olsrd2
+DAEMON='olsrd2'
-case "$ACTION" in
- ifup)
- . /etc/rc.common /etc/init.d/${daemon} enabled && {
- logger -t '${daemon}[hotplug]' -p daemon.info 'reloading configuration'
- . /etc/rc.common /etc/init.d/${daemon} reload
- }
- ;;
-esac
+. /lib/functions/oonf_hotplug.sh
#!/bin/sh /etc/rc.common
START=82
+DAEMON='olsrd2'
-daemon=olsrd2
-
-. /usr/share/libubox/jshn.sh
-
-oonf_log()
-{
- logger -s -t ${daemon} -p daemon.info "$1"
-}
-
-oonf_get_layer3_device()
-{
- local interface="$1" # e.g. 'mywifi'
- local status dev proto
- local query="{ \"interface\" : \"$interface\" }"
-
- status="$( ubus -S call network.interface status "$query" )" && {
- json_load "$status"
- json_get_var 'dev' l3_device
- json_get_var 'proto' proto
- case "$proto" in
- pppoe)
- # TODO: otherwise it segfaults
- oonf_log "refusing to add '$interface', because of proto '$proto'"
- ;;
- *)
- echo "$dev" # e.g. 'wlan0-1'
- ;;
- esac
- }
-}
-
-oonf_add_devices_to_configuration()
-{
- local i=0
- local device_name= section= interface= single_interface=
-
- # make a copy of configuration and
- # add a 'name' (physical name) for all
- # 'interface-names' (e.g. mywifi)
- #
- # olsrd2.@interface[2]=interface
- # olsrd2.@interface[2].ifname='wan lan wlanadhoc wlanadhocRADIO1'
-
- # /var is in ramdisc/tmpfs
- cp /etc/config/${daemon} /var/etc/${daemon}_dev
-
- while section="$( uci -q -c /etc/config get "${daemon}.@[$i]" )"; do {
- echo "section: $section"
-
- interface="$( uci -q -c /etc/config get "${daemon}.@[$i].ifname" )" || {
- i=$(( $i + 1 ))
- continue
- }
-
- case "$( uci -q get "${daemon}.@[$i].ignore" )" in
- 1|on|true|enabled|yes)
- oonf_log "removing/ignore section '$section'"
- uci -q -c /var/etc delete "${daemon}_dev.@[$j]"
- i=$(( $i + 1 ))
-
- continue
- ;;
- esac
-
- for single_interface in $interface; do {
- device_name="$( oonf_get_layer3_device "$single_interface" )"
-
- echo "Interface: $single_interface = $device_name"
-
- if [ ! -z "$device_name" ]
- then
- # add option 'name' for 'ifname' (e.g. 'mywifi')
- uci -q -c /var/etc add_list "${daemon}_dev.@[$i].name=$device_name"
- fi
- } done
- i=$(( $i + 1 ))
- } done
-
- uci -q -c /var/etc commit ${daemon}_dev
-
- oonf_log "wrote '/var/etc/${daemon}_dev'"
-}
-
-oonf_reread_config()
-{
- local pid
- local pidfile='/var/run/${daemon}.pid'
-
- if [ -e "$pidfile" ]; then
- read pid <"$pidfile"
- elif pidfile="$( uci -q get '${daemon}.@global[0].pidfile' )"; then
- read pid <"$pidfile"
- fi
-
- # if empty, ask kernel
- pid="${pid:-$( pidof ${daemon} )}"
-
- [ -n "$pid" ] && kill -SIGHUP $pid
-}
-
-start()
-{
- oonf_add_devices_to_configuration
-
- # produce coredumps
- ulimit -c unlimited
-
- service_start /usr/sbin/${daemon} --set global.fork=true --load uci:///var/etc/${daemon}_dev
-}
-
-stop()
-{
- service_stop /usr/sbin/${daemon}
-}
-
-reload()
-{
- oonf_add_devices_to_configuration
- oonf_reread_config
-}
+. /lib/functions/oonf_init.sh