-Installation instructions for installing ppp-2.2 on FreeBSD and
+Installation instructions for installing ppp-2.2.1 on FreeBSD and
NetBSD systems.
-This package supports NetBSD-1.0 and FreeBSD-2.0. It should work
-on later systems (it works on NetBSD-current as of this writing).
-Modloading is not yet supported.
-
-I have code which should work on earlier systems (386BSD, NetBSD-0.9,
-FreeBSD-1.1.5.1, etc.), but it is not included in this package because
-I have no way to test or support it. If you are committed to one of
-these earlier versions and you are willing to try out some code
-without needing major hand-holding, contact me (paulus@cs.anu.edu.au).
+This package supports NetBSD-1.1, NetBSD-1.0, FreeBSD-2.0, and
+FreeBSD-1.1.5.1. It should work on later systems. Modloading is not
+yet supported.
To install PPP, you need to rebuild your kernel to include the latest
version of the PPP driver, as well as compiling and installing the
before you can run them, of course).
The following commands should compile and install the user-level
-applications (in the ppp-2.2 directory):
+applications (in the ppp-2.2.1 directory):
./configure
make
make install (you need to be root for this)
The process of updating the kernel source files is now largely
-automated. In the ppp-2.2 directory, issue the command:
+automated. In the ppp-2.2.1 directory, issue the command:
make kernel
instructions about modifying your kernel configuration file (if
necessary), rebuilding the kernel and rebooting.
-If you want to do the process by hand, read on...
+If you want to do the process by hand, read the next section.
Updating the kernel ppp code.
------------------------------
+*****************************
You need to update several files in the /sys/net directory, and patch
-some other files under /sys.
+some other files under /sys. The details depend on which operating
+system you're running.
+
+NetBSD-1.1.
+===========
+
+Copy the following files to /sys/net:
+
+ net/ppp-comp.h
+ netbsd-1.1/if_ppp.c
+ netbsd-1.1/ppp_tty.c
+
-For NetBSD-1.0, copy the following files to /sys/net:
+NetBSD-1.0.
+===========
+
+Copy the following files to /sys/net:
net/if_ppp.h
net/ppp-comp.h
net/ppp_defs.h
- netbsd/bsd-comp.c
- netbsd/if_ppp.c
- netbsd/if_pppvar.h
- netbsd/netisr.h
- netbsd/ppp_tty.c
- netbsd/slcompress.c
- netbsd/slcompress.h
+ netbsd-1.0/bsd-comp.c
+ netbsd-1.0/if_ppp.c
+ netbsd-1.0/if_pppvar.h
+ netbsd-1.0/netisr.h
+ netbsd-1.0/ppp_tty.c
+ netbsd-1.0/slcompress.c
+ netbsd-1.0/slcompress.h
You then need to patch /sys/conf/files and /sys/conf/files.newconf
using the commands:
- patch -p -N -d /sys/conf <netbsd/files.patch
- patch -p -N -d /sys/conf <netbsd/files.newconf.patch
+ patch -p -N -d /sys/conf <netbsd-1.0/files.patch
+ patch -p -N -d /sys/conf <netbsd-1.0/files.newconf.patch
The next step is to patch the file containing the code which
dispatches software interrupts. Unfortunately, this code is in the
architecture-dependent files, so the file to patch depends on which
NetBSD port you are using:
-Port File to patch Patch file
----- ------------- ----------
-amiga /sys/arch/amiga/amiga/machdep.c netbsd/arch/amiga/machdep.c.patch
-hp300 /sys/arch/hp300/hp300/machdep.c netbsd/arch/hp300/machdep.c.patch
-i386 /sys/arch/i386/isa/icu.s netbsd/arch/i386/icu.s.patch
-mac68k /sys/arch/mac68k/mac68k/machdep.c netbsd/arch/mac68k/machdep.c.patch
-pc532 /sys/arch/pc532/pc532/locore.s netbsd/arch/pc532/locore.s.patch
-pmax /sys/arch/pmax/pmax/trap.c netbsd/arch/pmax/trap.c.patch
-sparc /sys/arch/sparc/sparc/intr.c netbsd/arch/sparc/intr.c.patch
-sun3 /sys/arch/sun3/sun3/isr.c netbsd/arch/sun3/isr.c.patch
+Port File to patch Patch file is netbsd-1.0/arch/
+---- ------------- ------------------------------
+amiga /sys/arch/amiga/amiga/machdep.c amiga/machdep.c.patch
+hp300 /sys/arch/hp300/hp300/machdep.c hp300/machdep.c.patch
+i386 /sys/arch/i386/isa/icu.s i386/icu.s.patch
+mac68k /sys/arch/mac68k/mac68k/machdep.c mac68k/machdep.c.patch
+pc532 /sys/arch/pc532/pc532/locore.s pc532/locore.s.patch
+pmax /sys/arch/pmax/pmax/trap.c pmax/trap.c.patch
+sparc /sys/arch/sparc/sparc/intr.c sparc/intr.c.patch
+sun3 /sys/arch/sun3/sun3/isr.c sun3/isr.c.patch
To do the patch, you would use a command something like this:
- patch -p -d /sys/arch/i386/isa <netbsd/arch/i386/icu.s.patch
+ patch -p -d /sys/arch/i386/isa <netbsd-1.0/arch/i386/icu.s.patch
+
+FreeBSD-2.0.
+============
-For FreeBSD-2.0, copy the following files to /sys/net:
+Copy the following files to /sys/net:
net/if_ppp.h
net/ppp-comp.h
patch -p -N -d /sys/conf <freebsd-2.0/files.patch
+FreeBSD-1.1.5.1.
+================
+
+Copy the following files to /sys/net:
+
+ net/if_ppp.h
+ net/ppp-comp.h
+ net/ppp_defs.h
+ freebsd-old/bsd-comp.c
+ freebsd-old/if_ppp.c
+ freebsd-old/if_pppvar.h
+ freebsd-old/ppp_tty.c
+ freebsd-old/slcompress.c
+ freebsd-old/slcompress.h
+
+You then need to patch /sys/conf/files using the command:
+
+ patch -p -N -d /sys/conf <freebsd-old/files.patch
+
+Then patch /sys/net/netisr.h with the command:
+
+ patch -p -N -d /sys/net <freebsd-old/netisr.h.patch
+
+The next step is to patch the file containing the code which
+dispatches software interrupts with the following command:
+
+ patch -p -N -d /sys/i386/isa <freebsd-old/icu.s.patch
+
+
Configuring and making the new kernel.
---------------------------------------
+**************************************
First, make sure that the configuration file you are using includes a
line something like