Garrett Wollman 9f9b3dc4ae Add three new route flags to help determine what sort of address
the destination represents.  For IP:

- Iff it is a host route, RTF_LOCAL and RTF_BROADCAST indicate local
  (belongs to this host) and broadcast addresses, respectively.

- For all routes, RTF_MULTICAST is set if the destination is multicast.

The RTF_BROADCAST flag is used by ip_output() to eliminate a call to
in_broadcast() in a common case; this gives about 1% in our packet-generation
experiments.  All three flags might be used (although they aren't now)
to determine whether a packet can be forwarded; a given host route can
represent a forwardable address if:

	(rt->rt_flags & (RTF_HOST | RTF_LOCAL | RTF_BROADCAST | RTF_MULTICAST))
	== RTF_HOST

Obviously, one still has to do all the work if a host route is not present,
but this code allows one to cache the results of such a lookup if rtalloc1()
is called without masking RTF_PRCLONING.
1996-05-06 17:42:13 +00:00
..
1994-08-21 05:11:48 +00:00
1996-02-06 18:51:28 +00:00
1996-02-06 18:51:28 +00:00
1994-11-16 02:16:18 +00:00
1995-05-30 08:16:23 +00:00
1996-02-06 18:51:28 +00:00
1995-02-25 15:57:55 +00:00
1996-02-06 18:51:28 +00:00
1995-04-29 15:24:00 +00:00