Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/openwrt/routing.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/bmx7
diff options
context:
space:
mode:
authorAxel Neumann <neumann@cgws.de>2015-07-21 15:24:09 +0300
committerAxel Neumann <neumann@cgws.de>2015-07-21 15:24:09 +0300
commit36efb8629fd5388615e9eb24e8fe9d334a0b88bb (patch)
tree2c89c40fe060919fa38b5774a322d914e24ef845 /bmx7
parent7d4e4fe21d6a7315c86fb070f2aac422f3334920 (diff)
initial BMX7 package
Diffstat (limited to 'bmx7')
-rw-r--r--bmx7/Makefile156
-rw-r--r--bmx7/files/etc/config/bmx648
-rwxr-xr-xbmx7/files/etc/init.d/bmx641
-rw-r--r--bmx7/patches/001-json-c.patch13
4 files changed, 258 insertions, 0 deletions
diff --git a/bmx7/Makefile b/bmx7/Makefile
new file mode 100644
index 0000000..e611ffa
--- /dev/null
+++ b/bmx7/Makefile
@@ -0,0 +1,156 @@
+# Copyright (C) 2011 Fundacio Privada per a la Xarxa Oberta, Lliure i Neutral guifi.net
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# The full GNU General Public License is included in this distribution in
+# the file called "COPYING".
+#
+# Contibutors:
+# Axel Neumann, Simó Albert i Beltran, Pau Escrich
+#
+
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=bmx7
+
+PKG_SOURCE_PROTO:=git
+
+#PKG_SOURCE_URL:=git://bmx6.net/bmx6.git
+PKG_SOURCE_URL:=git://github.com/axn/bmx6.git
+#PKG_SOURCE_URL:=file:///home/neumann/bmx6/bmx6.git
+
+PKG_REV:=2865a2fe21e6dae00b43b3b91ba0625af9757c09
+PKG_VERSION:=r2015072121
+PKG_RELEASE:=4
+PKG_LICENSE:=GPL-2.0
+
+PKG_SOURCE_VERSION:=$(PKG_REV)
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
+PKG_SOURCE:=$(PKG_SOURCE_SUBDIR).tar.gz
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_SOURCE_SUBDIR)
+
+include $(INCLUDE_DIR)/package.mk
+
+TARGET_CFLAGS += $(FPIC)
+
+MAKE_ARGS += \
+ EXTRA_CFLAGS="$(TARGET_CFLAGS) -I. -I$(STAGING_DIR)/usr/include -DCRYPTLIB=POLARSSL_1_3_4 -DCORE_LIMIT=20000 -DTRAFFIC_DUMP -DDEBUG_MALLOC" \
+ EXTRA_LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib " \
+ GIT_REV="$(PKG_REV)" \
+ CC="$(TARGET_CC)" \
+ INSTALL_DIR="$(PKG_INSTALL_DIR)" \
+ STRIP="/bin/false" \
+ build_all
+
+define Package/bmx7/Default
+ SECTION:=net
+ CATEGORY:=Network
+ SUBMENU:=Routing and Redirection
+ TITLE:=BMX7 layer 3 routing daemon
+ URL:=http://bmx6.net/
+ MAINTAINER:=Axel Neumann <neumann@cgws.de>
+ DEPENDS:=+zlib +libpolarssl +kmod-ip6-tunnel +kmod-iptunnel6 +kmod-tun @!bmx6
+endef
+
+define Package/bmx7/description
+BMX7 layer 3 routing daemon supporting IPv6, and IPv4 over IPv6
+endef
+
+define Package/bmx7
+ $(call Package/bmx7/Default)
+ MENU:=1
+endef
+
+define Package/bmx7-uci-config
+ $(call Package/bmx7/Default)
+ DEPENDS:=bmx7 +libuci
+ TITLE:=configuration plugin based on uci (recommended!)
+endef
+
+define Package/bmx7-json
+ $(call Package/bmx7/Default)
+ DEPENDS:=bmx7 +libjson-c
+ TITLE:=json plugin based on json-c
+endef
+
+define Package/bmx7-sms
+ $(call Package/bmx7/Default)
+ DEPENDS:=bmx7
+ TITLE:=sms plugin
+endef
+
+#define Package/bmx7-quagga
+# $(call Package/bmx7/Default)
+# DEPENDS:=bmx7 +qmp-quagga @BROKEN
+# TITLE:=bmx7 quagga plugin to redistribute/export routes (needs manet/bmx patched quagga 0.99.21)
+#endef
+
+define Package/bmx7-table
+ $(call Package/bmx7/Default)
+ DEPENDS:=bmx7
+ TITLE:=bmx7 table plugin to automatically announce routing-table routes via ip6ip tunnels
+endef
+
+define Build/Configure
+ mkdir -p $(PKG_INSTALL_DIR)
+endef
+
+define Build/Compile
+ $(MAKE) -C $(PKG_BUILD_DIR) $(MAKE_ARGS)
+endef
+
+define Package/bmx7/install
+ $(INSTALL_DIR) $(1)/usr/sbin $(1)/etc/config $(1)/etc/init.d
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/bmx6 $(1)/usr/sbin/bmx6
+endef
+
+define Package/bmx7-uci-config/conffiles
+/etc/config/bmx6
+endef
+
+define Package/bmx7-uci-config/install
+ $(INSTALL_DIR) $(1)/usr/lib $(1)/etc/config $(1)/etc/init.d
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/bmx6_uci_config/bmx6_config.so $(1)/usr/lib/bmx6_config.so
+ $(INSTALL_BIN) ./files/etc/init.d/bmx6 $(1)/etc/init.d/bmx6
+ $(INSTALL_DATA) ./files/etc/config/bmx6 $(1)/etc/config/bmx6
+endef
+
+define Package/bmx7-json/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/bmx6_json/bmx6_json.so $(1)/usr/lib/bmx6_json.so
+endef
+
+define Package/bmx7-sms/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/bmx6_sms/bmx6_sms.so $(1)/usr/lib/bmx6_sms.so
+endef
+
+define Package/bmx7-table/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/bmx6_table/bmx6_table.so $(1)/usr/lib/bmx6_table.so
+endef
+
+#define Package/bmx7-quagga/install
+# $(INSTALL_DIR) $(1)/usr/lib
+# $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/bmx6_quagga/bmx6_quagga.so $(1)/usr/lib/bmx6_quagga.so
+#endef
+
+$(eval $(call BuildPackage,bmx7))
+$(eval $(call BuildPackage,bmx7-uci-config))
+$(eval $(call BuildPackage,bmx7-json))
+$(eval $(call BuildPackage,bmx7-sms))
+#$(eval $(call BuildPackage,bmx7-quagga))
+$(eval $(call BuildPackage,bmx7-table))
diff --git a/bmx7/files/etc/config/bmx6 b/bmx7/files/etc/config/bmx6
new file mode 100644
index 0000000..5f7af9d
--- /dev/null
+++ b/bmx7/files/etc/config/bmx6
@@ -0,0 +1,48 @@
+
+# for more information:
+# http://bmx6.net/projects/bmx6/wiki
+# options execute: bmx6 --help
+
+config 'bmx6' 'general'
+# option 'runtimeDir' '/var/run/bmx6'
+
+
+#config 'plugin'
+# option 'plugin' 'bmx6_config.so'
+
+#config 'plugin'
+# option 'plugin' 'bmx6_json.so'
+
+#config 'plugin'
+# option 'plugin' 'bmx6_table.so'
+
+#config 'plugin'
+# option 'plugin' 'bmx6_sms.so'
+
+
+config 'dev' 'mesh_1'
+ option 'dev' 'br-lan'
+
+config 'dev' 'mesh_2'
+ option 'dev' 'wlan0'
+
+config 'tunDev' default
+ option 'tunDev' 'default'
+ option 'tun6Address' '2012:0:0:6666::1/64'
+ option 'tun4Address' '10.66.66.1/24'
+
+
+#config 'tunOut'
+# option 'tunOut' 'ip6'
+# option 'network' '2012::/16'
+# option 'exportDistance' '0'
+
+#config 'tunOut'
+# option 'tunOut' 'ip4'
+# option 'network' '10.0.0.0/9'
+# option 'minPrefixLen' '27'
+
+
+
+
+
diff --git a/bmx7/files/etc/init.d/bmx6 b/bmx7/files/etc/init.d/bmx6
new file mode 100755
index 0000000..cb2d5b3
--- /dev/null
+++ b/bmx7/files/etc/init.d/bmx6
@@ -0,0 +1,41 @@
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2011 Fundacio Privada per a la Xarxa Oberta, Lliure i Neutral guifi.net
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# The full GNU General Public License is included in this distribution in
+# the file called "COPYING".
+
+START=91
+
+BIN=/usr/sbin/bmx6
+CONF=/etc/config/bmx6
+PID=/var/run/bmx6/pid
+
+
+start() {
+ cd /root/
+ while pgrep -f mac80211.sh ; do sleep 1; done
+ ulimit -c 20000
+ $BIN -f $CONF -d0 > /dev/null &
+}
+
+stop() {
+ start-stop-daemon -p $PID -K
+}
+
+restart() {
+ stop; sleep 3; start
+}
diff --git a/bmx7/patches/001-json-c.patch b/bmx7/patches/001-json-c.patch
new file mode 100644
index 0000000..5d29dae
--- /dev/null
+++ b/bmx7/patches/001-json-c.patch
@@ -0,0 +1,13 @@
+Index: bmx6-r2014112401/lib/bmx6_json/json.c
+===================================================================
+--- bmx6-r2014112401.orig/lib/bmx6_json/json.c
++++ bmx6-r2014112401/lib/bmx6_json/json.c
+@@ -27,7 +27,7 @@
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <stdint.h>
+-#include <json/json.h>
++#include <json-c/json.h>
+ //#include <dirent.h>
+ //#include <sys/inotify.h>
+