freebsd-dev/usr.sbin/ppp
Brian Somers f4768038f0 o Remove the global CcpInfo. It's now part of the datalink.
Struct bundle will have its own struct ccp in the future
  too.
o The ``set stopped'' command now requires context and doesn't
  work on the IPCP FSM.
o Check if it's time to break out of our top level loop before
  doing a select - otherwise, we'll select forever :-(
o Remove `struct link'::ccp (a temporary hack).  It turns out
  that IpStartOutput() calls link_Output() and link_Output()
  incorrectly calls StartOutput() (really modem_StartOutput)
  requiring the ccp knowledge so that it can call
  IpStartOutput()...  The end result is that the whole IP
  output queue gets dumped into the modem output queue
  and a pile of physical writes are done prematurely.  This
  makes the (original) code in main() actually work in that
  it would not bother selecting() on the tun descriptor when
  our modem queue length was 20 or greater.  Instead, we now
  make that decision based on the overall queue length.

  This will need improvement later.
1998-02-23 00:38:44 +00:00
..
alias_cmd.c Move the terminal/diagnostic socket stuff out of main.c 1998-02-10 03:23:50 +00:00
alias_cmd.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
arp.c Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
arp.h Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
async.c Make ``show escape'' require context. 1998-02-18 19:35:20 +00:00
async.h Make ``show escape'' require context. 1998-02-18 19:35:20 +00:00
auth.c Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
auth.h o Hook the FSMs into our bundle. 1998-02-07 20:50:08 +00:00
bundle.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
bundle.h Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
ccp.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
ccp.h o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
chap_ms.c This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
chap_ms.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
chap.c Allow 8 character login names. 1998-02-19 02:08:53 +00:00
chap.h Create `struct bundle' - the top level control structure. 1998-02-02 19:32:16 +00:00
chat.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
chat.h Update to version 2.0-beta 1998-02-13 05:10:26 +00:00
command.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
command.h Introduce the ``link'' command for controlling 1998-02-17 19:28:01 +00:00
datalink.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
datalink.h o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
deflate.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
deflate.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
defs.c Move the terminal/diagnostic socket stuff out of main.c 1998-02-10 03:23:50 +00:00
defs.h Move the redial timeouts and max tries into struct datalink. 1998-02-16 19:11:10 +00:00
descriptor.h o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
filter.c Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
filter.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
fsm.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
fsm.h Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
hdlc.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
hdlc.h o Create `struct hdlc' - a part of struct physical. 1998-02-18 19:35:59 +00:00
id.c Allow 8 character login names. 1998-02-19 02:08:53 +00:00
id.h Allow 8 character login names. 1998-02-19 02:08:53 +00:00
ip.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
ip.h o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
ipcp.c Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
ipcp.h Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
iplist.c This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
iplist.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
lcp.c Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
lcp.h Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
lcpproto.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
link.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
link.h o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
loadalias.c This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
loadalias.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
log.c Move the terminal/diagnostic socket stuff out of main.c 1998-02-10 03:23:50 +00:00
log.h Move the terminal/diagnostic socket stuff out of main.c 1998-02-10 03:23:50 +00:00
lqr.c Create struct datalink. 1998-02-16 00:01:12 +00:00
lqr.h Create a new MP branch for `multilink protocol'. 1998-01-29 00:49:32 +00:00
main.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
main.h Add datalink state DATALINK_READY to indicate when the datalink 1998-02-17 19:28:35 +00:00
Makefile Create struct datalink. 1998-02-16 00:01:12 +00:00
mbuf.c Create struct datalink. 1998-02-16 00:01:12 +00:00
mbuf.h Create `struct link' - the logical link from which 1998-01-30 19:46:07 +00:00
modem.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
modem.h o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
pap.c Allow 8 character login names. 1998-02-19 02:08:53 +00:00
pap.h Create `struct bundle' - the top level control structure. 1998-02-02 19:32:16 +00:00
pathnames.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
physical.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
physical.h o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
ppp.8 o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
pred.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
pred.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
prompt.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
prompt.h Keep a handle on our current ``term'' in struct prompt 1998-02-17 19:28:13 +00:00
README.alias This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
README.devel This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
route.c Move the terminal/diagnostic socket stuff out of main.c 1998-02-10 03:23:50 +00:00
route.h o Hook the FSMs into our bundle. 1998-02-07 20:50:08 +00:00
server.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
server.h Make the server descriptor into a `sort' of struct descriptor. 1998-02-09 19:24:03 +00:00
sig.c This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
sig.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
slcompress.c Move the terminal/diagnostic socket stuff out of main.c 1998-02-10 03:23:50 +00:00
slcompress.h Shuffle around our FSMs a bit. This'll make it 1998-02-21 01:45:26 +00:00
systems.c Make the server descriptor into a `sort' of struct descriptor. 1998-02-09 19:24:03 +00:00
systems.h Create `struct bundle' - the top level control structure. 1998-02-02 19:32:16 +00:00
throughput.c Move the terminal/diagnostic socket stuff out of main.c 1998-02-10 03:23:50 +00:00
throughput.h Move the terminal/diagnostic socket stuff out of main.c 1998-02-10 03:23:50 +00:00
timer.c This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
timer.h This commit was manufactured by cvs2svn to create branch 'MP'. 1998-01-29 00:44:16 +00:00
tun.c o Create `struct hdlc' - a part of struct physical. 1998-02-18 19:35:59 +00:00
tun.h Create `struct bundle' - the top level control structure. 1998-02-02 19:32:16 +00:00
vars.c Remove some unused stuff from pppVars. 1998-02-17 01:05:22 +00:00
vars.h Introduce the ``link'' command for controlling 1998-02-17 19:28:01 +00:00
vjcomp.c o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00
vjcomp.h o Remove the global CcpInfo. It's now part of the datalink. 1998-02-23 00:38:44 +00:00

This program was originally written by Toshiharu OHNO <tony-o@iij.ad.jp>,
and was submitted to FreeBSD-2.0.5 by Atsushi Murai <amurai@spec.co.jp>.
The original version was usually referred to as iij-ppp.

Ppp is currently maintained under FreeBSD and OpenBSD by Brian Somers
<brian@Awfulhak.org>.  The sources for both operating systems are the
same although the Makefiles vary due to the nature of each system.
If and when it's ported to another OS, things will probably be shuffled
around so that there are several Makefiles, one per architecture.

The latest sources are available in FreeBSD-current and OpenBSD-current.
An archive hacked so that it will build on just about any version of
FreeBSD is frequently generated and made available on
http://www.FreeBSD.org/~brian.  Once the first OpenBSD release is made
with ppp, an up-to-date OpenBSD archive will be made available too.

A FAQ is available at http://www.FreeBSD.org/FAQ/userppp.html.  It applies
equally to OpenBSD as it does to FreeBSD.  The man page is quite extensive,
and there are lots of examples in /etc/ppp/ppp.*.sample.  These examples
come with the hacked archive above but must be installed manually.

Ppp is still under development.  There is no official TODO list.