summaryrefslogtreecommitdiffstats
path: root/source/n/rp-pppoe
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2018-05-28 19:12:29 +0000
committer Eric Hameleers <alien@slackware.com>2018-05-31 23:39:35 +0200
commit646a5c1cbfd95873950a87b5f75d52073a967023 (patch)
treeb8b8d2ab3b0d432ea69ad1a64d1c789649d65020 /source/n/rp-pppoe
parentd31c50870d0bee042ce660e445c9294a59a3a65b (diff)
downloadcurrent-646a5c1cbfd95873950a87b5f75d52073a967023.tar.gz
current-646a5c1cbfd95873950a87b5f75d52073a967023.tar.xz
Mon May 28 19:12:29 UTC 201820180528191229
a/pkgtools-15.0-noarch-13.txz: Rebuilt. installpkg: default line length for --terselength is the number of columns. removepkg: added --terse mode. upgradepkg: default line length for --terselength is the number of columns. upgradepkg: accept -option in addition to --option. ap/vim-8.1.0026-x86_64-1.txz: Upgraded. d/bison-3.0.5-x86_64-1.txz: Upgraded. e/emacs-26.1-x86_64-1.txz: Upgraded. kde/kopete-4.14.3-x86_64-8.txz: Rebuilt. Recompiled against libidn-1.35. n/conntrack-tools-1.4.5-x86_64-1.txz: Upgraded. n/libnetfilter_conntrack-1.0.7-x86_64-1.txz: Upgraded. n/libnftnl-1.1.0-x86_64-1.txz: Upgraded. n/links-2.16-x86_64-2.txz: Rebuilt. Rebuilt to enable X driver for -g mode. n/lynx-2.8.9dev.19-x86_64-1.txz: Upgraded. n/nftables-0.8.5-x86_64-1.txz: Upgraded. n/p11-kit-0.23.11-x86_64-1.txz: Upgraded. n/ulogd-2.0.7-x86_64-1.txz: Upgraded. n/whois-5.3.1-x86_64-1.txz: Upgraded. xap/network-manager-applet-1.8.12-x86_64-1.txz: Upgraded. xap/vim-gvim-8.1.0026-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/n/rp-pppoe')
-rw-r--r--source/n/rp-pppoe/rp-pppoe-3.12-bz1469960-new-kernel-header.patch100
-rw-r--r--source/n/rp-pppoe/rp-pppoe-3.12-doc.patch18
-rw-r--r--source/n/rp-pppoe/rp-pppoe-3.12-ip-allocation.patch111
-rw-r--r--source/n/rp-pppoe/rp-pppoe-3.12-plugin.patch12
-rw-r--r--source/n/rp-pppoe/rp-pppoe-3.12-pluginpath.patch12
-rw-r--r--source/n/rp-pppoe/rp-pppoe-manpages.patch71
-rwxr-xr-xsource/n/rp-pppoe/rp-pppoe.SlackBuild29
-rw-r--r--source/n/rp-pppoe/slack-desc6
8 files changed, 350 insertions, 9 deletions
diff --git a/source/n/rp-pppoe/rp-pppoe-3.12-bz1469960-new-kernel-header.patch b/source/n/rp-pppoe/rp-pppoe-3.12-bz1469960-new-kernel-header.patch
new file mode 100644
index 000000000..2b26edac7
--- /dev/null
+++ b/source/n/rp-pppoe/rp-pppoe-3.12-bz1469960-new-kernel-header.patch
@@ -0,0 +1,100 @@
+diff -up rp-pppoe-3.12/src/if.c.than rp-pppoe-3.12/src/if.c
+--- rp-pppoe-3.12/src/if.c.than 2017-07-25 11:04:53.780466912 +0200
++++ rp-pppoe-3.12/src/if.c 2017-07-25 11:05:35.951885962 +0200
+@@ -20,6 +20,12 @@ static char const RCSID[] =
+
+ #include "pppoe.h"
+
++#if defined(HAVE_LINUX_IF_H)
++#include <linux/if.h>
++#elif defined(HAVE_NET_IF_H)
++#include <net/if.h>
++#endif
++
+ #ifdef HAVE_UNISTD_H
+ #include <unistd.h>
+ #endif
+diff -up rp-pppoe-3.12/src/plugin.c.than rp-pppoe-3.12/src/plugin.c
+--- rp-pppoe-3.12/src/plugin.c.than 2017-07-25 11:05:50.145353868 +0200
++++ rp-pppoe-3.12/src/plugin.c 2017-07-25 11:07:00.068732535 +0200
+@@ -49,6 +49,11 @@ static char const RCSID[] =
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <signal.h>
++#if defined(HAVE_LINUX_IF_H)
++#include <linux/if.h>
++#elif defined(HAVE_NET_IF_H)
++#include <net/if.h>
++#endif
+ #include <net/ethernet.h>
+ #include <net/if_arp.h>
+ #include <linux/ppp_defs.h>
+diff -up rp-pppoe-3.12/src/pppoe.h.than rp-pppoe-3.12/src/pppoe.h
+--- rp-pppoe-3.12/src/pppoe.h.than 2017-07-25 11:07:38.141305245 +0200
++++ rp-pppoe-3.12/src/pppoe.h 2017-07-25 11:08:34.409195838 +0200
+@@ -51,13 +51,6 @@ extern int IsSetID;
+ #include <sys/socket.h>
+ #endif
+
+-/* Ugly header files on some Linux boxes... */
+-#if defined(HAVE_LINUX_IF_H)
+-#include <linux/if.h>
+-#elif defined(HAVE_NET_IF_H)
+-#include <net/if.h>
+-#endif
+-
+ #ifdef HAVE_NET_IF_TYPES_H
+ #include <net/if_types.h>
+ #endif
+@@ -136,9 +129,6 @@ typedef unsigned long UINT32_t;
+ #ifdef HAVE_NETINET_IF_ETHER_H
+ #include <sys/types.h>
+
+-#ifdef HAVE_SYS_SOCKET_H
+-#include <sys/socket.h>
+-#endif
+ #ifndef HAVE_SYS_DLPI_H
+ #include <netinet/if_ether.h>
+ #endif
+diff -up rp-pppoe-3.12/src/pppoe-server.c.than rp-pppoe-3.12/src/pppoe-server.c
+--- rp-pppoe-3.12/src/pppoe-server.c.than 2017-07-25 11:08:51.505554918 +0200
++++ rp-pppoe-3.12/src/pppoe-server.c 2017-07-25 11:09:59.230016098 +0200
+@@ -26,6 +26,13 @@ static char const RCSID[] =
+
+ #define _BSD_SOURCE 1 /* for gethostname */
+
++#include <sys/socket.h>
++#if defined(HAVE_LINUX_IF_H)
++#include <linux/if.h>
++#elif defined(HAVE_NET_IF_H)
++#include <net/if.h>
++#endif
++
+ #include "pppoe-server.h"
+ #include "md5.h"
+
+diff -up rp-pppoe-3.12/src/relay.c.than rp-pppoe-3.12/src/relay.c
+--- rp-pppoe-3.12/src/relay.c.than 2017-07-25 11:10:13.863467871 +0200
++++ rp-pppoe-3.12/src/relay.c 2017-07-25 11:11:17.747074537 +0200
+@@ -18,11 +18,19 @@ static char const RCSID[] =
+ "$Id$";
+
+ #define _GNU_SOURCE 1 /* For SA_RESTART */
+-
+-#include "relay.h"
++#include "config.h"
+
+ #include <signal.h>
+
++#include <sys/socket.h>
++#if defined(HAVE_LINUX_IF_H)
++#include <linux/if.h>
++#elif defined(HAVE_NET_IF_H)
++#include <net/if.h>
++#endif
++
++#include "relay.h"
++
+ #ifdef HAVE_SYSLOG_H
+ #include <syslog.h>
+ #endif
diff --git a/source/n/rp-pppoe/rp-pppoe-3.12-doc.patch b/source/n/rp-pppoe/rp-pppoe-3.12-doc.patch
new file mode 100644
index 000000000..e6e1b117d
--- /dev/null
+++ b/source/n/rp-pppoe/rp-pppoe-3.12-doc.patch
@@ -0,0 +1,18 @@
+diff -up rp-pppoe-3.12/src/Makefile.in.than rp-pppoe-3.12/src/Makefile.in
+--- rp-pppoe-3.12/src/Makefile.in.than 2015-11-16 17:25:40.566618656 +0100
++++ rp-pppoe-3.12/src/Makefile.in 2015-11-16 17:25:57.749517019 +0100
+@@ -165,14 +165,6 @@ install: all
+ $(install) -m 755 ../scripts/pppoe-status $(DESTDIR)$(sbindir)
+ $(install) -m 755 ../scripts/pppoe-stop $(DESTDIR)$(sbindir)
+ $(install) -m 755 ../scripts/pppoe-setup $(DESTDIR)$(sbindir)
+- -mkdir -p $(DESTDIR)$(docdir)
+- $(install) -m 644 ../doc/CHANGES $(DESTDIR)$(docdir)
+- $(install) -m 644 ../doc/KERNEL-MODE-PPPOE $(DESTDIR)$(docdir)
+- $(install) -m 644 ../doc/HOW-TO-CONNECT $(DESTDIR)$(docdir)
+- $(install) -m 644 ../doc/LICENSE $(DESTDIR)$(docdir)
+- $(install) -m 644 ../README $(DESTDIR)$(docdir)
+- $(install) -m 644 ../SERVPOET $(DESTDIR)$(docdir)
+- $(install) -m 644 ../configs/pap-secrets $(DESTDIR)$(docdir)
+ -mkdir -p $(DESTDIR)$(mandir)/man8
+ for i in $(TARGETS) ; do \
+ if test -f ../man/$$i.8 ; then \
diff --git a/source/n/rp-pppoe/rp-pppoe-3.12-ip-allocation.patch b/source/n/rp-pppoe/rp-pppoe-3.12-ip-allocation.patch
new file mode 100644
index 000000000..512913745
--- /dev/null
+++ b/source/n/rp-pppoe/rp-pppoe-3.12-ip-allocation.patch
@@ -0,0 +1,111 @@
+diff -up rp-pppoe-3.12/man/pppoe-server.8.ip-allocation rp-pppoe-3.12/man/pppoe-server.8
+--- rp-pppoe-3.12/man/pppoe-server.8.ip-allocation 2015-11-11 16:10:01.000000000 +0100
++++ rp-pppoe-3.12/man/pppoe-server.8 2015-11-16 16:48:52.457927211 +0100
+@@ -96,6 +96,11 @@ valid remote IP address to \fBpppd\fR.
+ of 10.67.15.1 is used.
+
+ .TP
++.B \-D
++Delegate the allocation of IP addresses to \fBpppd\fR. If specified, no
++local and remote addresses passed to pppd.
++
++.TP
+ .B \-N \fInum\fR
+ Allows at most \fInum\fR concurrent PPPoE sessions. If not specified,
+ the default is 64.
+diff -up rp-pppoe-3.12/src/pppoe-server.c.ip-allocation rp-pppoe-3.12/src/pppoe-server.c
+--- rp-pppoe-3.12/src/pppoe-server.c.ip-allocation 2015-11-11 16:10:04.000000000 +0100
++++ rp-pppoe-3.12/src/pppoe-server.c 2015-11-16 16:50:53.209195100 +0100
+@@ -176,6 +176,9 @@ char PppoeOptions[SMALLBUF] = "";
+ unsigned char LocalIP[IPV4ALEN] = {10, 0, 0, 1}; /* Counter optionally STARTS here */
+ unsigned char RemoteIP[IPV4ALEN] = {10, 67, 15, 1}; /* Counter STARTS here */
+
++/* Delegates the allocation of IP addresses to pppd (as the pptpd doing) */
++int DelegateIPAllocation = 0;
++
+ /* Do we increment local IP for each connection? */
+ int IncrLocalIP = 0;
+
+@@ -241,8 +244,8 @@ childHandler(pid_t pid, int status, void
+
+ memset(&conn, 0, sizeof(conn));
+ conn.hostUniq = NULL;
+-
+- syslog(LOG_INFO,
++ if (!DelegateIPAllocation) {
++ syslog(LOG_INFO,
+ "Session %u closed for client "
+ "%02x:%02x:%02x:%02x:%02x:%02x (%d.%d.%d.%d) on %s",
+ (unsigned int) ntohs(session->sess),
+@@ -251,6 +254,15 @@ childHandler(pid_t pid, int status, void
+ (int) session->realpeerip[0], (int) session->realpeerip[1],
+ (int) session->realpeerip[2], (int) session->realpeerip[3],
+ session->ethif->name);
++ } else {
++ syslog(LOG_INFO,
++ "Session %u closed for client "
++ "%02x:%02x:%02x:%02x:%02x:%02x on %s",
++ (unsigned int) ntohs(session->sess),
++ session->eth[0], session->eth[1], session->eth[2],
++ session->eth[3], session->eth[4], session->eth[5],
++ session->ethif->name);
++ }
+ memcpy(conn.myEth, session->ethif->mac, ETH_ALEN);
+ conn.discoverySocket = session->ethif->sock;
+ conn.session = session->sess;
+@@ -1134,6 +1146,7 @@ usage(char const *argv0)
+ fprintf(stderr, " -L ip -- Set local IP address.\n");
+ fprintf(stderr, " -l -- Increment local IP address for each session.\n");
+ fprintf(stderr, " -R ip -- Set start address of remote IP pool.\n");
++ fprintf(stderr, " -D -- Delegates the allocation of IP addresses to pppd.\n");
+ fprintf(stderr, " -S name -- Advertise specified service-name.\n");
+ fprintf(stderr, " -O fname -- Use PPPD options from specified file\n");
+ fprintf(stderr, " (default %s).\n", PPPOE_SERVER_OPTIONS);
+@@ -1200,9 +1213,9 @@ main(int argc, char **argv)
+ #endif
+
+ #ifndef HAVE_LINUX_KERNEL_PPPOE
+- char *options = "X:ix:hI:C:L:R:T:m:FN:f:O:o:sp:lrudPc:S:1q:Q:";
++ char *options = "X:ix:hI:C:L:R:DT:m:FN:f:O:o:sp:lrudPc:S:1q:Q:";
+ #else
+- char *options = "X:ix:hI:C:L:R:T:m:FN:f:O:o:skp:lrudPc:S:1q:Q:";
++ char *options = "X:ix:hI:C:L:R:DT:m:FN:f:O:o:skp:lrudPc:S:1q:Q:";
+ #endif
+
+ if (getuid() != geteuid() ||
+@@ -1401,6 +1414,10 @@ main(int argc, char **argv)
+ }
+ break;
+
++ case 'D':
++ DelegateIPAllocation = 1;
++ break;
++
+ case 'T':
+ case 'm':
+ /* These just get passed to pppoe */
+@@ -1915,6 +1932,7 @@ startPPPDUserMode(ClientSession *session
+ argv[c++] = "file";
+ argv[c++] = pppoptfile;
+
++ if (!DelegateIPAllocation) {
+ snprintf(buffer, SMALLBUF, "%d.%d.%d.%d:%d.%d.%d.%d",
+ (int) session->myip[0], (int) session->myip[1],
+ (int) session->myip[2], (int) session->myip[3],
+@@ -1930,6 +1948,16 @@ startPPPDUserMode(ClientSession *session
+ session->ethif->name,
+ session->serviceName);
+ argv[c++] = strdup(buffer);
++ } else {
++ syslog(LOG_INFO,
++ "Session %u created for client %02x:%02x:%02x:%02x:%02x:%02x on %s using Service-Name '%s'",
++ (unsigned int) ntohs(session->sess),
++ session->eth[0], session->eth[1], session->eth[2],
++ session->eth[3], session->eth[4], session->eth[5],
++ session->ethif->name,
++ session->serviceName);
++ }
++
+ if (!argv[c-1]) {
+ /* TODO: Send a PADT */
+ exit(EXIT_FAILURE);
diff --git a/source/n/rp-pppoe/rp-pppoe-3.12-plugin.patch b/source/n/rp-pppoe/rp-pppoe-3.12-plugin.patch
new file mode 100644
index 000000000..5b7671724
--- /dev/null
+++ b/source/n/rp-pppoe/rp-pppoe-3.12-plugin.patch
@@ -0,0 +1,12 @@
+diff -up rp-pppoe-3.12/src/configure.in.than rp-pppoe-3.12/src/configure.in
+--- rp-pppoe-3.12/src/configure.in.than 2015-12-11 16:19:38.700092797 +0100
++++ rp-pppoe-3.12/src/configure.in 2015-12-11 16:20:15.670875690 +0100
+@@ -26,6 +26,7 @@ AC_CHECK_HEADERS(linux/if_pppox.h, [], [
+ #include<net/ethernet.h>
+ #include<linux/if.h>
+ #include<linux/in.h>
++#include<linux/in6.h>
+ ])
+
+ dnl Checks for typedefs, structures, and compiler characteristics.
+diff -up rp-pppoe-3.12/src/configure.than rp-pppoe-3.12/src/configure
diff --git a/source/n/rp-pppoe/rp-pppoe-3.12-pluginpath.patch b/source/n/rp-pppoe/rp-pppoe-3.12-pluginpath.patch
new file mode 100644
index 000000000..c322b00a3
--- /dev/null
+++ b/source/n/rp-pppoe/rp-pppoe-3.12-pluginpath.patch
@@ -0,0 +1,12 @@
+diff -up rp-pppoe-3.12/src/pppoe-server.c.than rp-pppoe-3.12/src/pppoe-server.c
+--- rp-pppoe-3.12/src/pppoe-server.c.than 2015-12-17 11:17:30.257775608 +0100
++++ rp-pppoe-3.12/src/pppoe-server.c 2015-12-17 11:18:44.276951643 +0100
+@@ -2014,7 +2014,7 @@ startPPPDLinuxKernelMode(ClientSession *
+
+ argv[c++] = "pppd";
+ argv[c++] = "plugin";
+- argv[c++] = PLUGIN_PATH;
++ argv[c++] = "rp-pppoe.so";
+
+ /* Add "nic-" to interface name */
+ snprintf(buffer, SMALLBUF, "nic-%s", session->ethif->name);
diff --git a/source/n/rp-pppoe/rp-pppoe-manpages.patch b/source/n/rp-pppoe/rp-pppoe-manpages.patch
new file mode 100644
index 000000000..fd0f24009
--- /dev/null
+++ b/source/n/rp-pppoe/rp-pppoe-manpages.patch
@@ -0,0 +1,71 @@
+diff -up rp-pppoe-3.12/man/pppoe.8.than rp-pppoe-3.12/man/pppoe.8
+--- rp-pppoe-3.12/man/pppoe.8.than 2015-11-11 16:10:01.000000000 +0100
++++ rp-pppoe-3.12/man/pppoe.8 2016-06-03 17:24:49.649336285 +0200
+@@ -32,6 +32,10 @@ triggered. The best way to do this is t
+ PPPoE timeout to be about four times the LCP echo interval.
+
+ .TP
++.B \-t \fItimeout\fR
++The \fB\-t\fR option sets the initial timeout for discovery packets in seconds.
++
++.TP
+ .B \-D \fIfile_name\fR
+ The \fB\-D\fR option causes every packet to be dumped to the specified
+ \fIfile_name\fR. This is intended for debugging only; it produces huge
+@@ -147,6 +151,10 @@ the peer you are dealing with uses non-s
+ ISP uses non-standard frame types, complain!
+
+ .TP
++.B \-F numfloods
++The \fB\-F\fR option sets the discovery flood, only used for stress-testing.
++
++.TP
+ .B \-h
+ The \fB\-h\fR option causes \fBpppoe\fR to print usage information and
+ exit.
+diff -up rp-pppoe-3.12/man/pppoe-server.8.than rp-pppoe-3.12/man/pppoe-server.8
+--- rp-pppoe-3.12/man/pppoe-server.8.than 2016-06-03 17:24:49.641336586 +0200
++++ rp-pppoe-3.12/man/pppoe-server.8 2016-06-03 17:24:49.650336248 +0200
+@@ -77,12 +77,20 @@ PADI and PADR packets are ignored. If y
+ then no limit is imposed on the number of sessions per peer MAC address.
+
+ .TP
++.B \-P
++Check pool file for correctness and exit.
++
++.TP
+ .B \-s
+ This option is passed directly to \fBpppoe\fR; see \fBpppoe\fR(8) for
+ details. In addition, it causes \fBpppd\fR to be invoked with the
+ \fIsync\fR option.
+
+ .TP
++.B \-l
++Increment local IP address for each session.
++
++.TP
+ .B \-L \fIip\fR
+ Sets the local IP address. This is passed to spawned \fBpppd\fR processes.
+ If not specified, the default is 10.0.0.1.
+@@ -147,6 +155,10 @@ handing out sessions in order, the sessi
+ unpredictable order.
+
+ .TP
++.B \-d
++Debug session creation.
++
++.TP
+ .B \-u
+ Tells the server to invoke \fBpppd\fR with the \fIunit\fR option. Note
+ that this option only works for \fBpppd\fR version 2.4.0 or newer.
+diff -up rp-pppoe-3.12/src/pppoe.c.than rp-pppoe-3.12/src/pppoe.c
+--- rp-pppoe-3.12/src/pppoe.c.than 2016-06-03 17:24:49.650336248 +0200
++++ rp-pppoe-3.12/src/pppoe.c 2016-06-03 17:27:40.888903213 +0200
+@@ -380,6 +380,7 @@ usage(char const *argv0)
+ " -k -- Kill a session with PADT (requires -e)\n"
+ " -d -- Perform discovery, print session info and exit.\n"
+ " -f disc:sess -- Set Ethernet frame types (hex).\n"
++ " -F numfloods -- Set the discovery flood, only used for stress-testing.\n"
+ " -h -- Print usage information.\n\n"
+ "PPPoE Version %s, Copyright (C) 2001-2015 Roaring Penguin Software Inc.\n"
+ "PPPoE comes with ABSOLUTELY NO WARRANTY.\n"
diff --git a/source/n/rp-pppoe/rp-pppoe.SlackBuild b/source/n/rp-pppoe/rp-pppoe.SlackBuild
index 6549149b9..f392cbef3 100755
--- a/source/n/rp-pppoe/rp-pppoe.SlackBuild
+++ b/source/n/rp-pppoe/rp-pppoe.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012, 2015 Patrick J. Volkerding, Sebeka, MN, USA
+# Copyright 2008, 2009, 2010, 2012, 2015, 2018 Patrick J. Volkerding, Sebeka, MN, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,9 +20,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PKGNAM=rp-pppoe
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -34,6 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
if [ "$ARCH" = "i586" ]; then
@@ -46,7 +56,6 @@ else
SLKCFLAGS="-O2"
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-rp-pppoe
@@ -55,7 +64,7 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf rp-pppoe-$VERSION
tar xvf $CWD/rp-pppoe-$VERSION.tar.?z* || exit 1
-cd rp-pppoe-$VERSION/src || exit 1
+cd rp-pppoe-$VERSION || exit 1
chown -R root:root .
find . \
\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
@@ -63,12 +72,20 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+zcat $CWD/rp-pppoe-3.12-ip-allocation.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/rp-pppoe-3.12-plugin.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/rp-pppoe-3.12-pluginpath.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/rp-pppoe-manpages.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/rp-pppoe-3.12-bz1469960-new-kernel-header.patch.gz | patch -p1 --verbose || exit 1
+
+cd src
+
CFLAGS="$SLKCFLAGS" \
./configure \
--enable-plugin=/ppp-2.4.4 \
--prefix=/usr \
--mandir=/usr/man \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install docdir=/usr/doc/rp-pppoe-$VERSION DESTDIR=$PKG install || exit 1
diff --git a/source/n/rp-pppoe/slack-desc b/source/n/rp-pppoe/slack-desc
index 8aed9d0c4..4ae51c3fc 100644
--- a/source/n/rp-pppoe/slack-desc
+++ b/source/n/rp-pppoe/slack-desc
@@ -1,8 +1,8 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
-# the right side marks the last column you can put a character in. You must make
-# exactly 11 lines for the formatting to be correct. It's also customary to
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|