Installation instructions for installing ppp-2.3 on FreeBSD and NetBSD systems. This package supports NetBSD-current, NetBSD-1.2, NetBSD-1.1, FreeBSD-2.1, and FreeBSD-2.0. Modloading is not supported. I have code which may work on earlier systems; contact me if you need it. 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 user-level applications: pppd, pppstats and chat. The user-level applications can be compiled and installed either before or after you reboot with the new kernel (you'll have to reboot with the new kernel before you can run them, of course). The following commands should compile and install the user-level applications (in the ppp-2.3 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.3 directory, issue the command: make kernel (you probably need to be root for this). This will copy new versions of several files into /sys, patch other files, and finally give you instructions about modifying your kernel configuration file (if necessary), rebuilding the kernel and rebooting. 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. The details depend on which operating system you're running. NetBSD. ======= Copy the following files to /sys/net: net/if_ppp.h net/ppp-comp.h net/ppp_defs.h netbsd-1.1/bsd-comp.c netbsd-1.1/if_ppp.c netbsd-1.1/if_pppvar.h netbsd-1.1/ppp-deflate.c netbsd-1.1/ppp_tty.c netbsd-1.1/slcompress.c netbsd-1.1/slcompress.h common/zlib.c common/zlib.h You may need to edit /sys/conf/files to make sure it contains entries for if_ppp.c, ppp_tty.c, bsd-comp.c, ppp-deflate.c and zlib.c. Depending on whether your port uses the old-style or new-style config files, these entries will look like this (new-style): file net/if_ppp.c ppp needs-count file net/ppp_tty.c ppp file net/bsd-comp.c ppp file net/ppp-deflate.c ppp file net/zlib.c ppp or this (old-style): net/if_ppp.c optional ppp device-driver net/ppp_tty.c optional ppp net/bsd-comp.c optional ppp net/ppp-deflate.c optional ppp net/zlib.c optional ppp If you use config.old or config.new, you will need to edit /sys/conf/files.oldconf or /sys/conf/files.newconf respectively. FreeBSD. ======== Copy the following files to /sys/net: net/if_ppp.h net/ppp-comp.h net/ppp_defs.h freebsd-2.0/bsd-comp.c freebsd-2.0/if_ppp.c freebsd-2.0/if_pppvar.h freebsd-2.0/ppp-deflate.c freebsd-2.0/ppp_tty.c freebsd-2.0/pppcompress.c freebsd-2.0/pppcompress.h common/zlib.c common/zlib.h You then need to edit /sys/conf/files to make sure it contains entries for if_ppp.c, ppp_tty.c, bsd-comp.c, ppp-deflate.c and zlib.c. These entries should look like this: net/if_ppp.c optional ppp device-driver net/ppp_tty.c optional ppp net/bsd-comp.c optional ppp net/ppp-deflate.c optional ppp net/zlib.c optional ppp Configuring and making the new kernel. ************************************** First, make sure that the configuration file you are using includes a line something like pseudo-device ppp 2 If it doesn't, add one. The `2' is the number of ppp interfaces to configure, that is, the maximum number of simultaneous ppp connections you will be able to have; change it as required. Next, run config (or config.old or config.new) in the directory containing the configuration file, giving the configuration file name as an argument. Then cd to the compilation directory and make the kernel. For the i386 port of NetBSD, with a configuration file called CONF, this involves the following commands: cd /sys/arch/i386/conf /usr/sbin/config CONF cd ../compile/CONF make For FreeBSD, the commands are similar except for different directories: cd /sys/i386/conf /usr/sbin/config CONF cd ../../compile/CONF make The result should be a new kernel image (usually called `netbsd' under NetBSD, `kernel' under FreeBSD). Save a copy of the kernel image you're currently using, copy the new kernel image file to /, and reboot.