Port l2tpns to -ng
git-svn-id: svn://svn.openwrt.org/openwrt/packages@4418 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
92a43582fb
commit
e7942a3f7f
55
net/l2tpns/Makefile
Normal file
55
net/l2tpns/Makefile
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
# Copyright (C) 2006 OpenWrt.org
|
||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
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_CAT:=zcat
|
||||||
|
|
||||||
|
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||||
|
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
define Package/l2tpns
|
||||||
|
SECTION:=net
|
||||||
|
CATEGORY:=Network
|
||||||
|
DEPENDS:=+libcli
|
||||||
|
TITLE:=An L2TP enhanced server
|
||||||
|
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.\\\
|
||||||
|
URL:=http://sourceforge.net/projects/l2tpns
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Build/Compile
|
||||||
|
$(MAKE) -C $(PKG_BUILD_DIR) \
|
||||||
|
CC=$(TARGET_CC) \
|
||||||
|
LD=$(TARGET_CC) \
|
||||||
|
OPTIM="$(TARGET_CFLAGS)" \
|
||||||
|
DESTDIR=$(PKG_INSTALL_DIR) \
|
||||||
|
STAGING_DIR=$(STAGING_DIR) \
|
||||||
|
all install
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/l2tpns/install
|
||||||
|
install -d -m0755 $(1)/etc/l2tpns
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/etc/l2tpns/* $(1)/etc/l2tpns/
|
||||||
|
install -d -m0755 $(1)/usr/lib/l2tpns
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/l2tpns/* $(1)/usr/lib/l2tpns/
|
||||||
|
install -d -m0755 $(1)/usr/sbin
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin/
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,l2tpns))
|
128
net/l2tpns/patches/01-honor_includes_remove_backtrace.patch
Normal file
128
net/l2tpns/patches/01-honor_includes_remove_backtrace.patch
Normal file
@ -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;
|
||||||
|
}
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user