Commit Graph

1441 Commits

Author SHA1 Message Date
sjg
6d37b86f2b Updated dependencies 2013-03-11 17:21:52 +00:00
sjg
0ee5295509 Updated dependencies 2013-02-16 01:23:54 +00:00
obrien
3028e3f8ab Sync with HEAD. 2013-02-08 16:10:16 +00:00
glebius
7f832c3059 Retire struct sockaddr_inarp.
Since ARP and routing are separated, "proxy only" entries
don't have any meaning, thus we don't need additional field
in sockaddr to pass SIN_PROXY flag.

New kernel is binary compatible with old tools, since sizes
of sockaddr_inarp and sockaddr_in match, and sa_family are
filled with same value.

The structure declaration is left for compatibility with
third party software, but in tree code no longer use it.

Reviewed by:	ru, andre, net@
2013-01-31 08:55:21 +00:00
eadler
9860195389 A number of places in the source tree still reference cuad.* after
sio(4) was deprecated by uart(4).

s/cuad/cuau/g/

PR:		docs/171533
Reviewed by:	imp
Approved by:	cperciva (implicit)
MFC after:	3 weeks
2012-12-08 22:16:36 +00:00
sjg
778e93c51a Sync from head 2012-11-04 02:52:03 +00:00
eadler
3f7a414911 remove duplicate semicolons where possible.
Approved by:	cperciva
MFC after:	1 week
2012-10-22 03:00:37 +00:00
n_hibma
5f97c24afc Some 3G modems return the wrong signature in echo packets and make it
impossible to use LQR/ECHO. They return want_magic instead.

With this change it is now possible to use

	enable lqr
	set lqrperiod 5
	enable echo
	set echoperiod 5

in your ppp.conf file.

MFC after:	3 days
2012-10-12 22:48:33 +00:00
joel
b53fed96a2 mdoc fixes. 2012-09-08 08:46:43 +00:00
marcel
9dd41e3647 Sync FreeBSD's bmake branch with Juniper's internal bmake branch.
Requested by: Simon Gerraty <sjg@juniper.net>
2012-08-22 19:25:57 +00:00
delphij
884daaab74 Fix build:
- Use %ll instead of %q for explicit long long casts;
 - Use %j instead of %q in XFS and cast to intmax_t.

Tested with:	make universe
2012-05-23 06:49:50 +00:00
kevlo
1381e63d6c Handle NULL return from crypt(3). Mostly from DragonFly 2012-02-22 06:27:20 +00:00
eadler
f90254c48e Fix warning when compiling with gcc46:
error: variable 'len' set but not used

Approved by:	dim, cperciva (mentor, blanket for pre-mentorship already-approved commits)
MFC after:	3 days
2012-01-20 01:37:49 +00:00
eadler
925e5603f6 Fix warning when compiling with gcc46:
error: variable 'extra_async_bytes' set but not used

Approved by:    dim, cperciva (mentor, blanket for pre-mentorship already-approved commits)
MFC After:	3 days
2012-01-20 01:37:39 +00:00
eadler
903faae9f3 Fix warning when compiling with gcc46:
error: variable 'addrs' set but not used

Approved by:	dim
Approved by:	cperciva (mentor, blanket for pre-mentorship already-approved commits)
MFC After:	3 days
2012-01-20 01:37:31 +00:00
uqs
415a3a9b96 Spelling fixes for usr.sbin/ 2011-12-30 10:58:14 +00:00
kevlo
80dd636e8f Remove duplicated header files 2011-06-24 07:05:20 +00:00
brian
b1195ff906 Add "iface name" and "iface description" commands.
PR:		151400
Submitted by:	Aragon Gouveia - aragon at phat dot za dot net with minor fixes
MFC after:	3 weeks
2011-02-07 11:18:18 +00:00
glebius
c6383206ce Log if fopen() fails.
Reviewed by:	brian
2010-10-18 07:28:53 +00:00
n_hibma
1d31aa9c66 Bugfix: Reset the packet counters at the same time as the byte counts.
Reviewed by:	brian
MFC after:	3 weeks
2010-09-18 22:26:50 +00:00
jhb
7909344bdf Ethernet vlan(4) interfaces have valid Ethernet link layer addresses but
use a different interface type (IFT_L2VLAN vs IFT_ETHER).  Treat IFT_L2VLAN
interfaces like IFT_ETHER interfaces when handling link layer addresses.

Reviewed by:	syrinx (bsnmpd)
MFC after:	1 week
2010-08-06 15:09:21 +00:00
qingli
6590bbf7a7 Need to set the proper flag bit when inserting ARP
entries into the kernel.

MFC after:	3 days
2010-03-18 00:23:39 +00:00
antoine
88ba3732f5 Unbreak world WITHOUT_NETGRAPH.
PR:		137487
Submitted by:	bf (previous version)
No objections:	net@
MFC after:	2 weeks
2010-01-16 12:20:26 +00:00
ed
e1ca659242 Port ppp(8) to utmpx.
A nice thing about utmpx is that it makes it very easy to log sessions
that don't use TTYs. This is because the file is not indexed by TTY
slots anymore.

Silence from:	brian
2010-01-13 17:54:32 +00:00
trasz
0738292d17 Don't refer to pppd(8). 2009-12-28 09:37:33 +00:00
brian
998b5231f2 Document that ppp handles pipe(2) descriptors specially in -direct mode.
MFC after:	3 days
2009-08-25 07:52:09 +00:00
brian
217ee8b4b8 When ``ppp -direct'' is invoked by a program that uses pipe(2) to
create stdin and stdout, don't blindly try to use stdin as a bi-directional
channel.  Instead, detect the pipe and set up a special exec handler
that indirects write() calls through stdout.

This fixes the problem where ``set device "!ssh -e none host ppp
-direct label"'' no longer works with an openssh-5.2 server side as
that version of openssh ignores the USE_PIPES config setting and
*always* uses pipes (rather than socketpair) for stdin/stdout channels.

MFC after:	3 days
2009-08-24 17:19:45 +00:00
brian
713a988257 When realloc()ing device memory for transfer to another ppp process,
don't continue to use the realloc()d pointer - it might have changed!

Remove some stray diagnostics while I'm here.

MFC after:	3 days
2009-08-24 17:18:17 +00:00
brian
ec40877eda Don't get stuck in an infinite loop comparing (short++ <= maxshort)
PR:		136893
Submitted by:	Aragon Gouveia - aragon at phat dot za dot net (mostly)
Approved by:	re (kib)
MFC after:	3 weeks
2009-07-19 19:01:30 +00:00
brian
eeddcf1cf5 Add a missing phrase.
Submitted by:	Jason McIntyre jmc at kerhand dot co dot uk
Approved by:	re (kib)
Obtained from:	OpenBSD
MFC after:	3 weeks
2009-07-05 16:55:57 +00:00
brian
a49cea262e Fix a race that can stall the timer when we remove a timer that has another
timer with a <0.05 second delta next to it.

This is done by avoiding the possibility of updating the first residual
time delta in the timer list to zero.

PR:		102747
Submitted by:	Sergey Zaharchenko - doublef-ctm at yandex dot ru
MFC after:	3 weeks
2009-05-26 07:32:08 +00:00
bz
ab7aea9843 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
2009-04-20 14:38:48 +00:00
bz
c47c606500 While we currently still seem to have a gateway address, for future
stability, check for gw to be set before adding the flag and the address
to the routing message.

r186308, backed out in r191305, already tried to do that, and in addition
ignore AF_LINK types of gateway addresses to work around a problem that
r167797 had introduced on the kernel side always setting RTF_GATEWAY if a
gateway address was passed into the kernel.
The proper solution for this is still under discussion so I am hesitant to
re-add the special AF_LINK treatment for now.

MFC after:	3 days
2009-04-20 11:51:35 +00:00
bz
1a4d93caae Back out r186308:
in case of AF_LINK, which the kernel still returns for an RTAX_GATEWAY
as an empty sockaddr_dl in the classic tun<n> case.
Copying the address into the message payload, but not the RTA_GATEWAY
flag results in rt_xaddrs() in the kernel tripping over that and parsing
the next attribute set with a flag, i.e. RTA_NETMASK, with the gateway
address, resulting in bogus route entry.

MFC after:	3 days
2009-04-20 11:22:51 +00:00
bz
6c258d0e98 In case the peer address was already configured on the interface
we were not properly handling proxy arp. Make sure we (try to) add
the proxy arp entry/entries in this case as well.

PR:		bin/131250
Submitted by:	loos.br gmail.com (Luiz Otavio O Souza)
MFC after:	3 days
2009-04-13 17:57:12 +00:00
qingli
fba34872ec The ppp application relies on the if_tun interface to properly
install a p2p host route between the end points. The ppp module
upates this router based on user configuration later on. The
rt_Update() seems to always set the RTF_GATEWAY flag, which is
broken.
2008-12-19 01:37:20 +00:00
qingli
ec826ad5c7 This main goals of this project are:
1. separating L2 tables (ARP, NDP) from the L3 routing tables
2. removing as much locking dependencies among these layers as
   possible to allow for some parallelism in the search operations
3. simplify the logic in the routing code,

The most notable end result is the obsolescent of the route
cloning (RTF_CLONING) concept, which translated into code reduction
in both IPv4 ARP and IPv6 NDP related modules, and size reduction in
struct rtentry{}. The change in design obsoletes the semantics of
RTF_CLONING, RTF_WASCLONE and RTF_LLINFO routing flags. The userland
applications such as "arp" and "ndp" have been modified to reflect
those changes. The output from "netstat -r" shows only the routing
entries.

Quite a few developers have contributed to this project in the
past: Glebius Smirnoff, Luigi Rizzo, Alessandro Cerri, and
Andre Oppermann. And most recently:

- Kip Macy revised the locking code completely, thus completing
  the last piece of the puzzle, Kip has also been conducting
  active functional testing
- Sam Leffler has helped me improving/refactoring the code, and
  provided valuable reviews
- Julian Elischer setup the perforce tree for me and has helped
  me maintaining that branch before the svn conversion
2008-12-15 06:10:57 +00:00
ed
64b4dcdc79 Make ppp use <termios.h>, not <sys/tty.h>.
ppp's physical.c is filled with calls to termios. For some reason, it
includes <sys/tty.h>, not <termios.h>. Even though this works with the
current version of FreeBSD, we'd better follow the standards.

Approved by:	philip (mentor)
2008-06-05 17:46:32 +00:00
bz
6bba9b4244 Remove ISDN4BSD (I4B) from HEAD as it is not MPSAFE and
parts relied on the now removed NET_NEEDS_GIANT.
Most of I4B has been disconnected from the build
since July 2007 in HEAD/RELENG_7.

This is what was removed:
- configuration in /etc/isdn
- examples
- man pages
- kernel configuration
- sys/i4b (drivers, layers, include files)
- user space tools
- i4b support from ppp
- further documentation

Discussed with: rwatson, re
2008-05-26 10:40:09 +00:00
piso
f2e5e0ae45 Update to the "new" libalias API (and thus fix world breakage). 2008-03-12 14:34:34 +00:00
des
c9107e1677 Revert previous commit and fix OpenPAM issue properly. 2007-12-22 19:29:32 +00:00
kmacy
0c072476c7 Fix/workaround build breakage caused by PAM import
struct pam_conv takes a void * for the appdata_ptr  but is being passed
a const char * - explicitly cast away the const
2007-12-21 21:47:19 +00:00
jb
30baf38e0e Use uintptr_t to cast a pointer to an integer to avoid compiler warnings
on processors where sizeof(void *) > sizeof(int).
2007-11-17 23:14:06 +00:00
bz
88f7f9d4f1 I4B header files are now installed in include/i4b/ and no longer
in include/machine/.

Adapt #include paths.

Approved by:	re (kensmith)
2007-07-06 07:21:56 +00:00
brueffer
efb0bae1f0 Cleanup after previous commit. 2007-05-25 16:05:17 +00:00
novel
60802ef7dc Add a new option for ppp.conf: rad_port_id. It allows to
change the way of what ppp submits to the RADIUS server
as NAS-Port-Id. Possible options are: the PID of the process
owning the corresponding interface, tun(4) interface number,
interface index (as it would get returned by if_nametoindex(3)),
or it's possible to keep the default behavior. Check the ppp(8)
manual page for details.

PR:		bin/112764
Submitted by:	novel (myself)
Reviewed by:	flz
Approved by:	flz
MFC after:	1 month
2007-05-25 13:45:49 +00:00
ume
c98add932d Check the return value from rad_cvt_ipv6prefix().
PR:		bin/89808
MFC after:	1 week
2007-03-01 16:13:56 +00:00
ticso
d1730bc2bb MFp4: struct fsm_opt_hdr needs to be __packed as it is used as an array for
handling wire data
	This is required to get ppp working on arm.
2007-01-05 00:33:00 +00:00
ume
0f4b1054e7 Listen to a control socket on an IPv4 as well through
an IPv4-mapped IPv6 address.

Reported by:	Julian H. Stacey <jhs__at__flat.berklix.net>
Test by:	Julian H. Stacey <jhs__at__flat.berklix.net>
MFC after:	1 week
2006-09-18 03:50:30 +00:00
brian
3e9b75279e Remove leading zeros
Suggested by:	mdoc police (ru)
2006-09-06 15:58:59 +00:00
brian
1b7ae73acb Remove __DATE__ so that compiling the same source produces the same binary
(for non-static binaries at least).
2006-09-06 06:33:39 +00:00
brian
66eb15d8c9 If the peer REJects our MRU request and that request is for a value
less than the current MTU, set our mtu to the value requested.
2006-09-06 06:23:55 +00:00
ru
388e590f95 Reimplementation of world/kernel build options. For details, see:
http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html

The src.conf(5) manpage is to follow in a few days.

Brought to you by:	imp, jhb, kris, phk, ru (all bugs are mine)
2006-03-17 18:54:44 +00:00
brian
d906cc2e79 Fix a typo
Obtained from:	OpenBSD
2005-09-22 11:18:30 +00:00
brian
9496bf8e94 Remove this file as it's mostly out of date. Up-to-date info such as
the program's origin is already in the man page.

Update requested by:	Xavier Venient & Jason McIntyre
2005-09-12 11:20:07 +00:00
ume
e33ba03345 NI_WITHSCOPEID cleanup. Neither RFC 2553 nor RFC 3493 defines
NI_WITHSCOPEID, and our getaddrinfo(3) does nothing special
for it, now.
2005-05-13 16:31:11 +00:00
brian
491568ac84 The kernel doesn't need to include a tun device - the module will be loaded
on demand if required.
2005-05-06 16:13:32 +00:00
jcamou
3bf9a5c584 Update the manual page for ppp(8).
PR:		docs/78605
Submitted by:	John E. Hein <jhein@timing.com>
Approved by:	trhodes (mentor)
MFC after:	1 day
2005-04-28 22:31:37 +00:00
brian
93764b6de1 Be concerned about huge callback numbers by truncating them rather than
scribbling past the end of our buffer.

Problem spotted by:	Damien COUDERC couderc at openbsd dot org
2005-02-15 10:59:54 +00:00
ru
6b6b8c04f6 Expand contractions. 2005-02-13 23:45:54 +00:00
ru
1541af42f1 Expand *n't contractions. 2005-02-13 22:25:33 +00:00
brian
eb15e06dbf Use the correct length when copying trailing data!!
PR:		77104
Submitted by:	Martin Birgmeier martin at email dot aon dot at
MFC after:	3 days
2005-02-08 10:38:24 +00:00
brian
20455e62c2 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
2005-01-27 14:09:33 +00:00
ru
3666aefb6a Fixed xref. 2005-01-21 10:48:35 +00:00
ru
16dc33fabf Scheduled mdoc(7) sweep. 2005-01-11 11:47:22 +00:00
brian
02b9a88899 Use the standard BSD copyright as per OpenBSD and /sys/net/slcompress* 2005-01-10 11:47:17 +00:00
brian
48fd8924bb Cast unsigned variables to int 2005-01-10 11:12:36 +00:00
brian
bd90e346ec ifr_flagshigh is FreeBSD specific 2005-01-10 11:12:10 +00:00
brian
7b52fab5af Integrate some OpenBSD alignment fixes. This hopefully also fixes PR 38058...
Obtained from:	Brad <brad@comstyle.com>
2005-01-10 09:48:51 +00:00
ru
c8158555ed NOPAM -> NO_PAM 2004-12-21 12:49:24 +00:00
ru
b74e87102d Overhaul ppp(8) build options so they are safe to use in
/etc/make.conf:

NOALIAS -> retired (support provided by PPP_NO_NAT)
NOATM -> PPP_NO_ATM (also subject to NO_ATM global)
NODES -> PPP_NO_DES (support was broken, now recovered)
NOI4B -> PPP_NO_I4B (also subject to NO_I4B global)
NOKLDLOAD -> PPP_NO_KLDLOAD
NONAT -> PPP_NO_NAT
NONETGRAPH -> PPP_NO_NETGRAPH
NOPAM -> PPP_NO_PAM (will be subject to NO_PAM global)
NORADIUS -> PPP_NO_RADIUS
NOSUID -> retired (support provided by PPP_NO_SUID)
PPP_NOSUID -> PPP_NO_SUID
2004-12-21 12:01:15 +00:00
ru
618fb8df63 The C define is NONAT. 2004-12-21 11:12:05 +00:00
ru
5c04306fea NOINET6 -> NO_INET6 2004-12-21 10:49:29 +00:00
ru
f4c44b761b NOCRYPT -> NO_CRYPT 2004-12-21 10:16:04 +00:00
ru
3b01b84505 NOATM -> NO_ATM 2004-12-21 09:08:06 +00:00
roam
057c46b46b Describe the special meaning of the $ and ~ characters, and the fact
that you can get around it by double-quoting them.

PR:		42762
Submitted by:	AIDA Shinra <aida-s@jcom.home.ne.jp>
Discussed with:	brian
2004-12-16 16:59:19 +00:00
brian
8c9a4071f7 Implement an ``enable/disable echo'' option, defaults to off.
This allows LCP ECHOs to be enabled independently of LQR reports.

Note: This introduces a change in the default behaviour (search for lqr and
echo in the man page).  I'll update UPDATING to reflect this.

PR:		74821
2004-12-13 12:51:19 +00:00
brian
5cb5074262 Send NAS-IP-Address as well as NAS-Identifier
Add ``disable NAS-IP-Address'' and ``disable NAS-Identifier'' options to
support pre-rfc2865 RADIUS servers.
This pushes our enable/disable items over the 32 bit limit, so reoganise
things to allow a bunch more options.
Go to version 3.4.1 so that any compatability problems can be identified.
2004-11-29 17:11:15 +00:00
obrien
b9dd8b026d Catch up with PHK's sio(4) cuaa->cuad rework [sys/dev/sio/sio.c rev. 1.456].
PR:		73879
Submitted by:	Steve Kargl <sgk@troutmask.apl.washington.edu>
2004-11-19 03:56:47 +00:00
ru
5db2b9d5b3 For variables that are only checked with defined(), don't provide
any fake value.
2004-10-24 15:33:08 +00:00
brian
0f52c1eaeb Handle a malloc() failure when allocating urgent ports
PR:		59995
2004-10-11 10:21:53 +00:00
brian
fb00aab954 Add a bunch of malloc() return checks
PR:		71592
Submitted by:	Dan Lukes <dan@obluda.cz> with further changes
2004-10-11 09:45:58 +00:00
ru
e41803bc80 Fixed the NONETGRAPH build.
Reported by:	wsk@gddsn.org.cn
2004-09-13 19:04:03 +00:00
phk
d0dc76864c Mark bundle as unused in case we're compiled with NORADIUS. 2004-09-07 15:48:27 +00:00
marcel
37548aa244 Fix the NOSUID build: make sure we have the kldload(2) prototype. 2004-09-07 06:28:00 +00:00
brian
6cdf323e29 Build with -DNOINET6... 2004-09-06 23:54:54 +00:00
marcel
90a7523335 Reduce WARNS level to 3. Casting causes alignment warnings on platforms
with strong alignment (All 64-bit platforms, except amd64).
2004-09-06 05:57:42 +00:00
marcel
61ba6dfa5f Fix the build on 64-bit platforms. 2004-09-06 00:07:58 +00:00
brian
6fde2674d9 Fix a warning
Submitted by: Stefan Farfeleder <stefanf at FreeBSD dot org>
2004-09-05 12:32:20 +00:00
brian
6f864d0a97 Make ppp WARNS=5 clean 2004-09-05 01:46:52 +00:00
cperciva
e629b37603 Join the 21st century: Cryptography is no longer an optional component
of releases.  The -DNOCRYPT build option still exists for anyone who
really wants to build non-cryptographic binaries, but the "crypto"
release distribution is now part of "base", and anyone installing from a
release will get cryptographic binaries.

Approved by:	re (scottl), markm
Discussed on:	freebsd-current, in late April 2004
2004-08-06 07:27:08 +00:00
glebius
0a36b82adc Add configuration option "set pppoe [standard|3Com]" which allows
to configure mode for ng_pppoe(4) node under control.

Reviewed by:	brian
Approved by:	julian (mentor)
2004-07-29 05:59:43 +00:00
kan
c8e1a3d9de Avoid casts as lvalues. 2004-07-28 07:20:04 +00:00
brian
c33b761408 Report the number of bytes not written when complaining about failed writes 2004-07-20 01:42:30 +00:00
brian
e2c3152e77 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
2004-07-17 01:07:53 +00:00
brian
47bda6be1f Fix ``set ifaddr''. The code was actually using an uninitialised variable,
but conveniently, because ncpaddr.ncpaddr_family != AF_INET, the call to
ncpaddr_getip4addr() became a no-op leaving the local address as it was
(defaulting to whatever my hostname resolves to).

PR:		62050
Submitted by:	Peter Jeremy <peter.jeremy@alcatel.com.au>
MFC after:	3 days
2004-07-15 09:42:16 +00:00
brian
d403dd49ee Remove a stray backslash 2004-07-14 13:31:17 +00:00
ru
6294018a20 Mechanically kill hard sentence breaks. 2004-07-02 23:13:00 +00:00
brian
91f649862b Re-implement LQM, this time according to the rfc.
PR:		11293
MFC after:	4 weeks
2004-06-30 12:24:56 +00:00
brian
d9cb5d5260 Mention that ``set mtu max'' is necessary for PPPoE.
PR:		32040
MFC after:	2 weeks
2004-06-29 07:48:43 +00:00