#
b3e76948 |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
Remove $FreeBSD$: two-line .h pattern Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
#
4d846d26 |
|
10-May-2023 |
Warner Losh <imp@FreeBSD.org> |
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause. Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
|
#
1de7b4b8 |
|
27-Nov-2017 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
various: general adoption of SPDX licensing ID tags. Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. No functional change intended.
|
#
9304cfd0 |
|
28-Jan-2015 |
Dimitry Andric <dim@FreeBSD.org> |
Fix multiple instances of the following clang 3.6.0 warning in ppp: usr.sbin/ppp/command.c:2054:74: error: address of array 'arg->bundle->radius.cfg.file' will always evaluate to 'true' [-Werror,-Wpointer-bool-conversion] if (arg->bundle->radius.alive.interval && !arg->bundle->radius.cfg.file) { ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ In all cases, the file field of struct radius is a char array, but the intent was to check whether the string is empty, so add an indirection to achieve that. Use a similar approach for the sockname field of struct server.
|
#
a7d5f7eb |
|
19-Oct-2010 |
Jamie Gritton <jamie@FreeBSD.org> |
A new jail(8) with a configuration file, to replace the work currently done by /etc/rc.d/jail.
|
#
bc92b078 |
|
18-Oct-2010 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Log if fopen() fails. Reviewed by: brian
|
#
fe0506d7 |
|
09-Mar-2010 |
Marcel Moolenaar <marcel@FreeBSD.org> |
Create the altix project branch. The altix project will add support for the SGI Altix 350 to FreeBSD/ia64. The hardware used for porting is a two-module system, consisting of a base compute module and a CPU expansion module. SGI's NUMAFlex architecture can be an excellent platform to test CPU affinity and NUMA-aware features in FreeBSD.
|
#
0e81959d |
|
20-Apr-2009 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
Conditionally add the interface name and address if available so that a ppp running in `receiver' (server) mode can properly update routes, for example to update the MTU. Submitted by: loos.br gmail.com (Luiz Otavio O Souza) PR: bin/130159 PR: kern/125079, kern/122068, bin/126892 MFC after: 3 days
|
#
d7f03759 |
|
19-Oct-2008 |
Ulf Lilleengen <lulf@FreeBSD.org> |
- Import the HEAD csup code which is the basis for the cvsmode work.
|
#
a5625ae7 |
|
12-Mar-2008 |
Paolo Pisati <piso@FreeBSD.org> |
Update to the "new" libalias API (and thus fix world breakage).
|
#
88044778 |
|
27-Jan-2005 |
Brian Somers <brian@FreeBSD.org> |
Add a radius_Flush() function that waits for the response (or timeout) to any pending RADIUS transaction. Use this before sending RAD_STOP RADIUS messages so that we definitely ``stop'' the session. It was discovered that sometimes when the link timed out, we got lucky enough to have an un-ACK'd RADIUS accounting transaction in progress, resulting in the RAD_STOP message failing to send. Original report found on: A russion news group Text translated by: glebius Tested by: Alexey Popov llp at iteranet dot com MFC after: 7 days
|
#
eb1ecbb2 |
|
10-Jan-2005 |
Brian Somers <brian@FreeBSD.org> |
Integrate some OpenBSD alignment fixes. This hopefully also fixes PR 38058... Obtained from: Brad <brad@comstyle.com>
|
#
057f1760 |
|
04-Sep-2004 |
Brian Somers <brian@FreeBSD.org> |
Make ppp WARNS=5 clean
|
#
e715b13b |
|
16-Jul-2004 |
Brian Somers <brian@FreeBSD.org> |
Support a ``set rad_alive N'' command to enable periodic RADIUS accounting information being sent to the RADIUS server. Logging of RADIUS accounting information moves to a ``set log [+-]radius'' level, along with the RADIUS alive info, and the version number is bumped to 3.2 to reflect this. Mostly submitted by: alx@sm.ukrtel.net (back in January) MFC after: 3 weeks
|
#
cf7c10d0 |
|
19-Jun-2003 |
Hajimu UMEMOTO <ume@FreeBSD.org> |
Do RADIUS accounting on IPV6CP. MFC after: 1 week
|
#
9d5abbdd |
|
01-Jan-2003 |
Jens Schweikhardt <schweikh@FreeBSD.org> |
Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup, especially in troff files.
|
#
3c34956a |
|
23-Sep-2002 |
Brian Somers <brian@FreeBSD.org> |
If the peer gives us 0.0.0.0 as his IP number, NAK it rather than accepting it as being in range. set ifaddr 1.2.3.4/0 5.6.7.8/0 no longer allows 0.0.0.0 as a valid IP. Reported/tested by: Bohdan Horst <nexus@hoth.amu.edu.pl> MFC after: 3 days
|
#
6eafd353 |
|
27-Aug-2002 |
Brian Somers <brian@FreeBSD.org> |
Include the correct file (stdarg.h) and use va_list rather than _BSD_VA_LIST_ Suggested by: mike
|
#
10be78d3 |
|
15-Jun-2002 |
Brian Somers <brian@FreeBSD.org> |
Remove whitespace at the end of lines.
|
#
635ad5f0 |
|
12-Jun-2002 |
Brian Somers <brian@FreeBSD.org> |
If a RAD_FILTER_ID is supplied by the RADIUS server, treat it as an additional label from ppp.linkup & ppp.linkdown to load. Suggested and mostly submitted by: andrew pavlov <and@kremenchug.net>
|
#
ff360cc9 |
|
16-Apr-2002 |
Brian Somers <brian@FreeBSD.org> |
Make the way FSM options are processed easier to read by using structures instead of u_char *. The changes are cosmetic except: RecvConfigAck() now displays the options that are being ACK'd Huge (bogus) options sent from the peer won't cause an infinite loop SendIdent and ReceiveIdent are displayed consistenlty with other FSM data LCP AUTHPROTO options that aren't understood are NAK'd, not REJ'd
|
#
63c6cac9 |
|
16-Jan-2002 |
Brian Somers <brian@FreeBSD.org> |
socket()s first argument should be a protocol family rather than an address family.
|
#
5ae08329 |
|
15-Aug-2001 |
Brian Somers <brian@FreeBSD.org> |
Specify the gateway address when updating the MTU and send/recv pipe sizes on a route. IMHO this shouldn't be necessary (the destination & mask/prefixlen should be enough), but without it, the default route update under OpenBSD will fail. Thanks to: Russell T Hunt <alaric@MIT.EDU>
|
#
ad1f9eae |
|
14-Aug-2001 |
Brian Somers <brian@FreeBSD.org> |
Add a missing newline
|
#
30949fd4 |
|
14-Aug-2001 |
Brian Somers <brian@FreeBSD.org> |
o Add ipv6 support, abstracting most NCP addresses into opaque structures (well, they're treated as opaque). It's now possible to manage IPv6 interface addresses and routing table entries and to filter IPV6 traffic whether encapsulated or not. IPV6CP support is crude for now, and hasn't been tested against any other implementations. RADIUS and IPv6 are independent of eachother for now. ppp.linkup/ppp.linkdown aren't currently used by IPV6CP o Understand all protocols(5) in filter rules rather than only a select few. o Allow a mask specification for the ``delete'' command. It's now possible to specifically delete one of two conflicting routes. o When creating and deleting proxy arp entries, do it for all IPv4 interface addresses rather than doing it just for the ``current'' peer address. o When iface-alias isn't in effect, don't blow away manually (via ``iface add'') added interface addresses. o When listening on a tcp server (diagnostic) socket, bind so that a tcp46 socket is created -- allowing both IPv4 and IPv6 connections. o When displaying ICMP traffic, don't display the icmp type twice. When display traffic, display at least some information about unrecognised traffic. o Bump version Inspired after filtering work by: Makoto MATSUSHITA <matusita@jp.FreeBSD.org>
|
#
5e3b2d68 |
|
28-Jul-2001 |
Brian Somers <brian@FreeBSD.org> |
If the peer sends a REQ without the IPADDR option, only reject it once. If they repeat the request (again without the IPADDR option) ACK it. I've had reports that some ppp implementations will not assign themselves an IP number. This should negotiate with such things. MFC after: 3 days
|
#
65309e5c |
|
13-Jun-2001 |
Brian Somers <brian@FreeBSD.org> |
Convert IIJ copyrights to BSD copyrights. Approved by: Toshiharu OHNO <tohno@sirius.ocn.ne.jp>
|
#
5f73635b |
|
22-May-2001 |
Brian Somers <brian@FreeBSD.org> |
If we don't receive a TY_IPADDR option as part of a configure request, NAK as if we received one with 0.0.0.0 as the argument.
|
#
448374ba |
|
11-May-2001 |
Brian Somers <brian@FreeBSD.org> |
Bring the interface IFF_UP from ipcp_InterfaceUp() (called from IPCP's TLU event handler). This used to be done as a side effect of SIOCAIFADDR'ing the interface, but now that duplicate SIOCAIFADDRs are optimised out, we can't depend on that behaviour.
|
#
03a2501a |
|
04-Apr-2001 |
Brian Somers <brian@FreeBSD.org> |
When we change the interface MTU, run through the routing table and tweak all route MTUs too.
|
#
26e6a622 |
|
09-Mar-2001 |
Brian Somers <brian@FreeBSD.org> |
MAXHOSTNAME includes space for a NUL
|
#
52847614 |
|
08-Mar-2001 |
Brian Somers <brian@FreeBSD.org> |
MAXPATHLEN -> PATH_MAX Don't assume MAXHOSTNAMELEN includes the NUL Correct a diagnostic Use "localhost" in our prompt instead of ""
|
#
7d39b1e3 |
|
21-Jan-2001 |
Brian Somers <brian@FreeBSD.org> |
Handle SECDNS being rejected when PRIDNS is not Submitted by: OGAWA Takaya <t-ogawa@triaez.kaisei.org> PR: 24518
|
#
794c9bbc |
|
28-Aug-2000 |
Brian Somers <brian@FreeBSD.org> |
Support radius accounting, and add a packet count to throughput statistics as a side effect. Submitted by: Marcin Cieslak <saper@system.pl> with some tweaks to RAD_ACCT_SESSION_ID and RAD_ACCT_MULTI_SESSION_ID generation by me.
|
#
c837ca39 |
|
14-Aug-2000 |
Brian Somers <brian@FreeBSD.org> |
Don't delete sticky routes when unconfiguring the interface. Deleting all routes that match the interface is sufficient.
|
#
1038894e |
|
18-Jul-2000 |
Brian Somers <brian@FreeBSD.org> |
Support link identification from rfc1570 Two new commands are available; ``ident'' and ``sendident''.
|
#
4c240437 |
|
08-Jun-2000 |
Brian Somers <brian@FreeBSD.org> |
Allow ``set urgent none'' to disable all urgent ports and IPTOS_LOWDELAY prioritisation. Requested by: luigi
|
#
682cb20f |
|
25-May-2000 |
Brian Somers <brian@FreeBSD.org> |
Fix a topy (if (expr); command;) Submitted by: Renaud Waldura <renaud@guppy.evolunet.com>
|
#
7fe0b592 |
|
23-May-2000 |
Brian Somers <brian@FreeBSD.org> |
Don't attempt to fputs(NULL, fp) when ``enable dns'' is given and there's no resolv.conf. Use a umask of 022 when creating resolv.conf, not 0644 !
|
#
d568d6c4 |
|
13-Mar-2000 |
Brian Somers <brian@FreeBSD.org> |
Add the ``resolv'' command for telling ppp how to deal with resolv.conf. You can now ``resolv restore'' in ppp.linkdown ! Add DNS0 and DNS1 macros.
|
#
209dc102 |
|
13-Mar-2000 |
Brian Somers <brian@FreeBSD.org> |
Fix some printf-style argument bugs
|
#
10e629b9 |
|
13-Mar-2000 |
Brian Somers <brian@FreeBSD.org> |
Introduce LOCALNAT and LOCALRAD defines so that the sources can stay exactly the same in FreeBSD & OpenBSD despite libalias and libradius being local to the ppp sources under OpenBSD.
|
#
d6d3eeab |
|
13-Mar-2000 |
Brian Somers <brian@FreeBSD.org> |
When ppp can't identify the relevant name, don't use "???", use <nnn> or <0xxxx> instead.
|
#
182c898a |
|
27-Dec-1999 |
Brian Somers <brian@FreeBSD.org> |
Add a bunch of `const's and fix a typo. Submitted by: Rich Neswold <rneswold@MCS.Net>
|
#
26af0ae9 |
|
20-Dec-1999 |
Brian Somers <brian@FreeBSD.org> |
Cosmetic: Make struct mbuf more like kernel mbufs.
|
#
b9391689 |
|
21-Sep-1999 |
Brian Somers <brian@FreeBSD.org> |
Back out the bogus #ifdef __NetBSD__ #include <signal.h> lines. The original report was due to a mis-installation of the NetBS header files :-/ Submitted by: Kazuyoshi Kato <kazk@yyy.or.jp>
|
#
7e795ebe |
|
20-Sep-1999 |
Brian Somers <brian@FreeBSD.org> |
NetBSD has moved ``extern int errno;'' to signal.h :-/ Submitted by: Kazuyoshi Kato <kazk@yyy.or.jp>
|
#
da477886 |
|
07-Sep-1999 |
Brian Somers <brian@FreeBSD.org> |
Introduce a forth IP packet queue. Urgent packets with ip_tos == IPTOS_LOWDELAY now get precidence over urgent packets with ip_tos != IPTOS_LOWDELAY and non-urgent packets with ip_tos == IPTOS_LOWDELAY. Enhance the ``set urgent'' syntax to allow for urgent UDP packets as well as urgent TCP packets.
|
#
442f8495 |
|
03-Sep-1999 |
Brian Somers <brian@FreeBSD.org> |
o Split the two IPCP queues into three - one for FSM data (LCP/CCP/IPCP), one for urgent IP traffic and one for everything else. o Add the ``set urgent'' command for adjusting the list of urgent port numbers. The default urgent ports are 21, 22, 23, 513, 514, 543 and 544 (Ports 80 and 81 have been removed from the default priority list). o Increase the buffered packet threshold from 20 to 30. o Report the number of packets in the IP output queue and the list of urgent ports under ``show ipcp''.
|
#
97d92980 |
|
27-Aug-1999 |
Peter Wemm <peter@FreeBSD.org> |
$Id$ -> $FreeBSD$
|
#
67b072f7 |
|
19-Aug-1999 |
Brian Somers <brian@FreeBSD.org> |
o Add the -foreground switch. This switch behaves like -background except that ppp stays in the foreground. o Add the -quiet switch to quieten ppps startup o Add the -nat flag and discourage the use of the -alias flag. Both do the same thing. o Correct some nat usage strings. o Change the internal ``alias'' command to ``nat''.
|
#
ab2de065 |
|
05-Aug-1999 |
Brian Somers <brian@FreeBSD.org> |
o Obsolete the undocumented ``set weight'' command. o If we're using RADIUS and the RADIUS mtu is less than our peers mru/mrru, reduce our mtu to this value for NetBSD too. o Make struct throughput's sample period dynamic and tweak the ppp version number to reflect the extra stuff being passed through the local domain socket as a result (MP mode). o Measure the current throughput based on the number of samples actually taken rather than on the full sample period. o Keep the throughput statisics persistent while being passed to another ppp invocation through the local domain socket. o When showing throughput statistics after the timer has stopped, use the stopped time for overall calculations, not the current time. Also show the stopped time and how long the current throughput has been sampled for. o Use time() consistently in throughput.c o Tighten up the ``show bundle'' output. o Introduce the ``set bandwidth'' command. o Rewrite the ``set autoload'' command. It now takes three arguments and works based on a rolling bundle throughput average compared against the theoretical bundle bandwidth over a given period (read: it's now functional).
|
#
68645f39 |
|
08-Jun-1999 |
Brian Somers <brian@FreeBSD.org> |
Don't use static variables if we don't have to.
|
#
aa857470 |
|
08-Jun-1999 |
Brian Somers <brian@FreeBSD.org> |
Don't IPCP TLD if we're already doing it. This prevents recursion by doing something like ``down'' or ``quit all'' in ppp.linkdown.
|
#
411675ba |
|
02-Jun-1999 |
Brian Somers <brian@FreeBSD.org> |
o Alter the mbuf type as it's processed by different layers. o Show more information about missing MP fragments in ``show mp''. o Do away with mbuf_Log(). It was showing mbuf stats twice on receipt of LCP/CCP/IPCP packets.... ???!!? o Pre-allocate a bit extra when creating LQR packets to avoid having to allocate another mbuf in mbuf_Prepend().
|
#
1d1fc017 |
|
31-May-1999 |
Brian Somers <brian@FreeBSD.org> |
Remember if MYADDR or HISADDR is used in a filter add tweak all filters any time either value changes.
|
#
3377c28c |
|
09-May-1999 |
Brian Somers <brian@FreeBSD.org> |
Deal with the fact that as we now mbuf_Read the fsm header in fsm_Input() we often end up with a NULL mbuf. Deal with a possible NULL mbuf being passed into mbuf_Prepend(). Adjust some spacing to make things more consistent.
|
#
5d9e6103 |
|
08-May-1999 |
Brian Somers <brian@FreeBSD.org> |
o Redesign the layering mechanism and make the aliasing code part of the layering. We now ``stack'' layers as soon as we open the device (when we figure out what we're dealing with). A static set of `dispatch' routines are also declared for dealing with incoming packets after they've been `pulled' up through the stacked layers. Physical devices are now assigned handlers based on the device type when they're opened. For the moment there are three device types; ttys, execs and tcps. o Increment version number to 2.2 o Make an entry in [uw]tmp for non-tty -direct invocations (after pap/chap authentication). o Make throughput counters quad_t's o Account for the absolute number of mbuf malloc()s and free()s in ``show mem''. o ``show modem'' becomes ``show physical''.
|
#
7884358f |
|
26-Apr-1999 |
Brian Somers <brian@FreeBSD.org> |
Add support for NetBSD
|
#
119386a3 |
|
26-Apr-1999 |
Brian Somers <brian@FreeBSD.org> |
#include <errno.h>, not <sys/errno.h>
|
#
bc76350e |
|
03-Mar-1999 |
Brian Somers <brian@FreeBSD.org> |
Correct some ntohl/htonl bogons in the netmask handling. This was pretty harmless as netmasks on a POINTOPOINT interface are pretty much ignored, but it looked funny. Mention the configured netmask in ``show ipcp''. Describe in more detail what a proxy arp entry is.
|
#
479508cf |
|
26-Feb-1999 |
Brian Somers <brian@FreeBSD.org> |
Allow control over the number of ConfigREQ & TermREQ attempts that are made in each of the FSMs (LCP, CCP & IPCP) and the number of REQs/Challenges for PAP/CHAP by accepting more arguments in the ``set {c,ip,l}cpretry'' and ``set {ch,p}apretry'' commands. Change the non-convergence thresholds to 3 times the number of configured REQ tries (rather than the previous fixed ``10''). We now notice repeated NAKs and REJs rather than just REQs. Don't suggest that CHAP 0x05 isn't supported when it's not configured. Fix some bugs that expose themselves with smaller numbers of retries: o Handle instantaneous disconnects (set device /dev/null) correctly by stopping all fsm timers in fsm2initial. o Don't forget to uu_unlock() devices that are files but are not ttys (set device /dev/zero). Fix a *HORRENDOUS* bug in RFC1661 (already fixed for an Open event in state ``Closed''): According to the state transition table, a RCR+ or RCR- received in the ``Stopped'' state are supposed to InitRestartCounter, SendConfigReq and SendConfig{Ack,Nak}. However, in ``Stopped'', we haven't yet done a TLS (or the last thing we did is a TLF). We must therefore do the TLS at this point ! This was never noticed before because LCP and CCP used not use LayerStart() for anything interesting, and IPCP tends to go into Stopped then get a Down because of an LCP RTR rather than getting a RCR again.
|
#
f0cdd9c0 |
|
05-Feb-1999 |
Brian Somers <brian@FreeBSD.org> |
Decouple pap & chap output routines from the corresponding input routines and take advantage of the new init/continue interface in libradius. This allows a timely response on other links in an MP setup while RADIUS requests are in progress as well as the ability to handle other data from the peer in parallel. It should also make the future addition of PAM support trivial. While I'm in there, validate pap & chap header IDs if ``idcheck'' is enabled (the default) for other FSM packet types. NOTE: This involved integrating the generation of chap challenges and the validation of chap responses (and commenting what's going on in those routines). I currently have no way of testing ppps ability to respond to M$Chap CHALLENGEs correctly, so if someone could do the honours, it'd be much appreciated (it *looks* ok!). Sponsored by: Internet Business Solutions Ltd., Switzerland
|
#
7686a200 |
|
02-Feb-1999 |
Brian Somers <brian@FreeBSD.org> |
Encode & Decode the PROTOCOMP fields correctly. When NAKing the peer, get as close as we can to what he REQd. When the peer NAKs us, get as close as we can to what they NAKd with on our next REQ.
|
#
972a1bcf |
|
27-Jan-1999 |
Brian Somers <brian@FreeBSD.org> |
Initial RADIUS support (using libradius). See the man page for details. Compiling with -DNORADIUS (the default for `release') removes support. TODO: The functionality in libradius::rad_send_request() needs to be supplied as a set of routines so that ppp doesn't have to wait indefinitely for the radius server(s). Instead, we need to get a descriptor back, select() on the descriptor, and ask libradius to service it when necessary. For now, ppp blocks SIGALRM while in rad_send_request(), so it misses PAP/CHAP retries & timeouts if they occur. Only PAP is functional. When CHAP is attempted, libradius complains that no User-Password has been specified... rfc2138 says that it *mustn't* be used for CHAP :-( Sponsored by: Internet Business Solutions Ltd., Switzerland
|
#
3afe5ccb |
|
26-Oct-1998 |
Brian Somers <brian@FreeBSD.org> |
Add ``enable proxyall'' support. This adds proxy ARP entries for every machine on every class C or smaller subnet that we route to. Add ``set {send,recv}pipe'' for controlling our socket buffer sizes. Mention the IP number with the problem in a few error messages. All submitted by: Craig Leres <leres@ee.lbl.gov> Modified slightly by: me
|
#
8fa6ebe4 |
|
21-Oct-1998 |
Brian Somers <brian@FreeBSD.org> |
Solve the ``first connection'' problem that occurs on demand-dial links with dynamic IP numbers where the program that causes the dial bind()s to an interface address that is subsequently changed after ppp negotiation. The problem is defeated by adding negotiated addresses to the tun interface as additional alias addresses and providing a set of ``iface'' commands for managing the interface. Libalias is also required (and what a name clash!) - it happily IP-aliases the address so that the source is that of the primary (negotiated) interface and un-IP-aliases it on the way back. An ``enable iface-alias'' is done implicitly by the -alias command line switch. If -alias isn't given, iface-aliasing is disabled by default and can't be enabled 'till an ``alias enable yes'' is done. ``alias enable no'' silently disables iface-alias. So, for dynamic-IP-type-connections, running ``ppp -alias -auto blah'' will work for the first connection, although existing bindings will not survive a disconnect/connect as the TCP peer will be trying to send to the old IP address - the packets won't route. It's now a lot easier to add IPXCP to ppp with minor updates to the new iface.[ch] (if anyone ever gets 'round to it). It's also now possible to manually add interface aliases with something like ``iface add 1.2.3.4/24 5.6.7.8''. This allows multi-homed ppp links :-)
|
#
1595bacd |
|
16-Sep-1998 |
Brian Somers <brian@FreeBSD.org> |
Sync with OpenBSD ifdefs
|
#
9e8ec64b |
|
04-Sep-1998 |
Brian Somers <brian@FreeBSD.org> |
Don't cast potentially unaligned addresses to pointers to non-char types on non-i386 architectures. On Alpha and Sparc we get a bus error if we do.
|
#
5a72b6ed |
|
26-Aug-1998 |
Brian Somers <brian@FreeBSD.org> |
Put the IP buffer queues into struct ipcp. Forgotten by: me
|
#
92b09558 |
|
07-Aug-1998 |
Brian Somers <brian@FreeBSD.org> |
o Support callback types NONE, E.164, AUTH and CBCP. (see the new ``set callback'' and ``set cbcp'' commands) o Add a ``cbcp'' log level and mbuf type. o Don't dump core when \T is given in ``set login'' or ``set hangup''. o Allow ``*'' and blanks as placeholders in ppp.secret and allow a fifth field for specifying auth/cbcp dialback parameters. o Remove a few extraneous #includes o Define the default number of REQs (restart counter) in defs.h rather than hardcoding ``5'' all over the place. o Fix a few man page inconsistencies.
|
#
3a2e4f62 |
|
27-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
o Fix remaining sizeof problems for 64 bit machines. o Allow ``set ....'' when we have multiple links but aren't in multilink mode. o Do a TLS when we receive a ``Open'' event in ``Closed'' state, despite the rfc state transition table. This is clearly an error in the RFC as TLS cannot have yet been called (without TLF) in the ``Closed'' state. I've posted a message to comp.protocols.ppp for confirmation.
|
#
2d42ffab |
|
27-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
More u_long -> u_int32_t
|
#
10a9be1e |
|
27-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
Remove redundant includes
|
#
615ad4f9 |
|
27-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
Don't dlopen()/dlsym() libalias, use it in the same way as the rest of the world uses libraries.
|
#
897f9429 |
|
25-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
Add ``ipcp'' as an optional argument to ``open'', and make open capable of re-negotiatiating the various layers. It is now possible to change various link options and then re-open the relevant layer, making the changes effective - for example, switching off VJ compression or starting ECHO LQRs on-the-fly.
|
#
a33b2ef7 |
|
16-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
Change some log levels. ALERTs are only logged when something that can't happen happens or when everyone needs to know. ERRORs are only logged when something unexpected happens.
|
#
c9e11a11 |
|
15-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
Fix a rather nasty use of `static'. This caused a SEGV when running ``link * load label'' as we ended up recursing back into command_Interpret after nuking our command arg list.
|
#
30291ffb |
|
15-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
Give ``load'' optional context. It's now possible to ``link 1,2,3 load label'' for people that want to set up their links in a more mpd-like manner.
|
#
ff0f9439 |
|
12-Jun-1998 |
Brian Somers <brian@FreeBSD.org> |
o Maintain a link-type mask for open datalinks as well as for all datalinks in a bundle. Ppp now deals correctly with link types that are changed while open o When changing the type of the last AUTO link, only clear the interface if we're not in PHASE_NETWORK. This allows us to switch to -ddial mode while we have a connection without suddenly unexpectedly throttling ourselves by clearing the interface configuration. Problem area noted by: Aaron Jeremias Luz <aaron@csh.rit.edu>
|
#
81358fa3 |
|
29-May-1998 |
Brian Somers <brian@FreeBSD.org> |
o Make modes consistent throughout ppp. The same strings are used in `set mode', `allow modes', on the command line and when outputting mode names. The strings are matched so that only enough characters to uniquely identify the string are required, so you can now ppp -a mylabel (for auto mode) ppp -b mylabel (for background mode) ppp -dd mylabel (for direct dial mode) etc. o Make -ddial dial when specified on the command line (oops). Pointed out by: Alex <garbanzo@hooked.net>
|
#
0f2f3eb3 |
|
23-May-1998 |
Brian Somers <brian@FreeBSD.org> |
o Move our prompt descriptor list outside of the bundle. It's now dealt with by the `server' object. This simplifies things as we only have one list of prompt descriptors and the log_ routines check prompt::logactive to determine whether it should be used for output. o Include the MP socket UpdateSet() result in bundle::UpdateSet(). o Don't select on the tun device unless we're in NETWORK phase or AUTO mode. o Stop the idle timer when we go to DEAD phase. We may have transferred a link and not had a chance to kill it. o Don't fail when trying to unlink our transferred datalink from our descriptor lists just before the transfer. o Add our link descriptor to the write set if we got a short write the last time (physical::out is set). o Log the connection source address when a connection is closed. o Remove descriptor::next field. Descriptor lists are not required any more.
|
#
641684cd |
|
20-May-1998 |
Brian Somers <brian@FreeBSD.org> |
Don't accept IPCP packets before NETWORK phase. Pointed out by: Ralf Rutherford <ralf@philips.oz.au>
|
#
0f8037a9 |
|
19-May-1998 |
Brian Somers <brian@FreeBSD.org> |
Close some file descriptors. Pointed at by: Ruslan Ermilov <ru@ucb.crimea.ua>
|
#
dd0645c5 |
|
15-May-1998 |
Brian Somers <brian@FreeBSD.org> |
o Add the `set mode' command for change a links current mode. It is not possible to switch to or from dedicated or direct mode, but all other combinations are ok (eg. -auto -> -ddial). o Cope with the fact that commands with optional context may not be able to obtain a link with command_ChooseLink() (if all links have been deleted for example). o Allow `clone'ing in non-multilink mode. We may for example want to configure two links in unilink mode and dial them both, using the one that comes up first. It's also possible to rename ``deflink'' by cloning it, deleting the original, then setting the mode of the new link.
|
#
faefde08 |
|
06-May-1998 |
Brian Somers <brian@FreeBSD.org> |
Categorize the fields in struct bundle, and make the tunnel device speed available in ``show bundle''.
|
#
610b185f |
|
05-May-1998 |
Brian Somers <brian@FreeBSD.org> |
Create `struct sticky_route'. Any `add' or `delete' command that uses MYADDR or HISADDR will be added to the sticky route list (show ipcp). When MYADDR or HISADDR change due to IPCP negotiations, and if `sroutes' is enabled (the default), all sticky route entries are updated in the routing table. The end result is that `add default hisaddr' will ``stick'', as will ``add myaddr 255.255.255.255 127.0.0.1'' and ``add 1.2.3.4 255.255.255.0 hisaddr''.
|
#
dd7e2610 |
|
01-May-1998 |
Brian Somers <brian@FreeBSD.org> |
Cosmetic: Make our external function names consistent.
|
#
6f384573 |
|
30-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Create a new ``timer'' log level. This lets us ``set log debug'' without filling our filesystem/screen with junk that we don't really want to see. o change PHYS_STDIN to PHYS_DIRECT - we can handle incoming connections that aren't on STDIN_FILENO now. o Allow return values from our FSM LayerUp functions. If LayerUp() fails, the FSM does an immediate FsmDown() without calling the fsm_parent's Layer{Up,Down} functions. o Clear the close-on-exec flag of file descriptor 3 when executing chat programs so that our documented ability to communicate with /dev/tty via that descriptor works. Also document it as descriptor 3, not 4 :-O o Allow a ``rm'' command as an alias for ``remove''. o Fix the bind()/connect()/accept() calls made by the MP server. o Create bundle_SendDatalink() and bundle_ReceiveDatalink(). This allows `struct datalink's to flatten themselves, pass through a pipe (read: the eye of a needle !) and come alive at the other end. The donator then fork()s & exec()s pppmpipe, ``passing'' the connection to another ppp instance. *** PPP NOW TALKS MULTILINK :-))) *** Our link utilization is hideous, and lots of code needs tidying still. It's also probably riddled with bugs ! It's been tested against itself only, and has hung once, so confidence isn't high....
|
#
1fa665f5 |
|
27-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Add the link name to modem diagnostics. o Create struct mpserver as part of struct mp. mpserver creates a unix-domain socket based on the peers auth name and endpoint discriminator. If it already exists, ppp will ``pass the link'' over to the owner of the socket, joining it into the bundle of another ppp invocation, otherwise ppp waits for other invocations to pass it links through this socket. The final piece of code will be the code that flattens our datalink info and passes it down this channel (not yet implemented).
|
#
e43ebac1 |
|
25-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
Make gcc-2.8.1 build ppp cleanly. Support OpenBSD again.
|
#
50abd4c8 |
|
24-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
Make ``show ipcp'' prettier and remove a few redundant includes.
|
#
d47dceb8 |
|
24-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Remove LINK level logging. o change the default link name to ``deflink'' rather than ``default''. o Prepend the link name to CCP and LCP FSM diagnostics. o Protect against 0 length options in CCP and IPCP REQ interpreters (already done for LCP). o Allow optional context for the `show' command. o Use MPs link when interpreting commands if the multilink mrru is configured rather than when multilink is active. This means that once we've ``set mrru xxx'', we then need to ``link deflink show ccp'' etc if we want to do link-level stuff (based on the command requiring optional or manditory context). o Use the ifconfig'd interface address in `set enddisc {ip,mac}' if it's there, otherwise the configuration file value.
|
#
ce828a6e |
|
23-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Add ipcp_SetLink() for attaching IPCP to the correct link, and call it after link authentication. o Pretty print our bundle MTU. o Correct MP header encoding and decoding (should be network byte order). o Add some debug diagnostics so that we can see MP fragment sending and re-assembly.
|
#
49052c95 |
|
22-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
Negotiate MRRU, SHORTSEQ and ENDDISC. ENDDISC doesn't imply multilink ('cos I've seen my ISP REQ it without multilink). Setting MRRU is ifdef'd out until it's debugged and we can merge -direct links with other running programs. Fix MTU setting.
|
#
fdf61171 |
|
20-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Remove some unused #includes. o Make sure our ipcp throughput timer is stopped before being nuked with a memset. o Don't initialise struct async & struct hdlc twice in modem_Create(). o Clarify some comments.
|
#
fe3125a0 |
|
19-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Use __attribute__ (#ifdef __GNUC__) to type-check LogPrintf() and prompt_Printf(), and fix the bits identified as being wrong as a result.
|
#
ba081e43 |
|
18-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Allocate new CCP protocol options if they've been enabled since we first REQ'd. o Delete the allocated options when CCP is down (TLF). o Clean the IPCP interface on the way down when we're *not* in auto mode (rather than when we are) - typo. o Don't produce two similar IpcpLayerUp messages.
|
#
3edeb0c6 |
|
17-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
Support client side DNS server negotiation, disabled and denied by default (POLA). o Remove ``enable'' msext. Now, doing a ``set nbns'' will automatically enable a NBNS ACK/NAK rather than a REJ. o Add accept|disable|deny|enable dns. If we ``accept'', we'll tell the peer what our nameservers are (if he asks). The values in resolv.conf can be overridden with the ``set dns'' command. If we ``enable'', we'll REQ using our resolv.conf entries, and any NAKs are written back to resolv.conf. o Remove ``show msext'' and show the relevent IP numbers in ``show ipcp''.
|
#
1342caed |
|
15-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Move the accept/deny/disable/enable globals either to the bundle (non-negotiated vars) or to their respective IPCP, LCP or CCP. o Enable rolling throughput statistics by default. o Remove the `display' command. These values now appear in `show bundle', `show ipcp', `show ccp' and `show lcp'. o Initialise auth name & key at bundle create time (oops). o Rename pppd-deflate (the id-24 hack) to deflate24. o Don't send both a REJ and a NAK to an IPCP or LCP REQ. Favour the REJ (already done at the CCP level). o Recurse in datalink_UpdateSet() when we change state, otherwise we end up setting no descriptors and getting jammed in the imminent select() instead of doing the dial/login/hangup. o Display our CHAP encryption method despite being built with DES. o Display VJ as not negotiated in ``show ipcp'' when necessary.
|
#
25092092 |
|
14-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
Pass all command arguments around with struct cmdargs rather than incrementing argv and decrementing argc. Now individual functions can determine their caller. This also removes the "prefix" hack in FindExec().
|
#
565e35e5 |
|
10-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Remove the `mode' global - it's now per physical device. o Shuffle things that live at the datalink level into ``show link'' rather than ``show modem''. o Make both ``show'' commands prettier and more consistent, and display carrier status, link type and our name in ``show modem''. o Show redial and reconnect information in ``show link'' and remove ``show redial'' and ``show reconnect''. o Down the correct link in bundle_LinkLost(). o Remove stale -direct and -background links at the end of our main loop, not when we know they're going. This prevents unexpected pointer-invalidations... o If we ``set server'' with the same values twice, notice and don't moan about failure. o Record dial script despite our link mode. The mode may be changed later (next mod) :-) We never run scripts in -direct and -dedicated modes. o Make ``set server none'' functional again. o Correct datalink state array so that we don't report an ``unknown'' state. o Pass struct ipcp to IpcpCleanInterface, not struct fsm. o Create TUN_PREFIX define rather than hard-coding in main.c o prompt_TtyInit now handles a NULL prompt for -direct mode rather than having to create one then destroy it uncleanly. o Mention our mode in the "PPP Started" LogPHASE message. o Bring all auto links up when we have something to send. o Remove some redundant Physical_*() functions. o Show which connection is running a command when logging commands. o Initialise throughput uptime correctly.
|
#
85602e52 |
|
07-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
Remove MODE_ALIAS and add AliasEnabled() macro. Remove IsInteractive().
|
#
2764b86a |
|
06-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Move alias function pointers into loadalias.c o Move Var*Version into command.c o Remove struct pppVars (and there was much rejoicing) ! o Forward-decl some structs in .h files to avoid include ordering requirements and remove a few more redundant #includes.
|
#
d24f017b |
|
06-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
Remove unused includes.
|
#
b6217683 |
|
03-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
Deglobalise `struct prompt': o Our diagnostic socket has its password set in the `set socket' line only (not in ppp.secret). o Passwords are per server socket (*VarAuthKey are gone) o Authority is per prompt (VarLocalAuth is gone). o Local logging is per prompt. o Add a `show who' command to see who's connected. No identd routine - just a `where the connection came from' display. o SIGUSR1 is disabled for now - we have no way of choosing a password for the socket created :-( Prompts are attached as a list of `struct descriptor's in struct bundle, and serviced under the bundles descriptor service routines. Ultimately, everything should be done like this. Cosmetic: o alphabeticalise SRCS in Makefile. o Add a few comments in command.h TODO: Start checking that we don't overflow the descriptor sets in select() now that we can have any number of descriptors.
|
#
8390b576 |
|
03-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Drop packets that fail the dial filter when we're in phase DEAD. They'll almost definitely have timed out by the time we dial anyway. o Log dial filters again (LogTCPIP). o Make DEBUG diagnostics for filter checking actually mean something to the common observer. o Do our best to keep any already-configured IP numbers at IPCP negotiation time. We always first request our configured IP, and if the peer asks for an invalid IP, we NAK with HISADDR Cosmetic: o Add a linefeed to the `set timeout' arg count error message. o Log unacceptable address errors to LogPHASE if LogIPCP is switched off. o Fix ``destination system not found'' error message. o Get out immediately if we get a fatal error before entering the main loop.
|
#
cd9647a1 |
|
03-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Move default MRU, MTU, ACCMAP and OPENMODE config values into struct lcp and display them in `show lcp'. o Remove `show mru' and `show mtu' and make the data part of `show lcp'. Also merge `set m[tr]u' and `set openmode' implementations into the SetVariable function. o `set timeout' only accepts the idle timer value as an argument. o Move our lqr period into struct lcp, and create a `set lqrperiod' command. Display it in `show lcp'. o Remove VarRetryTimeout, and implement it at the LCP, PAP, CHAP, CCP and IPCP levels, creating individual `set XXXretry' commands for each. They must be separate because they have different context requirements in multilink mode. o Display default config values in `show ccp'. o Tart the man page up a bit (wrt PPP/TCP, compression and LQR) and explain the new commands.
|
#
3b0f8d2e |
|
03-Apr-1998 |
Brian Somers <brian@FreeBSD.org> |
o Move struct lcp and struct ccp into struct link. o Remove bundle2lcp(), bundle2ccp() and bundle2link(). They're too resource-hungry and we have `owner pointers' to do their job. o Make our FSM understand LCPs that are always ST_OPENED (with a minimum code that != 1). o Send FSM code rejects for invalid codes. o Make our bundle fsm_parent deal with multiple links. o Make timer diagnostics pretty and allow access via ~t in `term' mode (not just when logging debug) and `show timers'. Only show timers every second in debug mode, otherwise we get too many diagnostics to be useful (we probably still do). Also, don't restrict ~m in term mode to depend on debug logging. o Rationalise our bundles' phases. o Create struct mp (multilink protocol). This is both an NCP and a type of struct link. It feeds off other NCPs for output, passing fragmented packets into the queues of available datalinks. It also gets PROTO_MP input, reassembles the fragments into ppp frames, and passes them back to the HDLC layer that the fragments were passed from. ** It's not yet possible to enter multilink mode :-( ** o Add `set weight' (requires context) for deciding on a links weighting in multilink mode. Weighting is simplistic (and probably badly implemented) for now. o Remove the function pointers in struct link. They ended up only applying to physical links. o Configure our tun device with an MTU equal to the MRU from struct mp's LCP and a speed equal to the sum of our link speeds. o `show {lcp,ccp,proto}' and `set deflate' now have optional context and use ChooseLink() to decide on which `struct link' to use. This allows behaviour as before when in non-multilink mode, and allows access to the MP logical link in multilink mode. o Ignore reconnect and redial values when in -direct mode and when cleaning up. Always redial when in -ddial or -dedicated mode (unless cleaning up). o Tell our links to `staydown' when we close them due to a signal. o Remove remaining `#ifdef SIGALRM's (ppp doesn't function without alarms). o Don't bother strdup()ing our physical link name. o Various other cosmetic changes.
|
#
1e991daa |
|
24-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
Remove some more globals: o int modem was unused. o StateNames[] is now accessed via State2Nam() o ipKeepAlive is no more. As a result, we must call FilterCheck() twice if we're doing TCP/IP logging (once when we queue and log the packet and once when we transmit it and need to know if the idle timer should be reset), but this won't be the case in normal life.
|
#
2f786681 |
|
20-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
Make struct bundle into a sort of `struct descriptor'. It does the fdsets/reads/writes for each of it's datalinks.
|
#
2267893f |
|
20-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
o Check the LCP Identifier field for correctness and drop dodgy packets by default. The old behaviour is still available with ``disable idcheck''. o Make all FSM diagnostics consistent and tidy up the way we build our LCP/CCP/IPCP requests. o Don't assume sizeof(u_long) == 4.
|
#
eaa4df37 |
|
16-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
Move VJ compression state and stats into struct ipcp.
|
#
5ca5389a |
|
16-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
Move filter sets into struct bundle.
|
#
30c2f2ff |
|
13-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
Remove more globals
|
#
5828db6d |
|
13-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
Move the IPCP into struct bundle.
|
#
879ed6fa |
|
12-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
De-staticise LQR information Increment OutPackets for any packet - not just LQRs MFC: o Fix a few comment typos. o Fix ``set timeout'' usage message and documentation. o Change ifOutPackets, ifOutOctets and ifOutLQRs to `u_int32_t's so that they wrap correctly. o Put the LQR in network byte order using the correct struct size (sizeof u_int32_t, not sizeof u_long). o Wrap LQR ECHO counters correctly. o Don't increment OutLQR count if the last LQR hasn't been replied to. o Initialise last received LQR in StartLqm. o Don't start the LQR timer if we're `disabled' and `accepted'. o Generate LQR responses when both sides are using a timer and we're not going to send our next LQR before the peers max timeout.
|
#
ab886ad0 |
|
09-Mar-1998 |
Brian Somers <brian@FreeBSD.org> |
Move the idle timer into struct bundle. There's no link-level idle timer for the moment.
|
#
5454ccd9 |
|
27-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Reset fsm.maxconfig in the *_Setup() routines.
|
#
6d666775 |
|
26-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Create struct fsm_parent. FSMs are created with one of these, and the FSM passes subsequent events to them. The datalink now hides its CCP from the bundle layer.
|
#
6eddf53e |
|
23-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Move our Layer*() FSM callbacks into their own structure.
|
#
503a7782 |
|
20-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Shuffle around our FSMs a bit. This'll make it easier to remove the CcpInfo, LcpInfo and IpcpInfo globals.
|
#
7e80369b |
|
19-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Move some FSM initialisation into FsmInit().
|
#
85b542cf |
|
09-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Move the terminal/diagnostic socket stuff out of main.c and into the new `prompt.c'. struct prompt is (of course) a `sort' of descriptor.
|
#
42d4d396 |
|
09-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
o Introduce struct descriptor. This will ultimately be a member of a list of descriptors and their handler functions on which we need to select() in the main loop. o Make struct physical into a `sort' of struct descriptor.
|
#
68a0f0cc |
|
08-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
o Add bundle_Destroy(). o Don't remove routes and DOWN the interface when we're closed in auto mode. o Initialize the FSMs in bundle_Create. o Initialize ipcp::if_mine & ipcp::if_peer only once (so that we don't forget that we've SIOCAIFADDR'd the interface). o Do a SIOCDIFADDR on the specific address to avoid hurting any other (still non-existent) NCPs. o Fix some error/diagnostic messages.
|
#
aad81d1e |
|
08-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Rename ccpstate to ccp, ipcpstate to ipcp and lcpstate to lcp.
|
#
455aabc3 |
|
07-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
o Hook the FSMs into our bundle. o The FSM layering is now more sane. o Move a lot of the NCP stuff into our ipcpstate rather than having it in the bundle, including control of the configured IP addresses. We don't need hacks like the global `linkup' variable any more as the FSM decides when our ppp.link* files get run. This is going to eventually be configurable based on FSM events anyway. o Fix a few inconsistencies when both sides require authentication. o We now have "Ppp..." and "PPp" prompts, reflecting authentication and network phase. We don't print loads of spurious prompts as we change phases any more. o Our phase is part of the bundle now. o Fix a bug where the FSM wasn't calling LayerFinish. o Close the FSM down correctly with a signal rather than slamming it down as if the line was dropped (the undocumented ``down'' command is still available though). o Remove the forgotten `tunno' variable and fix references to it.
|
#
83d1af55 |
|
05-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Isolate fsm callback functions Derive {lcp,ipcp,ccp}state structures from struct fsm where convenient. Create bundle_Down() and remove LcpDown()
|
#
6140ba11 |
|
02-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Create `struct async' and make it part of `struct physical'. This structure contains the asynchronous state of the physical link. Unfortunately, just about every .h file is included in every .c file now. Fixing this can be one of the last jobs.
|
#
42e91bc7 |
|
02-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Cosmetic: Merge the `show vj' command into `show ipcp' and make it prettier.
|
#
7a6f8720 |
|
02-Feb-1998 |
Brian Somers <brian@FreeBSD.org> |
Create `struct bundle' - the top level control structure. This structure will eventually contain a list of NCPs (currently only IPCP is supported) and a list of physical `struct link's. It will also derive from a struct link itself. Make ModemTimeout() static - it's way to dangerous to be called from outside ! Bump version to 1.9. Our first MP release should be 2.0.
|
#
7308ec68 |
|
30-Jan-1998 |
Brian Somers <brian@FreeBSD.org> |
Move the global FSMs into their relevent structures. IPCP, CCP and LCP are now just derived FSMs. Comment each of the FSM implementations so that we can tell what's going on. Revise the state transitions so that CCP and IPCP actually send terminate REQs when appropriate. The OS & IPCP layers are still like spagetti (next job).
|
#
8c07a7b2 |
|
30-Jan-1998 |
Brian Somers <brian@FreeBSD.org> |
Create `struct link' - the logical link from which `struct physical' (and the future `struct logical') are derived.
|
#
29e275ce |
|
29-Jan-1998 |
Brian Somers <brian@FreeBSD.org> |
o Move global/static IPCP data into IpcpInfo. o Use INADDR_ANY and INADDR_BROADCAST instead of 0 and 0xffffffff for IP addresses & masks. o Move struct compreq into ipcp.c (it's none of anyone elses business). o Rename MAX_STATES to MAX_VJ_STATES.
|
#
63b73463 |
|
28-Jan-1998 |
Brian Somers <brian@FreeBSD.org> |
Create a new MP branch for `multilink protocol'. Do lots of initial shuffling and grouping. Submitted by: Eivind Eklund <perhaps@yes.no>
|
#
1ae349f5 |
|
28-Jan-1998 |
cvs2svn <cvs2svn@FreeBSD.org> |
This commit was manufactured by cvs2svn to create branch 'MP'.
|
#
aa8e0519 |
|
20-Jan-1998 |
Brian Somers <brian@FreeBSD.org> |
Remove unused #includes. Make various bits static. Remove unused variables. Submitted by: eivind
|
#
49b239e0 |
|
20-Jan-1998 |
Brian Somers <brian@FreeBSD.org> |
Allow an optional delay when specifying "set openmode active". The delay defaults to 1 sec (as it always has) unless we've done a ~p in interactive mode or we've actually detected a HDLC frame. This is now cleanly implemented (via async timers) so that it is possible for LCP to come up despite the delay if an LCP REQ is received. This will hopefully solve situations with slow servers or slirp scenarios (where ECHO is left on the port for a second or so before the peer enters packet mode). Also, ~p in interactive mode no longer changes the value of the default openmode delay and -dedicated mode enters packet mode in the right state according to the value of openmode.
|
#
d1a3ea47 |
|
18-Jan-1998 |
Brian Somers <brian@FreeBSD.org> |
Allow "set vj" for changing the default number of slots and whether slot compression is requested. Don't show current values with "show ipcp" if IPCP isn't "opened".
|
#
9c97abd8 |
|
04-Jan-1998 |
Brian Somers <brian@FreeBSD.org> |
o Allow the use of HISADDR as the first arg to "add". o Allow a forth argument in ppp.secret, specifying a new label. This gives control over which section of ppp.link{up,down} is used based on the authenticated user. o Support random address ranges in ppp.secret (not just in ppp.conf). o Add a AUTHENTICATING INCOMING CONNECTIONS section to the man page. o Add a bit more about DEFLATE in the man page. o Fix the incorrect "you must specify a password in interactive mode" bit of the manual. o Space things in the man page consistently. o Be more precice about where you can use MYADDR, HISADDR and INTERFACE in the "add" command documentation.
|
#
e7250038 |
|
27-Dec-1997 |
Brian Somers <brian@FreeBSD.org> |
Show who closes the diagnostic connection. Show the IP range (if specified) in "show ipcp". Close unused descriptors 0 and 2 in interactive mode. Pass (size_t *) rather than (int *) to sysctl().
|
#
70ee81ff |
|
24-Dec-1997 |
Brian Somers <brian@FreeBSD.org> |
Cosmetic (style): sizeof(var) -> sizeof var sizeof type -> sizeof(type) Suggested by: J Wunsch <j@uriah.heep.sax.de>
|
#
f9925914 |
|
24-Dec-1997 |
Brian Somers <brian@FreeBSD.org> |
Use sizeof cftypes128 for NCFTYPES128 macro, not sizeof cftypes ! Lucky that sizeof cftypes < sizeof cftypes128
|
#
f5fb6bd0 |
|
18-Dec-1997 |
Brian Somers <brian@FreeBSD.org> |
If the peer asks for IP 0.0.0.0, choose an IP ourselves without looking for it in our IP list (and if found, trying to ifconfig it!).
|
#
bcc332bd |
|
12-Dec-1997 |
Brian Somers <brian@FreeBSD.org> |
Allow random IP number allocation to peer. Validate the peers suggested IP by attempting to make a routing table entry. Give up IPCP negotiation if the peer NAKs us with an unusable IP. Always SIOCDIFADDR then SIOCAIFADDR when configuring the tun device. Using SIOCSIFDSTADDR allows duplicate dst addresses (which we don't want)!!! Allow up to 200 interface names (was 50) (now that ppp can play server properly). Up the version number (1.5 -> 1.6). Cosmetic: Log unexpected CCP packets in the CCP log rather than the ERROR log. Log unexpected Config Reqs in the appropriate LCP/IPCP/CCP log rather than the ERROR log. Log failed route additions and deletions with WARN, not TCPIP. Log the option id and length for unrecognised IPCP options. Change some .Sq to .Ar in the man page.
|
#
b6871831 |
|
06-Dec-1997 |
Brian Somers <brian@FreeBSD.org> |
Correct cftypes128 index.
|
#
702026bc |
|
04-Dec-1997 |
Brian Somers <brian@FreeBSD.org> |
Remove duplicate REJECTED macro. Remove extraneous pointers.
|
#
0053cc58 |
|
03-Dec-1997 |
Brian Somers <brian@FreeBSD.org> |
Abstract the CCP layer a level. Add DEFLATE support.
|
#
b6e82f33 |
|
21-Nov-1997 |
Brian Somers <brian@FreeBSD.org> |
Fix prototypes. Remove extraneous decls. Add ``const'' to several places. Allow ``make NOALIAS=1'' to remove IP aliasing. Merge with OpenBSD - only the Makefiles vary. We can now survive a compile with -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wredundant-decls -Wshadow -Wstrict-prototypes -Wwrite-strings -Wchar-subscripts (although the Makefile just contains -Wall).
|
#
9a0b991f |
|
18-Nov-1997 |
Brian Somers <brian@FreeBSD.org> |
Add throughput logging (disabled by default). Use "enable throughput" to see modem & IPCP throughput. Removed an extraneous prompt()
|
#
9e836af5 |
|
14-Nov-1997 |
Brian Somers <brian@FreeBSD.org> |
Update the cftypes arrays according to rfc1700. Log IPCP reqests as IPCP.
|
#
12ef29a8 |
|
11-Nov-1997 |
Brian Somers <brian@FreeBSD.org> |
Finish the security improvements: o Add "allow" command: "allow users a b c" gives access to users a, b and c. "allow modes auto" gives those users access to auto mode only. "allow users *" and "allow modes *" are accepted. No users and all modes are allowed by default. UID 0 can do anything. o Set the current label with the "load" and "dial" commands so that the call to ppp.linkdown makes sense. o Up the verison number. o Don't OR MODE_AUTO for -background and -ddial. o Don't OR MODE_INTER when we get a diagnostic connection. o Allow up to 40 args per line (was 20). o "set ifaddr" only changes the interface in AUTO mode (with other modes, it happens after IPCP negotiation). o Sort command descriptions in the man page. o Support -dedicated mode where we just talk ppp forever (no login etc).
|
#
9780ef31 |
|
07-Nov-1997 |
Brian Somers <brian@FreeBSD.org> |
Don't pass global vars as args. Remove local/global conflicts.
|
#
0fe7ca31 |
|
28-Oct-1997 |
Brian Somers <brian@FreeBSD.org> |
o Bump version to 1.3 to reflect major changes o Report modem connect time properly o Report bytes in/out over physical media o Fix phases (TERMINATE is *higher than* DEAD) o Do a LayerFinish from LcpDown o Bring down IPCP & CCP when we enter PHASE_TERMINATE o Give a new prompt when we go to PHASE_DEAD o Stop the modem timer properly when idle o Treat sig 15 like an exiting carrier loss o Log (DEBUG) offline & online transitions
|
#
6eaa6ac5 |
|
25-Oct-1997 |
Brian Somers <brian@FreeBSD.org> |
Cosmetic: Move prototypes into the correct headers.
|
#
75240ed1 |
|
25-Oct-1997 |
Brian Somers <brian@FreeBSD.org> |
Cosmetic (no functional changes): o Add missing $Id$s o Move extern decls from .c -> .h files o Staticize o Remove #includes from .h files o style(9)ify includes o bcopy -> memcpy bzero -> memset bcmp -> memcmp index -> strchr rindex -> strrchr o Move timeout.h -> timer.h (making it consistent w/ timer.c) o Add -Wmissing-prototypes
|
#
ee5c6273 |
|
16-Oct-1997 |
Brian Somers <brian@FreeBSD.org> |
Ask for VJ slot id compression by default.
|
#
03604f35 |
|
06-Oct-1997 |
Brian Somers <brian@FreeBSD.org> |
Support VJ maximum slot identifiers != 15. Support VJ slot id compression. Previously, ppp would negotiate a max slot between 2 & 15 (if asked), and would agree to slot id compression (if asked). It would then proceed to use 16 slots and no compression anyway. The result was a rather unusable connection.
|
#
5b4c5b00 |
|
02-Sep-1997 |
Brian Somers <brian@FreeBSD.org> |
Bring CCP and IPCP layers down properly when LCP comes down. Give a count of bytes sent/received in IPCP log.
|
#
afc7fa2c |
|
31-Aug-1997 |
Brian Somers <brian@FreeBSD.org> |
Cosmetic: Make LogPrintf() calls consistent.
|
#
944f7098 |
|
24-Aug-1997 |
Brian Somers <brian@FreeBSD.org> |
Make the code format more in line with style(9). Update loadalias to use the new libalias api. Update to version 1.1.
|
#
cb611434 |
|
20-Aug-1997 |
Brian Somers <brian@FreeBSD.org> |
Expand the "set stopped" command so that it can idependently time out any of the FSMs. Split LCP logging into LCP, IPCP and CCP logging, and make room in "struct fsm" for the log level that the state machine should use.
|
#
3f6fd923 |
|
18-Aug-1997 |
Brian Somers <brian@FreeBSD.org> |
Correct the forth arg to "set ifaddr". If specified, it gives the IP number that should be used for initial IPCP config requests, irrespective of MYADDR.
|
#
4eb8b164 |
|
29-Jul-1997 |
Brian Somers <brian@FreeBSD.org> |
Set up the alias address before executing the contents of ppp.linkup.
|
#
4ef16f24 |
|
25-Jun-1997 |
Brian Somers <brian@FreeBSD.org> |
Add "set server" to control the server socket. Catch SIGUSR1 to re-init listening socket. Document signal behaviour. Add missing '\n's to LogPrintf(LogWARN,...) Main() returns int not void. AF_LOCAL ideal suggested a long time ago by: joerg
|
#
927145be |
|
08-Jun-1997 |
Brian Somers <brian@FreeBSD.org> |
Overhaul ppp: o Use syslog o Remove references to stdout/stderr (incl perror()) o Introduce VarTerm - the interactive terminal or zero o Allow "set timeout" to affect current session o Change "set debug" to "set log" o Allow "set log [+|-]flag" o Make MSEXT and PASSWDAUTH stuff the default o Move all #ifdef DEBUG stuff into the code - this shouldn't be too much overhead. It's now controlled with "set log +debug" o Add "set log command, debug, tun, warn, error, alert" o Remove cdefs.h, and assume an ansi compiler. o Improve all diagnostic output o Don't trap SIGSEGV o SIGHUP now terminates again (log files are controlled by syslog) o Call CloseModem() when changing devices o Fix parsing of third arg of "delete" I think this fixes the "magic is same" problems that some people have been experiencing. The man page is being rewritten. It'll follow soon.
|
#
6ed9fb2f |
|
25-May-1997 |
Brian Somers <brian@FreeBSD.org> |
De-couple ppp from libalias. If libalias isn't there, the alias commands simply won't work. Only root may specify the location of the alias lib (otherwise, it's hard-coded). Make logprintf silently fail if LogOpen hasn't been called. Suggested by: eivind
|
#
25aa96ac |
|
24-May-1997 |
Brian Somers <brian@FreeBSD.org> |
Fix the reconnect option, and add an explanation to vars.h
|
#
6db75539 |
|
22-May-1997 |
Brian Somers <brian@FreeBSD.org> |
Use the latest alias engine - now in libalias. Submitted by: Charles Mott <cmott@srv.net>
|
#
6efd9292 |
|
18-May-1997 |
Brian Somers <brian@FreeBSD.org> |
Mega update to sort out bad implementations of reconnect & -background. o Fix reconnect anomolies. o Make reconnect apply to failed LQR hangups (& mention in man page). o Make reconnect effective in -background mode. o Listen on socket in -background mode. o Try all phone numbers in -background mode. o Insist on system arg in -background mode. o Make a control-connection close command exit in -background mode. o Output status message to stdout on exit of parent in -background mode. o Don't notify parent of success too soon. o Describe termination EX_* code. o Miscelaneous diagnostic corrections. o Remove redundant connect_time from modem.c. o Don't repeatedly DownConnection().
|
#
290281ed |
|
10-May-1997 |
Andrey A. Chernov <ache@FreeBSD.org> |
Cosmetique fixes: shorten help message to fit the screen return to prompt from "show ipcp"
|
#
057df964 |
|
10-May-1997 |
Brian Somers <brian@FreeBSD.org> |
Refuse to negotiate HISADDR of 0.0.0.0 (NAK it) Submitted by: NAKAMURA Motonori <motonori@econ.kyoto-u.ac.jp>
|
#
274e766c |
|
09-May-1997 |
Brian Somers <brian@FreeBSD.org> |
Tidy up the code - bounds checking, return value checking etc. Submitted by: eivind
|
#
476602a9 |
|
22-Feb-1997 |
Peter Wemm <peter@FreeBSD.org> |
Revert $FreeBSD$ to $Id$
|
#
1130b656 |
|
14-Jan-1997 |
Jordan K. Hubbard <jkh@FreeBSD.org> |
Make the long-awaited change from $Id$ to $FreeBSD$ This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
|
#
99c02d39 |
|
10-Jan-1997 |
Warner Losh <imp@FreeBSD.org> |
Fix many buffer overruns in the code. Specifically, disallow ExpandString to be used to expand things beyond the size of the buffer passed in. Also do a general cleanup of sprintf -> snprintf as well as strcpy and strncat safety. Also expand some buffers to allow for the largest possible data that might be used. This is a 2.2 candidate. However, it needs to be vetted on -current since little testing has been done on this due to my lack of PPP on this machine. Reviewed by: Jordan Hubbard, Peter Wemm, Guido van Rooij
|
#
a9f484e5 |
|
12-Dec-1996 |
Jordan K. Hubbard <jkh@FreeBSD.org> |
The infamous IP aliasing code for ppp, modified to work as a runtime option (otherwise ppp's behavior remains unchanged) and documented by myself, Steve Sims, Nate Williams, Martin Renters and god-only-knows who else. :-) Submitted by: nate Obtained from: Charles Mott <cmott@srv.net>
|
#
d8e55738 |
|
06-Oct-1996 |
Jordan K. Hubbard <jkh@FreeBSD.org> |
Add support for the Evil Microsoft ppp extentions. Yes, they did it on their own without even attempting to get concensus in the IETF, but there are also lots of Win95/NT boxes out there. CLoses PR#1494 Submitted-By: Peter Childs <pjchilds@imforei.apana.org.au>
|
#
9c749ffb |
|
11-May-1996 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Here is a diff of /usr/src/usr.sbin/ppp against current. The diffs add some logging functionality which I find very useful. 'set debug link' will record just link up/down and address assignments. 'set debug connect' will record the entire chat dialog 'set debug carrier' will record just chat lines including 'CARRIER' (so that I can be sure I'm getting a 28.8 line). There was a global change required to permit LogPrintf to take a bit mask instead of a bit position value (to permit logging some events on either of two flags, so that no change in 'set debug lcp' would result from the code supporting 'link'. Thus the diffs are rather long for such a small change. The man page is also touched. Oh, and there was a slight syntax problem in route.c Reviewed by: phk Submitted by: Tony Kimball <alk@Think.COM>
|
#
ed6a16c1 |
|
11-Jan-1996 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Final cleanup for now. -Wall is now silent. A couple of bogons found.
|
#
549d663d |
|
08-Jul-1995 |
Atsushi Murai <amurai@FreeBSD.org> |
Some implementation of PPP are required that starting a negotiaion by sending *special* value as my address, even though the standard of PPP is defined full negotiation based. (e.g. "0.0.0.0" or Not "0.0.0.0")
|
#
0fe81aaf |
|
03-Jul-1995 |
David Greenman <dg@FreeBSD.org> |
Don't convert 0.0.0.0 into 192.0.0.1. I can find no sane reason to do this.
|
#
709e8f9a |
|
29-May-1995 |
Rodney W. Grimes <rgrimes@FreeBSD.org> |
Remove trailing whitespace.
|
#
84b8a6eb |
|
11-Mar-1995 |
Atsushi Murai <amurai@FreeBSD.org> |
1.Reducing cpu usage at off connection. 2.Implment Redail function as working correctly. 3.Clean up a code as I notice. 4.Now, RTT getting close to 50ms with ISDN/TA 38400bps !! Reviewed by: amurai@spec.co.jp Submitted by: amurai@spec.co.jp
|
#
53c9f6c0 |
|
25-Feb-1995 |
Atsushi Murai <amurai@FreeBSD.org> |
New user Process PPP based on iij-ppp0.94beta2. o Supporting SYNC SIO device (But need a device driver) - add "set speed sync" o Fixing bug for Predictor-1 function. o Add new parameter that re-sent interval for set timeout commands. o Improving RTT (Round Trip Time) and reducing processor time. - Previous Timer service was using polling, and now using SIGALRM ;-) - A 0.94beta2 will not work correctly.... -- Follows are additinal feature not including 0.94beta2 o Support Proxy ARP - add "enable/disable proxy" commands o Marging common routine in CHAP/PAP. o Enhancing LCP/IPCP log information. o Support local Authfication connection on port 300x and tty. - You can set up pair of your "hostname -s" and password in ppp.secret. if either ppp.secret file nor your hostname line don't exist, It will notify a message and working as same as previous version.(Backword compatibility) - If you did set up them, It's allow connection but nothing to do except help and passwd command. - add "passwd yourpasswd" commands o Support afilter - keep Alive filter that a packet can send/receiving according to ifilter/ofilter but doesn't count it as preventing idle timer expires. - Same syntax of other filters. o Fixing bugs reported by current user for previous one. Thanks !! Reviewed by: Atsushi Murai (amurai@spec.co.jp)
|
#
af57ed9f |
|
30-Jan-1995 |
Atsushi Murai <amurai@FreeBSD.org> |
|