diff options
Diffstat (limited to 'openwrt/package/l2tpns')
-rw-r--r-- | openwrt/package/l2tpns/Config.in | 12 | ||||
-rwxr-xr-x | openwrt/package/l2tpns/Makefile | 29 | ||||
-rwxr-xr-x | openwrt/package/l2tpns/ipkg/l2tpns.control | 5 | ||||
-rw-r--r-- | openwrt/package/l2tpns/patches/01-honor_includes_remove_backtrace.patch | 128 |
4 files changed, 174 insertions, 0 deletions
diff --git a/openwrt/package/l2tpns/Config.in b/openwrt/package/l2tpns/Config.in new file mode 100644 index 000000000..e78b46b1c --- /dev/null +++ b/openwrt/package/l2tpns/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_L2TPNS + prompt "l2tpns............................ An L2TP enhanced server" + tristate + default m if CONFIG_DEVEL + select BR2_PACKAGE_LIBCLI + help + l2tpns is a layer 2 tunneling protocol network server (LNS). + It supports up to 65535 concurrent sessions per server/cluster + plus ISP features such as rate limiting, walled garden, usage + accounting, and more. + + http://sourceforge.net/projects/l2tpns diff --git a/openwrt/package/l2tpns/Makefile b/openwrt/package/l2tpns/Makefile new file mode 100755 index 000000000..6f2406eec --- /dev/null +++ b/openwrt/package/l2tpns/Makefile @@ -0,0 +1,29 @@ +include $(TOPDIR)/rules.mk + +PKG_NAME:=l2tpns +PKG_VERSION:=2.1.14 +PKG_RELEASE:=1 +PKG_MD5SUM:=2a0ee2a3678160c335f1d68c17c4f871 +PKG_SOURCE_URL:=@SF/L2TPNS +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_CAT:=zcat + +PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install + +include $(TOPDIR)/package/rules.mk + +$(eval $(call PKG_template,L2TPNS,$(PKG_NAME),$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH))) + +$(PKG_BUILD_DIR)/.configured: + touch $@ + +$(PKG_BUILD_DIR)/.built: + $(MAKE) CC=$(TARGET_CC) LD=$(TARGET_CC) DESTDIR=$(PKG_INSTALL_DIR) STAGING_DIR=$(STAGING_DIR) -C $(PKG_BUILD_DIR) install + touch $@ + +$(IPKG_L2TPNS): + mkdir -p $(IDIR_L2TPNS) + cp -fpR $(PKG_INSTALL_DIR)/* $(IDIR_L2TPNS)/ + $(RSTRIP) $(IDIR_L2TPNS) + $(IPKG_BUILD) $(IDIR_L2TPNS) $(PACKAGE_DIR) diff --git a/openwrt/package/l2tpns/ipkg/l2tpns.control b/openwrt/package/l2tpns/ipkg/l2tpns.control new file mode 100755 index 000000000..6928c2ee3 --- /dev/null +++ b/openwrt/package/l2tpns/ipkg/l2tpns.control @@ -0,0 +1,5 @@ +Package: l2tpns +Section: net +Architecture: mipsel +Priority: optional +Description: l2tpns is a layer 2 tunneling protocol network server (LNS). It supports up to 65535 concurrent sessions per server/cluster plus ISP features such as rate limiting, walled garden, usage accounting, and more.
\ No newline at end of file diff --git a/openwrt/package/l2tpns/patches/01-honor_includes_remove_backtrace.patch b/openwrt/package/l2tpns/patches/01-honor_includes_remove_backtrace.patch new file mode 100644 index 000000000..a8e4d754a --- /dev/null +++ b/openwrt/package/l2tpns/patches/01-honor_includes_remove_backtrace.patch @@ -0,0 +1,128 @@ +diff -urN orig/l2tpns-2.1.14/Makefile l2tpns-2.1.14/Makefile +--- orig/l2tpns-2.1.14/Makefile 2005-12-07 06:21:37.000000000 +0100 ++++ l2tpns-2.1.14/Makefile 2005-12-14 12:50:49.000000000 +0100 +@@ -11,17 +11,14 @@ + DEFINES += -DETCDIR='"$(etcdir)"' + + OPTIM = +-OPTIM += -g + OPTIM += -O3 + +-CC = gcc +-LD = gcc +-INCLUDES = -I. ++INCLUDES = -I. -I$(STAGING_DIR)/usr/include + CPPFLAGS = $(INCLUDES) $(DEFINES) + CFLAGS = -Wall -Wformat-security -Wno-format-zero-length $(OPTIM) +-LDFLAGS = ++LDFLAGS = -L$(STAGING_DIR)/usr/lib + LDLIBS = +-INSTALL = install -c -D -o root -g root ++INSTALL = install -c -D + + l2tpns.LIBS = -lm -lcli -ldl + +diff -urN orig/l2tpns-2.1.14/l2tpns.c l2tpns-2.1.14/l2tpns.c +--- orig/l2tpns-2.1.14/l2tpns.c 2005-12-07 06:21:37.000000000 +0100 ++++ l2tpns-2.1.14/l2tpns.c 2005-12-14 12:50:36.000000000 +0100 +@@ -940,18 +940,14 @@ + + if (!t) + { +- static int backtrace_count = 0; + LOG(0, 0, t, "tunnelsend called with 0 as tunnel id\n"); + STAT(tunnel_tx_errors); +- log_backtrace(backtrace_count, 5) + return; + } + + if (!tunnel[t].ip) + { +- static int backtrace_count = 0; + LOG(1, 0, t, "Error sending data out tunnel: no remote endpoint (tunnel not set up)\n"); +- log_backtrace(backtrace_count, 5) + STAT(tunnel_tx_errors); + return; + } +@@ -4125,23 +4121,8 @@ + struct sched_param params = {0}; + params.sched_priority = 1; + +- if (get_nprocs() < 2) +- { +- LOG(0, 0, 0, "Not using FIFO scheduler, there is only 1 processor in the system.\n"); +- config->scheduler_fifo = 0; +- } +- else +- { +- if ((ret = sched_setscheduler(0, SCHED_FIFO, ¶ms)) == 0) +- { +- LOG(1, 0, 0, "Using FIFO scheduler. Say goodbye to any other processes running\n"); +- } +- else +- { +- LOG(0, 0, 0, "Error setting scheduler to FIFO: %s\n", strerror(errno)); +- config->scheduler_fifo = 0; +- } +- } ++ LOG(0, 0, 0, "Not using FIFO scheduler, there is only 1 processor in the system.\n"); ++ config->scheduler_fifo = 0; + } + + /* Set up the cluster communications port. */ +diff -urN orig/l2tpns-2.1.14/l2tpns.h l2tpns-2.1.14/l2tpns.h +--- orig/l2tpns-2.1.14/l2tpns.h 2005-12-09 01:43:17.000000000 +0100 ++++ l2tpns-2.1.14/l2tpns.h 2005-12-14 07:43:51.000000000 +0100 +@@ -5,7 +5,6 @@ + #define __L2TPNS_H__ + + #include <netinet/in.h> +-#include <execinfo.h> + #include <stdio.h> + #include <signal.h> + #include <stdlib.h> +@@ -766,21 +765,6 @@ + extern ippoolt *ip_address_pool; + #define sessionfree (session[0].next) + +-#define log_backtrace(count, max) \ +-if (count++ < max) { \ +- void *array[20]; \ +- char **strings; \ +- int size, i; \ +- LOG(0, 0, t, "Backtrace follows:\n"); \ +- size = backtrace(array, 10); \ +- strings = backtrace_symbols(array, size); \ +- if (strings) for (i = 0; i < size; i++) \ +- { \ +- LOG(0, 0, t, " %s\n", strings[i]); \ +- } \ +- free(strings); \ +-} +- + + extern configt *config; + extern time_t basetime; // Time when this process started. +diff -urN orig/l2tpns-2.1.14/ppp.c l2tpns-2.1.14/ppp.c +--- orig/l2tpns-2.1.14/ppp.c 2005-12-07 06:21:37.000000000 +0100 ++++ l2tpns-2.1.14/ppp.c 2005-12-14 07:43:08.000000000 +0100 +@@ -1755,9 +1755,7 @@ + { + if (size < 12) // Need more space than this!! + { +- static int backtrace_count = 0; + LOG(0, s, t, "makeppp buffer too small for L2TP header (size=%d)\n", size); +- log_backtrace(backtrace_count, 5) + return NULL; + } + +@@ -1780,9 +1778,7 @@ + + if (l + 12 > size) + { +- static int backtrace_count = 0; + LOG(2, s, t, "makeppp would overflow buffer (size=%d, header+payload=%d)\n", size, l + 12); +- log_backtrace(backtrace_count, 5) + return NULL; + } + |