summaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
Diffstat (limited to 'package')
-rw-r--r--package/Makefile3
-rw-r--r--package/base-files/default/etc/config/network9
-rw-r--r--package/ppp/Config.in7
-rw-r--r--package/ppp/Makefile8
-rw-r--r--package/ppp/files/ifup.pppoa45
-rw-r--r--package/ppp/ipkg/ppp-mod-pppoa.control7
-rw-r--r--package/ppp/patches/202-atm_fix.patch21
-rw-r--r--package/ppp/patches/202-no_atm.patch12
8 files changed, 90 insertions, 22 deletions
diff --git a/package/Makefile b/package/Makefile
index 0b9794132..9ee4fa9e5 100644
--- a/package/Makefile
+++ b/package/Makefile
@@ -164,7 +164,7 @@ package-$(BR2_PACKAGE_WPUT) += wput
package-$(BR2_PACKAGE_XINETD) += xinetd
package-$(BR2_PACKAGE_ZLIB) += zlib
-DEV_LIBS:=tcp_wrappers glib ncurses openssl pcre popt zlib libnet libpcap mysql postgresql iptables matrixssl lzo gmp fuse portmap libelf uclibc++ speex libpng libgd wireless-tools nvram
+DEV_LIBS:=tcp_wrappers glib ncurses openssl pcre popt zlib libnet libpcap mysql postgresql iptables matrixssl lzo gmp fuse portmap libelf uclibc++ speex libpng libgd wireless-tools nvram linux-atm
DEV_LIBS_COMPILE:=$(patsubst %,%-compile,$(DEV_LIBS))
SDK_DEFAULT_PACKAGES:=busybox dnsmasq iptables wireless-tools dropbear bridge ipkg ppp
SDK_DEFAULT_COMPILE:=$(patsubst %,%-compile,$(SDK_DEFAULT_PACKAGES))
@@ -217,6 +217,7 @@ openswan-compile: gmp-compile
osiris-compile: openssl-compile
portmap-compile: tcp_wrappers-compile
postgresql-compile: zlib-compile
+ppp-compile: linux-atm-compile
quagga-compile: readline-compile ncurses-compile
rrdcollect-compile: rrdtool-compile
rrdtool-compile: cgilib-compile freetype-compile libart-compile libpng-compile
diff --git a/package/base-files/default/etc/config/network b/package/base-files/default/etc/config/network
deleted file mode 100644
index 049460160..000000000
--- a/package/base-files/default/etc/config/network
+++ /dev/null
@@ -1,9 +0,0 @@
-# Network configuration file
-
-# Uncomment the following statements to override the default or nvram config
-# lan_ifame="br0"
-# lan_proto="static"
-# lan_ipaddr="192.168.1.1"
-# lan_netmask="255.255.255.0"
-# lan_gateway=""
-# lan_dns=""
diff --git a/package/ppp/Config.in b/package/ppp/Config.in
index 951c24882..4feadee86 100644
--- a/package/ppp/Config.in
+++ b/package/ppp/Config.in
@@ -6,6 +6,13 @@ config BR2_PACKAGE_PPP
default y
select BR2_PACKAGE_KMOD_PPP
+config BR2_PACKAGE_PPP_MOD_PPPOA
+ prompt "...-mod-pppoa - PPPoA (PPP over ATM) plugin"
+ tristate
+ default y if BR2_LINUX_2_4_AR7
+ depends on BR2_PACKAGE_PPP
+ select BR2_PACKAGE_KMOD_PPPOA
+
config BR2_PACKAGE_PPP_MOD_PPPOE
prompt "...-mod-pppoe - PPPoE (PPP over Ethernet) plugin"
tristate
diff --git a/package/ppp/Makefile b/package/ppp/Makefile
index 0fed25c91..1b20c4e7c 100644
--- a/package/ppp/Makefile
+++ b/package/ppp/Makefile
@@ -28,12 +28,14 @@ $$(IPKG_$(1)):
endef
$(eval $(call PKG_template,PPP,ppp,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+$(eval $(call PKG_template,PPP_MOD_PPPOA,ppp-mod-pppoa,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
$(eval $(call PKG_template,PPP_MOD_PPPOE,ppp-mod-pppoe,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
$(eval $(call PKG_template,PPP_MOD_RADIUS,ppp-mod-radius,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
$(eval $(call PKG_template,CHAT,chat,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
$(eval $(call PKG_template,PPPDUMP,pppdump,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
$(eval $(call PKG_template,PPPSTATS,pppstats,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+$(eval $(call PKG_mod_template,PPP_MOD_PPPOA,pppoatm))
$(eval $(call PKG_mod_template,PPP_MOD_PPPOE,rp-pppoe))
$(eval $(call PKG_mod_template,PPP_MOD_RADIUS,radius))
@@ -88,6 +90,12 @@ $(IPKG_PPP):
$(RSTRIP) $(IDIR_PPP)
$(IPKG_BUILD) $(IDIR_PPP) $(PACKAGE_DIR)
+$(IDIR_PPP_MOD_PPPOA)/sbin/ifup.pppoa:
+ install -d -m0755 $(IDIR_PPP_MOD_PPPOA)/sbin
+ install -m0755 ./files/ifup.pppoa $(IDIR_PPP_MOD_PPPOA)/sbin/
+
+$(IPKG_PPP_MOD_PPPOA): $(IDIR_PPP_MOD_PPPOA)/sbin/ifup.pppoa
+
$(IDIR_PPP_MOD_PPPOE)/sbin/ifup.pppoe:
install -d -m0755 $(IDIR_PPP_MOD_PPPOE)/sbin
install -m0755 ./files/ifup.pppoe $(IDIR_PPP_MOD_PPPOE)/sbin/
diff --git a/package/ppp/files/ifup.pppoa b/package/ppp/files/ifup.pppoa
new file mode 100644
index 000000000..ee88e4b9e
--- /dev/null
+++ b/package/ppp/files/ifup.pppoa
@@ -0,0 +1,45 @@
+#!/bin/sh
+[ $# = 0 ] && { echo " $0 <group>"; exit; }
+. /etc/functions.sh
+. /etc/network.overrides
+[ -e /etc/config/network ] && . /etc/config/network
+type=$1
+
+[ "$(nvram get ${type}_proto)" = "pppoa" ] || {
+ echo "$0: ${type}_proto isn't pppoa"
+ exit
+}
+
+for module in slhc ppp_generic pppox pppoatm; do
+ /sbin/insmod $module 2>&- >&-
+done
+
+while :; do
+ VPI=$(nvram get atm_vpi)
+ VCI=$(nvram get atm_vci)
+ USERNAME=$(nvram get ppp_username)
+ PASSWORD=$(nvram get ppp_passwd)
+ REDIAL=$(nvram get ppp_redialperiod)
+ REDIAL=${REDIAL:+lcp-echo-interval $REDIAL}
+ IDLETIME=$(nvram get ppp_idletime)
+ IDLETIME=${IDLETIME:+lcp-echo-failure $IDLETIME}
+ MTU=$(nvram get ppp_mtu)
+ MTU=${MTU:-1492}
+ MTU=${MTU:+ mtu $MTU mru $MTU}
+
+ ifconfig $IFNAME up
+ /usr/sbin/pppd nodetach \
+ plugin pppoatm.so ${VPI:-8}.${VCI:-35} \
+ connect /bin/true \
+ usepeerdns \
+ defaultroute \
+ linkname $type \
+ user "$USERNAME" \
+ password "$PASSWORD" \
+ $MTU \
+ $IDLETIME \
+ $REDIAL
+
+ # Read settings again (might have changed)
+ [ -e /etc/config/network ] && . /etc/config/network
+done &
diff --git a/package/ppp/ipkg/ppp-mod-pppoa.control b/package/ppp/ipkg/ppp-mod-pppoa.control
new file mode 100644
index 000000000..94e5e101b
--- /dev/null
+++ b/package/ppp/ipkg/ppp-mod-pppoa.control
@@ -0,0 +1,7 @@
+Package: ppp-mod-pppoa
+Priority: optional
+Section: net
+Maintainer: Matteo Croce <3297627799@wind.it>
+Source: buildroot internal
+Description: a PPPoA (PPP over ATM) plugin for PPP
+Depends: ppp, kmod-pppoa
diff --git a/package/ppp/patches/202-atm_fix.patch b/package/ppp/patches/202-atm_fix.patch
new file mode 100644
index 000000000..371dc9611
--- /dev/null
+++ b/package/ppp/patches/202-atm_fix.patch
@@ -0,0 +1,21 @@
+--- ppp-2.4.3/pppd/plugins/pppoatm/pppoatm.c 2005-08-26 15:18:55.000000000 +0200
++++ ppp-2.4.3/pppd/plugins/pppoatm/pppoatm.c 2005-08-26 15:19:51.000000000 +0200
+@@ -136,8 +136,6 @@
+ int fd;
+ struct atm_qos qos;
+
+- system ("/sbin/modprobe pppoatm");
+-
+ if (!device_got_set)
+ no_device_given_pppoatm();
+ fd = socket(AF_ATMPVC, SOCK_DGRAM, 0);
+@@ -152,8 +150,7 @@
+ qos.txtp.max_sdu = lcp_allowoptions[0].mru + pppoatm_overhead();
+ qos.rxtp.max_sdu = lcp_wantoptions[0].mru + pppoatm_overhead();
+ qos.aal = ATM_AAL5;
+- if (setsockopt(fd, SOL_ATM, SO_ATMQOS, &qos, sizeof(qos)) < 0)
+- fatal("setsockopt(SO_ATMQOS): %m");
++ setsockopt(fd, SOL_ATM, SO_ATMQOS, &qos, sizeof(qos));
+ /* TODO: accept on SVCs... */
+ if (connect(fd, (struct sockaddr *) &pvcaddr,
+ sizeof(struct sockaddr_atmpvc)))
diff --git a/package/ppp/patches/202-no_atm.patch b/package/ppp/patches/202-no_atm.patch
deleted file mode 100644
index a737cfa23..000000000
--- a/package/ppp/patches/202-no_atm.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ruN ppp-2.4.3-orig/pppd/plugins/Makefile.linux ppp-2.4.3-3/pppd/plugins/Makefile.linux
---- ppp-2.4.3-orig/pppd/plugins/Makefile.linux 2004-11-14 08:57:35.000000000 +0100
-+++ ppp-2.4.3-3/pppd/plugins/Makefile.linux 2004-12-05 17:03:59.000000000 +0100
-@@ -9,7 +9,7 @@
- MANDIR = $(DESTDIR)/share/man/man8
- LIBDIR = $(DESTDIR)/lib/pppd/$(VERSION)
-
--SUBDIRS := rp-pppoe pppoatm radius
-+SUBDIRS := rp-pppoe radius
- # Uncomment the next line to include the radius authentication plugin
- # SUBDIRS += radius
- PLUGINS := minconn.so passprompt.so passwordfd.so winbind.so