NetBSD/sbin/route/keywords.h
ozaki-r 09973b35ac Separate nexthop caches from the routing table
By this change, nexthop caches (IP-MAC address pair) are not stored
in the routing table anymore. Instead nexthop caches are stored in
each network interface; we already have lltable/llentry data structure
for this purpose. This change also obsoletes the concept of cloning/cloned
routes. Cloned routes no longer exist while cloning routes still exist
with renamed to connected routes.

Noticeable changes are:
- Nexthop caches aren't listed in route show/netstat -r
  - sysctl(NET_RT_DUMP) doesn't return them
  - If RTF_LLDATA is specified, it returns nexthop caches
- Several definitions of routing flags and messages are removed
  - RTF_CLONING, RTF_XRESOLVE, RTF_LLINFO, RTF_CLONED and RTM_RESOLVE
- RTF_CONNECTED is added
  - It has the same value of RTF_CLONING for backward compatibility
- route's -xresolve, -[no]cloned and -llinfo options are removed
  - -[no]cloning remains because it seems there are users
  - -[no]connected is introduced and recommended
    to be used instead of -[no]cloning
- route show/netstat -r drops some flags
  - 'L' and 'c' are not seen anymore
  - 'C' now indicates a connected route
- Gateway value of a route of an interface address is now not
  a L2 address but "link#N" like a connected (cloning) route
- Proxy ARP: "arp -s ... pub" doesn't create a route

You can know details of behavior changes by seeing diffs under tests/.

Proposed on tech-net and tech-kern:
  http://mail-index.netbsd.org/tech-net/2016/03/11/msg005701.html
2016-04-04 07:37:07 +00:00

67 lines
1.3 KiB
C

/* $NetBSD: keywords.h,v 1.14 2016/04/04 07:37:07 ozaki-r Exp $ */
/* WARNING! This file was generated by keywords.sh */
extern struct keytab {
const char *kt_cp;
int kt_i;
} keywords[];
#define K_ADD 1
#define K_ATALK 2
#define K_BLACKHOLE 3
#define K_CHANGE 4
/* #define K_CLONED 5 */
/* #define K_CLONING 6 */
#define K_CONNECTED 6
#define K_DELETE 7
#define K_DST 8
#define K_EXPIRE 9
#define K_FLUSH 10
#define K_GATEWAY 11
#define K_GENMASK 12
#define K_GET 13
#define K_HOST 14
#define K_HOPCOUNT 15
#define K_IFACE 16
#define K_INTERFACE 17
#define K_IFA 18
#define K_IFP 19
#define K_INET 20
#define K_INET6 21
#define K_LINK 22
/* #define K_LLINFO 23 */
#define K_LOCK 24
#define K_LOCKREST 25
#define K_MASK 26
#define K_MONITOR 27
#define K_MTU 28
#define K_NET 29
#define K_NETMASK 30
#define K_NOSTATIC 31
#define K_PREFIXLEN 32
#define K_PROTO1 33
#define K_PROTO2 34
#define K_RECVPIPE 35
#define K_REJECT 36
#define K_RTT 37
#define K_RTTVAR 38
#define K_SA 39
#define K_SENDPIPE 40
#define K_SHOW 41
#define K_SSTHRESH 42
#define K_STATIC 43
#define K_X25 44
#define K_XNS 45
/* #define K_XRESOLVE 46 */
#define K_FLUSHALL 47
/* #define K_NOCLONED 48 */
/* #define K_NOCLONING 49 */
#define K_NOCONNECTED 49
#define K_NOBLACKHOLE 50
#define K_NOREJECT 51
#define K_MPLS 52
#define K_TAG 53
#define K_PROXY 54