]> git.ozlabs.org Git - ppp.git/blobdiff - README
pppd man page: Update header to refer to pppd 2.5.x
[ppp.git] / README
diff --git a/README b/README
index b74301479ab1232ad60131afabdcec2616b9aae0..588b7b87639ef47fdca6d724376c1175b1e4af12 100644 (file)
--- a/README
+++ b/README
@@ -1,6 +1,7 @@
-This is the README file for ppp-2.4, a package which implements the
+This is the README file for ppp-2.5, a package which implements the
 Point-to-Point Protocol (PPP) to provide Internet connections over
-serial lines.
+serial lines and other types of links which can be considered to be
+point-to-point links.
 
 
 Introduction.
@@ -8,11 +9,10 @@ Introduction.
 
 The Point-to-Point Protocol (PPP) provides a standard way to establish
 a network connection over a serial link.  At present, this package
-supports IP and the protocols layered above IP, such as TCP and UDP.
-The Linux and Solaris ports of this package have optional support for
-IPV6; the Linux port of this package also has support for IPX.
+supports IP and IPV6 and the protocols layered above them, such as TCP
+and UDP.
 
-This software consists of two parts:
+This PPP implementation consists of two parts:
 
 - Kernel code, which establishes a network interface and passes
 packets between the serial port, the kernel networking code and the
@@ -29,6 +29,13 @@ code for NeXTStep, FreeBSD, SunOS 4.x, SVR4, Tru64 (Digital Unix), AIX
 and Ultrix but no active maintainers for these platforms.  Code for
 all of these except AIX is included in the ppp-2.3.11 release.
 
+The kernel code for Linux is no longer distributed with this package,
+since the relevant kernel code is in the official Linux kernel source
+(and has been for many years) and is included in all reasonably modern
+Linux distributions.  The Linux kernel code supports using PPP over
+things other than serial ports, such as PPP over Ethernet and PPP over
+ATM.
+
 
 Installation.
 *************
@@ -55,128 +62,70 @@ use any IP address.  (This only applies where the peer is
 authenticating itself to you, of course.)
 
 
-What's new in ppp-2.4.3.
-************************
-
-* The configure script now accepts --prefix and --sysconfdir options.
-  These default to /usr/local and /etc.  If you want pppd put in
-  /usr/sbin as before, use ./configure --prefix=/usr.
-
-* Doing `make install' no longer puts example configuration files in
-  /etc/ppp.  Use `make install-etcppp' if you want that.
-
-* The code has been updated to work with version 0.8.3 of libpcap.
-  Unfortunately the libpcap maintainers removed support for the
-  "inbound" and "outbound" keywords on PPP links, meaning that if you
-  link pppd with libpcap-0.8.3, you can't use those keywords in the
-  active-filter and pass-filter expressions.  The support has been
-  reinstated in the CVS version and should be in future libpcap
-  releases.  If you need the in/outbound keywords, use a later release
-  than 0.8.3, or get the CVS version from http://www.tcpdump.org.
-
-* There is a new option, child-timeout, which sets the length of time
-  that pppd will wait for child processes (such as the command
-  specified with the pty option) to exit before exiting itself.  It
-  defaults to 5 seconds.  After the timeout, pppd will send a SIGTERM
-  to any remaining child processes and exit.  A value of 0 means no
-  timeout.
-
-* Various bugs have been fixed, including some CBCP packet parsing
-  bugs that could lead to the peer being able to crash pppd if CBCP
-  support is enabled.
-
-* Various fixes and enhancements to the radius and rp-pppoe plugins
-  have been added.
-
-
-What was new in ppp-2.4.2.
-**************************
-
-* The CHAP code has been rewritten.  Pppd now has support for MS-CHAP
-  V1 and V2 authentication, both as server and client.  The new CHAP
-  code is cleaner than the old code and avoids some copyright problems
-  that existed in the old code.
-
-* MPPE (Microsoft Point-to-Point Encryption) support has been added,
-  although the current implementation shouldn't be considered
-  completely secure.  (There is no assurance that the current code
-  won't ever transmit an unencrypted packet.)
-
-* James Carlson's implementation of the Extensible Authentication
-  Protocol (EAP) has been added.
-
-* Support for the Encryption Control Protocol (ECP) has been added.
-
-* Some new plug-ins have been included:
-  - A plug-in for kernel-mode PPPoE (PPP over Ethernet)
-  - A plug-in for supplying the PAP password over a pipe from another
-    process
-  - A plug-in for authenticating using a Radius server.
-
-* Updates and bug-fixes for the Solaris port.
-
-* The CBCP (Call Back Control Protocol) code has been updated.  There
-  are new options `remotenumber' and `allow-number'.
+What's new in ppp-2.5.1
+***********************
 
-* Extra hooks for plugins to use have been added.
+* Pppd can now measure and log the round-trip time (RTT) of LCP
+  echo-requests and record them in a binary file structured as a
+  circular buffer.  Other programs or scripts can examine the file and
+  provide real-time statistics on link latency.  This is enabled by a
+  new "lcp-rtt-file" option.
 
-* There is now a `maxoctets' option, which causes pppd to terminate
-  the link once the number of bytes passed on the link exceeds a given
-  value.
+* New scripts net-init, net-pre-up and net-down are executed in the
+  process of bringing the network interface up and down.  They provide
+  additional, more deterministic ways for pppd to interact with the
+  rest of the networking configuration.
 
-* There are now options to control whether pppd can use the IPCP
-  IP-Address and IP-Addresses options: `ipcp-no-address' and
-  `ipcp-no-addresses'.
+* Pppd will now create the directory for the TDB connection database
+  if it doesn't already exist.
 
-* Fixed several bugs, including potential buffer overflows in chat.
+* Various other bug fixes and minor enhancements.
 
 
-What was new in ppp-2.4.1.
+What was new in ppp-2.5.0.
 **************************
 
-* Pppd can now print out the set of options that are in effect.  The
-  new `dump' option causes pppd to print out the option values after
-  option parsing is complete.  The `dryrun' option causes pppd to
-  print the options and then exit.
-
-* The option parsing code has been fixed so that options in the
-  per-tty options file are parsed correctly, and don't override values
-  from the command line in most cases.
-
-* The plugin option now looks in /usr/lib/pppd/<pppd-version> (for
-  example, /usr/lib/pppd/2.4.1b1) for shared objects for plugins if
-  there is no slash in the plugin name.
-
-* When loading a plugin, pppd will now check the version of pppd for
-  which the plugin was compiled, and refuse to load it if it is
-  different to pppd's version string.  To enable this, the plugin
-  source needs to #include "pppd.h" and have a line saying:
-       char pppd_version[] = VERSION;
-
-* There is a bug in zlib, discovered by James Carlson, which can cause
-  kernel memory corruption if Deflate is used with the lowest setting,
-  8.  As a workaround pppd will now insist on using at least 9.
-
-* Pppd should compile on Solaris and SunOS again.
-
-* Pppd should now set the MTU correctly on demand-dialled interfaces.
-
-
-What was new in ppp-2.4.0.
-**************************
-
-* Multilink: this package now allows you to combine multiple serial
-  links into one logical link or `bundle', for increased bandwidth and
-  reduced latency.  This is currently only supported under the
-  2.4.x and later Linux kernels.
-
-* All the pppd processes running on a system now write information
-  into a common database.  I used the `tdb' code from samba for this.
-
-* New hooks have been added.
-
-For a list of the changes made during the 2.3 series releases of this
-package, see the Changes-2.3 file.
+The 2.5.0 release is a major release of pppd which contains breaking 
+changes for third-party plugins, a complete revamp of the build-system
+and that allows for flexibility of configuring features as needed.
+
+In Summary:
+* Support for PEAP authentication by Eivind Næss and Rustam Kovhaev
+* Support for loading PKCS12 certificate envelopes 
+* Adoption of GNU Autoconf / Automake build environment, by Eivind Næss
+  and others.
+* Support for pkgconfig tool has been added by Eivind Næss.
+* Bunch of fixes and cleanup to PPPoE and IPv6 support by Pali Rohár.
+* Major revision to PPPD's Plugin API by Eivind Næss.
+  - Defines in which describes what features was included in pppd
+  - Functions now prefixed with explicit ppp_* to indicate that
+    pppd functions being called.
+  - Header files were renamed to better align with their features,
+    and now use proper include guards
+  - A pppdconf.h file is supplied to allow third-party modules to use
+    the same feature defines pppd was compiled with.
+  - No extern declarations of internal variable names of pppd, 
+    continued use of these extern variables are considered 
+    unstable.
+* Lots of internal fixes and cleanups for Radius and PPPoE by Jaco Kroon
+* Dropped IPX support, as Linux has dropped support in version 5.15
+  for this protocol.
+* Many more fixes and cleanups.
+* Pppd is no longer installed setuid-root.
+* New pppd options:
+  - ipv6cp-noremote, ipv6cp-nosend, ipv6cp-use-remotenumber,
+    ipv6-up-script, ipv6-down-script
+  - -v, show-options
+  - usepeerwins, ipcp-no-address, ipcp-no-addresses, nosendip
+* On Linux, any baud rate can be set on a serial port provided the
+  kernel serial driver supports that.
+
+Note that if you have built and installed previous versions of this
+package and you want to continue having configuration and TDB files in
+/etc/ppp, you will need to use the --sysconfdir option to ./configure.
+
+For a list of the changes made during the 2.4 series releases of this
+package, see the Changes-2.4 file.
 
 
 Compression methods.
@@ -191,36 +140,19 @@ BSD-Compress and Deflate (which uses the same algorithm as gzip) don't
 ever expand packets.
 
 
-Patents.
-********
-
-The BSD-Compress algorithm used for packet compression is the same as
-that used in the Unix "compress" command.  It was apparently covered
-by U.S. patents 4,814,746 (owned by IBM) and 4,558,302 (owned by
-Unisys), and corresponding patents in various other countries (but not
-Australia).  I believe the Unisys patent expired in the US on 20 June
-2003, and that the IBM patent was older.
-
-If these patents are of concern in your situation, you can build the
-package without including BSD-Compress.  To do this, edit
-net/ppp-comp.h to change the definition of DO_BSD_COMPRESS to 0.  The
-bsd-comp.c files are then no longer needed, so the references to
-bsd-comp.o may optionally be removed from the Makefiles.
-
-
 Contacts.
 *********
 
-The comp.protocols.ppp newsgroup is a useful place to get help if you
-have trouble getting your ppp connections to work.  Please do not send
-me questions of the form "please help me get connected to my ISP" -
-I'm sorry, but I simply do not have the time to answer all the
-questions like this that I get.
+Most communication relating to this package happens on github at
+https://github.com/ppp-project/ppp/.  The linux-ppp@vger.kernel.org
+mailing list also exists and can be used.
 
-If you find bugs in this package, please report them to the maintainer
-for the port for the operating system you are using:
+If you find bugs in this package, the best thing to do is to create an
+issue on github.  If you can't or don't want to do that, you can post
+to linux-ppp@vger.kernel.org, or report them to the maintainer for the
+port for the operating system you are using:
 
-Linux                  Paul Mackerras <paulus@samba.org>
+Linux                  Paul Mackerras <paulus@ozlabs.org>
 Solaris                        James Carlson <carlson@workingcode.com>
 
 
@@ -241,4 +173,3 @@ The primary site for releases of this software is:
        ftp://ftp.samba.org/pub/ppp/
 
 
-($Id: README,v 1.31 2004/11/04 11:58:14 paulus Exp $)