]> git.ozlabs.org Git - ppp.git/blobdiff - README.linux
MP-related code should be wrapped within HAVE_MULTILINK pre-processor
[ppp.git] / README.linux
index c43c3e7e0776b658d48ba4c6f563da4bc69c6492..5a20711dcb268de8d81a12ff312ef40c7625521f 100644 (file)
@@ -1,12 +1,11 @@
-PPP for Linux                                             Version 2.3.6
+PPP for Linux                                             Version 2.4.0
 =============                                                  based on
-                                                              ppp-2.3.6
-                                                          February 1999
+                                                              ppp-2.4.0
+                                                             April 2000
 
-Michael Callahan    callahan@maths.ox.ac.uk
-Al Longyear         longyear@netcom.com
 Paul Mackerras      Paul.Mackerras@cs.anu.edu.au
-Nick Walker         nickwalker@email.com
+Al Longyear         longyear@netcom.com
+Michael Callahan    callahan@maths.ox.ac.uk
 
   Contents:
     INTRODUCTION
@@ -84,15 +83,56 @@ Paul Mackerras rewrote and restructured the code for improved
 performance and to make a cleaner separation between the
 network-interface and async TTY parts of the ppp driver.
 
+Nick Walker added the code to pppd to query the peer for DNS server
+addresses.
+
+
+USING THE NEW PPP KERNEL DRIVER
+
+As of kernel version 2.3.13, the development series of kernels contain
+a new kernel PPP driver, rewritten from scratch by Paul Mackerras.
+This package supports the new driver, although it doesn't include the
+source for the new driver.
+
+The new driver is divided into two files: ppp_generic.c and
+ppp_async.c.  If you compile PPP as a module, you will get two
+separate modules, called ppp_generic and ppp_async.
+Another module ppp_synctty is used for synchronous tty devices
+such as high-speed WAN adapters for leased T1/E1 lines.
+
+To talk to the new driver, pppd needs to be able to open /dev/ppp,
+character device (108,0).  If you are using devfs, the device
+filesystem, the /dev/ppp node will automagically appear when the
+ppp_generic module is loaded, or at startup if ppp_generic is compiled
+in.
+
+If you have ppp_generic as a module, and you are using devfsd (the
+devfs daemon), you will need to add a line like this to your
+/etc/devfsd.conf:
+
+LOOKUP         ppp             MODLOAD
+
+Otherwise you will need to create a /dev/ppp device node with the
+commands:
+
+# mknod /dev/ppp c 108 0
+# chmod 600 /dev/ppp
+
+If you use module autoloading and have PPP as a module, you will need
+to add the following to your /etc/modules.conf or /etc/conf.modules:
+
+/dev/ppp            ppp_generic
+alias char-major-108 ppp_generic
+alias tty-ldisc-3    ppp_async
+alias tty-ldisc-14   ppp_synctty
 
-Nick Walker added the code to query the peer for DNS server addresses.
 
 INSTALLATION
 
 This version of PPP has been tested on various Linux kernel versions
-(most recently 2.0.36 and 2.2.1). It will not work on kernels before
-2.0.0. If you have an earlier kernel, please upgrade to the latest 2.0
-or 2.2 kernel.
+(most recently 2.2.14). It will not work on kernels before 2.2.0. If
+you have an earlier kernel, please upgrade to the latest 2.2-series
+kernel.
 
 joining the PPP channel of linux-activists:
 
@@ -165,22 +205,33 @@ set of symbolic links to the makefiles. They should link 'Makefile' to
 
 2. Update the kernel sources.
 
-If you are using a 2.2.x kernel (or a recent 2.1.x kernel), you do not
-need to do this step.  If your kernel is already configured for PPP,
-then you only need to do steps 5 and 6.  Otherwise, continue at step 3.
-
-If you are using a 2.0.x kernel, you need to update the kernel ppp
-driver to the version in this package.  You will need a copy of the
-kernel source tree to do this.  Issue the command:
+The 2.2.8 and later kernels contains the same PPP kernel driver as is
+in this release.  In fact the driver in the kernel sources is slightly
+different from the one in this package as it doesn't include the stuff
+which enables the driver in this package to compile in either the 2.0
+or 2.2 kernel environment, but the two are functionally equivalent.
+If you are using a 2.2.8 or later kernel and your kernel is already
+configured for PPP, then you only need to do steps 5 and 6.
+Otherwise, continue at step 3.
+
+If you are using a 2.3 series kernel, use the kernel driver that is in
+the kernel sources.  For 2.3.13 and later, this is the new driver (see
+above).
+
+If you are using a kernel earlier than 2.2.8, you can either use the
+driver in this package or upgrade your kernel to the current 2.2.x
+series kernel (2.2.13, as of the release of ppp-2.3.11).  If you choose
+to use the driver in this package, you will need a copy of the kernel
+source tree to compile the driver.  Issue the command:
 
 make kernel
 
 from the top level directory. This will install the various include
-files and source files into the proper directory for the linux
-kernel. If you don't have the kernel installed in the /usr/src/kernel
-directory then it will not work. Instead it will print a message to
-the effect that you need to specify the kernel location on the
-kinstall command.
+files and source files into the proper directories in the linux kernel
+source tree. If you don't have the kernel installed in the default
+/usr/src/kernel directory then it will not work. Instead it will print
+a message to the effect that you need to specify the kernel location
+on the kinstall command.
 
 The actual message will say:
 
@@ -322,7 +373,7 @@ be loaded. BOTH systems must support the same compression protocols.
 
 PROBLEMS WHICH MAY OCCUR WHILE BUILDING THE KERNEL
 
-At this time there should not be a problem with the complication of the
+At this time there should not be a problem with the compilation of the
 drivers.