Commit Graph

199 Commits

Author SHA1 Message Date
matt
e6ff03ce6f Remove XNS and CCITT/X25 bits. 2006-08-26 15:26:02 +00:00
wiz
8d3619d115 Bump date for previous. 2006-08-06 23:38:13 +00:00
dyoung
9dde08c82f Document -nocloning, -nocloned flags. Shift a couple of columns
right by a character width, to make room for the new flags.
2006-08-06 21:47:35 +00:00
dyoung
2bc777d5d0 KNF err(3), errx(3) usage, indentation, braces. 2006-08-06 17:47:17 +00:00
dyoung
61dbc26298 Add route keywords -nocloned, -nocloning. 2006-08-06 17:44:56 +00:00
wiz
cc07c6e988 Use default option order (AaBbCc...). 2006-01-29 22:11:10 +00:00
is
d155cb6cd4 Print the INET netmask if it is non-contiguous. 2006-01-26 11:35:09 +00:00
christos
81a178c561 PR/32632: Yves-Emmanuel JUTARD: Improvment suggestion in 'route' display.
Add a new -S flag that prints a space for missing flags.
2006-01-25 16:29:10 +00:00
christos
b7f3395036 PR/32629: Yves-Emmanuel JUTARD: Type errors in sbin/route/route.c, another
u_char/char conflict.
2006-01-25 16:19:50 +00:00
ginsbach
031f929a6c Add full IPv6 syntax support when route is built with -DSMALL and -DINET6.
Fixes PR/23937.  Adapted from supplied patch.
2005-08-31 02:58:30 +00:00
ginsbach
ba49deed2a Clean up some minor nits:
+ style (KNF).
  . don't cast NULL
  . white space clean up
+ use consistent format for error messages.
+ plug memory leaks and avoid malloc(0).
+ verbose message should display even when routing table is empty
  (flushroutes).
2005-08-30 19:01:25 +00:00
ginsbach
6e420616a8 Make sure that a netmask socket address value prints appropriately when the
family is unset.  Either the destination or interface address socket address
family value is used.  This change prevents the following sort of output:

RTM_NEWADDR: address being added to iface: len 60, metric 0, flags:<UP>
sockaddrs: <NETMASK,IFA,BRD>
 (0) 00.00.ff.00.00 127.0.0.1 127.0.0.1

With this change the last line becomes:

 255.0.0.0 127.0.0.1 127.0.0.1

Also make sure that when using a generated inet netmask the address family
is set.  With this change a generated netmask will print appropriately
when using the verbose (-v) option.
2005-08-15 19:28:08 +00:00
ginsbach
9992d68aff Make sure the get command always exits non-zero on error. This makes things
like the following work as expected.

#!/bin/sh

if ! route -sn get default >/dev/null 2>&1; then
	echo default gateway not set
	exit 1
fi
echo default gateway set

Handle routing socket write(2) errors when they occur.  This produces
better diagnostics by allowing for handling of the special route errno
values ESRCH, EBUSY, and ENOBUFS even with the quiet (-q) option or
when doing a get command.
2005-08-12 21:23:06 +00:00
ginsbach
9c8def382d Trim the local domain name in routename() for INET6 lookups; similar to
INET lookups.
2005-08-12 16:29:06 +00:00
he
8974f21b75 Make this build for __GNUC__ <= 2 (i.e. for vax). The cast to
caddr_t removes a const qualifier.  Instead, cast the first element
of the subtraction to "struct sockaddr *" to work around the problem.
2005-08-10 11:48:17 +00:00
ginsbach
08af90d648 Accept protocol flags, i.e. -inet, -inet6, with the show command.
[From OpenBSD via DragonFly BSD]
2005-08-09 21:25:42 +00:00
ginsbach
2cff02da42 Fix the default case in sodump(). Printing the address of the "which"
string isn't really that useful.  Instead print the string and the value
of sa_family.
2005-08-09 20:33:06 +00:00
ginsbach
3997584e62 More style nits (KNF); casts and sizeof's are not followed by a space. 2005-08-09 19:43:24 +00:00
ginsbach
89cdec0594 switch is not a function, so add a space; sort switch elements
alphabetically (KNF).
2005-07-20 21:12:40 +00:00
ginsbach
d313757b82 * Exit non-zero error code when flushroute() fails operating on the
routing socket, e.g. running route flush as non-root.

* When quiet (-q) don't append error string to a non-existent
  diagnostic output (stdout).  The error diagnostic is still written
  to stderr.  [from FreeBSD]

* Use warn(3) in place of perror(3).
2005-07-15 21:29:54 +00:00
christos
dea4bd707c const poisoning. 2005-06-26 21:28:15 +00:00
dyoung
256aff6693 Teach route(8) to print the messages generated by net80211. 2005-06-25 06:38:35 +00:00
ginsbach
4d1075a78b Convert prefixlen() to ANSI function declaration. Missed by earlier
conversion.
2005-05-19 15:46:02 +00:00
ginsbach
0cb468118d Due to a limitation in inet_addr(3) it was not possible to specify a
netmask value of 0xffffffff (INADDR_NONE).  Fix by using inet_aton(3).
Note it was possible to specify the same mask as the dotted quad
255.255.255.255 because of a later call to gethostbyname(3).
[From FreeBSD]
2005-05-19 15:05:11 +00:00
ginsbach
d96d2a6f15 Adjust field width for route -n show similar to netstat -rn when displaying
INET6 route entries.
2005-05-13 14:58:47 +00:00
ginsbach
bb3f166314 Fix botched prior commit. Additional debugging error messages mistakenly
committed.
2005-05-13 01:59:47 +00:00
ginsbach
22f8a99e92 * Honor -net when using CIDR (net/mask) notation. This differs
from the default CIDR (host/mask) interpretation.  As discussed on
  tech-net.

* Use errx() in place of fprintf() and exit().  Make the error message
  formats consistent.
2005-05-12 21:10:49 +00:00
ginsbach
a43fb90cb0 Fix macro NEXTADDR so that the names, like so_dst, are printed
rather than u.  The preprocessor doesn't do replacement within
strings, so the # string creation operator must be used.
2005-05-10 18:12:22 +00:00
xtraeme
69cbd40c14 Kill __P(), use ANSI function declarations. 2005-02-05 14:05:23 +00:00
lukem
7157011597 Only compile in IPv6 support if ${USE_INET6} != "no"
MKINET6 is for providing IPv6 infrastructure.
USE_INET6 is for compiling IPv6 support into the programs (needs MKINET6).
2005-01-10 02:58:58 +00:00
itojun
b95181fc9b NI_WITHSCOPEID was not picked up by IETF standardization process. 2004-11-16 05:59:32 +00:00
itojun
ba67da06a5 bump buffer size for any_ntoa(), for huge sa_len 2004-05-15 14:13:36 +00:00
itojun
7340ad20ce 2-byte read overrun for unknown sockaddr. from openbsd
XXX out[64], is it safe?  what if sa_len > 23?
2004-05-15 13:41:09 +00:00
jmmv
b635f565e7 Homogenize usage messages: make the 'usage' word all lowercase, as this seems
to be the most common practice in our tree.
2004-01-05 23:23:32 +00:00
lukem
f85d2d1c14 Use ${HOST_SH} instead of `sh'.
If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
2003-10-26 07:25:33 +00:00
itojun
d3e55680aa correct typo. PR misc/22944 2003-10-02 00:09:06 +00:00
itojun
83ddaf1cbf print prefixlen on -show 2003-10-01 06:24:19 +00:00
cube
5041ba1a4c Remove a comment that referred to a non-committed part of the patch I
submitted for bin/17613. Ok'd by mrg@.
2003-09-16 09:34:48 +00:00
agc
276d62f603 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22308, verified by myself.
2003-08-07 10:04:22 +00:00
wiz
7539e84445 Bump date for flushall description. 2003-08-07 09:46:17 +00:00
jrf
ce22377a7e This is an updated submitted patch originally written by Jim Rees
and sent in by Greg Hudson as seen in PR misc/3227. Basically what it
does is adds a flushall option which deletes all but localhost routes.
This is done by andoring in a flag called doall (1 means do all routes
including gateway, 0 means do a regular flush). I have seen some
platforms that do this. I tested it out on ipv4 only, it works as
advertised. Commit was approved by christos@.
2003-07-19 01:36:47 +00:00
christos
072bca2c13 PR/21856: Robert Elz: Changes to route(8) to allow /n instead of -prefixlen
for INET6
2003-06-11 15:45:20 +00:00
itojun
627957eb53 permit foo/bar notation, like "route add 10.0.0.0/8 127.0.0.1".
originally by provos
2003-06-03 04:41:42 +00:00
itojun
9cbeabfe77 strlcpy [a few mistakes found] 2003-05-17 23:02:28 +00:00
jrf
6867af7aad This addresses PR 17613 when certain methods of adding routes would
muck up the routing tables. The patch was submitted by Quentin Garnier
<netbsd@quatriemek.com> and tweaked a little after it was reviewed
by Christos Zoulas <christos@netbsd.org>. Final change/commit approved
by Christos.
2003-04-21 13:42:50 +00:00
jrf
dee179a37f Made a note in the code about the -d and -d options brought up in
PR 18674. Thanks to Chris Jones for pointing it out.
2003-04-03 02:39:50 +00:00
wiz
a9f7f104b6 Split .Nm with other macro arguments on two lines. 2003-02-25 07:53:39 +00:00
itojun
e33246f5c7 correct prefixlen handling for IPv4. 2002-10-18 00:21:23 +00:00
itojun
3c30f46849 Make prefixlen check to make sure its argument is present before deref
from openbsd
2002-10-18 00:16:25 +00:00
wiz
09cbac4e7f New sentence, new line. From Robert Elz. 2002-10-03 15:41:44 +00:00
grant
6742cb1812 sweep of errx/warnx, remove unnecessary trailing \n 2002-07-20 08:36:17 +00:00
itojun
d24b68cd4f permit DNS names to address portion. they will be considered as RTF_HOST
if specified as destination (as there's no getnetbyname in IPv6).
2002-06-10 21:18:53 +00:00
itojun
a1662dac72 if we're unsure about prefixlen, don't say "128". 2002-06-05 22:11:28 +00:00
itojun
65829ef6aa more correct ion to RTF_HOST handling. 2002-06-05 22:10:44 +00:00
itojun
fff7bbceef do not have -prefixlen 128 on RTF_HOST.
From: Dawid Szymanski <dawszy@arhea.net>
2002-06-04 22:20:00 +00:00
itojun
e534b69c1d raise RTF_HOST if destination is a host (/128). from ume 2002-05-20 23:01:32 +00:00
christos
69da3546f5 PR/15672: Love: route monitor missing info 2002-02-21 15:44:25 +00:00
hubertf
85cc2d10d5 the modifiers (-inet6, ...) do not only affect the behaviour of "flush",
but at least also of "get", so make the wording a bit more general.
2002-02-08 13:32:32 +00:00
ross
dc5571b22e Generate <>& symbolically. I'm avoiding .../dist/... directories for now. 2002-02-08 01:21:55 +00:00
wiz
7dd6e69db4 Punctuation fix, sort sections, sort SEE ALSO. 2001-11-16 12:08:49 +00:00
christos
4c4a8c2fb6 Make route exit with a non-zero error code when operations to the routing
socket fails. eg, running route add 1.2.3.4 5.6.7.8 as non root.
2001-11-15 21:25:08 +00:00
lukem
fd87fe6aaa fix -Wshadow warnings 2001-11-02 03:51:48 +00:00
atatat
cdc6282274 Provide a short output format for the get command that only prints the
address corresponding to RTA_GATEWAY, or nothing if it doesn't exist.
Modify the exit value of route depending on this, so that one can do
stuff like:

#!/bin/sh
gw=`route -sn get default 2>/dev/null`
if [ -z "$gw" ]; then
	echo no default route
	exit 1
fi
ping -w1 -c1 $gw >/dev/null 2>&1
if ! route -sn get $gw >/dev/null; then
	echo default gateway not responding
	exit 1
fi
echo default gateway is at $gw
2001-10-24 18:40:16 +00:00
atatat
2e4d1a174e Print a R on reject routes to indicate that they're not normal routes,
and check netmask (or prefix) length as well as the destination
address when determining if a route is a "default" or not.  This means
that the output from 'route show' will no longer say:

	Internet6:
	Destination       Gateway            Flags
	default           localhost          UG
	default           localhost          UG

but instead

	Internet6:
	Destination       Gateway            Flags
	::/104            localhost          UGR
	::/96             localhost          UGR

which makes much more sense.
2001-10-24 16:05:06 +00:00
christos
b77fb2a456 PR/14286: reed@reedmedia.net: Explain default. 2001-10-18 13:42:32 +00:00
bjh21
6ef5a92fbb When dumping the routing table, use getnameinfo() to print link-layer
addresses rather than doing it ourselves and falling back to link_ntoa().
2001-10-06 18:32:45 +00:00
itojun
d615372573 off-by-one error in -prefixlen arg validation (do not permit 129 on IPv6) 2001-07-20 08:31:55 +00:00
itojun
507c97b62e make prefixlen work on IPv4 too 2001-07-20 08:28:25 +00:00
bad
4cda42fdd0 The way pmsg_addrs() is used requires that it always prints a newline and
flushes stdout before returning.

Previously the decoded output for a message was stuck in stdio buffers until
the next arrived.
2001-07-16 17:22:07 +00:00
wiz
d12a675883 Fix Nd and some whitespace and punctuation. 2001-06-05 12:44:43 +00:00
wiz
73f545bb5b Drop arguments of .Os. 2001-06-05 11:22:41 +00:00
manu
e0e227f2a3 Added a few examples and a reference to sysctl to enable IP forwarding
Approved by Christos
2001-04-27 19:33:06 +00:00
cgd
8a986b2e96 convert to use getprogname() 2001-02-19 22:48:57 +00:00
christos
55692aa513 remove nested externs. 2001-02-04 21:09:07 +00:00
itojun
08087050ed support -cloned command line flag.
i don't think anyone ever going to use it.
2001-01-27 04:53:13 +00:00
itojun
6a04f28b13 regen 2001-01-27 04:51:25 +00:00
itojun
16595a06cf add a keyword, cloned 2001-01-27 04:51:17 +00:00
itojun
fee00b1a78 mark cloned routes with RTF_CLONED. present it with netstat -r by "c".
let static routes overwrite cloned routes, as cloned routes can come back again
if necessary.  behavior same as freebsd/bsdi, code partially from bsdi42.
(NRL rt->rt_parent was not added)
should fix PR 11916 and maybe some other PRs with ARP behavior.

recompilation of usr.sbin/route6d is suggested.
2001-01-27 04:49:31 +00:00
itojun
ad678343e6 support RTF_BLACKHOLE.
XXX route show is total duplicate of netstat -r, we need to either remove
route show, or share the same source code, otherwise maintenance cost
bites (and is biting) us
2001-01-27 04:26:49 +00:00
itojun
d9196c1881 remove use of uninitialized route (struct ortentry).
it seems that the bug was born during 4.3reno -> 4.4Lite1 transition.
2001-01-27 03:20:29 +00:00
is
9979da6cbb Format string cleanups by Bill Sommerfeld. 2000-10-10 20:24:49 +00:00
itojun
d72739fb8a on "route monitor", print RTM_IFANNOUNCE, RTM_IFINFO (new #), and others. 2000-10-10 09:35:05 +00:00
sommerfeld
16bad8ee40 Allow INET6 to be used with SMALL without undefined symbols 2000-05-04 18:29:34 +00:00
itojun
9de652ed48 use scoped notation for link-local multicast too. 2000-04-20 12:25:08 +00:00
itojun
bfbec7cf43 support extended scoped address notation (fe80::1%de0).
it hides implementation detail (embedded ifid) from the users.
2000-04-20 12:08:50 +00:00
itojun
f816cfa0ca don't make "-prefixlen 64" a default in -inet6 case. the past behavior
was not compatible with past practice ("route get" did not work right).

sync with recent KAME.
1999-12-03 05:43:00 +00:00
drochner
85cbf55d16 Since our gcc doesn't warn about NULL format strings anymore, we can
fix the incorrect err(1, "%s", "") et al.
Closes PR bin/7592 by cgd.
1999-11-09 15:06:30 +00:00
sommerfeld
a5e1bf5368 Display local address associated with route (if any) in "route get". 1999-11-01 13:32:38 +00:00
itojun
0a69640f14 remove false fix for routing socket align issue. 1999-09-03 04:17:19 +00:00
itojun
65b4964f1e fix alignment issue in routing socket data, on 64bit arch (i.e. alpha).
sockaddrs are packed with ROUNDUP() in sys/net/rtsock.c so userland
programs needs to follow that.

PR: 8179
1999-09-03 03:47:39 +00:00
itojun
9e2ce6114e tweak IPv6 case so that "route show" does not truncate numeric IPv6 address.
PR: 7955
1999-07-17 06:51:27 +00:00
itojun
d4aa58bc6c avoid using constants, use #define'd values. 1999-07-12 20:46:15 +00:00
mjacob
dd514ad75e Incorrect integration. ctime takes a time_t value, not a long. 1999-07-06 23:15:48 +00:00
itojun
9a6abc8c5d s/CFLAGS/CPPFLAGS/ for -D and -I. 1999-07-03 06:26:25 +00:00
itojun
d211125175 IPv6-ready route command (-inet6 and -prefixlen are added) 1999-07-02 15:29:02 +00:00
mycroft
68d6f4bf44 Remove spurious .ne's. 1999-03-24 06:27:49 +00:00
bgrayson
f4609c553d Typo fixed 1999-03-04 03:03:15 +00:00
lukem
a9db50e608 * implement -f; flush all routes before executing command
* reset af to 0 in flushroutes() and newroute()
* cleanup -DSMALL:
-   `flush' and AF_APPLETALK is supported (the latter had partial support)
-   AF_NS, AF_ISO, and AF_CCITT are not supported at all (rather than being
-   partially unsupported).
1998-10-23 05:36:42 +00:00
mycroft
519d858510 __AUDIT__ cleanup. 1998-07-28 19:22:54 +00:00
mycroft
0db548a927 const poisoning. 1998-07-26 14:57:56 +00:00