]> git.pld-linux.org Git - packages/net-tools.git/commitdiff
- drop obsolete files
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Sun, 5 Jul 2009 17:26:10 +0000 (17:26 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    net-tools-branch.diff -> 1.4
    net-tools-netstat-stat.patch -> 1.2

net-tools-branch.diff [deleted file]
net-tools-netstat-stat.patch [deleted file]

diff --git a/net-tools-branch.diff b/net-tools-branch.diff
deleted file mode 100644 (file)
index cc4e299..0000000
+++ /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, <net-tools@lina.inka.de>
-  *
-@@ -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", "*", _("<from_interface>"));
-       else
-           printf("%-8.8s%-20.20s", "", _("(incomplete)"));
-     } else {
-@@ -486,7 +496,7 @@
-     if (!(arp_flags & ATF_COM)) {
-       if (arp_flags & ATF_PUBL)
--          printf("* ");
-+          printf("<from_interface> ");
-       else
-           printf(_("<incomplete> "));
-     } 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]  [<HW>] [-i <if>] [-a] [<hostname>]             <-Display ARP cache\n"));
--    fprintf(stderr, _("  arp [-v]          [-i <if>] -d  <hostname> [pub][nopub]    <-Delete ARP entry\n"));
--    fprintf(stderr, _("  arp [-vnD] [<HW>] [-i <if>] -f  [<filename>]              <-Add entry from file\n"));
--    fprintf(stderr, _("  arp [-v]   [<HW>] [-i <if>] -s  <hostname> <hwaddr> [temp][nopub] <-Add entry\n"));
--    fprintf(stderr, _("  arp [-v]   [<HW>] [-i <if>] -s  <hostname> <hwaddr> [netmask <nm>] pub  <-''-\n"));
--    fprintf(stderr, _("  arp [-v]   [<HW>] [-i <if>] -Ds <hostname> <if> [netmask <nm>] pub      <-''-\n\n"));
-+    fprintf(stderr, _("  arp [-v]          [-i <if>] -d  <host> [pub]               <-Delete ARP entry\n"));
-+    fprintf(stderr, _("  arp [-vnD] [<HW>] [-i <if>] -f  [<filename>]            <-Add entry from file\n"));
-+    fprintf(stderr, _("  arp [-v]   [<HW>] [-i <if>] -s  <host> <hwaddr> [temp]            <-Add entry\n"));
-+    fprintf(stderr, _("  arp [-v]   [<HW>] [-i <if>] -Ds <host> <if> [netmask <nm>] 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 <tobias@et-inf.fho-emden.de>
-  *
-  * 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 <stdio.h>
-+#include <stdlib.h>
- #include <unistd.h>
-+#include <stdlib.h>
- #include <getopt.h>
- #include <string.h>
- #include <netdb.h>
-@@ -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, <waltje@uwalt.nl.mugnet.org>
-  *              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] <interface> [[<AF>] <address>]\n"));
-+    fprintf(stderr, _("Usage:\n  ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>]\n"));
- #if HAVE_AFINET
-     fprintf(stderr, _("  [add <address>[/<prefixlen>]]\n"));
-     fprintf(stderr, _("  [del <address>[/<prefixlen>]]\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 <linux/sockios.h>
- /* 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 <ajax@firest0rm.org>
-+ *
-+ * 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, <waltje@uwalt.nl.mugnet.org>
-  *              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 <stodden@in.tum.de>
-+ *              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 <sys/types.h>
-+#include <sys/ioctl.h>
-+#include <sys/socket.h>
-+#include <net/if_arp.h>
-+#include <stdlib.h>
-+#include <stdio.h>
-+#include <ctype.h>
-+#include <errno.h>
-+#include <fcntl.h>
-+#include <string.h>
-+#include <termios.h>
-+#include <unistd.h>
-+#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 <net/if_arp.h>. 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, <net-tools@lina.inka.de>
-  *
-@@ -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, <waltje@uwalt.nl.mugnet.org>
-  *              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, <waltje@uwalt.nl.mugnet.org>
-  *              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 <string.h>
- #include <unistd.h>
- #include <ctype.h>
-+#include <string.h>
- #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 <dagb@cs.uit.no>
-  * Created at:    Wed Apr 21 09:03:09 1999
-  * Modified at:   Wed Apr 21 09:17:05 1999
-  * Modified by:   Dag Brattli <dagb@cs.uit.no>
-+ * Modified at:   Wed May  1 11:51:44 CEST 2002
-+ * Modified by:   Christoph Bartelmus <christoph@bartelmus.de>
-  * 
-  *     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 <ctype.h>
- #include <stdlib.h>
-+#include <string.h>
- #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)?aindex:bindex;
-+      int res = strncmp(a, b, complen);
-+
-+      if (res != 0)
-+              { free(a); free(b); return res; }
-+              
-+      if (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, <waltje@uwalt.nl.mugnet.org>
-  *              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, <waltje@uwalt.nl.mugnet.org>
- .br
-@@ -198,3 +225,5 @@
- Phil Blundell, <Philip.Blundell@pobox.com>
- .br
- Andi Kleen
-+.br
-+Bernd Eckenfels, <net-tools@lina.inka.de>
---- 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
--<dc6iq@insu1.etec.uni-karlsruhe.de> the man page basically
-+<dc6iq@insu1.etec.uni-karlsruhe.de>, the man page basically
- by Matt Welsh <mdw@tc.cornell.edu>. It was updated by
- Alan Cox <Alan.Cox@linux.org> 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 <unistd.h>
- #include <stdlib.h>
-@@ -46,16 +45,19 @@
- #include <sys/socket.h>
- #include <sys/ioctl.h>
- #include <net/if.h>
-+#include <linux/sockios.h>
-+
- #ifndef __GLIBC__
- #include <linux/if_arp.h>
- #include <linux/if_ether.h>
- #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<<i)) {
-@@ -192,6 +218,7 @@
-           if (best) break;
-       }
-     }
-+ out:
-     if (mask & (1<<5))
-       strcat(buf, " flow-control");
-     return buf;
-@@ -201,15 +228,15 @@
- {
-     char buf[100];
-     int i, mii_val[32];
--    int bmcr, bmsr, advert, lkpar;
-+    unsigned bmcr, bmsr, advert, lkpar, bmcr2, lpa2;
-     /* Some bits in the BMSR are latched, but we can't rely on being
-        the only reader, so only the current values are meaningful */
-     mdio_read(sock, MII_BMSR);
--    for (i = 0; i < ((verbose > 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, <dc6iq@insu1.etec.uni-karlsruhe.de>
-  *              Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org>
-@@ -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, _("  <Socket>={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom\n"));
--    fprintf(stderr, _("  <AF>=Use '-A <af>' or '--<af>'; default: %s\n"), DFLT_AF);
-+    fprintf(stderr, _("  <AF>=Use '-6|-4' or '-A <af>' or '--<af>'; 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 <ralf@gnu.org>
- 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 <Meelis.Roos@mail.ee>, 1999.
-+# Copyright (C) 1999-2001 Free Software Foundation, Inc.
-+# Meelis Roos <mroos@linux.ee>, 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 <mroos@linux.ee>\n"
- "Language-Team: Estonian <linux-ee@eenet.ee>\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 "<incomplete> "
- msgstr "<mittetäielik>"
--#: ../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]  [<HW>] [-i <if>] [-a] [<hostname>]             <-Display ARP "
-@@ -116,7 +115,7 @@
- "ARP cache vaatamine:\n"
- "  arp [-vn]  [<HW>] [-i <if>] [-a] [<hosti nimi>]\n"
--#: ../arp.c:614
-+#: ../arp.c:615
- msgid ""
- "  arp [-v]          [-i <if>] -d  <hostname> [pub][nopub]    <-Delete ARP "
- "entry\n"
-@@ -124,7 +123,7 @@
- "ARP kirje kustutamine:\n"
- "  arp [-v]          [-i <if>] -d  <hosti nimi> [pub] [nopub]\n"
--#: ../arp.c:615
-+#: ../arp.c:616
- msgid ""
- "  arp [-vnD] [<HW>] [-i <if>] -f  [<filename>]              <-Add entry from "
- "file\n"
-@@ -132,7 +131,7 @@
- "ARP kirjete lisamine failist:\n"
- "  arp [-vnD] [<HW>] [-i <if>] -f  [<failinimi>]\n"
--#: ../arp.c:616
-+#: ../arp.c:617
- msgid ""
- "  arp [-v]   [<HW>] [-i <if>] -s  <hostname> <hwaddr> [temp][nopub] <-Add "
- "entry\n"
-@@ -140,14 +139,14 @@
- "ARP kirje lisamine:\n"
- "  arp [-v]   [<HW>] [-i <if>] -s  <hosti nimi> <hwaddr> [temp] [nopub]\n"
--#: ../arp.c:617
-+#: ../arp.c:618
- msgid ""
- "  arp [-v]   [<HW>] [-i <if>] -s  <hostname> <hwaddr> [netmask <nm>] pub  "
- "<-''-\n"
- msgstr ""
- "  arp [-v]   [<HW>] [-i <if>] -s  <hosti nimi> <hwaddr> [netmask <nm>] pub\n"
--#: ../arp.c:618
-+#: ../arp.c:619
- msgid ""
- "  arp [-v]   [<HW>] [-i <if>] -Ds <hostname> <if> [netmask <nm>] pub      "
- "<-''-\n"
-@@ -156,7 +155,7 @@
- "  arp [-v]   [<HW>] [-i <if>] -Ds <hosti nimi> <if> [netmask <nm>] 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 <hwaddr> from given device\n"
- msgstr "        -D, --use-device         lugeda <hwaddr> 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 "  <HW>=Use '-H <hw>' to specify hardware address type. Default: %s\n"
- msgstr ""
- "  <HW>=kasutage '-H <hw>' 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] <interface> [[<AF>] <address>]\n"
-@@ -466,51 +465,51 @@
- "Kasutamine:\n"
- "  ifconfig [-a] [-i] [-v] [-s] <liides> [[<AF>] <aadress>]\n"
--#: ../ifconfig.c:181
-+#: ../ifconfig.c:179
- msgid "  [add <address>[/<prefixlen>]]\n"
- msgstr "  [add <aadress>[/<prefiksi pikkus>]]\n"
--#: ../ifconfig.c:182
-+#: ../ifconfig.c:180
- msgid "  [del <address>[/<prefixlen>]]\n"
- msgstr "  [del <aadress>[/<prefiksi pikkus>]]\n"
--#: ../ifconfig.c:183
-+#: ../ifconfig.c:181
- msgid "  [[-]broadcast [<address>]]  [[-]pointopoint [<address>]]\n"
- msgstr "  [[-]broadcast [<aadress>]]  [[-]pointopoint [<aadress>]]\n"
--#: ../ifconfig.c:184
-+#: ../ifconfig.c:182
- msgid "  [netmask <address>]  [dstaddr <address>]  [tunnel <address>]\n"
- msgstr "  [netmask <aadress>]  [dstaddr <aadress>]  [tunnel <aadress>]\n"
--#: ../ifconfig.c:187
-+#: ../ifconfig.c:185
- msgid "  [outfill <NN>] [keepalive <NN>]\n"
- msgstr "  [outfill <NN>] [keepalive <NN>]\n"
--#: ../ifconfig.c:189
-+#: ../ifconfig.c:187
- msgid "  [hw <HW> <address>]  [metric <NN>]  [mtu <NN>]\n"
- msgstr "  [hw <HW> <aadress>]  [metric <NN>]  [mtu <NN>]\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 <NN>]  [io_addr <NN>]  [irq <NN>]  [media <type>]\n"
- msgstr "  [mem_start <NN>]  [io_addr <NN>]  [irq <NN>]  [media <tüüp>]\n"
--#: ../ifconfig.c:194
-+#: ../ifconfig.c:192
- msgid "  [txqueuelen <NN>]\n"
- msgstr "  [txqueuelen <NN>]\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 "  <HW>=Hardware Type.\n"
- msgstr "  <HW>=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 "  <AF>=Address family. Default: %s\n"
- msgstr "  <AF>=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] [<Af>] -r         netstat "
- "{-V|--version|-h|--help}\n"
-@@ -874,11 +886,11 @@
- "Kasutamine: netstat [-veenNcCF] [<Af>] -r\n"
- "            netstat {-V|--version|-h|--help}\n"
--#: ../netstat.c:1475
-+#: ../netstat.c:1480
- msgid "       netstat [-vnNcaeol] [<Socket> ...]\n"
- msgstr "            netstat [-vnNcaeol] [<Sokkel> ...]\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 ""
- "  <Socket>={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx "
- "--netrom\n"
-@@ -989,20 +997,19 @@
- "  <Sokkel>={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx "
- "--netrom\n"
--#: ../netstat.c:1501 ../route.c:91
--#, c-format
--msgid "  <AF>=Use '-A <af>' or '--<af>' Default: %s\n"
--msgstr "  <AF>=kasutage '-A <af>' või '--<af>' vaikimisi: %s\n"
-+#: ../netstat.c:1506 ../route.c:92
-+msgid "  <AF>=Use '-A <af>' or '--<af>'; default: %s\n"
-+msgstr "  <AF>=kasutage '-A <af>' või '--<af>'; 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 <hostname>                    delete entry from cache.\n"
- msgstr "  rarp -d <hosti nimi>                 kirje kustutamine puhvrist\n"
--#: ../rarp.c:177
-+#: ../rarp.c:178
- msgid "       rarp [<HW>] -s <hostname> <hwaddr>    add entry to cache.\n"
- msgstr "  rarp [<HW>] -s <hosti nimi> <hwaddr> 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] [<AF>]           List kernel routing tables\n"
- msgstr ""
- "Kasutamine:\n"
- "    route [-nNvee] [-FC] [<AF>]           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} [<AF>]              Detailed usage syntax for "
- "specified AF.\n"
-@@ -1123,7 +1130,7 @@
- "    route {-h|--help} [<AF>]              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 <EMAIL@ADDRESS>, 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 <EMAIL@ADDRESS>\n"
- "Language-Team: LANGUAGE <LL@li.org>\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 "<from_interface>"
-+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 "<incomplete> "
- 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]  [<HW>] [-i <if>] [-a] [<hostname>]             <-Display ARP "
- "cache\n"
- msgstr ""
--#: ../arp.c:615
-+#: ../arp.c:621
-+#, c-format
- msgid ""
- "  arp [-v]          [-i <if>] -d  <hostname> [pub][nopub]    <-Delete ARP "
- "entry\n"
- msgstr ""
--#: ../arp.c:616
-+#: ../arp.c:622
-+#, c-format
- msgid ""
--"  arp [-vnD] [<HW>] [-i <if>] -f  [<filename>]              <-Add entry from "
-+"  arp [-vnD] [<HW>] [-i <if>] -f  [<filename>]            <-Add entry from "
- "file\n"
- msgstr ""
--#: ../arp.c:617
-+#: ../arp.c:623
-+#, c-format
- msgid ""
- "  arp [-v]   [<HW>] [-i <if>] -s  <hostname> <hwaddr> [temp][nopub] <-Add "
- "entry\n"
- msgstr ""
--#: ../arp.c:618
--msgid ""
--"  arp [-v]   [<HW>] [-i <if>] -s  <hostname> <hwaddr> [netmask <nm>] pub  "
--"<-''-\n"
--msgstr ""
--
--#: ../arp.c:619
-+#: ../arp.c:624
-+#, c-format
- msgid ""
- "  arp [-v]   [<HW>] [-i <if>] -Ds <hostname> <if> [netmask <nm>] 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 <hwaddr> 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 "  <HW>=Use '-H <hw>' 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] <interface> [[<AF>] <address>]\n"
-+"  ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>]\n"
- msgstr ""
--#: ../ifconfig.c:179
-+#: ../ifconfig.c:204
-+#, c-format
- msgid "  [add <address>[/<prefixlen>]]\n"
- msgstr ""
--#: ../ifconfig.c:180
-+#: ../ifconfig.c:205
-+#, c-format
- msgid "  [del <address>[/<prefixlen>]]\n"
- msgstr ""
--#: ../ifconfig.c:181
-+#: ../ifconfig.c:206
-+#, c-format
- msgid "  [[-]broadcast [<address>]]  [[-]pointopoint [<address>]]\n"
- msgstr ""
--#: ../ifconfig.c:182
-+#: ../ifconfig.c:207
-+#, c-format
- msgid "  [netmask <address>]  [dstaddr <address>]  [tunnel <address>]\n"
- msgstr ""
--#: ../ifconfig.c:185
-+#: ../ifconfig.c:210
-+#, c-format
- msgid "  [outfill <NN>] [keepalive <NN>]\n"
- msgstr ""
--#: ../ifconfig.c:187
-+#: ../ifconfig.c:212
-+#, c-format
- msgid "  [hw <HW> <address>]  [metric <NN>]  [mtu <NN>]\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 <NN>]  [io_addr <NN>]  [irq <NN>]  [media <type>]\n"
- msgstr ""
--#: ../ifconfig.c:192
-+#: ../ifconfig.c:217
-+#, c-format
- msgid "  [txqueuelen <NN>]\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 "  <HW>=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 "  <AF>=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] [<Af>] -r         netstat "
--"{-V|--version|-h|--help}\n"
-+"usage: netstat [-veenNcCF] [<Af>] -r         netstat {-V|--version|-h|--"
-+"help}\n"
- msgstr ""
--#: ../netstat.c:1480
-+#: ../netstat.c:1493
-+#, c-format
- msgid "       netstat [-vnNcaeol] [<Socket> ...]\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 ""
--"  <Socket>={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx "
--"--netrom\n"
-+"  <Socket>={-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 "  <AF>=Use '-A <af>' or '--<af>'; default: %s\n"
-+msgid "  <AF>=Use '-6|-4' or '-A <af>' or '--<af>'; 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 <hostname>                    delete entry from cache.\n"
- msgstr ""
- #: ../rarp.c:178
-+#, c-format
- msgid "       rarp [<HW>] -s <hostname> <hwaddr>    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] [<AF>]           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} [<AF>]              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 "  <AF>=Use '-A <af>' or '--<af>'; 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 <acme@conectiva.com.br>, 2000.
- #
--# $Id$
-+# $Id$
- # Brazilian portuguese translation for net-tools 1.54
- # Copyright (C) 1998, 1999 Free Software Foundation, Inc.
- # Arnaldo Carvalho de Melo <acme@conectiva.com.br>, 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, <net-tools@lina.inka.de>
-  *
-@@ -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 <acme@conectiva.com.br> 
-  * 19981113 - i18n fixes - Arnaldo Carvalho de Melo <acme@conectiva.com.br> 
-  * 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 (file)
index c3b2d78..0000000
+++ /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 <sys/ioctl.h>
- #include <net/if.h>
- #include <dirent.h>
-+#include <sys/stat.h>
- #include "net-support.h"
- #include "pathnames.h"
This page took 0.382788 seconds and 4 git commands to generate.