diff options
author | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
---|---|---|
committer | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
commit | 709c4d66e0b107ca606941b988bad717c0b45d9b (patch) | |
tree | 37ee08b1eb308f3b2b6426d5793545c38396b838 /packages/net-tools/files | |
parent | fa6cd5a3b993f16c27de4ff82b42684516d433ba (diff) |
rename packages/ to recipes/ per earlier agreement
See links below for more details:
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816
Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Acked-by: Mike Westerhof <mwester@dls.net>
Acked-by: Philip Balister <philip@balister.org>
Acked-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Marcin Juszkiewicz <hrw@openembedded.org>
Acked-by: Koen Kooi <koen@openembedded.org>
Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'packages/net-tools/files')
49 files changed, 0 insertions, 4323 deletions
diff --git a/packages/net-tools/files/README b/packages/net-tools/files/README deleted file mode 100644 index 76e14a2341..0000000000 --- a/packages/net-tools/files/README +++ /dev/null @@ -1 +0,0 @@ -Patches were downloaded from http://ftp.uni-koeln.de/mirrors/fedora/linux/core/5/source/SRPMS/net-tools-1.60-62.1.src.rpm diff --git a/packages/net-tools/files/ether-wake.8 b/packages/net-tools/files/ether-wake.8 deleted file mode 100644 index 26b4f85a8a..0000000000 --- a/packages/net-tools/files/ether-wake.8 +++ /dev/null @@ -1,81 +0,0 @@ -.\" Hey, EMACS: -*- nroff -*- -.\" First parameter, NAME, should be all caps -.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection -.\" other parameters are allowed: see man(7), man(1) -.TH ETHER-WAKE 8 "March 31, 2003" "Scyld" -.\" Please adjust this date whenever revising the manpage. -.\" -.\" Some roff macros, for reference: -.\" .nh disable hyphenation -.\" .hy enable hyphenation -.\" .ad l left justify -.\" .ad b justify to both left and right margins -.\" .nf disable filling -.\" .fi enable filling -.\" .br insert line break -.\" .sp <n> insert n+1 empty lines -.\" for manpage-specific macros, see man(7) -.SH NAME -ether-wake \- A tool to send a Wake-On-LAN "Magic Packet" -.SH SYNOPSIS -.B ether-wake -.RI [ options ] " Host-ID" -.SH DESCRIPTION -This manual page documents the usage of the -.B ether-wake -command. -.PP -.\" TeX users may be more comfortable with the \fB<whatever>\fP and -.\" \fI<whatever>\fP escape sequences to invode bold face and italics, -.\" respectively. -\fBether-wake\fP is a program that generates and transmits a Wake-On-LAN -(WOL) "Magic Packet", used for restarting machines that have been -soft-powered-down (ACPI D3-warm state). It generates the standard -AMD Magic Packet format, optionally with a password included. The -single required parameter is a station (MAC) address or a host ID that can -be translated to a MAC address by an -.BR ethers (5) -database specified in -.BR nsswitch.conf (5) -. -.SH OPTIONS -\fBether-wake\fP needs a single dash (´-´) in front of options. -A summary of options is included below. -.TP -.B \-b -Send the wake-up packet to the broadcast address. -.TP -.B \-D -Increase the Debug Level. -.TP -.B \-i ifname -Use interface ifname instead of the default "eth0". -.TP -.B \-p passwd -Append a four or six byte password to the packet. Only a few adapters -need or support this. A six byte password may be specified in Ethernet hex -format (00:22:44:66:88:aa) or four byte dotted decimal (192.168.1.1) format. -A four byte password must use the dotted decimal format. - -.TP -.B \-V -Show the program version information. - -.SH EXIT STATUS -This program returns 0 on success. -A permission failures (e.g. run as a non-root user) results in an exit -status of 2. Unrecognized or invalid parameters result in an exit -status of 3. Failure to retrieve network interface information or send -a packet will result in an exit status of 1. - -.SH SEE ALSO -.BR arp (8). -.br -.SH SECURITY -On some non-Linux systems dropping root capability allows the process to be -dumped, traced or debugged. -If someone traces this program, they get control of a raw socket. -Linux handles this safely, but beware when porting this program. -.SH AUTHOR -The etherwake program was written by Donald Becker at Scyld Computing -Corporation for use with the Scyld(\*(Tm) Beowulf System. diff --git a/packages/net-tools/files/ether-wake.c b/packages/net-tools/files/ether-wake.c deleted file mode 100644 index eef22a7ab2..0000000000 --- a/packages/net-tools/files/ether-wake.c +++ /dev/null @@ -1,392 +0,0 @@ -/* ether-wake.c: Send a magic packet to wake up sleeping machines. */ - -static char version_msg[] = -"ether-wake.c: v1.09 11/12/2003 Donald Becker, http://www.scyld.com/"; -static char brief_usage_msg[] = -"usage: ether-wake [-i <ifname>] [-p aa:bb:cc:dd[:ee:ff]] 00:11:22:33:44:55\n" -" Use '-u' to see the complete set of options.\n"; -static char usage_msg[] = -"usage: ether-wake [-i <ifname>] [-p aa:bb:cc:dd[:ee:ff]] 00:11:22:33:44:55\n" -"\n" -" This program generates and transmits a Wake-On-LAN (WOL)\n" -" \"Magic Packet\", used for restarting machines that have been\n" -" soft-powered-down (ACPI D3-warm state).\n" -" It currently generates the standard AMD Magic Packet format, with\n" -" an optional password appended.\n" -"\n" -" The single required parameter is the Ethernet MAC (station) address\n" -" of the machine to wake or a host ID with known NSS 'ethers' entry.\n" -" The MAC address may be found with the 'arp' program while the target\n" -" machine is awake.\n" -"\n" -" Options:\n" -" -b Send wake-up packet to the broadcast address.\n" -" -D Increase the debug level.\n" -" -i ifname Use interface IFNAME instead of the default 'eth0'.\n" -" -p <pw> Append the four or six byte password PW to the packet.\n" -" A password is only required for a few adapter types.\n" -" The password may be specified in ethernet hex format\n" -" or dotted decimal (Internet address)\n" -" -p 00:22:44:66:88:aa\n" -" -p 192.168.1.1\n"; - -/* - This program generates and transmits a Wake-On-LAN (WOL) "Magic Packet", - used for restarting machines that have been soft-powered-down - (ACPI D3-warm state). It currently generates the standard AMD Magic Packet - format, with an optional password appended. - - This software may be used and distributed according to the terms - of the GNU Public License, incorporated herein by reference. - Contact the author for use under other terms. - - This source file was originally part of the network tricks package, and - is now distributed to support the Scyld Beowulf system. - Copyright 1999-2003 Donald Becker and Scyld Computing Corporation. - - The author may be reached as becker@scyld, or C/O - Scyld Computing Corporation - 914 Bay Ridge Road, Suite 220 - Annapolis MD 21403 - - Notes: - On some systems dropping root capability allows the process to be - dumped, traced or debugged. - If someone traces this program, they get control of a raw socket. - Linux handles this safely, but beware when porting this program. - - An alternative to needing 'root' is using a UDP broadcast socket, however - doing so only works with adapters configured for unicast+broadcast Rx - filter. That configuration consumes more power. -*/ - -#include <unistd.h> -#include <stdlib.h> -#include <stdio.h> -#include <errno.h> -#include <ctype.h> -#include <string.h> - -#if 0 /* Only exists on some versions. */ -#include <ioctls.h> -#endif - -#include <sys/socket.h> - -#include <sys/types.h> -#include <sys/ioctl.h> -#include <linux/if.h> - -#include <features.h> -#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1 -#include <netpacket/packet.h> -#include <net/ethernet.h> -#else -#include <asm/types.h> -#include <linux/if_packet.h> -#include <linux/if_ether.h> -#endif -#include <netdb.h> -#include <netinet/ether.h> - -/* Grrr, no consistency between include versions. - Enable this if setsockopt() isn't declared with your library. */ -#if 0 -extern int setsockopt __P ((int __fd, int __level, int __optname, - __ptr_t __optval, int __optlen)); -#else /* New, correct head files. */ -#include <sys/socket.h> -#endif - -u_char outpack[1000]; -int outpack_sz = 0; -int debug = 0; -u_char wol_passwd[6]; -int wol_passwd_sz = 0; - -static int opt_no_src_addr = 0, opt_broadcast = 0; - -static int get_dest_addr(const char *arg, struct ether_addr *eaddr); -static int get_fill(unsigned char *pkt, struct ether_addr *eaddr); -static int get_wol_pw(const char *optarg); - -int main(int argc, char *argv[]) -{ - char *ifname = "eth0"; - int one = 1; /* True, for socket options. */ - int s; /* Raw socket */ - int errflag = 0, verbose = 0, do_version = 0; - int perm_failure = 0; - int i, c, pktsize; -#if defined(PF_PACKET) - struct sockaddr_ll whereto; -#else - struct sockaddr whereto; /* who to wake up */ -#endif - struct ether_addr eaddr; - - while ((c = getopt(argc, argv, "bDi:p:uvV")) != -1) - switch (c) { - case 'b': opt_broadcast++; break; - case 'D': debug++; break; - case 'i': ifname = optarg; break; - case 'p': get_wol_pw(optarg); break; - case 'u': printf(usage_msg); return 0; - case 'v': verbose++; break; - case 'V': do_version++; break; - case '?': - errflag++; - } - if (verbose || do_version) - printf("%s\n", version_msg); - if (errflag) { - fprintf(stderr, brief_usage_msg); - return 3; - } - - if (optind == argc) { - fprintf(stderr, "Specify the Ethernet address as 00:11:22:33:44:55.\n"); - return 3; - } - - /* Note: PF_INET, SOCK_DGRAM, IPPROTO_UDP would allow SIOCGIFHWADDR to - work as non-root, but we need SOCK_PACKET to specify the Ethernet - destination address. */ -#if defined(PF_PACKET) - s = socket(PF_PACKET, SOCK_RAW, 0); -#else - s = socket(AF_INET, SOCK_PACKET, SOCK_PACKET); -#endif - if (s < 0) { - if (errno == EPERM) - fprintf(stderr, "ether-wake: This program must be run as root.\n"); - else - perror("ether-wake: socket"); - perm_failure++; - } - /* Don't revert if debugging allows a normal user to get the raw socket. */ - setuid(getuid()); - - /* We look up the station address before reporting failure so that - errors may be reported even when run as a normal user. - */ - if (get_dest_addr(argv[optind], &eaddr) != 0) - return 3; - if (perm_failure && ! debug) - return 2; - - pktsize = get_fill(outpack, &eaddr); - - /* Fill in the source address, if possible. - The code to retrieve the local station address is Linux specific. */ - if (! opt_no_src_addr) { - struct ifreq if_hwaddr; - unsigned char *hwaddr = if_hwaddr.ifr_hwaddr.sa_data; - - strcpy(if_hwaddr.ifr_name, ifname); - if (ioctl(s, SIOCGIFHWADDR, &if_hwaddr) < 0) { - fprintf(stderr, "SIOCGIFHWADDR on %s failed: %s\n", ifname, - strerror(errno)); - /* Magic packets still work if our source address is bogus, but - we fail just to be anal. */ - return 1; - } - memcpy(outpack+6, if_hwaddr.ifr_hwaddr.sa_data, 6); - - if (verbose) { - printf("The hardware address (SIOCGIFHWADDR) of %s is type %d " - "%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x.\n", ifname, - if_hwaddr.ifr_hwaddr.sa_family, hwaddr[0], hwaddr[1], - hwaddr[2], hwaddr[3], hwaddr[4], hwaddr[5]); - } - } - - if (wol_passwd_sz > 0) { - memcpy(outpack+pktsize, wol_passwd, wol_passwd_sz); - pktsize += wol_passwd_sz; - } - - if (verbose > 1) { - printf("The final packet is: "); - for (i = 0; i < pktsize; i++) - printf(" %2.2x", outpack[i]); - printf(".\n"); - } - - /* This is necessary for broadcasts to work */ - if (setsockopt(s, SOL_SOCKET, SO_BROADCAST, (char *)&one, sizeof(one)) < 0) - perror("setsockopt: SO_BROADCAST"); - -#if defined(PF_PACKET) - { - struct ifreq ifr; - strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)); - if (ioctl(s, SIOCGIFINDEX, &ifr) == -1) { - fprintf(stderr, "SIOCGIFINDEX on %s failed: %s\n", ifname, - strerror(errno)); - return 1; - } - memset(&whereto, 0, sizeof(whereto)); - whereto.sll_family = AF_PACKET; - whereto.sll_ifindex = ifr.ifr_ifindex; - /* The manual page incorrectly claims the address must be filled. - We do so because the code may change to match the docs. */ - whereto.sll_halen = ETH_ALEN; - memcpy(whereto.sll_addr, outpack, ETH_ALEN); - - } -#else - whereto.sa_family = 0; - strcpy(whereto.sa_data, ifname); -#endif - - if ((i = sendto(s, outpack, pktsize, 0, (struct sockaddr *)&whereto, - sizeof(whereto))) < 0) - perror("sendto"); - else if (debug) - printf("Sendto worked ! %d.\n", i); - -#ifdef USE_SEND - if (bind(s, (struct sockaddr *)&whereto, sizeof(whereto)) < 0) - perror("bind"); - else if (send(s, outpack, 100, 0) < 0) - perror("send"); -#endif -#ifdef USE_SENDMSG - { - struct msghdr msghdr = { 0,}; - struct iovec iovector[1]; - msghdr.msg_name = &whereto; - msghdr.msg_namelen = sizeof(whereto); - msghdr.msg_iov = iovector; - msghdr.msg_iovlen = 1; - iovector[0].iov_base = outpack; - iovector[0].iov_len = pktsize; - if ((i = sendmsg(s, &msghdr, 0)) < 0) - perror("sendmsg"); - else if (debug) - printf("sendmsg worked, %d (%d).\n", i, errno); - } -#endif - - return 0; -} - -/* Convert the host ID string to a MAC address. - The string may be a - Host name - IP address string - MAC address string -*/ - -static int get_dest_addr(const char *hostid, struct ether_addr *eaddr) -{ - struct ether_addr *eap; - - eap = ether_aton(hostid); - if (eap) { - *eaddr = *eap; - if (debug) - fprintf(stderr, "The target station address is %s.\n", - ether_ntoa(eaddr)); - } else if (ether_hostton(hostid, eaddr) == 0) { - if (debug) - fprintf(stderr, "Station address for hostname %s is %s.\n", - hostid, ether_ntoa(eaddr)); - } else { - (void)fprintf(stderr, - "ether-wake: The Magic Packet host address must be " - "specified as\n" - " - a station address, 00:11:22:33:44:55, or\n" - " - a hostname with a known 'ethers' entry.\n"); - return -1; - } - return 0; -} - - -static int get_fill(unsigned char *pkt, struct ether_addr *eaddr) -{ - int offset, i; - unsigned char *station_addr = eaddr->ether_addr_octet; - - if (opt_broadcast) - memset(pkt+0, 0xff, 6); - else - memcpy(pkt, station_addr, 6); - memcpy(pkt+6, station_addr, 6); - pkt[12] = 0x08; /* Or 0x0806 for ARP, 0x8035 for RARP */ - pkt[13] = 0x42; - offset = 14; - - memset(pkt+offset, 0xff, 6); - offset += 6; - - for (i = 0; i < 16; i++) { - memcpy(pkt+offset, station_addr, 6); - offset += 6; - } - if (debug) { - fprintf(stderr, "Packet is "); - for (i = 0; i < offset; i++) - fprintf(stderr, " %2.2x", pkt[i]); - fprintf(stderr, ".\n"); - } - return offset; -} - -static int get_wol_pw(const char *optarg) -{ - int passwd[6]; - int byte_cnt; - int i; - - byte_cnt = sscanf(optarg, "%2x:%2x:%2x:%2x:%2x:%2x", - &passwd[0], &passwd[1], &passwd[2], - &passwd[3], &passwd[4], &passwd[5]); - if (byte_cnt < 4) - byte_cnt = sscanf(optarg, "%d.%d.%d.%d", - &passwd[0], &passwd[1], &passwd[2], &passwd[3]); - if (byte_cnt < 4) { - fprintf(stderr, "Unable to read the Wake-On-LAN password.\n"); - return 0; - } - printf(" The Magic packet password is %2.2x %2.2x %2.2x %2.2x (%d).\n", - passwd[0], passwd[1], passwd[2], passwd[3], byte_cnt); - for (i = 0; i < byte_cnt; i++) - wol_passwd[i] = passwd[i]; - return wol_passwd_sz = byte_cnt; -} - -#if 0 -{ - to = (struct sockaddr_in *)&whereto; - to->sin_family = AF_INET; - if (inet_aton(target, &to->sin_addr)) { - hostname = target; - } - memset (&sa, 0, sizeof sa); - sa.sa_family = AF_INET; - strncpy (sa.sa_data, interface, sizeof sa.sa_data); - sendto (sock, buf, bufix + len, 0, &sa, sizeof sa); - strncpy (sa.sa_data, interface, sizeof sa.sa_data); -#if 1 - sendto (sock, buf, bufix + len, 0, &sa, sizeof sa); -#else - bind (sock, &sa, sizeof sa); - connect(); - send (sock, buf, bufix + len, 0); -#endif -} -#endif - - -/* - * Local variables: - * compile-command: "gcc -O -Wall -o ether-wake ether-wake.c" - * c-indent-level: 4 - * c-basic-offset: 4 - * c-indent-level: 4 - * tab-width: 4 - * End: - */ diff --git a/packages/net-tools/files/mii-diag.8 b/packages/net-tools/files/mii-diag.8 deleted file mode 100644 index aa0dc0be15..0000000000 --- a/packages/net-tools/files/mii-diag.8 +++ /dev/null @@ -1,160 +0,0 @@ -.\" Hey, EMACS: -*- nroff -*- -.\" $Revision: 1.1 $ $Date: 2003/09/06 17:20:17 $ -.\" First parameter, NAME, should be all caps -.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection -.\" other parameters are allowed: see man(7), man(1) -.TH MII-DIAG 8 "September 9, 2003" "Scyld Beowulf\*(Tm" -.\" Please adjust this date whenever revising the manpage. -.\" -.\" Some roff macros, for reference: -.\" .nh disable hyphenation -.\" .hy enable hyphenation -.\" .ad l left justify -.\" .ad b justify to both left and right margins -.\" .nf disable filling -.\" .fi enable filling -.\" .br insert line break -.\" .sp <n> insert n+1 empty lines -.\" for manpage-specific macros, see man(7) -.SH NAME -mii-diag \- Network adapter control and monitoring -.SH SYNOPSIS -.B mii-diag -.RI [ options ] <interface> -.SH DESCRIPTION -This manual page documents briefly the -.B mii-diag -network adapter control and monitoring command. -Addition documentation is available from http://scyld.com/diag/index.html. - -.\" TeX users may be more comfortable with the \fB<whatever>\fP and -.\" \fI<whatever>\fP escape sequences to invoke bold face and italics, -.\" respectively. -.PP -This \fBmii-diag\fP command configures, controls and monitors the -transceiver management registers for network interfaces, and configures -driver operational parameters. For transceiver control \fBmii-diag\fP -uses the Media Independent Interface (MII) standard (thus the command name). -It also has additional Linux-specific controls to communicate parameters -such as message enable settings and buffer sizes to the underlying device -driver. -.PP -The MII standard defines registers that control and report network -transceiver capabilities, link settings and errors. Examples are link -speed, duplex, capabilities advertised to the link partner, status LED -indications and link error counters. - -.SH OPTIONS -The \fBmii-diag\fP command supports both single character and long -option names. Short options use a single dash (´-´) in front of the option -character. For options without parameters, multiple options may be -concatenated after a single dash. Long options are prefixed by two -dashes (´--´), and may be abbreviated with a unique prefix. -A long option may take a parameter of the form --arg=param or --arg param. - -.PP -A summary of options is as follows. - -.TP -.B \-A, --advertise <speed|setting> -.BR -.B \-F, --fixed-speed <speed|setting> - -Speed is one of: 100baseT4, 100baseTx, 100baseTx-FD, 100baseTx-HD, 10baseT, -10baseT-FD, 10baseT-HD. For more precise control an explict numeric -register setting is also allowed. - - -.TP -.B \-a, \--all-interfaces -Show the status of all interfaces. This option is not recommended with -any other option, especially ones that change settings. - -.TP -.B \-s,\--status -Return exit status 2 if there is no link beat. - -.TP -.B \-D -Increase the debugging level. This may be used to understand the -actions the command is taking. - -.TP -.B \-g, \--read-parameters -Show driver-specific parameters. - -.TP -.B \-G, \--set-parameters value[,value...] -Set driver-specific parameters. -Set a adapter-specific parameters. -Parameters are comma separated, with missing elements retaining the -existing value. - -.TP -.B \-v -Increase the verbosity level. Additional "-v" options increase the -level further. - -.TP -.B \-V -Show the program version information. - -.TP -.B \-w, \--watch -Continuously monitor the transceiver and report changes. - -.TP -.B \-? -Emit usage information. - -.SH DESCRIPTION - -.PP -Calling the command with just the interface name (which defaults to -'eth0' if missing) produces extensive output describing the transceiver -capabilities, configuration and current status. - -.PP -The '--monitor' option allows scripting link beat changes. -.PP -This option is similar to --watch, but with lower overhead and simplifed -output. It polls the interface only once a second and the output format -is a single line per link change with three fixed words - <unknown|down||negotiating|up> <STATUS> <PARTNER-CAP> -.PP -Example output: mii-diag --monitor eth0 - down 0x7809 0x0000 - negotiating 0x7829 0x45e1 - up 0x782d 0x45e1 - down 0x7809 0x0000 - -.PP -This may be used as - mii-diag --monitor eth0 | - while read linkstatus bmsr linkpar; do - case $linkstatus in - up) ifup eth0 ;; - down) ifdown eth0 ;; - esac - done - -.PP -It may be useful to shorten the DHCP client daemon timeout if it does -not receive an address by adding the following setting to -/etc/sysconfig/network: -DHCPCDARGS="-t 3" - -.SH SEE ALSO -.BR ether-wake (8), net-diag (8), mii-tool (8). -.br -Addition documentation is available from http://scyld.com/diag/index.html. - -.SH KNOWN BUGS -The --all-interfaces option is quirky. There are very few settings that -are usefully applied to all interfaces. - -.SH AUTHOR -The manual pages, diagnostic commands, and many of the underlying Linux -network drivers were written by Donald Becker for the Scyld -Beowulf(\*(Tm) cluster system. - diff --git a/packages/net-tools/files/mii-diag.c b/packages/net-tools/files/mii-diag.c deleted file mode 100644 index 17d8bef63b..0000000000 --- a/packages/net-tools/files/mii-diag.c +++ /dev/null @@ -1,650 +0,0 @@ -/* Mode: C; - * mii-diag.c: Examine and set the MII registers of a network interfaces. - - Usage: mii-diag [-vw] interface. - - This program reads and writes the Media Independent Interface (MII) - management registers on network transceivers. The registers control - and report network link settings and errors. Examples are link speed, - duplex, capabilities advertised to the link partner, status LED - indications and link error counters. - - Notes: - The compile-command is at the end of this source file. - This program works with drivers that implement MII ioctl() calls. - - Written/copyright 1997-2003 by Donald Becker <becker@scyld.com> - - 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. - - The author may be reached as becker@scyld.com, or C/O - Scyld Computing Corporation - 914 Bay Ridge Road, Suite 220 - Annapolis MD 21403 - - References - http://scyld.com/expert/mii-status.html - http://scyld.com/expert/NWay.html - http://www.national.com/pf/DP/DP83840.html -*/ - -static char version[] = -"mii-diag.c:v2.11 3/21/2005 Donald Becker (becker@scyld.com)\n" -" http://www.scyld.com/diag/index.html\n"; - -static const char usage_msg[] = -"Usage: %s [--help] [-aDfrRvVw] [-AF <speed+duplex>] [--watch] <interface>.\n"; -static const char long_usage_msg[] = -"Usage: %s [-aDfrRvVw] [-AF <speed+duplex>] [--watch] <interface>.\n\ -\n\ - This program configures and monitors the transceiver management registers\n\ - for network interfaces. It uses the Media Independent Interface (MII)\n\ - standard with additional Linux-specific controls to communicate with the\n\ - underlying device driver. The MII registers control and report network\n\ - link settings and errors. Examples are link speed, duplex, capabilities\n\ - advertised to the link partner, status LED indications and link error\n\ - counters.\n\ -\n\ - The common usage is\n\ - mii-diag eth0\n\ -\n\ - The default interface is \"eth0\".\n\ - Frequently used options are\n\ - -A --advertise <speed|setting>\n\ - -F --fixed-speed <speed>\n\ - Speed is one of: 100baseT4, 100baseTx, 100baseTx-FD, 100baseTx-HD,\n\ - 10baseT, 10baseT-FD, 10baseT-HD\n\ - -s --status Return exit status 2 if there is no link beat.\n\ -\n\ - Less frequently used options are\n\ - -a --all-interfaces Show the status all interfaces\n\ - (Not recommended with options that change settings.)\n\ - -D --debug\n\ - -g --read-parameters Get driver-specific parameters.\n\ - -G --set-parameters PARMS Set driver-specific parameters.\n\ - Parameters are comma separated, missing parameters retain\n\ - their previous values.\n\ - -M --msg-level LEVEL Set the driver message bit map.\n\ - -p --phy ADDR Set the PHY (MII address) to report.\n\ - -r --restart Restart the link autonegotiation.\n\ - -R --reset Reset the transceiver.\n\ - -v --verbose Report each action taken.\n\ - -V --version Emit version information.\n\ - -w --watch Continuously monitor the transceiver and report changes.\n\ -\n\ - This command returns success (zero) if the interface information can be\n\ - read. If the --status option is passed, a zero return means that the\n\ - interface has link beat.\n\ -"; - -#include <unistd.h> -#include <stdlib.h> -#include <stdio.h> -#include <ctype.h> -#include <string.h> -#include <errno.h> -#include <fcntl.h> -#include <getopt.h> -#include <sys/types.h> -#include <sys/socket.h> -#include <sys/ioctl.h> -#include <net/if.h> -#ifdef use_linux_libc5 -#include <linux/if_arp.h> -#include <linux/if_ether.h> -#endif - -typedef u_int32_t u32; -typedef u_int16_t u16; -typedef u_int8_t u8; - -#if defined(SIOCGPARAMS) && SIOCGPARAMS != SIOCDEVPRIVATE+3 -#error Changed definition for SIOCGPARAMS -#else -#define SIOCGPARAMS (SIOCDEVPRIVATE+3) /* Read operational parameters. */ -#define SIOCSPARAMS (SIOCDEVPRIVATE+4) /* Set operational parameters. */ -#endif - -const char shortopts[] = "aA:C:DfF:gG:hmM:p:rRsvVw?"; -struct option longopts[] = { - /* { name has_arg *flag val } */ - {"all-interfaces", 0, 0, 'a'}, /* Show all interfaces. */ - {"advertise", 1, 0, 'A'}, /* Change the capabilities advertised. */ - {"BMCR", 1, 0, 'C'}, /* Set the control register. */ - {"debug", 0, 0, 'D'}, /* Increase the debug level. */ - {"force", 0, 0, 'f'}, /* Force the operation. */ - {"fixed-speed", 1, 0, 'F'}, /* Fixed speed name. */ - {"read-parameters", 0, 0, 'g'}, /* Show general settings values. */ - {"set-parameters", 1, 0, 'G'}, /* Write general settings values. */ - {"help", 0, 0, 'h'}, /* Print a long usage message. */ - {"monitor", 0, 0, 'm'}, /* Monitor status register. */ - {"msg-level", 1, 0, 'M'}, /* Set the driver message level. */ - {"phy", 1, 0, 'p'}, /* Set the PHY (MII address) to report. */ - {"restart", 0, 0, 'r'}, /* Restart the link negotiation */ - {"reset", 0, 0, 'R'}, /* Reset the transceiver. */ - {"status", 0, 0, 's'}, /* Non-zero exit status w/ no link beat. */ - {"verbose", 0, 0, 'v'}, /* Report each action taken. */ - {"version", 0, 0, 'V'}, /* Emit version information. */ - {"watch", 0, 0, 'w'}, /* Constantly monitor the port. */ - {"error", 0, 0, '?'}, /* Return the error message. */ - { 0, 0, 0, 0 } -}; - -/* Usually in libmii.c, but trivial substitions are below. */ -extern int show_mii_details(long ioaddr, int phy_id); -extern void monitor_mii(long ioaddr, int phy_id); -int show_mii_details(long ioaddr, int phy_id) __attribute__((weak)); -void monitor_mii(long ioaddr, int phy_id) __attribute__((weak)); - - -/* Command-line flags. */ -unsigned int opt_a = 0, /* Show-all-interfaces flag. */ - opt_f = 0, /* Force the operation. */ - opt_g = 0, - opt_G = 0, - verbose = 0, /* Verbose flag. */ - debug = 0, - opt_version = 0, - opt_restart = 0, - opt_reset = 0, - opt_status = 0, - opt_watch = 0; -static int msg_level = -1; -static int set_BMCR = -1; -static int nway_advertise = 0; -static int fixed_speed = -1; -static int override_phy = -1; -char *opt_G_string = NULL; - -/* Internal values. */ -int new_ioctl_nums; -int skfd = -1; /* AF_INET socket for ioctl() calls. */ -struct ifreq ifr; - -int do_one_xcvr(int skfd); -int show_basic_mii(long ioaddr, int phy_id); -int mdio_read(int skfd, int phy_id, int location); -void mdio_write(int skfd, int phy_id, int location, int value); -static int parse_advertise(const char *capabilities); -static void monitor_status(long ioaddr, int phy_id); - - -int -main(int argc, char **argv) -{ - int c, errflag = 0; - char **spp, *ifname; - char *progname = rindex(argv[0], '/') ? rindex(argv[0], '/')+1 : argv[0]; - - while ((c = getopt_long(argc, argv, shortopts, longopts, 0)) != EOF) - switch (c) { - case 'a': opt_a++; break; - case 'A': nway_advertise |= parse_advertise(optarg); - if (nway_advertise == -1) errflag++; - break; - case 'C': set_BMCR = strtoul(optarg, NULL, 16); break; - case 'D': debug++; break; - case 'f': opt_f++; break; - case 'F': fixed_speed = parse_advertise(optarg); - if (fixed_speed == -1) errflag++; - break; - case 'g': opt_g++; break; - case 'G': opt_G++; opt_G_string = strdup(optarg); break; - case 'm': opt_watch++; opt_status++; break; - case 'M': msg_level = strtoul(optarg, NULL, 0); break; - case 'h': fprintf(stderr, long_usage_msg, progname); return 0; - case 'p': override_phy = atoi(optarg); break; - case 'r': opt_restart++; break; - case 'R': opt_reset++; break; - case 's': opt_status++; break; - case 'v': verbose++; break; - case 'V': opt_version++; break; - case 'w': opt_watch++; break; - case '?': errflag++; break; - } - if (errflag) { - fprintf(stderr, usage_msg, progname); - return 2; - } - - if (verbose || opt_version) - printf(version); - - /* Open a basic socket. */ - if ((skfd = socket(AF_INET, SOCK_DGRAM,0)) < 0) { - perror("socket"); - return 1; - } - - if (debug) - fprintf(stderr, "DEBUG: argc=%d, optind=%d and argv[optind] is %s.\n", - argc, optind, argv[optind]); - - /* No remaining args means show all interfaces. */ - if (optind == argc) { - ifname = "eth0"; - fprintf(stderr, "Using the default interface 'eth0'.\n"); - } else { - /* Copy the interface name. */ - spp = argv + optind; - ifname = *spp++; - } - - if (ifname == NULL) { - ifname = "eth0"; - fprintf(stderr, "Using the default interface 'eth0'.\n"); - } - - /* Verify that the interface supports the ioctl(), and if - it is using the new or old SIOCGMIIPHY value (grrr...). - */ - { - u16 *data = (u16 *)(&ifr.ifr_data); - - strncpy(ifr.ifr_name, ifname, IFNAMSIZ); - data[0] = 0; - - if (ioctl(skfd, 0x8947, &ifr) >= 0) { - new_ioctl_nums = 1; - } else if (ioctl(skfd, SIOCDEVPRIVATE, &ifr) >= 0) { - new_ioctl_nums = 0; - } else { - fprintf(stderr, "SIOCGMIIPHY on %s failed: %s\n", ifname, - strerror(errno)); - (void) close(skfd); - return 1; - } - if (verbose) - printf(" Using the %s SIOCGMIIPHY value on PHY %d " - "(BMCR 0x%4.4x).\n", - new_ioctl_nums ? "new" : "old", data[0], data[3]); - } - - do_one_xcvr(skfd); - - (void) close(skfd); - return 0; -} - -int do_one_xcvr(int skfd) -{ - u16 *data = (u16 *)(&ifr.ifr_data); - u32 *data32 = (u32 *)(&ifr.ifr_data); - unsigned phy_id = data[0]; - - if (override_phy >= 0) { - printf("Using the specified MII PHY index %d.\n", override_phy); - phy_id = override_phy; - } - - if (opt_g || opt_G || msg_level >= 0) { - if (ioctl(skfd, SIOCGPARAMS, &ifr) < 0) { - fprintf(stderr, "SIOCGPARAMS on %s failed: %s\n", ifr.ifr_name, - strerror(errno)); - return -1; - } - } - if (opt_g) { - int i; - printf("Driver general parameter settings:"); - for (i = 0; i*sizeof(u32) < sizeof(ifr.ifr_ifru); i++) { - printf(" %d", data32[i]); - } - printf(".\n"); - } - if (opt_G) { - /* Set up to four arbitrary driver parameters from the -G parameter. - The format is comma separated integers, with a missing element - retaining the previous value. - */ - char *str = opt_G_string; - int i; - for (i = 0; str && i < 4; i++) { - char *endstr; - u32 newval = strtol(str, &endstr, 0); - if (debug) - printf(" parse string '%s' value %d end '%s'.\n", - str, newval, endstr); - if (str == endstr) { - if (endstr[0] == ',') /* No parameter */ - str = endstr+1; - else { - fprintf(stderr, "Invalid driver parameter '%s'.\n", str); - str = index(str, ','); - } - } else if (endstr[0] == ',') { - data32[i] = newval; - str = endstr + 1; - } else if (endstr[0] == 0) { - data32[i] = newval; - break; - } - } - printf("Setting new driver general parameters:"); - for (i = 0; i*sizeof(u32) < sizeof(ifr.ifr_ifru); i++) { - printf(" %d", data32[i]); - } - printf(".\n"); - if (ioctl(skfd, SIOCSPARAMS, &ifr) < 0) { - fprintf(stderr, "SIOCSPARAMS on %s failed: %s\n", ifr.ifr_name, - strerror(errno)); - return -1; - } - } - if (msg_level >= 0) { - data32[0] = msg_level; - if (ioctl(skfd, SIOCSPARAMS, &ifr) < 0) { - fprintf(stderr, "SIOCSPARAMS on %s failed: %s\n", ifr.ifr_name, - strerror(errno)); - return -1; - } - } - - if (opt_reset) { - printf("Resetting the transceiver...\n"); - mdio_write(skfd, phy_id, 0, 0x8000); - } - /* Note: PHY addresses > 32 are pseudo-MII devices, usually built-in. */ - if (phy_id < 64 && nway_advertise > 0) { - printf(" Setting the media capability advertisement register of " - "PHY #%d to 0x%4.4x.\n", phy_id, nway_advertise | 1); - mdio_write(skfd, phy_id, 4, nway_advertise | 1); - mdio_write(skfd, phy_id, 0, 0x1000); - } - - if (opt_restart) { - printf("Restarting negotiation...\n"); - mdio_write(skfd, phy_id, 0, 0x0000); - mdio_write(skfd, phy_id, 0, 0x1200); - } - /* To force 100baseTx-HD do mdio_write(skfd, phy_id, 0, 0x2000); */ - if (fixed_speed >= 0) { - int reg0_val = 0; - if (fixed_speed & 0x0180) /* 100mpbs */ - reg0_val |= 0x2000; - if ((fixed_speed & 0x0140) && /* A full duplex type and */ - ! (fixed_speed & 0x0820)) /* no half duplex types. */ - reg0_val |= 0x0100; - printf("Setting the speed to \"fixed\", Control register %4.4x.\n", - reg0_val); - mdio_write(skfd, phy_id, 0, reg0_val); - } - if (set_BMCR >= 0) { - printf("Setting the Basic Mode Control Register to 0x%4.4x.\n", - set_BMCR); - mdio_write(skfd, phy_id, 0, set_BMCR); - } - - if (opt_watch && opt_status) - monitor_status(skfd, phy_id); - - show_basic_mii(skfd, phy_id); -#ifdef LIBMII - if (verbose) - show_mii_details(skfd, phy_id); -#else - if (verbose || debug) { - int mii_reg, mii_val; - printf(" MII PHY #%d transceiver registers:", phy_id); - for (mii_reg = 0; mii_reg < 32; mii_reg++) { - mii_val = mdio_read(skfd, phy_id, mii_reg); - printf("%s %4.4x", (mii_reg % 8) == 0 ? "\n " : "", - mii_val); - } - printf("\n"); - } -#endif - - if (opt_watch) - monitor_mii(skfd, phy_id); - if (opt_status && - (mdio_read(skfd, phy_id, 1) & 0x0004) == 0) - exit(2); - return 0; -} - -int mdio_read(int skfd, int phy_id, int location) -{ - u16 *data = (u16 *)(&ifr.ifr_data); - - data[0] = phy_id; - data[1] = location; - - if (ioctl(skfd, new_ioctl_nums ? 0x8948 : SIOCDEVPRIVATE+1, &ifr) < 0) { - fprintf(stderr, "SIOCGMIIREG on %s failed: %s\n", ifr.ifr_name, - strerror(errno)); - return -1; - } - return data[3]; -} - -void mdio_write(int skfd, int phy_id, int location, int value) -{ - u16 *data = (u16 *)(&ifr.ifr_data); - - data[0] = phy_id; - data[1] = location; - data[2] = value; - - if (ioctl(skfd, new_ioctl_nums ? 0x8949 : SIOCDEVPRIVATE+2, &ifr) < 0) { - fprintf(stderr, "SIOCSMIIREG on %s failed: %s\n", ifr.ifr_name, - strerror(errno)); - } -} - -/* Parse the command line argument for advertised capabilities. */ -static int parse_advertise(const char *capabilities) -{ - const char *mtypes[] = { - "100baseT4", "100baseTx", "100baseTx-FD", "100baseTx-HD", - "10baseT", "10baseT-FD", "10baseT-HD", 0, - }; - char *endptr; - int cap_map[] = { 0x0200, 0x0180, 0x0100, 0x0080, 0x0060, 0x0040, 0x0020,}; - int i; - if ( ! capabilities) { - fprintf(stderr, "You passed -A 'NULL'. You must provide a media" - " list to advertise!\n"); - return -1; - } - if (debug) - fprintf(stderr, "Advertise string is '%s'.\n", capabilities); - for (i = 0; mtypes[i]; i++) - if (strcasecmp(mtypes[i], capabilities) == 0) - return cap_map[i]; - if ((i = strtol(capabilities, &endptr, 16)) <= 0xffff && endptr[0] == 0) - return i; - fprintf(stderr, "Invalid media advertisement value '%s'.\n" - " Either pass a numeric value or one of the following names:\n", - capabilities); - for (i = 0; mtypes[i]; i++) - fprintf(stderr, " %-14s %3.3x\n", mtypes[i], cap_map[i]); - return -1; -} - -/* Trivial versions if we don't link against libmii.c */ -static const char *media_names[] = { - "10baseT", "10baseT-FD", "100baseTx", "100baseTx-FD", "100baseT4", - "Flow-control", 0, -}; -/* Various non-good bits in the command register. */ -static const char *bmcr_bits[] = { - " Internal Collision-Test enabled!\n", "", /* 0x0080,0x0100 */ - " Restarted auto-negotiation in progress!\n", - " Transceiver isolated from the MII!\n", - " Transceiver powered down!\n", "", "", - " Transceiver in loopback mode!\n", - " Transceiver currently being reset!\n", -}; - -int show_basic_mii(long ioaddr, int phy_id) -{ - int mii_reg, i; - u16 mii_val[32]; - u16 bmcr, bmsr, new_bmsr, nway_advert, lkpar; - - for (mii_reg = 0; mii_reg < 8; mii_reg++) - mii_val[mii_reg] = mdio_read(ioaddr, phy_id, mii_reg); - if ( ! verbose) { - printf("Basic registers of MII PHY #%d: ", phy_id); - for (mii_reg = 0; mii_reg < 8; mii_reg++) - printf(" %4.4x", mii_val[mii_reg]); - printf(".\n"); - } - - if (mii_val[0] == 0xffff || mii_val[1] == 0x0000) { - printf(" No MII transceiver present!.\n"); - if (! opt_f) { - printf(" Use '--force' to view the information anyway.\n"); - return -1; - } - } - /* Descriptive rename. */ - bmcr = mii_val[0]; - bmsr = mii_val[1]; - nway_advert = mii_val[4]; - lkpar = mii_val[5]; - - if (lkpar & 0x4000) { - int negotiated = nway_advert & lkpar & 0x3e0; - int max_capability = 0; - /* Scan for the highest negotiated capability, highest priority - (100baseTx-FDX) to lowest (10baseT-HDX). */ - int media_priority[] = {8, 9, 7, 6, 5}; /* media_names[i-5] */ - printf(" The autonegotiated capability is %4.4x.\n", negotiated); - for (i = 0; media_priority[i]; i++) - if (negotiated & (1 << media_priority[i])) { - max_capability = media_priority[i]; - break; - } - if (max_capability) - printf("The autonegotiated media type is %s.\n", - media_names[max_capability - 5]); - else - printf("No common media type was autonegotiated!\n" - "This is extremely unusual and typically indicates a " - "configuration error.\n" "Perhaps the advertised " - "capability set was intentionally limited.\n"); - } - printf(" Basic mode control register 0x%4.4x:", bmcr); - if (bmcr & 0x1000) - printf(" Auto-negotiation enabled.\n"); - else - printf(" Auto-negotiation disabled, with\n" - " Speed fixed at 10%s mbps, %s-duplex.\n", - bmcr & 0x2000 ? "0" : "", - bmcr & 0x0100 ? "full":"half"); - for (i = 0; i < 9; i++) - if (bmcr & (0x0080<<i)) - printf(bmcr_bits[i]); - - new_bmsr = mdio_read(ioaddr, phy_id, 1); - if ((bmsr & 0x0016) == 0x0004) - printf( " You have link beat, and everything is working OK.\n"); - else - printf(" Basic mode status register 0x%4.4x ... %4.4x.\n" - " Link status: %sestablished.\n", - bmsr, new_bmsr, - bmsr & 0x0004 ? "" : - (new_bmsr & 0x0004) ? "previously broken, but now re" : "not "); - if (verbose) { - printf(" This transceiver is capable of "); - if (bmsr & 0xF800) { - for (i = 15; i >= 11; i--) - if (bmsr & (1<<i)) - printf(" %s", media_names[i-11]); - } else - printf("<Warning! No media capabilities>"); - printf(".\n"); - printf(" %s to perform Auto-negotiation, negotiation %scomplete.\n", - bmsr & 0x0008 ? "Able" : "Unable", - bmsr & 0x0020 ? "" : "not "); - } - - if (bmsr & 0x0010) - printf(" Remote fault detected!\n"); - if (bmsr & 0x0002) - printf(" *** Link Jabber! ***\n"); - - if (lkpar & 0x4000) { - printf(" Your link partner advertised %4.4x:", - lkpar); - for (i = 5; i >= 0; i--) - if (lkpar & (0x20<<i)) - printf(" %s", media_names[i]); - printf("%s.\n", lkpar & 0x0400 ? ", w/ 802.3X flow control" : ""); - } else if (lkpar & 0x00A0) - printf(" Your link partner is generating %s link beat (no" - " autonegotiation).\n", - lkpar & 0x0080 ? "100baseTx" : "10baseT"); - else if ( ! (bmcr & 0x1000)) - printf(" Link partner information is not exchanged when in" - " fixed speed mode.\n"); - else if ( ! (new_bmsr & 0x004)) - ; /* If no partner, do not report status. */ - else if (lkpar == 0x0001 || lkpar == 0x0000) { - printf(" Your link partner does not do autonegotiation, and this " - "transceiver type\n does not report the sensed link " - "speed.\n"); - } else - printf(" Your link partner is strange, status %4.4x.\n", lkpar); - - printf(" End of basic transceiver information.\n\n"); - return 0; -} - -static void monitor_status(long ioaddr, int phy_id) -{ - unsigned int baseline_1 = 0x55555555; /* Always show initial status. */ - - while (1) { - unsigned int new_1 = mdio_read(ioaddr, phy_id, 1); - if (new_1 != baseline_1) { - printf("%-12s 0x%4.4x 0x%4.4x\n", - new_1 & 0x04 ? (new_1==0xffff ? "unknown" : "up") : - new_1 & 0x20 ? "negotiating" : "down", - new_1, mdio_read(ioaddr, phy_id, 5)); - fflush(stdout); - baseline_1 = new_1; - } - sleep(1); - } -} - -int show_mii_details(long ioaddr, int phy_id) -{ - int mii_reg, mii_val; - printf(" MII PHY #%d transceiver registers:", phy_id); - for (mii_reg = 0; mii_reg < 32; mii_reg++) { - mii_val = mdio_read(skfd, phy_id, mii_reg); - printf("%s %4.4x", (mii_reg % 8) == 0 ? "\n " : "", - mii_val); - } - printf("\nThis version of 'mii-diag' has not been linked with " - "the libmii.c library.\n" - " That library provides extended transceiver status reports.\n"); - return 0; -} - -void monitor_mii(long ioaddr, int phy_id) -{ - fprintf(stderr, "\nThis version of 'mii-diag' has not been linked with " - "the libmii.c library \n" - " required for the media monitor option.\n"); -} - - - -/* - * Local variables: - * version-control: t - * kept-new-versions: 5 - * c-indent-level: 4 - * c-basic-offset: 4 - * tab-width: 4 - * compile-command: "gcc -Wall -Wstrict-prototypes -O mii-diag.c -DLIBMII libmii.c -o mii-diag" - * simple-compile-command: "gcc mii-diag.c -o mii-diag" - * End: - */ diff --git a/packages/net-tools/files/net-tools-1.57-bug22040.patch b/packages/net-tools/files/net-tools-1.57-bug22040.patch deleted file mode 100644 index 76f04d5421..0000000000 --- a/packages/net-tools/files/net-tools-1.57-bug22040.patch +++ /dev/null @@ -1,50 +0,0 @@ ---- net-tools-1.57/arp.c.orig Sun May 14 17:57:41 2000 -+++ net-tools-1.57/arp.c Sat Nov 25 15:05:27 2000 -@@ -618,6 +618,7 @@ - fprintf(stderr, _(" arp [-v] [<HW>] [-i <if>] -Ds <hostname> <if> [netmask <nm>] pub <-''-\n\n")); - - fprintf(stderr, _(" -a display (all) hosts in alternative (BSD) style\n")); -+ fprintf(stderr, _(" -e display (all) hosts in default (Linux) style\n")); - fprintf(stderr, _(" -s, --set set a new ARP entry\n")); - fprintf(stderr, _(" -d, --delete delete a specified entry\n")); - fprintf(stderr, _(" -v, --verbose be verbose\n")); ---- net-tools-1.57/man/en_US/arp.8.orig Sat Nov 25 15:13:26 2000 -+++ net-tools-1.57/man/en_US/arp.8 Sat Nov 25 15:15:12 2000 -@@ -3,7 +3,7 @@ - arp \- manipulate the system ARP cache - .SH SYNOPSIS - .B arp --.RB [ \-vn ] -+.RB [ \-evn ] - .RB [ "\-H type" ] - .RB [ "-i if" ] - .B -a -@@ -60,7 +60,7 @@ - shows numerical addresses instead of trying to determine symbolic host, port - or user names. - .TP --.B "\-H type, \-\-hw-type type" -+.B "\-H type, \-\-hw-type type, \-t type" - When setting or reading the ARP cache, this optional parameter tells - .B arp - which class of entries it should check for. The default value of -@@ -81,7 +81,8 @@ - .B hostname - parameter is not used, - .B all --entries will be displayed. -+entries will be displayed. -+The entries will be displayed in alternate (BSD) style. - .TP - .B "\-d hostname, \-\-delete hostname" - Remove any entry for the specified host. This can be used if the -@@ -91,6 +92,9 @@ - Use the interface - .BR ifa "'s" - hardware address. -+.TP -+.B "\-e" -+Shows the entries in default (Linux) style. - .TP - .B "\-i If, \-\-device If" - Select an interface. When dumping the ARP cache only entries matching diff --git a/packages/net-tools/files/net-tools-1.60-arp_overflow.patch b/packages/net-tools/files/net-tools-1.60-arp_overflow.patch deleted file mode 100644 index 4679a51675..0000000000 --- a/packages/net-tools/files/net-tools-1.60-arp_overflow.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- net-tools-1.60/arp.c.old 2005-08-03 08:23:46.000000000 +0200 -+++ net-tools-1.60/arp.c 2005-08-03 11:02:10.000000000 +0200 -@@ -235,7 +235,7 @@ - struct ifreq ifr; - struct hwtype *xhw; - -- strcpy(ifr.ifr_name, ifname); -+ strncpy(ifr.ifr_name, ifname, IFNAMSIZ); - if (ioctl(sockfd, SIOCGIFHWADDR, &ifr) < 0) { - fprintf(stderr, _("arp: cant get HW-Address for `%s': %s.\n"), ifname, strerror(errno)); - return (-1); diff --git a/packages/net-tools/files/net-tools-1.60-bcast.patch b/packages/net-tools/files/net-tools-1.60-bcast.patch deleted file mode 100644 index 9489e26352..0000000000 --- a/packages/net-tools/files/net-tools-1.60-bcast.patch +++ /dev/null @@ -1,99 +0,0 @@ ---- net-tools-1.60/ifconfig.c.broadcast 2004-11-03 12:05:30.000000000 +0100 -+++ net-tools-1.60/ifconfig.c 2004-11-04 15:39:32.817077232 +0100 -@@ -36,6 +36,7 @@ - #include <sys/ioctl.h> - #include <netinet/in.h> - #include <net/if.h> -+#include <netinet/ip.h> - #include <net/if_arp.h> - #include <stdio.h> - #include <errno.h> -@@ -138,6 +139,7 @@ - perror("SIOCSIFFLAGS"); - return -1; - } -+ - return (0); - } - -@@ -212,17 +214,41 @@ - exit(0); - } - --static int set_netmask(int skfd, struct ifreq *ifr, struct sockaddr *sa) -+static int set_netmask(int skfd, struct ifreq *ifr, struct sockaddr *sa, int new_bcast) - { - int err = 0; -- -- memcpy((char *) &ifr->ifr_netmask, (char *) sa, -- sizeof(struct sockaddr)); -+ struct sockaddr_in * ip_addr, * netmask, *bcast; -+ struct ifreq ifraddr; -+ struct ifreq ifrbcast; -+ -+ memcpy((char *) &ifr->ifr_netmask, (char *) sa, -+ sizeof(struct sockaddr)); - if (ioctl(skfd, SIOCSIFNETMASK, ifr) < 0) { - fprintf(stderr, "SIOCSIFNETMASK: %s\n", - strerror(errno)); - err = 1; - } -+ -+ if (new_bcast) { -+ memcpy(&ifraddr,ifr,sizeof(struct ifreq)); -+ memcpy(&ifrbcast,ifr,sizeof(struct ifreq)); -+ -+ if (ioctl(skfd, SIOCGIFADDR, &ifraddr) < 0) { -+ fprintf(stderr, "SIOCGIFADDR: %s\n", strerror(errno)); -+ err = 1; -+ } -+ -+ ip_addr = (struct sockaddr_in *)&ifraddr.ifr_addr; -+ netmask = (struct sockaddr_in *)&ifr->ifr_netmask; -+ bcast = (struct sockaddr_in *)&ifrbcast.ifr_broadaddr; -+ /* calculate new broadcast adress */ -+ bcast->sin_addr.s_addr = ip_addr->sin_addr.s_addr | ~netmask->sin_addr.s_addr; -+ /* set new broadcast adress */ -+ if (ioctl(skfd, SIOCSIFBRDADDR, &ifrbcast) < 0) { -+ fprintf(stderr, "SIOCSIFBROADCAST: %s\n", strerror(errno)); -+ err = 1; -+ } -+ } - return 0; - } - -@@ -234,7 +260,7 @@ - struct aftype *ap; - struct hwtype *hw; - struct ifreq ifr; -- int goterr = 0, didnetmask = 0, donetmask = 0; -+ int goterr = 0, didnetmask = 0, donetmask = 0, dobcast = 1; - char **spp; - int fd; - #if HAVE_AFINET6 -@@ -506,6 +532,7 @@ - strerror(errno)); - goterr = 1; - } -+ dobcast = 0; - spp++; - } - goterr |= set_flag(ifr.ifr_name, IFF_BROADCAST); -@@ -542,7 +569,7 @@ - continue; - } - didnetmask++; -- goterr = set_netmask(ap->fd, &ifr, &sa); -+ goterr = set_netmask(ap->fd, &ifr, &sa, dobcast); - spp++; - continue; - } -@@ -964,7 +991,7 @@ - /* set CIDR netmask */ - if (donetmask) { - donetmask = 0; -- goterr = set_netmask(skfd, &ifr, &sa_netmask); -+ goterr = set_netmask(skfd, &ifr, &sa_netmask, dobcast); - didnetmask++; - } - diff --git a/packages/net-tools/files/net-tools-1.60-bitkeeper.patch b/packages/net-tools/files/net-tools-1.60-bitkeeper.patch deleted file mode 100644 index 6871304d3b..0000000000 --- a/packages/net-tools/files/net-tools-1.60-bitkeeper.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- net-tools-1.60/netplug-1.2.9/Makefile.kill_bitkeeper 2005-01-10 11:36:32.000000000 +0100 -+++ net-tools-1.60/netplug-1.2.9/Makefile 2005-01-10 11:38:01.796744224 +0100 -@@ -24,10 +24,12 @@ - install $(install_opts) -m 755 scripts/rc.netplugd $(initdir)/netplugd - install -C $(install_opts) -m 444 man/man8/netplugd.8 $(mandir)/man8 - --bk_root := $(shell bk root) -+#bk_root := $(shell bk root) -+bk_root := $(shell) - tar_root := netplug-$(version) - tar_file := $(bk_root)/$(tar_root).tar.bz2 --files := $(shell bk sfiles -Ug) -+#files := $(shell bk sfiles -Ug) -+file := $(shell) - - tarball: $(tar_file) - diff --git a/packages/net-tools/files/net-tools-1.60-config.h b/packages/net-tools/files/net-tools-1.60-config.h deleted file mode 100644 index b01fd72bfe..0000000000 --- a/packages/net-tools/files/net-tools-1.60-config.h +++ /dev/null @@ -1,75 +0,0 @@ -/* -* config.h Automatically generated configuration includefile -* -* NET-TOOLS A collection of programs that form the base set of the -* NET-3 Networking Distribution for the LINUX operating -* system. -* -* DO NOT EDIT DIRECTLY -* -*/ - -/* - * - * Internationalization - * - * The net-tools package has currently been translated to French, - * German and Brazilian Portugese. Other translations are, of - * course, welcome. Answer `n' here if you have no support for - * internationalization on your system. - * - */ -#define I18N 0 - -/* - * - * Protocol Families. - * - */ -#define HAVE_AFUNIX 1 -#define HAVE_AFINET 1 -#define HAVE_AFINET6 1 -#define HAVE_AFIPX 0 -#define HAVE_AFATALK 0 -#define HAVE_AFAX25 0 -#define HAVE_AFNETROM 1 -#define HAVE_AFROSE 0 -#define HAVE_AFX25 0 -#define HAVE_AFECONET 0 -#define HAVE_AFDECnet 0 -#define HAVE_AFASH 0 - -/* - * - * Device Hardware types. - * - */ -#define HAVE_HWETHER 1 -#define HAVE_HWARC 1 -#define HAVE_HWSLIP 1 -#define HAVE_HWPPP 1 -#define HAVE_HWTUNNEL 1 -#define HAVE_HWSTRIP 1 -#define HAVE_HWTR 1 -#define HAVE_HWAX25 0 -#define HAVE_HWROSE 0 -#define HAVE_HWNETROM 1 -#define HAVE_HWX25 0 -#define HAVE_HWFR 1 -#define HAVE_HWSIT 0 -#define HAVE_HWFDDI 0 -#define HAVE_HWHIPPI 0 -#define HAVE_HWASH 0 -#define HAVE_HWHDLCLAPB 0 -#define HAVE_HWIRDA 1 -#define HAVE_HWEC 0 -#define HAVE_HWIB 0 - -/* - * - * Other Features. - * - */ -#define HAVE_FW_MASQUERADE 1 -#define HAVE_IP_TOOLS 1 -#define HAVE_MII 1 diff --git a/packages/net-tools/files/net-tools-1.60-config.make b/packages/net-tools/files/net-tools-1.60-config.make deleted file mode 100644 index 11082004cd..0000000000 --- a/packages/net-tools/files/net-tools-1.60-config.make +++ /dev/null @@ -1,36 +0,0 @@ -# I18N=0 -HAVE_AFUNIX=1 -HAVE_AFINET=1 -HAVE_AFINET6=1 -# HAVE_AFIPX=0 -# HAVE_AFATALK=0 -# HAVE_AFAX25=0 -HAVE_AFNETROM=1 -# HAVE_AFROSE=0 -# HAVE_AFX25=0 -# HAVE_AFECONET=0 -# HAVE_AFDECnet=0 -# HAVE_AFASH=0 -HAVE_HWETHER=1 -HAVE_HWARC=1 -HAVE_HWSLIP=1 -HAVE_HWPPP=1 -HAVE_HWTUNNEL=1 -HAVE_HWSTRIP=1 -HAVE_HWTR=1 -# HAVE_HWAX25=0 -# HAVE_HWROSE=0 -HAVE_HWNETROM=1 -# HAVE_HWX25=0 -HAVE_HWFR=1 -# HAVE_HWSIT=0 -# HAVE_HWFDDI=0 -# HAVE_HWHIPPI=0 -# HAVE_HWASH=0 -# HAVE_HWHDLCLAPB=0 -HAVE_HWIRDA=1 -# HAVE_HWEC=0 -# HAVE_HWIB=0 -HAVE_FW_MASQUERADE=1 -HAVE_IP_TOOLS=1 -HAVE_MII=1 diff --git a/packages/net-tools/files/net-tools-1.60-cycle.patch b/packages/net-tools/files/net-tools-1.60-cycle.patch deleted file mode 100644 index ce659ec5ad..0000000000 --- a/packages/net-tools/files/net-tools-1.60-cycle.patch +++ /dev/null @@ -1,311 +0,0 @@ ---- net-tools-1.60/lib/interface.c.cycle 2003-02-11 14:29:29.000000000 +0100 -+++ net-tools-1.60/lib/interface.c 2003-02-11 14:29:29.000000000 +0100 -@@ -90,6 +90,7 @@ - static struct interface *int_list, *int_last; - - static int if_readlist_proc(char *); -+static int if_readlist_rep(char *, struct interface *); - - static struct interface *add_interface(char *name) - { -@@ -128,11 +129,13 @@ - int for_all_interfaces(int (*doit) (struct interface *, void *), void *cookie) - { - struct interface *ife; -+ int err; - - if (!int_list && (if_readlist() < 0)) - return -1; - for (ife = int_list; ife; ife = ife->next) { -- int err = doit(ife, cookie); -+ if_readlist_rep(ife->name, ife); -+ err = doit(ife, cookie); - if (err) - return err; - } -@@ -369,6 +372,42 @@ - return err; - } - -+ -+static int if_readlist_rep(char *target, struct interface *ife) -+{ -+ FILE *fh; -+ char buf[512]; -+ int err; -+ -+ 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(); -+ } -+ fgets(buf, sizeof buf, fh); /* eat line */ -+ fgets(buf, sizeof buf, fh); -+ -+ procnetdev_vsn = procnetdev_version(buf); -+ -+ err = 0; -+ while (fgets(buf, sizeof buf, fh)) { -+ char *s, name[IFNAMSIZ]; -+ s = get_name(name, buf); -+ get_dev_fields(s, ife); -+ ife->statistics_valid = 1; -+ if (target && !strcmp(target,name)) -+ break; -+ } -+ if (ferror(fh)) { -+ perror(_PATH_PROCNET_DEV); -+ err = -1; -+ } -+ -+ fclose(fh); -+ return err; -+} -+ - int if_readlist(void) - { - int err = if_readlist_proc(NULL); ---- net-tools-1.60/man/en_US/netstat.8.cycle 2001-01-07 13:43:57.000000000 +0100 -+++ net-tools-1.60/man/en_US/netstat.8 2003-02-11 14:29:29.000000000 +0100 -@@ -30,6 +30,7 @@ - .RB [ \-\-program | \-p ] - .RB [ \-\-verbose | \-v ] - .RB [ \-\-continuous | \-c] -+.RB [delay] - .P - .B netstat - .RB { \-\-route | \-r } -@@ -39,6 +40,7 @@ - .RB [ \-\-numeric | \-n ] - .RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] - .RB [ \-\-continuous | \-c] -+.RB [delay] - .P - .B netstat - .RB { \-\-interfaces | \-i } -@@ -50,12 +52,14 @@ - .RB [ \-\-numeric | \-n ] - .RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] - .RB [ \-\-continuous | \-c] -+.RB [delay] - .P - .B netstat - .RB { \-\-groups | \-g } - .RB [ \-\-numeric | \-n ] - .RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] - .RB [ \-\-continuous | \-c] -+.RB [delay] - .P - .B netstat - .RB { \-\-masquerade | \-M } -@@ -63,12 +67,14 @@ - .RB [ \-\-numeric | \-n ] - .RB [ \-\-numeric-hosts ] [ \-\-numeric-ports ] [ \-\-numeric-ports ] - .RB [ \-\-continuous | \-c] -+.RB [delay] - .P - .B netstat - .RB { \-\-statistics | -s } - .RB [ \-\-tcp | \-t ] - .RB [ \-\-udp | \-u ] - .RB [ \-\-raw | \-w ] -+.RB [delay] - .P - .B netstat - .RB { \-\-version | \-V } -@@ -170,6 +176,10 @@ - Print routing information from the FIB. (This is the default.) - .SS "\-C" - Print routing information from the route cache. -+.SS delay -+Netstat will cycle printing through statistics every -+.B delay -+seconds. - .IR UP . - .P - .SH OUTPUT ---- net-tools-1.60/netstat.c.cycle 2003-02-11 14:29:29.000000000 +0100 -+++ net-tools-1.60/netstat.c 2003-02-11 15:07:26.000000000 +0100 -@@ -102,7 +102,7 @@ - #endif - - /* prototypes for statistics.c */ --void parsesnmp(int, int, int); -+int parsesnmp(int, int, int); - void inittab(void); - - typedef enum { -@@ -1440,6 +1440,8 @@ - - static int iface_info(void) - { -+ static int count=0; -+ - if (skfd < 0) { - if ((skfd = sockets_open(0)) < 0) { - perror("socket"); -@@ -1449,20 +1451,21 @@ - } - 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")); -+ if(!(count % 8)) -+ 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) { - perror(_("missing interface information")); - exit(1); - } -- if (flag_cnt) -+ if (!flag_cnt) { - free_interface_list(); -- else { - close(skfd); - skfd = -1; - } - -+ count++; - return 0; - } - -@@ -1478,7 +1481,7 @@ - { - fprintf(stderr, _("usage: netstat [-veenNcCF] [<Af>] -r netstat {-V|--version|-h|--help}\n")); - fprintf(stderr, _(" netstat [-vnNcaeol] [<Socket> ...]\n")); -- fprintf(stderr, _(" netstat { [-veenNac] -i | [-cnNe] -M | -s }\n\n")); -+ fprintf(stderr, _(" netstat { [-veenNac] -i | [-cnNe] -M | -s } [delay]\n\n")); - - fprintf(stderr, _(" -r, --route display routing table\n")); - fprintf(stderr, _(" -i, --interfaces display interface table\n")); -@@ -1514,6 +1517,7 @@ - (int argc, char *argv[]) { - int i; - int lop; -+ int reptimer = 1; - struct option longopts[] = - { - AFTRANS_OPTS, -@@ -1655,6 +1659,12 @@ - flag_sta++; - } - -+ if(argc == optind + 1) { -+ if((reptimer = atoi(argv[optind])) <= 0) -+ usage(); -+ flag_cnt++; -+ } -+ - if (flag_int + flag_rou + flag_mas + flag_sta > 1) - usage(); - -@@ -1666,7 +1676,7 @@ - - flag_arg = flag_tcp + flag_udp + flag_raw + flag_unx + flag_ipx - + flag_ax25 + flag_netrom + flag_igmp + flag_x25; -- -+ - if (flag_mas) { - #if HAVE_FW_MASQUERADE && HAVE_AFINET - #if MORE_THAN_ONE_MASQ_AF -@@ -1678,7 +1688,7 @@ - flag_not & FLAG_NUM_PORT, flag_exp); - if (i || !flag_cnt) - break; -- sleep(1); -+ sleep(reptimer); - } - #else - ENOSUPP("netstat.c", "FW_MASQUERADE"); -@@ -1688,9 +1698,15 @@ - } - - if (flag_sta) { -+ for(;;) { - inittab(); -- parsesnmp(flag_raw, flag_tcp, flag_udp); -- exit(0); -+ i = parsesnmp(flag_raw, flag_tcp, flag_udp); -+ -+ if(i || !flag_cnt) -+ break; -+ sleep(reptimer); -+ } -+ return(i); - } - - if (flag_rou) { -@@ -1712,7 +1728,7 @@ - i = route_info(afname, options); - if (i || !flag_cnt) - break; -- sleep(1); -+ sleep(reptimer); - } - return (i); - } -@@ -1721,7 +1737,7 @@ - i = iface_info(); - if (!flag_cnt || i) - break; -- sleep(1); -+ sleep(reptimer); - } - return (i); - } -@@ -1847,7 +1863,7 @@ - } - if (!flag_cnt || i) - break; -- sleep(1); -+ sleep(reptimer); - prg_cache_clear(); - } - return (i); ---- net-tools-1.60/statistics.c.cycle 2001-02-02 19:01:23.000000000 +0100 -+++ net-tools-1.60/statistics.c 2003-02-11 14:29:29.000000000 +0100 -@@ -338,7 +338,7 @@ - } - - --void parsesnmp(int flag_raw, int flag_tcp, int flag_udp) -+int parsesnmp(int flag_raw, int flag_tcp, int flag_udp) - { - FILE *f; - -@@ -347,12 +347,14 @@ - f = fopen("/proc/net/snmp", "r"); - if (!f) { - perror(_("cannot open /proc/net/snmp")); -- return; -+ return(1); - } - process_fd(f); - -- if (ferror(f)) -+ if (ferror(f)) { - perror("/proc/net/snmp"); -+ return(1); -+ } - - fclose(f); - -@@ -361,12 +363,14 @@ - if (f) { - process_fd(f); - -- if (ferror(f)) -- perror("/proc/net/netstat"); -+ if (ferror(f)) { -+ perror("/proc/net/netstat"); -+ return(1); -+ } - - fclose(f); - } -- return; -+ return(0); - } - - diff --git a/packages/net-tools/files/net-tools-1.60-de.patch b/packages/net-tools/files/net-tools-1.60-de.patch deleted file mode 100644 index f015f13d24..0000000000 --- a/packages/net-tools/files/net-tools-1.60-de.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- net-tools-1.60/po/de.po.old 2005-02-16 16:46:02.000000000 +0100 -+++ net-tools-1.60/po/de.po 2005-02-16 16:54:07.886323928 +0100 -@@ -64,7 +64,7 @@ - - #: ../arp.c:467 - msgid "(incomplete)" --msgstr "(unvollsändig)" -+msgstr "(unvollständig)" - - #: ../arp.c:484 - #, c-format diff --git a/packages/net-tools/files/net-tools-1.60-duplicate-tcp.patch b/packages/net-tools/files/net-tools-1.60-duplicate-tcp.patch deleted file mode 100644 index 316ac65a5b..0000000000 --- a/packages/net-tools/files/net-tools-1.60-duplicate-tcp.patch +++ /dev/null @@ -1,194 +0,0 @@ ---- net-tools-1.60/netstat.c.foo Mon Apr 22 14:25:20 2002 -+++ net-tools-1.60/netstat.c Mon Apr 22 14:25:22 2002 -@@ -435,6 +435,162 @@ - " will not be shown, you would have to be root to see it all.)\n")); - } - -+#define TCP_HASH_SIZE 1009 -+ -+static struct tcp_node { -+ struct tcp_node *next; -+ char *socket_pair; -+} *tcp_node_hash[TCP_HASH_SIZE]; -+ -+static unsigned int tcp_node_compute_string_hash(const char *p) -+{ -+ unsigned int h = *p; -+ -+ if (h) -+ for (p += 1; *p != '\0'; p++) -+ h = (h << 5) - h + *p; -+ -+ return h; -+} -+ -+#define TCP_NODE_HASH_STRING(x) \ -+ (tcp_node_compute_string_hash(x) % TCP_HASH_SIZE) -+ -+static void tcp_node_hash_clear(void) -+{ -+ int i; -+ struct tcp_node *next_node; -+ struct tcp_node *tmp_node; -+ for (i=0; i < TCP_HASH_SIZE; i++) { -+ if (tcp_node_hash[i]) { -+ /* free the children of this hash bucket */ -+ next_node = tcp_node_hash[i]->next; -+ while (next_node) { -+ tmp_node = next_node; -+ next_node = next_node->next; -+ free(tmp_node->socket_pair); -+ free(tmp_node); -+ } -+ -+ /* free the bucket itself */ -+ free(tcp_node_hash[i]); -+ tcp_node_hash[i] = NULL; -+ } -+ } -+} -+ -+/* This function takes a socket pair string. If it already exists in -+ the hash it returns -1, otherwise it returns 0. */ -+ -+static int tcp_node_hash_check_and_append(const char *local_addr, -+ int local_port, -+ const char *rem_addr, -+ int rem_port) -+{ -+ unsigned int hash_val; -+ struct tcp_node *tmp_node; -+ int tmp_string_len; -+ char *tmp_string;; -+ -+ /* Size of the string is the size of the two lengths of the address -+ strings plus enough sizes for the colons and the ports. */ -+ tmp_string_len = strlen(local_addr) + strlen(rem_addr) + 32; -+ tmp_string = malloc(tmp_string_len); -+ if (!tmp_string) -+ return 0; -+ -+ if (snprintf(tmp_string, tmp_string_len - 1, "%s:%d:%s:%d", -+ local_addr, local_port, rem_addr, rem_port) < 0) { -+ free(tmp_string); -+ return 0; -+ } -+ -+ hash_val = TCP_NODE_HASH_STRING(tmp_string); -+ -+ /* See if we have to allocate this node */ -+ if (!tcp_node_hash[hash_val]) { -+ tcp_node_hash[hash_val] = malloc(sizeof(struct tcp_node)); -+ if (!tcp_node_hash[hash_val]) { -+ free(tmp_string); -+ return 0; -+ } -+ -+ memset(tcp_node_hash[hash_val], 0, sizeof(struct tcp_node)); -+ -+ /* Stuff this new value into the hash bucket and return early */ -+ tcp_node_hash[hash_val]->socket_pair = tmp_string; -+ return 0; -+ } -+ -+ /* Try to find the value in the hash bucket. */ -+ tmp_node = tcp_node_hash[hash_val]; -+ while (tmp_node) { -+ if (!strcmp(tmp_node->socket_pair, tmp_string)) { -+ free(tmp_string); -+ return -1; -+ } -+ tmp_node = tmp_node->next; -+ } -+ -+ /* If we got this far it means that it isn't in the hash bucket. -+ Add it to the front since it's faster that way. */ -+ tmp_node = tcp_node_hash[hash_val]; -+ -+ tcp_node_hash[hash_val] = malloc(sizeof(struct tcp_node)); -+ if (!tcp_node_hash[hash_val]) { -+ free(tmp_string); -+ tcp_node_hash[hash_val] = tmp_node; -+ return 0; -+ } -+ -+ tcp_node_hash[hash_val]->socket_pair = tmp_string; -+ tcp_node_hash[hash_val]->next = tmp_node; -+ -+ return 0; -+} -+ -+#if 0 -+static void tcp_node_hash_report_bucket_size(void) -+{ -+ int max = 0; -+ int min = 0; -+ int num = 0; -+ int total = 0; -+ struct tcp_node *tmp_node; -+ int tmp, i; -+ float avg; -+ -+ for (i=0; i < TCP_HASH_SIZE; i++) { -+ tmp_node = tcp_node_hash[i]; -+ if (!tmp_node) -+ continue; -+ -+ tmp = 0; -+ -+ num++; -+ tmp = 1; -+ -+ while (tmp_node) { -+ tmp++; -+ tmp_node = tmp_node->next; -+ } -+ -+ total += tmp; -+ if (tmp > max) -+ max = tmp; -+ -+ if (min == 0 || tmp < min) -+ min = tmp; -+ } -+ -+ avg = (float)total/(float)num; -+ -+ printf("%d nodes in %d buckets min/max/avg %d/%d/%.2f\n", -+ total, num, min, max, avg); -+ -+} -+#endif -+ - #if HAVE_AFNETROM - static const char *netrom_state[] = - { -@@ -752,11 +908,20 @@ - fprintf(stderr, _("warning, got bogus tcp line.\n")); - return; - } -+ - if ((ap = get_afntype(((struct sockaddr *) &localaddr)->sa_family)) == NULL) { - fprintf(stderr, _("netstat: unsupported address family %d !\n"), - ((struct sockaddr *) &localaddr)->sa_family); - return; - } -+ -+ /* make sure that we haven't seen this socket pair before */ -+ if (tcp_node_hash_check_and_append(local_addr, local_port, -+ rem_addr, rem_port) < 0) { -+ /* fprintf(stderr, _("warning, got duplicate tcp line.\n")); */ -+ return; -+ } -+ - if (state == TCP_LISTEN) { - time_len = 0; - retr = 0L; -@@ -1849,6 +2014,7 @@ - break; - sleep(1); - prg_cache_clear(); -+ tcp_node_hash_clear(); - } - return (i); - } diff --git a/packages/net-tools/files/net-tools-1.60-gcc33.patch b/packages/net-tools/files/net-tools-1.60-gcc33.patch deleted file mode 100644 index a6ae422a72..0000000000 --- a/packages/net-tools/files/net-tools-1.60-gcc33.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- net-tools-1.60/mii-tool.c.gcc33 2003-05-22 23:34:06.000000000 -0400 -+++ net-tools-1.60/mii-tool.c 2003-05-22 23:34:57.000000000 -0400 -@@ -378,17 +378,17 @@ - - /*--------------------------------------------------------------------*/ - --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, -+const char *usage = "\ -+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: 100baseT4, 100baseTx-FD, 100baseTx-HD, 10baseT-FD, 10baseT-HD,\n\ - (to advertise both HD and FD) 100baseTx, 10baseT\n"; - - int main(int argc, char **argv) diff --git a/packages/net-tools/files/net-tools-1.60-gcc34.patch b/packages/net-tools/files/net-tools-1.60-gcc34.patch deleted file mode 100644 index 5f700c128e..0000000000 --- a/packages/net-tools/files/net-tools-1.60-gcc34.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- net-tools-1.60/lib/inet_sr.c.gcc34 2000-02-20 22:46:45.000000000 +0100 -+++ net-tools-1.60/lib/inet_sr.c 2004-03-30 15:57:25.276049571 +0200 -@@ -105,6 +105,7 @@ - case 2: - isnet = 0; break; - default: -+ ; - } - - /* Fill in the other fields. */ ---- net-tools-1.60/hostname.c.gcc34 2004-03-30 15:58:12.979830341 +0200 -+++ net-tools-1.60/hostname.c 2004-03-30 15:58:47.110380585 +0200 -@@ -98,6 +98,7 @@ - fprintf(stderr, _("%s: name too long\n"), program_name); - break; - default: -+ ; - } - exit(1); - }; -@@ -117,6 +118,7 @@ - fprintf(stderr, _("%s: name too long\n"), program_name); - break; - default: -+ ; - } - exit(1); - }; -@@ -180,6 +182,7 @@ - printf("%s\n", hp->h_name); - break; - default: -+ ; - } - } - diff --git a/packages/net-tools/files/net-tools-1.60-hostname_man.patch b/packages/net-tools/files/net-tools-1.60-hostname_man.patch deleted file mode 100644 index 84a4051cdf..0000000000 --- a/packages/net-tools/files/net-tools-1.60-hostname_man.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- net-tools-1.60/man/en_US/hostname.1.gethostbyname 2005-10-14 11:33:41.000000000 +0200 -+++ net-tools-1.60/man/en_US/hostname.1 2005-10-15 11:46:14.646697600 +0200 -@@ -99,6 +99,32 @@ - complete FQDN of the system is returned with - .BR "hostname \-\-fqdn" . - -+.LP -+The function -+.BR gethostname(2) -+is used to get the hostname. Only when the -+.BR "hostname \-s" -+is called will -+.BR gethostbyname(3) -+be called. The difference in -+.BR gethostname(2) -+and -+.BR gethostbyname(3) -+is that -+.BR gethostbyname(3) -+is network aware, so it consults -+.IR /etc/nsswitch.conf -+and -+.IR /etc/host.conf -+to decide whether to read information in -+.IR /etc/sysconfig/network -+or -+.IR /etc/hosts -+. To add another dimension to this, -+the -+.B hostname -+is also set when the network interface is brought up. -+ - .SS "SET NAME" - When called with one argument or with the - .B \-\-file diff --git a/packages/net-tools/files/net-tools-1.60-ifaceopt.patch b/packages/net-tools/files/net-tools-1.60-ifaceopt.patch deleted file mode 100644 index a561d07986..0000000000 --- a/packages/net-tools/files/net-tools-1.60-ifaceopt.patch +++ /dev/null @@ -1,52 +0,0 @@ ---- net-tools-1.60/netstat.c.ifaceopt 2005-03-01 12:11:43.695661632 +0100 -+++ net-tools-1.60/netstat.c 2005-03-01 12:16:37.601981080 +0100 -@@ -1658,10 +1658,11 @@ - { - fprintf(stderr, _("usage: netstat [-veenNcCF] [<Af>] -r netstat {-V|--version|-h|--help}\n")); - fprintf(stderr, _(" netstat [-vnNcaeol] [<Socket> ...]\n")); -- fprintf(stderr, _(" netstat { [-veenNac] -i[<Iface>] | [-cnNe] -M | -s } [delay]\n\n")); -+ fprintf(stderr, _(" netstat { [-veenNac] -I[<Iface>] | [-veenNac] -i | [-cnNe] -M | -s } [delay]\n\n")); - - fprintf(stderr, _(" -r, --route display routing table\n")); -- fprintf(stderr, _(" -i, --interfaces=[<Iface>] display interface table\n")); -+ fprintf(stderr, _(" -I, --interfaces=[<Iface>] display interface table for <Iface>\n")); -+ fprintf(stderr, _(" -i, --interfaces display interface table\n")); - fprintf(stderr, _(" -g, --groups display multicast group memberships\n")); - fprintf(stderr, _(" -s, --statistics display networking statistics (like SNMP)\n")); - #if HAVE_FW_MASQUERADE -@@ -1700,7 +1701,8 @@ - { - AFTRANS_OPTS, - {"version", 0, 0, 'V'}, -- {"interfaces", 2, 0, 'i'}, -+ {"interfaces", 2, 0, 'I'}, -+ {"interfaces", 0, 0, 'i'}, - {"help", 0, 0, 'h'}, - {"route", 0, 0, 'r'}, - #if HAVE_FW_MASQUERADE -@@ -1738,7 +1740,8 @@ - getroute_init(); /* Set up AF routing support */ - - afname[0] = '\0'; -- while ((i = getopt_long(argc, argv, "MCFA:acdegphi::nNorstuVv?wxl", longopts, &lop)) != EOF) -+ -+ while ((i = getopt_long(argc, argv, "MCFA:acdegphiI::nNorstuVv?wxl", longopts, &lop)) != EOF) - switch (i) { - case -1: - break; -@@ -1779,11 +1782,14 @@ - case 'p': - flag_prg++; - break; -- case 'i': -+ case 'I': - if (optarg && strcmp(optarg, "(null)")) - flag_int_name = strdup(optarg); - flag_int++; - break; -+ case 'i': -+ flag_int++; -+ break; - case 'n': - flag_not |= FLAG_NUM; - break; diff --git a/packages/net-tools/files/net-tools-1.60-ifconfig.patch b/packages/net-tools/files/net-tools-1.60-ifconfig.patch deleted file mode 100644 index a209bd4197..0000000000 --- a/packages/net-tools/files/net-tools-1.60-ifconfig.patch +++ /dev/null @@ -1,107 +0,0 @@ ---- net-tools-1.60/ifconfig.c.new 2005-07-20 12:47:29.000000000 +0200 -+++ net-tools-1.60/ifconfig.c 2005-07-20 12:54:57.000000000 +0200 -@@ -175,6 +175,32 @@ - 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] [-v] [-s] <interface> [[<AF>] <address>]\n")); -@@ -249,7 +275,7 @@ - err = 1; - } - } -- return 0; -+ return err; - } - - int main(int argc, char **argv) -@@ -415,6 +441,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; - } -@@ -425,6 +453,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; - } -@@ -435,6 +465,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; - } -@@ -456,6 +488,8 @@ - } - if (!strcmp(*spp, "-dynamic")) { - goterr |= clr_flag(ifr.ifr_name, IFF_DYNAMIC); -+ if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0) -+ fprintf(stderr, _("Warning: Interface %s still in DYNAMIC mode.\n"), ifr.ifr_name); - spp++; - continue; - } -@@ -513,6 +547,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; - } -@@ -569,7 +605,7 @@ - continue; - } - didnetmask++; -- goterr = set_netmask(ap->fd, &ifr, &sa, dobcast); -+ goterr |= set_netmask(ap->fd, &ifr, &sa, dobcast); - spp++; - continue; - } -@@ -640,6 +676,8 @@ - } - if (!strcmp(*spp, "-pointopoint")) { - goterr |= clr_flag(ifr.ifr_name, IFF_POINTOPOINT); -+ if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0) -+ fprintf(stderr, _("Warning: Interface %s still in POINTOPOINT mode.\n"), ifr.ifr_name); - spp++; - continue; - } diff --git a/packages/net-tools/files/net-tools-1.60-ifconfig_ib.patch b/packages/net-tools/files/net-tools-1.60-ifconfig_ib.patch deleted file mode 100644 index b5a234f25d..0000000000 --- a/packages/net-tools/files/net-tools-1.60-ifconfig_ib.patch +++ /dev/null @@ -1,202 +0,0 @@ ---- net-tools-1.60/config.in.ifconfig_ib 2000-05-21 16:32:12.000000000 +0200 -+++ net-tools-1.60/config.in 2005-02-09 10:36:26.000000000 +0100 -@@ -82,6 +82,7 @@ - bool '(Cisco)-HDLC/LAPB support' HAVE_HWHDLCLAPB n - bool 'IrDA support' HAVE_HWIRDA y - bool 'Econet hardware support' HAVE_HWEC n -+bool 'InfiniBand hardware support' HAVE_HWIB y - * - * - * Other Features. ---- net-tools-1.60/lib/hw.c.ifconfig_ib 2000-05-20 20:27:25.000000000 +0200 -+++ net-tools-1.60/lib/hw.c 2005-02-09 10:36:26.000000000 +0100 -@@ -73,6 +73,8 @@ - - extern struct hwtype ec_hwtype; - -+extern struct hwtype ib_hwtype; -+ - static struct hwtype *hwtypes[] = - { - -@@ -144,6 +146,9 @@ - #if HAVE_HWX25 - &x25_hwtype, - #endif -+#if HAVE_HWIB -+ &ib_hwtype, -+#endif - &unspec_hwtype, - NULL - }; -@@ -217,6 +222,9 @@ - #if HAVE_HWEC - ec_hwtype.title = _("Econet"); - #endif -+#if HAVE_HWIB -+ ib_hwtype.title = _("InfiniBand"); -+#endif - sVhwinit = 1; - } - ---- net-tools-1.60/lib/ib.c.ifconfig_ib 2005-02-09 10:36:26.000000000 +0100 -+++ net-tools-1.60/lib/ib.c 2005-02-09 10:42:21.000000000 +0100 -@@ -0,0 +1,147 @@ -+/* -+ * lib/ib.c This file contains an implementation of the "Infiniband" -+ * support functions. -+ * -+ * Version: $Id: ib.c,v 1.1 2005/02/06 11:00:47 tduffy Exp $ -+ * -+ * Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> -+ * Copyright 1993 MicroWalt Corporation -+ * Tom Duffy <tduffy@sun.com> -+ * -+ * 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_HWIB -+#include <sys/types.h> -+#include <sys/socket.h> -+#include <net/if_arp.h> -+/*#include <linux/if_infiniband.h> - not in gcc-kernheaders*/ -+#include <stdlib.h> -+#include <stdio.h> -+#include <errno.h> -+#include <ctype.h> -+#include <string.h> -+#include <unistd.h> -+#include "net-support.h" -+#include "pathnames.h" -+#include "intl.h" -+#include "util.h" -+ -+extern struct hwtype ib_hwtype; -+ -+#define INFINIBAND_ALEN 20 -+ -+/* Display an InfiniBand address in readable format. */ -+static char *pr_ib(unsigned char *ptr) -+{ -+ static char buff[128]; -+ char *pos; -+ unsigned int i; -+ -+ pos = buff; -+ for (i = 0; i < INFINIBAND_ALEN; i++) { -+ pos += sprintf(pos, "%02X:", (*ptr++ & 0377)); -+ } -+ buff[strlen(buff) - 1] = '\0'; -+ -+ /* 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) -+ ); -+ */ -+ return (buff); -+} -+ -+ -+/* Input an Infiniband address and convert to binary. */ -+static int in_ib(char *bufp, struct sockaddr *sap) -+{ -+ unsigned char *ptr; -+ char c, *orig; -+ int i; -+ unsigned val; -+ -+ sap->sa_family = ib_hwtype.type; -+ ptr = sap->sa_data; -+ -+ i = 0; -+ orig = bufp; -+ while ((*bufp != '\0') && (i < INFINIBAND_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_ib(%s): invalid infiniband 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_ib(%s): invalid infiniband 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 == INFINIBAND_ALEN) { -+#ifdef DEBUG -+ fprintf(stderr, _("in_ib(%s): trailing : ignored!\n"), -+ orig) -+#endif -+ ; /* nothing */ -+ } -+ bufp++; -+ } -+ } -+ -+ /* That's it. Any trailing junk? */ -+ if ((i == INFINIBAND_ALEN) && (*bufp != '\0')) { -+#ifdef DEBUG -+ fprintf(stderr, _("in_ib(%s): trailing junk!\n"), orig); -+ errno = EINVAL; -+ return (-1); -+#endif -+ } -+#ifdef DEBUG -+ fprintf(stderr, "in_ib(%s): %s\n", orig, pr_ib(sap->sa_data)); -+#endif -+ -+ return (0); -+} -+ -+ -+struct hwtype ib_hwtype = -+{ -+ "infiniband", NULL, ARPHRD_INFINIBAND, INFINIBAND_ALEN, -+ pr_ib, in_ib, NULL -+}; -+ -+#endif /* HAVE_HWIB */ ---- net-tools-1.60/lib/Makefile.ifconfig_ib 2000-10-28 12:59:42.000000000 +0200 -+++ net-tools-1.60/lib/Makefile 2005-02-09 10:36:26.000000000 +0100 -@@ -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 ib.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 diff --git a/packages/net-tools/files/net-tools-1.60-inet6-lookup.patch b/packages/net-tools/files/net-tools-1.60-inet6-lookup.patch deleted file mode 100644 index 3d4854a6fb..0000000000 --- a/packages/net-tools/files/net-tools-1.60-inet6-lookup.patch +++ /dev/null @@ -1,81 +0,0 @@ ---- net-tools-1.60/lib/inet6.c.inet6-lookup 2000-10-28 13:04:00.000000000 +0200 -+++ net-tools-1.60/lib/inet6.c 2003-05-21 15:28:50.000000000 +0200 -@@ -133,28 +133,9 @@ - } - - --static int INET6_getsock(char *bufp, struct sockaddr *sap) --{ -- struct sockaddr_in6 *sin6; -- -- sin6 = (struct sockaddr_in6 *) sap; -- sin6->sin6_family = AF_INET6; -- sin6->sin6_port = 0; -- -- if (inet_pton(AF_INET6, bufp, sin6->sin6_addr.s6_addr) <= 0) -- return (-1); -- -- return 16; /* ?;) */ --} -- - static int INET6_input(int type, char *bufp, struct sockaddr *sap) - { -- switch (type) { -- case 1: -- return (INET6_getsock(bufp, sap)); -- default: -- return (INET6_resolve(bufp, (struct sockaddr_in6 *) sap)); -- } -+ return (INET6_resolve(bufp, (struct sockaddr_in6 *) sap)); - } - - ---- net-tools-1.60/lib/inet6_gr.c.inet6-lookup 2001-04-01 16:48:06.000000000 +0200 -+++ net-tools-1.60/lib/inet6_gr.c 2003-05-21 15:28:50.000000000 +0200 -@@ -100,7 +100,7 @@ - addr6p[4], addr6p[5], addr6p[6], addr6p[7]); - inet6_aftype.input(1, addr6, (struct sockaddr *) &saddr6); - snprintf(addr6, sizeof(addr6), "%s/%d", -- inet6_aftype.sprint((struct sockaddr *) &saddr6, 1), -+ inet6_aftype.sprint((struct sockaddr *) &saddr6, numeric), - prefix_len); - - /* Fetch and resolve the nexthop address. */ -@@ -109,7 +109,7 @@ - naddr6p[4], naddr6p[5], naddr6p[6], naddr6p[7]); - inet6_aftype.input(1, naddr6, (struct sockaddr *) &snaddr6); - snprintf(naddr6, sizeof(naddr6), "%s", -- inet6_aftype.sprint((struct sockaddr *) &snaddr6, 1)); -+ inet6_aftype.sprint((struct sockaddr *) &snaddr6, numeric)); - - /* Decode the flags. */ - strcpy(flags, "U"); ---- net-tools-1.60/lib/inet6_sr.c.inet6-lookup 2000-05-22 23:18:37.000000000 +0200 -+++ net-tools-1.60/lib/inet6_sr.c 2003-05-21 15:28:50.000000000 +0200 -@@ -63,7 +63,7 @@ - if (*args == NULL) - return (usage()); - -- strcpy(target, *args++); -+ safe_strncpy(target, *args++, sizeof(target)); - if (!strcmp(target, "default")) { - prefix_len = 0; - memset(&sa6, 0, sizeof(sa6)); -@@ -112,7 +112,7 @@ - return (usage()); - if (rt.rtmsg_flags & RTF_GATEWAY) - return (usage()); -- strcpy(gateway, *args); -+ safe_strncpy(gateway, *args, sizeof(gateway)); - if (inet6_aftype.input(1, gateway, - (struct sockaddr *) &sa6) < 0) { - inet6_aftype.herror(gateway); -@@ -152,7 +152,7 @@ - } - if (devname) { - memset(&ifr, 0, sizeof(ifr)); -- strcpy(ifr.ifr_name, devname); -+ safe_strncpy(ifr.ifr_name, devname, sizeof(ifr.ifr_name)); - - if (ioctl(skfd, SIOGIFINDEX, &ifr) < 0) { - perror("SIOGIFINDEX"); diff --git a/packages/net-tools/files/net-tools-1.60-interface.patch b/packages/net-tools/files/net-tools-1.60-interface.patch deleted file mode 100644 index 3a1bc910aa..0000000000 --- a/packages/net-tools/files/net-tools-1.60-interface.patch +++ /dev/null @@ -1,110 +0,0 @@ ---- net-tools-1.60/netstat.c.interface 2003-08-25 17:06:30.000000000 +0200 -+++ net-tools-1.60/netstat.c 2003-08-25 17:08:41.000000000 +0200 -@@ -129,6 +129,7 @@ - #define E_IOCTL -3 - - int flag_int = 0; -+char *flag_int_name = NULL; - int flag_rou = 0; - int flag_mas = 0; - int flag_sta = 0; -@@ -1441,6 +1442,7 @@ - static int iface_info(void) - { - static int count=0; -+ struct interface *ife = NULL; - - if (skfd < 0) { - if ((skfd = sockets_open(0)) < 0) { -@@ -1455,7 +1457,11 @@ - 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) { -+ if (flag_int_name) { -+ ife = lookup_interface(flag_int_name); -+ do_if_print(ife, &flag_all); -+ } -+ else if (for_all_interfaces(do_if_print, &flag_all) < 0) { - perror(_("missing interface information")); - exit(1); - } -@@ -1481,30 +1487,31 @@ - { - fprintf(stderr, _("usage: netstat [-veenNcCF] [<Af>] -r netstat {-V|--version|-h|--help}\n")); - fprintf(stderr, _(" netstat [-vnNcaeol] [<Socket> ...]\n")); -- fprintf(stderr, _(" netstat { [-veenNac] -i | [-cnNe] -M | -s } [delay]\n\n")); -+ fprintf(stderr, _(" netstat { [-veenNac] -i[<Iface>] | [-cnNe] -M | -s } [delay]\n\n")); - -- fprintf(stderr, _(" -r, --route display routing table\n")); -- fprintf(stderr, _(" -i, --interfaces display interface table\n")); -- fprintf(stderr, _(" -g, --groups display multicast group memberships\n")); -- fprintf(stderr, _(" -s, --statistics display networking statistics (like SNMP)\n")); -+ fprintf(stderr, _(" -r, --route display routing table\n")); -+ fprintf(stderr, _(" -i, --interfaces=[<Iface>] display interface table\n")); -+ fprintf(stderr, _(" -g, --groups display multicast group memberships\n")); -+ fprintf(stderr, _(" -s, --statistics display networking statistics (like SNMP)\n")); - #if HAVE_FW_MASQUERADE -- fprintf(stderr, _(" -M, --masquerade display masqueraded connections\n\n")); -+ fprintf(stderr, _(" -M, --masquerade display masqueraded connections\n\n")); - #endif -- fprintf(stderr, _(" -v, --verbose be verbose\n")); -- fprintf(stderr, _(" -n, --numeric don't resolve names\n")); -- fprintf(stderr, _(" --numeric-hosts don't resolve host names\n")); -- fprintf(stderr, _(" --numeric-ports don't resolve port names\n")); -- fprintf(stderr, _(" --numeric-users don't resolve user names\n")); -- fprintf(stderr, _(" -N, --symbolic resolve hardware names\n")); -- fprintf(stderr, _(" -e, --extend display other/more information\n")); -- fprintf(stderr, _(" -p, --programs display PID/Program name for sockets\n")); -- fprintf(stderr, _(" -c, --continuous continuous listing\n\n")); -- fprintf(stderr, _(" -l, --listening display listening server sockets\n")); -- fprintf(stderr, _(" -a, --all, --listening display all sockets (default: connected)\n")); -- fprintf(stderr, _(" -o, --timers display timers\n")); -- fprintf(stderr, _(" -F, --fib display Forwarding Information Base (default)\n")); -- fprintf(stderr, _(" -C, --cache display routing cache instead of FIB\n\n")); -+ fprintf(stderr, _(" -v, --verbose be verbose\n")); -+ fprintf(stderr, _(" -n, --numeric don't resolve names\n")); -+ fprintf(stderr, _(" --numeric-hosts don't resolve host names\n")); -+ fprintf(stderr, _(" --numeric-ports don't resolve port names\n")); -+ fprintf(stderr, _(" --numeric-users don't resolve user names\n")); -+ fprintf(stderr, _(" -N, --symbolic resolve hardware names\n")); -+ fprintf(stderr, _(" -e, --extend display other/more information\n")); -+ fprintf(stderr, _(" -p, --programs display PID/Program name for sockets\n")); -+ fprintf(stderr, _(" -c, --continuous continuous listing\n\n")); -+ fprintf(stderr, _(" -l, --listening display listening server sockets\n")); -+ fprintf(stderr, _(" -a, --all, --listening display all sockets (default: connected)\n")); -+ fprintf(stderr, _(" -o, --timers display timers\n")); -+ fprintf(stderr, _(" -F, --fib display Forwarding Information Base (default)\n")); -+ fprintf(stderr, _(" -C, --cache display routing cache instead of FIB\n\n")); - -+ fprintf(stderr, _(" <Iface>: Name of interface to monitor/list.\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, _(" List of possible address families (which support routing):\n")); -@@ -1522,7 +1529,7 @@ - { - AFTRANS_OPTS, - {"version", 0, 0, 'V'}, -- {"interfaces", 0, 0, 'i'}, -+ {"interfaces", 2, 0, 'i'}, - {"help", 0, 0, 'h'}, - {"route", 0, 0, 'r'}, - #if HAVE_FW_MASQUERADE -@@ -1560,7 +1567,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:acdegphi::nNorstuVv?wxl", longopts, &lop)) != EOF) - switch (i) { - case -1: - break; -@@ -1602,6 +1609,8 @@ - flag_prg++; - break; - case 'i': -+ if (optarg && strcmp(optarg, "(null)")) -+ flag_int_name = strdup(optarg); - flag_int++; - break; - case 'n': diff --git a/packages/net-tools/files/net-tools-1.60-interface_stack.patch b/packages/net-tools/files/net-tools-1.60-interface_stack.patch deleted file mode 100644 index c16f539753..0000000000 --- a/packages/net-tools/files/net-tools-1.60-interface_stack.patch +++ /dev/null @@ -1,115 +0,0 @@ -Bugzilla Bug 176714 – *** stack smashing detected ***: /sbin/ifconfig terminated - ---- lib/interface.c-old 2005-12-30 11:08:15.000000000 -0800 -+++ lib/interface.c 2005-12-30 11:17:02.000000000 -0800 -@@ -201,10 +201,11 @@ - return err; - } - --static char *get_name(char *name, char *p) -+static char *get_name(char **namep, char *p) - { - while (isspace(*p)) - p++; -+ char *name = *namep = p; - while (*p) { - if (isspace(*p)) - break; -@@ -305,9 +306,10 @@ - { - static int proc_read; - FILE *fh; -- char buf[512]; - struct interface *ife; - int err; -+ char *line = NULL; -+ size_t linelen = 0; - - if (proc_read) - return 0; -@@ -320,8 +322,11 @@ - _PATH_PROCNET_DEV, strerror(errno)); - return if_readconf(); - } -- fgets(buf, sizeof buf, fh); /* eat line */ -- fgets(buf, sizeof buf, fh); -+ if (getline(&line, &linelen, fh) == -1 /* eat line */ -+ || getline(&line, &linelen, fh) == -1) { -+ err = -1; -+ goto out; -+ } - - #if 0 /* pretty, but can't cope with missing fields */ - fmt = proc_gen_fmt(_PATH_PROCNET_DEV, 1, fh, -@@ -346,13 +351,13 @@ - if (!fmt) - return -1; - #else -- procnetdev_vsn = procnetdev_version(buf); -+ procnetdev_vsn = procnetdev_version(line); - #endif - - err = 0; -- while (fgets(buf, sizeof buf, fh)) { -- char *s, name[IFNAMSIZ]; -- s = get_name(name, buf); -+ while (getline(&line, &linelen, fh) != -1) { -+ char *s, *name; -+ s = get_name(&name, line); - ife = add_interface(name); - get_dev_fields(s, ife); - ife->statistics_valid = 1; -@@ -368,6 +373,8 @@ - #if 0 - free(fmt); - #endif -+ out: -+ free(line); - fclose(fh); - return err; - } -@@ -376,8 +383,9 @@ - static int if_readlist_rep(char *target, struct interface *ife) - { - FILE *fh; -- char buf[512]; - int err; -+ char *line = NULL; -+ size_t linelen = 0; - - fh = fopen(_PATH_PROCNET_DEV, "r"); - if (!fh) { -@@ -385,15 +393,18 @@ - _PATH_PROCNET_DEV, strerror(errno)); - return if_readconf(); - } -- fgets(buf, sizeof buf, fh); /* eat line */ -- fgets(buf, sizeof buf, fh); -+ if (getline(&line, &linelen, fh) == -1 /* eat line */ -+ || getline(&line, &linelen, fh) == -1) { -+ err = -1; -+ goto out; -+ } - -- procnetdev_vsn = procnetdev_version(buf); -+ procnetdev_vsn = procnetdev_version(line); - - err = 0; -- while (fgets(buf, sizeof buf, fh)) { -- char *s, name[IFNAMSIZ]; -- s = get_name(name, buf); -+ while (getline(&line, &linelen, fh) != -1) { -+ char *s, *name; -+ s = get_name(&name, line); - get_dev_fields(s, ife); - if (target && !strcmp(target,name)) - { -@@ -406,6 +417,8 @@ - err = -1; - } - -+ out: -+ free(line); - fclose(fh); - return err; - } diff --git a/packages/net-tools/files/net-tools-1.60-ipx.patch b/packages/net-tools/files/net-tools-1.60-ipx.patch deleted file mode 100644 index d4458b9462..0000000000 --- a/packages/net-tools/files/net-tools-1.60-ipx.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff -urN net-tools-1.60/lib/ipx_gr.c net-tools-1.60.new/lib/ipx_gr.c ---- net-tools-1.60/lib/ipx_gr.c 2000-10-28 12:59:42.000000000 +0200 -+++ net-tools-1.60.new/lib/ipx_gr.c 2003-05-20 10:54:37.000000000 +0200 -@@ -64,7 +64,7 @@ - continue; - - /* Fetch and resolve the Destination */ -- (void) ap->input(5, net, &sa); -+ (void) ap->input(1, net, &sa); - strcpy(net, ap->sprint(&sa, numeric)); - - /* Fetch and resolve the Router Net */ -diff -urN net-tools-1.60/netstat.c net-tools-1.60.new/netstat.c ---- net-tools-1.60/netstat.c 2003-05-20 11:00:57.000000000 +0200 -+++ net-tools-1.60.new/netstat.c 2003-05-20 10:58:25.000000000 +0200 -@@ -1412,13 +1412,13 @@ - } - - /* Fetch and resolve the Source */ -- (void) ap->input(4, sad, &sa); -+ (void) ap->input(0, sad, &sa); - safe_strncpy(buf, ap->sprint(&sa, flag_not), sizeof(buf)); - snprintf(sad, sizeof(sad), "%s:%04X", buf, sport); - - if (!nc) { - /* Fetch and resolve the Destination */ -- (void) ap->input(4, dad, &sa); -+ (void) ap->input(0, dad, &sa); - safe_strncpy(buf, ap->sprint(&sa, flag_not), sizeof(buf)); - snprintf(dad, sizeof(dad), "%s:%04X", buf, dport); - } else -diff -urN net-tools-1.60/version.h net-tools-1.60.new/version.h ---- net-tools-1.60/version.h 1970-01-01 01:00:00.000000000 +0100 -+++ net-tools-1.60.new/version.h 2003-05-19 16:07:49.000000000 +0200 -@@ -0,0 +1 @@ -+#define RELEASE "net-tools 1.60" diff --git a/packages/net-tools/files/net-tools-1.60-isofix.patch b/packages/net-tools/files/net-tools-1.60-isofix.patch deleted file mode 100644 index 4bbaff18a9..0000000000 --- a/packages/net-tools/files/net-tools-1.60-isofix.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- net-tools-1.60/po/de.po.isofix 2000-10-28 12:59:43.000000000 +0200 -+++ net-tools-1.60/po/de.po 2005-01-10 11:29:29.407639208 +0100 -@@ -9,7 +9,7 @@ - "Last-Translator: Ralf Bächle <ralf@gnu.org>\n" - "Language-Team:\n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=iso8859-1\n" -+"Content-Type: text/plain; charset=iso-8859-1\n" - "Content-Transfer-Encoding: 8bit\n" - - #: ../arp.c:110 ../arp.c:269 ---- net-tools-1.60/po/fr.po.isofix 2000-02-20 22:47:00.000000000 +0100 -+++ net-tools-1.60/po/fr.po 2005-01-10 11:29:23.613520048 +0100 -@@ -9,7 +9,7 @@ - "Last-Translator: J.M.Vansteene <vanstee@worldnet.fr>\n" - "Language-Team:\n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=iso8859-1\n" -+"Content-Type: text/plain; charset=iso-8859-1\n" - "Content-Transfer-Encoding: 8bit\n" - - #: ../arp.c:110 ../arp.c:269 ---- net-tools-1.60/po/pt_BR.po.isofix 2000-02-20 22:47:06.000000000 +0100 -+++ net-tools-1.60/po/pt_BR.po 2005-01-10 11:29:16.294632688 +0100 -@@ -14,7 +14,7 @@ - "PO-Revision-Date: 1999-03-01 02:38+0100\n" - "Last-Translator: Arnaldo Carvalho de Melo <acme@conectiva.com.br>\n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=ISO8859-9\n" -+"Content-Type: text/plain; charset=iso-8859-9\n" - "Content-Transfer-Encoding: 8bit\n" - - #: ../arp.c:110 ../arp.c:269 diff --git a/packages/net-tools/files/net-tools-1.60-man.patch b/packages/net-tools/files/net-tools-1.60-man.patch deleted file mode 100644 index 2deac4a46b..0000000000 --- a/packages/net-tools/files/net-tools-1.60-man.patch +++ /dev/null @@ -1,132 +0,0 @@ ---- net-tools-1.60/man/en_US/ifconfig.8.man 2000-10-28 12:59:42.000000000 +0200 -+++ net-tools-1.60/man/en_US/ifconfig.8 2003-05-22 16:58:41.000000000 +0200 -@@ -177,7 +177,7 @@ - command. - .LP - Interrupt problems with Ethernet device drivers fail with EAGAIN. See --.I http://cesdis.gsfc.nasa.gov/linux/misc/irq-conflict.html -+.I http://www.scyld.com/expert/irq-conflict.html - for more information. - .SH FILES - .I /proc/net/socket ---- net-tools-1.60/man/en_US/hostname.1.man 1999-02-27 13:11:14.000000000 +0100 -+++ net-tools-1.60/man/en_US/hostname.1 2003-05-22 17:04:30.000000000 +0200 -@@ -10,8 +10,6 @@ - nisdomainname \- show or set system's NIS/YP domain name - .br - ypdomainname \- show or set the system's NIS/YP domain name --.br --nodename \- show or set the system's DECnet node name - - .SH SYNOPSIS - .B hostname -@@ -96,12 +94,6 @@ - function. This is also known as the YP/NIS domain name of the system. - - .LP --.B nodename --will print the DECnet node name of the system as returned by the --.BR getnodename (2) --function. -- --.LP - .B dnsdomainname - will print the domain part of the FQDN (Fully Qualified Domain Name). The - complete FQDN of the system is returned with -@@ -184,11 +176,6 @@ - .I "\-i, \-\-ip-address" - Display the IP address(es) of the host. - .TP --.I "\-n, \-\-node" --Display the DECnet node name. If a parameter is given (or --.B \-\-file name --) the root can also set a new node name. --.TP - .I "\-s, \-\-short" - Display the short host name. This is the host name cut at the first dot. - .TP ---- net-tools-1.60/man/fr_FR/hostname.1.man 1999-04-18 21:23:46.000000000 +0200 -+++ net-tools-1.60/man/fr_FR/hostname.1 2003-05-22 17:05:04.000000000 +0200 -@@ -9,8 +9,6 @@ - nisdomainname \- affiche ou définit le nom de domaine NIS/YP du système - .br - ypdomainname \- affiche ou définit le nom de domaine NIS/YP du système --.br --nodename \- affiche ou définit le nom de domaine DECnet du système - - .SH SYNOPSIS - .B hostname -@@ -87,14 +85,6 @@ - .BR getdomainname (2) - . Ceci est connu comme nom de domaine YP/NIS du système. - -- --.LP --.B nodename --fournit le nom de noeud DECnet du système tel qu'il est retourné par la --fonction --.BR getnodename (2) --. -- - .LP - .B dnsdomainname - fournit la partie domaine du nom complètement qualifié - FQDN (Fully -@@ -180,11 +170,6 @@ - .I "\-i, \-\-ip-address" - Affiche la (les) adresse(s) IP de l'hôte. - .TP --.I "\-n, \-\-node" --Affiche le nom de noeud DECnet. Si un paramètre est fourni (ou --.B \-\-file nom_fichier --) le super-utilisateur peut également définir un nouveau nom de neud. --.TP - .I "\-s, \-\-short" - Affiche le nom d'hôte en format court. Il s'agit du nom d'hôte coupé au - premier point. ---- net-tools-1.60/man/de_DE/hostname.1.man 1999-03-15 21:31:16.000000000 +0100 -+++ net-tools-1.60/man/de_DE/hostname.1 2003-05-22 17:06:01.000000000 +0200 -@@ -15,8 +15,6 @@ - nisdomainname \- den NIS/YP Domainnamen anzeigen oder setzen - .br - ypdomainname \- den NIS/YP Domainnamen anzeigen oder setzen --.br --nodename \- den DECnet-Knotennamen anzeigen oder setzen - - .SH SYNOPSIS - .B hostname -@@ -101,12 +99,6 @@ - des Systems genannt. - - .LP --.B nodename --druckt den DECnet-Knotennamen des Systems, wie er von der --.BR getnodename (2) --Function ermittelt wird, aus. -- --.LP - .B dnsdomainname - druckt den Domainteil des FQDN (Fully Qualified Domain Name oder zu deutsch - vollst\(:andig spezifizierter Domainname) aus. Der vollst\(:andige FQDN -@@ -117,8 +109,8 @@ - .SS "NAME SETZEN" - Wenn mit nur einem Argument oder mit der - .B \-\-file --Option aufgerufen, dann setzen diese Kommandos den Rechnernamen, den NIS/YP --Domainnamen oder den DECnet-Knotennamen. -+Option aufgerufen, dann setzen diese Kommandos den Rechnernamen oder den NIS/YP -+Domainnamen. - - .LP - Nur der Superuser darf den Namen \(:andern. -@@ -198,11 +190,6 @@ - .I "\-i, \-\-ip-address" - Die IP-Adresse(n) des Rechners anzeigen und beenden. - .TP --.I "\-n, \-\-node" --Den DECnet-Knotennamen anzeigen. Wenn ein Argument oder die --.B \-\-file name --Option angegeben wird, dann kann Root auch einen neuen Knotennamen setzen. --.TP - .I "\-s, \-\-short" - Den Kurznamen anzeigen. Dies ist der ab dem ersten Punkt abgeschnittene - Rechnername. diff --git a/packages/net-tools/files/net-tools-1.60-manydevs.patch b/packages/net-tools/files/net-tools-1.60-manydevs.patch deleted file mode 100644 index d07ffbacb3..0000000000 --- a/packages/net-tools/files/net-tools-1.60-manydevs.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- lib/nstrcmp.c.bak Fri Apr 12 00:15:01 2002 -+++ lib/nstrcmp.c Fri Apr 12 00:15:29 2002 -@@ -16,8 +16,8 @@ - b++; - } - if (isdigit(*a)) { -- if (!isdigit(*b)) -- return -1; -+ if (!isdigit(*b)) -+ return 1; - while (a > astr) { - a--; - if (!isdigit(*a)) { diff --git a/packages/net-tools/files/net-tools-1.60-mii-tool-obsolete.patch b/packages/net-tools/files/net-tools-1.60-mii-tool-obsolete.patch deleted file mode 100644 index efb7f27ad7..0000000000 --- a/packages/net-tools/files/net-tools-1.60-mii-tool-obsolete.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- net-tools-1.60/man/en_US/mii-tool.8.obsolete 2000-05-21 16:21:38.000000000 +0200 -+++ net-tools-1.60/man/en_US/mii-tool.8 2004-11-11 10:45:51.155113000 +0100 -@@ -18,6 +18,12 @@ - [\fB\-F\fR, \fB\-\-force=\fImedia\fR] - .RI [ "interface\ ..." ] - -+.SH NOTE -+.P -+This program is obsolete. Valid media are only \fB100baseT4\fR, -+\fB100baseTx-FD\fR,\fB100baseTx-HD\fR, \fB10baseT-FD\fR and -+\fB10baseT-HD\fR ethernet cards. For replacement check \fBethtool\fB. -+ - .SH DESCRIPTION - This utility checks or sets the status of a network interface's Media - Independent Interface (MII) unit. Most fast ethernet adapters use an -@@ -72,6 +78,9 @@ - commas. Valid media are \fB100baseT4\fR, \fB100baseTx-FD\fR, - \fB100baseTx-HD\fR, \fB10baseT-FD\fR, and \fB10baseT-HD\fR. - -+.SH SEE ALSO -+ethtool(8) -+ - .SH AUTHORS - David Hinds \- dhinds@pcmcia.sourceforge.org - .br diff --git a/packages/net-tools/files/net-tools-1.60-miiioctl.patch b/packages/net-tools/files/net-tools-1.60-miiioctl.patch deleted file mode 100644 index 4859273ede..0000000000 --- a/packages/net-tools/files/net-tools-1.60-miiioctl.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- net-tools-1.60/include/mii.h.bar Tue Jul 31 11:49:39 2001 -+++ net-tools-1.60/include/mii.h Tue Jul 31 11:49:33 2001 -@@ -11,11 +11,9 @@ - - /* network interface ioctl's for MII commands */ - #ifndef SIOCGMIIPHY --#define SIOCGMIIPHY (SIOCDEVPRIVATE) /* Read from current PHY */ --#define SIOCGMIIREG (SIOCDEVPRIVATE+1) /* Read any PHY register */ --#define SIOCSMIIREG (SIOCDEVPRIVATE+2) /* Write any PHY register */ --#define SIOCGPARAMS (SIOCDEVPRIVATE+3) /* Read operational parameters */ --#define SIOCSPARAMS (SIOCDEVPRIVATE+4) /* Set operational parameters */ -+#define SIOCGMIIPHY 0x8947 /* Read from current PHY */ -+#define SIOCGMIIREG 0x8948 /* Read any PHY register */ -+#define SIOCSMIIREG 0x8949 /* Write any PHY register */ - #endif - - #include <linux/types.h> diff --git a/packages/net-tools/files/net-tools-1.60-nameif.patch b/packages/net-tools/files/net-tools-1.60-nameif.patch deleted file mode 100644 index 7ba1f0002d..0000000000 --- a/packages/net-tools/files/net-tools-1.60-nameif.patch +++ /dev/null @@ -1,67 +0,0 @@ ---- net-tools-1.60/nameif.c.nameif 2000-10-18 19:26:29.000000000 +0200 -+++ net-tools-1.60/nameif.c 2003-03-19 11:02:01.000000000 +0100 -@@ -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: nameif.c,v 1.1 2000/10/18 17:26:29 ak Exp $ -+ * $Id: nameif.c,v 1.3 2003/03/06 23:26:52 ecki Exp $ - */ - #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; - } -@@ -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); - } - diff --git a/packages/net-tools/files/net-tools-1.60-netmask.patch b/packages/net-tools/files/net-tools-1.60-netmask.patch deleted file mode 100644 index 532898acaf..0000000000 --- a/packages/net-tools/files/net-tools-1.60-netmask.patch +++ /dev/null @@ -1,61 +0,0 @@ ---- net-tools-1.60/ifconfig.c.netmask 2001-04-13 20:25:18.000000000 +0200 -+++ net-tools-1.60/ifconfig.c 2004-11-02 15:31:56.454594456 +0100 -@@ -23,6 +23,7 @@ - * 20001008 - Bernd Eckenfels, Patch from RH for setting mtu - * (default AF was wrong) - * 20010404 - Arnaldo Carvalho de Melo, use setlocale -+ * 20040831 - Florin Malita <fmalita@glenayre.com> delayed CIDR netmask - */ - - #define DFLT_AF "inet" -@@ -227,13 +228,13 @@ - - int main(int argc, char **argv) - { -- struct sockaddr sa; -+ struct sockaddr sa, sa_netmask; - 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, donetmask = 0; - char **spp; - int fd; - #if HAVE_AFINET6 -@@ -903,16 +904,16 @@ - /* 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, &sa_netmask, NULL)) { - case -1: - usage(); - break; - case 1: - if (didnetmask) - usage(); -- -- goterr = set_netmask(skfd, &ifr, &sa); -- didnetmask++; -+ -+ /* delay setting the CIDR netmask till after setting the addr */ -+ donetmask = 1; - break; - } - } -@@ -960,6 +961,13 @@ - } - } - -+ /* set CIDR netmask */ -+ if (donetmask) { -+ donetmask = 0; -+ goterr = set_netmask(skfd, &ifr, &sa_netmask); -+ didnetmask++; -+ } -+ - /* - * Don't do the set_flag() if the address is an alias with a - at the - * end, since it's deleted already! - Roman diff --git a/packages/net-tools/files/net-tools-1.60-netstat_stop_trim.patch b/packages/net-tools/files/net-tools-1.60-netstat_stop_trim.patch deleted file mode 100644 index 425b5c6ca0..0000000000 --- a/packages/net-tools/files/net-tools-1.60-netstat_stop_trim.patch +++ /dev/null @@ -1,80 +0,0 @@ ---- net-tools-1.60/man/en_US/netstat.8.old 2006-02-10 11:18:11.000000000 +0100 -+++ net-tools-1.60/man/en_US/netstat.8 2006-02-10 11:22:19.000000000 +0100 -@@ -176,6 +176,10 @@ - Print routing information from the FIB. (This is the default.) - .SS "\-C" - Print routing information from the route cache. -+.SS "\-Z \-\-context" -+If SELinux enabled print SELinux context. -+.SS "\-T \-\-trim" -+Stop trimming long addresses. - .SS delay - Netstat will cycle printing through statistics every - .B delay ---- net-tools-1.60/netstat.c.old 2006-02-10 11:18:12.000000000 +0100 -+++ net-tools-1.60/netstat.c 2006-02-10 11:13:50.000000000 +0100 -@@ -157,6 +157,9 @@ - int flag_arg = 0; - int flag_ver = 0; - int flag_selinux = 0; -+int flag_trim = 0; -+ -+ - - FILE *procinfo; - -@@ -980,17 +983,21 @@ - get_sname(htons(local_port), "tcp", - flag_not & FLAG_NUM_PORT)); - -- if ((strlen(local_addr) + strlen(buffer)) >= 27) -- local_addr[27 - strlen(buffer) - 1] = '\0'; -+ if (!flag_trim) { -+ if ((strlen(local_addr) + strlen(buffer)) >= 27) -+ local_addr[27 - strlen(buffer) - 1] = '\0'; -+ } - - strcat(local_addr, ":"); - strncat(local_addr, buffer, sizeof(local_addr)); - local_addr[sizeof(local_addr)-1] = 0; - snprintf(buffer, sizeof(buffer), "%s", - get_sname(htons(rem_port), "tcp", flag_not & FLAG_NUM_PORT)); -- -- if ((strlen(rem_addr) + strlen(buffer)) >= 27) -- rem_addr[27 - strlen(buffer) - 1] = '\0'; -+ -+ if (!flag_trim) { -+ if ((strlen(rem_addr) + strlen(buffer)) >= 27) -+ rem_addr[27 - strlen(buffer) - 1] = '\0'; -+ } - - strcat(rem_addr, ":"); - strncat(rem_addr, buffer, sizeof(rem_addr)); -@@ -1776,6 +1783,7 @@ - {"fib", 0, 0, 'F'}, - {"groups", 0, 0, 'g'}, - {"context", 0, 0, 'Z'}, -+ {"trim", 0, 0, 'T'}, - {NULL, 0, 0, 0} - }; - -@@ -1788,7 +1796,7 @@ - - afname[0] = '\0'; - -- while ((i = getopt_long(argc, argv, "MCFA:acdegphiI::nNorstuVv?wxlZ", longopts, &lop)) != EOF) -+ while ((i = getopt_long(argc, argv, "MCFA:acdegphiI::nNorstuVv?wxlZT", longopts, &lop)) != EOF) - switch (i) { - case -1: - break; -@@ -1904,6 +1912,10 @@ - usage(); - case 's': - flag_sta++; -+ break; -+ case 'T': -+ flag_trim++; -+ break; - } - - if(argc == optind + 1) { diff --git a/packages/net-tools/files/net-tools-1.60-netstat_ulong.patch b/packages/net-tools/files/net-tools-1.60-netstat_ulong.patch deleted file mode 100644 index 56869dc539..0000000000 --- a/packages/net-tools/files/net-tools-1.60-netstat_ulong.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- net-tools-1.60/netstat.c.netstat_ulong 2004-11-11 14:28:44.000000000 +0100 -+++ net-tools-1.60/netstat.c 2004-11-11 14:31:14.099313000 +0100 -@@ -273,7 +273,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; diff --git a/packages/net-tools/files/net-tools-1.60-note.patch b/packages/net-tools/files/net-tools-1.60-note.patch deleted file mode 100644 index 4853ccd635..0000000000 --- a/packages/net-tools/files/net-tools-1.60-note.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- net-tools-1.60/man/en_US/hostname.1.note 2004-11-24 12:09:28.000000000 +0100 -+++ net-tools-1.60/man/en_US/hostname.1 2004-11-24 12:16:41.121050760 +0100 -@@ -191,6 +191,10 @@ - ) then root can also set a new NIS domain. - .SH FILES - .B /etc/hosts -+.B /etc/sysconfig/network -+.SH NOTE -+Note that hostname doesn't change anything permanently. After reboot -+original names from \fI/etc/hosts\fR are used again. - .SH AUTHOR - Peter Tobias, <tobias@et-inf.fho-emden.de> - .br diff --git a/packages/net-tools/files/net-tools-1.60-num-ports.patch b/packages/net-tools/files/net-tools-1.60-num-ports.patch deleted file mode 100644 index 829c9d6a77..0000000000 --- a/packages/net-tools/files/net-tools-1.60-num-ports.patch +++ /dev/null @@ -1,78 +0,0 @@ ---- net-tools-1.60/netstat.c.num-ports 2004-11-24 12:19:24.000000000 +0100 -+++ net-tools-1.60/netstat.c 2004-11-25 16:00:45.208367104 +0100 -@@ -765,8 +765,8 @@ - txq = 0L; - } - safe_strncpy(local_addr, ap->sprint((struct sockaddr *) &localaddr, -- flag_not), sizeof(local_addr)); -- safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, flag_not), -+ flag_not & FLAG_NUM_HOST), sizeof(local_addr)); -+ safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, flag_not & FLAG_NUM_HOST), - sizeof(rem_addr)); - if (flag_all || (flag_lst && !rem_port) || (!flag_lst && rem_port)) { - snprintf(buffer, sizeof(buffer), "%s", -@@ -921,11 +921,11 @@ - if (flag_all || (notnull(remaddr) && !flag_lst) || (!notnull(remaddr) && flag_lst)) - { - safe_strncpy(local_addr, ap->sprint((struct sockaddr *) &localaddr, -- flag_not), sizeof(local_addr)); -+ flag_not & FLAG_NUM_HOST), sizeof(local_addr)); - snprintf(buffer, sizeof(buffer), "%s", - get_sname(htons(local_port), "udp", - flag_not & FLAG_NUM_PORT)); -- if ((strlen(local_addr) + strlen(buffer)) > 22) -+ if ((strlen(local_addr) + strlen(buffer)) >= 27) - local_addr[22 - strlen(buffer)] = '\0'; - strcat(local_addr, ":"); - strncat(local_addr, buffer, sizeof(local_addr)); -@@ -934,8 +934,8 @@ - snprintf(buffer, sizeof(buffer), "%s", - get_sname(htons(rem_port), "udp", flag_not & FLAG_NUM_PORT)); - safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, -- flag_not), sizeof(rem_addr)); -- if ((strlen(rem_addr) + strlen(buffer)) > 22) -+ flag_not & FLAG_NUM_HOST), sizeof(rem_addr)); -+ if ((strlen(rem_addr) + strlen(buffer)) >= 27) - rem_addr[22 - strlen(buffer)] = '\0'; - strcat(rem_addr, ":"); - strncat(rem_addr, buffer, sizeof(rem_addr)); -@@ -958,7 +958,7 @@ - retr, timeout); - break; - } -- printf("udp %6ld %6ld %-23s %-23s %-12s", -+ printf("udp %6ld %6ld %-27s %-27s %-12s", - rxq, txq, local_addr, rem_addr, udp_state); - - finish_this_one(uid,inode,timers); -@@ -1045,8 +1045,8 @@ - get_sname(htons(local_port), "raw", - flag_not & FLAG_NUM_PORT)); - safe_strncpy(local_addr, ap->sprint((struct sockaddr *) &localaddr, -- flag_not), sizeof(local_addr)); -- if ((strlen(local_addr) + strlen(buffer)) > 22) -+ flag_not & FLAG_NUM_HOST), sizeof(local_addr)); -+ if ((strlen(local_addr) + strlen(buffer)) >= 27) - local_addr[22 - strlen(buffer)] = '\0'; - strcat(local_addr, ":"); - strncat(local_addr, buffer, sizeof(local_addr)); -@@ -1055,8 +1055,8 @@ - snprintf(buffer, sizeof(buffer), "%s", - get_sname(htons(rem_port), "raw", flag_not & FLAG_NUM_PORT)); - safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, -- flag_not), sizeof(rem_addr)); -- if ((strlen(rem_addr) + strlen(buffer)) > 22) -+ flag_not & FLAG_NUM_HOST), sizeof(rem_addr)); -+ if ((strlen(rem_addr) + strlen(buffer)) >= 27) - rem_addr[22 - strlen(buffer)] = '\0'; - strcat(rem_addr, ":"); - strncat(rem_addr, buffer, sizeof(rem_addr)); -@@ -1081,7 +1081,7 @@ - retr, timeout); - break; - } -- printf("raw %6ld %6ld %-23s %-23s %-12d", -+ printf("raw %6ld %6ld %-27s %-27s %-12d", - rxq, txq, local_addr, rem_addr, state); - - finish_this_one(uid,inode,timers); diff --git a/packages/net-tools/files/net-tools-1.60-overflow.patch b/packages/net-tools/files/net-tools-1.60-overflow.patch deleted file mode 100644 index d363149514..0000000000 --- a/packages/net-tools/files/net-tools-1.60-overflow.patch +++ /dev/null @@ -1,63 +0,0 @@ -diff -ur net-tools-1.60.orig/netstat.c net-tools-1.60/netstat.c ---- net-tools-1.60.orig/netstat.c 2004-04-07 11:47:05.000000000 -0400 -+++ net-tools-1.60/netstat.c 2004-04-07 16:47:15.000000000 -0400 -@@ -777,7 +777,8 @@ - local_addr[22 - strlen(buffer)] = '\0'; - - strcat(local_addr, ":"); -- strcat(local_addr, buffer); -+ strncat(local_addr, buffer, sizeof(local_addr)); -+ local_addr[sizeof(local_addr)-1] = 0; - snprintf(buffer, sizeof(buffer), "%s", - get_sname(htons(rem_port), "tcp", flag_not & FLAG_NUM_PORT)); - -@@ -785,7 +786,8 @@ - rem_addr[22 - strlen(buffer)] = '\0'; - - strcat(rem_addr, ":"); -- strcat(rem_addr, buffer); -+ strncat(rem_addr, buffer, sizeof(rem_addr)); -+ rem_addr[sizeof(rem_addr)-1] = 0; - timers[0] = '\0'; - - if (flag_opt) -@@ -926,7 +928,8 @@ - if ((strlen(local_addr) + strlen(buffer)) > 22) - local_addr[22 - strlen(buffer)] = '\0'; - strcat(local_addr, ":"); -- strcat(local_addr, buffer); -+ strncat(local_addr, buffer, sizeof(local_addr)); -+ local_addr[sizeof(local_addr)-1] = 0; - - snprintf(buffer, sizeof(buffer), "%s", - get_sname(htons(rem_port), "udp", flag_not & FLAG_NUM_PORT)); -@@ -935,7 +938,8 @@ - if ((strlen(rem_addr) + strlen(buffer)) > 22) - rem_addr[22 - strlen(buffer)] = '\0'; - strcat(rem_addr, ":"); -- strcat(rem_addr, buffer); -+ strncat(rem_addr, buffer, sizeof(rem_addr)); -+ rem_addr[sizeof(rem_addr)-1] = 0; - - timers[0] = '\0'; - if (flag_opt) -@@ -1045,7 +1049,8 @@ - if ((strlen(local_addr) + strlen(buffer)) > 22) - local_addr[22 - strlen(buffer)] = '\0'; - strcat(local_addr, ":"); -- strcat(local_addr, buffer); -+ strncat(local_addr, buffer, sizeof(local_addr)); -+ local_addr[sizeof(local_addr)-1] = 0; - - snprintf(buffer, sizeof(buffer), "%s", - get_sname(htons(rem_port), "raw", flag_not & FLAG_NUM_PORT)); -@@ -1054,7 +1059,8 @@ - if ((strlen(rem_addr) + strlen(buffer)) > 22) - rem_addr[22 - strlen(buffer)] = '\0'; - strcat(rem_addr, ":"); -- strcat(rem_addr, buffer); -+ strncat(rem_addr, buffer, sizeof(rem_addr)); -+ rem_addr[sizeof(rem_addr)-1] = 0; - - timers[0] = '\0'; - if (flag_opt) diff --git a/packages/net-tools/files/net-tools-1.60-parse.patch b/packages/net-tools/files/net-tools-1.60-parse.patch deleted file mode 100644 index 25890f1b04..0000000000 --- a/packages/net-tools/files/net-tools-1.60-parse.patch +++ /dev/null @@ -1,70 +0,0 @@ ---- net-tools-1.60/statistics.c.parse 2004-09-06 10:45:35.595130240 +0200 -+++ net-tools-1.60/statistics.c 2004-09-06 10:43:11.000000000 +0200 -@@ -289,7 +289,7 @@ - return &dummytab; - } - --void process_fd(FILE *f) -+void process_fd(FILE *f,int file_desc) // added file_desc to show propriate error mesg - { - char buf1[1024], buf2[1024]; - char *sp, *np, *p; -@@ -297,12 +297,16 @@ - int endflag; - struct tabtab *tab; - -+ if (strcmp(buf1,"\n") == 0) // cut leading break -+ if (!fgets(buf1, sizeof buf1, f)) -+ break; - if (!fgets(buf2, sizeof buf2, f)) - break; -+ - sp = strchr(buf1, ':'); -- np = strchr(buf2, ':'); -- if (!np || !sp) -- goto formaterr; -+ np = strchr(buf2, ':'); -+ if (!np || !sp) -+ goto formaterr; - *sp = '\0'; - - tab = newtable(snmptabs, buf1); -@@ -333,7 +337,12 @@ - return; - - formaterr: -- perror(_("error parsing /proc/net/snmp")); -+ switch(file_desc) { -+ case 0: perror(_("error parsing /proc/net/snmp")); -+ break; -+ case 1: perror(_("error parsing /proc/net/netstat")); -+ break; -+ } - return; - } - -@@ -343,13 +352,13 @@ - FILE *f; - - f_raw = flag_raw; f_tcp = flag_tcp; f_udp = flag_udp; -- -+ - f = fopen("/proc/net/snmp", "r"); - if (!f) { - perror(_("cannot open /proc/net/snmp")); - return(1); - } -- process_fd(f); -+ process_fd(f,0); - - if (ferror(f)) { - perror("/proc/net/snmp"); -@@ -361,7 +370,7 @@ - f = fopen("/proc/net/netstat", "r"); - - if (f) { -- process_fd(f); -+ process_fd(f,1); - - if (ferror(f)) { - perror("/proc/net/netstat"); diff --git a/packages/net-tools/files/net-tools-1.60-pie.patch b/packages/net-tools/files/net-tools-1.60-pie.patch deleted file mode 100644 index d4496ffbc8..0000000000 --- a/packages/net-tools/files/net-tools-1.60-pie.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- net-tools-1.60/Makefile.pie 2001-04-15 16:34:31.000000000 +0200 -+++ net-tools-1.60/Makefile 2005-02-28 12:41:15.337127680 +0100 -@@ -113,8 +113,8 @@ - - NET_LIB = $(NET_LIB_PATH)/lib$(NET_LIB_NAME).a - --CFLAGS = $(COPTS) -I. -idirafter ./include/ -I$(NET_LIB_PATH) --LDFLAGS = $(LOPTS) -L$(NET_LIB_PATH) -+CFLAGS += $(COPTS) -I. -idirafter ./include/ -I$(NET_LIB_PATH) -+LDFLAGS += $(LOPTS) -L$(NET_LIB_PATH) - - SUBDIRS = man/ $(NET_LIB_PATH)/ - diff --git a/packages/net-tools/files/net-tools-1.60-return.patch b/packages/net-tools/files/net-tools-1.60-return.patch deleted file mode 100644 index 8ef10f51c3..0000000000 --- a/packages/net-tools/files/net-tools-1.60-return.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- net-tools-1.60/nameif.c.return 2004-08-03 18:01:37.000000000 +0900 -+++ net-tools-1.60/nameif.c 2004-08-03 18:03:37.000000000 +0900 -@@ -27,6 +27,7 @@ - const char *fname = default_conf; - int use_syslog; - int ctl_sk = -1; -+int frag = 0; - - void err(char *msg) - { -@@ -288,13 +289,15 @@ - while (clist) { - struct change *ch = clist; - clist = clist->next; -- if (!ch->found) -+ if (!ch->found){ - warning(_("interface '%s' not found"), ch->ifname); -+ frag = 1; -+ } - free(ch); - } - - if (use_syslog) - closelog(); -- return 0; -+ return frag; - } - diff --git a/packages/net-tools/files/net-tools-1.60-selinux.patch b/packages/net-tools/files/net-tools-1.60-selinux.patch deleted file mode 100644 index d0266696d0..0000000000 --- a/packages/net-tools/files/net-tools-1.60-selinux.patch +++ /dev/null @@ -1,205 +0,0 @@ ---- net-tools-1.60/Makefile~ 2005-12-24 06:56:57.000000000 -0500 -+++ net-tools-1.60/Makefile 2005-12-29 16:54:06.000000000 -0500 -@@ -113,6 +113,12 @@ - - NET_LIB = $(NET_LIB_PATH)/lib$(NET_LIB_NAME).a - -+ifeq ($(HAVE_SELINUX),1) -+LDFLAGS += -lselinux -+CFLAGS += -DHAVE_SELINUX -+else -+endif -+ - CFLAGS += $(COPTS) -I. -idirafter ./include/ -I$(NET_LIB_PATH) - LDFLAGS += $(LOPTS) -L$(NET_LIB_PATH) - ---- net-tools-1.60/netstat.c~ 2005-12-24 06:56:57.000000000 -0500 -+++ net-tools-1.60/netstat.c 2005-12-29 16:54:07.000000000 -0500 -@@ -86,6 +86,11 @@ - #include <net/if.h> - #include <dirent.h> - -+#if HAVE_SELINUX -+#include <selinux/selinux.h> -+#else -+#define security_context_t char* -+#endif - #include "net-support.h" - #include "pathnames.h" - #include "version.h" -@@ -96,6 +101,7 @@ - #include "util.h" - - #define PROGNAME_WIDTH 20 -+#define SELINUX_WIDTH 50 - - #if !defined(s6_addr32) && defined(in6a_words) - #define s6_addr32 in6a_words /* libinet6 */ -@@ -150,6 +156,7 @@ - int flag_prg = 0; - int flag_arg = 0; - int flag_ver = 0; -+int flag_selinux = 0; - - FILE *procinfo; - -@@ -213,12 +220,17 @@ - #define PROGNAME_WIDTH1(s) PROGNAME_WIDTH2(s) - #define PROGNAME_WIDTH2(s) #s - -+#define SELINUX_WIDTHs SELINUX_WIDTH1(SELINUX_WIDTH) -+#define SELINUX_WIDTH1(s) SELINUX_WIDTH2(s) -+#define SELINUX_WIDTH2(s) #s -+ - #define PRG_HASH_SIZE 211 - - static struct prg_node { - struct prg_node *next; - int inode; - char name[PROGNAME_WIDTH]; -+ char scon[SELINUX_WIDTH]; - } *prg_hash[PRG_HASH_SIZE]; - - static char prg_cache_loaded = 0; -@@ -226,9 +238,12 @@ - #define PRG_HASHIT(x) ((x) % PRG_HASH_SIZE) - - #define PROGNAME_BANNER "PID/Program name" -+#define SELINUX_BANNER "Security Context" - - #define print_progname_banner() do { if (flag_prg) printf("%-" PROGNAME_WIDTHs "s"," " PROGNAME_BANNER); } while (0) - -+#define print_selinux_banner() do { if (flag_selinux) printf("%-" SELINUX_WIDTHs "s"," " SELINUX_BANNER); } while (0) -+ - #define PRG_LOCAL_ADDRESS "local_address" - #define PRG_INODE "inode" - #define PRG_SOCKET_PFX "socket:[" -@@ -250,7 +265,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(int inode, char *name, char *scon) - { - unsigned hi = PRG_HASHIT(inode); - struct prg_node **pnp,*pn; -@@ -271,6 +286,14 @@ - if (strlen(name)>sizeof(pn->name)-1) - name[sizeof(pn->name)-1]='\0'; - strcpy(pn->name,name); -+ -+ { -+ int len=(strlen(scon)-sizeof(pn->scon))+1; -+ if (len > 0) -+ strcpy(pn->scon,&scon[len+1]); -+ else -+ strcpy(pn->scon,scon); -+ } - } - - static const char *prg_cache_get(unsigned long inode) -@@ -283,6 +306,16 @@ - return("-"); - } - -+static const char *prg_cache_get_con(unsigned long inode) -+{ -+ unsigned hi=PRG_HASHIT(inode); -+ struct prg_node *pn; -+ -+ for (pn=prg_hash[hi];pn;pn=pn->next) -+ if (pn->inode==inode) return(pn->scon); -+ return("-"); -+} -+ - static void prg_cache_clear(void) - { - struct prg_node **pnp,*pn; -@@ -348,6 +381,7 @@ - const char *cs,*cmdlp; - DIR *dirproc=NULL,*dirfd=NULL; - struct dirent *direproc,*direfd; -+ security_context_t scon=NULL; - - if (prg_cache_loaded || !flag_prg) return; - prg_cache_loaded=1; -@@ -415,7 +449,15 @@ - } - - snprintf(finbuf, sizeof(finbuf), "%s/%s", direproc->d_name, cmdlp); -- prg_cache_add(inode, finbuf); -+#if HAVE_SELINUX -+ if (getpidcon(atoi(direproc->d_name), &scon) == -1) { -+ scon=strdup("-"); -+ } -+ prg_cache_add(inode, finbuf, scon); -+ freecon(scon); -+#else -+ prg_cache_add(inode, finbuf, "-"); -+#endif - } - closedir(dirfd); - dirfd = NULL; -@@ -1385,6 +1428,8 @@ - printf("- "); - if (flag_prg) - printf("%-" PROGNAME_WIDTHs "s",(has & HAS_INODE?prg_cache_get(inode):"-")); -+ if (flag_selinux) -+ printf("%-" SELINUX_WIDTHs "s",(has & HAS_INODE?prg_cache_get_con(inode):"-")); - puts(path); - } - -@@ -1403,6 +1448,7 @@ - - printf(_("\nProto RefCnt Flags Type State I-Node")); - print_progname_banner(); -+ print_selinux_banner(); - printf(_(" Path\n")); /* xxx */ - - { -@@ -1682,6 +1728,7 @@ - fprintf(stderr, _(" -o, --timers display timers\n")); - fprintf(stderr, _(" -F, --fib display Forwarding Information Base (default)\n")); - fprintf(stderr, _(" -C, --cache display routing cache instead of FIB\n\n")); -+ fprintf(stderr, _(" -Z, --context display SELinux security context for sockets\n\n")); - - fprintf(stderr, _(" <Iface>: Name of interface to monitor/list.\n")); - fprintf(stderr, _(" <Socket>={-t|--tcp} {-u|--udp} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom\n")); -@@ -1729,6 +1776,7 @@ - {"cache", 0, 0, 'C'}, - {"fib", 0, 0, 'F'}, - {"groups", 0, 0, 'g'}, -+ {"context", 0, 0, 'Z'}, - {NULL, 0, 0, 0} - }; - -@@ -1741,7 +1789,7 @@ - - afname[0] = '\0'; - -- while ((i = getopt_long(argc, argv, "MCFA:acdegphiI::nNorstuVv?wxl", longopts, &lop)) != EOF) -+ while ((i = getopt_long(argc, argv, "MCFA:acdegphiI::nNorstuVv?wxlZ", longopts, &lop)) != EOF) - switch (i) { - case -1: - break; -@@ -1838,6 +1886,20 @@ - if (aftrans_opt("unix")) - exit(1); - break; -+ case 'Z': -+#if HAVE_SELINUX -+ if (is_selinux_enabled() <= 0) { -+ fprintf(stderr, _("SELinux is not enabled on this machine.\n")); -+ exit(1); -+ } -+ flag_prg++; -+ flag_selinux++; -+#else -+ fprintf(stderr, _("SELinux is not enabled for this application.\n")); -+ exit(1); -+#endif -+ -+ break; - case '?': - case 'h': - usage(); diff --git a/packages/net-tools/files/net-tools-1.60-siunits.patch b/packages/net-tools/files/net-tools-1.60-siunits.patch deleted file mode 100644 index cf6d89c5d3..0000000000 --- a/packages/net-tools/files/net-tools-1.60-siunits.patch +++ /dev/null @@ -1,80 +0,0 @@ ---- net-tools-1.60/lib/interface.c.siunits 2004-03-14 12:11:22.000000000 -0600 -+++ net-tools-1.60/lib/interface.c 2004-03-14 12:27:31.990679464 -0600 -@@ -262,7 +262,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 %llu %lu %lu %lu %lu %Lu %Lu %lu %lu %lu %lu %lu", - &ife->stats.rx_bytes, - &ife->stats.rx_packets, - &ife->stats.rx_errors, -@@ -280,7 +280,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, -@@ -675,8 +675,8 @@ - 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"; - - #if HAVE_AFIPX - static struct aftype *ipxtype = NULL; -@@ -882,10 +882,44 @@ - tx = ptr->stats.tx_bytes; - short_rx = rx * 10; - 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"); } -+ if (rx > 1152921504606846976ull) { -+ short_rx /= 1152921504606846976ull; -+ Rext = "EiB"; -+ } else 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"; -+ } -+ if (tx > 1152921504606846976ull) { -+ short_tx /= 1152921504606846976ull; -+ Text = "EiB"; -+ } else 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(_("TX packets:%llu errors:%lu dropped:%lu overruns:%lu carrier:%lu\n"), diff --git a/packages/net-tools/files/net-tools-1.60-statalias.patch b/packages/net-tools/files/net-tools-1.60-statalias.patch deleted file mode 100644 index 7c74f74d07..0000000000 --- a/packages/net-tools/files/net-tools-1.60-statalias.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- net-tools-1.60/lib/interface.c.statalias 2005-01-07 12:49:14.084104032 +0100 -+++ net-tools-1.60/lib/interface.c 2005-01-07 12:49:38.527388088 +0100 -@@ -395,9 +395,11 @@ - char *s, name[IFNAMSIZ]; - s = get_name(name, buf); - get_dev_fields(s, ife); -- ife->statistics_valid = 1; - if (target && !strcmp(target,name)) -+ { -+ ife->statistics_valid = 1; - break; -+ } - } - if (ferror(fh)) { - perror(_PATH_PROCNET_DEV); diff --git a/packages/net-tools/files/net-tools-1.60-statistics.patch b/packages/net-tools/files/net-tools-1.60-statistics.patch deleted file mode 100644 index d3a56499e8..0000000000 --- a/packages/net-tools/files/net-tools-1.60-statistics.patch +++ /dev/null @@ -1,65 +0,0 @@ ---- net-tools-1.60/statistics.c.tcpdata 2005-04-26 10:38:10.000000000 +0200 -+++ net-tools-1.60/statistics.c 2005-04-26 10:36:19.000000000 +0200 -@@ -1,6 +1,6 @@ - /* - * Copyright 1997,1999,2000 Andi Kleen. Subject to the GPL. -- * $Id: statistics.c,v 1.14 2001/02/02 18:01:23 pb Exp $ -+ * $Id: statistics.c,v 1.17 2002/04/28 15:41:01 ak Exp $ - * 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 -@@ -185,6 +185,44 @@ - "directly queued to user"), opt_number }, - { "SockMallocOOM", N_("Ran %lu times out of system memory during " - "packet sending"), opt_number }, -+ { "TCPPureAcks", N_("%u acknowledgments not containing data 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 due to SACK data"), opt_number }, -+ { "TCPSACKReneging", N_("%u bad SACKs 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"), opt_number }, -+ { "TCPPartialUndo", N_("%u congestion windows partially recovered using Hoe heuristic"), opt_number }, -+ { "TCPDSackUndo", N_("%u congestion window recovered using DSACK"), opt_number }, -+ { "TCPLossUndo", N_("%u congestion windows recovered 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") }, - }; - - struct tabtab { -@@ -222,7 +260,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/packages/net-tools/files/net-tools-1.60-stdo.patch b/packages/net-tools/files/net-tools-1.60-stdo.patch deleted file mode 100644 index 4c9d93e88f..0000000000 --- a/packages/net-tools/files/net-tools-1.60-stdo.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -urN net-tools-1.60/mii-tool.c net-tools-1.60.new/mii-tool.c ---- net-tools-1.60/mii-tool.c 2000-05-21 16:31:17.000000000 +0200 -+++ net-tools-1.60.new/mii-tool.c 2005-03-29 13:00:18.000000000 +0200 -@@ -302,6 +302,7 @@ - printf("\n link partner:%s", media_list(lkpar, 0)); - printf("\n"); - } -+ fflush(stdout); - return 0; - } - diff --git a/packages/net-tools/files/net-tools-1.60-trailingblank.patch b/packages/net-tools/files/net-tools-1.60-trailingblank.patch deleted file mode 100644 index 8c752282e2..0000000000 --- a/packages/net-tools/files/net-tools-1.60-trailingblank.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- net-tools-1.60/hostname.c.trailingblank 2001-04-08 19:04:23.000000000 +0200 -+++ net-tools-1.60/hostname.c 2003-08-19 14:21:17.000000000 +0200 -@@ -153,13 +153,19 @@ - - switch (c) { - case 'a': -- while (hp->h_aliases[0]) -- printf("%s ", *hp->h_aliases++); -+ while (hp->h_aliases[0]) { -+ printf("%s", *hp->h_aliases++); -+ if (hp->h_aliases[0]) -+ printf(" "); -+ } - printf("\n"); - break; - case 'i': -- while (hp->h_addr_list[0]) -- printf("%s ", inet_ntoa(*(struct in_addr *) *hp->h_addr_list++)); -+ while (hp->h_addr_list[0]) { -+ printf("%s", inet_ntoa(*(struct in_addr *) *hp->h_addr_list++)); -+ if (hp->h_addr_list[0]) -+ printf(" "); -+ } - printf("\n"); - break; - case 'd': diff --git a/packages/net-tools/files/net-tools-1.60-trim_iface.patch b/packages/net-tools/files/net-tools-1.60-trim_iface.patch deleted file mode 100644 index 150722cd28..0000000000 --- a/packages/net-tools/files/net-tools-1.60-trim_iface.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- net-tools-1.60/ifconfig.c.old 2005-03-30 10:14:03.000000000 +0200 -+++ net-tools-1.60/ifconfig.c 2005-03-30 10:40:50.000000000 +0200 -@@ -177,7 +177,7 @@ - - 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")); ---- net-tools-1.60/lib/interface.c.old 2005-03-30 10:14:03.000000000 +0200 -+++ net-tools-1.60/lib/interface.c 2005-03-30 11:05:38.000000000 +0200 -@@ -620,7 +620,7 @@ - - void ife_print_short(struct interface *ptr) - { -- printf("%-9.9s ", ptr->name); -+ printf("%-9s ", ptr->name); - printf("%5d %3d ", ptr->mtu, ptr->metric); - /* If needed, display the interface statistics. */ - if (ptr->statistics_valid) { -@@ -711,7 +711,7 @@ - if (hw == NULL) - hw = get_hwntype(-1); - -- printf(_("%-9.9s Link encap:%s "), ptr->name, hw->title); -+ printf(_("%-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) && diff --git a/packages/net-tools/files/net-tools-1.60-trunc.patch b/packages/net-tools/files/net-tools-1.60-trunc.patch deleted file mode 100644 index 9ff3c0bcc8..0000000000 --- a/packages/net-tools/files/net-tools-1.60-trunc.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- net-tools-1.60/netstat.c.trunc 2004-08-31 12:42:08.595426960 +0200 -+++ net-tools-1.60/netstat.c 2004-08-31 12:59:55.766192344 +0200 -@@ -773,8 +773,8 @@ - get_sname(htons(local_port), "tcp", - flag_not & FLAG_NUM_PORT)); - -- if ((strlen(local_addr) + strlen(buffer)) > 22) -- local_addr[22 - strlen(buffer)] = '\0'; -+ if ((strlen(local_addr) + strlen(buffer)) >= 27) -+ local_addr[27 - strlen(buffer) - 1] = '\0'; - - strcat(local_addr, ":"); - strncat(local_addr, buffer, sizeof(local_addr)); -@@ -782,8 +782,8 @@ - snprintf(buffer, sizeof(buffer), "%s", - get_sname(htons(rem_port), "tcp", flag_not & FLAG_NUM_PORT)); - -- if ((strlen(rem_addr) + strlen(buffer)) > 22) -- rem_addr[22 - strlen(buffer)] = '\0'; -+ if ((strlen(rem_addr) + strlen(buffer)) >= 27) -+ rem_addr[27 - strlen(buffer) - 1] = '\0'; - - strcat(rem_addr, ":"); - strncat(rem_addr, buffer, sizeof(rem_addr)); -@@ -816,7 +816,7 @@ - timer_run, (double) time_len / HZ, retr, timeout); - break; - } -- printf("tcp %6ld %6ld %-23s %-23s %-12s", -+ printf("tcp %6ld %6ld %-27s %-27s %-12s", - rxq, txq, local_addr, rem_addr, _(tcp_state[state])); - - finish_this_one(uid,inode,timers); -@@ -1770,7 +1770,7 @@ - else - printf(_("(w/o servers)")); - } -- printf(_("\nProto Recv-Q Send-Q Local Address Foreign Address State ")); /* xxx */ -+ printf(_("\nProto Recv-Q Send-Q Local Address Foreign Address State ")); /* xxx */ - if (flag_exp > 1) - printf(_(" User Inode ")); - print_progname_banner(); diff --git a/packages/net-tools/files/net-tools-1.60-ulong.patch b/packages/net-tools/files/net-tools-1.60-ulong.patch deleted file mode 100644 index bc7df29dd6..0000000000 --- a/packages/net-tools/files/net-tools-1.60-ulong.patch +++ /dev/null @@ -1,215 +0,0 @@ -diff -urN net-tools-1.60/statistics.c net-tools-1.60-patch/statistics.c ---- net-tools-1.60/statistics.c 2001-02-02 10:01:23.000000000 -0800 -+++ net-tools-1.60-patch/statistics.c 2004-06-15 11:09:44.000000000 -0700 -@@ -63,54 +63,54 @@ - struct entry Iptab[] = - { - {"Forwarding", N_("Forwarding is %s"), i_forward | I_STATIC}, -- {"DefaultTTL", N_("Default TTL is %u"), number | I_STATIC}, -- {"InReceives", N_("%u total packets received"), number}, -- {"InHdrErrors", N_("%u with invalid headers"), opt_number}, -- {"InAddrErrors", N_("%u with invalid addresses"), opt_number}, -- {"ForwDatagrams", N_("%u forwarded"), number}, -- {"InUnknownProtos", N_("%u with unknown protocol"), opt_number}, -- {"InDiscards", N_("%u incoming packets discarded"), number}, -- {"InDelivers", N_("%u incoming packets delivered"), number}, -- {"OutRequests", N_("%u requests sent out"), number}, /*? */ -- {"OutDiscards", N_("%u outgoing packets dropped"), opt_number}, -- {"OutNoRoutes", N_("%u dropped because of missing route"), opt_number}, -- {"ReasmTimeout", N_("%u fragments dropped after timeout"), opt_number}, -- {"ReasmReqds", N_("%u reassemblies required"), opt_number}, /* ? */ -- {"ReasmOKs", N_("%u packets reassembled ok"), opt_number}, -- {"ReasmFails", N_("%u packet reassembles failed"), opt_number}, -- {"FragOKs", N_("%u fragments received ok"), opt_number}, -- {"FragFails", N_("%u fragments failed"), opt_number}, -- {"FragCreates", N_("%u fragments created"), opt_number} -+ {"DefaultTTL", N_("Default TTL is %lu"), number | I_STATIC}, -+ {"InReceives", N_("%lu total packets received"), number}, -+ {"InHdrErrors", N_("%lu with invalid headers"), opt_number}, -+ {"InAddrErrors", N_("%lu with invalid addresses"), opt_number}, -+ {"ForwDatagrams", N_("%lu forwarded"), number}, -+ {"InUnknownProtos", N_("%lu with unknown protocol"), opt_number}, -+ {"InDiscards", N_("%lu incoming packets discarded"), number}, -+ {"InDelivers", N_("%lu incoming packets delivered"), number}, -+ {"OutRequests", N_("%lu requests sent out"), number}, /*? */ -+ {"OutDiscards", N_("%lu outgoing packets dropped"), opt_number}, -+ {"OutNoRoutes", N_("%lu dropped because of missing route"), opt_number}, -+ {"ReasmTimeout", N_("%lu fragments dropped after timeout"), opt_number}, -+ {"ReasmReqds", N_("%lu reassemblies required"), opt_number}, /* ? */ -+ {"ReasmOKs", N_("%lu packets reassembled ok"), opt_number}, -+ {"ReasmFails", N_("%lu packet reassembles failed"), opt_number}, -+ {"FragOKs", N_("%lu fragments received ok"), opt_number}, -+ {"FragFails", N_("%lu fragments failed"), opt_number}, -+ {"FragCreates", N_("%lu fragments created"), opt_number} - }; - - struct entry Icmptab[] = - { -- {"InMsgs", N_("%u ICMP messages received"), number}, -- {"InErrors", N_("%u input ICMP message failed."), number}, -- {"InDestUnreachs", N_("destination unreachable: %u"), i_inp_icmp | I_TITLE}, -- {"InTimeExcds", N_("timeout in transit: %u"), i_inp_icmp | I_TITLE}, -- {"InParmProbs", N_("wrong parameters: %u"), i_inp_icmp | I_TITLE}, /*? */ -- {"InSrcQuenchs", N_("source quenches: %u"), i_inp_icmp | I_TITLE}, -- {"InRedirects", N_("redirects: %u"), i_inp_icmp | I_TITLE}, -- {"InEchos", N_("echo requests: %u"), i_inp_icmp | I_TITLE}, -- {"InEchoReps", N_("echo replies: %u"), i_inp_icmp | I_TITLE}, -- {"InTimestamps", N_("timestamp request: %u"), i_inp_icmp | I_TITLE}, -- {"InTimestampReps", N_("timestamp reply: %u"), i_inp_icmp | I_TITLE}, -- {"InAddrMasks", N_("address mask request: %u"), i_inp_icmp | I_TITLE}, /*? */ -- {"InAddrMaskReps", N_("address mask replies: %u"), i_inp_icmp | I_TITLE}, /*? */ -- {"OutMsgs", N_("%u ICMP messages sent"), number}, -- {"OutErrors", N_("%u ICMP messages failed"), number}, -- {"OutDestUnreachs", N_("destination unreachable: %u"), i_outp_icmp | I_TITLE}, -- {"OutTimeExcds", N_("time exceeded: %u"), i_outp_icmp | I_TITLE}, -- {"OutParmProbs", N_("wrong parameters: %u"), i_outp_icmp | I_TITLE}, /*? */ -- {"OutSrcQuenchs", N_("source quench: %u"), i_outp_icmp | I_TITLE}, -- {"OutRedirects", N_("redirect: %u"), i_outp_icmp | I_TITLE}, -- {"OutEchos", N_("echo request: %u"), i_outp_icmp | I_TITLE}, -- {"OutEchoReps", N_("echo replies: %u"), i_outp_icmp | I_TITLE}, -- {"OutTimestamps", N_("timestamp requests: %u"), i_outp_icmp | I_TITLE}, -- {"OutTimestampReps", N_("timestamp replies: %u"), i_outp_icmp | I_TITLE}, -- {"OutAddrMasks", N_("address mask requests: %u"), i_outp_icmp | I_TITLE}, -- {"OutAddrMaskReps", N_("address mask replies: %u"), i_outp_icmp | I_TITLE}, -+ {"InMsgs", N_("%lu ICMP messages received"), number}, -+ {"InErrors", N_("%lu input ICMP message failed."), number}, -+ {"InDestUnreachs", N_("destination unreachable: %lu"), i_inp_icmp | I_TITLE}, -+ {"InTimeExcds", N_("timeout in transit: %lu"), i_inp_icmp | I_TITLE}, -+ {"InParmProbs", N_("wrong parameters: %lu"), i_inp_icmp | I_TITLE}, /*? */ -+ {"InSrcQuenchs", N_("source quenches: %lu"), i_inp_icmp | I_TITLE}, -+ {"InRedirects", N_("redirects: %lu"), i_inp_icmp | I_TITLE}, -+ {"InEchos", N_("echo requests: %lu"), i_inp_icmp | I_TITLE}, -+ {"InEchoReps", N_("echo replies: %lu"), i_inp_icmp | I_TITLE}, -+ {"InTimestamps", N_("timestamp request: %lu"), i_inp_icmp | I_TITLE}, -+ {"InTimestampReps", N_("timestamp reply: %lu"), i_inp_icmp | I_TITLE}, -+ {"InAddrMasks", N_("address mask request: %lu"), i_inp_icmp | I_TITLE}, /*? */ -+ {"InAddrMaskReps", N_("address mask replies: %lu"), i_inp_icmp | I_TITLE}, /*? */ -+ {"OutMsgs", N_("%lu ICMP messages sent"), number}, -+ {"OutErrors", N_("%lu ICMP messages failed"), number}, -+ {"OutDestUnreachs", N_("destination unreachable: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutTimeExcds", N_("time exceeded: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutParmProbs", N_("wrong parameters: %lu"), i_outp_icmp | I_TITLE}, /*? */ -+ {"OutSrcQuenchs", N_("source quench: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutRedirects", N_("redirect: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutEchos", N_("echo request: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutEchoReps", N_("echo replies: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutTimestamps", N_("timestamp requests: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutTimestampReps", N_("timestamp replies: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutAddrMasks", N_("address mask requests: %lu"), i_outp_icmp | I_TITLE}, -+ {"OutAddrMaskReps", N_("address mask replies: %lu"), i_outp_icmp | I_TITLE}, - }; - - struct entry Tcptab[] = -@@ -119,71 +119,71 @@ - {"RtoMin", "", number}, - {"RtoMax", "", number}, - {"MaxConn", "", number}, -- {"ActiveOpens", N_("%u active connections openings"), number}, -- {"PassiveOpens", N_("%u passive connection openings"), number}, -- {"AttemptFails", N_("%u failed connection attempts"), number}, -- {"EstabResets", N_("%u connection resets received"), number}, -- {"CurrEstab", N_("%u connections established"), number}, -- {"InSegs", N_("%u segments received"), number}, -- {"OutSegs", N_("%u segments send out"), number}, -- {"RetransSegs", N_("%u segments retransmited"), number}, -- {"InErrs", N_("%u bad segments received."), number}, -- {"OutRsts", N_("%u resets sent"), number}, -+ {"ActiveOpens", N_("%lu active connections openings"), number}, -+ {"PassiveOpens", N_("%lu passive connection openings"), number}, -+ {"AttemptFails", N_("%lu failed connection attempts"), number}, -+ {"EstabResets", N_("%lu connection resets received"), number}, -+ {"CurrEstab", N_("%lu connections established"), number}, -+ {"InSegs", N_("%lu segments received"), number}, -+ {"OutSegs", N_("%lu segments send out"), number}, -+ {"RetransSegs", N_("%lu segments retransmited"), number}, -+ {"InErrs", N_("%lu bad segments received."), number}, -+ {"OutRsts", N_("%lu resets sent"), number}, - }; - - struct entry Udptab[] = - { -- {"InDatagrams", N_("%u packets received"), number}, -- {"NoPorts", N_("%u packets to unknown port received."), number}, -- {"InErrors", N_("%u packet receive errors"), number}, -- {"OutDatagrams", N_("%u packets sent"), number}, -+ {"InDatagrams", N_("%lu packets received"), number}, -+ {"NoPorts", N_("%lu packets to unknown port received."), number}, -+ {"InErrors", N_("%lu packet receive errors"), number}, -+ {"OutDatagrams", N_("%lu packets sent"), number}, - }; - - struct entry Tcpexttab[] = - { -- {"SyncookiesSent", N_("%u SYN cookies sent"), opt_number}, -- {"SyncookiesRecv", N_("%u SYN cookies received"), opt_number}, -- {"SyncookiesFailed", N_("%u invalid SYN cookies received"), opt_number}, -+ {"SyncookiesSent", N_("%lu SYN cookies sent"), opt_number}, -+ {"SyncookiesRecv", N_("%lu SYN cookies received"), opt_number}, -+ {"SyncookiesFailed", N_("%lu invalid SYN cookies received"), opt_number}, - -- { "EmbryonicRsts", N_("%u resets received for embryonic SYN_RECV sockets"), -+ { "EmbryonicRsts", N_("%lu resets received for embryonic SYN_RECV sockets"), - opt_number }, -- { "PruneCalled", N_("%u packets pruned from receive queue because of socket" -+ { "PruneCalled", N_("%lu packets pruned from receive queue because of socket" - " buffer overrun"), opt_number }, - /* obsolete: 2.2.0 doesn't do that anymore */ -- { "RcvPruned", N_("%u packets pruned from receive queue"), opt_number }, -- { "OfoPruned", N_("%u packets dropped from out-of-order queue because of" -+ { "RcvPruned", N_("%lu packets pruned from receive queue"), opt_number }, -+ { "OfoPruned", N_("%lu packets dropped from out-of-order queue because of" - " socket buffer overrun"), opt_number }, -- { "OutOfWindowIcmps", N_("%u ICMP packets dropped because they were " -+ { "OutOfWindowIcmps", N_("%lu ICMP packets dropped because they were " - "out-of-window"), opt_number }, -- { "LockDroppedIcmps", N_("%u ICMP packets dropped because" -+ { "LockDroppedIcmps", N_("%lu ICMP packets dropped because" - " socket was locked"), opt_number }, -- { "TW", N_("%u TCP sockets finished time wait in fast timer"), opt_number }, -- { "TWRecycled", N_("%u time wait sockets recycled by time stamp"), opt_number }, -- { "TWKilled", N_("%u TCP sockets finished time wait in slow timer"), opt_number }, -- { "PAWSPassive", N_("%u passive connections rejected because of" -+ { "TW", N_("%lu TCP sockets finished time wait in fast timer"), opt_number }, -+ { "TWRecycled", N_("%lu time wait sockets recycled by time stamp"), opt_number }, -+ { "TWKilled", N_("%lu TCP sockets finished time wait in slow timer"), opt_number }, -+ { "PAWSPassive", N_("%lu passive connections rejected because of" - " time stamp"), opt_number }, -- { "PAWSActive", N_("%u active connections rejected because of " -+ { "PAWSActive", N_("%lu active connections rejected because of " - "time stamp"), opt_number }, -- { "PAWSEstab", N_("%u packets rejects in established connections because of" -+ { "PAWSEstab", N_("%lu packets rejects in established connections because of" - " timestamp"), opt_number }, -- { "DelayedACKs", N_("%u delayed acks sent"), opt_number }, -- { "DelayedACKLocked", N_("%u delayed acks further delayed because of" -+ { "DelayedACKs", N_("%lu delayed acks sent"), opt_number }, -+ { "DelayedACKLocked", N_("%lu delayed acks further delayed because of" - " locked socket"), opt_number }, -- { "DelayedACKLost", N_("Quick ack mode was activated %u times"), opt_number }, -- { "ListenOverflows", N_("%u times the listen queue of a socket overflowed"), -+ { "DelayedACKLost", N_("Quick ack mode was activated %lu times"), opt_number }, -+ { "ListenOverflows", N_("%lu times the listen queue of a socket overflowed"), - opt_number }, -- { "ListenDrops", N_("%u SYNs to LISTEN sockets ignored"), opt_number }, -- { "TCPPrequeued", N_("%u packets directly queued to recvmsg prequeue."), -+ { "ListenDrops", N_("%lu SYNs to LISTEN sockets ignored"), opt_number }, -+ { "TCPPrequeued", N_("%lu packets directly queued to recvmsg prequeue."), - opt_number }, -- { "TCPDirectCopyFromBacklog", N_("%u packets directly received" -+ { "TCPDirectCopyFromBacklog", N_("%lu packets directly received" - " from backlog"), opt_number }, -- { "TCPDirectCopyFromPrequeue", N_("%u packets directly received" -+ { "TCPDirectCopyFromPrequeue", N_("%lu packets directly received" - " from prequeue"), opt_number }, -- { "TCPPrequeueDropped", N_("%u packets dropped from prequeue"), opt_number }, -- { "TCPHPHits", N_("%u packets header predicted"), number }, -- { "TCPHPHitsToUser", N_("%u packets header predicted and " -+ { "TCPPrequeueDropped", N_("%lu packets dropped from prequeue"), opt_number }, -+ { "TCPHPHits", N_("%lu packets header predicted"), number }, -+ { "TCPHPHitsToUser", N_("%lu packets header predicted and " - "directly queued to user"), opt_number }, -- { "SockMallocOOM", N_("Ran %u times out of system memory during " -+ { "SockMallocOOM", N_("Ran %lu times out of system memory during " - "packet sending"), opt_number }, - }; - diff --git a/packages/net-tools/files/net-tools-1.60-virtualname.patch b/packages/net-tools/files/net-tools-1.60-virtualname.patch deleted file mode 100644 index 326df1d4d1..0000000000 --- a/packages/net-tools/files/net-tools-1.60-virtualname.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- net-tools-1.60/lib/interface.c.virtualname 2001-02-10 20:31:15.000000000 +0100 -+++ net-tools-1.60/lib/interface.c 2003-08-19 13:18:01.000000000 +0200 -@@ -579,18 +579,18 @@ - - void ife_print_short(struct interface *ptr) - { -- printf("%-5.5s ", ptr->name); -- printf("%5d %3d", ptr->mtu, ptr->metric); -+ printf("%-9.9s ", ptr->name); -+ printf("%5d %3d ", 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 ", - ptr->stats.tx_packets, ptr->stats.tx_errors, - ptr->stats.tx_dropped, ptr->stats.tx_fifo_errors); - } else { -- printf("%-56s", _(" - no statistics available -")); -+ printf("%-60s", _(" - no statistics available -")); - } - /* DONT FORGET TO ADD THE FLAGS IN ife_print_long, too */ - if (ptr->flags == 0) ---- net-tools-1.60/netstat.c.virtualname 2001-04-15 16:41:17.000000000 +0200 -+++ net-tools-1.60/netstat.c 2003-08-19 13:18:34.000000000 +0200 -@@ -1449,7 +1449,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) { |