summaryrefslogtreecommitdiff
Diffstat
-rwxr-xr-xAndroid.mk39
-rw-r--r--README90
-rwxr-xr-xSERVPOET18
-rwxr-xr-xconfigs/firewall-masq71
-rwxr-xr-xconfigs/firewall-standalone34
-rwxr-xr-xconfigs/pap-secrets10
-rwxr-xr-xconfigs/pppoe-server-options6
-rwxr-xr-xconfigs/pppoe.conf140
-rwxr-xr-xdoc/CHANGES339
-rwxr-xr-xdoc/HOW-TO-CONNECT268
-rwxr-xr-xdoc/KERNEL-MODE-PPPOE98
-rwxr-xr-xdoc/LICENSE341
-rwxr-xr-xdoc/PROBLEMS5
-rwxr-xr-xman/pppoe-connect.866
-rwxr-xr-xman/pppoe-relay.8124
-rwxr-xr-xman/pppoe-server.8184
-rwxr-xr-xman/pppoe-setup.823
-rwxr-xr-xman/pppoe-sniff.877
-rwxr-xr-xman/pppoe-start.827
-rwxr-xr-xman/pppoe-status.825
-rwxr-xr-xman/pppoe-stop.821
-rwxr-xr-xman/pppoe.8236
-rwxr-xr-xman/pppoe.conf.5167
-rw-r--r--pstart3
-rw-r--r--pstop21
-rwxr-xr-xscripts/pppoe-connect319
-rwxr-xr-xscripts/pppoe-connect.in319
-rwxr-xr-xscripts/pppoe-init66
-rwxr-xr-xscripts/pppoe-init-suse64
-rwxr-xr-xscripts/pppoe-init-suse.in64
-rwxr-xr-xscripts/pppoe-init-turbolinux64
-rwxr-xr-xscripts/pppoe-init-turbolinux.in64
-rwxr-xr-xscripts/pppoe-init.in66
-rwxr-xr-xscripts/pppoe-setup352
-rwxr-xr-xscripts/pppoe-setup.in352
-rwxr-xr-xscripts/pppoe-start196
-rwxr-xr-xscripts/pppoe-start.in196
-rwxr-xr-xscripts/pppoe-status84
-rwxr-xr-xscripts/pppoe-stop96
-rwxr-xr-xscripts/pppoe-stop.in96
-rwxr-xr-xsrc/common.c651
-rwxr-xr-xsrc/config.h146
-rwxr-xr-xsrc/debug.c152
-rwxr-xr-xsrc/discovery.c736
-rwxr-xr-xsrc/if.c352
-rwxr-xr-xsrc/libevent/Makefile42
-rwxr-xr-xsrc/libevent/Makefile.in42
-rwxr-xr-xsrc/libevent/event.c645
-rwxr-xr-xsrc/libevent/event.h114
-rwxr-xr-xsrc/libevent/event_sig.c265
-rwxr-xr-xsrc/libevent/event_tcp.c577
-rwxr-xr-xsrc/libevent/event_tcp.h87
-rwxr-xr-xsrc/libevent/eventpriv.h46
-rwxr-xr-xsrc/libevent/hash.c266
-rwxr-xr-xsrc/libevent/hash.h54
-rwxr-xr-xsrc/md5.c249
-rwxr-xr-xsrc/md5.h34
-rwxr-xr-xsrc/plugin.c469
-rwxr-xr-xsrc/ppp.c262
-rwxr-xr-xsrc/pppoe-server.c2137
-rwxr-xr-xsrc/pppoe-server.h156
-rwxr-xr-xsrc/pppoe-sniff.c266
-rwxr-xr-xsrc/pppoe.c959
-rwxr-xr-xsrc/pppoe.h347
-rwxr-xr-xsrc/relay.c1559
-rwxr-xr-xsrc/relay.h99
66 files changed, 15542 insertions, 1 deletions
diff --git a/doc/KERNEL-MODE-PPPOE b/doc/KERNEL-MODE-PPPOE
new file mode 100755
index 0000000..03e6d2a
--- a/dev/null
+++ b/doc/KERNEL-MODE-PPPOE
@@ -0,0 +1,98 @@
+# LIC: GPL
+
+RP-PPPoE now supports kernel-mode PPPoE on Linux kernels 2.4 or newer.
+However, the default "./go" build procedure does not make kernel-mode
+support.
+
+Here's what you need to do:
+
+0) Make sure you are running kernel 2.4 or newer on the machine you
+will build rp-pppoe on. You must have the following kernel
+configuration settings:
+
+ CONFIG_PPP=m or CONFIG_PPP=y
+ CONFIG_PPP_ASYNC=m or CONFIG_PPP_ASYNC=y
+ CONFIG_PPP_SYNC_TTY=m or CONFIG_PPP_SYNC_TTY=y
+ CONFIG_PPP_DEFLATE=m or CONFIG_PPP_DEFLATE=y
+ CONFIG_PPP_BSDCOMP=m or CONFIG_PPP_BSDCOMP=y
+ CONFIG_PPPOE=m or CONFIG_PPPOE=y
+ CONFIG_N_HDLC=m or CONFIG_N_HDLC=y
+ CONFIG_UNIX98_PTYS=y
+
+You also need a /dev/ppp file:
+
+ mknod --mode=664 /dev/ppp c 108 0
+
+You might want to add these lines to /etc/modules.conf:
+
+ alias char-major-108 ppp_generic
+ alias tty-ldisc-3 ppp_async
+ alias tty-ldisc-13 n_hdlc
+ alias tty-ldisc-14 ppp_synctty
+ alias net-pf-24 pppoe
+
+1) If you are running pppd older than 2.4.0, check out the latest
+version of the PPP software from the CVS repository at cvs.samba.org.
+Here's how to do this:
+
+ cvs -d :pserver:cvs@pserver.samba.org:/cvsroot login
+ # When prompted for a password, type "cvs"
+
+ # Change to the directory in which you want to store the PPP source
+ # code.
+ cd /path/to/checked/out/sources
+
+ # Check out the source
+ cvs -z5 -d :pserver:cvs@pserver.samba.org:/cvsroot co ppp
+
+If you are running pppd 2.4.0 or newer, and have the pppd development
+headers installed, you can skip steps 1 and 2.
+
+2) The source gets checked out into a subdirectory called ppp. If
+the source ends up in /path/to/checked/out/sources/ppp, then call
+that path $PPPDIR.
+
+Build and install the checked-out ppp code according to its instructions.
+
+3) Unpack rp-pppoe.
+
+4) In the rp-pppoe directory, change to src/ and type:
+
+ ./configure --enable-plugin=$PPPDIR
+
+where $PPPDIR, of course, refers to the checked-out "ppp" directory
+from cvs.samba.org.
+
+If you didn't check out the PPP software from cvs.samba.org, use:
+
+ ./configure --enable-plugin
+
+This will work if the header pppd/pppd.h is located in /usr/include
+or /usr/local/include.
+
+4) Type make; make install
+
+5) Edit /etc/ppp/pppoe.conf to include this line:
+
+ LINUX_PLUGIN=/etc/ppp/plugins/rp-pppoe.so
+
+After that, pppoe-start should use kernel-mode PPPoE.
+
+The rp-pppoe.so plugin adds the following command-line options to pppd:
+
+ethXXX -- Use interface ethXXX as Ethernet interface
+brXXX -- Use interface brXXX as Ethernet interface
+nic-XXXX -- Use interface XXXX as the Ethernet interface
+
+rp_pppoe_service SERVICE_NAME -- Specify desired service name
+rp_pppoe_ac NAME -- Specify desired access concentrator name
+rp_pppoe_verbose 0|1 -- Print names of access concentrators
+
+rp_pppoe_sess nnnn:aa:bb:cc:dd:ee:ff -- Attach to existing session 'nnnn'
+ on AC with Ethernet address aa:bb:cc:dd:ee:ff
+ This skips the discovery phase.
+
+
+--
+David F. Skoll <dfs@roaringpenguin.com>
+