1Copyright (c) 2001 Brian Somers <brian@Awfulhak.org>
2              based on work by Eivind Eklund <perhaps@yes.no>,
3All rights reserved.
4
5Redistribution and use in source and binary forms, with or without
6modification, are permitted provided that the following conditions
7are met:
81. Redistributions of source code must retain the above copyright
9   notice, this list of conditions and the following disclaimer.
102. Redistributions in binary form must reproduce the above copyright
11   notice, this list of conditions and the following disclaimer in the
12   documentation and/or other materials provided with the distribution.
13
14THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24SUCH DAMAGE.
25
26$FreeBSD$
27
28This file summarises changes made to ppp that effect
29its configuration.
30
31It does not describe new features, rather it attempts
32to answer any `this used to work, why doesn't it now?'
33questions.
34
35o The `set debug' command was replaced with `set log'.
36o The `set log LCP' command was split into LCP, IPCP and CCP logs.
37o Syslogd is used for logging.  /etc/syslog.conf must be updated.
38o LQR is disabled by default.
39o Openmode is active by default.
40o Users must be a member of group `network' for ppp access.  Furthermore,
41  they must be `allow'ed to run ppp via the `allow' command in the
42  configuration file.
43  For a brief period, ppp could only be run as root.
44o No diagnostic socket is created by default.  The `set server' command
45  must be used.
46o The diagnostic socket password must be specified *only* on the `set
47  server' command line.
48o When `set server' is used to re-select a diagnostic port, all existing
49  diagnostic connections are dropped.
50o pppd-deflate is now called deflate24.
51o Filter IPs of 0.0.0.0 have a default width of 0, not 32.
52o Errors in `add' and `delete' are logged as warnings rather than being
53  written to the TCP/IP log.
54o Any number of diagnostic prompts are allowed, and they are allowed in
55  interactive mode.
56o The default `device' is cuad1, then cuad0
57o A password of "*" in ppp.secret causes a passwd database lookup in
58  pap mode.
59o The value of the CONNECT environment variable is logged in the
60  utmp host field in -direct mode.
61o Out-of-sequence FSM packets (IPCP/LCP/CCP) are dropped by default.
62o Reconnect values are used after an LQR timeout.
63o ^C works on the parent in -background mode.
64o The dial/call/open command works asynchronously.  As a result, prompts
65  do not lose control while dialing.
66o The `display' command has been removed.  All information is available
67  with the appropriate `show' command.
68o Msext does not need to be enabled/disabled.  Setting the NBNS (set nbns)
69  will auto enable it.  The DNS side may be enabled/disabled, and if
70  enabled without a `set dns' (was `set ns') will use values from
71  /etc/resolv.conf.
72o Filters are now called `allow', `dial', `in' and `out'.  `set
73  ifilter ...' becomes `set filter in ...' etc.
74o Authname and Authkey may only be `set' in phase DEAD.
75o Set encrypt is no longer necessary.  Ppp will respond to M$CHAP
76  servers correctly if it's built with DES.
77o Throughput statistics are enabled by default.
78o `Set stopped' only has two parameters.  It's no longer possible to
79  have an IPCP stopped timer.
80o `Set timeout' only has one or two parameters.  Use `set lqrperiod' and
81  `set {lcp,ccp,ipcp,chap,pap}retry' for the other timers.  These timeout
82  values can be seen using the relevant show commands.
83o `set loopback' is now `enable/disable loopback'.
84o `show auto', `show loopback' and `show mtu' are all part of `show bundle'.
85o `show mru' is part of `show lcp'
86o `show msext' and `show vj' are part of `show ipcp'
87o `show reconnect' and `show redial' are part of `show link'
88o A signal 15 (TERM) will now shut down the link gracefully.
89o A signal 2 (HUP) will drop all links immediately.
90o Signal 30 (USR1) is now ignored.
91o Add & delete commands are not necessary in ppp.linkup if they are
92  `sticky routes' (ie, contain MYADDR or HISADDR).
93o LINK and CARRIER logging are no longer available.
94o Timer based DEBUG messages are now logged in the new TIMER log.
95o Ppp can use tun devices > tun255.
96o Protocol-compressed packets are accepted even if they were denied
97  at LCP negotiation time.
98o Passwords aren't logged when logging the ``set server'' line.
99o Command line options only need enough characters to uniquely identify
100  them.  -a == -auto, -dd == -ddial etc.  -interactive is also allowed.
101o If you don't like seeing additional interface aliases when running in
102  -auto -alias mode, add ``iface clear'' to your ppp.linkdown file -
103  check the sample file.
104o Ppp waits for 1 second before checking whether the device supports
105  carrier.  This is controllable with ``set cd''.
106o Random dial timeouts are now between 1 and 30 seconds inclusive rather
107  than between 0 and 29.
108o Ppp now accepts M$CHAP (as well as normal CHAP) by default.  If this
109  is not required, you must ``deny chap05 chap80''.
110o The ``set device'' command now expects each device to be specified as an
111  argument rather than concatentating all arguments and splitting based
112  on commas and spaces.
113o The ``show modem'' command is deprecated and has been changed to
114  ``show physical''.
115o The words ``host'' and ``port'' are no longer accepted by the ``set filter''
116  command.  Removing them should yield the same results as before.
117o The ``set weight'' command has been deprecated.  The ``set bandwidth''
118  command should now be used instead.
119o The ``set autoload'' command syntax and implementation have changed as the
120  old implementation was mis-designed and dysfunctional.
121o Ppp now waits either the full ``set cd'' time or until carrier is detected
122  before running the login script (whichever comes first).
123o The -alias flag has been deprecated.  The -nat flag should be used instead.
124o Unbalanced quotes in commands are now warned about and the entire command
125  is ignored.
126o It is now only necessary to escape the `-' character in chat scripts twice.
127  See the example files for details.
128o Environment variables and ~ are expanded on in commands
129o ``nat pptp'' is no longer necessary as this is now done transparently
130o The ``!'' at the start of chat scripts and authkey can be made literal
131  (rather than meaning execute) by doubling it to ``!!''.
132o MP autoload throughput measurements are now based on the maximum of input
133  and output averages rather than on the total.
134o When only one link is open in MP mode, MP link level compression is not
135  open and the peer MRU >= the peer MRRU, ppp sends outbound traffic as
136  PROTO_IP traffic rather than PROTO_MP.
137o MSCHAPv2 is now accepted by default.  If you don't wish to negotiate
138  this, you must explicitly deny it.
139o MPPE is enabled and accepted by default (although deflate and predictor1
140  are preferred.
141