Commit Graph

51 Commits

Author SHA1 Message Date
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
kevlo
fa3791e1a7 Cleanup of userland __P use 2007-11-07 10:53:41 +00:00
suz
50a24bc3c7 implemented more validation checks about incoming responses per RFC2080, and one additional heuristic check for safer operation.
Obtained from: KAME
MFC after: 1 week
2006-11-16 19:03:03 +00:00
yar
b8f7c89828 These IPv6-only tools have no explicit dependency on the INET6 macro.
Tested with:	cmp(1)
2006-07-27 15:31:13 +00:00
ru
114ea39c76 Fixed the misplaced $FreeBSD$. 2005-02-09 18:07:17 +00:00
ume
6260ac2844 - need_trigger/idx should be u_int, not ssize_t.
- realloc pedant.
- set sin6_scope_id before sending (link-local/multicast) packets
- removed an incorrect comment
- don't age non-gateway host routes.
- not remove global addresses on loopback interface from routing table
  by route aging.

Obtained from:	KAME
2003-11-14 17:16:50 +00:00
ume
aa599c4b2a - interface minimum MTU = 1280 in IPv6.
- simplify.

Obtained from:	KAME
2003-11-14 17:16:12 +00:00
ume
5b31c30634 our netstat is installed in /usr/bin. 2003-11-14 16:57:04 +00:00
suz
cbca8b58aa fixe remote panic on short packet
Obtained from: KAME
2003-10-31 03:18:45 +00:00
sam
3a8a0128c5 remove unused variable
Supported by:	FreeBSD Foundation
2003-10-03 21:06:17 +00:00
ume
2e9f7d6151 rtm_seq is int, so seq/myseq should be int.
Obtained from:	KAME
MFC after:	1 week
2003-08-18 16:20:30 +00:00
ume
a6ee67e215 suppress outpt on dump request if -q is specified.
Obtained from:	KAME
MFC after:	1 week
2003-08-18 16:15:30 +00:00
ume
d4335be73f atoi -> strtoul
Obtained from:	KAME
MFC after:	1 week
2003-08-18 16:09:59 +00:00
ume
9772e1f2d8 - port numbers are unsigned. use %u.
- %d is not 10 chars, but 12 chars.

Obtained from:	KAME
MFC after:	1 week
2003-08-18 15:58:23 +00:00
ume
55adf4bf8c explicitly specify IPPROTO_UDP when calling getaddrinfo().
Obtained from:	KAME
MFC after:	1 week
2003-08-18 15:54:08 +00:00
ume
ba2bc5b908 remove a variable that is never used.
Obtained from:	KAME
MFC after:	1 week
2003-08-18 15:47:17 +00:00
ume
305bef8b9a support poll(2).
Obtained from:	KAME
MFC after:	1 week
2003-08-18 15:35:33 +00:00
ume
341fe0fadc - don't select with FD_SETSIZE.
- avoid fd_set overrun.

Obtained from:	KAME
MFC after:	1 week
2003-08-18 15:24:32 +00:00
ume
6cbfc84504 - don't print strerror() if errno == 0 on fatal().
- va_start/end audit.
- can't use vfprintf() twice.  need va_start/end pair every time.

Obtained from:	KAME
MFC after:	1 week
2003-08-17 18:35:56 +00:00
ume
f7ff921e4d - do not SEGV on IFF_UP.
- recover rrt_gw setting for non-p2p case.  otherwise, we will not
  be able to recover interface route on interface down -> up
  transition.
- clarify loop exit condition

Obtained from:	KAME
MFC after:	1 week
2003-08-17 18:12:11 +00:00
ume
4be183de4b do not send dump request on -N
Obtained from:	KAME
MFC after:	1 week
2003-08-17 17:51:30 +00:00
ume
8ef4eb362d macro pedant
Obtained from:	KAME
MFC after:	1 week
2003-08-17 17:47:22 +00:00
ume
6724ae5e2e minor cleanup; no need for extra variable here
Obtained from:	KAME
MFC after:	1 week
2003-08-17 17:40:47 +00:00
ume
0376bb0358 use strchr(3).
Obtained from:	KAME
MFC after:	1 week
2003-08-17 17:34:09 +00:00
ume
a89d80761c daemon() has to be called prior to file descriptor setups
(otherwise file descriptors could be closed mistakenly)

Obtained from:	KAME
MFC after:	1 week
2003-08-17 17:29:54 +00:00
ume
a83c665460 getifaddrs(3) is always used.
MFC after:	1 week
2003-08-17 17:21:00 +00:00
ume
5b1d87bdd2 knf, typo, space.
Obtained from:	KAME
MFC after:	1 week
2003-08-17 16:26:35 +00:00
ume
99b1b224da set IPV6_V6ONLY.
Obtained from:	KAME
MFC after:	1 week
2003-08-17 16:08:56 +00:00
ume
a5bff9b8e2 - die if malloc fails.
- use strlcpy.

Obtained from:	KAME
MFC after:	1 week
2003-08-17 16:07:57 +00:00
ume
27091af60a use strncpy
Obtained from:	KAME
MFC after:	1 week
2003-08-17 16:06:52 +00:00
ume
d210f3869d "sin" is a reserved C library function name. use sin6
Obtained from:	KAME
MFC after:	1 week
2003-08-17 16:05:49 +00:00
ume
5cc71ccffc We don't need __ss hack.
MFC after:	1 week
2003-08-17 16:03:58 +00:00
ache
ebb7bc4334 Add missing srand() (sranddev() for FreeBSD) 2003-02-11 02:09:05 +00:00
schweikh
d3367c5f5d Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,
especially in troff files.
2003-01-01 18:49:04 +00:00
charnier
d2168fe021 The .Nm utility 2002-07-14 14:47:15 +00:00
ru
4345758876 mdoc(7) police:
Avoid using parenthesis enclosure macros (.Pq and .Po/.Pc) with plain text.
Not only this slows down the mdoc(7) processing significantly, but it also
has an undesired (in this case) effect of disabling hyphenation within the
entire enclosed block.
2001-08-07 15:48:51 +00:00
obrien
9c97c8f02d Perform a major cleanup of the usr.sbin Makefiles.
These are not perfectly in agreement with each other style-wise, but they
are orders of orders of magnitude more consistent style-wise than before.
2001-07-20 06:20:32 +00:00
ume
832f8d2249 Sync with recent KAME.
This work was based on kame-20010528-freebsd43-snap.tgz and some
critical problem after the snap was out were fixed.
There are many many changes since last KAME merge.

TODO:
  - The definitions of SADB_* in sys/net/pfkeyv2.h are still different
    from RFC2407/IANA assignment because of binary compatibility
    issue.  It should be fixed under 5-CURRENT.
  - ip6po_m member of struct ip6_pktopts is no longer used.  But, it
    is still there because of binary compatibility issue.  It should
    be removed under 5-CURRENT.

Reviewed by:	itojun
Obtained from:	KAME
MFC after:	3 weeks
2001-06-11 12:39:29 +00:00
ru
afd506414e - Backout botched attempt to introduce MANSECT feature.
- MAN[1-9] -> MAN.
2001-03-26 14:42:20 +00:00
ru
f10dc9aca1 Set the default manual section for usr.sbin/ to 8. 2001-03-20 18:17:26 +00:00
ru
4bb5f49662 Prepare for mdoc(7)NG. 2000-12-27 15:30:30 +00:00
ume
5e6c6dce08 - do not check/advertise cloned routes, nor dynamic routes
- cast size_t on printing (be friendly with alpha)

Obtained from:	KAME
2000-11-27 17:44:53 +00:00
ru
71e2293ad4 mdoc(7) police: use the new features of the Nm macro. 2000-11-20 20:10:44 +00:00
kris
c3fda03914 Sync with KAME. Format string auditing and manpage cleanups.
Obtained from:	KAME
Submitted by:	Bill Sommerfeld <sommerfeld@netbsd.org>
2000-10-08 07:43:38 +00:00
itojun
cd0197dbb9 fix LP64 issue in routing socket manipulation.
make behavior of -A safer.
(sync with kame)
2000-08-14 04:54:58 +00:00
ume
12abb72586 removed 'ifndef ADVAPI' parts
Obtained from:	KAME
2000-07-10 18:27:55 +00:00
itojun
8828d2bf40 use advanced API (-DADVAPI).
From: tkatayam@pi.titech.ac.jp (KATAYAMA, Takeo)
2000-07-09 03:07:48 +00:00
itojun
d248c0293a sync with latest kame tree. more stable, p2p advert is corrected 2000-07-05 02:14:16 +00:00
shin
296524942d When unexpected rtmsg was received, route6d was dying.
So change it just to log it.
(Merge from recent KAME bug fix.)

Submitted by: itojun
Obtained from: KAME project
2000-03-14 18:17:55 +00:00
shin
5a9ffb7f5a remove redundant ifdef's.
some part is specified by: phantom
2000-01-07 10:02:43 +00:00