From a9137a03c96ecd53cbf2fab3f8f3a84cadabb76c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Arkadiusz=20Mi=C5=9Bkiewicz?= Date: Sun, 5 Jul 2009 17:26:10 +0000 Subject: [PATCH] - drop obsolete files Changed files: net-tools-branch.diff -> 1.4 net-tools-netstat-stat.patch -> 1.2 --- net-tools-branch.diff | 8742 ---------------------------------- net-tools-netstat-stat.patch | 10 - 2 files changed, 8752 deletions(-) delete mode 100644 net-tools-branch.diff delete mode 100644 net-tools-netstat-stat.patch diff --git a/net-tools-branch.diff b/net-tools-branch.diff deleted file mode 100644 index cc4e299..0000000 --- a/net-tools-branch.diff +++ /dev/null @@ -1,8742 +0,0 @@ ---- net-tools-1.60/arp.c 2001-04-08 19:05:05.000000000 +0200 -+++ net-tools/arp.c 2005-12-04 04:57:15.000000000 +0200 -@@ -8,7 +8,7 @@ - * NET-3 Networking Distribution for the LINUX operating - * system. - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Maintainer: Bernd 'eckes' Eckenfels, - * -@@ -100,9 +100,10 @@ - { - char host[128]; - struct arpreq req; -- struct sockaddr sa; -+ struct sockaddr_storage ss; -+ struct sockaddr *sa; - int flags = 0; -- int err; -+ int deleted = 0; - - memset((char *) &req, 0, sizeof(req)); - -@@ -112,12 +113,13 @@ - return (-1); - } - safe_strncpy(host, *args, (sizeof host)); -- if (ap->input(0, host, &sa) < 0) { -+ sa = (struct sockaddr *)&ss; -+ if (ap->input(0, host, sa) < 0) { - ap->herror(host); - return (-1); - } - /* If a host has more than one address, use the correct one! */ -- memcpy((char *) &req.arp_pa, (char *) &sa, sizeof(struct sockaddr)); -+ memcpy((char *) &req.arp_pa, (char *) sa, sizeof(struct sockaddr)); - - if (hw_set) - req.arp_ha.sa_family = hw->type; -@@ -148,7 +150,7 @@ - continue; - } - if (!strcmp(*args, "dontpub")) { --#ifdef HAVE_ATF_DONTPUB -+#ifdef ATF_DONTPUB - req.arp_flags |= ATF_DONTPUB; - #else - ENOSUPP("arp", "ATF_DONTPUB"); -@@ -157,7 +159,7 @@ - continue; - } - if (!strcmp(*args, "auto")) { --#ifdef HAVE_ATF_MAGIC -+#ifdef ATF_MAGIC - req.arp_flags |= ATF_MAGIC; - #else - ENOSUPP("arp", "ATF_MAGIC"); -@@ -177,11 +179,11 @@ - usage(); - if (strcmp(*args, "255.255.255.255") != 0) { - strcpy(host, *args); -- if (ap->input(0, host, &sa) < 0) { -+ if (ap->input(0, host, sa) < 0) { - ap->herror(host); - return (-1); - } -- memcpy((char *) &req.arp_netmask, (char *) &sa, -+ memcpy((char *) &req.arp_netmask, (char *) sa, - sizeof(struct sockaddr)); - req.arp_flags |= ATF_NETMASK; - } -@@ -190,35 +192,41 @@ - } - usage(); - } -+ -+ // if neighter priv nor pub is given, work on both - if (flags == 0) - flags = 3; - - strcpy(req.arp_dev, device); - -- err = -1; -+ /* unfortuatelly the kernel interface does not allow us to -+ delete private entries anlone, so we need this hack -+ to avoid "not found" errors if we try both. */ -+ deleted = 0; - - /* Call the kernel. */ - if (flags & 2) { - if (opt_v) -- fprintf(stderr, "arp: SIOCDARP(nopub)\n"); -- if ((err = ioctl(sockfd, SIOCDARP, &req) < 0)) { -- if (errno == ENXIO) { -+ fprintf(stderr, "arp: SIOCDARP(dontpub)\n"); -+ if (ioctl(sockfd, SIOCDARP, &req) < 0) { -+ if ((errno == ENXIO) || (errno == ENOENT)) { - if (flags & 1) -- goto nopub; -+ goto dontpub; - printf(_("No ARP entry for %s\n"), host); - return (-1); - } -- perror("SIOCDARP(priv)"); -+ perror("SIOCDARP(dontpub)"); - return (-1); -- } -+ } else -+ deleted = 1; - } -- if ((flags & 1) && (err)) { -- nopub: -+ if (!deleted && (flags & 1)) { -+ dontpub: - req.arp_flags |= ATF_PUBL; - if (opt_v) - fprintf(stderr, "arp: SIOCDARP(pub)\n"); - if (ioctl(sockfd, SIOCDARP, &req) < 0) { -- if (errno == ENXIO) { -+ if ((errno == ENXIO) || (errno == ENOENT)) { - printf(_("No ARP entry for %s\n"), host); - return (-1); - } -@@ -260,7 +268,8 @@ - { - char host[128]; - struct arpreq req; -- struct sockaddr sa; -+ struct sockaddr_storage ss; -+ struct sockaddr *sa; - int flags; - - memset((char *) &req, 0, sizeof(req)); -@@ -271,12 +280,13 @@ - return (-1); - } - safe_strncpy(host, *args++, (sizeof host)); -- if (ap->input(0, host, &sa) < 0) { -+ sa = (struct sockaddr *)&ss; -+ if (ap->input(0, host, sa) < 0) { - ap->herror(host); - return (-1); - } - /* If a host has more than one address, use the correct one! */ -- memcpy((char *) &req.arp_pa, (char *) &sa, sizeof(struct sockaddr)); -+ memcpy((char *) &req.arp_pa, (char *) sa, sizeof(struct sockaddr)); - - /* Fetch the hardware address. */ - if (*args == NULL) { -@@ -317,7 +327,7 @@ - continue; - } - if (!strcmp(*args, "dontpub")) { --#ifdef HAVE_ATF_DONTPUB -+#ifdef ATF_DONTPUB - flags |= ATF_DONTPUB; - #else - ENOSUPP("arp", "ATF_DONTPUB"); -@@ -326,7 +336,7 @@ - continue; - } - if (!strcmp(*args, "auto")) { --#ifdef HAVE_ATF_MAGIC -+#ifdef ATF_MAGIC - flags |= ATF_MAGIC; - #else - ENOSUPP("arp", "ATF_MAGIC"); -@@ -346,11 +356,11 @@ - usage(); - if (strcmp(*args, "255.255.255.255") != 0) { - strcpy(host, *args); -- if (ap->input(0, host, &sa) < 0) { -+ if (ap->input(0, host, sa) < 0) { - ap->herror(host); - return (-1); - } -- memcpy((char *) &req.arp_netmask, (char *) &sa, -+ memcpy((char *) &req.arp_netmask, (char *) sa, - sizeof(struct sockaddr)); - flags |= ATF_NETMASK; - } -@@ -445,11 +455,11 @@ - strcat(flags, "M"); - if (arp_flags & ATF_PUBL) - strcat(flags, "P"); --#ifdef HAVE_ATF_MAGIC -+#ifdef ATF_MAGIC - if (arp_flags & ATF_MAGIC) - strcat(flags, "A"); - #endif --#ifdef HAVE_ATF_DONTPUB -+#ifdef ATF_DONTPUB - if (arp_flags & ATF_DONTPUB) - strcat(flags, "!"); - #endif -@@ -463,7 +473,7 @@ - - if (!(arp_flags & ATF_COM)) { - if (arp_flags & ATF_PUBL) -- printf("%-8.8s%-20.20s", "*", "*"); -+ printf("%-8.8s%-20.20s", "*", _("")); - else - printf("%-8.8s%-20.20s", "", _("(incomplete)")); - } else { -@@ -486,7 +496,7 @@ - - if (!(arp_flags & ATF_COM)) { - if (arp_flags & ATF_PUBL) -- printf("* "); -+ printf(" "); - else - printf(_(" ")); - } else { -@@ -499,12 +509,12 @@ - if (arp_flags & ATF_PERM) - printf("PERM "); - if (arp_flags & ATF_PUBL) -- printf("PUP "); --#ifdef HAVE_ATF_MAGIC -+ printf("PUB "); -+#ifdef ATF_MAGIC - if (arp_flags & ATF_MAGIC) - printf("AUTO "); - #endif --#ifdef HAVE_ATF_DONTPUB -+#ifdef ATF_DONTPUB - if (arp_flags & ATF_DONTPUB) - printf("DONTPUB "); - #endif -@@ -519,7 +529,8 @@ - static int arp_show(char *name) - { - char host[100]; -- struct sockaddr sa; -+ struct sockaddr_storage ss; -+ struct sockaddr *sa; - char ip[100]; - char hwa[100]; - char mask[100]; -@@ -532,14 +543,15 @@ - - host[0] = '\0'; - -+ sa = (struct sockaddr *)&ss; - if (name != NULL) { - /* Resolve the host name. */ - safe_strncpy(host, name, (sizeof host)); -- if (ap->input(0, host, &sa) < 0) { -+ if (ap->input(0, host, sa) < 0) { - ap->herror(host); - return (-1); - } -- safe_strncpy(host, ap->sprint(&sa, 1), sizeof(host)); -+ safe_strncpy(host, ap->sprint(sa, 1), sizeof(host)); - } - /* Open the PROCps kernel table. */ - if ((fp = fopen(_PATH_PROCNET_ARP, "r")) == NULL) { -@@ -575,10 +587,10 @@ - if (opt_n) - hostname = "?"; - else { -- if (ap->input(0, ip, &sa) < 0) -+ if (ap->input(0, ip, sa) < 0) - hostname = ip; - else -- hostname = ap->sprint(&sa, opt_n | 0x8000); -+ hostname = ap->sprint(sa, opt_n | 0x8000); - if (strcmp(hostname, ip) == 0) - hostname = "?"; - } -@@ -612,11 +624,10 @@ - static void usage(void) - { - fprintf(stderr, _("Usage:\n arp [-vn] [] [-i ] [-a] [] <-Display ARP cache\n")); -- fprintf(stderr, _(" arp [-v] [-i ] -d [pub][nopub] <-Delete ARP entry\n")); -- fprintf(stderr, _(" arp [-vnD] [] [-i ] -f [] <-Add entry from file\n")); -- fprintf(stderr, _(" arp [-v] [] [-i ] -s [temp][nopub] <-Add entry\n")); -- fprintf(stderr, _(" arp [-v] [] [-i ] -s [netmask ] pub <-''-\n")); -- fprintf(stderr, _(" arp [-v] [] [-i ] -Ds [netmask ] pub <-''-\n\n")); -+ fprintf(stderr, _(" arp [-v] [-i ] -d [pub] <-Delete ARP entry\n")); -+ fprintf(stderr, _(" arp [-vnD] [] [-i ] -f [] <-Add entry from file\n")); -+ fprintf(stderr, _(" arp [-v] [] [-i ] -s [temp] <-Add entry\n")); -+ fprintf(stderr, _(" arp [-v] [] [-i ] -Ds [netmask ] pub <-''-\n\n")); - - fprintf(stderr, _(" -a display (all) hosts in alternative (BSD) style\n")); - fprintf(stderr, _(" -s, --set set a new ARP entry\n")); ---- net-tools-1.60/config.in 2000-05-21 16:32:12.000000000 +0200 -+++ net-tools/config.in 2004-06-04 03:06:50.000000000 +0300 -@@ -49,16 +49,16 @@ - * - bool 'UNIX protocol family' HAVE_AFUNIX y - bool 'INET (TCP/IP) protocol family' HAVE_AFINET y --bool 'INET6 (IPv6) protocol family' HAVE_AFINET6 n -+bool 'INET6 (IPv6) protocol family' HAVE_AFINET6 y - bool 'Novell IPX/SPX protocol family' HAVE_AFIPX y - bool 'Appletalk DDP protocol family' HAVE_AFATALK y - bool 'AX25 (packet radio) protocol family' HAVE_AFAX25 y - bool 'NET/ROM (packet radio) protocol family' HAVE_AFNETROM y --bool 'Rose (packet radio) protocol family' HAVE_AFROSE n -+bool 'Rose (packet radio) protocol family' HAVE_AFROSE y - bool 'X.25 (CCITT) protocol family' HAVE_AFX25 y --bool 'Econet protocol family' HAVE_AFECONET n -+bool 'Econet protocol family' HAVE_AFECONET y - bool 'DECnet protocol family' HAVE_AFDECnet n --bool 'Ash protocol family' HAVE_AFASH n -+bool 'Ash protocol family' HAVE_AFASH y - * - * - * Device Hardware types. -@@ -71,21 +71,23 @@ - bool 'STRIP (Metricom radio) support' HAVE_HWSTRIP y - bool 'Token ring (generic) support' HAVE_HWTR y - bool 'AX25 (packet radio) support' HAVE_HWAX25 y --bool 'Rose (packet radio) support' HAVE_HWROSE n -+bool 'Rose (packet radio) support' HAVE_HWROSE y - bool 'NET/ROM (packet radio) support' HAVE_HWNETROM y - bool 'X.25 (generic) support' HAVE_HWX25 y - bool 'DLCI/FRAD (frame relay) support' HAVE_HWFR y --bool 'SIT (IPv6-in-IPv4) support' HAVE_HWSIT n --bool 'FDDI (generic) support' HAVE_HWFDDI n --bool 'HIPPI (generic) support' HAVE_HWHIPPI n --bool 'Ash hardware support' HAVE_HWASH n --bool '(Cisco)-HDLC/LAPB support' HAVE_HWHDLCLAPB n -+bool 'SIT (IPv6-in-IPv4) support' HAVE_HWSIT y -+bool 'FDDI (generic) support' HAVE_HWFDDI y -+bool 'HIPPI (generic) support' HAVE_HWHIPPI y -+bool 'Ash hardware support' HAVE_HWASH y -+bool '(Cisco)-HDLC/LAPB support' HAVE_HWHDLCLAPB y - bool 'IrDA support' HAVE_HWIRDA y --bool 'Econet hardware support' HAVE_HWEC n -+bool 'Econet hardware support' HAVE_HWEC y -+bool 'Generic EUI-64 hardware support' HAVE_HWEUI64 y -+ - * - * - * Other Features. - * --bool 'IP Masquerading support' HAVE_FW_MASQUERADE n --bool 'Build iptunnel and ipmaddr' HAVE_IP_TOOLS n --bool 'Build mii-tool' HAVE_MII n -+bool 'IP Masquerading support' HAVE_FW_MASQUERADE y -+bool 'Build iptunnel and ipmaddr' HAVE_IP_TOOLS y -+bool 'Build mii-tool' HAVE_MII y ---- net-tools-1.60/hostname.c 2001-04-08 19:04:23.000000000 +0200 -+++ net-tools/hostname.c 2003-10-12 00:08:10.000000000 +0300 -@@ -9,20 +9,19 @@ - * dnsdmoainname - * nisdomainname {name|-F file} - * -- * Version: hostname 1.96 (1996-02-18) -+ * Version: hostname 1.101 (2003-10-11) - * - * Author: Peter Tobias - * - * Changes: -- * {1.90} Peter Tobias : Added -a and -i options. -- * {1.91} Bernd Eckenfels : -v,-V rewritten, long_opts -- * (major rewrite), usage. -- *960120 {1.95} Bernd Eckenfels : -y/nisdomainname - support for get/ -- * setdomainname added -- *960218 {1.96} Bernd Eckenfels : netinet/in.h added -- *980629 {1.97} Arnaldo Carvalho de Melo : gettext instead of catgets for i18n -- *20000213 {1.99} Arnaldo Carvalho de Melo : fixed some i18n strings -+ * {1.90} Peter Tobias : Added -a and -i options. -+ * {1.91} Bernd Eckenfels : -v,-V rewritten, long_opts (major rewrite), usage. -+ *19960120 {1.95} Bernd Eckenfels : -y/nisdomainname - support for get/setdomainname added -+ *19960218 {1.96} Bernd Eckenfels : netinet/in.h added -+ *19980629 {1.97} Arnaldo Carvalho de Melo : gettext instead of catgets for i18n -+ *20000213 {1.99} Arnaldo Carvalho de Melo : fixed some i18n strings - *20010404 {1.100} Arnaldo Carvalho de Melo: use setlocale -+ *20031011 {1.101} Maik Broemme: gcc 3.x fixes (default: break) - * - * This program is free software; you can redistribute it - * and/or modify it under the terms of the GNU General -@@ -31,7 +30,9 @@ - * your option) any later version. - */ - #include -+#include - #include -+#include - #include - #include - #include -@@ -78,6 +79,7 @@ - fprintf(stderr, _("%s: name too long\n"), program_name); - break; - default: -+ break; - } - exit(1); - } -@@ -97,7 +99,6 @@ - case EINVAL: - fprintf(stderr, _("%s: name too long\n"), program_name); - break; -- default: - } - exit(1); - }; -@@ -116,7 +117,6 @@ - case EINVAL: - fprintf(stderr, _("%s: name too long\n"), program_name); - break; -- default: - } - exit(1); - }; -@@ -173,7 +173,6 @@ - *p = '\0'; - printf("%s\n", hp->h_name); - break; -- default: - } - } - -@@ -326,11 +325,12 @@ - break; - case 'V': - version(); -+ break; // not reached - case '?': - case 'h': - default: - usage(); -- -+ break; // not reached - }; - - ---- net-tools-1.60/ifconfig.c 2001-04-13 20:25:18.000000000 +0200 -+++ net-tools/ifconfig.c 2002-12-10 02:56:41.000000000 +0200 -@@ -3,7 +3,7 @@ - * that either displays or sets the characteristics of - * one or more of the system's networking interfaces. - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Author: Fred N. van Kempen, - * and others. Copyright 1993 MicroWalt Corporation -@@ -88,7 +88,6 @@ - char *Release = RELEASE, *Version = "ifconfig 1.42 (2001-04-13)"; - - int opt_a = 0; /* show all interfaces */ --int opt_i = 0; /* show the statistics */ - int opt_v = 0; /* debugging output flag */ - - int addr_family = 0; /* currently selected AF */ -@@ -105,7 +104,7 @@ - int res; - - if (ife_short) -- printf(_("Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg\n")); -+ printf(_("Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg\n")); - - if (!ifname) { - res = for_all_interfaces(do_if_print, &opt_a); -@@ -127,7 +126,7 @@ - - safe_strncpy(ifr.ifr_name, ifname, IFNAMSIZ); - if (ioctl(skfd, SIOCGIFFLAGS, &ifr) < 0) { -- fprintf(stderr, _("%s: unknown interface: %s\n"), -+ fprintf(stderr, _("%s: ERROR while getting interface flags: %s\n"), - ifname, strerror(errno)); - return (-1); - } -@@ -159,7 +158,7 @@ - - safe_strncpy(ifr.ifr_name, ifname, IFNAMSIZ); - if (ioctl(fd, SIOCGIFFLAGS, &ifr) < 0) { -- fprintf(stderr, _("%s: unknown interface: %s\n"), -+ fprintf(stderr, _("%s: ERROR while getting interface flags: %s\n"), - ifname, strerror(errno)); - return -1; - } -@@ -172,9 +171,35 @@ - return (0); - } - -+/** test is a specified flag is set */ -+static int test_flag(char *ifname, short flags) -+{ -+ struct ifreq ifr; -+ int fd; -+ -+ if (strchr(ifname, ':')) { -+ /* This is a v4 alias interface. Downing it via a socket for -+ another AF may have bad consequences. */ -+ fd = get_socket_for_af(AF_INET); -+ if (fd < 0) { -+ fprintf(stderr, _("No support for INET on this system.\n")); -+ return -1; -+ } -+ } else -+ fd = skfd; -+ -+ safe_strncpy(ifr.ifr_name, ifname, IFNAMSIZ); -+ if (ioctl(fd, SIOCGIFFLAGS, &ifr) < 0) { -+ fprintf(stderr, _("%s: ERROR while testing interface flags: %s\n"), -+ ifname, strerror(errno)); -+ return -1; -+ } -+ return (ifr.ifr_flags & flags); -+} -+ - static void usage(void) - { -- fprintf(stderr, _("Usage:\n ifconfig [-a] [-i] [-v] [-s] [[]
]\n")); -+ fprintf(stderr, _("Usage:\n ifconfig [-a] [-v] [-s] [[]
]\n")); - #if HAVE_AFINET - fprintf(stderr, _(" [add
[/]]\n")); - fprintf(stderr, _(" [del
[/]]\n")); -@@ -208,7 +233,7 @@ - static void version(void) - { - fprintf(stderr, "%s\n%s\n", Release, Version); -- exit(0); -+ exit(E_USAGE); - } - - static int set_netmask(int skfd, struct ifreq *ifr, struct sockaddr *sa) -@@ -222,18 +247,19 @@ - strerror(errno)); - err = 1; - } -- return 0; -+ return err; - } - - int main(int argc, char **argv) - { - struct sockaddr sa; -+ struct sockaddr samask; - struct sockaddr_in sin; - char host[128]; - struct aftype *ap; - struct hwtype *hw; - struct ifreq ifr; -- int goterr = 0, didnetmask = 0; -+ int goterr = 0, didnetmask = 0, neednetmask=0; - char **spp; - int fd; - #if HAVE_AFINET6 -@@ -388,6 +414,8 @@ - } - if (!strcmp(*spp, "-promisc")) { - goterr |= clr_flag(ifr.ifr_name, IFF_PROMISC); -+ if (test_flag(ifr.ifr_name, IFF_PROMISC) > 0) -+ fprintf(stderr, _("Warning: Interface %s still in promisc mode... maybe other application is running?\n"), ifr.ifr_name); - spp++; - continue; - } -@@ -398,6 +426,8 @@ - } - if (!strcmp(*spp, "-multicast")) { - goterr |= clr_flag(ifr.ifr_name, IFF_MULTICAST); -+ if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0) -+ fprintf(stderr, _("Warning: Interface %s still in MULTICAST mode.\n"), ifr.ifr_name); - spp++; - continue; - } -@@ -408,6 +438,8 @@ - } - if (!strcmp(*spp, "-allmulti")) { - goterr |= clr_flag(ifr.ifr_name, IFF_ALLMULTI); -+ if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0) -+ fprintf(stderr, _("Warning: Interface %s still in ALLMULTI mode.\n"), ifr.ifr_name); - spp++; - continue; - } -@@ -430,6 +462,8 @@ - if (!strcmp(*spp, "-dynamic")) { - goterr |= clr_flag(ifr.ifr_name, IFF_DYNAMIC); - spp++; -+ if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0) -+ fprintf(stderr, _("Warning: Interface %s still in DYNAMIC mode.\n"), ifr.ifr_name); - continue; - } - #endif -@@ -486,6 +520,8 @@ - - if (!strcmp(*spp, "-broadcast")) { - goterr |= clr_flag(ifr.ifr_name, IFF_BROADCAST); -+ if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0) -+ fprintf(stderr, _("Warning: Interface %s still in BROADCAST mode.\n"), ifr.ifr_name); - spp++; - continue; - } -@@ -493,7 +529,10 @@ - if (*++spp != NULL) { - safe_strncpy(host, *spp, (sizeof host)); - if (ap->input(0, host, &sa) < 0) { -- ap->herror(host); -+ if (ap->herror) -+ ap->herror(host); -+ else -+ fprintf(stderr, _("ifconfig: Error resolving '%s' for broadcast\n"), host); - goterr = 1; - spp++; - continue; -@@ -515,7 +554,10 @@ - usage(); - safe_strncpy(host, *spp, (sizeof host)); - if (ap->input(0, host, &sa) < 0) { -- ap->herror(host); -+ if (ap->herror) -+ ap->herror(host); -+ else -+ fprintf(stderr, _("ifconfig: Error resolving '%s' for dstaddr\n"), host); - goterr = 1; - spp++; - continue; -@@ -535,13 +577,16 @@ - usage(); - safe_strncpy(host, *spp, (sizeof host)); - if (ap->input(0, host, &sa) < 0) { -- ap->herror(host); -+ if (ap->herror) -+ ap->herror(host); -+ else -+ fprintf(stderr, _("ifconfig: Error resolving '%s' for netmask\n"), host); - goterr = 1; - spp++; - continue; - } - didnetmask++; -- goterr = set_netmask(ap->fd, &ifr, &sa); -+ goterr |= set_netmask(ap->fd, &ifr, &sa); - spp++; - continue; - } -@@ -613,6 +658,8 @@ - if (!strcmp(*spp, "-pointopoint")) { - goterr |= clr_flag(ifr.ifr_name, IFF_POINTOPOINT); - spp++; -+ if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0) -+ fprintf(stderr, _("Warning: Interface %s still in POINTOPOINT mode.\n"), ifr.ifr_name); - continue; - } - if (!strcmp(*spp, "pointopoint")) { -@@ -620,7 +667,10 @@ - spp++; - safe_strncpy(host, *spp, (sizeof host)); - if (ap->input(0, host, &sa)) { -- ap->herror(host); -+ if (ap->herror) -+ ap->herror(host); -+ else -+ fprintf(stderr, _("ifconfig: Error resolving '%s' for pointopoint\n"), host); - goterr = 1; - spp++; - continue; -@@ -661,8 +711,12 @@ - memcpy((char *) &ifr.ifr_hwaddr, (char *) &sa, - sizeof(struct sockaddr)); - if (ioctl(skfd, SIOCSIFHWADDR, &ifr) < 0) { -- fprintf(stderr, "SIOCSIFHWADDR: %s\n", -- strerror(errno)); -+ if (errno == EBUSY) -+ fprintf(stderr, "SIOCSIFHWADDR: %s - you may need to down the interface\n", -+ strerror(errno)); -+ else -+ fprintf(stderr, "SIOCSIFHWADDR: %s\n", -+ strerror(errno)); - goterr = 1; - } - spp++; -@@ -681,12 +735,15 @@ - usage(); - *cp = 0; - } else { -- prefix_len = 0; -+ prefix_len = 128; - } - safe_strncpy(host, *spp, (sizeof host)); - if (inet6_aftype.input(1, host, - (struct sockaddr *) &sa6) < 0) { -- inet6_aftype.herror(host); -+ if (inet6_aftype.herror) -+ inet6_aftype.herror(host); -+ else -+ fprintf(stderr, _("ifconfig: Error resolving '%s' for add\n"), host); - goterr = 1; - spp++; - continue; -@@ -771,7 +828,7 @@ - usage(); - *cp = 0; - } else { -- prefix_len = 0; -+ prefix_len = 128; - } - safe_strncpy(host, *spp, (sizeof host)); - if (inet6_aftype.input(1, host, -@@ -800,6 +857,8 @@ - } - ifr6.ifr6_ifindex = ifr.ifr_ifindex; - ifr6.ifr6_prefixlen = prefix_len; -+ if (opt_v) -+ fprintf(stderr, "now deleting: ioctl(SIOCDIFADDR,{ifindex=%d,prefixlen=%ld})\n",ifr.ifr_ifindex,prefix_len); - if (ioctl(fd, SIOCDIFADDR, &ifr6) < 0) { - fprintf(stderr, "SIOCDIFADDR: %s\n", - strerror(errno)); -@@ -859,7 +918,7 @@ - usage(); - *cp = 0; - } else { -- prefix_len = 0; -+ prefix_len = 128; - } - safe_strncpy(host, *spp, (sizeof host)); - if (inet6_aftype.input(1, host, (struct sockaddr *) &sa6) < 0) { -@@ -903,7 +962,7 @@ - /* FIXME: sa is too small for INET6 addresses, inet6 should use that too, - broadcast is unexpected */ - if (ap->getmask) { -- switch (ap->getmask(host, &sa, NULL)) { -+ switch (ap->getmask(host, &samask, NULL)) { - case -1: - usage(); - break; -@@ -911,8 +970,8 @@ - if (didnetmask) - usage(); - -- goterr = set_netmask(skfd, &ifr, &sa); -- didnetmask++; -+ // remeber to set the netmask from samask later -+ neednetmask = 1; - break; - } - } -@@ -921,9 +980,11 @@ - exit(1); - } - if (ap->input(0, host, &sa) < 0) { -- ap->herror(host); -- fprintf(stderr, _("ifconfig: `--help' gives usage information.\n")); -- exit(1); -+ if (ap->herror) -+ ap->herror(host); -+ else -+ fprintf(stderr,_("ifconfig: error resolving '%s' to set address for af=%s\n"), host, ap->name); fprintf(stderr, -+ _("ifconfig: `--help' gives usage information.\n")); exit(1); - } - memcpy((char *) &ifr.ifr_addr, (char *) &sa, sizeof(struct sockaddr)); - { -@@ -980,6 +1041,14 @@ - spp++; - } - -+ if (neednetmask) { -+ goterr |= set_netmask(skfd, &ifr, &samask); -+ didnetmask++; -+ } -+ -+ if (opt_v && goterr) -+ fprintf(stderr, _("WARNING: at least one error occured. (%d)\n"), goterr); -+ - return (goterr); - } - ---- net-tools-1.60/include/interface.h 2001-02-10 21:24:25.000000000 +0200 -+++ net-tools/include/interface.h 2002-03-05 02:47:36.000000000 +0200 -@@ -64,13 +64,17 @@ - extern int if_fetch(struct interface *ife); - - extern int for_all_interfaces(int (*)(struct interface *, void *), void *); --extern int free_interface_list(void); -+extern int if_cache_free(void); - extern struct interface *lookup_interface(char *name); - extern int if_readlist(void); - - extern int do_if_fetch(struct interface *ife); - extern int do_if_print(struct interface *ife, void *cookie); - -+extern int procnetdev_version(char *buf); -+extern int get_dev_fields(char *bp, struct interface *ife); -+extern char * get_name(char *name, char *p); -+ - extern void ife_print(struct interface *ptr); - - extern int ife_short; ---- net-tools-1.60/include/mii.h 2000-05-21 16:21:27.000000000 +0200 -+++ net-tools/include/mii.h 2006-09-27 23:59:19.000000000 +0300 -@@ -6,11 +6,14 @@ - * Copyright (C) 2000 David A. Hinds -- dhinds@pcmcia.sourceforge.org - */ - --#ifndef _LINUX_MII_H --#define _LINUX_MII_H -+#ifndef _NETTOOL_MII_H -+#define _NETTOOLS_MII_H -+ -+#include - - /* network interface ioctl's for MII commands */ - #ifndef SIOCGMIIPHY -+#warning "SIOCGMIIPHY is not defined by your kernel source" - #define SIOCGMIIPHY (SIOCDEVPRIVATE) /* Read from current PHY */ - #define SIOCGMIIREG (SIOCDEVPRIVATE+1) /* Read any PHY register */ - #define SIOCSMIIREG (SIOCDEVPRIVATE+2) /* Write any PHY register */ -@@ -38,6 +41,7 @@ - #define MII_BMCR_RESTART 0x0200 - #define MII_BMCR_DUPLEX 0x0100 - #define MII_BMCR_COLTEST 0x0080 -+#define MII_BMCR_SPEED1000 0x0040 - - /* Basic Mode Status Register */ - #define MII_BMSR 0x01 -@@ -83,4 +87,17 @@ - #define MII_ANER_PAGE_RX 0x0002 - #define MII_ANER_LP_AN_ABLE 0x0001 - --#endif /* _LINUX_MII_H */ -+#define MII_CTRL1000 0x09 -+#define MII_BMCR2_1000FULL 0x0200 -+#define MII_BMCR2_1000HALF 0x0100 -+ -+#define MII_STAT1000 0x0a -+#define MII_LPA2_1000LOCALOK 0x2000 -+#define MII_LPA2_1000REMRXOK 0x1000 -+#define MII_LPA2_1000FULL 0x0800 -+#define MII_LPA2_1000HALF 0x0400 -+ -+/* Last register we need for show_basic_mii() */ -+#define MII_BASIC_MAX (MII_STAT1000+1) -+ -+#endif /* _NETTOOLS_MII_H */ ---- net-tools-1.60/include/util-ank.h 1999-04-21 20:38:05.000000000 +0300 -+++ net-tools/include/util-ank.h 2006-10-11 04:14:33.000000000 +0300 -@@ -75,6 +75,6 @@ - extern int do_class(int argc, char **argv); - extern int do_filter(int argc, char **argv); - --extern const char *format_host(int af, void *addr, __u8 *abuf, int alen); -+extern const char *format_host(int af, void *addr, char *abuf, int alen); - - #endif /* __UTILS_H__ */ ---- net-tools-1.60/ipmaddr.c 2001-04-08 19:04:23.000000000 +0200 -+++ net-tools/ipmaddr.c 2006-10-11 04:13:57.000000000 +0300 -@@ -291,13 +291,15 @@ - static int multiaddr_list(int argc, char **argv) - { - struct ma_info *list = NULL; -+ size_t l; - - while (argc > 0) { - if (strcmp(*argv, "dev") == 0) { - NEXT_ARG(); -- if (filter_dev[0]) -+ l = strlen(*argv); -+ if (l <= 0 || l >= sizeof(filter_dev)) - usage(); -- strcpy(filter_dev, *argv); -+ strncpy(filter_dev, *argv, sizeof (filter_dev)); - } else if (strcmp(*argv, "all") == 0) { - filter_family = AF_UNSPEC; - } else if (strcmp(*argv, "ipv4") == 0) { -@@ -307,9 +309,10 @@ - } else if (strcmp(*argv, "link") == 0) { - filter_family = AF_PACKET; - } else { -- if (filter_dev[0]) -+ l = strlen(*argv); -+ if (l <= 0 || l >= sizeof(filter_dev)) - usage(); -- strcpy(filter_dev, *argv); -+ strncpy(filter_dev, *argv, sizeof (filter_dev)); - } - argv++; argc--; - } ---- net-tools-1.60/lib/ddp_gr.c 1999-01-09 17:54:32.000000000 +0200 -+++ net-tools/lib/ddp_gr.c 2002-06-02 08:25:15.000000000 +0300 -@@ -1,3 +1,20 @@ -+/* -+ * lib/ddp_gr.c Prinbting of DDP (AppleTalk) routing table -+ * used by the NET-LIB. -+ * -+ * NET-LIB -+ * -+ * Version: $Id$ -+ * -+ * Author: Ajax -+ * -+ * Modification: -+ * 2002-06-02 integrated into main source by Bernd Eckenfels -+ * -+ */ -+ -+/* TODO: name lookups (/etc/atalk.names? NBP?) */ -+ - #include "config.h" - - #if HAVE_AFATALK -@@ -16,9 +33,61 @@ - #include "pathnames.h" - #include "intl.h" - -+/* stolen from inet_gr.c */ -+#define flags_decode(i,o) do { \ -+ o[0] = '\0'; \ -+ if (i & RTF_UP) strcat(o, "U"); \ -+ if (i & RTF_GATEWAY) strcat(o, "G"); \ -+ if (i & RTF_REJECT) strcat(o, "!"); \ -+ if (i & RTF_HOST) strcat(o, "H"); \ -+ if (i & RTF_REINSTATE) strcat(o, "R"); \ -+ if (i & RTF_DYNAMIC) strcat(o, "D"); \ -+ if (i & RTF_MODIFIED) strcat(o, "M"); \ -+ if (i & RTF_DEFAULT) strcat(o, "d"); \ -+ if (i & RTF_ALLONLINK) strcat(o, "a"); \ -+ if (i & RTF_ADDRCONF) strcat(o, "c"); \ -+ if (i & RTF_NONEXTHOP) strcat(o, "o"); \ -+ if (i & RTF_EXPIRES) strcat(o, "e"); \ -+ if (i & RTF_CACHE) strcat(o, "c"); \ -+ if (i & RTF_FLOW) strcat(o, "f"); \ -+ if (i & RTF_POLICY) strcat(o, "p"); \ -+ if (i & RTF_LOCAL) strcat(o, "l"); \ -+ if (i & RTF_MTU) strcat(o, "u"); \ -+ if (i & RTF_WINDOW) strcat(o, "w"); \ -+ if (i & RTF_IRTT) strcat(o, "i"); \ -+ if (i & RTF_NOTCACHED) strcat(o, "n"); \ -+ } while (0) -+ - int DDP_rprint(int options) - { -- fprintf(stderr, _("Routing table for `ddp' not yet supported.\n")); -- return (1); -+ FILE *fp; -+ char *dest, *gw, *dev, *flags; -+ char oflags[32]; -+ char *hdr = "Destination Gateway Device Flags"; -+ -+ fp = fopen(_PATH_PROCNET_ATALK_ROUTE, "r"); -+ -+ if (!fp) { -+ perror("Error opening " _PATH_PROCNET_ATALK_ROUTE); -+ fprintf(stderr, "DDP (AppleTalk) not configured on this system.\n"); -+ return 1; -+ } -+ -+ fscanf(fp, "%as %as %as %as\n", &dest, &gw, &flags, &dev); -+ free(dest); free(gw); free(dev); free(flags); -+ -+ printf("%s\n", hdr); -+ -+ while (fscanf(fp, "%as %as %as %as\n", &dest, &gw, &flags, &dev) == 4) { -+ int iflags = atoi(flags); -+ flags_decode(iflags, oflags); -+ printf("%-16s%-16s%-16s%-s\n", dest, gw, dev, oflags); -+ free(dest); free(gw); free(dev); free(flags); -+ } -+ -+ fclose(fp); -+ -+ return 0; -+ - } - #endif ---- net-tools-1.60/lib/ether.c 1999-11-20 23:02:53.000000000 +0200 -+++ net-tools/lib/ether.c 2002-07-30 08:17:29.000000000 +0300 -@@ -2,7 +2,7 @@ - * lib/ether.c This file contains an implementation of the "Ethernet" - * support functions. - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Author: Fred N. van Kempen, - * Copyright 1993 MicroWalt Corporation -@@ -39,7 +39,7 @@ - { - static char buff[64]; - -- snprintf(buff, sizeof(buff), "%02X:%02X:%02X:%02X:%02X:%02X", -+ snprintf(buff, sizeof(buff), "%02x:%02x:%02x:%02x:%02x:%02x", - (ptr[0] & 0377), (ptr[1] & 0377), (ptr[2] & 0377), - (ptr[3] & 0377), (ptr[4] & 0377), (ptr[5] & 0377) - ); ---- net-tools-1.60/lib/eui64.c 1970-01-01 03:00:00.000000000 +0300 -+++ net-tools/lib/eui64.c 2001-11-12 04:12:05.000000000 +0200 -@@ -0,0 +1,155 @@ -+/* -+ * lib/eui64.c This file contains support for generic EUI-64 hw addressing -+ * -+ * Version: $Id$ -+ * -+ * Author: Daniel Stodden -+ * Copyright 2001 Daniel Stodden -+ * -+ * blueprinted from ether.c -+ * Copyright 1993 MicroWalt Corporation -+ * -+ * This program is free software; you can redistribute it -+ * and/or modify it under the terms of the GNU General -+ * Public License as published by the Free Software -+ * Foundation; either version 2 of the License, or (at -+ * your option) any later version. -+ */ -+#include "config.h" -+ -+#if HAVE_HWEUI64 -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include "net-support.h" -+#include "pathnames.h" -+#include "intl.h" -+ -+/* -+ * EUI-64 constants -+ */ -+ -+#define EUI64_ALEN 8 -+ -+#ifndef ARPHRD_EUI64 -+#define ARPHRD_EUI64 27 -+#warning "ARPHRD_EUI64 not defined in . Using private value 27" -+#endif -+ -+struct hwtype eui64_hwtype; -+ -+/* Display an EUI-64 address in readable format. */ -+static char *pr_eui64( unsigned char *ptr ) -+{ -+ static char buff[64]; -+ -+ snprintf(buff, sizeof(buff), "%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X", -+ (ptr[0] & 0377), (ptr[1] & 0377), (ptr[2] & 0377), (ptr[3] & 0377), -+ (ptr[4] & 0377), (ptr[5] & 0377), (ptr[6] & 0377), (ptr[7] & 0377) -+ ); -+ return (buff); -+} -+ -+/* Start the PPP encapsulation on the file descriptor. */ -+static int in_eui64( char *bufp, struct sockaddr *sap ) -+{ -+ unsigned char *ptr; -+ char c, *orig; -+ int i; -+ unsigned val; -+ -+ sap->sa_family = eui64_hwtype.type; -+ ptr = sap->sa_data; -+ -+ i = 0; -+ orig = bufp; -+ -+ while ((*bufp != '\0') && (i < EUI64_ALEN)) { -+ val = 0; -+ c = *bufp++; -+ if (isdigit(c)) -+ val = c - '0'; -+ else if (c >= 'a' && c <= 'f') -+ val = c - 'a' + 10; -+ else if (c >= 'A' && c <= 'F') -+ val = c - 'A' + 10; -+ else { -+#ifdef DEBUG -+ fprintf( stderr, _("in_eui64(%s): invalid eui64 address!\n"), -+ orig ); -+#endif -+ errno = EINVAL; -+ return (-1); -+ } -+ -+ val <<= 4; -+ c = *bufp; -+ if (isdigit(c)) -+ val |= c - '0'; -+ else if (c >= 'a' && c <= 'f') -+ val |= c - 'a' + 10; -+ else if (c >= 'A' && c <= 'F') -+ val |= c - 'A' + 10; -+ else if (c == ':' || c == 0) -+ val >>= 4; -+ else { -+#ifdef DEBUG -+ fprintf( stderr, _("in_eui64(%s): invalid eui64 address!\n"), -+ orig ); -+#endif -+ errno = EINVAL; -+ return (-1); -+ } -+ -+ if (c != 0) -+ bufp++; -+ -+ *ptr++ = (unsigned char) (val & 0377); -+ i++; -+ -+ /* We might get a semicolon here - not required. */ -+ if (*bufp == ':') { -+ if (i == EUI64_ALEN) { -+#ifdef DEBUG -+ fprintf(stderr, _("in_eui64(%s): trailing : ignored!\n"), -+ orig) -+#endif -+ ; /* nothing */ -+ } -+ bufp++; -+ } -+ } -+ -+ /* That's it. Any trailing junk? */ -+ if ((i == EUI64_ALEN) && (*bufp != '\0')) { -+#ifdef DEBUG -+ fprintf(stderr, _("in_eui64(%s): trailing junk!\n"), orig); -+ errno = EINVAL; -+ return (-1); -+#endif -+ } -+#ifdef DEBUG -+ fprintf(stderr, "in_eui64(%s): %s\n", orig, pr_eui64(sap->sa_data)); -+#endif -+ -+ return (0); -+} -+ -+struct hwtype eui64_hwtype = -+{ -+ "eui64", NULL, /*"EUI-64 addressing", */ ARPHRD_EUI64, EUI64_ALEN, -+ pr_eui64, in_eui64, NULL, 0 -+}; -+ -+ -+#endif /* HAVE_EUI64 */ ---- net-tools-1.60/lib/hw.c 2000-05-20 20:27:25.000000000 +0200 -+++ net-tools/lib/hw.c 2001-11-12 04:12:05.000000000 +0200 -@@ -2,7 +2,7 @@ - * lib/hw.c This file contains the top-level part of the hardware - * support functions module. - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Maintainer: Bernd 'eckes' Eckenfels, - * -@@ -73,6 +73,8 @@ - - extern struct hwtype ec_hwtype; - -+extern struct hwtype eui64_hwtype; -+ - static struct hwtype *hwtypes[] = - { - -@@ -144,6 +146,9 @@ - #if HAVE_HWX25 - &x25_hwtype, - #endif -+#if HAVE_HWEUI64 -+ &eui64_hwtype, -+#endif - &unspec_hwtype, - NULL - }; -@@ -217,6 +222,9 @@ - #if HAVE_HWEC - ec_hwtype.title = _("Econet"); - #endif -+#if HAVE_HWEUI64 -+ eui64_hwtype.title = _("Generic EUI-64"); -+#endif - sVhwinit = 1; - } - ---- net-tools-1.60/lib/inet6.c 2000-10-28 13:04:00.000000000 +0200 -+++ net-tools/lib/inet6.c 2002-12-10 03:03:09.000000000 +0200 -@@ -3,7 +3,7 @@ - * support functions for the net-tools. - * (most of it copied from lib/inet.c 1.26). - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Author: Fred N. van Kempen, - * Copyright 1993 MicroWalt Corporation -@@ -44,6 +44,21 @@ - - extern int h_errno; /* some netdb.h versions don't export this */ - -+char * fix_v4_address(char *buf, struct in6_addr *in6) -+{ -+ if (IN6_IS_ADDR_V4MAPPED(in6->s6_addr)) { -+ char *s =strchr(buf, '.'); -+ if (s) { -+ while (s > buf && *s != ':') -+ --s; -+ if (*s == ':') ++s; -+ else s = NULL; -+ } -+ if (s) return s; -+ } -+ return buf; -+} -+ - static int INET6_resolve(char *name, struct sockaddr_in6 *sin6) - { - struct addrinfo req, *ai; -@@ -83,14 +98,14 @@ - return (-1); - } - if (numeric & 0x7FFF) { -- inet_ntop(AF_INET6, &sin6->sin6_addr, name, 80); -+ inet_ntop( AF_INET6, &sin6->sin6_addr, name, 80); - return (0); - } - if (IN6_IS_ADDR_UNSPECIFIED(&sin6->sin6_addr)) { - if (numeric & 0x8000) - strcpy(name, "default"); - else -- strcpy(name, "*"); -+ strcpy(name, "[::]"); - return (0); - } - -@@ -109,13 +124,14 @@ - } - - -+ - /* Display an Internet socket address. */ - static char *INET6_print(unsigned char *ptr) - { - static char name[80]; - - inet_ntop(AF_INET6, (struct in6_addr *) ptr, name, 80); -- return name; -+ return fix_v4_address(name, (struct in6_addr *)ptr); - } - - -@@ -129,13 +145,14 @@ - return safe_strncpy(buff, _("[NONE SET]"), sizeof(buff)); - if (INET6_rresolve(buff, (struct sockaddr_in6 *) sap, numeric) != 0) - return safe_strncpy(buff, _("[UNKNOWN]"), sizeof(buff)); -- return (buff); -+ return (fix_v4_address(buff, &((struct sockaddr_in6 *)sap)->sin6_addr)); - } - - - static int INET6_getsock(char *bufp, struct sockaddr *sap) - { - struct sockaddr_in6 *sin6; -+ char *p; - - sin6 = (struct sockaddr_in6 *) sap; - sin6->sin6_family = AF_INET6; -@@ -143,7 +160,9 @@ - - if (inet_pton(AF_INET6, bufp, sin6->sin6_addr.s6_addr) <= 0) - return (-1); -- -+ p = fix_v4_address(bufp, &sin6->sin6_addr); -+ if (p != bufp) -+ memcpy(bufp, p, strlen(p)+1); - return 16; /* ?;) */ - } - ---- net-tools-1.60/lib/inet6_gr.c 2001-04-01 16:48:06.000000000 +0200 -+++ net-tools/lib/inet6_gr.c 2002-07-30 08:24:20.000000000 +0300 -@@ -1,4 +1,4 @@ --/* -+ /* - Modifications: - 1998-07-01 - Arnaldo Carvalho de Melo - GNU gettext instead of catgets, - snprintf instead of sprintf -@@ -71,11 +71,15 @@ - printf(_("INET6 (IPv6) not configured in this system.\n")); - return 1; - } -- printf(_("Kernel IPv6 routing table\n")); - -- printf(_("Destination " -- "Next Hop " -- "Flags Metric Ref Use Iface\n")); -+ if (numeric & RTF_CACHE) -+ printf(_("Kernel IPv6 routing cache\n")); -+ else -+ printf(_("Kernel IPv6 routing table\n")); -+ -+ printf(_("Destination " -+ "Next Hop " -+ "Flag Met Ref Use If\n")); - - while (fgets(buff, 1023, fp)) { - num = sscanf(buff, "%4s%4s%4s%4s%4s%4s%4s%4s %02x %4s%4s%4s%4s%4s%4s%4s%4s %02x %4s%4s%4s%4s%4s%4s%4s%4s %08x %08x %08x %08x %s\n", -@@ -87,13 +91,19 @@ - &slen, - naddr6p[0], naddr6p[1], naddr6p[2], naddr6p[3], - naddr6p[4], naddr6p[5], naddr6p[6], naddr6p[7], -- &metric, &use, &refcnt, &iflags, iface); -+ &metric, &refcnt, &use, &iflags, iface); - #if 0 - if (num < 23) - continue; - #endif -- if (!(iflags & RTF_UP)) -- continue; -+ if (iflags & RTF_CACHE) { -+ if (!(numeric & RTF_CACHE)) -+ continue; -+ } else { -+ if (numeric & RTF_CACHE) -+ continue; -+ } -+ - /* Fetch and resolve the target address. */ - snprintf(addr6, sizeof(addr6), "%s:%s:%s:%s:%s:%s:%s:%s", - addr6p[0], addr6p[1], addr6p[2], addr6p[3], -@@ -112,7 +122,12 @@ - inet6_aftype.sprint((struct sockaddr *) &snaddr6, 1)); - - /* Decode the flags. */ -- strcpy(flags, "U"); -+ -+ flags[0]=0; -+ if (iflags & RTF_UP) -+ strcat(flags, "U"); -+ if (iflags & RTF_REJECT) -+ strcat(flags, "!"); - if (iflags & RTF_GATEWAY) - strcat(flags, "G"); - if (iflags & RTF_HOST) -@@ -123,9 +138,19 @@ - strcat(flags, "A"); - if (iflags & RTF_CACHE) - strcat(flags, "C"); -+ if (iflags & RTF_ALLONLINK) -+ strcat(flags, "a"); -+ if (iflags & RTF_EXPIRES) -+ strcat(flags, "e"); -+ if (iflags & RTF_MODIFIED) -+ strcat(flags, "m"); -+ if (iflags & RTF_NONEXTHOP) -+ strcat(flags, "n"); -+ if (iflags & RTF_FLOW) -+ strcat(flags, "f"); - - /* Print the info. */ -- printf("%-43s %-39s %-5s %-6d %-2d %7d %-8s\n", -+ printf("%-30s %-26s %-4s %-3d %-1d%6d %s\n", - addr6, naddr6, flags, metric, refcnt, use, iface); - } - -@@ -144,8 +169,7 @@ - char addr6p[8][5], haddrp[6][3]; - - if (!fp) { -- ESYSNOT("nd_print", "ND Table"); -- return 1; -+ return rprint_fib6(ext, numeric | RTF_CACHE); - } - printf(_("Kernel IPv6 Neighbour Cache\n")); - ---- net-tools-1.60/lib/inet.c 2000-05-22 23:27:13.000000000 +0200 -+++ net-tools/lib/inet.c 2003-10-19 14:57:37.000000000 +0300 -@@ -3,7 +3,7 @@ - * support functions for the net-tools. - * (NET-3 base distribution). - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Author: Fred N. van Kempen, - * Copyright 1993 MicroWalt Corporation -@@ -144,7 +144,7 @@ - struct hostent *ent; - struct netent *np; - struct addr *pn; -- unsigned long ad, host_ad; -+ u_int32_t ad, host_ad; - int host = 0; - - /* Grmpf. -FvK */ -@@ -155,7 +155,7 @@ - errno = EAFNOSUPPORT; - return (-1); - } -- ad = (unsigned long) sin->sin_addr.s_addr; -+ ad = sin->sin_addr.s_addr; - #ifdef DEBUG - fprintf (stderr, "rresolve: %08lx, mask %08x, num %08x \n", ad, netmask, numeric); - #endif ---- net-tools-1.60/lib/inet_sr.c 2000-02-20 23:46:45.000000000 +0200 -+++ net-tools/lib/inet_sr.c 2003-10-12 00:08:10.000000000 +0300 -@@ -3,6 +3,7 @@ - 1998-07-01 - Arnaldo Carvalho de Melo - GNU gettext instead of catgets - 1999-10-07 - Kurt Garloff - for -host and gws: prefer host names - over networks (or even reject) -+ 2003-10-11 - Maik Broemme - gcc 3.x warnign fixes (default: break;) - */ - - #include "config.h" -@@ -104,7 +105,6 @@ - isnet = 1; break; - case 2: - isnet = 0; break; -- default: - } - - /* Fill in the other fields. */ ---- net-tools-1.60/lib/interface.c 2001-02-10 21:31:15.000000000 +0200 -+++ net-tools/lib/interface.c 2005-08-24 01:46:51.000000000 +0300 -@@ -7,7 +7,7 @@ - 8/2000 Andi Kleen make the list operations a bit more efficient. - People are crazy enough to use thousands of aliases now. - -- $Id$ -+ $Id$ - */ - - #include "config.h" -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - - #if HAVE_AFIPX - #if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) -@@ -87,14 +88,20 @@ - - int ife_short; - -+int if_list_all = 0; /* do we have requested the complete proc list, yet? */ -+ - static struct interface *int_list, *int_last; - - static int if_readlist_proc(char *); - --static struct interface *add_interface(char *name) -+static struct interface *if_cache_add(char *name) - { - struct interface *ife, **nextp, *new; - -+ if (!int_list) -+ int_last = NULL; -+ -+ /* the cache is sorted, so if we hit a smaller if, exit */ - for (ife = int_last; ife; ife = ife->prev) { - int n = nstrcmp(ife->name, name); - if (n == 0) -@@ -104,7 +111,7 @@ - } - new(new); - safe_strncpy(new->name, name, IFNAMSIZ); -- nextp = ife ? &ife->next : &int_list; -+ nextp = ife ? &ife->next : &int_list; // keep sorting - new->prev = ife; - new->next = *nextp; - if (new->next) -@@ -117,19 +124,22 @@ - - struct interface *lookup_interface(char *name) - { -- struct interface *ife = NULL; -- -- if (if_readlist_proc(name) < 0) -- return NULL; -- ife = add_interface(name); -- return ife; -+ /* if we have read all, use it */ -+ if (if_list_all) -+ return if_cache_add(name); -+ -+ /* otherwise we read a limited list */ -+ if (if_readlist_proc(name) < 0) -+ return NULL; -+ -+ return if_cache_add(name); - } - - int for_all_interfaces(int (*doit) (struct interface *, void *), void *cookie) - { - struct interface *ife; - -- if (!int_list && (if_readlist() < 0)) -+ if (!if_list_all && (if_readlist() < 0)) - return -1; - for (ife = int_list; ife; ife = ife->next) { - int err = doit(ife, cookie); -@@ -139,13 +149,15 @@ - return 0; - } - --int free_interface_list(void) -+int if_cache_free(void) - { - struct interface *ife; - while ((ife = int_list) != NULL) { - int_list = ife->next; - free(ife); - } -+ int_last = NULL; -+ if_list_all = 0; - return 0; - } - -@@ -180,7 +192,7 @@ - } - if (ifc.ifc_len == sizeof(struct ifreq) * numreqs) { - /* assume it overflowed and try again */ -- numreqs += 10; -+ numreqs *= 2; - continue; - } - break; -@@ -188,7 +200,7 @@ - - ifr = ifc.ifc_req; - for (n = 0; n < ifc.ifc_len; n += sizeof(struct ifreq)) { -- add_interface(ifr->ifr_name); -+ if_cache_add(ifr->ifr_name); - ifr++; - } - err = 0; -@@ -198,7 +210,7 @@ - return err; - } - --static char *get_name(char *name, char *p) -+char *get_name(char *name, char *p) - { - while (isspace(*p)) - p++; -@@ -206,16 +218,19 @@ - if (isspace(*p)) - break; - if (*p == ':') { /* could be an alias */ -- char *dot = p, *dotname = name; -- *name++ = *p++; -- while (isdigit(*p)) -- *name++ = *p++; -- if (*p != ':') { /* it wasn't, backup */ -- p = dot; -- name = dotname; -+ char *dot = p++; -+ while (*p && isdigit(*p)) p++; -+ if (*p == ':') { -+ /* Yes it is, backup and copy it. */ -+ p = dot; -+ *name++ = *p++; -+ while (*p && isdigit(*p)) { -+ *name++ = *p++; -+ } -+ } else { -+ /* No, it isn't */ -+ p = dot; - } -- if (*p == '\0') -- return NULL; - p++; - break; - } -@@ -225,7 +240,7 @@ - return p; - } - --static int procnetdev_version(char *buf) -+int procnetdev_version(char *buf) - { - if (strstr(buf, "compressed")) - return 3; -@@ -234,12 +249,12 @@ - return 1; - } - --static int get_dev_fields(char *bp, struct interface *ife) -+int get_dev_fields(char *bp, struct interface *ife) - { - switch (procnetdev_vsn) { - case 3: - sscanf(bp, -- "%llu %llu %lu %lu %lu %lu %lu %lu %llu %llu %lu %lu %lu %lu %lu %lu", -+ "%Lu %Lu %lu %lu %lu %lu %lu %lu %Lu %Lu %lu %lu %lu %lu %lu %lu", - &ife->stats.rx_bytes, - &ife->stats.rx_packets, - &ife->stats.rx_errors, -@@ -259,7 +274,7 @@ - &ife->stats.tx_compressed); - break; - case 2: -- sscanf(bp, "%llu %llu %lu %lu %lu %lu %llu %llu %lu %lu %lu %lu %lu", -+ sscanf(bp, "%Lu %Lu %lu %lu %lu %lu %Lu %Lu %lu %lu %lu %lu %lu", - &ife->stats.rx_bytes, - &ife->stats.rx_packets, - &ife->stats.rx_errors, -@@ -277,7 +292,7 @@ - ife->stats.rx_multicast = 0; - break; - case 1: -- sscanf(bp, "%llu %lu %lu %lu %lu %llu %lu %lu %lu %lu %lu", -+ sscanf(bp, "%Lu %lu %lu %lu %lu %Lu %lu %lu %lu %lu %lu", - &ife->stats.rx_packets, - &ife->stats.rx_errors, - &ife->stats.rx_dropped, -@@ -300,22 +315,16 @@ - - static int if_readlist_proc(char *target) - { -- static int proc_read; - FILE *fh; - char buf[512]; - struct interface *ife; - int err; - -- if (proc_read) -- return 0; -- if (!target) -- proc_read = 1; -- - fh = fopen(_PATH_PROCNET_DEV, "r"); - if (!fh) { - fprintf(stderr, _("Warning: cannot open %s (%s). Limited output.\n"), - _PATH_PROCNET_DEV, strerror(errno)); -- return if_readconf(); -+ return -2; - } - fgets(buf, sizeof buf, fh); /* eat line */ - fgets(buf, sizeof buf, fh); -@@ -350,7 +359,7 @@ - while (fgets(buf, sizeof buf, fh)) { - char *s, name[IFNAMSIZ]; - s = get_name(name, buf); -- ife = add_interface(name); -+ ife = if_cache_add(name); - get_dev_fields(s, ife); - ife->statistics_valid = 1; - if (target && !strcmp(target,name)) -@@ -359,7 +368,6 @@ - if (ferror(fh)) { - perror(_PATH_PROCNET_DEV); - err = -1; -- proc_read = 0; - } - - #if 0 -@@ -371,9 +379,16 @@ - - int if_readlist(void) - { -- int err = if_readlist_proc(NULL); -- if (!err) -- err = if_readconf(); -+ /* caller will/should check not to call this too often -+ * (i.e. only if if_list_all == 0 -+ */ -+ int err = 0; -+ -+ err |= if_readlist_proc(NULL); -+ err |= if_readconf(); -+ -+ if_list_all = 1; -+ - return err; - } - -@@ -580,10 +595,10 @@ - void ife_print_short(struct interface *ptr) - { - printf("%-5.5s ", ptr->name); -- printf("%5d %3d", ptr->mtu, ptr->metric); -+ printf("%5d %-2d ", ptr->mtu, ptr->metric); - /* If needed, display the interface statistics. */ - if (ptr->statistics_valid) { -- printf("%8llu %6lu %6lu %6lu", -+ printf("%8llu %6lu %6lu %-6lu ", - ptr->stats.rx_packets, ptr->stats.rx_errors, - ptr->stats.rx_dropped, ptr->stats.rx_fifo_errors); - printf("%8llu %6lu %6lu %6lu ", -@@ -636,9 +651,10 @@ - int hf; - int can_compress = 0; - unsigned long long rx, tx, short_rx, short_tx; -- char Rext[5]="b"; -- char Text[5]="b"; -- -+ const char *Rext = "B"; -+ const char *Text = "B"; -+ static char flags[200]; -+ - #if HAVE_AFIPX - static struct aftype *ipxtype = NULL; - #endif -@@ -670,32 +686,70 @@ - if (hw == NULL) - hw = get_hwntype(-1); - -- printf(_("%-9.9s Link encap:%s "), ptr->name, hw->title); -- /* For some hardware types (eg Ash, ATM) we don't print the -- hardware address if it's null. */ -- if (hw->print != NULL && (! (hw_null_address(hw, ptr->hwaddr) && -- hw->suppress_null_addr))) -- printf(_("HWaddr %s "), hw->print(ptr->hwaddr)); --#ifdef IFF_PORTSEL -- if (ptr->flags & IFF_PORTSEL) { -- printf(_("Media:%s"), if_port_text[ptr->map.port][0]); -- if (ptr->flags & IFF_AUTOMEDIA) -- printf(_("(auto)")); -- } -+ sprintf(flags, "flags=%d<", ptr->flags); -+ /* DONT FORGET TO ADD THE FLAGS IN ife_print_short, too */ -+ if (ptr->flags == 0) -+ strcat(flags,">"); -+ if (ptr->flags & IFF_UP) -+ strcat(flags,_("UP,")); -+ if (ptr->flags & IFF_BROADCAST) -+ strcat(flags,_("BROADCAST,")); -+ if (ptr->flags & IFF_DEBUG) -+ strcat(flags,_("DEBUG,")); -+ if (ptr->flags & IFF_LOOPBACK) -+ strcat(flags,_("LOOPBACK,")); -+ if (ptr->flags & IFF_POINTOPOINT) -+ strcat(flags,_("POINTOPOINT,")); -+ if (ptr->flags & IFF_NOTRAILERS) -+ strcat(flags,_("NOTRAILERS,")); -+ if (ptr->flags & IFF_RUNNING) -+ strcat(flags,_("RUNNING,")); -+ if (ptr->flags & IFF_NOARP) -+ strcat(flags,_("NOARP,")); -+ if (ptr->flags & IFF_PROMISC) -+ strcat(flags,_("PROMISC,")); -+ if (ptr->flags & IFF_ALLMULTI) -+ strcat(flags,_("ALLMULTI,")); -+ if (ptr->flags & IFF_SLAVE) -+ strcat(flags,_("SLAVE,")); -+ if (ptr->flags & IFF_MASTER) -+ strcat(flags,_("MASTER,")); -+ if (ptr->flags & IFF_MULTICAST) -+ strcat(flags,_("MULTICAST,")); -+#ifdef HAVE_DYNAMIC -+ if (ptr->flags & IFF_DYNAMIC) -+ strcat(flags,_("DYNAMIC,")); -+#endif -+ /* DONT FORGET TO ADD THE FLAGS IN ife_print_short */ -+ if (flags[strlen(flags)-1] == ',') -+ flags[strlen(flags)-1] = '>'; -+ else -+ flags[strlen(flags)-1] = 0; -+ -+ -+ printf(_("%s: %s mtu %d metric %d"), -+ ptr->name, flags, ptr->mtu, ptr->metric ? ptr->metric : 1); -+#ifdef SIOCSKEEPALIVE -+ if (ptr->outfill || ptr->keepalive) -+ printf(_(" outfill %d keepalive %d"), -+ ptr->outfill, ptr->keepalive); - #endif - printf("\n"); - -+ -+ - #if HAVE_AFINET - if (ptr->has_ip) { -- printf(_(" %s addr:%s "), ap->name, -+ printf(_(" %s %s"), ap->name, - ap->sprint(&ptr->addr, 1)); -- if (ptr->flags & IFF_POINTOPOINT) { -- printf(_(" P-t-P:%s "), ap->sprint(&ptr->dstaddr, 1)); -- } -+ printf(_(" netmask %s"), ap->sprint(&ptr->netmask, 1)); - if (ptr->flags & IFF_BROADCAST) { -- printf(_(" Bcast:%s "), ap->sprint(&ptr->broadaddr, 1)); -+ printf(_(" broadcast %s"), ap->sprint(&ptr->broadaddr, 1)); -+ } -+ if (ptr->flags & IFF_POINTOPOINT) { -+ printf(_(" destination %s"), ap->sprint(&ptr->dstaddr, 1)); - } -- printf(_(" Mask:%s\n"), ap->sprint(&ptr->netmask, 1)); -+ printf("\n"); - } - #endif - -@@ -712,29 +766,30 @@ - addr6p[0], addr6p[1], addr6p[2], addr6p[3], - addr6p[4], addr6p[5], addr6p[6], addr6p[7]); - inet6_aftype.input(1, addr6, (struct sockaddr *) &sap); -- printf(_(" inet6 addr: %s/%d"), -- inet6_aftype.sprint((struct sockaddr *) &sap, 1), plen); -- printf(_(" Scope:")); -- switch (scope) { -- case 0: -- printf(_("Global")); -- break; -- case IPV6_ADDR_LINKLOCAL: -- printf(_("Link")); -- break; -- case IPV6_ADDR_SITELOCAL: -- printf(_("Site")); -- break; -- case IPV6_ADDR_COMPATv4: -- printf(_("Compat")); -- break; -- case IPV6_ADDR_LOOPBACK: -- printf(_("Host")); -- break; -- default: -- printf(_("Unknown")); -+ printf(_(" %s %s prefixlen %d"), -+ inet6_aftype.name, -+ inet6_aftype.sprint((struct sockaddr *) &sap, 1), -+ plen); -+ printf(_(" scopeid 0x%x"), scope); -+ -+ flags[0] = '<'; flags[1] = 0; -+ if (scope & IPV6_ADDR_COMPATv4) { -+ strcat(flags, _("compat,")); -+ scope -= IPV6_ADDR_COMPATv4; - } -- printf("\n"); -+ if (scope == 0) -+ strcat(flags, _("global,")); -+ if (scope & IPV6_ADDR_LINKLOCAL) -+ strcat(flags, _("link,")); -+ if (scope & IPV6_ADDR_SITELOCAL) -+ strcat(flags, _("site,")); -+ if (scope & IPV6_ADDR_LOOPBACK) -+ strcat(flags, _("host,")); -+ if (flags[strlen(flags)-1] == ',') -+ flags[strlen(flags)-1] = '>'; -+ else -+ flags[strlen(flags)-1] = 0; -+ printf("%s\n", flags); - } - } - fclose(f); -@@ -747,17 +802,17 @@ - - if (ipxtype != NULL) { - if (ptr->has_ipx_bb) -- printf(_(" IPX/Ethernet II addr:%s\n"), -- ipxtype->sprint(&ptr->ipxaddr_bb, 1)); -+ printf(_(" %s Ethernet-II %s\n"), -+ ipxtype->name, ipxtype->sprint(&ptr->ipxaddr_bb, 1)); - if (ptr->has_ipx_sn) -- printf(_(" IPX/Ethernet SNAP addr:%s\n"), -- ipxtype->sprint(&ptr->ipxaddr_sn, 1)); -+ printf(_(" %s Ethernet-SNAP %s\n"), -+ ipxtype->name, ipxtype->sprint(&ptr->ipxaddr_sn, 1)); - if (ptr->has_ipx_e2) -- printf(_(" IPX/Ethernet 802.2 addr:%s\n"), -- ipxtype->sprint(&ptr->ipxaddr_e2, 1)); -+ printf(_(" %s Ethernet802.2 %s\n"), -+ ipxtype->name, ipxtype->sprint(&ptr->ipxaddr_e2, 1)); - if (ptr->has_ipx_e3) -- printf(_(" IPX/Ethernet 802.3 addr:%s\n"), -- ipxtype->sprint(&ptr->ipxaddr_e3, 1)); -+ printf(_(" %s Ethernet802.3 %s\n"), -+ ipxtype->name, ipxtype->sprint(&ptr->ipxaddr_e3, 1)); - } - #endif - -@@ -766,7 +821,7 @@ - ddptype = get_afntype(AF_APPLETALK); - if (ddptype != NULL) { - if (ptr->has_ddp) -- printf(_(" EtherTalk Phase 2 addr:%s\n"), ddptype->sprint(&ptr->ddpaddr, 1)); -+ printf(_(" %s %s\n"), ddptype->name, ddptype->sprint(&ptr->ddpaddr, 1)); - } - #endif - -@@ -775,53 +830,30 @@ - ectype = get_afntype(AF_ECONET); - if (ectype != NULL) { - if (ptr->has_econet) -- printf(_(" econet addr:%s\n"), ectype->sprint(&ptr->ecaddr, 1)); -+ printf(_(" %s %s\n"), ectype->name, ectype->sprint(&ptr->ecaddr, 1)); - } - #endif - -- printf(" "); -- /* DONT FORGET TO ADD THE FLAGS IN ife_print_short, too */ -- if (ptr->flags == 0) -- printf(_("[NO FLAGS] ")); -- if (ptr->flags & IFF_UP) -- printf(_("UP ")); -- if (ptr->flags & IFF_BROADCAST) -- printf(_("BROADCAST ")); -- if (ptr->flags & IFF_DEBUG) -- printf(_("DEBUG ")); -- if (ptr->flags & IFF_LOOPBACK) -- printf(_("LOOPBACK ")); -- if (ptr->flags & IFF_POINTOPOINT) -- printf(_("POINTOPOINT ")); -- if (ptr->flags & IFF_NOTRAILERS) -- printf(_("NOTRAILERS ")); -- if (ptr->flags & IFF_RUNNING) -- printf(_("RUNNING ")); -- if (ptr->flags & IFF_NOARP) -- printf(_("NOARP ")); -- if (ptr->flags & IFF_PROMISC) -- printf(_("PROMISC ")); -- if (ptr->flags & IFF_ALLMULTI) -- printf(_("ALLMULTI ")); -- if (ptr->flags & IFF_SLAVE) -- printf(_("SLAVE ")); -- if (ptr->flags & IFF_MASTER) -- printf(_("MASTER ")); -- if (ptr->flags & IFF_MULTICAST) -- printf(_("MULTICAST ")); --#ifdef HAVE_DYNAMIC -- if (ptr->flags & IFF_DYNAMIC) -- printf(_("DYNAMIC ")); --#endif -- /* DONT FORGET TO ADD THE FLAGS IN ife_print_short */ -- printf(_(" MTU:%d Metric:%d"), -- ptr->mtu, ptr->metric ? ptr->metric : 1); --#ifdef SIOCSKEEPALIVE -- if (ptr->outfill || ptr->keepalive) -- printf(_(" Outfill:%d Keepalive:%d"), -- ptr->outfill, ptr->keepalive); -+ /* For some hardware types (eg Ash, ATM) we don't print the -+ hardware address if it's null. */ -+ if (hw->print != NULL && (! (hw_null_address(hw, ptr->hwaddr) && -+ hw->suppress_null_addr))) -+ printf(_(" %s %s"), hw->name, hw->print(ptr->hwaddr)); -+ else -+ printf(_(" %s"), hw->name); -+ if (ptr->tx_queue_len != -1) -+ printf(_(" txqueuelen %d"), ptr->tx_queue_len); -+ printf(" (%s)\n", hw->title); -+ -+#ifdef IFF_PORTSEL -+ if (ptr->flags & IFF_PORTSEL) { -+ printf(_(" media %s"), if_port_text[ptr->map.port][0]); -+ if (ptr->flags & IFF_AUTOMEDIA) -+ printf(_("autoselect")); -+ printf("\n"); -+ } - #endif -- printf("\n"); -+ - - /* If needed, display the interface statistics. */ - -@@ -830,55 +862,87 @@ - * not for the aliases, although strictly speaking they're shared - * by all addresses. - */ -- printf(" "); -- -- printf(_("RX packets:%llu errors:%lu dropped:%lu overruns:%lu frame:%lu\n"), -- ptr->stats.rx_packets, ptr->stats.rx_errors, -- ptr->stats.rx_dropped, ptr->stats.rx_fifo_errors, -- ptr->stats.rx_frame_errors); -- if (can_compress) -- printf(_(" compressed:%lu\n"), ptr->stats.rx_compressed); -- - rx = ptr->stats.rx_bytes; -- tx = ptr->stats.tx_bytes; - short_rx = rx * 10; -+ if (rx > 1125899906842624ull) { -+ short_rx /= 1125899906842624ull; -+ Rext = "PiB"; -+ } else if (rx > 1099511627776ull) { -+ short_rx /= 1099511627776ull; -+ Rext = "TiB"; -+ } else if (rx > 1073741824ull) { -+ short_rx /= 1073741824ull; -+ Rext = "GiB"; -+ } else if (rx > 1048576) { -+ short_rx /= 1048576; -+ Rext = "MiB"; -+ } else if (rx > 1024) { -+ short_rx /= 1024; -+ Rext = "KiB"; -+ } -+ tx = ptr->stats.tx_bytes; - short_tx = tx * 10; -- if (rx > 1048576) { short_rx /= 1048576; strcpy(Rext, "Mb"); } -- else if (rx > 1024) { short_rx /= 1024; strcpy(Rext, "Kb"); } -- if (tx > 1048576) { short_tx /= 1048576; strcpy(Text, "Mb"); } -- else if (tx > 1024) { short_tx /= 1024; strcpy(Text, "Kb"); } -- -- printf(" "); -- printf(_("TX packets:%llu errors:%lu dropped:%lu overruns:%lu carrier:%lu\n"), -- ptr->stats.tx_packets, ptr->stats.tx_errors, -- ptr->stats.tx_dropped, ptr->stats.tx_fifo_errors, -- ptr->stats.tx_carrier_errors); -- printf(_(" collisions:%lu "), ptr->stats.collisions); -- if (can_compress) -- printf(_("compressed:%lu "), ptr->stats.tx_compressed); -- if (ptr->tx_queue_len != -1) -- printf(_("txqueuelen:%d "), ptr->tx_queue_len); -- printf("\n "); -- printf(_("RX bytes:%llu (%lu.%lu %s) TX bytes:%llu (%lu.%lu %s)\n"), -+ if (tx > 1125899906842624ull) { -+ short_tx /= 1125899906842624ull; -+ Text = "PiB"; -+ } else if (tx > 1099511627776ull) { -+ short_tx /= 1099511627776ull; -+ Text = "TiB"; -+ } else if (tx > 1073741824ull) { -+ short_tx /= 1073741824ull; -+ Text = "GiB"; -+ } else if (tx > 1048576) { -+ short_tx /= 1048576; -+ Text = "MiB"; -+ } else if (tx > 1024) { -+ short_tx /= 1024; -+ Text = "KiB"; -+ } -+ -+ printf(" "); -+ printf(_("RX packets %llu bytes %llu (%lu.%lu %s)\n"), -+ ptr->stats.rx_packets, - rx, (unsigned long)(short_rx / 10), -- (unsigned long)(short_rx % 10), Rext, -- tx, (unsigned long)(short_tx / 10), -- (unsigned long)(short_tx % 10), Text); -+ (unsigned long)(short_rx % 10), Rext); -+ if (can_compress) { -+ printf(" "); -+ printf(_("RX compressed:%lu\n"), ptr->stats.rx_compressed); -+ } -+ printf(" "); -+ printf(_("RX errors %lu dropped %lu overruns %lu frame %lu\n"), -+ ptr->stats.rx_errors, ptr->stats.rx_dropped, -+ ptr->stats.rx_fifo_errors, ptr->stats.rx_frame_errors); -+ -+ -+ printf(" "); -+ printf(_("TX packets %llu bytes %llu (%lu.%lu %s)\n"), -+ ptr->stats.tx_packets, -+ tx, (unsigned long)(short_tx / 10), -+ (unsigned long)(short_tx % 10), Text); -+ if (can_compress) { -+ printf(" "); -+ printf(_("TX compressed %lu\n"), ptr->stats.tx_compressed); -+ } -+ printf(" "); -+ printf(_("TX errors %lu dropped %lu overruns %lu carrier %lu collisions %lu\n"), -+ ptr->stats.tx_errors, -+ ptr->stats.tx_dropped, ptr->stats.tx_fifo_errors, -+ ptr->stats.tx_carrier_errors, ptr->stats.collisions); - } - - if ((ptr->map.irq || ptr->map.mem_start || ptr->map.dma || -- ptr->map.base_addr)) { -- printf(" "); -+ ptr->map.base_addr >= 0x100)) { -+ printf(" device "); - if (ptr->map.irq) -- printf(_("Interrupt:%d "), ptr->map.irq); -+ printf(_("interrupt %d "), ptr->map.irq); - if (ptr->map.base_addr >= 0x100) /* Only print devices using it for - I/O maps */ -- printf(_("Base address:0x%x "), ptr->map.base_addr); -+ printf(_("base 0x%x "), ptr->map.base_addr); - if (ptr->map.mem_start) { -- printf(_("Memory:%lx-%lx "), ptr->map.mem_start, ptr->map.mem_end); -+ printf(_("memory 0x%lx-%lx "), ptr->map.mem_start, ptr->map.mem_end); - } - if (ptr->map.dma) -- printf(_("DMA chan:%x "), ptr->map.dma); -+ printf(_(" dma 0x%x"), ptr->map.dma); - printf("\n"); - } - printf("\n"); ---- net-tools-1.60/lib/ipx.c 1999-01-09 17:55:11.000000000 +0200 -+++ net-tools/lib/ipx.c 2002-07-30 08:19:29.000000000 +0300 -@@ -133,6 +133,9 @@ - char *ep; - int nbo; - -+ if (!sai) -+ return (-1); -+ - sai->sipx_family = AF_IPX; - sai->sipx_network = htonl(0); - sai->sipx_node[0] = sai->sipx_node[1] = sai->sipx_node[2] = ---- net-tools-1.60/lib/ipx_gr.c 2000-10-28 12:59:42.000000000 +0200 -+++ net-tools/lib/ipx_gr.c 2005-08-03 01:28:10.000000000 +0300 -@@ -38,21 +38,27 @@ - char net[128], router_net[128]; - char router_node[128]; - int num; -- FILE *fp = fopen(_PATH_PROCNET_IPX_ROUTE, "r"); -+ FILE *fp; - struct aftype *ap; - struct sockaddr sa; - -- if ((ap = get_afntype(AF_IPX)) == NULL) { -- EINTERN("lib/ipx_rt.c", "AF_IPX missing"); -- return (-1); -- } -+ fp = fopen(_PATH_PROCNET_IPX_ROUTE1, "r"); - - if (!fp) { -- perror(_PATH_PROCNET_IPX_ROUTE); -- printf(_("IPX not configured in this system.\n")); -+ fp = fopen(_PATH_PROCNET_IPX_ROUTE2, "r"); -+ } -+ -+ if (!fp) { -+ perror(NULL); -+ printf(_("IPX routing not in file %s or %s found.\n"), _PATH_PROCNET_IPX_ROUTE1, _PATH_PROCNET_IPX_ROUTE2); - return 1; - } - -+ if ((ap = get_afntype(AF_IPX)) == NULL) { -+ EINTERN("lib/ipx_rt.c", "AF_IPX missing"); -+ return (-1); -+ } -+ - printf(_("Kernel IPX routing table\n")); /* xxx */ - printf(_("Destination Router Net Router Node\n")); - ---- net-tools-1.60/lib/irda.c 2000-03-05 17:26:04.000000000 +0200 -+++ net-tools/lib/irda.c 2002-05-01 14:49:56.000000000 +0300 -@@ -1,13 +1,15 @@ - /********************************************************************* - * - * Filename: irda.c -- * Version: 0.1 -- * Description: A first attempt to make ifconfig understand IrDA -+ * Version: 0.2 -+ * Description: A second attempt to make ifconfig understand IrDA - * Status: Experimental. - * Author: Dag Brattli - * Created at: Wed Apr 21 09:03:09 1999 - * Modified at: Wed Apr 21 09:17:05 1999 - * Modified by: Dag Brattli -+ * Modified at: Wed May 1 11:51:44 CEST 2002 -+ * Modified by: Christoph Bartelmus - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as -@@ -59,9 +61,9 @@ - */ - static char *irda_print(unsigned char *ptr) - { -- static char buff[8]; -+ static char buff[12]; - -- sprintf(&buff[strlen(buff)], "%02x:%02x:%02x:%02x", ptr[3], ptr[2], -+ snprintf(buff, 12, "%02x:%02x:%02x:%02x", ptr[3], ptr[2], - ptr[1], ptr[0]); - - return (buff); ---- net-tools-1.60/lib/Makefile 2000-10-28 12:59:42.000000000 +0200 -+++ net-tools/lib/Makefile 2001-11-12 04:12:05.000000000 +0200 -@@ -16,7 +16,7 @@ - # - - --HWOBJS = hw.o loopback.o slip.o ether.o ax25.o ppp.o arcnet.o tr.o tunnel.o frame.o sit.o rose.o ash.o fddi.o hippi.o hdlclapb.o strip.o irda.o ec_hw.o x25.o -+HWOBJS = hw.o loopback.o slip.o ether.o ax25.o ppp.o arcnet.o tr.o tunnel.o frame.o sit.o rose.o ash.o fddi.o hippi.o hdlclapb.o strip.o irda.o ec_hw.o x25.o eui64.o - AFOBJS = unix.o inet.o inet6.o ax25.o ipx.o ddp.o ipx.o netrom.o af.o rose.o econet.o x25.o - AFGROBJS = inet_gr.o inet6_gr.o ipx_gr.o ddp_gr.o netrom_gr.o ax25_gr.o rose_gr.o getroute.o x25_gr.o - AFSROBJS = inet_sr.o inet6_sr.o netrom_sr.o ipx_sr.o setroute.o x25_sr.o ---- net-tools-1.60/lib/net-features.h 2000-05-20 20:27:25.000000000 +0200 -+++ net-tools/lib/net-features.h 2001-11-12 04:12:05.000000000 +0200 -@@ -295,6 +295,13 @@ - "-" - #endif - "HDLC/LAPB " -+ -+#if HAVE_HWEUI64 -+"+" -+#else -+"-" -+#endif -+"EUI64 " - ; - - ---- net-tools-1.60/lib/nstrcmp.c 1999-01-09 17:55:20.000000000 +0200 -+++ net-tools/lib/nstrcmp.c 2004-06-04 01:49:17.000000000 +0300 -@@ -1,34 +1,157 @@ - /* Copyright 1998 by Andi Kleen. Subject to the GPL. */ --/* $Id$ */ -+/* rewritten by bernd eckenfels because of complicated alias semantic */ -+/* $Id$ */ - #include - #include -+#include - #include "util.h" - --/* like strcmp(), but knows about numbers */ --int nstrcmp(const char *astr, const char *b) -+ -+/* return numerical :999 suffix or null. sideeffect: replace ':' with \0 */ -+char* cutalias(char* name) - { -- const char *a = astr; -+ int digit = 0; -+ int pos; -+ -+ for(pos=strlen(name); pos>0; pos--) -+ { -+ if (name[pos-1]==':' && digit) -+ { -+ name[pos-1]='\0'; -+ return name+pos; -+ } -+ if (!isdigit(name[pos-1])) -+ break; -+ digit = 1; -+ } -+ return NULL; -+} - -- while (*a == *b) { -- if (*a == '\0') -- return 0; -- a++; -- b++; -- } -- if (isdigit(*a)) { -- if (!isdigit(*b)) -- return -1; -- while (a > astr) { -- a--; -- if (!isdigit(*a)) { -- a++; -- break; -- } -- if (!isdigit(*b)) -- return -1; -- b--; -+ -+/* return index of last non digit or -1 if it does not end with digits */ -+int rindex_nondigit(char *name) -+{ -+ int pos = strlen(name); -+ -+ for(pos=strlen(name); pos>0; pos--) -+ { -+ if (!isdigit(name[pos-1])) -+ return pos; - } -- return atoi(a) > atoi(b) ? 1 : -1; -- } -- return *a - *b; -+ return 0; -+} -+ -+ -+/* like strcmp(), but knows about numbers and ':' alias suffix */ -+int nstrcmp(const char *ap, const char *bp) -+{ -+ char *a = (char*)strdup(ap); -+ char *b = (char*)strdup(bp); -+ char *an, *bn; -+ int av = 0, bv = 0; -+ char *aalias=cutalias(a); -+ char *balias=cutalias(b); -+ int aindex=rindex_nondigit(a); -+ int bindex=rindex_nondigit(b); -+ int complen=(aindex bindex) -+ { free(a); free(b); return 1; } -+ -+ if (aindex < bindex) -+ { free(a); free(b); return -1; } -+ -+ an = a+aindex; -+ bn = b+bindex; -+ -+ av = atoi(an); -+ bv = atoi(bn); -+ -+ if (av < bv) -+ { free(a); free(b); return -1; } -+ -+ if (av > bv) -+ { free(a); free(b); return 1; } -+ -+ av = -1; -+ if (aalias != NULL) -+ av = atoi(aalias); -+ -+ bv = -1; -+ if (balias != NULL) -+ bv = atoi(balias); -+ -+ free(a); free(b); -+ -+ if (av < bv) -+ return -1; -+ -+ if (av > bv) -+ return 1; -+ -+ return 0; -+} -+ -+ -+#ifdef NSTRCMP_TEST -+ -+int cs(int s) -+{ -+ if (s < 0) return -1; -+ if (s > 0) return 1; -+ return 0; -+} -+ -+ -+int dotest(char* a, char* b, int exp) -+{ -+ int res = nstrcmp(a, b); -+ int err = (cs(res) != cs(exp)); -+ printf("nstrcmp(\"%s\", \"%s\")=%d %d %s\n", a, b, res, exp, err?"WRONG":"OK"); -+ return err; - } -+ -+int main() -+{ -+ int err = 0; -+ -+ err |= dotest("eth1", "eth1", 0); -+ err |= dotest("eth0:1", "eth0:1", 0); -+ err |= dotest("lan", "lan", 0); -+ err |= dotest("100", "100", 0); -+ err |= dotest("", "", 0); -+ err |= dotest(":", ":", 0); -+ err |= dotest("a:b:c", "a:b:c", 0); -+ err |= dotest("a:", "a:", 0); -+ err |= dotest(":a", ":a", 0); -+ -+ err |= dotest("a", "aa", -1); -+ err |= dotest("eth0", "eth1", -1); -+ err |= dotest("eth1", "eth20", -1); -+ err |= dotest("eth20", "eth100", -1); -+ err |= dotest("eth1", "eth13", -1); -+ err |= dotest("eth", "eth2", -1); -+ err |= dotest("eth0:1", "eth0:2", -1); -+ err |= dotest("eth1:10", "eth13:10", -1); -+ err |= dotest("eth1:1", "eth1:13", -1); -+ err |= dotest("a", "a:", -1); -+ -+ err |= dotest("aa", "a", 1); -+ err |= dotest("eth2", "eth1", 1); -+ err |= dotest("eth13", "eth1", 1); -+ err |= dotest("eth2", "eth", 1); -+ err |= dotest("eth2:10", "eth2:1", 1); -+ err |= dotest("eth2:5", "eth2:4", 1); -+ err |= dotest("eth3:2", "eth2:3", 1); -+ err |= dotest("eth13:1", "eth1:0", 1); -+ err |= dotest("a:", "a", 1); -+ err |= dotest("a1b12", "a1b2", 1); -+ -+ return err; -+} -+ -+#endif ---- net-tools-1.60/lib/pathnames.h 2000-05-20 20:27:26.000000000 +0200 -+++ net-tools/lib/pathnames.h 2005-08-03 01:28:10.000000000 +0300 -@@ -1,4 +1,3 @@ -- - /* - * lib/pathnames.h This file contains the definitions of the path - * names used by the NET-LIB. -@@ -29,8 +28,10 @@ - #define _PATH_PROCNET_NR_NODES "/proc/net/nr_nodes" - #define _PATH_PROCNET_ARP "/proc/net/arp" - #define _PATH_PROCNET_AX25 "/proc/net/ax25" --#define _PATH_PROCNET_IPX "/proc/net/ipx" --#define _PATH_PROCNET_IPX_ROUTE "/proc/net/ipx_route" -+#define _PATH_PROCNET_IPX_SOCKET1 "/proc/net/ipx/socket" -+#define _PATH_PROCNET_IPX_SOCKET2 "/proc/net/ipx" -+#define _PATH_PROCNET_IPX_ROUTE1 "/proc/net/ipx/route" -+#define _PATH_PROCNET_IPX_ROUTE2 "/proc/net/ipx_route" - #define _PATH_PROCNET_ATALK "/proc/net/appletalk" - #define _PATH_PROCNET_IP_BLK "/proc/net/ip_block" - #define _PATH_PROCNET_IP_FWD "/proc/net/ip_forward" -@@ -45,6 +46,7 @@ - #define _PATH_PROCNET_X25 "/proc/net/x25" - #define _PATH_PROCNET_X25_ROUTE "/proc/net/x25_routes" - #define _PATH_PROCNET_DEV_MCAST "/proc/net/dev_mcast" -+#define _PATH_PROCNET_ATALK_ROUTE "/proc/net/atalk_route" - - /* pathname for the netlink device */ - #define _PATH_DEV_ROUTE "/dev/route" ---- net-tools-1.60/lib/tr.c 2000-02-20 23:46:45.000000000 +0200 -+++ net-tools/lib/tr.c 2005-05-16 06:15:12.000000000 +0300 -@@ -2,7 +2,7 @@ - * lib/tr.c This file contains an implementation of the "Tokenring" - * support functions. - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Author: Fred N. van Kempen, - * Copyright 1993 MicroWalt Corporation -@@ -30,8 +30,14 @@ - #include "net-support.h" - #include "pathnames.h" - #include "intl.h" -+#include "util.h" - -+ -+/* actual definition at the end of file */ - extern struct hwtype tr_hwtype; -+#ifdef ARPHRD_IEEE802_TR -+extern struct hwtype tr_hwtype1; -+#endif - - static char *pr_tr(unsigned char *ptr) - { -@@ -42,7 +48,7 @@ - (ptr[3] & 0377), (ptr[4] & 0377), (ptr[5] & 0377) - ); - return (buff); --} -+ } - - - static int in_tr(char *bufp, struct sockaddr *sap) -@@ -51,7 +57,17 @@ - char c, *orig; - int i, val; - -+#ifdef ARPHRD_IEEE802_TR -+ if (kernel_version() < KRELEASE(2,3,30)) { -+ sap->sa_family = tr_hwtype.type; -+ } else { -+ sap->sa_family = tr_hwtype1.type; -+ } -+#else - sap->sa_family = tr_hwtype.type; -+ #warning "Limited functionality, no support for ARPHRD_IEEE802_TR (old kernel headers?)" -+#endif -+ - ptr = sap->sa_data; - - i = 0; ---- net-tools-1.60/lib/util-ank.c 1999-04-21 20:39:47.000000000 +0300 -+++ net-tools/lib/util-ank.c 2006-10-11 04:14:33.000000000 +0300 -@@ -293,7 +293,7 @@ - return 0; - } - --const char *format_host(int af, void *addr, __u8 *abuf, int alen) -+const char *format_host(int af, void *addr, char *abuf, int alen) - { - #ifdef RESOLVE_HOSTNAMES - if (resolve_hosts) { ---- net-tools-1.60/lib/util.h 1999-01-09 17:55:29.000000000 +0200 -+++ net-tools/lib/util.h 2004-06-04 01:27:37.000000000 +0300 -@@ -14,3 +14,6 @@ - - char *safe_strncpy(char *dst, const char *src, size_t size); - -+ -+#define netmin(a,b) ((a)<(b) ? (a) : (b)) -+#define netmax(a,b) ((a)>(b) ? (a) : (b)) ---- net-tools-1.60/lib/x25_sr.c 2000-05-20 15:38:10.000000000 +0200 -+++ net-tools/lib/x25_sr.c 2005-09-04 07:23:13.000000000 +0300 -@@ -67,7 +67,7 @@ - strcpy(target, *args++); - - /* Clean out the x25_route_struct structure. */ -- memset((char *) &rt, 0, sizeof(struct x25_route_struct)); -+ memset((char *) &rt, 0, sizeof(rt)); - - - if ((sigdigits = x25_aftype.input(0, target, (struct sockaddr *)&sx25)) < 0) { -@@ -76,8 +76,8 @@ - } - rt.sigdigits=sigdigits; - -- /* x25_route_struct.address isn't type struct sockaddr_x25, Why? */ -- memcpy(&rt.address, &sx25.sx25_addr, sizeof(x25_address)); -+ /* this works with 2.4 and 2.6 headers struct x25_address vs. typedef */ -+ memcpy(&rt.address, &sx25.sx25_addr, sizeof(sx25.sx25_addr)); - - while (*args) { - if (!strcmp(*args,"device") || !strcmp(*args,"dev")) { ---- net-tools-1.60/man/de_DE/netstat.8 1999-03-15 22:31:20.000000000 +0200 -+++ net-tools/man/de_DE/netstat.8 2002-02-20 16:31:00.000000000 +0200 -@@ -9,7 +9,7 @@ - .\" Modified: Tuan Hoang tuan@optimus.mitre.org - .\" - .\" --.TH NETSTAT 8 "6. M\(:arz 1999" "net-tools" "Handbuch f\(:ur Linuxprogrammierer" -+.TH NETSTAT 8 "2002-02-20" "net-tools" "Handbuch f\(:ur Linuxprogrammierer" - - .SH NAME - netstat \- Anzeige von Netzwerksverbindungen, Routentabellen, Schnittstellenstatistiken, maskierten Verbindungen, Netlink-Nachrichten und Mitgliedschaft in Multicastgruppen -@@ -44,7 +44,6 @@ - .B netstat - .RB [ \-veenpac ] - .RB { \-\-interfaces | \-i } --.RI [ Schnittstelle ] - - .PP - -@@ -68,6 +67,8 @@ - .SH BESCHREIBUNG - .B Netstat - zeigt Informationen des Linux Netzwerkssystems an. -+.PP -+.B Bitte beachten Sie, dass der Inhalt der deutschen man-page nicht vollst\(:andig ist, im Moment. - - .SS "(no option)" - Ohne Optionen zeigt -@@ -103,18 +104,17 @@ - Wegen Details siehe - .BR route (8). - --.SS "\-i, \-\-interface \fISchnittstelle\fI" -+.SS "\-i, \-\-interface" - Wird die - .BR -i ", " --interfaces --Option verwendet, so wird eine Tabelle aller (oder der angegebenen --.IR Schnittstellen ) -+Option verwendet, so wird eine Tabelle aller Schnittstellen - ausgedruckt. Die Ausgabe ist im Format von - .B "ifconfig -e" - und wird in - .BR ifconfig (8) - beschrieben. - .B "netstat -ei" --druckt eine Tabelle oder einen Eintrag f\(:ur einen einzelnes Interface wie -+druckt eine Tabelle f\(:ur Interfaces wie - .BR ifconfig . - Die - .B -a -@@ -182,7 +182,7 @@ - und - .BR \-\-ddp. - --.SS "\-c, \-\-continous" -+.SS "\-c, \-\-continuous" - Mit dieser Option wiederholt - .B netstat - im Sekundenabstand die Ausgabe, bis es abgebrochen wird. ---- net-tools-1.60/man/en_US/arp.8 2000-10-28 12:59:42.000000000 +0200 -+++ net-tools/man/en_US/arp.8 2005-05-16 07:30:18.000000000 +0300 -@@ -1,4 +1,4 @@ --.TH ARP 8 "5 Jan 1999" "net-tools" "Linux Programmer's Manual" -+.TH ARP 8 "2005-05-16" "net-tools" "Linux Programmer's Manual" - .SH NAME - arp \- manipulate the system ARP cache - .SH SYNOPSIS -@@ -132,7 +132,10 @@ - entire subnet. Linux instead does automagic proxy arp when a route - exists and it is forwarding. See - .BR arp (7) --for details. -+for details. Also the -+.B dontpub -+option which is available for delete and set operations cannot be -+used with 2.4 and newer kernels. - .TP - .B "\-f filename, \-\-file filename" - Similar to the ---- net-tools-1.60/man/en_US/ethers.5 1999-01-09 17:55:31.000000000 +0200 -+++ net-tools/man/en_US/ethers.5 2005-05-14 01:34:20.000000000 +0300 -@@ -1,4 +1,4 @@ --.TH ETHERS 5 "April 26th, 1996" "" "File formats" -+.TH ETHERS 5 "May 15th, 2005" "" "File formats" - .SH NAME \"{{{roff}}}\"{{{ - ethers \- Ethernet address to IP number database - .\"}}} -@@ -10,8 +10,8 @@ - \fIEthernet-address\fP \fIIP-number\fP - .RE - .sp --The two items are separated by any number of SPACE and/or TAB char --acters. A \fB#\fP at the beginning of a line starts a comment -+The two items are separated by any number of SPACE and/or TAB characters. -+A \fB#\fP at the beginning of a line starts a comment - which extends to the end of the line. The \fIEthernet-address\fP is - written as - .IR x : x : x : x : x : x , ---- net-tools-1.60/man/en_US/ifconfig.8 2000-10-28 12:59:42.000000000 +0200 -+++ net-tools/man/en_US/ifconfig.8 2005-06-30 22:26:37.000000000 +0300 -@@ -1,10 +1,10 @@ --.TH IFCONFIG 8 "14 August 2000" "net-tools" "Linux Programmer's Manual" -+.TH IFCONFIG 8 "2005-06-30" "net-tools" "Linux Programmer's Manual" - .SH NAME - ifconfig \- configure a network interface - .SH SYNOPSIS --.B "ifconfig [interface]" -+.B "ifconfig [-v] [-a] [-s] [interface]" - .br --.B "ifconfig interface [aftype] options | address ..." -+.B "ifconfig [-v] interface [aftype] options | address ..." - .SH DESCRIPTION - .B Ifconfig - is used to configure the kernel-resident network interfaces. It is -@@ -41,11 +41,27 @@ - (AMPR Packet radio). - .SH OPTIONS - .TP -+.B -a -+display all interfaces which are currently available, even if down -+.TP -+.B -s -+display a short list (like netstat -i) -+.TP -+.B -v -+be more verbose for some error conditions -+.TP - .B interface - The name of the interface. This is usually a driver name followed by - a unit number, for example - .B eth0 --for the first Ethernet interface. -+for the first Ethernet interface. If your kernel supports alias interfaces, -+you can specify them with -+.B eth0:0 -+for the first alias of eth0. You can use them to assign a second address. To -+delete an alias interface use -+.B ifconfig eth0:0 down -+. Note: for every scope (i.e. same net with address/netmask combination) all -+aliases are deleted, if you delete the first (primary). - .TP - .B up - This flag causes the interface to be activated. It is implicitly -@@ -173,11 +189,20 @@ - are shared with all alias addresses on the same device. If you want per-address - statistics you should add explicit accounting - rules for the address using the --.BR ipchains(8) -+.BR ipchains (8) -+or -+.BR iptables (8) - command. - .LP --Interrupt problems with Ethernet device drivers fail with EAGAIN. See --.I http://cesdis.gsfc.nasa.gov/linux/misc/irq-conflict.html -+Since net-tools 1.61 ifconfig is printing byte counters and human readable -+counters with IEC 60027-2 units. So 1 KiB are 2^10 byte. Note, the numbers -+are truncated to one decimal (which can by quite a large error if you -+consider 0.1 PiB is 112.589.990.684.262 bytes :) -+.LP -+Interrupt problems with Ethernet device drivers fail with EAGAIN -+.I (SIOCSIIFLAGS: Resource temporarily unavailable) -+it is most likely a interrupt conflict. See -+.I http://www.scyld.com/expert/irq-conflict.html - for more information. - .SH FILES - .I /proc/net/socket -@@ -189,7 +214,9 @@ - While appletalk DDP and IPX addresses will be displayed they cannot be - altered by this command. - .SH SEE ALSO --route(8), netstat(8), arp(8), rarp(8), ipchains(8) -+route(8), netstat(8), arp(8), rarp(8), ipchains(8), iptables(8) -+.br -+http://physics.nist.gov/cuu/Units/binary.html - Prefixes for binary multiples - .SH AUTHORS - Fred N. van Kempen, - .br -@@ -198,3 +225,5 @@ - Phil Blundell, - .br - Andi Kleen -+.br -+Bernd Eckenfels, ---- net-tools-1.60/man/en_US/mii-tool.8 2000-05-21 16:21:38.000000000 +0200 -+++ net-tools/man/en_US/mii-tool.8 2005-05-14 01:31:41.000000000 +0300 -@@ -1,7 +1,7 @@ - .\" Copyright (C) 2000 David A. Hinds -- dhinds@pcmcia.sourceforge.org - .\" mii-tool.8 1.5 2000/04/25 22:58:19 - .\" --.TH MII-TOOL 8 "2000/04/25 22:58:19" "net-tools" -+.TH MII-TOOL 8 "2004/03/28 23:30:00" "net-tools" - - .SH NAME - mii-tool \- view, manipulate media-independent interface status -@@ -72,7 +72,24 @@ - commas. Valid media are \fB100baseT4\fR, \fB100baseTx-FD\fR, - \fB100baseTx-HD\fR, \fB10baseT-FD\fR, and \fB10baseT-HD\fR. - -+.SH DIAGNOSTICS -+.TP -+SIOCGMIIPHY on 'eth?' failed: Invalid argument -+If the interface is not running (up), kernel will refuse to report its link state. -+.TP -+SIOCGMIIPHY on 'eth?' failed: Operation not permitted -+Most kernels restrict access to root. -+.TP -+SIOCGMIIPHY on 'eth?' failed: No such device -+This error is shown, if the kernel does not know about the named device. -+.TP -+SIOCGMIIPHY on 'eth?' failed: Operation not supported -+The interface in question does not support MII queries. Most likely, it does not have -+MII transceivers, at all. -+ - .SH AUTHORS - David Hinds \- dhinds@pcmcia.sourceforge.org - .br - Donald Becker \- becker@scyld.com -+.br -+Bernd Eckenfels \- ecki@debian.org ---- net-tools-1.60/man/en_US/netstat.8 2001-01-07 14:43:57.000000000 +0200 -+++ net-tools/man/en_US/netstat.8 2004-06-29 23:28:08.000000000 +0300 -@@ -8,7 +8,7 @@ - .\" Modified: Tuan Hoang tqhoang@bigfoot.com - .\" - .\" --.TH NETSTAT 8 "19 December 2000" "net-tools" "Linux Programmer's Manual" -+.TH NETSTAT 8 "02 October 2003" "net-tools" "Linux Programmer's Manual" - - .SH NAME - netstat \- Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships -@@ -23,7 +23,7 @@ - .RB [ \-\-listening | \-l ] - .RB [ \-\-all | \-a ] - .RB [ \-\-numeric | \-n ] --.RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] -+.RB [ \-\-numeric-hosts "] [" \-\-numeric-ports "] [" \-\-numeric-users ] - .RB [ \-\-symbolic | \-N ] - .RB [ \-\-extend | \-e [ \-\-extend | \-e] ] - .RB [ \-\-timers | \-o ] -@@ -37,31 +37,30 @@ - .RB [ \-\-extend | \-e [ \-\-extend | \-e] ] - .RB [ \-\-verbose | \-v ] - .RB [ \-\-numeric | \-n ] --.RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] -+.RB [ \-\-numeric-hosts "] [" \-\-numeric-ports "] [" \-\-numeric-users ] - .RB [ \-\-continuous | \-c] - .P - .B netstat - .RB { \-\-interfaces | \-i } --.RI [ iface ] - .RB [ \-\-all | \-a ] - .RB [ \-\-extend | \-e [ \-\-extend | \-e] ] - .RB [ \-\-verbose | \-v ] - .RB [ \-\-program | \-p ] - .RB [ \-\-numeric | \-n ] --.RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] -+.RB [ \-\-numeric-hosts "] [" \-\-numeric-ports "] [" \-\-numeric-users ] - .RB [ \-\-continuous | \-c] - .P - .B netstat - .RB { \-\-groups | \-g } - .RB [ \-\-numeric | \-n ] --.RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] -+.RB [ \-\-numeric-hosts "] [" \-\-numeric-ports "] [" \-\-numeric-users ] - .RB [ \-\-continuous | \-c] - .P - .B netstat - .RB { \-\-masquerade | \-M } - .RB [ \-\-extend | \-e ] - .RB [ \-\-numeric | \-n ] --.RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] -+.RB [ \-\-numeric-hosts "] [" \-\-numeric-ports "] [" \-\-numeric-users ] - .RB [ \-\-continuous | \-c] - .P - .B netstat -@@ -78,6 +77,8 @@ - .P - .IR address_family_options : - .PP -+.RB [ -4 ] -+.RB [ -6 ] - .RB [ \-\-protocol= { inet , unix , ipx , ax25 , netrom , ddp }[, ...] ] - .RB [ \-\-unix | \-x ] - .RB [ \-\-inet | \-\-ip ] -@@ -98,12 +99,17 @@ - address families, then the active sockets of all configured address - families will be printed. - .SS "\-\-route , \-r" --Display the kernel routing tables. -+Display the kernel routing tables. See the description in -+.BR route (8) -+for details. -+.B netstat -r -+and -+.B route -e -+produce the same output. - .SS "\-\-groups , \-g" - Display multicast group membership information for IPv4 and IPv6. --.SS "\-\-interface=\fIiface \fR, \fB\-i" --Display a table of all network interfaces, or the specified --.IR iface ) . -+.SS "\-\-interface, \-i" -+Display a table of all network interfaces. - .SS "\-\-masquerade , \-M" - Display a list of masqueraded connections. - .SS "\-\-statistics , \-s" -@@ -165,12 +171,11 @@ - .SS "\-a, \-\-all" - Show both listening and non-listening sockets. With the - .B --interfaces --option, show interfaces that are not marked -+option, show interfaces that are not up - .SS "\-F" - Print routing information from the FIB. (This is the default.) - .SS "\-C" - Print routing information from the route cache. --.IR UP . - .P - .SH OUTPUT - .P -@@ -221,7 +226,7 @@ - The socket is waiting after close to handle packets still in the network. - .TP - .I --CLOSED -+CLOSE - The socket is not being used. - .TP - .I -@@ -438,7 +443,7 @@ - .P - .SH AUTHORS - The netstat user interface was written by Fred Baumgarten -- the man page basically -+, the man page basically - by Matt Welsh . It was updated by - Alan Cox but could do with a bit more - work. It was updated again by Tuan Hoang ---- net-tools-1.60/man/en_US/rarp.8 2000-05-21 15:54:00.000000000 +0200 -+++ net-tools/man/en_US/rarp.8 2001-11-05 15:12:11.000000000 +0200 -@@ -61,8 +61,8 @@ - Create a RARP address mapping entry for host - .B hostname - with hardware address set to --.B hw_addr --. The format of the hardware address is dependent on the hardware -+.BR hw_addr . -+The format of the hardware address is dependent on the hardware - class, but for most classes one can assume that the usual presentation - can be used. For the Ethernet class, this is 6 bytes in hexadecimal, - separated by colons. ---- net-tools-1.60/man/en_US/route.8 2000-05-21 20:59:03.000000000 +0200 -+++ net-tools/man/en_US/route.8 2005-05-14 01:28:41.000000000 +0300 -@@ -1,4 +1,4 @@ --.TH ROUTE 8 "2 January 2000" "net-tools" "Linux Programmer's Manual" -+.TH ROUTE 8 "02 October 2003" "net-tools" "Linux Programmer's Manual" - .SH NAME - route \- show / manipulate the IP routing table - .SH SYNOPSIS -@@ -141,7 +141,7 @@ - set the TCP Maximum Segment Size (MSS) for connections over this route - to M bytes. - The default is the device MTU minus headers, or a lower MTU when path mtu --discovery occured. This setting can be used to force smaller TCP packets on the -+discovery occurred. This setting can be used to force smaller TCP packets on the - other end when path mtu discovery does not work (usually because of - misconfigured firewalls that block ICMP Fragmentation Needed) - .TP -@@ -182,7 +182,7 @@ - .B route add -net 127.0.0.0 - adds the normal loopback entry, using netmask 255.0.0.0 (class A net, - determined from the destination address) and associated with the --"lo" device (assuming this device was prviously set up correctly with -+"lo" device (assuming this device was previously set up correctly with - .BR ifconfig (8)). - - .TP -@@ -289,7 +289,7 @@ - Interface to which packets for this route will be sent. - .TP - .B MSS --Default maximum segement size for TCP connections over this route. -+Default maximum segment size for TCP connections over this route. - .TP - .B Window - Default window size for TCP connections over this route. ---- net-tools-1.60/man/en_US/slattach.8 1999-01-09 18:19:58.000000000 +0200 -+++ net-tools/man/en_US/slattach.8 2006-10-10 08:58:46.000000000 +0300 -@@ -1,4 +1,4 @@ --.TH SLATTACH 8 "12 Feb 1994" "" "" -+.TH SLATTACH 8 "10 Oct 2006" "" "" - .SH NAME - slattach \- attach a network interface to a serial line - .SH SYNOPSIS -@@ -24,6 +24,7 @@ - .B "[-h]" - Exit when the carrier is lost. This works on both /dev/tty and /dev/cua - devices by directly monitoring the carrier status every 15 seconds. -+.TP - .B "[-v]" - Enable verbose output. Useful in shell scripts. - .TP -@@ -41,7 +42,7 @@ - .TP - .B "[-e]" - Exit right after initializing device, instead of waiting for the --line to hangup. -+line to hang up. - .TP - .B "[-L]" - Enable 3 wire operation. The terminal is moved into CLOCAL mode, -@@ -50,8 +51,8 @@ - .B "[-p proto]" - Set a specific kind of protocol to use on the line. The default - is set to --.B "cslip" --, i.e. compressed SLIP. Other possible values are -+.BR "cslip" , -+i.e. compressed SLIP. Other possible values are - .B "slip" - (normal SLIP), - .B "adaptive" ---- net-tools-1.60/man/fr_FR/arp.8 1999-04-18 22:23:40.000000000 +0300 -+++ net-tools/man/fr_FR/arp.8 2001-11-05 15:12:11.000000000 +0200 -@@ -140,8 +140,8 @@ - Similaire à l'option - .B \-s - , mais cette fois les informations d'adresses sont prises dans le fichier --.B nom_de_fichier --. Ceci peut être utilisé si les entrées ARP à configurer sont -+.BR nom_de_fichier . -+Ceci peut être utilisé si les entrées ARP à configurer sont - nombreuses. Le nom du fichier de données est très souvent nommé - .B /etc/ethers - , mais ce n'est pas officiel. -@@ -160,8 +160,8 @@ - .LP - Chaque entrée complète se trouvant dans le cache ARP est marquée de - l'indicateur --.B C --. Les entrées permanentes sont marquées de l'indicateur -+.BR C . -+Les entrées permanentes sont marquées de l'indicateur - .B M - et les entrées 'pub' ont l'indicateur - .B P ---- net-tools-1.60/man/fr_FR/hostname.1 1999-04-18 22:23:46.000000000 +0300 -+++ net-tools/man/fr_FR/hostname.1 2001-11-05 15:12:11.000000000 +0200 -@@ -84,8 +84,8 @@ - .LP - .B hostname - fournit le nom du système tel qu'il est retourné par la fonction --.BR getdomainname (2) --. Ceci est connu comme nom de domaine YP/NIS du système. -+.BR getdomainname (2). -+Ceci est connu comme nom de domaine YP/NIS du système. - - - .LP -@@ -145,8 +145,8 @@ - .LP - La façon dont vous pouvez le changer dépend de la configuration - (habituellement dans --.IR /etc/host.conf ) --. Si le fichier 'hosts' est analysé avant d'interroger le DNS ou -+.IR /etc/host.conf ). -+Si le fichier 'hosts' est analysé avant d'interroger le DNS ou - NIS) vous pouvez le changer dans le fichier - .IR /etc/hosts . - ---- net-tools-1.60/man/fr_FR/ifconfig.8 2000-10-28 12:59:42.000000000 +0200 -+++ net-tools/man/fr_FR/ifconfig.8 2001-11-05 15:12:11.000000000 +0200 -@@ -60,14 +60,14 @@ - .TP - .B "[\-]promisc" - Valide ou invalide le mode --.B promiscuous --. S'il est validé, tous les paquets circulant sur le réseau -+.BR promiscuous . -+S'il est validé, tous les paquets circulant sur le réseau - seront reçus sur cette interface. - .TP - .B "[\-]allmulti" - Valide ou invalide le fonctionnement de l'interface en mode --.B all-multicast --. S'il est validé, tous les paquets multicast circulant sur le réseau -+.BR all-multicast . -+S'il est validé, tous les paquets multicast circulant sur le réseau - seront reçus sur cette interface. - .TP - .B "metric N" ---- net-tools-1.60/man/fr_FR/netstat.8 1999-04-18 22:24:01.000000000 +0300 -+++ net-tools/man/fr_FR/netstat.8 2001-11-05 15:12:11.000000000 +0200 -@@ -8,7 +8,7 @@ - .\" Modified: Tuan Hoang tuan@optimus.mitre.org - .\" - .\" --.TH NETSTAT 8 "25 Fév 1999" "net-tools" "Linux Programmer's Manual" -+.TH NETSTAT 8 "29 June 2001" "net-tools" "Linux Programmer's Manual" - - .SH NAME - netstat \- Affiche les connexions réseau, les tables de routage, les -@@ -118,8 +118,8 @@ - .BR ifconfig (8). - .B "netstat -ei" - affiche une table ou une seule entrée d'interface comme la commande --.B ifconfig --. Avec le paramètre -+.BR ifconfig . -+Avec le paramètre - .B -a - , vous pouvez inclure les interfaces qui ne sont pas configurées (c.a.d qui - n'ont pas l'indicateur -@@ -249,7 +249,7 @@ - avant d'entreprendre la fermeture. - .TP - .I --CLOSED -+CLOSE - La socket n'est pas utilisée. - .TP - .I -@@ -409,8 +409,7 @@ - Depuis la version 2.2 du noyau, netstat -i n'affiche plus les statistiques - des interfaces alias. Pour obtenir les compteurs par interface alias, vous - devez définir des règles spécifiques à l'aide de la commande --.BR ipchains(8) --. -+.BR ipchains (8). - - .SH FICHIERS - .ta ---- net-tools-1.60/man/fr_FR/rarp.8 1999-04-18 22:24:05.000000000 +0300 -+++ net-tools/man/fr_FR/rarp.8 2001-11-05 15:12:11.000000000 +0200 -@@ -55,8 +55,8 @@ - Crée manuellement une correspondance d'adresses RARP pour l'hôte - .B nom_d_hôte - avec l'adresse matérielle --.B adr_materielle --. Le format de l'adresse matérielle est dépendant du matériel, -+.BR adr_materielle . -+Le format de l'adresse matérielle est dépendant du matériel, - mais pour la plupart on peut considérer que la présentation classique - peut être utilisée. Pour la classe Ethernet, c'est 6 octets en hexadécimal, - séparés par des double-points. ---- net-tools-1.60/man/pt_BR/rarp.8 1999-04-18 22:24:13.000000000 +0300 -+++ net-tools/man/pt_BR/rarp.8 2001-11-05 15:12:11.000000000 +0200 -@@ -50,8 +50,8 @@ - Cria um mapeamento de endereços RARP para a máquina - .B máquina - com endereço de hardware configurado para --.B endereço_hardware --. O formato do endereço de hardware depende da classe do hardware, mas -+.B endereço_hardware. -+O formato do endereço de hardware depende da classe do hardware, mas - para a maioria das classes você pode assumir que a apresentação usual pode - ser usada. Para a classe Ethernet, são 6 bytes em hexadecimal, separados - por dois pontos (:). ---- net-tools-1.60/mii-tool.c 2000-05-21 16:31:17.000000000 +0200 -+++ net-tools/mii-tool.c 2006-09-27 23:59:18.000000000 +0300 -@@ -29,8 +29,7 @@ - http://www.national.com/pf/DP/DP83840.html - */ - --static char version[] = --"mii-tool.c 1.9 2000/04/28 00:56:08 (David Hinds)\n"; -+static char Version[] = "$Id$\n(Author: David Hinds based on Donald Becker's mii-diag)"; - - #include - #include -@@ -46,16 +45,19 @@ - #include - #include - #include -+#include -+ - #ifndef __GLIBC__ - #include - #include - #endif - #include "mii.h" -+#include "version.h" - - #define MAX_ETH 8 /* Maximum # of interfaces */ - - /* Table of known MII's */ --static struct { -+static const struct { - u_short id1, id2; - char *name; - } mii_id[] = { -@@ -74,6 +76,9 @@ - { 0x0181, 0x4410, "Quality QS6612" }, - { 0x0282, 0x1c50, "SMSC 83C180" }, - { 0x0300, 0xe540, "TDK 78Q2120" }, -+ { 0x0141, 0x0c20, "Yukon 88E1011" }, -+ { 0x0141, 0x0cc0, "Yukon-EC 88E1111" }, -+ { 0x0141, 0x0c90, "Yukon-2 88E1112" }, - }; - #define NMII (sizeof(mii_id)/sizeof(mii_id[0])) - -@@ -137,40 +142,48 @@ - - const struct { - char *name; -- u_short value; -+ u_short value[2]; - } media[] = { - /* The order through 100baseT4 matches bits in the BMSR */ -- { "10baseT-HD", MII_AN_10BASET_HD }, -- { "10baseT-FD", MII_AN_10BASET_FD }, -- { "100baseTx-HD", MII_AN_100BASETX_HD }, -- { "100baseTx-FD", MII_AN_100BASETX_FD }, -- { "100baseT4", MII_AN_100BASET4 }, -- { "100baseTx", MII_AN_100BASETX_FD | MII_AN_100BASETX_HD }, -- { "10baseT", MII_AN_10BASET_FD | MII_AN_10BASET_HD }, -+ { "10baseT-HD", {MII_AN_10BASET_HD} }, -+ { "10baseT-FD", {MII_AN_10BASET_FD} }, -+ { "100baseTx-HD", {MII_AN_100BASETX_HD} }, -+ { "100baseTx-FD", {MII_AN_100BASETX_FD} }, -+ { "100baseT4", {MII_AN_100BASET4} }, -+ { "100baseTx", {MII_AN_100BASETX_FD | MII_AN_100BASETX_HD} }, -+ { "10baseT", {MII_AN_10BASET_FD | MII_AN_10BASET_HD} }, -+ -+ { "1000baseT-HD", {0, MII_BMCR2_1000HALF} }, -+ { "1000baseT-FD", {0, MII_BMCR2_1000FULL} }, -+ { "1000baseT", {0, MII_BMCR2_1000HALF|MII_BMCR2_1000FULL} }, - }; - #define NMEDIA (sizeof(media)/sizeof(media[0])) - - /* Parse an argument list of media types */ --static int parse_media(char *arg) -+static int parse_media(char *arg, unsigned *bmcr2) - { - int mask, i; - char *s; - mask = strtoul(arg, &s, 16); - if ((*arg != '\0') && (*s == '\0')) { - if ((mask & MII_AN_ABILITY_MASK) && -- !(mask & ~MII_AN_ABILITY_MASK)) -- return mask; -+ !(mask & ~MII_AN_ABILITY_MASK)) { -+ *bmcr2 = 0; -+ return mask; -+ } - goto failed; -- } else { -- mask = 0; -- s = strtok(arg, ", "); -- do { -+ } -+ mask = 0; -+ *bmcr2 = 0; -+ s = strtok(arg, ", "); -+ do { - for (i = 0; i < NMEDIA; i++) -- if (strcasecmp(media[i].name, s) == 0) break; -+ if (s && strcasecmp(media[i].name, s) == 0) break; - if (i == NMEDIA) goto failed; -- mask |= media[i].value; -- } while ((s = strtok(NULL, ", ")) != NULL); -- } -+ mask |= media[i].value[0]; -+ *bmcr2 |= media[i].value[1]; -+ } while ((s = strtok(NULL, ", ")) != NULL); -+ - return mask; - failed: - fprintf(stderr, "Invalid media specification '%s'.\n", arg); -@@ -179,11 +192,24 @@ - - /*--------------------------------------------------------------------*/ - --static char *media_list(int mask, int best) -+static const char *media_list(unsigned mask, unsigned mask2, int best) - { - static char buf[100]; - int i; - *buf = '\0'; -+ -+ if (mask & MII_BMCR_SPEED1000) { -+ if (mask2 & MII_BMCR2_1000HALF) { -+ strcat(buf, " "); -+ strcat(buf, "1000baseT-HD"); -+ if (best) goto out; -+ } -+ if (mask2 & MII_BMCR2_1000FULL) { -+ strcat(buf, " "); -+ strcat(buf, "1000baseT-FD"); -+ if (best) goto out; -+ } -+ } - mask >>= 5; - for (i = 4; i >= 0; i--) { - if (mask & (1< 1) ? 32 : 8); i++) -+ for (i = 0; i < ((verbose > 1) ? 32 : MII_BASIC_MAX); i++) - mii_val[i] = mdio_read(sock, i); - -- if (mii_val[MII_BMCR] == 0xffff) { -+ if (mii_val[MII_BMCR] == 0xffff || mii_val[MII_BMSR] == 0x0000) { - fprintf(stderr, " No MII transceiver present!.\n"); - return -1; - } -@@ -217,6 +244,7 @@ - /* Descriptive rename. */ - bmcr = mii_val[MII_BMCR]; bmsr = mii_val[MII_BMSR]; - advert = mii_val[MII_ANAR]; lkpar = mii_val[MII_ANLPAR]; -+ bmcr2 = mii_val[MII_CTRL1000]; lpa2 = mii_val[MII_STAT1000]; - - sprintf(buf, "%s: ", ifr.ifr_name); - if (bmcr & MII_BMCR_AN_ENA) { -@@ -224,7 +252,7 @@ - if (advert & lkpar) { - strcat(buf, (lkpar & MII_AN_ACK) ? - "negotiated" : "no autonegotiation,"); -- strcat(buf, media_list(advert & lkpar, 1)); -+ strcat(buf, media_list(advert & lkpar, bmcr2 & lpa2>>2, 1)); - strcat(buf, ", "); - } else { - strcat(buf, "autonegotiation failed, "); -@@ -234,8 +262,10 @@ - } - } else { - sprintf(buf+strlen(buf), "%s Mbit, %s duplex, ", -- (bmcr & MII_BMCR_100MBIT) ? "100" : "10", -- (bmcr & MII_BMCR_DUPLEX) ? "full" : "half"); -+ ((bmcr2 & (MII_BMCR2_1000HALF | MII_BMCR2_1000FULL)) & lpa2 >> 2) -+ ? "1000" -+ : (bmcr & MII_BMCR_100MBIT) ? "100" : "10", -+ (bmcr & MII_BMCR_DUPLEX) ? "full" : "half"); - } - strcat(buf, (bmsr & MII_BMSR_LINK_VALID) ? "link ok" : "no link"); - -@@ -296,12 +326,13 @@ - if (bmsr & MII_BMSR_REMOTE_FAULT) - printf("remote fault, "); - printf((bmsr & MII_BMSR_LINK_VALID) ? "link ok" : "no link"); -- printf("\n capabilities:%s", media_list(bmsr >> 6, 0)); -- printf("\n advertising: %s", media_list(advert, 0)); -+ printf("\n capabilities:%s", media_list(bmsr >> 6, bmcr2, 0)); -+ printf("\n advertising: %s", media_list(advert, lpa2 >> 2, 0)); - if (lkpar & MII_AN_ABILITY_MASK) -- printf("\n link partner:%s", media_list(lkpar, 0)); -+ printf("\n link partner:%s", media_list(lkpar, bmcr2, 0)); - printf("\n"); - } -+ fflush(stdout); - return 0; - } - -@@ -329,7 +360,7 @@ - printf("resetting the transceiver...\n"); - mdio_write(skfd, MII_BMCR, MII_BMCR_RESET); - } -- if (nway_advertise) { -+ if (nway_advertise > 0) { - mdio_write(skfd, MII_ANAR, nway_advertise | 1); - opt_restart = 1; - } -@@ -379,27 +410,38 @@ - /*--------------------------------------------------------------------*/ - - const char *usage = --"usage: %s [-VvRrwl] [-A media,... | -F media] [interface ...] -- -V, --version display version information -- -v, --verbose more verbose output -- -R, --reset reset MII to poweron state -- -r, --restart restart autonegotiation -- -w, --watch monitor for link status changes -- -l, --log with -w, write events to syslog -- -A, --advertise=media,... advertise only specified media -- -F, --force=media force specified media technology --media: 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD, -- (to advertise both HD and FD) 100baseTx, 10baseT\n"; -+"usage: %s [-VvRrwl] [-A media,... | -F media] [interface ...]\n" -+" -V, --version display version information\n" -+" -v, --verbose more verbose output\n" -+" -R, --reset reset MII to poweron state\n" -+" -r, --restart restart autonegotiation\n" -+" -w, --watch monitor for link status changes\n" -+" -l, --log with -w, write events to syslog\n" -+" -A, --advertise=media,... advertise only specified media\n" -+" -F, --force=media force specified media technology\n" -+"media: 1000baseTx-HD, 1000baseTx-FD,\n" -+" 100baseT4, 100baseTx-FD, 100baseTx-HD,\n" -+" 10baseT-FD, 10baseT-HD,\n" -+" (to advertise both HD and FD) 1000baseTx, 100baseTx, 10baseT\n"; -+ -+ -+static void version(void) -+{ -+ fprintf(stderr, "%s\n%s\n", Version, RELEASE); -+ exit(5); /* E_VERSION */ -+} -+ - - int main(int argc, char **argv) - { - int i, c, ret, errflag = 0; - char s[6]; -+ unsigned ctrl1000 = 0; - - while ((c = getopt_long(argc, argv, "A:F:p:lrRvVw?", longopts, 0)) != EOF) - switch (c) { -- case 'A': nway_advertise = parse_media(optarg); break; -- case 'F': fixed_speed = parse_media(optarg); break; -+ case 'A': nway_advertise = parse_media(optarg, &ctrl1000); break; -+ case 'F': fixed_speed = parse_media(optarg, &ctrl1000); break; - case 'p': override_phy = atoi(optarg); break; - case 'r': opt_restart++; break; - case 'R': opt_reset++; break; -@@ -411,6 +453,10 @@ - } - /* Check for a few inappropriate option combinations */ - if (opt_watch) verbose = 0; -+ -+ if ((nway_advertise < 0) || (fixed_speed < 0)) -+ return 2; -+ - if (errflag || (fixed_speed & (fixed_speed-1)) || - (fixed_speed && (opt_restart || nway_advertise))) { - fprintf(stderr, usage, argv[0]); -@@ -418,7 +464,7 @@ - } - - if (opt_version) -- printf(version); -+ version(); - - /* Open a basic socket. */ - if ((skfd = socket(AF_INET, SOCK_DGRAM,0)) < 0) { -@@ -426,6 +472,9 @@ - exit(-1); - } - -+ if (verbose > 1) -+ printf("Using SIOCGMIIPHY=0x%x\n", SIOCGMIIPHY); -+ - /* No remaining args means show all interfaces. */ - if (optind == argc) { - ret = 1; ---- net-tools-1.60/nameif.c 2000-10-18 19:26:29.000000000 +0200 -+++ net-tools/nameif.c 2003-09-11 06:46:49.000000000 +0300 -@@ -3,7 +3,7 @@ - * Writen 2000 by Andi Kleen. - * Subject to the Gnu Public License, version 2. - * TODO: make it support token ring etc. -- * $Id$ -+ * $Id$ - */ - #ifndef _GNU_SOURCE - #define _GNU_SOURCE -@@ -117,7 +117,8 @@ - } - - struct change { -- struct change *next,**pprev; -+ struct change *next; -+ int found; - char ifname[IFNAMSIZ+1]; - unsigned char mac[6]; - }; -@@ -139,10 +140,7 @@ - ch->ifname, pos); - if (parsemac(p,ch->mac) < 0) - complain(_("cannot parse MAC `%s' at %s"), p, pos); -- if (clist) -- clist->pprev = &ch->next; - ch->next = clist; -- ch->pprev = &clist; - clist = ch; - return 0; - } -@@ -177,7 +175,7 @@ - if (*p == '\0') - continue; - n = strcspn(p, " \t"); -- if (n > IFNAMSIZ) -+ if (n > IFNAMSIZ-1) - complain(_("interface name too long at line %d"), line); - memcpy(ch->ifname, p, n); - ch->ifname[n] = 0; -@@ -200,7 +198,7 @@ - - void usage(void) - { -- fprintf(stderr, _("usage: nameif [-c configurationfile] [-s] {ifname macaddress}")); -+ fprintf(stderr, _("usage: nameif [-c configurationfile] [-s] {ifname macaddress}\n")); - exit(1); - } - -@@ -277,21 +275,21 @@ - ch = lookupmac(mac); - if (!ch) - continue; -- -- *ch->pprev = ch->next; -+ -+ ch->found = 1; - if (strcmp(p, ch->ifname)) { - if (setname(p, ch->ifname) < 0) - complain(_("cannot change name of %s to %s: %s"), - p, ch->ifname, strerror(errno)); - } -- free(ch); - } - fclose(ifh); - - while (clist) { - struct change *ch = clist; - clist = clist->next; -- warning(_("interface '%s' not found"), ch->ifname); -+ if (!ch->found) -+ warning(_("interface '%s' not found"), ch->ifname); - free(ch); - } - ---- net-tools-1.60/netstat.c 2001-04-15 16:41:17.000000000 +0200 -+++ net-tools/netstat.c 2006-03-16 10:59:42.000000000 +0200 -@@ -6,7 +6,7 @@ - * NET-3 Networking Distribution for the LINUX operating - * system. - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Authors: Fred Baumgarten, - * Fred N. van Kempen, -@@ -216,7 +216,7 @@ - - static struct prg_node { - struct prg_node *next; -- int inode; -+ unsigned long inode; - char name[PROGNAME_WIDTH]; - } *prg_hash[PRG_HASH_SIZE]; - -@@ -249,7 +249,7 @@ - /* NOT working as of glibc-2.0.7: */ - #undef DIRENT_HAVE_D_TYPE_WORKS - --static void prg_cache_add(int inode, char *name) -+static void prg_cache_add(unsigned long inode, char *name) - { - unsigned hi = PRG_HASHIT(inode); - struct prg_node **pnp,*pn; -@@ -272,7 +272,7 @@ - strcpy(pn->name,name); - } - --static const char *prg_cache_get(int inode) -+static const char *prg_cache_get(unsigned long inode) - { - unsigned hi=PRG_HASHIT(inode); - struct prg_node *pn; -@@ -295,16 +295,18 @@ - prg_cache_loaded=0; - } - --static void extract_type_1_socket_inode(const char lname[], long * inode_p) { -+static int extract_type_1_socket_inode(const char lname[], unsigned long * inode_p) { - - /* If lname is of the form "socket:[12345]", extract the "12345" - as *inode_p. Otherwise, return -1 as *inode_p. - */ - -- if (strlen(lname) < PRG_SOCKET_PFXl+3) *inode_p = -1; -- else if (memcmp(lname, PRG_SOCKET_PFX, PRG_SOCKET_PFXl)) *inode_p = -1; -- else if (lname[strlen(lname)-1] != ']') *inode_p = -1; -- else { -+ if (strlen(lname) < PRG_SOCKET_PFXl+3) return(-1); -+ -+ if (memcmp(lname, PRG_SOCKET_PFX, PRG_SOCKET_PFXl)) return(-1); -+ if (lname[strlen(lname)-1] != ']') return(-1); -+ -+ { - char inode_str[strlen(lname + 1)]; /* e.g. "12345" */ - const int inode_str_len = strlen(lname) - PRG_SOCKET_PFXl - 1; - char *serr; -@@ -313,37 +315,41 @@ - inode_str[inode_str_len] = '\0'; - *inode_p = strtol(inode_str,&serr,0); - if (!serr || *serr || *inode_p < 0 || *inode_p >= INT_MAX) -- *inode_p = -1; -+ return(-1); - } -+ return(0); - } - - - --static void extract_type_2_socket_inode(const char lname[], long * inode_p) { -+static int extract_type_2_socket_inode(const char lname[], unsigned long * inode_p) { - - /* If lname is of the form "[0000]:12345", extract the "12345" - as *inode_p. Otherwise, return -1 as *inode_p. - */ - -- if (strlen(lname) < PRG_SOCKET_PFX2l+1) *inode_p = -1; -- else if (memcmp(lname, PRG_SOCKET_PFX2, PRG_SOCKET_PFX2l)) *inode_p = -1; -- else { -+ if (strlen(lname) < PRG_SOCKET_PFX2l+1) return(-1); -+ if (memcmp(lname, PRG_SOCKET_PFX2, PRG_SOCKET_PFX2l)) return(-1); -+ -+ { - char *serr; - - *inode_p=strtol(lname + PRG_SOCKET_PFX2l,&serr,0); - if (!serr || *serr || *inode_p < 0 || *inode_p >= INT_MAX) -- *inode_p = -1; -+ return(-1); - } -+ return(0); - } - - - -+ - static void prg_cache_load(void) - { - char line[LINE_MAX],eacces=0; - int procfdlen,fd,cmdllen,lnamelen; - char lname[30],cmdlbuf[512],finbuf[PROGNAME_WIDTH]; -- long inode; -+ unsigned long inode; - const char *cs,*cmdlp; - DIR *dirproc=NULL,*dirfd=NULL; - struct dirent *direproc,*direfd; -@@ -386,11 +392,9 @@ - lnamelen=readlink(line,lname,sizeof(lname)-1); - lname[lnamelen] = '\0'; /*make it a null-terminated string*/ - -- extract_type_1_socket_inode(lname, &inode); -- -- if (inode < 0) extract_type_2_socket_inode(lname, &inode); -- -- if (inode < 0) continue; -+ if (extract_type_1_socket_inode(lname, &inode) < 0) -+ if (extract_type_2_socket_inode(lname, &inode) < 0) -+ continue; - - if (!cmdlp) { - if (procfdlen - PATH_FD_SUFFl + PATH_CMDLINEl >= -@@ -527,10 +531,10 @@ - - if (flag_exp > 1) { - if (!(flag_not & FLAG_NUM_USER) && ((pw = getpwuid(uid)) != NULL)) -- printf("%-10s ", pw->pw_name); -+ printf(" %-10s ", pw->pw_name); - else -- printf("%-10d ", uid); -- printf("%-10ld ",inode); -+ printf(" %-10d ", uid); -+ printf("%-10lu ",inode); - } - if (flag_prg) - printf("%-" PROGNAME_WIDTHs "s",prg_cache_get(inode)); -@@ -705,6 +709,7 @@ - unsigned long rxq, txq, time_len, retr, inode; - int num, local_port, rem_port, d, state, uid, timer_run, timeout; - char rem_addr[128], local_addr[128], timers[64], buffer[1024], more[512]; -+ char *protname; - struct aftype *ap; - #if HAVE_AFINET6 - struct sockaddr_in6 localaddr, remaddr; -@@ -719,12 +724,13 @@ - return; - - num = sscanf(line, -- "%d: %64[0-9A-Fa-f]:%X %64[0-9A-Fa-f]:%X %X %lX:%lX %X:%lX %lX %d %d %ld %512s\n", -+ "%d: %64[0-9A-Fa-f]:%X %64[0-9A-Fa-f]:%X %X %lX:%lX %X:%lX %lX %d %d %lu %512s\n", - &d, local_addr, &local_port, rem_addr, &rem_port, &state, - &txq, &rxq, &timer_run, &time_len, &retr, &uid, &timeout, &inode, more); - - if (strlen(local_addr) > 8) { - #if HAVE_AFINET6 -+ protname = "tcp6"; - /* Demangle what the kernel gives us */ - sscanf(local_addr, "%08X%08X%08X%08X", - &in6.s6_addr32[0], &in6.s6_addr32[1], -@@ -740,6 +746,7 @@ - remaddr.sin6_family = AF_INET6; - #endif - } else { -+ protname = "tcp"; - sscanf(local_addr, "%X", - &((struct sockaddr_in *) &localaddr)->sin_addr.s_addr); - sscanf(rem_addr, "%X", -@@ -813,8 +820,8 @@ - timer_run, (double) time_len / HZ, retr, timeout); - break; - } -- printf("tcp %6ld %6ld %-23s %-23s %-12s", -- rxq, txq, local_addr, rem_addr, _(tcp_state[state])); -+ printf("%-4s %6ld %6ld %-*s %-*s %-11s", -+ protname, rxq, txq, netmax(23,strlen(local_addr)), local_addr, netmax(23,strlen(rem_addr)), rem_addr, _(tcp_state[state])); - - finish_this_one(uid,inode,timers); - } -@@ -831,6 +838,7 @@ - char buffer[8192], local_addr[64], rem_addr[64]; - char *udp_state, timers[64], more[512]; - int num, local_port, rem_port, d, state, timer_run, uid, timeout; -+ char *protname; - #if HAVE_AFINET6 - struct sockaddr_in6 localaddr, remaddr; - char addr6[INET6_ADDRSTRLEN]; -@@ -847,13 +855,14 @@ - - more[0] = '\0'; - num = sscanf(line, -- "%d: %64[0-9A-Fa-f]:%X %64[0-9A-Fa-f]:%X %X %lX:%lX %X:%lX %lX %d %d %ld %512s\n", -+ "%d: %64[0-9A-Fa-f]:%X %64[0-9A-Fa-f]:%X %X %lX:%lX %X:%lX %lX %d %d %lu %512s\n", - &d, local_addr, &local_port, - rem_addr, &rem_port, &state, - &txq, &rxq, &timer_run, &time_len, &retr, &uid, &timeout, &inode, more); - - if (strlen(local_addr) > 8) { - #if HAVE_AFINET6 -+ protname="udp6"; - sscanf(local_addr, "%08X%08X%08X%08X", - &in6.s6_addr32[0], &in6.s6_addr32[1], - &in6.s6_addr32[2], &in6.s6_addr32[3]); -@@ -868,6 +877,7 @@ - remaddr.sin6_family = AF_INET6; - #endif - } else { -+ protname="udp"; - sscanf(local_addr, "%X", - &((struct sockaddr_in *) &localaddr)->sin_addr.s_addr); - sscanf(rem_addr, "%X", -@@ -953,8 +963,8 @@ - retr, timeout); - break; - } -- printf("udp %6ld %6ld %-23s %-23s %-12s", -- rxq, txq, local_addr, rem_addr, udp_state); -+ printf("%-4s %6ld %6ld %-23s %-23s %-11s", -+ protname, rxq, txq, local_addr, rem_addr, udp_state); - - finish_this_one(uid,inode,timers); - } -@@ -971,6 +981,7 @@ - char buffer[8192], local_addr[64], rem_addr[64]; - char timers[64], more[512]; - int num, local_port, rem_port, d, state, timer_run, uid, timeout; -+ char *protname; - #if HAVE_AFINET6 - struct sockaddr_in6 localaddr, remaddr; - char addr6[INET6_ADDRSTRLEN]; -@@ -987,12 +998,13 @@ - - more[0] = '\0'; - num = sscanf(line, -- "%d: %64[0-9A-Fa-f]:%X %64[0-9A-Fa-f]:%X %X %lX:%lX %X:%lX %lX %d %d %ld %512s\n", -+ "%d: %64[0-9A-Fa-f]:%X %64[0-9A-Fa-f]:%X %X %lX:%lX %X:%lX %lX %d %d %lu %512s\n", - &d, local_addr, &local_port, rem_addr, &rem_port, &state, - &txq, &rxq, &timer_run, &time_len, &retr, &uid, &timeout, &inode, more); - - if (strlen(local_addr) > 8) { - #if HAVE_AFINET6 -+ protname = "raw6"; - sscanf(local_addr, "%08X%08X%08X%08X", - &in6.s6_addr32[0], &in6.s6_addr32[1], - &in6.s6_addr32[2], &in6.s6_addr32[3]); -@@ -1007,6 +1019,7 @@ - remaddr.sin6_family = AF_INET6; - #endif - } else { -+ protname = "raw"; - sscanf(local_addr, "%X", - &((struct sockaddr_in *) &localaddr)->sin_addr.s_addr); - sscanf(rem_addr, "%X", -@@ -1074,8 +1087,8 @@ - retr, timeout); - break; - } -- printf("raw %6ld %6ld %-23s %-23s %-12d", -- rxq, txq, local_addr, rem_addr, state); -+ printf("%-4s %6ld %6ld %-23s %-23s %-11d", -+ protname, rxq, txq, local_addr, rem_addr, state); - - finish_this_one(uid,inode,timers); - } -@@ -1099,9 +1112,9 @@ - static int has = 0; - char path[MAXPATHLEN], ss_flags[32]; - char *ss_proto, *ss_state, *ss_type; -- int num, state, type, inode; -+ int num, state, type; - void *d; -- unsigned long refcnt, proto, flags; -+ unsigned long refcnt, proto, flags, inode; - - if (nr == 0) { - if (strstr(line, "Inode")) -@@ -1109,14 +1122,14 @@ - return; - } - path[0] = '\0'; -- num = sscanf(line, "%p: %lX %lX %lX %X %X %d %s", -+ num = sscanf(line, "%p: %lX %lX %lX %X %X %lu %s", - &d, &refcnt, &proto, &flags, &type, &state, &inode, path); - if (num < 6) { - fprintf(stderr, _("warning, got bogus unix line.\n")); - return; - } - if (!(has & HAS_INODE)) -- snprintf(path,sizeof(path),"%d",inode); -+ snprintf(path,sizeof(path),"%lu",inode); - - if (!flag_all) { - if ((state == SS_UNCONNECTED) && (flags & SO_ACCEPTCON)) { -@@ -1208,9 +1221,9 @@ - printf("%-5s %-6ld %-11s %-10s %-13s ", - ss_proto, refcnt, ss_flags, ss_type, ss_state); - if (has & HAS_INODE) -- printf("%-6d ",inode); -+ printf("%-8lu ",inode); - else -- printf("- "); -+ printf("- "); - if (flag_prg) - printf("%-" PROGNAME_WIDTHs "s",(has & HAS_INODE?prg_cache_get(inode):"-")); - puts(path); -@@ -1350,18 +1363,37 @@ - char sad[50], dad[50]; - struct sockaddr sa; - unsigned sport = 0, dport = 0; -- -- if (!(f = fopen(_PATH_PROCNET_IPX, "r"))) { -- if (errno != ENOENT) { -- perror(_PATH_PROCNET_IPX); -- return (-1); -- } -- if (flag_arg || flag_ver) -- ESYSNOT("netstat", "AF IPX"); -- if (flag_arg) -- return (1); -- else -- return (0); -+ struct stat s; -+ -+ f = fopen(_PATH_PROCNET_IPX_SOCKET1, "r"); -+ if (!f) { -+ if (errno != ENOENT) { -+ perror(_PATH_PROCNET_IPX_SOCKET1); -+ return (-1); -+ } -+ f = fopen(_PATH_PROCNET_IPX_SOCKET2, "r"); -+ -+ /* We need to check for directory */ -+ if (f) { -+ fstat(fileno(f), &s); -+ if (!S_ISREG(s.st_mode)) { -+ fclose(f); -+ f=NULL; -+ } -+ } -+ -+ if (!f) { -+ if (errno != ENOENT) { -+ perror(_PATH_PROCNET_IPX_SOCKET2); -+ return (-1); -+ } -+ if (flag_arg || flag_ver) -+ ESYSNOT("netstat", "AF IPX"); -+ if (flag_arg) -+ return (1); -+ else -+ return (0); -+ } - } - printf(_("Active IPX sockets\nProto Recv-Q Send-Q Local Address Foreign Address State")); /* xxx */ - if (flag_exp > 1) -@@ -1381,7 +1413,7 @@ - sscanf(st, "%X", &sport); /* net byt order */ - sport = ntohs(sport); - } else { -- EINTERN("netstat.c", _PATH_PROCNET_IPX " sport format error"); -+ EINTERN("netstat.c", "ipx socket format error in source port"); - return (-1); - } - nc = 0; -@@ -1391,7 +1423,7 @@ - sscanf(st, "%X", &dport); /* net byt order */ - dport = ntohs(dport); - } else { -- EINTERN("netstat.c", _PATH_PROCNET_IPX " dport format error"); -+ EINTERN("netstat.c", "ipx soket format error in destination port"); - return (-1); - } - } else -@@ -1449,7 +1481,7 @@ - } - if (flag_exp < 2) { - ife_short = 1; -- printf(_("Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg\n")); -+ printf(_("Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg\n")); - } - - if (for_all_interfaces(do_if_print, &flag_all) < 0) { -@@ -1457,7 +1489,7 @@ - exit(1); - } - if (flag_cnt) -- free_interface_list(); -+ if_cache_free(); - else { - close(skfd); - skfd = -1; -@@ -1503,7 +1535,7 @@ - fprintf(stderr, _(" -C, --cache display routing cache instead of FIB\n\n")); - - fprintf(stderr, _(" ={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom\n")); -- fprintf(stderr, _(" =Use '-A ' or '--'; default: %s\n"), DFLT_AF); -+ fprintf(stderr, _(" =Use '-6|-4' or '-A ' or '--'; default: %s\n"), DFLT_AF); - fprintf(stderr, _(" List of possible address families (which support routing):\n")); - print_aflist(1); /* 1 = routeable */ - exit(E_USAGE); -@@ -1514,7 +1546,7 @@ - (int argc, char *argv[]) { - int i; - int lop; -- struct option longopts[] = -+ static struct option longopts[] = - { - AFTRANS_OPTS, - {"version", 0, 0, 'V'}, -@@ -1556,7 +1588,7 @@ - getroute_init(); /* Set up AF routing support */ - - afname[0] = '\0'; -- while ((i = getopt_long(argc, argv, "MCFA:acdegphinNorstuVv?wxl", longopts, &lop)) != EOF) -+ while ((i = getopt_long(argc, argv, "MCFA:acdegphinNorstuVv?wxl64", longopts, &lop)) != EOF) - switch (i) { - case -1: - break; -@@ -1624,6 +1656,14 @@ - case 'o': - flag_opt++; - break; -+ case '6': -+ if (aftrans_opt("inet6")) -+ exit(1); -+ break; -+ case '4': -+ if (aftrans_opt("inet")) -+ exit(1); -+ break; - case 'V': - version(); - /*NOTREACHED */ ---- net-tools-1.60/po/de.po 2000-10-28 12:59:43.000000000 +0200 -+++ net-tools/po/de.po 2003-10-26 00:15:09.000000000 +0300 -@@ -1,4 +1,4 @@ --# $Id$ -+# $Id$ - # German translation for net-tools 1.51 - # Copyright (C) 1999 Ralf Bächle - msgid "" -@@ -64,7 +64,7 @@ - - #: ../arp.c:467 - msgid "(incomplete)" --msgstr "(unvollsändig)" -+msgstr "(unvollständig)" - - #: ../arp.c:484 - #, c-format ---- net-tools-1.60/po/et_EE.po 2001-02-16 10:57:47.000000000 +0200 -+++ net-tools/po/et_EE.po 2001-04-16 20:43:27.000000000 +0200 -@@ -1,66 +1,65 @@ - # Estonian translations for net-tools --# Copyright (C) 1999 Free Software Foundation, Inc. --# Meelis Roos , 1999. -+# Copyright (C) 1999-2001 Free Software Foundation, Inc. -+# Meelis Roos , 1999-2001. - # --#, fuzzy - msgid "" - msgstr "" --"Project-Id-Version: net-tools 1.58\n" --"POT-Creation-Date: 2001-02-15 21:28+0200\n" --"PO-Revision-Date: 2001-02-15 18:00+0300\n" -+"Project-Id-Version: net-tools 1.60\n" -+"POT-Creation-Date: 2001-04-16 20:24+0200\n" -+"PO-Revision-Date: 2001-04-16 20:30+0200\n" - "Last-Translator: Meelis Roos \n" - "Language-Team: Estonian \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=iso-8859-15\n" - "Content-Transfer-Encoding: 8bit\n" - --#: ../arp.c:110 ../arp.c:269 -+#: ../arp.c:111 ../arp.c:270 - msgid "arp: need host name\n" - msgstr "arp: puudub hosti nimi\n" - --#: ../arp.c:207 ../arp.c:221 -+#: ../arp.c:208 ../arp.c:222 - #, c-format - msgid "No ARP entry for %s\n" - msgstr "%s jaoks pole ARP kirjet\n" - --#: ../arp.c:239 -+#: ../arp.c:240 - #, c-format - msgid "arp: cant get HW-Address for `%s': %s.\n" - msgstr "arp: ei saa riistvaralist aadressi `%s' jaoks: %s\n" - --#: ../arp.c:243 -+#: ../arp.c:244 - msgid "arp: protocol type mismatch.\n" - msgstr "arp: vale protokolli tüüp\n" - --#: ../arp.c:252 -+#: ../arp.c:253 - #, c-format - msgid "arp: device `%s' has HW address %s `%s'.\n" - msgstr "arp: seadmel `%s' on riistvaraline aadress %s `%s'\n" - --#: ../arp.c:282 -+#: ../arp.c:283 - msgid "arp: need hardware address\n" - msgstr "arp: puudub riistvaraline aadress\n" - --#: ../arp.c:290 -+#: ../arp.c:291 - msgid "arp: invalid hardware address\n" - msgstr "arp: vigane riistvaraline aadress\n" - --#: ../arp.c:387 -+#: ../arp.c:388 - #, c-format - msgid "arp: cannot open etherfile %s !\n" - msgstr "arp: ei saa avada faili %s\n" - --#: ../arp.c:403 -+#: ../arp.c:404 - #, c-format - msgid "arp: format error on line %u of etherfile %s !\n" - msgstr "arp: formaadiviga real %u failis %s\n" - --#: ../arp.c:416 -+#: ../arp.c:417 - #, c-format - msgid "arp: cannot set entry on line %u of etherfile %s !\n" - msgstr "arp: ei saa kehtestada ARP kirjet real %u failis %s\n" - --#: ../arp.c:437 -+#: ../arp.c:438 - msgid "" - "Address HWtype HWaddress Flags Mask " - "Iface\n" -@@ -68,45 +67,45 @@ - "Aadress HWtüüp HWaadress Lipud Mask " - "Liides\n" - --#: ../arp.c:467 -+#: ../arp.c:468 - msgid "(incomplete)" - msgstr "(mittetäielik)" - --#: ../arp.c:484 -+#: ../arp.c:485 - #, c-format - msgid "%s (%s) at " - msgstr "%s (%s) aadressil " - --#: ../arp.c:490 -+#: ../arp.c:491 - msgid " " - msgstr "" - --#: ../arp.c:496 -+#: ../arp.c:497 - #, c-format - msgid "netmask %s " - msgstr "võrgumask %s " - --#: ../arp.c:513 -+#: ../arp.c:514 - #, c-format - msgid "on %s\n" - msgstr "liides %s\n" - --#: ../arp.c:592 -+#: ../arp.c:593 - #, c-format - msgid "Entries: %d\tSkipped: %d\tFound: %d\n" - msgstr "ARP kirjeid kokku: %s\tignoreerisin: %d\tleidsin: %d\n" - --#: ../arp.c:596 -+#: ../arp.c:597 - #, c-format - msgid "%s (%s) -- no entry\n" - msgstr "%s (%s) -- pole kirjet\n" - --#: ../arp.c:598 -+#: ../arp.c:599 - #, c-format - msgid "arp: in %d entries no match found.\n" - msgstr "arp: ei leidnud %d kirje hulgast sobivat\n" - --#: ../arp.c:613 -+#: ../arp.c:614 - msgid "" - "Usage:\n" - " arp [-vn] [] [-i ] [-a] [] <-Display ARP " -@@ -116,7 +115,7 @@ - "ARP cache vaatamine:\n" - " arp [-vn] [] [-i ] [-a] []\n" - --#: ../arp.c:614 -+#: ../arp.c:615 - msgid "" - " arp [-v] [-i ] -d [pub][nopub] <-Delete ARP " - "entry\n" -@@ -124,7 +123,7 @@ - "ARP kirje kustutamine:\n" - " arp [-v] [-i ] -d [pub] [nopub]\n" - --#: ../arp.c:615 -+#: ../arp.c:616 - msgid "" - " arp [-vnD] [] [-i ] -f [] <-Add entry from " - "file\n" -@@ -132,7 +131,7 @@ - "ARP kirjete lisamine failist:\n" - " arp [-vnD] [] [-i ] -f []\n" - --#: ../arp.c:616 -+#: ../arp.c:617 - msgid "" - " arp [-v] [] [-i ] -s [temp][nopub] <-Add " - "entry\n" -@@ -140,14 +139,14 @@ - "ARP kirje lisamine:\n" - " arp [-v] [] [-i ] -s [temp] [nopub]\n" - --#: ../arp.c:617 -+#: ../arp.c:618 - msgid "" - " arp [-v] [] [-i ] -s [netmask ] pub " - "<-''-\n" - msgstr "" - " arp [-v] [] [-i ] -s [netmask ] pub\n" - --#: ../arp.c:618 -+#: ../arp.c:619 - msgid "" - " arp [-v] [] [-i ] -Ds [netmask ] pub " - "<-''-\n" -@@ -156,7 +155,7 @@ - " arp [-v] [] [-i ] -Ds [netmask ] pub\n" - "\n" - --#: ../arp.c:620 -+#: ../arp.c:621 - msgid "" - " -a display (all) hosts in alternative (BSD) " - "style\n" -@@ -164,37 +163,37 @@ - " -a näita kõiki hoste alternatiivsel (BSD) " - "kujul\n" - --#: ../arp.c:621 -+#: ../arp.c:622 - msgid " -s, --set set a new ARP entry\n" - msgstr " -s, --set uue ARP kirje seadmine\n" - --#: ../arp.c:622 -+#: ../arp.c:623 - msgid " -d, --delete delete a specified entry\n" - msgstr " -d, --delete määratud kirje kustutamine\n" - --#: ../arp.c:623 ../netstat.c:1485 ../route.c:85 -+#: ../arp.c:624 ../netstat.c:1490 ../route.c:86 - msgid " -v, --verbose be verbose\n" - msgstr " -v, --verbose jutukas väljund\n" - --#: ../arp.c:624 -+#: ../arp.c:625 ../netstat.c:1491 ../route.c:87 - msgid " -n, --numeric don't resolve names\n" - msgstr " -n, --numeric mitte lahendada nimesid\n" - --#: ../arp.c:625 -+#: ../arp.c:626 - msgid "" - " -i, --device specify network interface (e.g. eth0)\n" - msgstr "" - " -i, --device võrguliidese täpsustamine (näiteks eth0)\n" - --#: ../arp.c:626 -+#: ../arp.c:627 - msgid " -D, --use-device read from given device\n" - msgstr " -D, --use-device lugeda vastavalt liideselt\n" - --#: ../arp.c:627 -+#: ../arp.c:628 - msgid " -A, -p, --protocol specify protocol family\n" - msgstr " -A, -p, --protocol protokollipere määramine\n" - --#: ../arp.c:628 -+#: ../arp.c:629 - msgid "" - " -f, --file read new entries from file or from " - "/etc/ethers\n" -@@ -204,125 +203,125 @@ - "/etc/ethers'st\n" - "\n" - --#: ../arp.c:630 ../rarp.c:181 -+#: ../arp.c:631 ../rarp.c:182 - #, c-format - msgid " =Use '-H ' to specify hardware address type. Default: %s\n" - msgstr "" - " =kasutage '-H ' riistvaralise aadressi määramiseks.\n" - " Vaikimisi: %s\n" - --#: ../arp.c:631 ../rarp.c:182 -+#: ../arp.c:632 ../rarp.c:183 - msgid " List of possible hardware types (which support ARP):\n" - msgstr " Võimalike ARP-i toetavate riistvara tüüpide nimekiri:\n" - --#: ../arp.c:664 ../arp.c:749 -+#: ../arp.c:666 ../arp.c:751 - #, c-format - msgid "%s: hardware type not supported!\n" - msgstr "arp: riistvara tüüpi %s ei toetata\n" - --#: ../arp.c:668 -+#: ../arp.c:670 - #, c-format - msgid "%s: address family not supported!\n" - msgstr "arp: aadressiperekonda %s ei toetata\n" - --#: ../arp.c:703 -+#: ../arp.c:705 - msgid "arp: -N not yet supported.\n" - msgstr "arp: -N toetust pole veel\n" - --#: ../arp.c:713 -+#: ../arp.c:715 - #, c-format - msgid "arp: %s: unknown address family.\n" - msgstr "arp: tundmatu aadressiperekond %s\n" - --#: ../arp.c:722 -+#: ../arp.c:724 - #, c-format - msgid "arp: %s: unknown hardware type.\n" - msgstr "arp: tundmatu riistvara tüüp %s\n" - --#: ../arp.c:741 -+#: ../arp.c:743 - #, c-format - msgid "arp: %s: kernel only supports 'inet'.\n" - msgstr "arp: tuumas on ainult 'inet' aadressiperekonna toetus\n" - --#: ../arp.c:754 -+#: ../arp.c:756 - #, c-format - msgid "arp: %s: hardware type without ARP support.\n" - msgstr "arp: riistvara tüübil %s pole ARP toetust\n" - --#: ../hostname.c:69 -+#: ../hostname.c:70 - #, c-format - msgid "Setting nodename to `%s'\n" - msgstr "Sean sõlme nimeks `%s'\n" - --#: ../hostname.c:74 -+#: ../hostname.c:75 - #, c-format - msgid "%s: you must be root to change the node name\n" - msgstr "%s: ainult root saab sõlme nime muuta\n" - --#: ../hostname.c:77 ../hostname.c:97 ../hostname.c:116 -+#: ../hostname.c:78 ../hostname.c:98 ../hostname.c:117 - #, c-format - msgid "%s: name too long\n" - msgstr "%s: nimi on liiga pikk\n" - --#: ../hostname.c:89 -+#: ../hostname.c:90 - #, c-format - msgid "Setting hostname to `%s'\n" - msgstr "Sean hosti nimeks `%s'\n" - --#: ../hostname.c:94 -+#: ../hostname.c:95 - #, c-format - msgid "%s: you must be root to change the host name\n" - msgstr "%s: ainult root saab hosti nime muuta\n" - --#: ../hostname.c:108 -+#: ../hostname.c:109 - #, c-format - msgid "Setting domainname to `%s'\n" - msgstr "Sean domeeni nimeks `%s'\n" - --#: ../hostname.c:113 -+#: ../hostname.c:114 - #, c-format - msgid "%s: you must be root to change the domain name\n" - msgstr "%s: ainult root saab domeeni nime muuta\n" - --#: ../hostname.c:131 -+#: ../hostname.c:132 - #, c-format - msgid "Resolving `%s' ...\n" - msgstr "Lahendan `%s' ...\n" - --#: ../hostname.c:137 -+#: ../hostname.c:138 - #, c-format - msgid "Result: h_name=`%s'\n" - msgstr "Tulemus: h_name=`%s'\n" - --#: ../hostname.c:142 -+#: ../hostname.c:143 - #, c-format - msgid "Result: h_aliases=`%s'\n" - msgstr "Tulemus: h_aliases=`%s'\n" - --#: ../hostname.c:147 -+#: ../hostname.c:148 - #, c-format - msgid "Result: h_addr_list=`%s'\n" - msgstr "Tulemus: h_addr_list=`%s'\n" - --#: ../hostname.c:209 -+#: ../hostname.c:210 - #, c-format - msgid "%s: can't open `%s'\n" - msgstr "%s: ei saa avada faili `%s'\n" - --#: ../hostname.c:223 -+#: ../hostname.c:224 - msgid "Usage: hostname [-v] {hostname|-F file} set hostname (from file)\n" - msgstr "" - "Kasutamine:\n" - " hostname [-v] {hosti nimi|-F fail} hosti nime seadmine (ka " - "failist)\n" - --#: ../hostname.c:224 -+#: ../hostname.c:225 - msgid "" - " domainname [-v] {nisdomain|-F file} set NIS domainname (from file)\n" - msgstr "" - " domainname [-v] {nisdomeen|-F fail} NIS domeeni nime seadmine\n" - --#: ../hostname.c:226 -+#: ../hostname.c:227 - msgid "" - " nodename [-v] {nodename|-F file} set DECnet node name (from " - "file)\n" -@@ -330,18 +329,18 @@ - " nodename [-v] {nodename|-F fail} DECneti võrgusõlme nime " - "seadmine\n" - --#: ../hostname.c:228 -+#: ../hostname.c:229 - msgid " hostname [-v] [-d|-f|-s|-a|-i|-y|-n] display formatted name\n" - msgstr "" - " hostname [-v] [-d|-f|-s|-a|-i|-y|-n] nime näitamine antud formaadis\n" - --#: ../hostname.c:229 -+#: ../hostname.c:230 - msgid "" - " hostname [-v] display hostname\n" - "\n" - msgstr " hostname [-v] hosti nime näitamine\n" - --#: ../hostname.c:230 -+#: ../hostname.c:231 - msgid "" - " hostname -V|--version|-h|--help print info and exit\n" - "\n" -@@ -350,7 +349,7 @@ - " hostname -h|--help seesama abiinfo\n" - "\n" - --#: ../hostname.c:231 -+#: ../hostname.c:232 - msgid "" - " dnsdomainname=hostname -d, {yp,nis,}domainname=hostname -y\n" - "\n" -@@ -358,36 +357,36 @@ - " dnsdomainname=hostname -d, {yp,nis,}domainname=hostname -y\n" - "\n" - --#: ../hostname.c:232 -+#: ../hostname.c:233 - msgid " -s, --short short host name\n" - msgstr " -s, --short lühike hosti nimi\n" - --#: ../hostname.c:233 -+#: ../hostname.c:234 - msgid " -a, --alias alias names\n" - msgstr " -a, --alias alias-nimed\n" - --#: ../hostname.c:234 -+#: ../hostname.c:235 - msgid " -i, --ip-address addresses for the hostname\n" - msgstr " -i, --ip-address hosti IP aadressid\n" - --#: ../hostname.c:235 -+#: ../hostname.c:236 - msgid " -f, --fqdn, --long long host name (FQDN)\n" - msgstr "" - " -f, --fqdn, --long pikk hosti nimi (FQDN - täielik süsteeminimi)\n" - --#: ../hostname.c:236 -+#: ../hostname.c:237 - msgid " -d, --domain DNS domain name\n" - msgstr " -d, --domain DNS domeeni nimi\n" - --#: ../hostname.c:237 -+#: ../hostname.c:238 - msgid " -y, --yp, --nis NIS/YP domainname\n" - msgstr " -y, --yp, --nis NIS/YP domeeni nimi\n" - --#: ../hostname.c:239 -+#: ../hostname.c:240 - msgid " -n, --node DECnet node name\n" - msgstr " -n, --node DECneti võrgusõlme nimi\n" - --#: ../hostname.c:241 -+#: ../hostname.c:242 - msgid "" - " -F, --file read hostname or NIS domainname from given file\n" - "\n" -@@ -395,7 +394,7 @@ - " -F, --file lugeda hosti või NIS domeeni nimi failist\n" - "\n" - --#: ../hostname.c:243 -+#: ../hostname.c:244 - msgid "" - " This command can read or set the hostname or the NIS domainname. You can\n" - " also read the DNS domain or the FQDN (fully qualified domain name).\n" -@@ -409,12 +408,12 @@ - " täielikku süsteeminime (FQDN) ja DNS domeeni nime (mis on täieliku nime\n" - " osa) muuta failist /etc/hosts.\n" - --#: ../hostname.c:338 -+#: ../hostname.c:340 - #, c-format - msgid "%s: You can't change the DNS domain name with this command\n" - msgstr "%s: selle käsuga ei saa muuta DNS domeeni nime\n" - --#: ../hostname.c:339 -+#: ../hostname.c:341 - msgid "" - "\n" - "Unless you are using bind or NIS for host lookups you can change the DNS\n" -@@ -422,26 +421,26 @@ - "\n" - "Kui Te EI kasuta bind'i ega NIS'i nimede lahendamiseks, saate DNS domeeni\n" - --#: ../hostname.c:340 -+#: ../hostname.c:342 - msgid "domain name (which is part of the FQDN) in the /etc/hosts file.\n" - msgstr "(mis on täieliku nime osa) nime muuta failist /etc/hosts.\n" - --#: ../hostname.c:357 -+#: ../hostname.c:359 - #, c-format - msgid "gethostname()=`%s'\n" - msgstr "gethostname()=`%s'\n" - --#: ../hostname.c:374 -+#: ../hostname.c:376 - #, c-format - msgid "getdomainname()=`%s'\n" - msgstr "getdomainname()=`%s'\n" - --#: ../hostname.c:389 -+#: ../hostname.c:391 - #, c-format - msgid "getnodename()=`%s'\n" - msgstr "getnodename()=`%s'\n" - --#: ../ifconfig.c:110 -+#: ../ifconfig.c:108 - msgid "" - "Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR " - "Flg\n" -@@ -449,16 +448,16 @@ - "Liides MTU Meetr. RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR " - "Lip\n" - --#: ../ifconfig.c:132 ../ifconfig.c:164 -+#: ../ifconfig.c:130 ../ifconfig.c:162 - #, c-format - msgid "%s: unknown interface: %s\n" - msgstr "ifconfig: tundmatu liides %s: %s\n" - --#: ../ifconfig.c:156 ../ifconfig.c:740 ../ifconfig.c:831 ../ifconfig.c:937 -+#: ../ifconfig.c:154 ../ifconfig.c:734 ../ifconfig.c:825 ../ifconfig.c:936 - msgid "No support for INET on this system.\n" - msgstr "Antud süsteem ei toeta INET aadressiperekonda\n" - --#: ../ifconfig.c:179 -+#: ../ifconfig.c:177 - msgid "" - "Usage:\n" - " ifconfig [-a] [-i] [-v] [-s] [[]
]\n" -@@ -466,51 +465,51 @@ - "Kasutamine:\n" - " ifconfig [-a] [-i] [-v] [-s] [[] ]\n" - --#: ../ifconfig.c:181 -+#: ../ifconfig.c:179 - msgid " [add
[/]]\n" - msgstr " [add [/]]\n" - --#: ../ifconfig.c:182 -+#: ../ifconfig.c:180 - msgid " [del
[/]]\n" - msgstr " [del [/]]\n" - --#: ../ifconfig.c:183 -+#: ../ifconfig.c:181 - msgid " [[-]broadcast [
]] [[-]pointopoint [
]]\n" - msgstr " [[-]broadcast []] [[-]pointopoint []]\n" - --#: ../ifconfig.c:184 -+#: ../ifconfig.c:182 - msgid " [netmask
] [dstaddr
] [tunnel
]\n" - msgstr " [netmask ] [dstaddr ] [tunnel ]\n" - --#: ../ifconfig.c:187 -+#: ../ifconfig.c:185 - msgid " [outfill ] [keepalive ]\n" - msgstr " [outfill ] [keepalive ]\n" - --#: ../ifconfig.c:189 -+#: ../ifconfig.c:187 - msgid " [hw
] [metric ] [mtu ]\n" - msgstr " [hw ] [metric ] [mtu ]\n" - --#: ../ifconfig.c:190 -+#: ../ifconfig.c:188 - msgid " [[-]trailers] [[-]arp] [[-]allmulti]\n" - msgstr " [[-]trailers] [[-]arp] [[-]allmulti]\n" - --#: ../ifconfig.c:191 -+#: ../ifconfig.c:189 - msgid " [multicast] [[-]promisc]\n" - msgstr " [multicast] [[-]promisc]\n" - --#: ../ifconfig.c:192 -+#: ../ifconfig.c:190 - msgid " [mem_start ] [io_addr ] [irq ] [media ]\n" - msgstr " [mem_start ] [io_addr ] [irq ] [media ]\n" - --#: ../ifconfig.c:194 -+#: ../ifconfig.c:192 - msgid " [txqueuelen ]\n" - msgstr " [txqueuelen ]\n" - --#: ../ifconfig.c:197 -+#: ../ifconfig.c:195 - msgid " [[-]dynamic]\n" - msgstr " [[-]dynamic]\n" - --#: ../ifconfig.c:199 -+#: ../ifconfig.c:197 - msgid "" - " [up|down] ...\n" - "\n" -@@ -518,73 +517,86 @@ - " [up|down] ...\n" - "\n" - --#: ../ifconfig.c:201 -+#: ../ifconfig.c:199 - msgid " =Hardware Type.\n" - msgstr " =riistvara tüüp\n" - --#: ../ifconfig.c:202 -+#: ../ifconfig.c:200 - msgid " List of possible hardware types:\n" - msgstr " Võimalike riistvara tüüpide nimekiri:\n" - - #. 1 = ARPable --#: ../ifconfig.c:204 -+#: ../ifconfig.c:202 - #, c-format - msgid " =Address family. Default: %s\n" - msgstr " =aadressiperekond, vaikimisi %s\n" - --#: ../ifconfig.c:205 -+#: ../ifconfig.c:203 - msgid " List of possible address families:\n" - msgstr " Võimalike aadressiperekondade nimekiri:\n" - --#: ../ifconfig.c:361 -+#: ../ifconfig.c:278 -+#, c-format -+msgid "ifconfig: option `%s' not recognised.\n" -+msgstr "" -+ -+#: ../ifconfig.c:280 ../ifconfig.c:925 -+msgid "ifconfig: `--help' gives usage information.\n" -+msgstr "" -+ -+#: ../ifconfig.c:355 - msgid "Unknown media type.\n" - msgstr "Tundmatu meedia tüüp\n" - --#: ../ifconfig.c:653 -+#: ../ifconfig.c:647 - #, c-format - msgid "hw address type `%s' has no handler to set address. failed.\n" - msgstr "" - "riistvara aadressi tüübil `%s' pole käsitlejat aadressi seadmiseks - ebaõnn\n" - --#: ../ifconfig.c:662 -+#: ../ifconfig.c:656 - #, c-format - msgid "%s: invalid %s address.\n" - msgstr "%s: vigane %s aadress\n" - --#: ../ifconfig.c:706 ../ifconfig.c:796 ../ifconfig.c:882 -+#: ../ifconfig.c:700 ../ifconfig.c:790 ../ifconfig.c:876 - msgid "No support for INET6 on this system.\n" - msgstr "Antud süsteem ei toeta INET6 aadressiperekonda\n" - --#: ../ifconfig.c:749 ../ifconfig.c:840 -+#: ../ifconfig.c:743 ../ifconfig.c:834 - #, c-format - msgid "Interface %s not initialized\n" - msgstr "Liides %s pole initsialiseeritud\n" - --#: ../ifconfig.c:761 ../ifconfig.c:851 -+#: ../ifconfig.c:755 ../ifconfig.c:845 - msgid "Bad address.\n" - msgstr "Vigane aadress\n" - --#: ../ifconfig.c:854 -+#: ../ifconfig.c:848 - msgid "Address deletion not supported on this system.\n" - msgstr "Antud süsteem ei toeta aadresside kustutamist\n" - --#: ../ifconfig.c:947 -+#: ../ifconfig.c:920 -+msgid "ifconfig: Cannot set address for this protocol family.\n" -+msgstr "Ei oska seada aadresse selle aadressiperekonna jaoks\n" -+ -+#: ../ifconfig.c:946 - msgid "No support for ECONET on this system.\n" - msgstr "Antud süsteem ei toeta ECONET aadressiperekonda\n" - --#: ../ifconfig.c:955 -+#: ../ifconfig.c:954 - #, c-format - msgid "Don't know how to set addresses for family %d.\n" - msgstr "Ei oska seada aadresse aadressiperekonna %d jaoks\n" - --#: ../netstat.c:429 -+#: ../netstat.c:430 - #, c-format - msgid "" - "(No info could be read for \"-p\": geteuid()=%d but you should be root.)\n" - msgstr "" - "(\"-p\" jaoks ei saanud infot lugeda: geteuid()=%d, aga vaja oleks root'u)\n" - --#: ../netstat.c:433 -+#: ../netstat.c:434 - msgid "" - "(Not all processes could be identified, non-owned process info\n" - " will not be shown, you would have to be root to see it all.)\n" -@@ -592,27 +604,27 @@ - "(Mõnesid protsesse ei saanud identifitseerida, teiste kasutajate\n" - "info lugemiseks peab olema root)\n" - --#: ../netstat.c:440 ../netstat.c:1171 ../netstat.c:1248 -+#: ../netstat.c:441 ../netstat.c:1176 ../netstat.c:1253 - msgid "LISTENING" - msgstr "LISTENING" - --#: ../netstat.c:441 -+#: ../netstat.c:442 - msgid "CONN SENT" - msgstr "CONN SENT" - --#: ../netstat.c:442 ../netstat.c:1250 -+#: ../netstat.c:443 ../netstat.c:1255 - msgid "DISC SENT" - msgstr "DISC SENT" - --#: ../netstat.c:443 ../netstat.c:510 ../netstat.c:889 ../netstat.c:1251 -+#: ../netstat.c:444 ../netstat.c:511 ../netstat.c:894 ../netstat.c:1256 - msgid "ESTABLISHED" - msgstr "ESTABLISHED" - --#: ../netstat.c:465 -+#: ../netstat.c:466 - msgid "Active NET/ROM sockets\n" - msgstr "Aktiivsed NET/ROM soklid\n" - --#: ../netstat.c:466 -+#: ../netstat.c:467 - msgid "" - "User Dest Source Device State Vr/Vs Send-Q " - "Recv-Q\n" -@@ -620,182 +632,182 @@ - "Kasutaja Sihtpunkt Lähtepunkt Liides Olek Vr/Vs SaatJrk " - "VvJrk\n" - --#: ../netstat.c:476 ../netstat.c:1290 -+#: ../netstat.c:477 ../netstat.c:1295 - #, c-format - msgid "Problem reading data from %s\n" - msgstr "Probleem andmete lugemisel failist %s\n" - --#: ../netstat.c:511 -+#: ../netstat.c:512 - msgid "SYN_SENT" - msgstr "SYN_SENT" - --#: ../netstat.c:512 -+#: ../netstat.c:513 - msgid "SYN_RECV" - msgstr "SYN_RECV" - --#: ../netstat.c:513 -+#: ../netstat.c:514 - msgid "FIN_WAIT1" - msgstr "FIN_WAIT1" - --#: ../netstat.c:514 -+#: ../netstat.c:515 - msgid "FIN_WAIT2" - msgstr "FIN_WAIT2" - --#: ../netstat.c:515 -+#: ../netstat.c:516 - msgid "TIME_WAIT" - msgstr "TIME_WAIT" - --#: ../netstat.c:516 -+#: ../netstat.c:517 - msgid "CLOSE" - msgstr "CLOSE" - --#: ../netstat.c:517 -+#: ../netstat.c:518 - msgid "CLOSE_WAIT" - msgstr "CLOSE_WAIT" - --#: ../netstat.c:518 -+#: ../netstat.c:519 - msgid "LAST_ACK" - msgstr "LAST_ACK" - --#: ../netstat.c:519 -+#: ../netstat.c:520 - msgid "LISTEN" - msgstr "LISTEN" - --#: ../netstat.c:520 -+#: ../netstat.c:521 - msgid "CLOSING" - msgstr "CLOSING" - --#: ../netstat.c:587 -+#: ../netstat.c:592 - #, c-format - msgid "warning, got bogus igmp6 line %d.\n" - msgstr "Hoiatus - sain imeliku igmp6 rea (nr. %d)\n" - --#: ../netstat.c:592 ../netstat.c:630 ../netstat.c:751 ../netstat.c:883 --#: ../netstat.c:1014 ../netstat.c:1019 -+#: ../netstat.c:597 ../netstat.c:635 ../netstat.c:756 ../netstat.c:888 -+#: ../netstat.c:1019 ../netstat.c:1024 - #, c-format - msgid "netstat: unsupported address family %d !\n" - msgstr "netstat: aadressiperekonda %d ei toetata\n" - --#: ../netstat.c:605 ../netstat.c:610 ../netstat.c:618 ../netstat.c:625 -+#: ../netstat.c:610 ../netstat.c:615 ../netstat.c:623 ../netstat.c:630 - #, c-format - msgid "warning, got bogus igmp line %d.\n" - msgstr "Hoiatus - sain imeliku igmp rea (nr. %d)\n" - --#: ../netstat.c:668 -+#: ../netstat.c:673 - msgid "Active X.25 sockets\n" - msgstr "Aktiivsed X.25 soklid\n" - - #. IMHO, Vr/Vs is not very usefull --SF --#: ../netstat.c:670 -+#: ../netstat.c:675 - msgid "" - "Dest Source Device LCI State Vr/Vs Send-Q " - "Recv-Q\n" - msgstr "" - "Sihtpunkt Lähtepunkt Liides LCI Olek Vr/Vs SaatJrk VvJrk\n" - --#: ../netstat.c:747 -+#: ../netstat.c:752 - msgid "warning, got bogus tcp line.\n" - msgstr "Hoiatus - sain imeliku tcp rea\n" - --#: ../netstat.c:788 ../netstat.c:938 ../netstat.c:1057 -+#: ../netstat.c:793 ../netstat.c:943 ../netstat.c:1062 - #, c-format - msgid "off (0.00/%ld/%d)" - msgstr "eikäi ((0.00/%ld/%d)" - --#: ../netstat.c:792 -+#: ../netstat.c:797 - #, c-format - msgid "on (%2.2f/%ld/%d)" - msgstr "käib (%2.2f/%ld/%d)" - --#: ../netstat.c:797 -+#: ../netstat.c:802 - #, c-format - msgid "keepalive (%2.2f/%ld/%d)" - msgstr "keepalive (%2.2f/%ld/%d)" - --#: ../netstat.c:802 -+#: ../netstat.c:807 - #, c-format - msgid "timewait (%2.2f/%ld/%d)" - msgstr "timewait (%2.2f/%ld/%d)" - --#: ../netstat.c:807 ../netstat.c:947 ../netstat.c:1067 -+#: ../netstat.c:812 ../netstat.c:952 ../netstat.c:1072 - #, c-format - msgid "unkn-%d (%2.2f/%ld/%d)" - msgstr "eitea-%d (%2.2f/%ld/%d)" - --#: ../netstat.c:879 -+#: ../netstat.c:884 - msgid "warning, got bogus udp line.\n" - msgstr "Hoiatus - sain imeliku udp rea\n" - --#: ../netstat.c:897 ../netstat.c:1157 ../netstat.c:1190 -+#: ../netstat.c:902 ../netstat.c:1162 ../netstat.c:1195 - msgid "UNKNOWN" - msgstr "TUNDMATU" - --#: ../netstat.c:943 ../netstat.c:1062 -+#: ../netstat.c:948 ../netstat.c:1067 - #, c-format - msgid "on%d (%2.2f/%ld/%d)" - msgstr "käib-%d (%2.2f/%ld/%d)" - --#: ../netstat.c:1028 -+#: ../netstat.c:1033 - msgid "warning, got bogus raw line.\n" - msgstr "Hoiatus - sain imeliku raw rea\n" - --#: ../netstat.c:1110 -+#: ../netstat.c:1115 - msgid "warning, got bogus unix line.\n" - msgstr "Hoiatus - sain imeliku unix rea\n" - --#: ../netstat.c:1137 -+#: ../netstat.c:1142 - msgid "STREAM" - msgstr "STREAM" - --#: ../netstat.c:1141 -+#: ../netstat.c:1146 - msgid "DGRAM" - msgstr "DGRAM" - --#: ../netstat.c:1145 -+#: ../netstat.c:1150 - msgid "RAW" - msgstr "RAW" - --#: ../netstat.c:1149 -+#: ../netstat.c:1154 - msgid "RDM" - msgstr "RDM" - --#: ../netstat.c:1153 -+#: ../netstat.c:1158 - msgid "SEQPACKET" - msgstr "SEQPACKET" - --#: ../netstat.c:1162 -+#: ../netstat.c:1167 - msgid "FREE" - msgstr "VABA" - --#: ../netstat.c:1178 -+#: ../netstat.c:1183 - msgid "CONNECTING" - msgstr "ÜHENDUMAS" - --#: ../netstat.c:1182 -+#: ../netstat.c:1187 - msgid "CONNECTED" - msgstr "ÜHENDATUD" - --#: ../netstat.c:1186 -+#: ../netstat.c:1191 - msgid "DISCONNECTING" - msgstr "LAHTIÜHENDUMAS" - --#: ../netstat.c:1217 -+#: ../netstat.c:1222 - msgid "Active UNIX domain sockets " - msgstr "Aktiivsed UNIX domeeni soklid " - --#: ../netstat.c:1219 ../netstat.c:1729 -+#: ../netstat.c:1224 ../netstat.c:1735 - msgid "(servers and established)" - msgstr "(serverid ja ühendatud)" - --#: ../netstat.c:1222 ../netstat.c:1732 -+#: ../netstat.c:1227 ../netstat.c:1738 - msgid "(only servers)" - msgstr "(ainult serverid)" - --#: ../netstat.c:1224 ../netstat.c:1734 -+#: ../netstat.c:1229 ../netstat.c:1740 - msgid "(w/o servers)" - msgstr "(ilma serveriteta)" - --#: ../netstat.c:1227 -+#: ../netstat.c:1232 - msgid "" - "\n" - "Proto RefCnt Flags Type State I-Node" -@@ -803,32 +815,32 @@ - "\n" - "Proto Mitu Lipud Tüüp Olek I-kirje " - --#: ../netstat.c:1229 -+#: ../netstat.c:1234 - msgid " Path\n" - msgstr "Tee\n" - --#: ../netstat.c:1249 -+#: ../netstat.c:1254 - msgid "SABM SENT" - msgstr "SABM SENT" - --#: ../netstat.c:1252 -+#: ../netstat.c:1257 - msgid "RECOVERY" - msgstr "RECOVERY" - --#: ../netstat.c:1266 -+#: ../netstat.c:1271 - msgid "Active AX.25 sockets\n" - msgstr "Aktiivsed AX.25 soklid\n" - --#: ../netstat.c:1267 -+#: ../netstat.c:1272 - msgid "Dest Source Device State Vr/Vs Send-Q Recv-Q\n" - msgstr "Sihtpunkt Lähtepunkt Liides Olek Vr/Vs SaatJrk VvJrk\n" - --#: ../netstat.c:1310 -+#: ../netstat.c:1315 - #, c-format - msgid "problem reading data from %s\n" - msgstr "Probleem andmete lugemisel failist %s\n" - --#: ../netstat.c:1361 -+#: ../netstat.c:1366 - msgid "" - "Active IPX sockets\n" - "Proto Recv-Q Send-Q Local Address Foreign Address " -@@ -838,23 +850,23 @@ - "Proto VvJrk SaatJrk Kohalik aadress Väline aadress " - "Olek " - --#: ../netstat.c:1363 -+#: ../netstat.c:1368 - msgid " User" - msgstr " Kasutaja" - --#: ../netstat.c:1397 -+#: ../netstat.c:1402 - msgid "ESTAB" - msgstr "ESTAB" - --#: ../netstat.c:1405 -+#: ../netstat.c:1410 - msgid "UNK." - msgstr "UNK." - --#: ../netstat.c:1443 -+#: ../netstat.c:1448 - msgid "Kernel Interface table\n" - msgstr "Tuuma liideste tabel\n" - --#: ../netstat.c:1447 -+#: ../netstat.c:1452 - msgid "" - "Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR " - "Flg\n" -@@ -862,11 +874,11 @@ - "Liides MTU Meetr RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR " - "Lip\n" - --#: ../netstat.c:1451 -+#: ../netstat.c:1456 - msgid "missing interface information" - msgstr "Puudulik informatsioon liideste kohta" - --#: ../netstat.c:1474 -+#: ../netstat.c:1479 - msgid "" - "usage: netstat [-veenNcCF] [] -r netstat " - "{-V|--version|-h|--help}\n" -@@ -874,11 +886,11 @@ - "Kasutamine: netstat [-veenNcCF] [] -r\n" - " netstat {-V|--version|-h|--help}\n" - --#: ../netstat.c:1475 -+#: ../netstat.c:1480 - msgid " netstat [-vnNcaeol] [ ...]\n" - msgstr " netstat [-vnNcaeol] [ ...]\n" - --#: ../netstat.c:1476 -+#: ../netstat.c:1481 - msgid "" - " netstat { [-veenNac] -i | [-cnNe] -M | -s }\n" - "\n" -@@ -886,25 +898,25 @@ - " netstat { [-veenNac] -i | [-cnNe] -M | -s }\n" - "\n" - --#: ../netstat.c:1478 -+#: ../netstat.c:1483 - msgid " -r, --route display routing table\n" - msgstr " -r, --route ruutingutabeli näitamine\n" - --#: ../netstat.c:1479 -+#: ../netstat.c:1484 - msgid " -i, --interfaces display interface table\n" - msgstr " -i, --interfaces liideste tabeli näitamine\n" - --#: ../netstat.c:1480 -+#: ../netstat.c:1485 - msgid " -g, --groups display multicast group memberships\n" - msgstr " -g, --groups multiedastuse gruppide näitamine\n" - --#: ../netstat.c:1481 -+#: ../netstat.c:1486 - msgid "" - " -s, --statistics display networking statistics (like SNMP)\n" - msgstr "" - " -s, --statistics võrgu statistika näitamine (SNMP stiilis)\n" - --#: ../netstat.c:1483 -+#: ../netstat.c:1488 - msgid "" - " -M, --masquerade display masqueraded connections\n" - "\n" -@@ -912,36 +924,32 @@ - " -M, --masquerade maskeeritavate ühenduste näitamine\n" - "\n" - --#: ../netstat.c:1486 ../route.c:86 --msgid " -n, --numeric dont resolve names\n" --msgstr " -n, --numeric mitte lahendada numbreid nimedeks\n" -- --#: ../netstat.c:1487 --msgid " --numeric-hosts dont resolve host names\n" -+#: ../netstat.c:1492 -+msgid " --numeric-hosts don't resolve host names\n" - msgstr " --numeric-hosts mitte lahendada hostinimesid\n" - --#: ../netstat.c:1488 --msgid " --numeric-ports dont resolve port names\n" -+#: ../netstat.c:1493 -+msgid " --numeric-ports don't resolve port names\n" - msgstr " --numeric-ports mitte lahendada pordinimesid\n" - --#: ../netstat.c:1489 --msgid " --numeric-users dont resolve user names\n" -+#: ../netstat.c:1494 -+msgid " --numeric-users don't resolve user names\n" - msgstr " --numeric-users mitte lahendada kasutajanimesid\n" - --#: ../netstat.c:1490 -+#: ../netstat.c:1495 - msgid " -N, --symbolic resolve hardware names\n" - msgstr " -N, --symbolic lahendada riistvara aadressid\n" - --#: ../netstat.c:1491 ../route.c:87 -+#: ../netstat.c:1496 ../route.c:88 - msgid " -e, --extend display other/more information\n" - msgstr " -e, --extend muu info/lisainfo näitamine\n" - --#: ../netstat.c:1492 -+#: ../netstat.c:1497 - msgid " -p, --programs display PID/Program name for sockets\n" - msgstr "" - " -p, --programs soklite kohta PID/protsessi nime näitamine\n" - --#: ../netstat.c:1493 -+#: ../netstat.c:1498 - msgid "" - " -c, --continuous continuous listing\n" - "\n" -@@ -949,22 +957,22 @@ - " -c, --continuous pidevalt uuenev nimekiri\n" - "\n" - --#: ../netstat.c:1494 -+#: ../netstat.c:1499 - msgid " -l, --listening display listening server sockets\n" - msgstr " -l, --listening kuulavate serversoklite näitamine\n" - --#: ../netstat.c:1495 -+#: ../netstat.c:1500 - msgid "" - " -a, --all, --listening display all sockets (default: connected)\n" - msgstr "" - " -a, --all, --listening kõigi soklite näitamine (vaikimisi " - "ühendatud)\n" - --#: ../netstat.c:1496 -+#: ../netstat.c:1501 - msgid " -o, --timers display timers\n" - msgstr " -o, --timers taimerite näitamine\n" - --#: ../netstat.c:1497 ../route.c:88 -+#: ../netstat.c:1502 ../route.c:89 - msgid "" - " -F, --fib display Forwarding Information Base " - "(default)\n" -@@ -972,7 +980,7 @@ - " -F, --fib üldiste ruutingutabelite näitamine " - "(vaikimisi)\n" - --#: ../netstat.c:1498 ../route.c:89 -+#: ../netstat.c:1503 ../route.c:90 - msgid "" - " -C, --cache display routing cache instead of FIB\n" - "\n" -@@ -981,7 +989,7 @@ - "näitamine\n" - "\n" - --#: ../netstat.c:1500 -+#: ../netstat.c:1505 - msgid "" - " ={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx " - "--netrom\n" -@@ -989,20 +997,19 @@ - " ={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx " - "--netrom\n" - --#: ../netstat.c:1501 ../route.c:91 --#, c-format --msgid " =Use '-A ' or '--' Default: %s\n" --msgstr " =kasutage '-A ' või '--' vaikimisi: %s\n" -+#: ../netstat.c:1506 ../route.c:92 -+msgid " =Use '-A ' or '--'; default: %s\n" -+msgstr " =kasutage '-A ' või '--'; vaikimisi: %s\n" - --#: ../netstat.c:1502 ../route.c:92 -+#: ../netstat.c:1507 ../route.c:93 - msgid " List of possible address families (which support routing):\n" - msgstr " Võimalike ruutingu toetavate aadressiperekondade nimekiri:\n" - --#: ../netstat.c:1726 -+#: ../netstat.c:1732 - msgid "Active Internet connections " - msgstr "Aktiivsed internetiühendused " - --#: ../netstat.c:1736 -+#: ../netstat.c:1742 - msgid "" - "\n" - "Proto Recv-Q Send-Q Local Address Foreign Address State " -@@ -1012,77 +1019,77 @@ - "Proto VvJrk SaatJrk Kohalik aadress Väline aadress Olek " - " " - --#: ../netstat.c:1738 -+#: ../netstat.c:1744 - msgid " User Inode " - msgstr " Kasutaja I-kirje " - --#: ../netstat.c:1741 -+#: ../netstat.c:1747 - msgid " Timer" - msgstr " Taimer" - --#: ../netstat.c:1771 -+#: ../netstat.c:1777 - msgid "IPv4 Group Memberships\n" - msgstr "IPv4 grupikuuluvused\n" - --#: ../netstat.c:1772 -+#: ../netstat.c:1778 - msgid "Interface RefCnt Group\n" - msgstr "Liides Mitu Grupp\n" - --#: ../rarp.c:43 -+#: ../rarp.c:44 - msgid "This kernel does not support RARP.\n" - msgstr "rarp: tuum ei toeta RARP'i\n" - --#: ../rarp.c:82 -+#: ../rarp.c:83 - #, c-format - msgid "no RARP entry for %s.\n" - msgstr "rarp: %s jaoks pole RARP kirjet\n" - --#: ../rarp.c:95 -+#: ../rarp.c:96 - #, c-format - msgid "%s: bad hardware address\n" - msgstr "rarp: vigane riistvaraline aadress %s\n" - --#: ../rarp.c:127 -+#: ../rarp.c:128 - #, c-format - msgid "rarp: cannot open file %s:%s.\n" - msgstr "rarp: ei saa avada faili %s:%s\n" - --#: ../rarp.c:139 -+#: ../rarp.c:140 - #, c-format - msgid "rarp: format error at %s:%u\n" - msgstr "rarp: vorminguviga failis %s real %u\n" - --#: ../rarp.c:143 ../rarp.c:287 -+#: ../rarp.c:144 ../rarp.c:289 - #, c-format - msgid "rarp: %s: unknown host\n" - msgstr "rarp: tundmatu host %s\n" - --#: ../rarp.c:146 -+#: ../rarp.c:147 - #, c-format - msgid "rarp: cannot set entry from %s:%u\n" - msgstr "rarp: ei saa kehtestada kirjet failist %s realt %u\n" - --#: ../rarp.c:175 -+#: ../rarp.c:176 - msgid "Usage: rarp -a list entries in cache.\n" - msgstr "" - "Kasutamine:\n" - " rarp -a puhvris olevate kirjete vaatamine\n" - --#: ../rarp.c:176 -+#: ../rarp.c:177 - msgid " rarp -d delete entry from cache.\n" - msgstr " rarp -d kirje kustutamine puhvrist\n" - --#: ../rarp.c:177 -+#: ../rarp.c:178 - msgid " rarp [] -s add entry to cache.\n" - msgstr " rarp [] -s kirje lisamine puhvrisse\n" - --#: ../rarp.c:178 -+#: ../rarp.c:179 - msgid "" - " rarp -f add entries from /etc/ethers.\n" - msgstr "" - " rarp -f kirjete lisamine failist /etc/ethers\n" - --#: ../rarp.c:179 -+#: ../rarp.c:180 - msgid "" - " rarp -V display program version.\n" - "\n" -@@ -1090,24 +1097,24 @@ - " rarp -V programmi versiooni näitamine\n" - "\n" - --#: ../rarp.c:236 -+#: ../rarp.c:238 - #, c-format - msgid "%s: illegal option mix.\n" - msgstr "%s: lubamatu võtmete kombinatsioon\n" - --#: ../rarp.c:267 -+#: ../rarp.c:269 - #, c-format - msgid "rarp: %s: unknown hardware type.\n" - msgstr "rarp: tundmatu riistvara tüüp %s\n" - --#: ../route.c:79 -+#: ../route.c:80 - msgid "" - "Usage: route [-nNvee] [-FC] [] List kernel routing tables\n" - msgstr "" - "Kasutamine:\n" - " route [-nNvee] [-FC] [] Tuuma ruutingutabeli näitamine\n" - --#: ../route.c:80 -+#: ../route.c:81 - msgid "" - " route [-v] [-FC] {add|del|flush} ... Modify routing table for AF.\n" - "\n" -@@ -1115,7 +1122,7 @@ - " route [-v] [-FC] {add|del|flush} ... Tuuma ruutingutabeli muutmine\n" - "\n" - --#: ../route.c:82 -+#: ../route.c:83 - msgid "" - " route {-h|--help} [] Detailed usage syntax for " - "specified AF.\n" -@@ -1123,7 +1130,7 @@ - " route {-h|--help} [] Detailne süntaks perekonna AF " - "jaoks\n" - --#: ../route.c:83 -+#: ../route.c:84 - msgid "" - " route {-V|--version} Display version/author and " - "exit.\n" -@@ -1149,25 +1156,25 @@ - msgid "%s\tnibble %lu trigger %lu\n" - msgstr "%s\tnibble %lu trigger %lu\n" - --#: ../iptunnel.c:84 -+#: ../iptunnel.c:85 - msgid "Usage: iptunnel { add | change | del | show } [ NAME ]\n" - msgstr "Kasutamine: iptunnel { add | change | del | show } [ NIMI ]\n" - --#: ../iptunnel.c:85 -+#: ../iptunnel.c:86 - msgid "" - " [ mode { ipip | gre | sit } ] [ remote ADDR ] [ local ADDR ]\n" - msgstr "" - " [ mode { ipip | gre | sit } ] [ remote AADR ] [ local AADR ]\n" - --#: ../iptunnel.c:86 -+#: ../iptunnel.c:87 - msgid " [ [i|o]seq ] [ [i|o]key KEY ] [ [i|o]csum ]\n" - msgstr " [ [i|o]seq ] [ [i|o]key KEY ] [ [i|o]csum ]\n" - --#: ../iptunnel.c:87 -+#: ../iptunnel.c:88 - msgid " [ ttl TTL ] [ tos TOS ] [ nopmtudisc ] [ dev PHYS_DEV ]\n" - msgstr " [ ttl TTL ] [ tos TOS ] [ nopmtudisc ] [ dev LIIDES ]\n" - --#: ../iptunnel.c:88 -+#: ../iptunnel.c:89 - msgid "" - " iptunnel -V | --version\n" - "\n" -@@ -1175,83 +1182,83 @@ - " iptunnel -V | --version\n" - "\n" - --#: ../iptunnel.c:89 -+#: ../iptunnel.c:90 - msgid "Where: NAME := STRING\n" - msgstr "Kus: NIMI := STRING\n" - --#: ../iptunnel.c:90 -+#: ../iptunnel.c:91 - msgid " ADDR := { IP_ADDRESS | any }\n" - msgstr " AADR := { IP_AADRESS | any }\n" - --#: ../iptunnel.c:91 -+#: ../iptunnel.c:92 - msgid " TOS := { NUMBER | inherit }\n" - msgstr " TOS := { ARV | inherit }\n" - --#: ../iptunnel.c:92 -+#: ../iptunnel.c:93 - msgid " TTL := { 1..255 | inherit }\n" - msgstr " TTL := { 1..255 | inherit }\n" - --#: ../iptunnel.c:93 -+#: ../iptunnel.c:94 - msgid " KEY := { DOTTED_QUAD | NUMBER }\n" - msgstr "" - " KEY := { PUNKTIDEGA_ARVUNELIK | ARV }\n" - " LIIDES := FÜÜSILISE_LIIDESE_NIMI\n" - --#: ../iptunnel.c:331 -+#: ../iptunnel.c:332 - msgid "Keys are not allowed with ipip and sit.\n" - msgstr "ipip ja sit juures ei ole võtmed lubatud\n" - --#: ../iptunnel.c:351 -+#: ../iptunnel.c:352 - msgid "Broadcast tunnel requires a source address.\n" - msgstr "Leviedastusega tunnel vajab lähteaadressi\n" - --#: ../iptunnel.c:366 -+#: ../iptunnel.c:367 - msgid "ttl != 0 and noptmudisc are incompatible\n" - msgstr "ttl != 0 ning noptmudisc ei sobi kokku\n" - --#: ../iptunnel.c:378 -+#: ../iptunnel.c:379 - msgid "cannot determine tunnel mode (ipip, gre or sit)\n" - msgstr "Ei suuda määrata tunneli moodi (ipip, gre või sit)\n" - --#: ../iptunnel.c:416 -+#: ../iptunnel.c:417 - #, c-format - msgid "%s: %s/ip remote %s local %s " - msgstr "%s: %s/ip teises otsas %s siin %s " - --#: ../iptunnel.c:420 -+#: ../iptunnel.c:421 - msgid "unknown" - msgstr "tundmatu" - --#: ../iptunnel.c:452 -+#: ../iptunnel.c:453 - msgid " Drop packets out of sequence.\n" - msgstr " Järjekorravälised paketid visatakse minema\n" - --#: ../iptunnel.c:454 -+#: ../iptunnel.c:455 - msgid " Checksum in received packet is required.\n" - msgstr " Vastuvõetavates pakettides on kontrollsumma kohustuslik\n" - --#: ../iptunnel.c:456 -+#: ../iptunnel.c:457 - msgid " Sequence packets on output.\n" - msgstr " Väljuvad paketid varustatakse järjekorranumbritega\n" - --#: ../iptunnel.c:458 -+#: ../iptunnel.c:459 - msgid " Checksum output packets.\n" - msgstr " Väljuvad paketid varustatakse kontrollsummaga\n" - --#: ../iptunnel.c:486 -+#: ../iptunnel.c:487 - msgid "Wrong format of /proc/net/dev. Sorry.\n" - msgstr "/proc/net/dev on vales formaadis. Vale tuuma versioon?\n" - --#: ../iptunnel.c:499 -+#: ../iptunnel.c:500 - #, c-format - msgid "Failed to get type of [%s]\n" - msgstr "Ei suutnud kindlaks teha liidese %s tüüpi\n" - --#: ../iptunnel.c:515 -+#: ../iptunnel.c:516 - msgid "RX: Packets Bytes Errors CsumErrs OutOfSeq Mcasts\n" - msgstr "RX: Pakette Baite Vigu KSumVigu JrkVigu Levipakette\n" - --#: ../iptunnel.c:518 -+#: ../iptunnel.c:519 - msgid "TX: Packets Bytes Errors DeadLoop NoRoute NoBufs\n" - msgstr "TX: Pakette Baite Vigu DeadLoop EiRuudi MäluOtsas\n" - -@@ -1972,15 +1979,15 @@ - msgid "[UNKNOWN]" - msgstr "[TUNDMATU]" - --#: ../lib/inet6_gr.c:79 -+#: ../lib/inet6_gr.c:71 - msgid "INET6 (IPv6) not configured in this system.\n" - msgstr "INET6 (IPv6) pole antud süsteemis konfigureeritud\n" - --#: ../lib/inet6_gr.c:82 -+#: ../lib/inet6_gr.c:74 - msgid "Kernel IPv6 routing table\n" - msgstr "Tuuma IPv6 ruutingutabel\n" - --#: ../lib/inet6_gr.c:84 -+#: ../lib/inet6_gr.c:76 - msgid "" - "Destination Next Hop " - " Flags Metric Ref Use Iface\n" -@@ -1988,11 +1995,11 @@ - "Sihtpunkt Järgmine samm " - " Lipud Meetr Mitu Kasut Liides\n" - --#: ../lib/inet6_gr.c:158 -+#: ../lib/inet6_gr.c:150 - msgid "Kernel IPv6 Neighbour Cache\n" - msgstr "Tuuma IPv6 naabrite puhver\n" - --#: ../lib/inet6_gr.c:161 -+#: ../lib/inet6_gr.c:153 - msgid "" - "Neighbour HW Address Iface Flags " - "Ref State\n" -@@ -2000,7 +2007,7 @@ - "Naaber HW Aadress Liides Lipud " - "Mitu Olek\n" - --#: ../lib/inet6_gr.c:165 -+#: ../lib/inet6_gr.c:157 - msgid "" - "Neighbour HW Address Iface Flags " - "Ref State Stale(sec) Delete(sec)\n" -@@ -2538,29 +2545,29 @@ - msgid "ip: argument is wrong: %s\n" - msgstr "iptunnel: vale argument %s\n" - --#: ../ipmaddr.c:58 -+#: ../ipmaddr.c:61 - msgid "Usage: ipmaddr [ add | del ] MULTIADDR dev STRING\n" - msgstr "Kasutamine: ipmaddr [ add | del ] MULTIAADR dev STRING\n" - --#: ../ipmaddr.c:59 -+#: ../ipmaddr.c:62 - msgid " ipmaddr show [ dev STRING ] [ ipv4 | ipv6 | link | all ]\n" - msgstr " ipmaddr show [ dev STRING ] [ ipv4 | ipv6 | link | all ]\n" - --#: ../ipmaddr.c:60 -+#: ../ipmaddr.c:63 - msgid " ipmaddr -V | -version\n" - msgstr " ipmaddr -V | -version\n" - --#: ../ipmaddr.c:260 -+#: ../ipmaddr.c:263 - #, c-format - msgid "family %d " - msgstr "perekond %d " - --#: ../ipmaddr.c:269 -+#: ../ipmaddr.c:272 - #, c-format - msgid " users %d" - msgstr " kasutajaid %d" - --#: ../ipmaddr.c:355 -+#: ../ipmaddr.c:358 - msgid "Cannot create socket" - msgstr "Ei saa avada soklit" - ---- net-tools-1.60/po/Makefile 1999-11-20 23:02:59.000000000 +0200 -+++ net-tools/po/Makefile 2005-05-16 06:21:58.000000000 +0300 -@@ -3,7 +3,7 @@ - INSTALL_DATA= ${INSTALL} -m 644 - INSTALLNLSDIR=${BASEDIR}/usr/share/locale - --TUPDATE = tupdate -+TUPDATE = msgmerge - - NLSPACKAGE = net-tools - -@@ -49,7 +49,7 @@ - lang=`echo $$cat | sed 's/.mo//'`; \ - mv $$lang.po $$lang.old.po; \ - echo "$$lang:"; \ -- if $(TUPDATE) $(NLSPACKAGE).pot $$lang.old.po > $$lang.po; then \ -+ if $(TUPDATE) $$lang.old.po $(NLSPACKAGE).pot > $$lang.po; then \ - rm -f $$lang.old.po; \ - else \ - echo "tupdate for $$cat failed!"; \ ---- net-tools-1.60/po/net-tools.pot 2001-04-15 16:40:06.000000000 +0200 -+++ net-tools/po/net-tools.pot 2005-05-16 06:21:58.000000000 +0300 -@@ -1,263 +1,285 @@ - # SOME DESCRIPTIVE TITLE. --# Copyright (C) YEAR Free Software Foundation, Inc. -+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -+# This file is distributed under the same license as the PACKAGE package. - # FIRST AUTHOR , YEAR. - # - #, fuzzy - msgid "" - msgstr "" - "Project-Id-Version: PACKAGE VERSION\n" --"POT-Creation-Date: 2001-04-15 15:40+0100\n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2005-05-16 05:18+0200\n" - "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" - "Last-Translator: FULL NAME \n" - "Language-Team: LANGUAGE \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=CHARSET\n" --"Content-Transfer-Encoding: ENCODING\n" -+"Content-Transfer-Encoding: 8bit\n" - --#: ../arp.c:111 ../arp.c:270 -+#: ../arp.c:111 ../arp.c:276 -+#, c-format - msgid "arp: need host name\n" - msgstr "" - --#: ../arp.c:208 ../arp.c:222 -+#: ../arp.c:213 ../arp.c:228 - #, c-format - msgid "No ARP entry for %s\n" - msgstr "" - --#: ../arp.c:240 -+#: ../arp.c:246 - #, c-format - msgid "arp: cant get HW-Address for `%s': %s.\n" - msgstr "" - --#: ../arp.c:244 -+#: ../arp.c:250 -+#, c-format - msgid "arp: protocol type mismatch.\n" - msgstr "" - --#: ../arp.c:253 -+#: ../arp.c:259 - #, c-format - msgid "arp: device `%s' has HW address %s `%s'.\n" - msgstr "" - --#: ../arp.c:283 -+#: ../arp.c:289 -+#, c-format - msgid "arp: need hardware address\n" - msgstr "" - --#: ../arp.c:291 -+#: ../arp.c:297 -+#, c-format - msgid "arp: invalid hardware address\n" - msgstr "" - --#: ../arp.c:388 -+#: ../arp.c:394 - #, c-format - msgid "arp: cannot open etherfile %s !\n" - msgstr "" - --#: ../arp.c:404 -+#: ../arp.c:410 - #, c-format - msgid "arp: format error on line %u of etherfile %s !\n" - msgstr "" - --#: ../arp.c:417 -+#: ../arp.c:423 - #, c-format - msgid "arp: cannot set entry on line %u of etherfile %s !\n" - msgstr "" - --#: ../arp.c:438 -+#: ../arp.c:444 -+#, c-format - msgid "" - "Address HWtype HWaddress Flags Mask " - "Iface\n" - msgstr "" - --#: ../arp.c:468 -+#: ../arp.c:472 -+msgid "" -+msgstr "" -+ -+#: ../arp.c:474 - msgid "(incomplete)" - msgstr "" - --#: ../arp.c:485 -+#: ../arp.c:491 - #, c-format - msgid "%s (%s) at " - msgstr "" - --#: ../arp.c:491 -+#: ../arp.c:497 -+#, c-format - msgid " " - msgstr "" - --#: ../arp.c:497 -+#: ../arp.c:503 - #, c-format - msgid "netmask %s " - msgstr "" - --#: ../arp.c:514 -+#: ../arp.c:520 - #, c-format - msgid "on %s\n" - msgstr "" - --#: ../arp.c:593 -+#: ../arp.c:599 - #, c-format - msgid "Entries: %d\tSkipped: %d\tFound: %d\n" - msgstr "" - --#: ../arp.c:597 -+#: ../arp.c:603 - #, c-format - msgid "%s (%s) -- no entry\n" - msgstr "" - --#: ../arp.c:599 -+#: ../arp.c:605 - #, c-format - msgid "arp: in %d entries no match found.\n" - msgstr "" - --#: ../arp.c:614 -+#: ../arp.c:620 -+#, c-format - msgid "" - "Usage:\n" - " arp [-vn] [] [-i ] [-a] [] <-Display ARP " - "cache\n" - msgstr "" - --#: ../arp.c:615 -+#: ../arp.c:621 -+#, c-format - msgid "" - " arp [-v] [-i ] -d [pub][nopub] <-Delete ARP " - "entry\n" - msgstr "" - --#: ../arp.c:616 -+#: ../arp.c:622 -+#, c-format - msgid "" --" arp [-vnD] [] [-i ] -f [] <-Add entry from " -+" arp [-vnD] [] [-i ] -f [] <-Add entry from " - "file\n" - msgstr "" - --#: ../arp.c:617 -+#: ../arp.c:623 -+#, c-format - msgid "" - " arp [-v] [] [-i ] -s [temp][nopub] <-Add " - "entry\n" - msgstr "" - --#: ../arp.c:618 --msgid "" --" arp [-v] [] [-i ] -s [netmask ] pub " --"<-''-\n" --msgstr "" -- --#: ../arp.c:619 -+#: ../arp.c:624 -+#, c-format - msgid "" - " arp [-v] [] [-i ] -Ds [netmask ] pub " - "<-''-\n" - "\n" - msgstr "" - --#: ../arp.c:621 -+#: ../arp.c:626 -+#, c-format - msgid "" - " -a display (all) hosts in alternative (BSD) " - "style\n" - msgstr "" - --#: ../arp.c:622 -+#: ../arp.c:627 -+#, c-format - msgid " -s, --set set a new ARP entry\n" - msgstr "" - --#: ../arp.c:623 -+#: ../arp.c:628 -+#, c-format - msgid " -d, --delete delete a specified entry\n" - msgstr "" - --#: ../arp.c:624 ../netstat.c:1490 ../route.c:86 -+#: ../arp.c:629 ../netstat.c:1503 ../route.c:86 -+#, c-format - msgid " -v, --verbose be verbose\n" - msgstr "" - --#: ../arp.c:625 ../netstat.c:1491 ../route.c:87 -+#: ../arp.c:630 ../netstat.c:1504 ../route.c:87 -+#, c-format - msgid " -n, --numeric don't resolve names\n" - msgstr "" - --#: ../arp.c:626 -+#: ../arp.c:631 -+#, c-format - msgid "" - " -i, --device specify network interface (e.g. eth0)\n" - msgstr "" - --#: ../arp.c:627 -+#: ../arp.c:632 -+#, c-format - msgid " -D, --use-device read from given device\n" - msgstr "" - --#: ../arp.c:628 -+#: ../arp.c:633 -+#, c-format - msgid " -A, -p, --protocol specify protocol family\n" - msgstr "" - --#: ../arp.c:629 -+#: ../arp.c:634 -+#, c-format - msgid "" --" -f, --file read new entries from file or from " --"/etc/ethers\n" -+" -f, --file read new entries from file or from /etc/" -+"ethers\n" - "\n" - msgstr "" - --#: ../arp.c:631 ../rarp.c:182 -+#: ../arp.c:636 ../rarp.c:182 - #, c-format - msgid " =Use '-H ' to specify hardware address type. Default: %s\n" - msgstr "" - --#: ../arp.c:632 ../rarp.c:183 -+#: ../arp.c:637 ../rarp.c:183 -+#, c-format - msgid " List of possible hardware types (which support ARP):\n" - msgstr "" - --#: ../arp.c:666 ../arp.c:751 -+#: ../arp.c:671 ../arp.c:756 - #, c-format - msgid "%s: hardware type not supported!\n" - msgstr "" - --#: ../arp.c:670 -+#: ../arp.c:675 - #, c-format - msgid "%s: address family not supported!\n" - msgstr "" - --#: ../arp.c:705 -+#: ../arp.c:710 -+#, c-format - msgid "arp: -N not yet supported.\n" - msgstr "" - --#: ../arp.c:715 -+#: ../arp.c:720 - #, c-format - msgid "arp: %s: unknown address family.\n" - msgstr "" - --#: ../arp.c:724 -+#: ../arp.c:729 - #, c-format - msgid "arp: %s: unknown hardware type.\n" - msgstr "" - --#: ../arp.c:743 -+#: ../arp.c:748 - #, c-format - msgid "arp: %s: kernel only supports 'inet'.\n" - msgstr "" - --#: ../arp.c:756 -+#: ../arp.c:761 - #, c-format - msgid "arp: %s: hardware type without ARP support.\n" - msgstr "" - --#: ../hostname.c:70 -+#: ../hostname.c:71 - #, c-format - msgid "Setting nodename to `%s'\n" - msgstr "" - --#: ../hostname.c:75 -+#: ../hostname.c:76 - #, c-format - msgid "%s: you must be root to change the node name\n" - msgstr "" - --#: ../hostname.c:78 ../hostname.c:98 ../hostname.c:117 -+#: ../hostname.c:79 ../hostname.c:100 ../hostname.c:118 - #, c-format - msgid "%s: name too long\n" - msgstr "" - --#: ../hostname.c:90 -+#: ../hostname.c:92 - #, c-format - msgid "Setting hostname to `%s'\n" - msgstr "" - --#: ../hostname.c:95 -+#: ../hostname.c:97 - #, c-format - msgid "%s: you must be root to change the host name\n" - msgstr "" - --#: ../hostname.c:109 -+#: ../hostname.c:110 - #, c-format - msgid "Setting domainname to `%s'\n" - msgstr "" - --#: ../hostname.c:114 -+#: ../hostname.c:115 - #, c-format - msgid "%s: you must be root to change the domain name\n" - msgstr "" -@@ -282,83 +304,99 @@ - msgid "Result: h_addr_list=`%s'\n" - msgstr "" - --#: ../hostname.c:210 -+#: ../hostname.c:209 - #, c-format - msgid "%s: can't open `%s'\n" - msgstr "" - --#: ../hostname.c:224 -+#: ../hostname.c:223 -+#, c-format - msgid "Usage: hostname [-v] {hostname|-F file} set hostname (from file)\n" - msgstr "" - --#: ../hostname.c:225 -+#: ../hostname.c:224 -+#, c-format - msgid "" - " domainname [-v] {nisdomain|-F file} set NIS domainname (from file)\n" - msgstr "" - --#: ../hostname.c:227 -+#: ../hostname.c:226 -+#, c-format - msgid "" - " nodename [-v] {nodename|-F file} set DECnet node name (from " - "file)\n" - msgstr "" - --#: ../hostname.c:229 -+#: ../hostname.c:228 -+#, c-format - msgid " hostname [-v] [-d|-f|-s|-a|-i|-y|-n] display formatted name\n" - msgstr "" - --#: ../hostname.c:230 -+#: ../hostname.c:229 -+#, c-format - msgid "" - " hostname [-v] display hostname\n" - "\n" - msgstr "" - --#: ../hostname.c:231 -+#: ../hostname.c:230 -+#, c-format - msgid "" - " hostname -V|--version|-h|--help print info and exit\n" - "\n" - msgstr "" - --#: ../hostname.c:232 -+#: ../hostname.c:231 -+#, c-format - msgid "" - " dnsdomainname=hostname -d, {yp,nis,}domainname=hostname -y\n" - "\n" - msgstr "" - --#: ../hostname.c:233 -+#: ../hostname.c:232 -+#, c-format - msgid " -s, --short short host name\n" - msgstr "" - --#: ../hostname.c:234 -+#: ../hostname.c:233 -+#, c-format - msgid " -a, --alias alias names\n" - msgstr "" - --#: ../hostname.c:235 -+#: ../hostname.c:234 -+#, c-format - msgid " -i, --ip-address addresses for the hostname\n" - msgstr "" - --#: ../hostname.c:236 -+#: ../hostname.c:235 -+#, c-format - msgid " -f, --fqdn, --long long host name (FQDN)\n" - msgstr "" - --#: ../hostname.c:237 -+#: ../hostname.c:236 -+#, c-format - msgid " -d, --domain DNS domain name\n" - msgstr "" - --#: ../hostname.c:238 -+#: ../hostname.c:237 -+#, c-format - msgid " -y, --yp, --nis NIS/YP domainname\n" - msgstr "" - --#: ../hostname.c:240 -+#: ../hostname.c:239 -+#, c-format - msgid " -n, --node DECnet node name\n" - msgstr "" - --#: ../hostname.c:242 -+#: ../hostname.c:241 -+#, c-format - msgid "" - " -F, --file read hostname or NIS domainname from given file\n" - "\n" - msgstr "" - --#: ../hostname.c:244 -+#: ../hostname.c:243 -+#, c-format - msgid "" - " This command can read or set the hostname or the NIS domainname. You can\n" - " also read the DNS domain or the FQDN (fully qualified domain name).\n" -@@ -373,12 +411,14 @@ - msgstr "" - - #: ../hostname.c:341 -+#, c-format - msgid "" - "\n" - "Unless you are using bind or NIS for host lookups you can change the DNS\n" - msgstr "" - - #: ../hostname.c:342 -+#, c-format - msgid "domain name (which is part of the FQDN) in the /etc/hosts file.\n" - msgstr "" - -@@ -397,557 +437,697 @@ - msgid "getnodename()=`%s'\n" - msgstr "" - --#: ../ifconfig.c:108 -+#: ../ifconfig.c:107 ../netstat.c:1465 -+#, c-format - msgid "" --"Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR " -+"Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR " - "Flg\n" - msgstr "" - --#: ../ifconfig.c:130 ../ifconfig.c:162 -+#: ../ifconfig.c:129 ../ifconfig.c:161 - #, c-format --msgid "%s: unknown interface: %s\n" -+msgid "%s: ERROR while getting interface flags: %s\n" - msgstr "" - --#: ../ifconfig.c:154 ../ifconfig.c:734 ../ifconfig.c:825 ../ifconfig.c:936 -+#: ../ifconfig.c:153 ../ifconfig.c:185 ../ifconfig.c:791 ../ifconfig.c:884 -+#: ../ifconfig.c:997 -+#, c-format - msgid "No support for INET on this system.\n" - msgstr "" - --#: ../ifconfig.c:177 -+#: ../ifconfig.c:193 -+#, c-format -+msgid "%s: ERROR while testing interface flags: %s\n" -+msgstr "" -+ -+#: ../ifconfig.c:202 -+#, c-format - msgid "" - "Usage:\n" --" ifconfig [-a] [-i] [-v] [-s] [[]
]\n" -+" ifconfig [-a] [-v] [-s] [[]
]\n" - msgstr "" - --#: ../ifconfig.c:179 -+#: ../ifconfig.c:204 -+#, c-format - msgid " [add
[/]]\n" - msgstr "" - --#: ../ifconfig.c:180 -+#: ../ifconfig.c:205 -+#, c-format - msgid " [del
[/]]\n" - msgstr "" - --#: ../ifconfig.c:181 -+#: ../ifconfig.c:206 -+#, c-format - msgid " [[-]broadcast [
]] [[-]pointopoint [
]]\n" - msgstr "" - --#: ../ifconfig.c:182 -+#: ../ifconfig.c:207 -+#, c-format - msgid " [netmask
] [dstaddr
] [tunnel
]\n" - msgstr "" - --#: ../ifconfig.c:185 -+#: ../ifconfig.c:210 -+#, c-format - msgid " [outfill ] [keepalive ]\n" - msgstr "" - --#: ../ifconfig.c:187 -+#: ../ifconfig.c:212 -+#, c-format - msgid " [hw
] [metric ] [mtu ]\n" - msgstr "" - --#: ../ifconfig.c:188 -+#: ../ifconfig.c:213 -+#, c-format - msgid " [[-]trailers] [[-]arp] [[-]allmulti]\n" - msgstr "" - --#: ../ifconfig.c:189 -+#: ../ifconfig.c:214 -+#, c-format - msgid " [multicast] [[-]promisc]\n" - msgstr "" - --#: ../ifconfig.c:190 -+#: ../ifconfig.c:215 -+#, c-format - msgid " [mem_start ] [io_addr ] [irq ] [media ]\n" - msgstr "" - --#: ../ifconfig.c:192 -+#: ../ifconfig.c:217 -+#, c-format - msgid " [txqueuelen ]\n" - msgstr "" - --#: ../ifconfig.c:195 -+#: ../ifconfig.c:220 -+#, c-format - msgid " [[-]dynamic]\n" - msgstr "" - --#: ../ifconfig.c:197 -+#: ../ifconfig.c:222 -+#, c-format - msgid "" - " [up|down] ...\n" - "\n" - msgstr "" - --#: ../ifconfig.c:199 -+#: ../ifconfig.c:224 -+#, c-format - msgid " =Hardware Type.\n" - msgstr "" - --#: ../ifconfig.c:200 -+#: ../ifconfig.c:225 -+#, c-format - msgid " List of possible hardware types:\n" - msgstr "" - - #. 1 = ARPable --#: ../ifconfig.c:202 -+#: ../ifconfig.c:227 - #, c-format - msgid " =Address family. Default: %s\n" - msgstr "" - --#: ../ifconfig.c:203 -+#: ../ifconfig.c:228 -+#, c-format - msgid " List of possible address families:\n" - msgstr "" - --#: ../ifconfig.c:278 -+#: ../ifconfig.c:304 - #, c-format - msgid "ifconfig: option `%s' not recognised.\n" - msgstr "" - --#: ../ifconfig.c:280 ../ifconfig.c:925 -+#: ../ifconfig.c:306 ../ifconfig.c:987 -+#, c-format - msgid "ifconfig: `--help' gives usage information.\n" - msgstr "" - --#: ../ifconfig.c:355 -+#: ../ifconfig.c:381 -+#, c-format - msgid "Unknown media type.\n" - msgstr "" - --#: ../ifconfig.c:647 -+#: ../ifconfig.c:418 -+#, c-format -+msgid "" -+"Warning: Interface %s still in promisc mode... maybe other application is " -+"running?\n" -+msgstr "" -+ -+#: ../ifconfig.c:430 -+#, c-format -+msgid "Warning: Interface %s still in MULTICAST mode.\n" -+msgstr "" -+ -+#: ../ifconfig.c:442 -+#, c-format -+msgid "Warning: Interface %s still in ALLMULTI mode.\n" -+msgstr "" -+ -+#: ../ifconfig.c:466 -+#, c-format -+msgid "Warning: Interface %s still in DYNAMIC mode.\n" -+msgstr "" -+ -+#: ../ifconfig.c:524 -+#, c-format -+msgid "Warning: Interface %s still in BROADCAST mode.\n" -+msgstr "" -+ -+#: ../ifconfig.c:535 -+#, c-format -+msgid "ifconfig: Error resolving '%s' for broadcast\n" -+msgstr "" -+ -+#: ../ifconfig.c:560 -+#, c-format -+msgid "ifconfig: Error resolving '%s' for dstaddr\n" -+msgstr "" -+ -+#: ../ifconfig.c:583 -+#, c-format -+msgid "ifconfig: Error resolving '%s' for netmask\n" -+msgstr "" -+ -+#: ../ifconfig.c:662 -+#, c-format -+msgid "Warning: Interface %s still in POINTOPOINT mode.\n" -+msgstr "" -+ -+#: ../ifconfig.c:673 -+#, c-format -+msgid "ifconfig: Error resolving '%s' for pointopoint\n" -+msgstr "" -+ -+#: ../ifconfig.c:697 - #, c-format - msgid "hw address type `%s' has no handler to set address. failed.\n" - msgstr "" - --#: ../ifconfig.c:656 -+#: ../ifconfig.c:706 - #, c-format - msgid "%s: invalid %s address.\n" - msgstr "" - --#: ../ifconfig.c:700 ../ifconfig.c:790 ../ifconfig.c:876 -+#: ../ifconfig.c:746 -+#, c-format -+msgid "ifconfig: Error resolving '%s' for add\n" -+msgstr "" -+ -+#: ../ifconfig.c:757 ../ifconfig.c:847 ../ifconfig.c:935 -+#, c-format - msgid "No support for INET6 on this system.\n" - msgstr "" - --#: ../ifconfig.c:743 ../ifconfig.c:834 -+#: ../ifconfig.c:800 ../ifconfig.c:893 - #, c-format - msgid "Interface %s not initialized\n" - msgstr "" - --#: ../ifconfig.c:755 ../ifconfig.c:845 -+#: ../ifconfig.c:812 ../ifconfig.c:904 -+#, c-format - msgid "Bad address.\n" - msgstr "" - --#: ../ifconfig.c:848 -+#: ../ifconfig.c:907 -+#, c-format - msgid "Address deletion not supported on this system.\n" - msgstr "" - --#: ../ifconfig.c:920 -+#: ../ifconfig.c:979 -+#, c-format - msgid "ifconfig: Cannot set address for this protocol family.\n" - msgstr "" - --#: ../ifconfig.c:946 -+#: ../ifconfig.c:986 -+#, c-format -+msgid "ifconfig: error resolving '%s' to set address for af=%s\n" -+msgstr "" -+ -+#: ../ifconfig.c:1007 -+#, c-format - msgid "No support for ECONET on this system.\n" - msgstr "" - --#: ../ifconfig.c:954 -+#: ../ifconfig.c:1015 - #, c-format - msgid "Don't know how to set addresses for family %d.\n" - msgstr "" - --#: ../netstat.c:430 -+#: ../ifconfig.c:1050 -+#, c-format -+msgid "WARNING: at least one error occured. (%d)\n" -+msgstr "" -+ -+#: ../netstat.c:434 - #, c-format - msgid "" - "(No info could be read for \"-p\": geteuid()=%d but you should be root.)\n" - msgstr "" - --#: ../netstat.c:434 -+#: ../netstat.c:438 -+#, c-format - msgid "" - "(Not all processes could be identified, non-owned process info\n" - " will not be shown, you would have to be root to see it all.)\n" - msgstr "" - --#: ../netstat.c:441 ../netstat.c:1176 ../netstat.c:1253 -+#: ../netstat.c:445 ../netstat.c:1189 ../netstat.c:1266 - msgid "LISTENING" - msgstr "" - --#: ../netstat.c:442 -+#: ../netstat.c:446 - msgid "CONN SENT" - msgstr "" - --#: ../netstat.c:443 ../netstat.c:1255 -+#: ../netstat.c:447 ../netstat.c:1268 - msgid "DISC SENT" - msgstr "" - --#: ../netstat.c:444 ../netstat.c:511 ../netstat.c:894 ../netstat.c:1256 -+#: ../netstat.c:448 ../netstat.c:515 ../netstat.c:904 ../netstat.c:1269 - msgid "ESTABLISHED" - msgstr "" - --#: ../netstat.c:466 -+#: ../netstat.c:470 -+#, c-format - msgid "Active NET/ROM sockets\n" - msgstr "" - --#: ../netstat.c:467 -+#: ../netstat.c:471 -+#, c-format - msgid "" --"User Dest Source Device State Vr/Vs Send-Q " --"Recv-Q\n" -+"User Dest Source Device State Vr/Vs Send-Q Recv-" -+"Q\n" - msgstr "" - --#: ../netstat.c:477 ../netstat.c:1295 -+#: ../netstat.c:481 ../netstat.c:1308 - #, c-format - msgid "Problem reading data from %s\n" - msgstr "" - --#: ../netstat.c:512 -+#: ../netstat.c:516 - msgid "SYN_SENT" - msgstr "" - --#: ../netstat.c:513 -+#: ../netstat.c:517 - msgid "SYN_RECV" - msgstr "" - --#: ../netstat.c:514 -+#: ../netstat.c:518 - msgid "FIN_WAIT1" - msgstr "" - --#: ../netstat.c:515 -+#: ../netstat.c:519 - msgid "FIN_WAIT2" - msgstr "" - --#: ../netstat.c:516 -+#: ../netstat.c:520 - msgid "TIME_WAIT" - msgstr "" - --#: ../netstat.c:517 -+#: ../netstat.c:521 - msgid "CLOSE" - msgstr "" - --#: ../netstat.c:518 -+#: ../netstat.c:522 - msgid "CLOSE_WAIT" - msgstr "" - --#: ../netstat.c:519 -+#: ../netstat.c:523 - msgid "LAST_ACK" - msgstr "" - --#: ../netstat.c:520 -+#: ../netstat.c:524 - msgid "LISTEN" - msgstr "" - --#: ../netstat.c:521 -+#: ../netstat.c:525 - msgid "CLOSING" - msgstr "" - --#: ../netstat.c:592 -+#: ../netstat.c:596 - #, c-format - msgid "warning, got bogus igmp6 line %d.\n" - msgstr "" - --#: ../netstat.c:597 ../netstat.c:635 ../netstat.c:756 ../netstat.c:888 --#: ../netstat.c:1019 ../netstat.c:1024 -+#: ../netstat.c:601 ../netstat.c:639 ../netstat.c:763 ../netstat.c:898 -+#: ../netstat.c:1032 ../netstat.c:1037 - #, c-format - msgid "netstat: unsupported address family %d !\n" - msgstr "" - --#: ../netstat.c:610 ../netstat.c:615 ../netstat.c:623 ../netstat.c:630 -+#: ../netstat.c:614 ../netstat.c:619 ../netstat.c:627 ../netstat.c:634 - #, c-format - msgid "warning, got bogus igmp line %d.\n" - msgstr "" - --#: ../netstat.c:673 -+#: ../netstat.c:677 -+#, c-format - msgid "Active X.25 sockets\n" - msgstr "" - - #. IMHO, Vr/Vs is not very usefull --SF --#: ../netstat.c:675 -+#: ../netstat.c:679 -+#, c-format - msgid "" --"Dest Source Device LCI State Vr/Vs Send-Q " --"Recv-Q\n" -+"Dest Source Device LCI State Vr/Vs Send-Q Recv-" -+"Q\n" - msgstr "" - --#: ../netstat.c:752 -+#: ../netstat.c:759 -+#, c-format - msgid "warning, got bogus tcp line.\n" - msgstr "" - --#: ../netstat.c:793 ../netstat.c:943 ../netstat.c:1062 -+#: ../netstat.c:800 ../netstat.c:953 ../netstat.c:1075 - #, c-format - msgid "off (0.00/%ld/%d)" - msgstr "" - --#: ../netstat.c:797 -+#: ../netstat.c:804 - #, c-format - msgid "on (%2.2f/%ld/%d)" - msgstr "" - --#: ../netstat.c:802 -+#: ../netstat.c:809 - #, c-format - msgid "keepalive (%2.2f/%ld/%d)" - msgstr "" - --#: ../netstat.c:807 -+#: ../netstat.c:814 - #, c-format - msgid "timewait (%2.2f/%ld/%d)" - msgstr "" - --#: ../netstat.c:812 ../netstat.c:952 ../netstat.c:1072 -+#: ../netstat.c:819 ../netstat.c:962 ../netstat.c:1085 - #, c-format - msgid "unkn-%d (%2.2f/%ld/%d)" - msgstr "" - --#: ../netstat.c:884 -+#: ../netstat.c:894 -+#, c-format - msgid "warning, got bogus udp line.\n" - msgstr "" - --#: ../netstat.c:902 ../netstat.c:1162 ../netstat.c:1195 -+#: ../netstat.c:912 ../netstat.c:1175 ../netstat.c:1208 - msgid "UNKNOWN" - msgstr "" - --#: ../netstat.c:948 ../netstat.c:1067 -+#: ../netstat.c:958 ../netstat.c:1080 - #, c-format - msgid "on%d (%2.2f/%ld/%d)" - msgstr "" - --#: ../netstat.c:1033 -+#: ../netstat.c:1046 -+#, c-format - msgid "warning, got bogus raw line.\n" - msgstr "" - --#: ../netstat.c:1115 -+#: ../netstat.c:1128 -+#, c-format - msgid "warning, got bogus unix line.\n" - msgstr "" - --#: ../netstat.c:1142 -+#: ../netstat.c:1155 - msgid "STREAM" - msgstr "" - --#: ../netstat.c:1146 -+#: ../netstat.c:1159 - msgid "DGRAM" - msgstr "" - --#: ../netstat.c:1150 -+#: ../netstat.c:1163 - msgid "RAW" - msgstr "" - --#: ../netstat.c:1154 -+#: ../netstat.c:1167 - msgid "RDM" - msgstr "" - --#: ../netstat.c:1158 -+#: ../netstat.c:1171 - msgid "SEQPACKET" - msgstr "" - --#: ../netstat.c:1167 -+#: ../netstat.c:1180 - msgid "FREE" - msgstr "" - --#: ../netstat.c:1183 -+#: ../netstat.c:1196 - msgid "CONNECTING" - msgstr "" - --#: ../netstat.c:1187 -+#: ../netstat.c:1200 - msgid "CONNECTED" - msgstr "" - --#: ../netstat.c:1191 -+#: ../netstat.c:1204 - msgid "DISCONNECTING" - msgstr "" - --#: ../netstat.c:1222 -+#: ../netstat.c:1235 -+#, c-format - msgid "Active UNIX domain sockets " - msgstr "" - --#: ../netstat.c:1224 ../netstat.c:1735 -+#: ../netstat.c:1237 ../netstat.c:1756 -+#, c-format - msgid "(servers and established)" - msgstr "" - --#: ../netstat.c:1227 ../netstat.c:1738 -+#: ../netstat.c:1240 ../netstat.c:1759 -+#, c-format - msgid "(only servers)" - msgstr "" - --#: ../netstat.c:1229 ../netstat.c:1740 -+#: ../netstat.c:1242 ../netstat.c:1761 -+#, c-format - msgid "(w/o servers)" - msgstr "" - --#: ../netstat.c:1232 -+#: ../netstat.c:1245 -+#, c-format - msgid "" - "\n" - "Proto RefCnt Flags Type State I-Node" - msgstr "" - --#: ../netstat.c:1234 -+#: ../netstat.c:1247 -+#, c-format - msgid " Path\n" - msgstr "" - --#: ../netstat.c:1254 -+#: ../netstat.c:1267 - msgid "SABM SENT" - msgstr "" - --#: ../netstat.c:1257 -+#: ../netstat.c:1270 - msgid "RECOVERY" - msgstr "" - --#: ../netstat.c:1271 -+#: ../netstat.c:1284 -+#, c-format - msgid "Active AX.25 sockets\n" - msgstr "" - --#: ../netstat.c:1272 -+#: ../netstat.c:1285 -+#, c-format - msgid "Dest Source Device State Vr/Vs Send-Q Recv-Q\n" - msgstr "" - --#: ../netstat.c:1315 -+#: ../netstat.c:1328 - #, c-format - msgid "problem reading data from %s\n" - msgstr "" - --#: ../netstat.c:1366 -+#: ../netstat.c:1379 -+#, c-format - msgid "" - "Active IPX sockets\n" - "Proto Recv-Q Send-Q Local Address Foreign Address " - "State" - msgstr "" - --#: ../netstat.c:1368 -+#: ../netstat.c:1381 -+#, c-format - msgid " User" - msgstr "" - --#: ../netstat.c:1402 -+#: ../netstat.c:1415 - msgid "ESTAB" - msgstr "" - --#: ../netstat.c:1410 -+#: ../netstat.c:1423 - msgid "UNK." - msgstr "" - --#: ../netstat.c:1448 -+#: ../netstat.c:1461 -+#, c-format - msgid "Kernel Interface table\n" - msgstr "" - --#: ../netstat.c:1452 --msgid "" --"Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR " --"Flg\n" --msgstr "" -- --#: ../netstat.c:1456 -+#: ../netstat.c:1469 - msgid "missing interface information" - msgstr "" - --#: ../netstat.c:1479 -+#: ../netstat.c:1492 -+#, c-format - msgid "" --"usage: netstat [-veenNcCF] [] -r netstat " --"{-V|--version|-h|--help}\n" -+"usage: netstat [-veenNcCF] [] -r netstat {-V|--version|-h|--" -+"help}\n" - msgstr "" - --#: ../netstat.c:1480 -+#: ../netstat.c:1493 -+#, c-format - msgid " netstat [-vnNcaeol] [ ...]\n" - msgstr "" - --#: ../netstat.c:1481 -+#: ../netstat.c:1494 -+#, c-format - msgid "" - " netstat { [-veenNac] -i | [-cnNe] -M | -s }\n" - "\n" - msgstr "" - --#: ../netstat.c:1483 -+#: ../netstat.c:1496 -+#, c-format - msgid " -r, --route display routing table\n" - msgstr "" - --#: ../netstat.c:1484 -+#: ../netstat.c:1497 -+#, c-format - msgid " -i, --interfaces display interface table\n" - msgstr "" - --#: ../netstat.c:1485 -+#: ../netstat.c:1498 -+#, c-format - msgid " -g, --groups display multicast group memberships\n" - msgstr "" - --#: ../netstat.c:1486 -+#: ../netstat.c:1499 -+#, c-format - msgid "" - " -s, --statistics display networking statistics (like SNMP)\n" - msgstr "" - --#: ../netstat.c:1488 -+#: ../netstat.c:1501 -+#, c-format - msgid "" - " -M, --masquerade display masqueraded connections\n" - "\n" - msgstr "" - --#: ../netstat.c:1492 -+#: ../netstat.c:1505 -+#, c-format - msgid " --numeric-hosts don't resolve host names\n" - msgstr "" - --#: ../netstat.c:1493 -+#: ../netstat.c:1506 -+#, c-format - msgid " --numeric-ports don't resolve port names\n" - msgstr "" - --#: ../netstat.c:1494 -+#: ../netstat.c:1507 -+#, c-format - msgid " --numeric-users don't resolve user names\n" - msgstr "" - --#: ../netstat.c:1495 -+#: ../netstat.c:1508 -+#, c-format - msgid " -N, --symbolic resolve hardware names\n" - msgstr "" - --#: ../netstat.c:1496 ../route.c:88 -+#: ../netstat.c:1509 ../route.c:88 -+#, c-format - msgid " -e, --extend display other/more information\n" - msgstr "" - --#: ../netstat.c:1497 -+#: ../netstat.c:1510 -+#, c-format - msgid " -p, --programs display PID/Program name for sockets\n" - msgstr "" - --#: ../netstat.c:1498 -+#: ../netstat.c:1511 -+#, c-format - msgid "" - " -c, --continuous continuous listing\n" - "\n" - msgstr "" - --#: ../netstat.c:1499 -+#: ../netstat.c:1512 -+#, c-format - msgid " -l, --listening display listening server sockets\n" - msgstr "" - --#: ../netstat.c:1500 -+#: ../netstat.c:1513 -+#, c-format - msgid "" - " -a, --all, --listening display all sockets (default: connected)\n" - msgstr "" - --#: ../netstat.c:1501 -+#: ../netstat.c:1514 -+#, c-format - msgid " -o, --timers display timers\n" - msgstr "" - --#: ../netstat.c:1502 ../route.c:89 -+#: ../netstat.c:1515 ../route.c:89 -+#, c-format - msgid "" - " -F, --fib display Forwarding Information Base " - "(default)\n" - msgstr "" - --#: ../netstat.c:1503 ../route.c:90 -+#: ../netstat.c:1516 ../route.c:90 -+#, c-format - msgid "" - " -C, --cache display routing cache instead of FIB\n" - "\n" - msgstr "" - --#: ../netstat.c:1505 -+#: ../netstat.c:1518 -+#, c-format - msgid "" --" ={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx " --"--netrom\n" -+" ={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx --" -+"netrom\n" - msgstr "" - --#: ../netstat.c:1506 ../route.c:92 -+#: ../netstat.c:1519 - #, c-format --msgid " =Use '-A ' or '--'; default: %s\n" -+msgid " =Use '-6|-4' or '-A ' or '--'; default: %s\n" - msgstr "" - --#: ../netstat.c:1507 ../route.c:93 -+#: ../netstat.c:1520 ../route.c:93 -+#, c-format - msgid " List of possible address families (which support routing):\n" - msgstr "" - --#: ../netstat.c:1732 -+#: ../netstat.c:1753 -+#, c-format - msgid "Active Internet connections " - msgstr "" - --#: ../netstat.c:1742 -+#: ../netstat.c:1763 -+#, c-format - msgid "" - "\n" --"Proto Recv-Q Send-Q Local Address Foreign Address State " --" " -+"Proto Recv-Q Send-Q Local Address Foreign Address " -+"State " - msgstr "" - --#: ../netstat.c:1744 -+#: ../netstat.c:1765 -+#, c-format - msgid " User Inode " - msgstr "" - --#: ../netstat.c:1747 -+#: ../netstat.c:1768 -+#, c-format - msgid " Timer" - msgstr "" - --#: ../netstat.c:1777 -+#: ../netstat.c:1798 -+#, c-format - msgid "IPv4 Group Memberships\n" - msgstr "" - --#: ../netstat.c:1778 -+#: ../netstat.c:1799 -+#, c-format - msgid "Interface RefCnt Group\n" - msgstr "" - -@@ -986,23 +1166,28 @@ - msgstr "" - - #: ../rarp.c:176 -+#, c-format - msgid "Usage: rarp -a list entries in cache.\n" - msgstr "" - - #: ../rarp.c:177 -+#, c-format - msgid " rarp -d delete entry from cache.\n" - msgstr "" - - #: ../rarp.c:178 -+#, c-format - msgid " rarp [] -s add entry to cache.\n" - msgstr "" - - #: ../rarp.c:179 -+#, c-format - msgid "" - " rarp -f add entries from /etc/ethers.\n" - msgstr "" - - #: ../rarp.c:180 -+#, c-format - msgid "" - " rarp -V display program version.\n" - "\n" -@@ -1019,38 +1204,50 @@ - msgstr "" - - #: ../route.c:80 -+#, c-format - msgid "" - "Usage: route [-nNvee] [-FC] [] List kernel routing tables\n" - msgstr "" - - #: ../route.c:81 -+#, c-format - msgid "" - " route [-v] [-FC] {add|del|flush} ... Modify routing table for AF.\n" - "\n" - msgstr "" - - #: ../route.c:83 -+#, c-format - msgid "" - " route {-h|--help} [] Detailed usage syntax for " - "specified AF.\n" - msgstr "" - - #: ../route.c:84 -+#, c-format - msgid "" - " route {-V|--version} Display version/author and " - "exit.\n" - "\n" - msgstr "" - -+#: ../route.c:92 -+#, c-format -+msgid " =Use '-A ' or '--'; default: %s\n" -+msgstr "" -+ - #: ../plipconfig.c:66 -+#, c-format - msgid "Usage: plipconfig [-a] [-i] [-v] interface\n" - msgstr "" - - #: ../plipconfig.c:67 -+#, c-format - msgid " [nibble NN] [trigger NN]\n" - msgstr "" - - #: ../plipconfig.c:68 -+#, c-format - msgid " plipconfig -V | --version\n" - msgstr "" - -@@ -1060,61 +1257,75 @@ - msgstr "" - - #: ../iptunnel.c:85 -+#, c-format - msgid "Usage: iptunnel { add | change | del | show } [ NAME ]\n" - msgstr "" - - #: ../iptunnel.c:86 -+#, c-format - msgid "" - " [ mode { ipip | gre | sit } ] [ remote ADDR ] [ local ADDR ]\n" - msgstr "" - - #: ../iptunnel.c:87 -+#, c-format - msgid " [ [i|o]seq ] [ [i|o]key KEY ] [ [i|o]csum ]\n" - msgstr "" - - #: ../iptunnel.c:88 -+#, c-format - msgid " [ ttl TTL ] [ tos TOS ] [ nopmtudisc ] [ dev PHYS_DEV ]\n" - msgstr "" - - #: ../iptunnel.c:89 -+#, c-format - msgid "" - " iptunnel -V | --version\n" - "\n" - msgstr "" - - #: ../iptunnel.c:90 -+#, c-format - msgid "Where: NAME := STRING\n" - msgstr "" - - #: ../iptunnel.c:91 -+#, c-format - msgid " ADDR := { IP_ADDRESS | any }\n" - msgstr "" - - #: ../iptunnel.c:92 -+#, c-format - msgid " TOS := { NUMBER | inherit }\n" - msgstr "" - - #: ../iptunnel.c:93 -+#, c-format - msgid " TTL := { 1..255 | inherit }\n" - msgstr "" - - #: ../iptunnel.c:94 -+#, c-format - msgid " KEY := { DOTTED_QUAD | NUMBER }\n" - msgstr "" - - #: ../iptunnel.c:332 -+#, c-format - msgid "Keys are not allowed with ipip and sit.\n" - msgstr "" - - #: ../iptunnel.c:352 -+#, c-format - msgid "Broadcast tunnel requires a source address.\n" - msgstr "" - - #: ../iptunnel.c:367 -+#, c-format - msgid "ttl != 0 and noptmudisc are incompatible\n" - msgstr "" - - #: ../iptunnel.c:379 -+#, c-format - msgid "cannot determine tunnel mode (ipip, gre or sit)\n" - msgstr "" - -@@ -1128,22 +1339,27 @@ - msgstr "" - - #: ../iptunnel.c:453 -+#, c-format - msgid " Drop packets out of sequence.\n" - msgstr "" - - #: ../iptunnel.c:455 -+#, c-format - msgid " Checksum in received packet is required.\n" - msgstr "" - - #: ../iptunnel.c:457 -+#, c-format - msgid " Sequence packets on output.\n" - msgstr "" - - #: ../iptunnel.c:459 -+#, c-format - msgid " Checksum output packets.\n" - msgstr "" - - #: ../iptunnel.c:487 -+#, c-format - msgid "Wrong format of /proc/net/dev. Sorry.\n" - msgstr "" - -@@ -1153,10 +1369,12 @@ - msgstr "" - - #: ../iptunnel.c:516 -+#, c-format - msgid "RX: Packets Bytes Errors CsumErrs OutOfSeq Mcasts\n" - msgstr "" - - #: ../iptunnel.c:519 -+#, c-format - msgid "TX: Packets Bytes Errors DeadLoop NoRoute NoBufs\n" - msgstr "" - -@@ -1323,287 +1541,487 @@ - - #: ../statistics.c:99 - #, c-format --msgid "address mask request: %u" -+msgid "address mask request: %u" -+msgstr "" -+ -+#. ? -+#: ../statistics.c:100 ../statistics.c:113 -+#, c-format -+msgid "address mask replies: %u" -+msgstr "" -+ -+#. ? -+#: ../statistics.c:101 -+#, c-format -+msgid "%u ICMP messages sent" -+msgstr "" -+ -+#: ../statistics.c:102 -+#, c-format -+msgid "%u ICMP messages failed" -+msgstr "" -+ -+#: ../statistics.c:104 -+#, c-format -+msgid "time exceeded: %u" -+msgstr "" -+ -+#. ? -+#: ../statistics.c:106 -+#, c-format -+msgid "source quench: %u" -+msgstr "" -+ -+#: ../statistics.c:107 -+#, c-format -+msgid "redirect: %u" -+msgstr "" -+ -+#: ../statistics.c:108 -+#, c-format -+msgid "echo request: %u" -+msgstr "" -+ -+#: ../statistics.c:110 -+#, c-format -+msgid "timestamp requests: %u" -+msgstr "" -+ -+#: ../statistics.c:111 -+#, c-format -+msgid "timestamp replies: %u" -+msgstr "" -+ -+#: ../statistics.c:112 -+#, c-format -+msgid "address mask requests: %u" -+msgstr "" -+ -+#: ../statistics.c:118 -+#, c-format -+msgid "RTO algorithm is %s" -+msgstr "" -+ -+#: ../statistics.c:122 -+#, c-format -+msgid "%u active connections openings" -+msgstr "" -+ -+#: ../statistics.c:123 -+#, c-format -+msgid "%u passive connection openings" -+msgstr "" -+ -+#: ../statistics.c:124 -+#, c-format -+msgid "%u failed connection attempts" -+msgstr "" -+ -+#: ../statistics.c:125 -+#, c-format -+msgid "%u connection resets received" -+msgstr "" -+ -+#: ../statistics.c:126 -+#, c-format -+msgid "%u connections established" -+msgstr "" -+ -+#: ../statistics.c:127 -+#, c-format -+msgid "%u segments received" -+msgstr "" -+ -+#: ../statistics.c:128 -+#, c-format -+msgid "%u segments send out" -+msgstr "" -+ -+#: ../statistics.c:129 -+#, c-format -+msgid "%u segments retransmited" -+msgstr "" -+ -+#: ../statistics.c:130 -+#, c-format -+msgid "%u bad segments received." -+msgstr "" -+ -+#: ../statistics.c:131 -+#, c-format -+msgid "%u resets sent" -+msgstr "" -+ -+#: ../statistics.c:136 -+#, c-format -+msgid "%u packets received" -+msgstr "" -+ -+#: ../statistics.c:137 -+#, c-format -+msgid "%u packets to unknown port received." -+msgstr "" -+ -+#: ../statistics.c:138 -+#, c-format -+msgid "%u packet receive errors" -+msgstr "" -+ -+#: ../statistics.c:139 -+#, c-format -+msgid "%u packets sent" -+msgstr "" -+ -+#: ../statistics.c:144 -+#, c-format -+msgid "%u SYN cookies sent" -+msgstr "" -+ -+#: ../statistics.c:145 -+#, c-format -+msgid "%u SYN cookies received" -+msgstr "" -+ -+#: ../statistics.c:146 -+#, c-format -+msgid "%u invalid SYN cookies received" -+msgstr "" -+ -+#: ../statistics.c:148 -+#, c-format -+msgid "%u resets received for embryonic SYN_RECV sockets" -+msgstr "" -+ -+#: ../statistics.c:150 -+#, c-format -+msgid "%u packets pruned from receive queue because of socket buffer overrun" -+msgstr "" -+ -+#. obsolete: 2.2.0 doesn't do that anymore -+#: ../statistics.c:153 -+#, c-format -+msgid "%u packets pruned from receive queue" -+msgstr "" -+ -+#: ../statistics.c:154 -+#, c-format -+msgid "" -+"%u packets dropped from out-of-order queue because of socket buffer overrun" -+msgstr "" -+ -+#: ../statistics.c:156 -+#, c-format -+msgid "%u ICMP packets dropped because they were out-of-window" -+msgstr "" -+ -+#: ../statistics.c:158 -+#, c-format -+msgid "%u ICMP packets dropped because socket was locked" -+msgstr "" -+ -+#: ../statistics.c:160 -+#, c-format -+msgid "%u TCP sockets finished time wait in fast timer" -+msgstr "" -+ -+#: ../statistics.c:161 -+#, c-format -+msgid "%u time wait sockets recycled by time stamp" -+msgstr "" -+ -+#: ../statistics.c:162 -+#, c-format -+msgid "%u TCP sockets finished time wait in slow timer" -+msgstr "" -+ -+#: ../statistics.c:163 -+#, c-format -+msgid "%u passive connections rejected because of time stamp" -+msgstr "" -+ -+#: ../statistics.c:165 -+#, c-format -+msgid "%u active connections rejected because of time stamp" -+msgstr "" -+ -+#: ../statistics.c:167 -+#, c-format -+msgid "%u packets rejects in established connections because of timestamp" - msgstr "" - --#. ? --#: ../statistics.c:100 ../statistics.c:113 -+#: ../statistics.c:169 - #, c-format --msgid "address mask replies: %u" -+msgid "%u delayed acks sent" - msgstr "" - --#. ? --#: ../statistics.c:101 -+#: ../statistics.c:170 - #, c-format --msgid "%u ICMP messages sent" -+msgid "%u delayed acks further delayed because of locked socket" - msgstr "" - --#: ../statistics.c:102 -+#: ../statistics.c:172 - #, c-format --msgid "%u ICMP messages failed" -+msgid "Quick ack mode was activated %u times" - msgstr "" - --#: ../statistics.c:104 -+#: ../statistics.c:173 - #, c-format --msgid "time exceeded: %u" -+msgid "%u times the listen queue of a socket overflowed" - msgstr "" - --#. ? --#: ../statistics.c:106 -+#: ../statistics.c:175 - #, c-format --msgid "source quench: %u" -+msgid "%u SYNs to LISTEN sockets dropped" - msgstr "" - --#: ../statistics.c:107 -+#: ../statistics.c:176 - #, c-format --msgid "redirect: %u" -+msgid "%u packets directly queued to recvmsg prequeue." - msgstr "" - --#: ../statistics.c:108 -+#: ../statistics.c:178 - #, c-format --msgid "echo request: %u" -+msgid "%u bytes directly in process context from backlog" - msgstr "" - --#: ../statistics.c:110 -+#: ../statistics.c:179 - #, c-format --msgid "timestamp requests: %u" -+msgid "%u bytes directly received in process context from prequeue" - msgstr "" - --#: ../statistics.c:111 -+#: ../statistics.c:181 - #, c-format --msgid "timestamp replies: %u" -+msgid "%u packets dropped from prequeue" - msgstr "" - --#: ../statistics.c:112 -+#: ../statistics.c:182 - #, c-format --msgid "address mask requests: %u" -+msgid "%u packet headers predicted" - msgstr "" - --#: ../statistics.c:118 -+#: ../statistics.c:183 - #, c-format --msgid "RTO algorithm is %s" -+msgid "%u packets header predicted and directly queued to user" - msgstr "" - --#: ../statistics.c:122 -+#: ../statistics.c:185 - #, c-format --msgid "%u active connections openings" -+msgid "Ran %u times out of system memory during packet sending" - msgstr "" - --#: ../statistics.c:123 -+#: ../statistics.c:187 - #, c-format --msgid "%u passive connection openings" -+msgid "%u acknowledgments not containing data payload received" - msgstr "" - --#: ../statistics.c:124 -+#: ../statistics.c:188 - #, c-format --msgid "%u failed connection attempts" -+msgid "%u predicted acknowledgments" - msgstr "" - --#: ../statistics.c:125 -+#: ../statistics.c:189 - #, c-format --msgid "%u connection resets received" -+msgid "%u times recovered from packet loss due to fast retransmit" - msgstr "" - --#: ../statistics.c:126 -+#: ../statistics.c:190 - #, c-format --msgid "%u connections established" -+msgid "%u times recovered from packet loss by selective acknowledgements" - msgstr "" - --#: ../statistics.c:127 -+#: ../statistics.c:191 - #, c-format --msgid "%u segments received" -+msgid "%u bad SACK blocks received" - msgstr "" - --#: ../statistics.c:128 -+#: ../statistics.c:192 - #, c-format --msgid "%u segments send out" -+msgid "Detected reordering %u times using FACK" - msgstr "" - --#: ../statistics.c:129 -+#: ../statistics.c:193 - #, c-format --msgid "%u segments retransmited" -+msgid "Detected reordering %u times using SACK" - msgstr "" - --#: ../statistics.c:130 -+#: ../statistics.c:194 - #, c-format --msgid "%u bad segments received." -+msgid "Detected reordering %u times using time stamp" - msgstr "" - --#: ../statistics.c:131 -+#: ../statistics.c:195 - #, c-format --msgid "%u resets sent" -+msgid "Detected reordering %u times using reno fast retransmit" - msgstr "" - --#: ../statistics.c:136 -+#: ../statistics.c:196 - #, c-format --msgid "%u packets received" -+msgid "%u congestion windows fully recovered without slow start" - msgstr "" - --#: ../statistics.c:137 -+#: ../statistics.c:197 - #, c-format --msgid "%u packets to unknown port received." -+msgid "%u congestion windows partially recovered using Hoe heuristic" - msgstr "" - --#: ../statistics.c:138 -+#: ../statistics.c:198 - #, c-format --msgid "%u packet receive errors" -+msgid "%u congestion window recovered without slow start using DSACK" - msgstr "" - --#: ../statistics.c:139 -+#: ../statistics.c:199 - #, c-format --msgid "%u packets sent" -+msgid "%u congestion windows recovered without slow start after partial ack" - msgstr "" - --#: ../statistics.c:144 -+#: ../statistics.c:200 - #, c-format --msgid "%u SYN cookies sent" -+msgid "%u retransmits lost" - msgstr "" - --#: ../statistics.c:145 -+#: ../statistics.c:201 - #, c-format --msgid "%u SYN cookies received" -+msgid "%u timeouts after reno fast retransmit" - msgstr "" - --#: ../statistics.c:146 -+#: ../statistics.c:202 - #, c-format --msgid "%u invalid SYN cookies received" -+msgid "%u timeouts after SACK recovery" - msgstr "" - --#: ../statistics.c:148 -+#: ../statistics.c:203 - #, c-format --msgid "%u resets received for embryonic SYN_RECV sockets" -+msgid "%u timeouts in loss state" - msgstr "" - --#: ../statistics.c:150 -+#: ../statistics.c:204 - #, c-format --msgid "%u packets pruned from receive queue because of socket buffer overrun" -+msgid "%u fast retransmits" - msgstr "" - --#. obsolete: 2.2.0 doesn't do that anymore --#: ../statistics.c:153 -+#: ../statistics.c:205 - #, c-format --msgid "%u packets pruned from receive queue" -+msgid "%u forward retransmits" - msgstr "" - --#: ../statistics.c:154 -+#: ../statistics.c:206 - #, c-format --msgid "" --"%u packets dropped from out-of-order queue because of socket buffer overrun" -+msgid "%u retransmits in slow start" - msgstr "" - --#: ../statistics.c:156 -+#: ../statistics.c:207 - #, c-format --msgid "%u ICMP packets dropped because they were out-of-window" -+msgid "%u other TCP timeouts" - msgstr "" - --#: ../statistics.c:158 -+#: ../statistics.c:208 - #, c-format --msgid "%u ICMP packets dropped because socket was locked" -+msgid "%u reno fast retransmits failed" - msgstr "" - --#: ../statistics.c:160 -+#: ../statistics.c:209 - #, c-format --msgid "%u TCP sockets finished time wait in fast timer" -+msgid "%u SACK retransmits failed" - msgstr "" - --#: ../statistics.c:161 -+#: ../statistics.c:210 - #, c-format --msgid "%u time wait sockets recycled by time stamp" -+msgid "%u times receiver scheduled too late for direct processing" - msgstr "" - --#: ../statistics.c:162 -+#: ../statistics.c:211 - #, c-format --msgid "%u TCP sockets finished time wait in slow timer" -+msgid "%u packets collapsed in receive queue due to low socket buffer" - msgstr "" - --#: ../statistics.c:163 -+#: ../statistics.c:212 - #, c-format --msgid "%u passive connections rejected because of time stamp" -+msgid "%u DSACKs sent for old packets" - msgstr "" - --#: ../statistics.c:165 -+#: ../statistics.c:213 - #, c-format --msgid "%u active connections rejected because of time stamp" -+msgid "%u DSACKs sent for out of order packets" - msgstr "" - --#: ../statistics.c:167 -+#: ../statistics.c:214 - #, c-format --msgid "%u packets rejects in established connections because of timestamp" -+msgid "%u DSACKs received" - msgstr "" - --#: ../statistics.c:169 -+#: ../statistics.c:215 - #, c-format --msgid "%u delayed acks sent" -+msgid "%u DSACKs for out of order packets received" - msgstr "" - --#: ../statistics.c:170 -+#: ../statistics.c:216 - #, c-format --msgid "%u delayed acks further delayed because of locked socket" -+msgid "%u connections reset due to unexpected SYN" - msgstr "" - --#: ../statistics.c:172 -+#: ../statistics.c:217 - #, c-format --msgid "Quick ack mode was activated %u times" -+msgid "%u connections reset due to unexpected data" - msgstr "" - --#: ../statistics.c:173 -+#: ../statistics.c:218 - #, c-format --msgid "%u times the listen queue of a socket overflowed" -+msgid "%u connections reset due to early user close" - msgstr "" - --#: ../statistics.c:175 -+#: ../statistics.c:219 - #, c-format --msgid "%u SYNs to LISTEN sockets ignored" -+msgid "%u connections aborted due to memory pressure" - msgstr "" - --#: ../statistics.c:176 -+#: ../statistics.c:220 - #, c-format --msgid "%u packets directly queued to recvmsg prequeue." -+msgid "%u connections aborted due to timeout" - msgstr "" - --#: ../statistics.c:178 -+#: ../statistics.c:221 - #, c-format --msgid "%u packets directly received from backlog" -+msgid "%u connections aborted after user close in linger timeout" - msgstr "" - --#: ../statistics.c:180 -+#: ../statistics.c:222 - #, c-format --msgid "%u packets directly received from prequeue" -+msgid "%u times unabled to send RST due to no memory" - msgstr "" - --#: ../statistics.c:182 -+#: ../statistics.c:223 - #, c-format --msgid "%u packets dropped from prequeue" -+msgid "TCP ran low on memory %u times" - msgstr "" - --#: ../statistics.c:183 -+#: ../statistics.c:224 - #, c-format --msgid "%u packets header predicted" -+msgid "%u TCP data loss events" - msgstr "" - --#: ../statistics.c:184 -+#: ../statistics.c:225 - #, c-format --msgid "%u packets header predicted and directly queued to user" -+msgid "%u congestion windows recovered without slow start by DSACK" - msgstr "" - --#: ../statistics.c:186 -+#: ../statistics.c:227 - #, c-format --msgid "Ran %u times out of system memory during packet sending" -+msgid "%u classic Reno fast retransmits failed" - msgstr "" - --#: ../statistics.c:253 -+#: ../statistics.c:294 - msgid "enabled" - msgstr "" - --#: ../statistics.c:253 -+#: ../statistics.c:294 - msgid "disabled" - msgstr "" - --#: ../statistics.c:336 -+#: ../statistics.c:377 - msgid "error parsing /proc/net/snmp" - msgstr "" - --#: ../statistics.c:349 -+#: ../statistics.c:390 - msgid "cannot open /proc/net/snmp" - msgstr "" - -@@ -1617,7 +2035,7 @@ - msgid "Cannot change line discipline to `%s'.\n" - msgstr "" - --#: ../lib/af.c:153 ../lib/hw.c:156 -+#: ../lib/af.c:153 ../lib/hw.c:161 - msgid "UNSPEC" - msgstr "" - -@@ -1633,11 +2051,11 @@ - msgid "IPv6" - msgstr "" - --#: ../lib/af.c:164 ../lib/hw.c:177 -+#: ../lib/af.c:164 ../lib/hw.c:182 - msgid "AMPR AX.25" - msgstr "" - --#: ../lib/af.c:167 ../lib/hw.c:183 -+#: ../lib/af.c:167 ../lib/hw.c:188 - msgid "AMPR NET/ROM" - msgstr "" - -@@ -1649,7 +2067,7 @@ - msgid "Appletalk DDP" - msgstr "" - --#: ../lib/af.c:176 ../lib/hw.c:218 -+#: ../lib/af.c:176 ../lib/hw.c:223 - msgid "Econet" - msgstr "" - -@@ -1657,19 +2075,21 @@ - msgid "CCITT X.25" - msgstr "" - --#: ../lib/af.c:182 ../lib/hw.c:180 -+#: ../lib/af.c:182 ../lib/hw.c:185 - msgid "AMPR ROSE" - msgstr "" - --#: ../lib/af.c:185 ../lib/hw.c:168 -+#: ../lib/af.c:185 ../lib/hw.c:173 - msgid "Ash" - msgstr "" - - #: ../lib/af.c:243 -+#, c-format - msgid "Please don't supply more than one address family.\n" - msgstr "" - - #: ../lib/af.c:304 -+#, c-format - msgid "Too much address family arguments.\n" - msgstr "" - -@@ -1694,11 +2114,12 @@ - msgstr "" - - #: ../lib/ash.c:81 -+#, c-format - msgid "Malformed Ash address" - msgstr "" - - #: ../lib/ax25.c:75 ../lib/ddp.c:50 ../lib/econet.c:52 ../lib/inet.c:244 --#: ../lib/inet.c:259 ../lib/inet6.c:129 ../lib/ipx.c:81 ../lib/netrom.c:78 -+#: ../lib/inet.c:259 ../lib/inet6.c:145 ../lib/ipx.c:81 ../lib/netrom.c:78 - #: ../lib/rose.c:71 ../lib/unix.c:56 ../lib/unix.c:76 - msgid "[NONE SET]" - msgstr "" -@@ -1712,22 +2133,21 @@ - msgstr "" - - #: ../lib/ax25_gr.c:47 -+#, c-format - msgid "AX.25 not configured in this system.\n" - msgstr "" - - #: ../lib/ax25_gr.c:50 -+#, c-format - msgid "Kernel AX.25 routing table\n" - msgstr "" - - #. xxx - #: ../lib/ax25_gr.c:51 ../lib/rose_gr.c:55 -+#, c-format - msgid "Destination Iface Use\n" - msgstr "" - --#: ../lib/ddp_gr.c:21 --msgid "Routing table for `ddp' not yet supported.\n" --msgstr "" -- - #: ../lib/ether.c:74 ../lib/ether.c:91 - #, c-format - msgid "in_ether(%s): invalid ether address!\n" -@@ -1783,225 +2203,260 @@ - msgid "in_hippi(%s): trailing junk!\n" - msgstr "" - --#: ../lib/hw.c:155 -+#: ../lib/hw.c:160 - msgid "Local Loopback" - msgstr "" - --#: ../lib/hw.c:158 -+#: ../lib/hw.c:163 - msgid "Serial Line IP" - msgstr "" - --#: ../lib/hw.c:159 -+#: ../lib/hw.c:164 - msgid "VJ Serial Line IP" - msgstr "" - --#: ../lib/hw.c:160 -+#: ../lib/hw.c:165 - msgid "6-bit Serial Line IP" - msgstr "" - --#: ../lib/hw.c:161 -+#: ../lib/hw.c:166 - msgid "VJ 6-bit Serial Line IP" - msgstr "" - --#: ../lib/hw.c:162 -+#: ../lib/hw.c:167 - msgid "Adaptive Serial Line IP" - msgstr "" - --#: ../lib/hw.c:165 -+#: ../lib/hw.c:170 - msgid "Ethernet" - msgstr "" - --#: ../lib/hw.c:171 -+#: ../lib/hw.c:176 - msgid "Fiber Distributed Data Interface" - msgstr "" - --#: ../lib/hw.c:174 -+#: ../lib/hw.c:179 - msgid "HIPPI" - msgstr "" - --#: ../lib/hw.c:186 -+#: ../lib/hw.c:191 - msgid "generic X.25" - msgstr "" - --#: ../lib/hw.c:189 -+#: ../lib/hw.c:194 - msgid "IPIP Tunnel" - msgstr "" - --#: ../lib/hw.c:192 -+#: ../lib/hw.c:197 - msgid "Point-to-Point Protocol" - msgstr "" - --#: ../lib/hw.c:195 -+#: ../lib/hw.c:200 - msgid "(Cisco)-HDLC" - msgstr "" - --#: ../lib/hw.c:196 -+#: ../lib/hw.c:201 - msgid "LAPB" - msgstr "" - --#: ../lib/hw.c:199 -+#: ../lib/hw.c:204 - msgid "ARCnet" - msgstr "" - --#: ../lib/hw.c:202 -+#: ../lib/hw.c:207 - msgid "Frame Relay DLCI" - msgstr "" - --#: ../lib/hw.c:203 -+#: ../lib/hw.c:208 - msgid "Frame Relay Access Device" - msgstr "" - --#: ../lib/hw.c:206 -+#: ../lib/hw.c:211 - msgid "IPv6-in-IPv4" - msgstr "" - --#: ../lib/hw.c:209 -+#: ../lib/hw.c:214 - msgid "IrLAP" - msgstr "" - --#: ../lib/hw.c:212 -+#: ../lib/hw.c:217 - msgid "16/4 Mbps Token Ring" - msgstr "" - --#: ../lib/hw.c:214 -+#: ../lib/hw.c:219 - msgid "16/4 Mbps Token Ring (New)" - msgstr "" - --#: ../lib/inet.c:153 ../lib/inet6.c:79 -+#: ../lib/hw.c:226 -+msgid "Generic EUI-64" -+msgstr "" -+ -+#: ../lib/inet.c:153 ../lib/inet6.c:94 - #, c-format - msgid "rresolve: unsupport address family %d !\n" - msgstr "" - --#: ../lib/inet6.c:131 -+#: ../lib/inet6.c:147 - msgid "[UNKNOWN]" - msgstr "" - - #: ../lib/inet6_gr.c:71 -+#, c-format - msgid "INET6 (IPv6) not configured in this system.\n" - msgstr "" - --#: ../lib/inet6_gr.c:74 -+#: ../lib/inet6_gr.c:76 -+#, c-format -+msgid "Kernel IPv6 routing cache\n" -+msgstr "" -+ -+#: ../lib/inet6_gr.c:78 -+#, c-format - msgid "Kernel IPv6 routing table\n" - msgstr "" - --#: ../lib/inet6_gr.c:76 -+#: ../lib/inet6_gr.c:80 -+#, c-format - msgid "" --"Destination Next Hop " --" Flags Metric Ref Use Iface\n" -+"Destination Next Hop Flag Met Ref Use " -+"If\n" - msgstr "" - --#: ../lib/inet6_gr.c:150 -+#: ../lib/inet6_gr.c:174 -+#, c-format - msgid "Kernel IPv6 Neighbour Cache\n" - msgstr "" - --#: ../lib/inet6_gr.c:153 -+#: ../lib/inet6_gr.c:177 -+#, c-format - msgid "" - "Neighbour HW Address Iface Flags " - "Ref State\n" - msgstr "" - --#: ../lib/inet6_gr.c:157 -+#: ../lib/inet6_gr.c:181 -+#, c-format - msgid "" - "Neighbour HW Address Iface Flags " - "Ref State Stale(sec) Delete(sec)\n" - msgstr "" - - #: ../lib/inet6_sr.c:46 -+#, c-format - msgid "Usage: inet6_route [-vF] del Target\n" - msgstr "" - - #: ../lib/inet6_sr.c:47 -+#, c-format - msgid " inet6_route [-vF] add Target [gw Gw] [metric M] [[dev] If]\n" - msgstr "" - - #: ../lib/inet6_sr.c:48 -+#, c-format - msgid " inet6_route [-FC] flush NOT supported\n" - msgstr "" - - #: ../lib/inet6_sr.c:188 -+#, c-format - msgid "Flushing `inet6' routing table not supported\n" - msgstr "" - - #: ../lib/inet_gr.c:50 ../lib/inet_gr.c:220 -+#, c-format - msgid "INET (IPv4) not configured in this system.\n" - msgstr "" - - #: ../lib/inet_gr.c:53 -+#, c-format - msgid "Kernel IP routing table\n" - msgstr "" - - #: ../lib/inet_gr.c:56 -+#, c-format - msgid "" - "Destination Gateway Genmask Flags Metric Ref Use " - "Iface\n" - msgstr "" - - #: ../lib/inet_gr.c:59 -+#, c-format - msgid "" - "Destination Gateway Genmask Flags MSS Window irtt " - "Iface\n" - msgstr "" - - #: ../lib/inet_gr.c:62 -+#, c-format - msgid "" - "Destination Gateway Genmask Flags Metric Ref Use " - "Iface MSS Window irtt\n" - msgstr "" - - #: ../lib/inet_gr.c:237 -+#, c-format - msgid "Kernel IP routing cache\n" - msgstr "" - - #: ../lib/inet_gr.c:258 -+#, c-format - msgid "" - "Source Destination Gateway Flags Metric Ref Use " - "Iface\n" - msgstr "" - - #: ../lib/inet_gr.c:261 -+#, c-format - msgid "" - "Source Destination Gateway Flags MSS Window irtt " - "Iface\n" - msgstr "" - - #: ../lib/inet_gr.c:266 -+#, c-format - msgid "" - "Source Destination Gateway Flags Metric Ref Use " - "Iface MSS Window irtt HH Arp\n" - msgstr "" - - #: ../lib/inet_gr.c:290 -+#, c-format - msgid "" - "Source Destination Gateway Flags Metric Ref Use " - "Iface MSS Window irtt TOS HHRef HHUptod SpecDst\n" - msgstr "" - --#: ../lib/inet_sr.c:50 -+#: ../lib/inet_sr.c:51 -+#, c-format - msgid "" - "Usage: inet_route [-vF] del {-host|-net} Target[/prefix] [gw Gw] [metric M] " - "[[dev] If]\n" - msgstr "" - --#: ../lib/inet_sr.c:51 -+#: ../lib/inet_sr.c:52 -+#, c-format - msgid "" - " inet_route [-vF] add {-host|-net} Target[/prefix] [gw Gw] [metric M]\n" - msgstr "" - --#: ../lib/inet_sr.c:52 -+#: ../lib/inet_sr.c:53 -+#, c-format - msgid "" - " [netmask N] [mss Mss] [window W] [irtt I]\n" - msgstr "" - --#: ../lib/inet_sr.c:53 -+#: ../lib/inet_sr.c:54 -+#, c-format - msgid " [mod] [dyn] [reinstate] [[dev] If]\n" - msgstr "" - --#: ../lib/inet_sr.c:54 -+#: ../lib/inet_sr.c:55 -+#, c-format - msgid "" - " inet_route [-vF] add {-host|-net} Target[/prefix] [metric M] reject\n" - msgstr "" - --#: ../lib/inet_sr.c:55 -+#: ../lib/inet_sr.c:56 -+#, c-format - msgid " inet_route [-FC] flush NOT supported\n" - msgstr "" - -@@ -2011,14 +2466,17 @@ - msgstr "" - - #: ../lib/inet_sr.c:174 -+#, c-format - msgid "route: Invalid MSS/MTU.\n" - msgstr "" - - #: ../lib/inet_sr.c:187 -+#, c-format - msgid "route: Invalid window.\n" - msgstr "" - - #: ../lib/inet_sr.c:203 -+#, c-format - msgid "route: Invalid initial rtt.\n" - msgstr "" - -@@ -2033,73 +2491,90 @@ - msgstr "" - - #: ../lib/inet_sr.c:270 -+#, c-format - msgid "route: netmask doesn't match route address\n" - msgstr "" - - #: ../lib/inet_sr.c:306 -+#, c-format - msgid "Flushing `inet' routing table not supported\n" - msgstr "" - - #: ../lib/inet_sr.c:310 -+#, c-format - msgid "Modifying `inet' routing cache not supported\n" - msgstr "" - - #: ../lib/ipx_gr.c:52 -+#, c-format - msgid "IPX not configured in this system.\n" - msgstr "" - - #: ../lib/ipx_gr.c:56 -+#, c-format - msgid "Kernel IPX routing table\n" - msgstr "" - - #. xxx - #: ../lib/ipx_gr.c:57 -+#, c-format - msgid "Destination Router Net Router Node\n" - msgstr "" - - #: ../lib/ipx_sr.c:33 -+#, c-format - msgid "IPX: this needs to be written\n" - msgstr "" - - #: ../lib/masq_info.c:198 -+#, c-format - msgid "IP masquerading entries\n" - msgstr "" - - #: ../lib/masq_info.c:201 -+#, c-format - msgid "prot expire source destination ports\n" - msgstr "" - - #: ../lib/masq_info.c:204 -+#, c-format - msgid "" --"prot expire initseq delta prevd source destination " --" ports\n" -+"prot expire initseq delta prevd source " -+"destination ports\n" - msgstr "" - - #: ../lib/netrom_gr.c:48 -+#, c-format - msgid "NET/ROM not configured in this system.\n" - msgstr "" - - #: ../lib/netrom_gr.c:51 -+#, c-format - msgid "Kernel NET/ROM routing table\n" - msgstr "" - - #: ../lib/netrom_gr.c:52 -+#, c-format - msgid "Destination Mnemonic Quality Neighbour Iface\n" - msgstr "" - - #: ../lib/netrom_sr.c:34 -+#, c-format - msgid "netrom usage\n" - msgstr "" - - #: ../lib/netrom_sr.c:44 -+#, c-format - msgid "NET/ROM: this needs to be written\n" - msgstr "" - - #: ../lib/ppp.c:44 -+#, c-format - msgid "You cannot start PPP with this program.\n" - msgstr "" - - #: ../lib/ppp_ac.c:38 -+#, c-format - msgid "Sorry, use pppd!\n" - msgstr "" - -@@ -2108,287 +2583,314 @@ - msgstr "" - - #: ../lib/rose_gr.c:51 -+#, c-format - msgid "ROSE not configured in this system.\n" - msgstr "" - - #: ../lib/rose_gr.c:54 -+#, c-format - msgid "Kernel ROSE routing table\n" - msgstr "" - --#: ../lib/tr.c:70 ../lib/tr.c:85 -+#: ../lib/tr.c:86 ../lib/tr.c:101 - #, c-format - msgid "in_tr(%s): invalid token ring address!\n" - msgstr "" - --#: ../lib/tr.c:97 -+#: ../lib/tr.c:113 - #, c-format - msgid "in_tr(%s): trailing : ignored!\n" - msgstr "" - --#: ../lib/tr.c:109 -+#: ../lib/tr.c:125 - #, c-format - msgid "in_tr(%s): trailing junk!\n" - msgstr "" - --#: ../lib/interface.c:164 -+#: ../lib/interface.c:174 - #, c-format - msgid "warning: no inet socket available: %s\n" - msgstr "" - --#: ../lib/interface.c:316 -+#: ../lib/interface.c:323 - #, c-format - msgid "Warning: cannot open %s (%s). Limited output.\n" - msgstr "" - - #. Give better error message for this case. --#: ../lib/interface.c:556 -+#: ../lib/interface.c:570 - msgid "Device not found" - msgstr "" - --#: ../lib/interface.c:560 -+#: ../lib/interface.c:574 - #, c-format - msgid "%s: error fetching interface information: %s\n" - msgstr "" - --#: ../lib/interface.c:593 -+#: ../lib/interface.c:607 - msgid " - no statistics available -" - msgstr "" - --#: ../lib/interface.c:597 -+#: ../lib/interface.c:611 -+#, c-format - msgid "[NO FLAGS]" - msgstr "" - --#: ../lib/interface.c:673 -+#: ../lib/interface.c:687 - #, c-format - msgid "%-9.9s Link encap:%s " - msgstr "" - --#: ../lib/interface.c:678 -+#: ../lib/interface.c:692 - #, c-format - msgid "HWaddr %s " - msgstr "" - --#: ../lib/interface.c:681 -+#: ../lib/interface.c:695 - #, c-format - msgid "Media:%s" - msgstr "" - --#: ../lib/interface.c:683 -+#: ../lib/interface.c:697 -+#, c-format - msgid "(auto)" - msgstr "" - --#: ../lib/interface.c:690 -+#: ../lib/interface.c:704 - #, c-format - msgid " %s addr:%s " - msgstr "" - --#: ../lib/interface.c:693 -+#: ../lib/interface.c:707 - #, c-format - msgid " P-t-P:%s " - msgstr "" - --#: ../lib/interface.c:696 -+#: ../lib/interface.c:710 - #, c-format - msgid " Bcast:%s " - msgstr "" - --#: ../lib/interface.c:698 -+#: ../lib/interface.c:712 - #, c-format - msgid " Mask:%s\n" - msgstr "" - --#: ../lib/interface.c:715 -+#: ../lib/interface.c:729 - #, c-format - msgid " inet6 addr: %s/%d" - msgstr "" - --#: ../lib/interface.c:717 -+#: ../lib/interface.c:731 -+#, c-format - msgid " Scope:" - msgstr "" - --#: ../lib/interface.c:720 -+#: ../lib/interface.c:734 -+#, c-format - msgid "Global" - msgstr "" - --#: ../lib/interface.c:723 -+#: ../lib/interface.c:737 -+#, c-format - msgid "Link" - msgstr "" - --#: ../lib/interface.c:726 -+#: ../lib/interface.c:740 -+#, c-format - msgid "Site" - msgstr "" - --#: ../lib/interface.c:729 -+#: ../lib/interface.c:743 -+#, c-format - msgid "Compat" - msgstr "" - --#: ../lib/interface.c:732 -+#: ../lib/interface.c:746 -+#, c-format - msgid "Host" - msgstr "" - --#: ../lib/interface.c:735 -+#: ../lib/interface.c:749 -+#, c-format - msgid "Unknown" - msgstr "" - --#: ../lib/interface.c:750 -+#: ../lib/interface.c:764 - #, c-format - msgid " IPX/Ethernet II addr:%s\n" - msgstr "" - --#: ../lib/interface.c:753 -+#: ../lib/interface.c:767 - #, c-format - msgid " IPX/Ethernet SNAP addr:%s\n" - msgstr "" - --#: ../lib/interface.c:756 -+#: ../lib/interface.c:770 - #, c-format - msgid " IPX/Ethernet 802.2 addr:%s\n" - msgstr "" - --#: ../lib/interface.c:759 -+#: ../lib/interface.c:773 - #, c-format - msgid " IPX/Ethernet 802.3 addr:%s\n" - msgstr "" - --#: ../lib/interface.c:769 -+#: ../lib/interface.c:783 - #, c-format - msgid " EtherTalk Phase 2 addr:%s\n" - msgstr "" - --#: ../lib/interface.c:778 -+#: ../lib/interface.c:792 - #, c-format - msgid " econet addr:%s\n" - msgstr "" - --#: ../lib/interface.c:785 -+#: ../lib/interface.c:799 -+#, c-format - msgid "[NO FLAGS] " - msgstr "" - --#: ../lib/interface.c:787 -+#: ../lib/interface.c:801 -+#, c-format - msgid "UP " - msgstr "" - --#: ../lib/interface.c:789 -+#: ../lib/interface.c:803 -+#, c-format - msgid "BROADCAST " - msgstr "" - --#: ../lib/interface.c:791 -+#: ../lib/interface.c:805 -+#, c-format - msgid "DEBUG " - msgstr "" - --#: ../lib/interface.c:793 -+#: ../lib/interface.c:807 -+#, c-format - msgid "LOOPBACK " - msgstr "" - --#: ../lib/interface.c:795 -+#: ../lib/interface.c:809 -+#, c-format - msgid "POINTOPOINT " - msgstr "" - --#: ../lib/interface.c:797 -+#: ../lib/interface.c:811 -+#, c-format - msgid "NOTRAILERS " - msgstr "" - --#: ../lib/interface.c:799 -+#: ../lib/interface.c:813 -+#, c-format - msgid "RUNNING " - msgstr "" - --#: ../lib/interface.c:801 -+#: ../lib/interface.c:815 -+#, c-format - msgid "NOARP " - msgstr "" - --#: ../lib/interface.c:803 -+#: ../lib/interface.c:817 -+#, c-format - msgid "PROMISC " - msgstr "" - --#: ../lib/interface.c:805 -+#: ../lib/interface.c:819 -+#, c-format - msgid "ALLMULTI " - msgstr "" - --#: ../lib/interface.c:807 -+#: ../lib/interface.c:821 -+#, c-format - msgid "SLAVE " - msgstr "" - --#: ../lib/interface.c:809 -+#: ../lib/interface.c:823 -+#, c-format - msgid "MASTER " - msgstr "" - --#: ../lib/interface.c:811 -+#: ../lib/interface.c:825 -+#, c-format - msgid "MULTICAST " - msgstr "" - --#: ../lib/interface.c:814 -+#: ../lib/interface.c:828 -+#, c-format - msgid "DYNAMIC " - msgstr "" - - #. DONT FORGET TO ADD THE FLAGS IN ife_print_short --#: ../lib/interface.c:817 -+#: ../lib/interface.c:831 - #, c-format - msgid " MTU:%d Metric:%d" - msgstr "" - --#: ../lib/interface.c:821 -+#: ../lib/interface.c:835 - #, c-format - msgid " Outfill:%d Keepalive:%d" - msgstr "" - --#: ../lib/interface.c:835 -+#: ../lib/interface.c:849 - #, c-format - msgid "RX packets:%llu errors:%lu dropped:%lu overruns:%lu frame:%lu\n" - msgstr "" - --#: ../lib/interface.c:840 -+#: ../lib/interface.c:854 - #, c-format - msgid " compressed:%lu\n" - msgstr "" - --#: ../lib/interface.c:852 -+#: ../lib/interface.c:894 - #, c-format - msgid "TX packets:%llu errors:%lu dropped:%lu overruns:%lu carrier:%lu\n" - msgstr "" - --#: ../lib/interface.c:856 -+#: ../lib/interface.c:898 - #, c-format - msgid " collisions:%lu " - msgstr "" - --#: ../lib/interface.c:858 -+#: ../lib/interface.c:900 - #, c-format - msgid "compressed:%lu " - msgstr "" - --#: ../lib/interface.c:860 -+#: ../lib/interface.c:902 - #, c-format - msgid "txqueuelen:%d " - msgstr "" - --#: ../lib/interface.c:862 -+#: ../lib/interface.c:904 - #, c-format - msgid "RX bytes:%llu (%lu.%lu %s) TX bytes:%llu (%lu.%lu %s)\n" - msgstr "" - --#: ../lib/interface.c:873 -+#: ../lib/interface.c:915 - #, c-format - msgid "Interrupt:%d " - msgstr "" - - #. Only print devices using it for - #. I/O maps --#: ../lib/interface.c:876 -+#: ../lib/interface.c:918 - #, c-format - msgid "Base address:0x%x " - msgstr "" - --#: ../lib/interface.c:878 -+#: ../lib/interface.c:920 - #, c-format - msgid "Memory:%lx-%lx " - msgstr "" - --#: ../lib/interface.c:881 -+#: ../lib/interface.c:923 - #, c-format - msgid "DMA chan:%x " - msgstr "" - - #: ../lib/sockets.c:63 -+#, c-format - msgid "No usable address families found.\n" - msgstr "" - -@@ -2413,14 +2915,17 @@ - msgstr "" - - #: ../ipmaddr.c:61 -+#, c-format - msgid "Usage: ipmaddr [ add | del ] MULTIADDR dev STRING\n" - msgstr "" - - #: ../ipmaddr.c:62 -+#, c-format - msgid " ipmaddr show [ dev STRING ] [ ipv4 | ipv6 | link | all ]\n" - msgstr "" - - #: ../ipmaddr.c:63 -+#, c-format - msgid " ipmaddr -V | -version\n" - msgstr "" - -@@ -2449,6 +2954,7 @@ - msgstr "" - - #: ../slattach.c:192 -+#, c-format - msgid "slattach: cannot write PID file\n" - msgstr "" - -@@ -2468,18 +2974,22 @@ - msgstr "" - - #: ../slattach.c:468 -+#, c-format - msgid "slattach: tty name too long\n" - msgstr "" - - #: ../slattach.c:498 -+#, c-format - msgid "slattach: tty_open: cannot get current state!\n" - msgstr "" - - #: ../slattach.c:505 -+#, c-format - msgid "slattach: tty_open: cannot get current line disc!\n" - msgstr "" - - #: ../slattach.c:513 -+#, c-format - msgid "slattach: tty_open: cannot set RAW mode!\n" - msgstr "" - -@@ -2489,6 +2999,7 @@ - msgstr "" - - #: ../slattach.c:530 -+#, c-format - msgid "slattach: tty_open: cannot set 8N1 mode!\n" - msgstr "" - ---- net-tools-1.60/po/pt_BR.po 2000-02-20 23:47:06.000000000 +0200 -+++ net-tools/po/pt_BR.po 2006-12-15 01:36:24.000000000 +0200 -@@ -2,7 +2,7 @@ - # Copyright (C) 2000 Free Software Foundation, Inc. - # Arnaldo Carvalho de Melo , 2000. - # --# $Id$ -+# $Id$ - # Brazilian portuguese translation for net-tools 1.54 - # Copyright (C) 1998, 1999 Free Software Foundation, Inc. - # Arnaldo Carvalho de Melo , 1998-2000 -@@ -2361,17 +2361,15 @@ - msgid "Warning: cannot open %s (%s). Limited output.\n" - msgstr "Atenção: não foi possível abrir %s (%s). Saída limitada.\n" - --#. Give better error message for this case. -+#. better translation? - #: ../lib/interface.c:504 - msgid "Device not found" --msgstr "%s: dispositivo não encontrado" -+msgstr "dispositivo não encontrado" - - #: ../lib/interface.c:508 - #, c-format - msgid "%s: error fetching interface information: %s\n" --msgstr "" --"%s: erro obtendo informações da interface: %s\n" --"\n" -+msgstr "%s: erro obtendo informações da interface: %s\n" - - #: ../lib/sockets.c:59 - msgid "No usable address families found.\n" ---- net-tools-1.60/README 2001-04-15 16:34:43.000000000 +0200 -+++ net-tools/README 2005-08-26 19:01:31.000000000 +0300 -@@ -10,7 +10,7 @@ - subsystem of the Linux kernel. This includes arp, hostname, ifconfig, - netstat, rarp and route. Additionally, this package contains - utilities relating to particular network hardware types (plipconfig, --slattach) and advanced aspects of IP configuration (iptunnel, -+slattach, mii-tool) and advanced aspects of IP configuration (iptunnel, - ipmaddr). - - Please include the output of "program --version" when reporting bugs. -@@ -24,15 +24,21 @@ - - INSTALLING Installation instructions. - -- COPYING Your free copy of the GNU Public License. -+ COPYING Your free copy of the GNU General Public License. - - TODO Some things that need to be done. - -+The Homepage (including CVS repository, release downloads and a form to -+request enhancements) is hosted by BerliOS Developer. Please consider to -+join the project if you want to contribute: -+ -+ http://net-tools.berlios.de/ -+ - - Notes - ----- - --This is net-tools 1.60. -+This is net-tools 1.6x. - - You need kernel 2.0 or later to use these programs. These programs - should compile cleanly with both glibc (version 2.0 or 2.1) and libc5, ---- net-tools-1.60/route.c 2001-04-15 16:41:17.000000000 +0200 -+++ net-tools/route.c 2002-07-30 08:24:20.000000000 +0300 -@@ -2,7 +2,7 @@ - * route This file contains an implementation of the command - * that manages the IP routing table in the kernel. - * -- * Version: $Id$ -+ * Version: $Id$ - * - * Maintainer: Bernd 'eckes' Eckenfels, - * -@@ -142,7 +142,7 @@ - } - - /* Fetch the command-line arguments. */ -- while ((i = getopt_long(argc, argv, "A:eCFhnNVv?", longopts, &lop)) != EOF) -+ while ((i = getopt_long(argc, argv, "A:eCFhnN64Vv?", longopts, &lop)) != EOF) - switch (i) { - case -1: - break; -@@ -176,6 +176,14 @@ - if ((i = aftrans_opt(optarg))) - exit(i); - break; -+ case '6': -+ if ((i = aftrans_opt("inet6"))) -+ exit(i); -+ break; -+ case '4': -+ if ((i = aftrans_opt("inet"))) -+ exit(i); -+ break; - case 'V': - version(); - case 'h': ---- net-tools-1.60/slattach.c 2000-10-28 12:59:41.000000000 +0200 -+++ net-tools/slattach.c 2005-12-04 07:15:36.000000000 +0200 -@@ -73,7 +73,7 @@ - - - const char *Release = RELEASE, -- *Version = "@(#) slattach 1.21 (1999-11-21)", -+ *Version = "$Id$", - *Signature = "net-tools, Fred N. van Kempen et al."; - - -@@ -115,7 +115,7 @@ - int opt_k = 0; /* "keepalive" value */ - #endif - int opt_l = 0; /* "lock it" flag */ --int opt_L = 0; /* clocal flag */ -+int opt_L = 0; /* 3-wire mode flag */ - int opt_m = 0; /* "set RAW mode" flag */ - int opt_n = 0; /* "set No Mesg" flag */ - #ifdef SIOCSOUTFILL -@@ -342,9 +342,11 @@ - tty->c_oflag = (0); /* output flags */ - tty->c_lflag = (0); /* local flags */ - speed = (tty->c_cflag & CBAUD); /* save current speed */ -- tty->c_cflag = (CRTSCTS | HUPCL | CREAD); /* UART flags */ -+ tty->c_cflag = (HUPCL | CREAD); /* UART flags */ - if (opt_L) - tty->c_cflag |= CLOCAL; -+ else -+ tty->c_cflag |= CRTSCTS; - tty->c_cflag |= speed; /* restore speed */ - return(0); - } ---- net-tools-1.60/statistics.c 2001-02-02 20:01:23.000000000 +0200 -+++ net-tools/statistics.c 2003-02-12 05:30:57.000000000 +0200 -@@ -1,6 +1,6 @@ - /* - * Copyright 1997,1999,2000 Andi Kleen. Subject to the GPL. -- * $Id$ -+ * $Id$ - * 19980630 - i18n - Arnaldo Carvalho de Melo - * 19981113 - i18n fixes - Arnaldo Carvalho de Melo - * 19990101 - added net/netstat, -t, -u, -w supprt - Bernd Eckenfels -@@ -172,19 +172,59 @@ - { "DelayedACKLost", N_("Quick ack mode was activated %u times"), opt_number }, - { "ListenOverflows", N_("%u times the listen queue of a socket overflowed"), - opt_number }, -- { "ListenDrops", N_("%u SYNs to LISTEN sockets ignored"), opt_number }, -+ { "ListenDrops", N_("%u SYNs to LISTEN sockets dropped"), opt_number }, - { "TCPPrequeued", N_("%u packets directly queued to recvmsg prequeue."), - opt_number }, -- { "TCPDirectCopyFromBacklog", N_("%u packets directly received" -- " from backlog"), opt_number }, -- { "TCPDirectCopyFromPrequeue", N_("%u packets directly received" -- " from prequeue"), opt_number }, -+ { "TCPDirectCopyFromBacklog", N_("%u bytes directly in process context from backlog"), opt_number }, -+ { "TCPDirectCopyFromPrequeue", N_("%u bytes directly received in process context from prequeue"), -+ opt_number }, - { "TCPPrequeueDropped", N_("%u packets dropped from prequeue"), opt_number }, -- { "TCPHPHits", N_("%u packets header predicted"), number }, -+ { "TCPHPHits", N_("%u packet headers predicted"), number }, - { "TCPHPHitsToUser", N_("%u packets header predicted and " - "directly queued to user"), opt_number }, - { "SockMallocOOM", N_("Ran %u times out of system memory during " - "packet sending"), opt_number }, -+ { "TCPPureAcks", N_("%u acknowledgments not containing data payload received"), opt_number }, -+ { "TCPHPAcks", N_("%u predicted acknowledgments"), opt_number }, -+ { "TCPRenoRecovery", N_("%u times recovered from packet loss due to fast retransmit"), opt_number }, -+ { "TCPSackRecovery", N_("%u times recovered from packet loss by selective acknowledgements"), opt_number }, -+ { "TCPSACKReneging", N_("%u bad SACK blocks received"), opt_number }, -+ { "TCPFACKReorder", N_("Detected reordering %u times using FACK"), opt_number }, -+ { "TCPSACKReorder", N_("Detected reordering %u times using SACK"), opt_number }, -+ { "TCPTSReorder", N_("Detected reordering %u times using time stamp"), opt_number }, -+ { "TCPRenoReorder", N_("Detected reordering %u times using reno fast retransmit"), opt_number }, -+ { "TCPFullUndo", N_("%u congestion windows fully recovered without slow start"), opt_number }, -+ { "TCPPartialUndo", N_("%u congestion windows partially recovered using Hoe heuristic"), opt_number }, -+ { "TCPDSackUndo", N_("%u congestion window recovered without slow start using DSACK"), opt_number }, -+ { "TCPLossUndo", N_("%u congestion windows recovered without slow start after partial ack"), opt_number }, -+ { "TCPLostRetransmits", N_("%u retransmits lost"), opt_number }, -+ { "TCPRenoFailures", N_("%u timeouts after reno fast retransmit"), opt_number }, -+ { "TCPSackFailures", N_("%u timeouts after SACK recovery"), opt_number }, -+ { "TCPLossFailures", N_("%u timeouts in loss state"), opt_number }, -+ { "TCPFastRetrans", N_("%u fast retransmits"), opt_number }, -+ { "TCPForwardRetrans", N_("%u forward retransmits"), opt_number }, -+ { "TCPSlowStartRetrans", N_("%u retransmits in slow start"), opt_number }, -+ { "TCPTimeouts", N_("%u other TCP timeouts"), opt_number }, -+ { "TCPRenoRecoveryFailed", N_("%u reno fast retransmits failed"), opt_number }, -+ { "TCPSackRecoveryFail", N_("%u SACK retransmits failed"), opt_number }, -+ { "TCPSchedulerFailed", N_("%u times receiver scheduled too late for direct processing"), opt_number }, -+ { "TCPRcvCollapsed", N_("%u packets collapsed in receive queue due to low socket buffer"), opt_number }, -+ { "TCPDSACKOldSent", N_("%u DSACKs sent for old packets"), opt_number }, -+ { "TCPDSACKOfoSent", N_("%u DSACKs sent for out of order packets"), opt_number }, -+ { "TCPDSACKRecv", N_("%u DSACKs received"), opt_number }, -+ { "TCPDSACKOfoRecv", N_("%u DSACKs for out of order packets received"), opt_number }, -+ { "TCPAbortOnSyn", N_("%u connections reset due to unexpected SYN"), opt_number }, -+ { "TCPAbortOnData", N_("%u connections reset due to unexpected data"), opt_number }, -+ { "TCPAbortOnClose", N_("%u connections reset due to early user close"), opt_number }, -+ { "TCPAbortOnMemory", N_("%u connections aborted due to memory pressure"), opt_number }, -+ { "TCPAbortOnTimeout", N_("%u connections aborted due to timeout"), opt_number }, -+ { "TCPAbortOnLinger", N_("%u connections aborted after user close in linger timeout"), opt_number }, -+ { "TCPAbortFailed", N_("%u times unabled to send RST due to no memory"), opt_number }, -+ { "TCPMemoryPressures", N_("TCP ran low on memory %u times"), opt_number }, -+ { "TCPLoss", N_("%u TCP data loss events"), opt_number }, -+ { "TCPDSACKUndo", N_("%u congestion windows recovered without slow start by DSACK"), -+ opt_number }, -+ { "TCPRenoRecoveryFail", N_("%u classic Reno fast retransmits failed"), opt_number }, - }; - - struct tabtab { -@@ -222,7 +262,8 @@ - ent = bsearch(&key, tab->tab, tab->size / sizeof(struct entry), - sizeof(struct entry), cmpentries); - if (!ent) { /* try our best */ -- printf("%*s%s: %d\n", states[state].indent, "", title, val); -+ if (val) -+ printf("%*s%s: %d\n", states[state].indent, "", title, val); - return; - } - type = ent->type; diff --git a/net-tools-netstat-stat.patch b/net-tools-netstat-stat.patch deleted file mode 100644 index c3b2d78..0000000 --- a/net-tools-netstat-stat.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- net-tools-1.60/netstat.c~ 2007-09-11 22:30:38.000000000 +0300 -+++ net-tools-1.60/netstat.c 2007-09-11 22:31:36.868379252 +0300 -@@ -85,6 +85,7 @@ - #include - #include - #include -+#include - - #include "net-support.h" - #include "pathnames.h" -- 2.44.0