X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=blobdiff_plain;f=README;h=4096879ee0d255f49462df2007ac4b85960c7d8d;hp=f60c8a9c3a48e7b809e98edd2a0ae15a3d16d32c;hb=5ba9d88b943e9d5a3ababdadf1d2e246581dfdc6;hpb=f0e9e64c605631ea6ba3553efd969a23809e9a05 diff --git a/README b/README index f60c8a9..4096879 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -This is the README file for ppp-2.2, a package which implements the +This is the README file for ppp-2.3, a package which implements the Point-to-Point Protocol (PPP) to provide Internet connections over serial lines. @@ -6,24 +6,18 @@ serial lines. Introduction. ************* -The Point-to-Point Protocol (PPP) provides a standard way to transmit -datagrams over a serial link, as well as a standard way for the -machines at either end of the link (the `peers') to negotiate various -optional characteristics of the link. Using PPP, a serial link can be -used to transmit Internet Protocol (IP) datagrams, allowing TCP/IP -connections between the peers. PPP is defined in several RFC (Request -For Comments) documents, in particular RFCs 1661, 1662, 1332 and 1334. -Other RFCs describe standard ways to transmit datagrams from other -network protocols (e.g., DECnet, OSI, Appletalk), but this package -only supports IP. +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 port of this package also has support for IPX. This software consists of two parts: - Kernel code, which establishes a network interface and passes packets between the serial port, the kernel networking code and the PPP daemon (pppd). This code is implemented using STREAMS modules on -SunOS 4.x, AIX 4.1 and OSF/1, and as a line discipline under Ultrix, -NextStep, NetBSD, FreeBSD, and Linux. +SunOS 4.x, Solaris 2.x, System V Release 4, and OSF/1, and as a +line discipline under Ultrix, NextStep, NetBSD, FreeBSD, and Linux. - The PPP daemon (pppd), which negotiates with the peer to establish the link and sets up the ppp network interface. Pppd includes support @@ -40,14 +34,19 @@ system, which contains more specific details for installing PPP on that system. The supported systems, and the corresponding README files, are: - SunOS 4.x README.sun - NetBSD, FreeBSD README.bsd - Ultrix 4.x README.ultrix + Digital Unix (OSF/1) README.osf Linux README.linux - OSF/1 README.osf - AIX 4.x README.aix4 + NetBSD, FreeBSD README.bsd NeXTStep README.next - Solaris 2 README.svr4 + Solaris 2 README.sol2 + SunOS 4.x README.sunos4 + System V Release 4 README.svr4 + Ultrix 4.x README.ultrix + +Unfortunately, AIX 4 is no longer supported, since I don't have a +maintainer for the AIX 4 port. If you want to volunteer, contact me. +The Ultrix port is untested, as I no longer have access to an Ultrix +box. In each case you start by running the ./configure script. This works out which operating system you are using and creates symbolic links to @@ -61,48 +60,208 @@ kernel using a `modload' facility. On others, the kernel image has to be recompiled and the system rebooted. See the README.* files for details. +N.B. Since 2.3.0, leaving the permitted IP addresses column of the +pap-secrets or chap-secrets file empty means that no addresses are +permitted. You need to put a "*" in that column to allow the peer to +use any IP address. (This only applies where the peer is +authenticating itself to you, of course.) + + +What's new in ppp-2.3.6. +************************ + +* Pppd now opens the tty device as the user (rather than as root) if + the device name was given by the user, i.e. on the command line or + in the ~/.ppprc file. If the device name was given in + /etc/ppp/options or in a file loaded with the `call' option, the + device is opened as root. + +* The default behaviour of pppd is now to let a peer which has not + authenticated itself (e.g. your ISP) use any IP address to which the + system does not already have a route. (This is currently only + supported under Linux, Solaris and Digital Unix; on the other + systems, the peer must now authenticate itself unless the noauth + option is used.) + +* Added new option `usepeerdns', thanks to Nick Walker + . If the peer supplies DNS addresses, these + will be written to /etc/ppp/resolv.conf. The ip-up script can then + be used to add these addresses to /etc/resolv.conf if desired (see + the ip-up.local.add and ip-down.local.add files in the scripts + directory). + +* The Solaris ppp driver should now work correctly on SMP systems. + +* Minor corrections so that the code can compile under Solaris 7, + and under Linux with glibc-2.1. + +* The Linux kernel driver has been restructured for improved + performance. + +* Pppd now won't start the ip-down script until the ip-up script has + finished. + + +What was new in ppp-2.3.5. +************************** + +* Minor corrections to the Digital UNIX and NetBSD ports. + +* A workaround to avoid tickling a bug in the `se' serial port driver +on Sun PCI Ultra machines running Solaris. + +* Fixed a bug in the negotiation of the Microsoft WINS server address +option. + +* Fixed a bug in the Linux port where it would fail for kernel +versions above 2.1.99. + + +What was new in ppp-2.3.4. +************************** + +* The NeXT port has been updated, thanks to Steve Perkins. + +* ppp-2.3.4 compiles and works under Solaris 2.6, using either gcc or +cc. + +* With the Solaris, SVR4 and SunOS ports, you can control the choice +of C compiler, C compiler options, and installation directories by +editing the svr4/Makedefs or sunos4/Makedefs file. + +* Until now, we have been using the number 24 to identify Deflate +compression in the CCP negotiations, which was the number in the draft +RFC describing Deflate. The number actually assigned to Deflate is +26. The code has been changed to use 26, but to allow the use of 24 +for now for backwards compatibility. (This can be disabled with the +`nodeflatedraft' option to pppd.) + +* Fixed some bugs in the linux driver and deflate compressor which +were causing compression problems, including corrupting long +incompressible packets sometimes. -What is new in ppp-2.2. -*********************** +* Fixes to the PAM and shadow password support in pppd, from Al +Longyear and others. -* More systems are now supported: +* Pppd now sets some environment variables for scripts it invokes +(ip-up/down, auth-ip/down), giving information about the connection. +The variables it sets are PEERNAME, IPLOCAL, IPREMOTE, UID, DEVICE, +SPEED, and IFNAME. - AIX 4, thanks to Charlie Wick, - OSF/1 on DEC Alpha, thanks to Steve Tate (srt@zaphod.csci.unt.edu), - NextStep 3.2 and 3.3, thanks to Philip-Andrew Prindeville - (philipp@res.enst.fr) and Steve Perkins (perkins@cps.msu.edu), - Solaris 2, +* Pppd now has an `updetach' option, which will cause it to detach +from its controlling terminal once the link has come up (i.e. once it +is available for IP traffic). -in addition to NetBSD 1.0, SunOS 4.x, Ultrix 4.x, FreeBSD 2.0, and -Linux. -* Packet compression has been implemented. This version implements -CCP (Compression Control Protocol) and the BSD-Compress compression -scheme according to the current draft RFCs. This means that incoming -and outgoing packets can be compressed with the LZW scheme (same as -the `compress' command) using a code size of up to 15 bits. +What was new in ppp-2.3.3. +************************** -* Some bug fixes to the LCP protocol code. In particular, pppd now -correctly replies with a Configure-NAK (instead of a Configure-Reject) -if the peer asks for CHAP and pppd is willing to do PAP but not CHAP. +* Fixed compilation problems under SunOS. -* The ip-up and ip-down scripts are now run with the real user ID set -to root, and with an empty environment. Clearing the environment -fixes a security hole. +* Fixed a bug introduced into chat in 2.3.2, and compilation problems +introduced into the MS-CHAP implementation in 2.3.2. -* The kernel code on NetBSD, FreeBSD, NextStep and Ultrix has been -restructured to make it easier to implement PPP over devices other -than asynchronous tty ports (for example, synchronous serial ports). +* The linux kernel driver has been updated for recent 2.1-series +kernel changes, and it now will ask kerneld to load compression +modules when required, if the kernel is configured to support kerneld. -* pppd now looks at the list of interfaces in the system to determine -what the netmask should be. In most cases, this should eliminate the -need to use the `netmask' option. +* Pppd should now compile correctly under linux on systems with glibc. -* There is a new `papcrypt' option to pppd, which specifies that -secrets in /etc/ppp/pap-secrets used for authenticating the peer are -encrypted, so pppd always encrypts the peer's password before -comparing it with the secret from /etc/ppp/pap-secrets. This gives -better security. + +What was new in ppp-2.3.2. +************************** + +* In 2.3.1, I made a change which was intended to make pppd able to +detect loss of CD during or immediately after the connection script +runs. Unfortunately, this had the side-effect that the connection +script wouldn't work at all on some systems. This change has been +reversed. + +* Fix compilation problems in the Linux kernel driver. + + +What was new in ppp-2.3.1. +************************** + +* Enhancements to chat, thanks to Francis Demierre. Chat can now +accept comments in the chat script file, and has new SAY, HANGUP, +CLR_ABORT and CLR_REPORT keywords. + +* Fixed a bug which causes 2.3.0 to crash Solaris systems. + +* Bug-fixes and restructuring of the Linux kernel driver. + +* The holdoff behaviour of pppd has been changed slightly: now, if +the link comes up for IP (or other network protocol) traffic, we +consider that the link has been successfully established, and don't +enforce the holdoff period after the link goes down. + +* Pppd should now correctly wait for CD (carrier detect) from the +modem, even when the serial port initially had CLOCAL set, and it +should also detect loss of CD during or immediately after the +connection script runs. + +* Under linux, pppd will work with older 2.2.0* version kernel +drivers, although demand-dialling is not supported with them. + +* Minor bugfixes for pppd. + + +What was new in ppp-2.3. +************************ + +* Demand-dialling. Pppd now has a mode where it will establish the +network interface immediately when it starts, but not actually bring +the link up until it sees some data to be sent. Look for the demand +option description in the pppd man page. Demand-dialling is not +supported under Ultrix or NeXTStep. + +* Idle timeout. Pppd will optionally terminate the link if no data +packets are sent or received within a certain time interval. + +* Pppd now runs the /etc/ppp/auth-up script, if it exists, when the +peer successfully authenticates itself, and /etc/ppp/auth-down when +the connection is subsequently terminated. This can be useful for +accounting purposes. + +* A new packet compression scheme, Deflate, has been implemented. +This uses the same compression method as `gzip'. This method is free +of patent or copyright restrictions, and it achieves better +compression than BSD-Compress. It does consume more CPU cycles for +compression than BSD-Compress, but this shouldn't be a problem for +links running at 100kbit/s or less. + +* There is no code in this distribution which is covered by Brad +Clements' restrictive copyright notice. The STREAMS modules for SunOS +and OSF/1 have been rewritten, based on the Solaris 2 modules, which +were written from scratch without any Clements code. + +* Pppstats has been reworked to clean up the output format somewhat. +It also has a new -d option which displays data rate in kbyte/s for +those columns which would normally display bytes. + +* Pppd options beginning with - or + have been renamed, e.g. -ip +became noip, +chap became require-chap, etc. The old options are +still accepted for compatibility but may be removed in future. + +* Pppd now has some options (such as the new `noauth' option) which +can only be specified if it is being run by root, or in an +"privileged" options file: /etc/ppp/options or an options file in the +/etc/ppp/peers directory. There is a new "call" option to read +options from a file in /etc/ppp/peers, making it possible for non-root +users to make unauthenticated connections, but only to certain trusted +peers. My intention is to make the `auth' option the default in a +future release. + +* Several minor new features have been added to pppd, including the +maxconnect and welcome options. Pppd will now terminate the +connection when there are no network control protocols running. The +allowed IP address(es) field in the secrets files can now specify +subnets (with a notation like 123.45.67.89/24) and addresses which are +not acceptable (put a ! on the front). + +* Numerous bugs have been fixed (no doubt some have been introduced :-) +Thanks to those who reported bugs in ppp-2.2. Patents. @@ -122,56 +281,38 @@ removed from the Makefiles. Contacts. ********* -Bugs in the the SunOS, NetBSD and Ultrix ports and bugs in pppd, chat -or pppstats should be reported to: +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. - paulus@cs.anu.edu.au - Paul Mackerras - Dept. of Computer Science - Australian National University - Canberra ACT 0200 - AUSTRALIA +If you find bugs in this package, please report them to the maintainer +for the port for the operating system you are using: -Bugs in other ports should be reported to the maintainer for that port -(see the appropriate README.* file) or to the above. Unfortunately, -Charlie Wick is not in a position to provide support for the AIX 4 -port, so if you find bugs in it, send them to me. - -Thanks to: - - Brad Parker (brad@fcr.com) - Greg Christy (gmc@quotron.com) - Drew D. Perkins (ddp@andrew.cmu.edu) - Rick Adams (rick@seismo.ARPA) - Chris Torek (chris@mimsy.umd.edu, umcp-cs!chris). +Digital Unix (OSF/1) Sowmini Varadhan +Linux Paul Mackerras +NetBSD Matthew Green +FreeBSD Peter Wemm +NeXTStep Steve Perkins +Solaris 2 Paul Mackerras +SunOS 4.x Paul Mackerras (for want of anybody better :-) +System V Release 4 Matthias Apitz +Ultrix 4.x Paul Mackerras (for want of anybody better :-) Copyrights: +*********** -Most of the code can be freely used and redistributed. The STREAMS -code for SunOS 4.x, OSF/1 and AIX 4 is under a more restrictive -copyright: +All of the code can be freely used and redistributed. - This code is Copyright (C) 1989, 1990 By Brad K. Clements, - All Rights Reserved. - You may use this code for your personal use, to provide a non-profit - service to others, or to use as a test platform for a commercial - implementation. +Distribution: +************* - You may NOT use this code in a commercial product, nor to provide a - commercial service, nor may you sell this code without express - written permission of the author. +The primary site for releases of this software is: - Otherwise, Enjoy! + ftp://cs.anu.edu.au/pub/software/ppp/ -This copyright applies to (parts of) the following files: - sunos/ppp_async.c - sunos/ppp_if.c - aix4/ppp_async.c - aix4/ppp_if.c - net/ppp_str.h - pppd/sys-str.c - pppd/sys-osf.c - pppd/sys-aix4.c +($Id: README,v 1.15 1999/03/10 05:10:47 paulus Exp $)