RP-PPPoE now supports kernel-mode PPPoE on Linux kernels 2.4.x.  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.x 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) Download Michal Ostrowski's patched version of pppd which supports
a PPPoE plugin.  The latest version as of this writing is
at http://www.shoshin.uwaterloo.ca/~mostrows/ in
http://www.shoshin.uwaterloo.ca/~mostrows/ppp-2.4.1-pppoe2.tgz.  It is
also mirrored at http://www.roaringpenguin.com/pppoe/

2) Unpack that version of pppd and build and install it.

3) In the SAME DIRECTORY in which you unpacked Michal's patched pppd, unpack
   rp-pppoe.  That is, you should see the directories:

	ppp-2.4.1.pppoe2
	rp-pppoe-X.y

   in the same directory.
	
3) In the rp-pppoe directory, change to src/ and type:

	./configure --enable-plugin

If you didn't unpack ppp-2.4.1.pppoe2 where I suggested, then use:

	./configure --enable-plugin=/path/to/ppp-tree

Here, /path/to/ppp-tree is where you unpacked the pppd software.  It
should be the directory named ppp-2.4.2.pppoe2

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, adsl-start should use kernel-mode PPPoE.

This code is experimental and unsupported.  Use at your own risk.

--
David F. Skoll <dfs@roaringpenguin.com>

