Fix an fd leak on the discovery socket.
[ppp.git] / README.bsd
1 Installation instructions for installing ppp-2.4 on FreeBSD.
2
3 This package supports NetBSD-current, NetBSD-1.2, NetBSD-1.1,
4 FreeBSD-2.1, and FreeBSD-2.0.  Modloading is not supported.  I have
5 code which may work on earlier systems; contact me if you need it.
6
7 To install PPP, you need to rebuild your kernel to include the latest
8 version of the PPP driver, as well as compiling and installing the
9 user-level applications: pppd, pppstats and chat.  The user-level
10 applications can be compiled and installed either before or after you
11 reboot with the new kernel (you'll have to reboot with the new kernel
12 before you can run them, of course).
13
14 The following commands should compile and install the user-level
15 applications (in the ppp-2.3 directory):
16
17         ./configure
18         make
19         make install            (you need to be root for this)
20
21 The process of updating the kernel source files is now largely
22 automated.  In the ppp-2.3 directory, issue the command:
23
24         make kernel
25
26 (you probably need to be root for this).  This will copy new versions
27 of several files into /sys, patch other files, and finally give you
28 instructions about modifying your kernel configuration file (if
29 necessary), rebuilding the kernel and rebooting.
30
31 If you want to do the process by hand, read the next section.
32
33
34 Updating the kernel ppp code.
35 *****************************
36
37 You need to update several files in the /sys/net directory, and patch
38 some other files under /sys.  The details depend on which operating
39 system you're running.
40
41
42 NetBSD.
43 =======
44
45 Copy the following files to /sys/net:
46
47         net/if_ppp.h
48         net/ppp-comp.h
49         net/ppp_defs.h
50         netbsd-1.1/bsd-comp.c
51         netbsd-1.1/if_ppp.c
52         netbsd-1.1/if_pppvar.h
53         netbsd-1.1/ppp-deflate.c
54         netbsd-1.1/ppp_tty.c
55         netbsd-1.1/slcompress.c
56         netbsd-1.1/slcompress.h
57         common/zlib.c
58         common/zlib.h
59
60 You may need to edit /sys/conf/files to make sure it contains entries
61 for if_ppp.c, ppp_tty.c, bsd-comp.c, ppp-deflate.c and zlib.c.
62 Depending on whether your port uses the old-style or new-style config
63 files, these entries will look like this (new-style):
64
65         file net/if_ppp.c               ppp             needs-count
66         file net/ppp_tty.c              ppp
67         file net/bsd-comp.c             ppp
68         file net/ppp-deflate.c          ppp
69         file net/zlib.c                 ppp
70
71 or this (old-style):
72
73         net/if_ppp.c            optional ppp device-driver
74         net/ppp_tty.c           optional ppp
75         net/bsd-comp.c          optional ppp
76         net/ppp-deflate.c       optional ppp
77         net/zlib.c              optional ppp
78
79 If you use config.old or config.new, you will need to edit
80 /sys/conf/files.oldconf or /sys/conf/files.newconf respectively.
81
82
83 FreeBSD.
84 ========
85
86 Copy the following files to /sys/net:
87
88         net/if_ppp.h
89         net/ppp-comp.h
90         net/ppp_defs.h
91         freebsd-2.0/bsd-comp.c
92         freebsd-2.0/if_ppp.c
93         freebsd-2.0/if_pppvar.h
94         freebsd-2.0/ppp-deflate.c
95         freebsd-2.0/ppp_tty.c
96         freebsd-2.0/pppcompress.c
97         freebsd-2.0/pppcompress.h
98         common/zlib.c
99         common/zlib.h
100
101 You then need to edit /sys/conf/files to make sure it contains entries
102 for if_ppp.c, ppp_tty.c, bsd-comp.c, ppp-deflate.c and zlib.c.  These
103 entries should look like this:
104
105         net/if_ppp.c            optional ppp device-driver
106         net/ppp_tty.c           optional ppp
107         net/bsd-comp.c          optional ppp
108         net/ppp-deflate.c       optional ppp
109         net/zlib.c              optional ppp
110
111
112 Configuring and making the new kernel.
113 **************************************
114
115 First, make sure that the configuration file you are using includes a
116 line something like
117
118         pseudo-device ppp 2
119
120 If it doesn't, add one.  The `2' is the number of ppp interfaces to
121 configure, that is, the maximum number of simultaneous ppp connections
122 you will be able to have; change it as required.
123
124 Next, run config (or config.old or config.new) in the directory
125 containing the configuration file, giving the configuration file name
126 as an argument.  Then cd to the compilation directory and make the
127 kernel.  For the i386 port of NetBSD, with a configuration file called
128 CONF, this involves the following commands:
129
130         cd /sys/arch/i386/conf
131         /usr/sbin/config CONF
132         cd ../compile/CONF
133         make
134
135 For FreeBSD, the commands are similar except for different
136 directories:
137
138         cd /sys/i386/conf
139         /usr/sbin/config CONF
140         cd ../../compile/CONF
141         make
142
143 The result should be a new kernel image (usually called `netbsd' under
144 NetBSD, `kernel' under FreeBSD).  Save a copy of the kernel image
145 you're currently using, copy the new kernel image file to /, and
146 reboot.