drop support for DECnet
Subsystems (4)
PATCH 1/1 drop support for DECnet
DECnet belongs in the history museum of dead protocols along with Appletalk and IPX.
Linux support has outlived its natural life and the time has come to remove it from iproute2. Dead code is a source of bugs and exploits.
If anyone actually has DECnet running on some old distribution they can just keep to the old version of iproute2.
--- Makefile | 3 -- README.decnet | 33 -------------- README.lnstat | 2 +- include/utils.h | 3 -- ip/ip.c | 2 +- ip/iproute.c | 2 +- lib/dnet_ntop.c | 101 ----------------------------------------- lib/dnet_pton.c | 75 ------------------------------ lib/utils.c | 23 ---------- man/man8/ip-route.8.in | 2 +- man/man8/ip.8 | 9 +--- 11 files changed, 6 insertions(+), 249 deletions(-) delete mode 100644 README.decnet delete mode 100644 lib/dnet_ntop.c delete mode 100644 lib/dnet_pton.c
Makefile +0 -3
@@ -40,9 +40,6 @@ DEFINES+=-DCONFDIR=\"$(CONFDIR)\" \ -DNETNS_RUN_DIR=\"$(NETNS_RUN_DIR)\" \ -DNETNS_ETC_DIR=\"$(NETNS_ETC_DIR)\" -#options for decnet -ADDLIB+=dnet_ntop.o dnet_pton.o - #options for mpls ADDLIB+=mpls_ntop.o mpls_pton.o
README.decnet deleted +0 -33
@@ -1,33 +0,0 @@ - -Here are a few quick points about DECnet support... - - o iproute2 is the tool of choice for configuring the DECnet support for - Linux. For many features, it is the only tool which can be used to - configure them. - - o No name resolution is available as yet, all addresses must be - entered numerically. - - o Remember to set the hardware address of the interface using: - - ip link set ethX address xx:xx:xx:xx:xx:xx - (where xx:xx:xx:xx:xx:xx is the MAC address for your DECnet node - address) - - if your Ethernet card won't listen to more than one unicast - mac address at once. If the Linux DECnet stack doesn't talk to - any other DECnet nodes, then check this with tcpdump and if its - a problem, change the mac address (but do this _before_ starting - any other network protocol on the interface) - - o Whilst you can use ip addr add to add more than one DECnet address to an - interface, don't expect addresses which are not the same as the - kernels node address to work properly with 2.4 kernels. This should - be fine with 2.6 kernels as the routing code has been extensively - modified and improved. - - o The DECnet support is currently self contained. It does not depend on - the libdnet library. - -Steve Whitehouse <[email protected]> -
README.lnstat +1 -1
@@ -9,7 +9,7 @@ In addition to routing cache statistics, it supports any kind of statistics the linux kernel exports via a file in /proc/net/stat. In a stock 2.6.9 kernel, this is per-protocol neighbour cache statistics - (ipv4, ipv6, atm, decnet) + (ipv4, ipv6, atm) routing cache statistics (ipv4) connection tracking statistics
include/utils.h +0 -3
@@ -194,9 +194,6 @@ int matches(const char *arg, const char *pattern);int inet_addr_match (const inet_prefix *a,const inet_prefix *b,int bits);int inet_addr_match_rta (const inet_prefix *m,const struct rtattr *rta); -const char *dnet_ntop (int af,const void *addr,char *str,size_t len); -int dnet_pton (int af,const char *src,void *addr); -const char *mpls_ntop (int af,const void *addr,char *str,size_t len);int mpls_pton (int af,const char *src,void *addr,size_t alen);
ip/ip.c +1 -1
@@ -53,7 +53,7 @@ static void usage(void)" vrf | sr }\n" " OPTIONS := { -V[ersion] | -s[tatistics] | -d[etails] | -r[esolve] |\n" " -h[uman-readable] | -iec | -j[son] | -p[retty] |\n" -" -f[amily] { inet | inet6 | dnet | mpls | bridge | link } |\n" +" -f[amily] { inet | inet6 | mpls | bridge | link } |\n" " -4 | -6 | -I | -D | -M | -B | -0 |\n" " -l[oops] { maximum-addr-flush-attempts } | -br[ief] |\n" " -o[neline] | -t[imestamp] | -ts[hort] | -b[atch] [filename] |\n"
ip/iproute.c +1 -1
@@ -83,7 +83,7 @@ static void usage(void)"INFO_SPEC := NH OPTIONS FLAGS [ nexthop NH ]...\n" "NH := [ encap ENCAPTYPE ENCAPHDR ] [ via [ FAMILY ] ADDRESS ]\n" " [ dev STRING ] [ weight NUMBER ] NHFLAGS\n" -"FAMILY := [ inet | inet6 | dnet | mpls | bridge | link ]\n" +"FAMILY := [ inet | inet6 | mpls | bridge | link ]\n" "OPTIONS := FLAGS [ mtu NUMBER ] [ advmss NUMBER ] [ as [ to ] ADDRESS ]\n" " [ rtt TIME ] [ rttvar TIME ] [ reordering NUMBER ]\n" " [ window NUMBER ] [ cwnd NUMBER ] [ initcwnd NUMBER ]\n"
lib/dnet_ntop.c deleted +0 -101
101 lines not on this page · raw message
lib/dnet_pton.c deleted +0 -75
75 lines not on this page · raw message
lib/utils.c +0 -23
@@ -600,18 +600,6 @@ static int __get_addr_1(inet_prefix *addr, const char *name, int family)return 0 ; } -if (family == AF_DECnet) { -struct dn_naddr dna; - - addr->family = AF_DECnet; -if (dnet_pton (AF_DECnet, name, &dna) <=0 ) -return -1 ; -memcpy (addr->data, dna.a_addr,2 ); - addr->bytelen =2 ; - addr->bitlen =-1 ; -return 0 ; - } -if (family ==AF_MPLS ) {unsigned int maxlabels;int i;
@@ -1000,13 +988,6 @@ const char *rt_addr_n2a_r(int af, int len,return inet_ntop (af, addr, buf, buflen);case AF_MPLS :return mpls_ntop (af, addr, buf, buflen); -case AF_DECnet: - { -struct dn_naddr dna = {2 , {0 ,0 , } }; - -memcpy (dna.a_addr, addr,2 ); -return dnet_ntop (af, &dna, buf, buflen); - }case AF_PACKET :return ll_addr_n2a (addr, len,ARPHRD_VOID , buf, buflen);case AF_BRIDGE :
@@ -1048,8 +1029,6 @@ int read_family(const char *name) family =AF_INET ; else if (strcmp(name, "inet6") == 0) family =AF_INET6 ; - else if (strcmp(name, "dnet") == 0) - family = AF_DECnet; else if (strcmp(name, "link") == 0) family =AF_PACKET ; else if (strcmp(name, "ipx") == 0)
@@ -1067,8 +1046,6 @@ const char *family_name(int family)return "inet" ;if (family ==AF_INET6 )return "inet6" ; -if (family == AF_DECnet) -return "dnet" ;if (family ==AF_PACKET )return "link" ;if (family ==AF_IPX )
man/man8/ip-route.8.in +1 -1
@@ -107,7 +107,7 @@ replace " } " .ti -8 .IR FAMILY " := [ " -.BR inet " | " inet6 " | " dnet " | " mpls " | " bridge " | " link " ]" +.BR inet " | " inet6 " | " mpls " | " bridge " | " link " ]" .ti -8 .IR OPTIONS " := " FLAGS " [ "
man/man8/ip.8 +2 -7
@@ -34,7 +34,7 @@ ip \- show / manipulate routing, network devices, interfaces and tunnels \fB\-r\fR[\fIesolve\fR] | \fB\-iec\fR | \fB\-f\fR[\fIamily\fR] { -.BR inet " | " inet6 " | " dnet " | " link " } | " +.BR inet " | " inet6 " | " link " } | " \fB-4\fR | \fB-6\fR | \fB-I\fR |
@@ -94,7 +94,7 @@ Zero (0) means loop until all addresses are removed. .TP .BR "\-f" , " \-family " <FAMILY> Specifies the protocol family to use. The protocol family identifier can be one of -.BR "inet" , " inet6" , " bridge" , " dnet" , " mpls" +.BR "inet" , " inet6" , " bridge" , " mpls" or .BR link . If this option is not present,
@@ -125,11 +125,6 @@ shortcut for shortcut for .BR "\-family bridge" . -.TP -.B \-D -shortcut for -.BR "\-family decnet" . - .TP .B \-M shortcut for
Signature · 1 line
2.19.2
David Ahern
AppliedQuoted 11 lines · Stephen Hemminger
DECnet belongs in the history museum of dead protocols along with Appletalk and IPX.
Linux support has outlived its natural life and the time has come to remove it from iproute2. Dead code is a source of bugs and exploits.
If anyone actually has DECnet running on some old distribution they can just keep to the old version of iproute2.
Signed-off-by Stephen Hemminger <[email protected]>
Quoted 16 lines
--- Makefile | 3 -- README.decnet | 33 -------------- README.lnstat | 2 +- include/utils.h | 3 -- ip/ip.c | 2 +- ip/iproute.c | 2 +- lib/dnet_ntop.c | 101 ----------------------------------------- lib/dnet_pton.c | 75 ------------------------------ lib/utils.c | 23 ---------- man/man8/ip-route.8.in | 2 +- man/man8/ip.8 | 9 +--- 11 files changed, 6 insertions(+), 249 deletions(-) delete mode 100644 README.decnet delete mode 100644 lib/dnet_ntop.c delete mode 100644 lib/dnet_pton.c
applied to iproute2-next. Thanks