removed 14 patches
11 patches merged upstream removed bcast.patch (seems to be fixed upstream) removed netstat-p-basename.patch (upstream is not happy with it) netstat-leak.patch merged into duplicate-tcp.patch
This commit is contained in:
parent
9d9416b07e
commit
3f720650b5
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,3 +1,4 @@
|
|||||||
net-tools-1.60.tar.bz2
|
net-tools-1.60.tar.bz2
|
||||||
/net-tools-1.60.20111206git.tar.gz
|
/net-tools-1.60.20111206git.tar.gz
|
||||||
/net-tools-1.60.20111207git.tar.xz
|
/net-tools-1.60.20111207git.tar.xz
|
||||||
|
/net-tools-1.60.20120105git.tar.xz
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
.\" Process this file with
|
.\" Process this file with
|
||||||
.\" groff -man -Tascii iptstate.8
|
.\" groff -man -Tascii ipmaddr.8
|
||||||
.\"
|
.\"
|
||||||
.TH IPMADDR 8 "SEPTEMBER 2009" "" ""
|
.TH IPMADDR 8 "SEPTEMBER 2009" "" ""
|
||||||
.\"
|
.\"
|
||||||
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
.SH NOTE
|
.SH NOTE
|
||||||
.P
|
.P
|
||||||
This program is obsolete. For replacement check \fBip maddress\fR.
|
This program is obsolete. For replacement check \fBip maddr\fR.
|
||||||
|
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
The \fBipmaddr\fR command can perform one of the following operations:
|
The \fBipmaddr\fR command can perform one of the following operations:
|
||||||
@ -25,10 +25,10 @@ The \fBipmaddr\fR command can perform one of the following operations:
|
|||||||
\- add a multicast address
|
\- add a multicast address
|
||||||
|
|
||||||
.B del
|
.B del
|
||||||
- delete a multicast address
|
\- delete a multicast address
|
||||||
|
|
||||||
.B show
|
.B show
|
||||||
- list multicast addresses
|
\- list multicast addresses
|
||||||
|
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
.BR ip (8).
|
.BR ip (8).
|
||||||
|
@ -1,12 +1,11 @@
|
|||||||
.\" Process this file with
|
.\" Process this file with
|
||||||
.\" groff -man -Tascii iptstate.8
|
.\" groff -man -Tascii iptunnel.8
|
||||||
.\"
|
.\"
|
||||||
.TH IPTUNNEL 8 "SEPTEMBER 2009" "" ""
|
.TH IPTUNNEL 8 "SEPTEMBER 2009" "" ""
|
||||||
.\"
|
.\"
|
||||||
.\" Man page written by Jiri Popelka <jpopelka AT redhat DOT com>
|
.\" Man page written by Jiri Popelka <jpopelka AT redhat DOT com>
|
||||||
.\"
|
.\"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
|
|
||||||
.B iptunnel
|
.B iptunnel
|
||||||
\- creates, deletes, and displays configured tunnels
|
\- creates, deletes, and displays configured tunnels
|
||||||
|
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
diff -up net-tools-1.60/ifconfig.c.IA64 net-tools-1.60/ifconfig.c
|
|
||||||
--- net-tools-1.60/ifconfig.c.IA64 2011-12-06 14:36:57.158662389 +0100
|
|
||||||
+++ net-tools-1.60/ifconfig.c 2011-12-06 14:36:57.247661276 +0100
|
|
||||||
@@ -914,7 +914,8 @@ int main(int argc, char **argv)
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
- memcpy(&ip, &sin.sin_addr.s_addr, sizeof(unsigned long));
|
|
||||||
+ memset(&ip, 0, sizeof(unsigned long));
|
|
||||||
+ memcpy(&ip, &sin.sin_addr.s_addr, sizeof(sin.sin_addr.s_addr));
|
|
||||||
|
|
||||||
if (get_nmbc_parent(ifr.ifr_name, &nm, &bc) < 0) {
|
|
||||||
fprintf(stderr, _("Interface %s not initialized\n"),
|
|
@ -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);
|
|
@ -1,86 +0,0 @@
|
|||||||
diff -up net-tools-1.60/ifconfig.c.bcast net-tools-1.60/ifconfig.c
|
|
||||||
--- net-tools-1.60/ifconfig.c.bcast 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/ifconfig.c 2011-12-02 16:16:06.793742329 +0100
|
|
||||||
@@ -35,6 +35,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>
|
|
||||||
@@ -239,9 +240,12 @@ static void version(void)
|
|
||||||
exit(E_USAGE);
|
|
||||||
}
|
|
||||||
|
|
||||||
-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;
|
|
||||||
+ struct sockaddr_in * ip_addr, * netmask, *bcast;
|
|
||||||
+ struct ifreq ifraddr;
|
|
||||||
+ struct ifreq ifrbcast;
|
|
||||||
|
|
||||||
memcpy((char *) &ifr->ifr_netmask, (char *) sa,
|
|
||||||
sizeof(struct sockaddr));
|
|
||||||
@@ -250,6 +254,25 @@ static int set_netmask(int skfd, struct
|
|
||||||
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 err;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -262,7 +285,7 @@ int main(int argc, char **argv)
|
|
||||||
struct aftype *ap;
|
|
||||||
struct hwtype *hw;
|
|
||||||
struct ifreq ifr;
|
|
||||||
- int goterr = 0, didnetmask = 0, neednetmask=0;
|
|
||||||
+ int goterr = 0, didnetmask = 0, neednetmask=0, dobcast = 1;
|
|
||||||
char **spp;
|
|
||||||
int fd;
|
|
||||||
#if HAVE_AFINET6
|
|
||||||
@@ -547,6 +570,7 @@ int main(int argc, char **argv)
|
|
||||||
strerror(errno));
|
|
||||||
goterr = 1;
|
|
||||||
}
|
|
||||||
+ dobcast = 0;
|
|
||||||
spp++;
|
|
||||||
}
|
|
||||||
goterr |= set_flag(ifr.ifr_name, IFF_BROADCAST);
|
|
||||||
@@ -589,7 +613,7 @@ int main(int argc, char **argv)
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
didnetmask++;
|
|
||||||
- goterr |= set_netmask(ap->fd, &ifr, &sa);
|
|
||||||
+ goterr |= set_netmask(ap->fd, &ifr, &sa, dobcast);
|
|
||||||
spp++;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
@@ -1045,7 +1069,7 @@ int main(int argc, char **argv)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (neednetmask) {
|
|
||||||
- goterr |= set_netmask(skfd, &ifr, &samask);
|
|
||||||
+ goterr |= set_netmask(skfd, &ifr, &samask, dobcast);
|
|
||||||
didnetmask++;
|
|
||||||
}
|
|
||||||
|
|
@ -1,39 +0,0 @@
|
|||||||
diff -up net-tools-1.60/ifconfig.c.clear-flag net-tools-1.60/ifconfig.c
|
|
||||||
--- net-tools-1.60/ifconfig.c.clear-flag 2011-12-06 12:58:18.000000000 +0100
|
|
||||||
+++ net-tools-1.60/ifconfig.c 2011-12-06 13:02:37.881413090 +0100
|
|
||||||
@@ -464,7 +464,7 @@ int main(int argc, char **argv)
|
|
||||||
}
|
|
||||||
if (!strcmp(*spp, "-allmulti")) {
|
|
||||||
goterr |= clr_flag(ifr.ifr_name, IFF_ALLMULTI);
|
|
||||||
- if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0)
|
|
||||||
+ if (test_flag(ifr.ifr_name, IFF_ALLMULTI) > 0)
|
|
||||||
fprintf(stderr, _("Warning: Interface %s still in ALLMULTI mode.\n"), ifr.ifr_name);
|
|
||||||
spp++;
|
|
||||||
continue;
|
|
||||||
@@ -488,7 +488,7 @@ int main(int argc, char **argv)
|
|
||||||
if (!strcmp(*spp, "-dynamic")) {
|
|
||||||
goterr |= clr_flag(ifr.ifr_name, IFF_DYNAMIC);
|
|
||||||
spp++;
|
|
||||||
- if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0)
|
|
||||||
+ if (test_flag(ifr.ifr_name, IFF_DYNAMIC) > 0)
|
|
||||||
fprintf(stderr, _("Warning: Interface %s still in DYNAMIC mode.\n"), ifr.ifr_name);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
@@ -546,7 +546,7 @@ int main(int argc, char **argv)
|
|
||||||
|
|
||||||
if (!strcmp(*spp, "-broadcast")) {
|
|
||||||
goterr |= clr_flag(ifr.ifr_name, IFF_BROADCAST);
|
|
||||||
- if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0)
|
|
||||||
+ if (test_flag(ifr.ifr_name, IFF_BROADCAST) > 0)
|
|
||||||
fprintf(stderr, _("Warning: Interface %s still in BROADCAST mode.\n"), ifr.ifr_name);
|
|
||||||
spp++;
|
|
||||||
continue;
|
|
||||||
@@ -685,7 +685,7 @@ int main(int argc, char **argv)
|
|
||||||
if (!strcmp(*spp, "-pointopoint")) {
|
|
||||||
goterr |= clr_flag(ifr.ifr_name, IFF_POINTOPOINT);
|
|
||||||
spp++;
|
|
||||||
- if (test_flag(ifr.ifr_name, IFF_MULTICAST) > 0)
|
|
||||||
+ if (test_flag(ifr.ifr_name, IFF_POINTOPOINT) > 0)
|
|
||||||
fprintf(stderr, _("Warning: Interface %s still in POINTOPOINT mode.\n"), ifr.ifr_name);
|
|
||||||
continue;
|
|
||||||
}
|
|
@ -38,6 +38,7 @@
|
|||||||
#define HAVE_AFECONET 1
|
#define HAVE_AFECONET 1
|
||||||
#define HAVE_AFDECnet 0
|
#define HAVE_AFDECnet 0
|
||||||
#define HAVE_AFASH 1
|
#define HAVE_AFASH 1
|
||||||
|
#define HAVE_AFBLUETOOTH 0
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
@ -11,6 +11,7 @@ HAVE_AFX25=1
|
|||||||
HAVE_AFECONET=1
|
HAVE_AFECONET=1
|
||||||
# HAVE_AFDECnet=0
|
# HAVE_AFDECnet=0
|
||||||
HAVE_AFASH=1
|
HAVE_AFASH=1
|
||||||
|
# HAVE_AFBLUETOOTH=0
|
||||||
HAVE_HWETHER=1
|
HAVE_HWETHER=1
|
||||||
HAVE_HWARC=1
|
HAVE_HWARC=1
|
||||||
HAVE_HWSLIP=1
|
HAVE_HWSLIP=1
|
||||||
|
@ -1,245 +0,0 @@
|
|||||||
diff -up net-tools-1.60/ipmaddr.c.coverity net-tools-1.60/ipmaddr.c
|
|
||||||
--- net-tools-1.60/ipmaddr.c.coverity 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/ipmaddr.c 2011-12-06 15:16:27.210032670 +0100
|
|
||||||
@@ -160,6 +160,11 @@ void read_dev_mcast(struct ma_info **res
|
|
||||||
len = parse_hex(hexa, (unsigned char*)&m.addr.data);
|
|
||||||
if (len >= 0) {
|
|
||||||
struct ma_info *ma = malloc(sizeof(m));
|
|
||||||
+ if (!ma) {
|
|
||||||
+ fprintf(stderr, "couldn't allocate memory\n");
|
|
||||||
+ fclose(fp);
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
memcpy(ma, &m, sizeof(m));
|
|
||||||
ma->addr.bytelen = len;
|
|
||||||
@@ -174,7 +179,7 @@ void read_dev_mcast(struct ma_info **res
|
|
||||||
|
|
||||||
void read_igmp(struct ma_info **result_p)
|
|
||||||
{
|
|
||||||
- struct ma_info m;
|
|
||||||
+ struct ma_info m, *ma = NULL;
|
|
||||||
char buf[256];
|
|
||||||
FILE *fp = fopen(_PATH_PROCNET_IGMP, "r");
|
|
||||||
|
|
||||||
@@ -188,8 +193,6 @@ void read_igmp(struct ma_info **result_p
|
|
||||||
m.addr.bytelen = 4;
|
|
||||||
|
|
||||||
while (fgets(buf, sizeof(buf), fp)) {
|
|
||||||
- struct ma_info *ma = malloc(sizeof(m));
|
|
||||||
-
|
|
||||||
if (buf[0] != '\t') {
|
|
||||||
sscanf(buf, "%d%s", &m.index, m.name);
|
|
||||||
continue;
|
|
||||||
@@ -201,6 +204,12 @@ void read_igmp(struct ma_info **result_p
|
|
||||||
sscanf(buf, "%08x%d", (__u32*)&m.addr.data, &m.users);
|
|
||||||
|
|
||||||
ma = malloc(sizeof(m));
|
|
||||||
+ if (!ma) {
|
|
||||||
+ fprintf(stderr, "couldn't allocate memory\n");
|
|
||||||
+ fclose(fp);
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
memcpy(ma, &m, sizeof(m));
|
|
||||||
maddr_ins(result_p, ma);
|
|
||||||
}
|
|
||||||
@@ -232,6 +241,11 @@ void read_igmp6(struct ma_info **result_
|
|
||||||
len = parse_hex(hexa, (unsigned char*)&m.addr.data);
|
|
||||||
if (len >= 0) {
|
|
||||||
struct ma_info *ma = malloc(sizeof(m));
|
|
||||||
+ if (!ma) {
|
|
||||||
+ fprintf(stderr, "couldn't allocate memory\n");
|
|
||||||
+ fclose(fp);
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
memcpy(ma, &m, sizeof(m));
|
|
||||||
|
|
||||||
diff -up net-tools-1.60/iptunnel.c.coverity net-tools-1.60/iptunnel.c
|
|
||||||
--- net-tools-1.60/iptunnel.c.coverity 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/iptunnel.c 2011-12-06 15:17:25.231307304 +0100
|
|
||||||
@@ -485,6 +485,7 @@ static int do_tunnels_list(struct ip_tun
|
|
||||||
if ((ptr = strchr(buf, ':')) == NULL ||
|
|
||||||
(*ptr++ = 0, sscanf(buf, "%s", name) != 1)) {
|
|
||||||
fprintf(stderr, _("Wrong format of /proc/net/dev. Sorry.\n"));
|
|
||||||
+ fclose(fp);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
if (sscanf(ptr, "%ld%ld%ld%ld%ld%ld%ld%*d%ld%ld%ld%ld%ld%ld%ld",
|
|
||||||
@@ -521,6 +522,7 @@ static int do_tunnels_list(struct ip_tun
|
|
||||||
tx_packets, tx_bytes, tx_errs, tx_colls, tx_carrier, tx_drops);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+ fclose(fp);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
diff -up net-tools-1.60/lib/inet.c.coverity net-tools-1.60/lib/inet.c
|
|
||||||
--- net-tools-1.60/lib/inet.c.coverity 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/lib/inet.c 2011-12-06 15:20:21.183107604 +0100
|
|
||||||
@@ -211,10 +211,18 @@ static int INET_rresolve(char *name, siz
|
|
||||||
if ((ent == NULL) && (np == NULL))
|
|
||||||
safe_strncpy(name, inet_ntoa(sin->sin_addr), len);
|
|
||||||
pn = (struct addr *) malloc(sizeof(struct addr));
|
|
||||||
+ if (!pn) {
|
|
||||||
+ fprintf (stderr, "rresolve: couldn't allocate memory\n");
|
|
||||||
+ return (0);
|
|
||||||
+ }
|
|
||||||
pn->addr = *sin;
|
|
||||||
pn->next = INET_nn;
|
|
||||||
pn->host = host;
|
|
||||||
pn->name = (char *) malloc(strlen(name) + 1);
|
|
||||||
+ if (!pn->name) {
|
|
||||||
+ fprintf (stderr, "rresolve: couldn't allocate memory\n");
|
|
||||||
+ return (0);
|
|
||||||
+ }
|
|
||||||
strcpy(pn->name, name);
|
|
||||||
INET_nn = pn;
|
|
||||||
|
|
||||||
@@ -386,8 +394,11 @@ static int read_services(void)
|
|
||||||
while ((se = getservent())) {
|
|
||||||
/* Allocate a service entry. */
|
|
||||||
item = (struct service *) malloc(sizeof(struct service));
|
|
||||||
- if (item == NULL)
|
|
||||||
- perror("netstat");
|
|
||||||
+ if (item == NULL) {
|
|
||||||
+ perror("netstat: couldn't allocate memory");
|
|
||||||
+ endservent();
|
|
||||||
+ return (0);
|
|
||||||
+ }
|
|
||||||
item->name = strdup(se->s_name);
|
|
||||||
item->number = se->s_port;
|
|
||||||
|
|
||||||
@@ -405,8 +416,11 @@ static int read_services(void)
|
|
||||||
while ((pe = getprotoent())) {
|
|
||||||
/* Allocate a service entry. */
|
|
||||||
item = (struct service *) malloc(sizeof(struct service));
|
|
||||||
- if (item == NULL)
|
|
||||||
- perror("netstat");
|
|
||||||
+ if (item == NULL) {
|
|
||||||
+ perror("netstat: couldn't allocate memory");
|
|
||||||
+ endprotoent();
|
|
||||||
+ return (0);
|
|
||||||
+ }
|
|
||||||
item->name = strdup(pe->p_name);
|
|
||||||
item->number = htons(pe->p_proto);
|
|
||||||
add2list(&raw_name, item);
|
|
||||||
diff -up net-tools-1.60/lib/masq_info.c.coverity net-tools-1.60/lib/masq_info.c
|
|
||||||
--- net-tools-1.60/lib/masq_info.c.coverity 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/lib/masq_info.c 2011-12-06 15:22:21.768600077 +0100
|
|
||||||
@@ -208,10 +208,9 @@ int ip_masq_info(int numeric_host, int n
|
|
||||||
}
|
|
||||||
for (i = 0; i < ntotal; i++)
|
|
||||||
print_masq(&(mslist[i]), numeric_host, numeric_port, ext);
|
|
||||||
- if (mslist)
|
|
||||||
- free(mslist);
|
|
||||||
-
|
|
||||||
}
|
|
||||||
+ if (mslist)
|
|
||||||
+ free(mslist);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
diff -up net-tools-1.60/lib/netrom_gr.c.coverity net-tools-1.60/lib/netrom_gr.c
|
|
||||||
--- net-tools-1.60/lib/netrom_gr.c.coverity 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/lib/netrom_gr.c 2011-12-06 15:23:34.471691164 +0100
|
|
||||||
@@ -39,9 +39,7 @@ int NETROM_rprint(int options)
|
|
||||||
/*int ext = options & FLAG_EXT;
|
|
||||||
int numeric = options & FLAG_NUM_HOST; */
|
|
||||||
|
|
||||||
- f1 = fopen(_PATH_PROCNET_NR_NODES, "r");
|
|
||||||
if (!f1) perror(_PATH_PROCNET_NR_NODES);
|
|
||||||
- f2 = fopen(_PATH_PROCNET_NR_NEIGH, "r");
|
|
||||||
if (!f2) perror(_PATH_PROCNET_NR_NEIGH);
|
|
||||||
|
|
||||||
if (f1 == NULL || f2 == NULL) {
|
|
||||||
diff -up net-tools-1.60/lib/x25.c.coverity net-tools-1.60/lib/x25.c
|
|
||||||
--- net-tools-1.60/lib/x25.c.coverity 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/lib/x25.c 2011-12-06 15:24:37.189907079 +0100
|
|
||||||
@@ -105,7 +105,8 @@ X25_input(int type, char *bufp, struct s
|
|
||||||
}
|
|
||||||
|
|
||||||
if (strlen(bufp) < 1 || strlen(bufp) > 15 || sigdigits > strlen(bufp)) {
|
|
||||||
- *p = '/';
|
|
||||||
+ if (p != NULL)
|
|
||||||
+ *p = '/';
|
|
||||||
strcpy(X25_errmsg, _("Invalid address"));
|
|
||||||
#ifdef DEBUG
|
|
||||||
fprintf(stderr, "x25_input(%s): %s !\n", X25_errmsg, orig);
|
|
||||||
diff -up net-tools-1.60/nameif.c.coverity net-tools-1.60/nameif.c
|
|
||||||
--- net-tools-1.60/nameif.c.coverity 2011-12-06 15:12:17.000000000 +0100
|
|
||||||
+++ net-tools-1.60/nameif.c 2011-12-06 15:28:06.417291375 +0100
|
|
||||||
@@ -154,6 +154,7 @@ void readconf(void)
|
|
||||||
FILE *ifh;
|
|
||||||
char *p;
|
|
||||||
int n;
|
|
||||||
+ struct change *ch = NULL;
|
|
||||||
|
|
||||||
ifh = fopen(fname, "r");
|
|
||||||
if (!ifh)
|
|
||||||
@@ -163,7 +164,6 @@ void readconf(void)
|
|
||||||
linel = 0;
|
|
||||||
linenum = 1;
|
|
||||||
while (getdelim(&line, &linel, '\n', ifh) > 0) {
|
|
||||||
- struct change *ch = xmalloc(sizeof(struct change));
|
|
||||||
char pos[20];
|
|
||||||
|
|
||||||
sprintf(pos, _("line %d"), linenum);
|
|
||||||
@@ -178,6 +178,11 @@ void readconf(void)
|
|
||||||
n = strcspn(p, " \t");
|
|
||||||
if (n > IFNAMSIZ-1)
|
|
||||||
complain(_("interface name too long at line %d"), line);
|
|
||||||
+ ch = xmalloc(sizeof(struct change));
|
|
||||||
+ if (!ch) {
|
|
||||||
+ fclose(ifh);
|
|
||||||
+ complain(_("couldn't allocate memory at line %d"), line);
|
|
||||||
+ }
|
|
||||||
memcpy(ch->ifname, p, n);
|
|
||||||
ch->ifname[n] = 0;
|
|
||||||
p += n;
|
|
||||||
diff -up net-tools-1.60/netstat.c.coverity net-tools-1.60/netstat.c
|
|
||||||
--- net-tools-1.60/netstat.c.coverity 2011-12-06 15:12:17.000000000 +0100
|
|
||||||
+++ net-tools-1.60/netstat.c 2011-12-06 15:32:36.060920366 +0100
|
|
||||||
@@ -434,6 +434,8 @@ static void prg_cache_load(void)
|
|
||||||
PATH_FD_SUFFl+1);
|
|
||||||
strcpy(line + procfdlen + 1, direfd->d_name);
|
|
||||||
lnamelen=readlink(line,lname,sizeof(lname)-1);
|
|
||||||
+ if (lnamelen < 0)
|
|
||||||
+ continue;
|
|
||||||
lname[lnamelen] = '\0'; /*make it a null-terminated string*/
|
|
||||||
|
|
||||||
if (extract_type_1_socket_inode(lname, &inode) < 0)
|
|
||||||
@@ -833,7 +835,7 @@ static int x25_info(void)
|
|
||||||
"ESTABLISHED",
|
|
||||||
"RECOVERY"
|
|
||||||
};
|
|
||||||
- if(!(f=proc_fopen(_PATH_PROCNET_X25)))
|
|
||||||
+ if(!f)
|
|
||||||
{
|
|
||||||
if (errno != ENOENT) {
|
|
||||||
perror(_PATH_PROCNET_X25);
|
|
||||||
@@ -1716,6 +1718,7 @@ static int ipx_info(void)
|
|
||||||
printf("\n");
|
|
||||||
if ((ap = get_afntype(AF_IPX)) == NULL) {
|
|
||||||
EINTERN("netstat.c", "AF_IPX missing");
|
|
||||||
+ fclose(f);
|
|
||||||
return (-1);
|
|
||||||
}
|
|
||||||
fgets(buf, 255, f);
|
|
||||||
@@ -1729,6 +1732,7 @@ static int ipx_info(void)
|
|
||||||
sport = ntohs(sport);
|
|
||||||
} else {
|
|
||||||
EINTERN("netstat.c", "ipx socket format error in source port");
|
|
||||||
+ fclose(f);
|
|
||||||
return (-1);
|
|
||||||
}
|
|
||||||
nc = 0;
|
|
||||||
@@ -1739,6 +1743,7 @@ static int ipx_info(void)
|
|
||||||
dport = ntohs(dport);
|
|
||||||
} else {
|
|
||||||
EINTERN("netstat.c", "ipx soket format error in destination port");
|
|
||||||
+ fclose(f);
|
|
||||||
return (-1);
|
|
||||||
}
|
|
||||||
} else
|
|
@ -1,6 +1,6 @@
|
|||||||
diff -up net-tools-1.60/lib/interface.c.cycle net-tools-1.60/lib/interface.c
|
diff -up net-tools-1.60/lib/interface.c.cycle net-tools-1.60/lib/interface.c
|
||||||
--- net-tools-1.60/lib/interface.c.cycle 2011-11-21 02:31:57.000000000 +0100
|
--- net-tools-1.60/lib/interface.c.cycle 2012-01-05 12:22:43.000000000 +0100
|
||||||
+++ net-tools-1.60/lib/interface.c 2011-12-07 16:11:38.249768234 +0100
|
+++ net-tools-1.60/lib/interface.c 2012-01-05 12:46:55.872634104 +0100
|
||||||
@@ -93,6 +93,7 @@ int if_list_all = 0; /* do we have reque
|
@@ -93,6 +93,7 @@ int if_list_all = 0; /* do we have reque
|
||||||
static struct interface *int_list, *int_last;
|
static struct interface *int_list, *int_last;
|
||||||
|
|
||||||
@ -25,7 +25,7 @@ diff -up net-tools-1.60/lib/interface.c.cycle net-tools-1.60/lib/interface.c
|
|||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@@ -376,6 +380,41 @@ static int if_readlist_proc(char *target
|
@@ -378,6 +382,41 @@ static int if_readlist_proc(char *target
|
||||||
fclose(fh);
|
fclose(fh);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@ -68,8 +68,8 @@ diff -up net-tools-1.60/lib/interface.c.cycle net-tools-1.60/lib/interface.c
|
|||||||
int if_readlist(void)
|
int if_readlist(void)
|
||||||
{
|
{
|
||||||
diff -up net-tools-1.60/man/en_US/netstat.8.cycle net-tools-1.60/man/en_US/netstat.8
|
diff -up net-tools-1.60/man/en_US/netstat.8.cycle net-tools-1.60/man/en_US/netstat.8
|
||||||
--- net-tools-1.60/man/en_US/netstat.8.cycle 2011-11-21 02:31:57.000000000 +0100
|
--- net-tools-1.60/man/en_US/netstat.8.cycle 2012-01-05 12:22:43.000000000 +0100
|
||||||
+++ net-tools-1.60/man/en_US/netstat.8 2011-12-07 16:11:38.249768234 +0100
|
+++ net-tools-1.60/man/en_US/netstat.8 2012-01-05 12:46:55.873634091 +0100
|
||||||
@@ -33,6 +33,7 @@ netstat \- Print network connections, ro
|
@@ -33,6 +33,7 @@ netstat \- Print network connections, ro
|
||||||
.RB [ \-\-verbose | \-v ]
|
.RB [ \-\-verbose | \-v ]
|
||||||
.RB [ \-\-continuous | \-c]
|
.RB [ \-\-continuous | \-c]
|
||||||
@ -129,9 +129,9 @@ diff -up net-tools-1.60/man/en_US/netstat.8.cycle net-tools-1.60/man/en_US/netst
|
|||||||
.SH OUTPUT
|
.SH OUTPUT
|
||||||
.P
|
.P
|
||||||
diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
||||||
--- net-tools-1.60/netstat.c.cycle 2011-11-21 02:31:57.000000000 +0100
|
--- net-tools-1.60/netstat.c.cycle 2012-01-05 12:22:43.000000000 +0100
|
||||||
+++ net-tools-1.60/netstat.c 2011-12-07 16:13:19.911497288 +0100
|
+++ net-tools-1.60/netstat.c 2012-01-05 12:49:42.611549580 +0100
|
||||||
@@ -106,9 +106,9 @@
|
@@ -110,9 +110,9 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* prototypes for statistics.c */
|
/* prototypes for statistics.c */
|
||||||
@ -143,7 +143,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
void inittab6(void);
|
void inittab6(void);
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
@@ -302,10 +302,10 @@ static void prg_cache_clear(void)
|
@@ -308,10 +308,10 @@ static void prg_cache_clear(void)
|
||||||
prg_cache_loaded=0;
|
prg_cache_loaded=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -156,7 +156,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int extract_type_1_socket_inode(const char lname[], unsigned long * inode_p) {
|
static int extract_type_1_socket_inode(const char lname[], unsigned long * inode_p) {
|
||||||
@@ -1610,6 +1610,8 @@ static int ipx_info(void)
|
@@ -1734,6 +1734,8 @@ static int rfcomm_info(void)
|
||||||
|
|
||||||
static int iface_info(void)
|
static int iface_info(void)
|
||||||
{
|
{
|
||||||
@ -165,7 +165,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
if (skfd < 0) {
|
if (skfd < 0) {
|
||||||
if ((skfd = sockets_open(0)) < 0) {
|
if ((skfd = sockets_open(0)) < 0) {
|
||||||
perror("socket");
|
perror("socket");
|
||||||
@@ -1619,20 +1621,21 @@ static int iface_info(void)
|
@@ -1743,20 +1745,21 @@ static int iface_info(void)
|
||||||
}
|
}
|
||||||
if (flag_exp < 2) {
|
if (flag_exp < 2) {
|
||||||
ife_short = 1;
|
ife_short = 1;
|
||||||
@ -190,7 +190,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1648,7 +1651,7 @@ static void usage(void)
|
@@ -1772,7 +1775,7 @@ static void usage(void)
|
||||||
{
|
{
|
||||||
fprintf(stderr, _("usage: netstat [-vWeenNcCF] [<Af>] -r netstat {-V|--version|-h|--help}\n"));
|
fprintf(stderr, _("usage: netstat [-vWeenNcCF] [<Af>] -r netstat {-V|--version|-h|--help}\n"));
|
||||||
fprintf(stderr, _(" netstat [-vWnNcaeol] [<Socket> ...]\n"));
|
fprintf(stderr, _(" netstat [-vWnNcaeol] [<Socket> ...]\n"));
|
||||||
@ -199,7 +199,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
|
|
||||||
fprintf(stderr, _(" -r, --route display routing table\n"));
|
fprintf(stderr, _(" -r, --route display routing table\n"));
|
||||||
fprintf(stderr, _(" -i, --interfaces display interface table\n"));
|
fprintf(stderr, _(" -i, --interfaces display interface table\n"));
|
||||||
@@ -1685,6 +1688,7 @@ int main
|
@@ -1809,6 +1812,7 @@ int main
|
||||||
(int argc, char *argv[]) {
|
(int argc, char *argv[]) {
|
||||||
int i;
|
int i;
|
||||||
int lop;
|
int lop;
|
||||||
@ -207,7 +207,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
static struct option longopts[] =
|
static struct option longopts[] =
|
||||||
{
|
{
|
||||||
AFTRANS_OPTS,
|
AFTRANS_OPTS,
|
||||||
@@ -1844,6 +1848,12 @@ int main
|
@@ -1976,6 +1980,12 @@ int main
|
||||||
flag_sta++;
|
flag_sta++;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -220,7 +220,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
if (flag_int + flag_rou + flag_mas + flag_sta > 1)
|
if (flag_int + flag_rou + flag_mas + flag_sta > 1)
|
||||||
usage();
|
usage();
|
||||||
|
|
||||||
@@ -1869,7 +1879,7 @@ int main
|
@@ -2005,7 +2015,7 @@ int main
|
||||||
flag_not & FLAG_NUM_PORT, flag_exp);
|
flag_not & FLAG_NUM_PORT, flag_exp);
|
||||||
if (i || !flag_cnt)
|
if (i || !flag_cnt)
|
||||||
break;
|
break;
|
||||||
@ -229,7 +229,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
ENOSUPP("netstat", "FW_MASQUERADE");
|
ENOSUPP("netstat", "FW_MASQUERADE");
|
||||||
@@ -1881,18 +1891,18 @@ int main
|
@@ -2017,18 +2027,18 @@ int main
|
||||||
if (flag_sta) {
|
if (flag_sta) {
|
||||||
if (!afname[0])
|
if (!afname[0])
|
||||||
strcpy(afname, DFLT_AF);
|
strcpy(afname, DFLT_AF);
|
||||||
@ -251,7 +251,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
#else
|
#else
|
||||||
ENOSUPP("netstat", "AF INET6");
|
ENOSUPP("netstat", "AF INET6");
|
||||||
#endif
|
#endif
|
||||||
@@ -1900,7 +1910,11 @@ int main
|
@@ -2036,7 +2046,11 @@ int main
|
||||||
printf(_("netstat: No statistics support for specified address family: %s\n"), afname);
|
printf(_("netstat: No statistics support for specified address family: %s\n"), afname);
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
@ -264,7 +264,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (flag_rou) {
|
if (flag_rou) {
|
||||||
@@ -1922,7 +1936,7 @@ int main
|
@@ -2058,7 +2072,7 @@ int main
|
||||||
i = route_info(afname, options);
|
i = route_info(afname, options);
|
||||||
if (i || !flag_cnt)
|
if (i || !flag_cnt)
|
||||||
break;
|
break;
|
||||||
@ -273,7 +273,7 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
}
|
}
|
||||||
return (i);
|
return (i);
|
||||||
}
|
}
|
||||||
@@ -1931,7 +1945,7 @@ int main
|
@@ -2067,7 +2081,7 @@ int main
|
||||||
i = iface_info();
|
i = iface_info();
|
||||||
if (!flag_cnt || i)
|
if (!flag_cnt || i)
|
||||||
break;
|
break;
|
||||||
@ -282,8 +282,8 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
}
|
}
|
||||||
return (i);
|
return (i);
|
||||||
}
|
}
|
||||||
@@ -2084,7 +2098,7 @@ int main
|
@@ -2253,7 +2267,7 @@ int main
|
||||||
|
|
||||||
if (!flag_cnt || i)
|
if (!flag_cnt || i)
|
||||||
break;
|
break;
|
||||||
- wait_continous();
|
- wait_continous();
|
||||||
@ -292,8 +292,8 @@ diff -up net-tools-1.60/netstat.c.cycle net-tools-1.60/netstat.c
|
|||||||
}
|
}
|
||||||
return (i);
|
return (i);
|
||||||
diff -up net-tools-1.60/statistics.c.cycle net-tools-1.60/statistics.c
|
diff -up net-tools-1.60/statistics.c.cycle net-tools-1.60/statistics.c
|
||||||
--- net-tools-1.60/statistics.c.cycle 2011-11-21 02:31:57.000000000 +0100
|
--- net-tools-1.60/statistics.c.cycle 2012-01-05 12:22:43.000000000 +0100
|
||||||
+++ net-tools-1.60/statistics.c 2011-12-07 16:11:38.352766947 +0100
|
+++ net-tools-1.60/statistics.c 2012-01-05 12:46:55.877634040 +0100
|
||||||
@@ -502,7 +502,7 @@ void process6_fd(FILE *f)
|
@@ -502,7 +502,7 @@ void process6_fd(FILE *f)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
diff -up net-tools-1.60/netstat.c.dup-tcp net-tools-1.60/netstat.c
|
diff -up net-tools-1.60/netstat.c.dup-tcp net-tools-1.60/netstat.c
|
||||||
--- net-tools-1.60/netstat.c.dup-tcp 2011-12-02 16:24:08.479720425 +0100
|
--- net-tools-1.60/netstat.c.dup-tcp 2011-12-07 19:17:24.162425150 +0100
|
||||||
+++ net-tools-1.60/netstat.c 2011-12-02 16:33:51.668429563 +0100
|
+++ net-tools-1.60/netstat.c 2011-12-07 19:18:02.161950091 +0100
|
||||||
@@ -449,6 +449,120 @@ static void prg_cache_load(void)
|
@@ -449,6 +449,121 @@ static void prg_cache_load(void)
|
||||||
" will not be shown, you would have to be root to see it all.)\n"));
|
" will not be shown, you would have to be root to see it all.)\n"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -43,6 +43,7 @@ diff -up net-tools-1.60/netstat.c.dup-tcp net-tools-1.60/netstat.c
|
|||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ /* free the bucket itself */
|
+ /* free the bucket itself */
|
||||||
|
+ free(tcp_node_hash[i]->socket_pair);
|
||||||
+ free(tcp_node_hash[i]);
|
+ free(tcp_node_hash[i]);
|
||||||
+ tcp_node_hash[i] = NULL;
|
+ tcp_node_hash[i] = NULL;
|
||||||
+ }
|
+ }
|
||||||
@ -122,7 +123,7 @@ diff -up net-tools-1.60/netstat.c.dup-tcp net-tools-1.60/netstat.c
|
|||||||
#if HAVE_AFNETROM
|
#if HAVE_AFNETROM
|
||||||
static const char *netrom_state[] =
|
static const char *netrom_state[] =
|
||||||
{
|
{
|
||||||
@@ -960,6 +1074,12 @@ static void tcp_do_one(int lnr, const ch
|
@@ -960,6 +1075,12 @@ static void tcp_do_one(int lnr, const ch
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -135,7 +136,7 @@ diff -up net-tools-1.60/netstat.c.dup-tcp net-tools-1.60/netstat.c
|
|||||||
addr_do_one(local_addr, sizeof(local_addr), 22, ap, &localaddr, local_port, "tcp");
|
addr_do_one(local_addr, sizeof(local_addr), 22, ap, &localaddr, local_port, "tcp");
|
||||||
addr_do_one(rem_addr, sizeof(rem_addr), 22, ap, &remaddr, rem_port, "tcp");
|
addr_do_one(rem_addr, sizeof(rem_addr), 22, ap, &remaddr, rem_port, "tcp");
|
||||||
|
|
||||||
@@ -2112,6 +2232,7 @@ int main
|
@@ -2114,6 +2235,7 @@ int main
|
||||||
break;
|
break;
|
||||||
wait_continous(reptimer);
|
wait_continous(reptimer);
|
||||||
prg_cache_clear();
|
prg_cache_clear();
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
diff -up net-tools-1.60/include/interface.h.stack net-tools-1.60/include/interface.h
|
diff -up net-tools-1.60/include/interface.h.stack net-tools-1.60/include/interface.h
|
||||||
--- net-tools-1.60/include/interface.h.stack 2011-11-21 02:31:57.000000000 +0100
|
--- net-tools-1.60/include/interface.h.stack 2012-01-05 12:22:43.000000000 +0100
|
||||||
+++ net-tools-1.60/include/interface.h 2011-12-06 16:14:06.477785871 +0100
|
+++ net-tools-1.60/include/interface.h 2012-01-05 13:00:10.564699085 +0100
|
||||||
@@ -73,7 +73,7 @@ extern int do_if_print(struct interface
|
@@ -73,7 +73,7 @@ extern int do_if_print(struct interface
|
||||||
|
|
||||||
extern int procnetdev_version(char *buf);
|
extern int procnetdev_version(char *buf);
|
||||||
@ -11,8 +11,8 @@ diff -up net-tools-1.60/include/interface.h.stack net-tools-1.60/include/interfa
|
|||||||
extern void ife_print(struct interface *ptr);
|
extern void ife_print(struct interface *ptr);
|
||||||
|
|
||||||
diff -up net-tools-1.60/lib/interface.c.stack net-tools-1.60/lib/interface.c
|
diff -up net-tools-1.60/lib/interface.c.stack net-tools-1.60/lib/interface.c
|
||||||
--- net-tools-1.60/lib/interface.c.stack 2011-12-06 16:12:32.515960556 +0100
|
--- net-tools-1.60/lib/interface.c.stack 2012-01-05 13:00:10.561699123 +0100
|
||||||
+++ net-tools-1.60/lib/interface.c 2011-12-06 16:12:32.520960494 +0100
|
+++ net-tools-1.60/lib/interface.c 2012-01-05 13:03:19.522336790 +0100
|
||||||
@@ -214,10 +214,11 @@ out:
|
@@ -214,10 +214,11 @@ out:
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@ -26,7 +26,7 @@ diff -up net-tools-1.60/lib/interface.c.stack net-tools-1.60/lib/interface.c
|
|||||||
while (*p) {
|
while (*p) {
|
||||||
if (isspace(*p))
|
if (isspace(*p))
|
||||||
break;
|
break;
|
||||||
@@ -320,9 +321,10 @@ int get_dev_fields(char *bp, struct inte
|
@@ -320,20 +321,22 @@ int get_dev_fields(char *bp, struct inte
|
||||||
static int if_readlist_proc(char *target)
|
static int if_readlist_proc(char *target)
|
||||||
{
|
{
|
||||||
FILE *fh;
|
FILE *fh;
|
||||||
@ -38,21 +38,24 @@ diff -up net-tools-1.60/lib/interface.c.stack net-tools-1.60/lib/interface.c
|
|||||||
|
|
||||||
fh = fopen(_PATH_PROCNET_DEV, "r");
|
fh = fopen(_PATH_PROCNET_DEV, "r");
|
||||||
if (!fh) {
|
if (!fh) {
|
||||||
@@ -330,8 +332,11 @@ static int if_readlist_proc(char *target
|
fprintf(stderr, _("Warning: cannot open %s (%s). Limited output.\n"),
|
||||||
_PATH_PROCNET_DEV, strerror(errno));
|
_PATH_PROCNET_DEV, strerror(errno));
|
||||||
return -2;
|
return -2;
|
||||||
}
|
- }
|
||||||
- fgets(buf, sizeof buf, fh); /* eat line */
|
- if (fgets(buf, sizeof buf, fh))
|
||||||
- fgets(buf, sizeof buf, fh);
|
- /* eat line */;
|
||||||
|
- if (fgets(buf, sizeof buf, fh))
|
||||||
|
- /* eat line */;
|
||||||
|
+ }
|
||||||
+ if (getline(&line, &linelen, fh) == -1 /* eat line */
|
+ if (getline(&line, &linelen, fh) == -1 /* eat line */
|
||||||
+ || getline(&line, &linelen, fh) == -1) {
|
+ || getline(&line, &linelen, fh) == -1) { /* eat line */
|
||||||
+ err = -1;
|
+ err = -1;
|
||||||
+ goto out;
|
+ goto out;
|
||||||
+ }
|
+ }
|
||||||
|
|
||||||
#if 0 /* pretty, but can't cope with missing fields */
|
#if 0 /* pretty, but can't cope with missing fields */
|
||||||
fmt = proc_gen_fmt(_PATH_PROCNET_DEV, 1, fh,
|
fmt = proc_gen_fmt(_PATH_PROCNET_DEV, 1, fh,
|
||||||
@@ -356,13 +361,13 @@ static int if_readlist_proc(char *target
|
@@ -358,13 +361,13 @@ static int if_readlist_proc(char *target
|
||||||
if (!fmt)
|
if (!fmt)
|
||||||
return -1;
|
return -1;
|
||||||
#else
|
#else
|
||||||
@ -70,7 +73,7 @@ diff -up net-tools-1.60/lib/interface.c.stack net-tools-1.60/lib/interface.c
|
|||||||
ife = if_cache_add(name);
|
ife = if_cache_add(name);
|
||||||
get_dev_fields(s, ife);
|
get_dev_fields(s, ife);
|
||||||
ife->statistics_valid = 1;
|
ife->statistics_valid = 1;
|
||||||
@@ -377,6 +382,8 @@ static int if_readlist_proc(char *target
|
@@ -379,6 +382,8 @@ static int if_readlist_proc(char *target
|
||||||
#if 0
|
#if 0
|
||||||
free(fmt);
|
free(fmt);
|
||||||
#endif
|
#endif
|
||||||
@ -79,7 +82,7 @@ diff -up net-tools-1.60/lib/interface.c.stack net-tools-1.60/lib/interface.c
|
|||||||
fclose(fh);
|
fclose(fh);
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@@ -384,8 +391,9 @@ static int if_readlist_proc(char *target
|
@@ -386,24 +391,28 @@ static int if_readlist_proc(char *target
|
||||||
static int if_readlist_rep(char *target, struct interface *ife)
|
static int if_readlist_rep(char *target, struct interface *ife)
|
||||||
{
|
{
|
||||||
FILE *fh;
|
FILE *fh;
|
||||||
@ -90,17 +93,18 @@ diff -up net-tools-1.60/lib/interface.c.stack net-tools-1.60/lib/interface.c
|
|||||||
|
|
||||||
fh = fopen(_PATH_PROCNET_DEV, "r");
|
fh = fopen(_PATH_PROCNET_DEV, "r");
|
||||||
if (!fh) {
|
if (!fh) {
|
||||||
@@ -393,15 +401,18 @@ static int if_readlist_rep(char *target,
|
fprintf(stderr, _("Warning: cannot open %s (%s). Limited output.\n"),
|
||||||
_PATH_PROCNET_DEV, strerror(errno));
|
_PATH_PROCNET_DEV, strerror(errno));
|
||||||
return if_readconf();
|
return if_readconf();
|
||||||
}
|
- }
|
||||||
- fgets(buf, sizeof buf, fh); /* eat line */
|
- fgets(buf, sizeof buf, fh); /* eat line */
|
||||||
- fgets(buf, sizeof buf, fh);
|
- fgets(buf, sizeof buf, fh);
|
||||||
|
+ }
|
||||||
+ if (getline(&line, &linelen, fh) == -1 /* eat line */
|
+ if (getline(&line, &linelen, fh) == -1 /* eat line */
|
||||||
+ || getline(&line, &linelen, fh) == -1) {
|
+ || getline(&line, &linelen, fh) == -1) { /* eat line */
|
||||||
+ err = -1;
|
+ err = -1;
|
||||||
+ goto out;
|
+ goto out;
|
||||||
+ }
|
+ }
|
||||||
|
|
||||||
- procnetdev_vsn = procnetdev_version(buf);
|
- procnetdev_vsn = procnetdev_version(buf);
|
||||||
+ procnetdev_vsn = procnetdev_version(line);
|
+ procnetdev_vsn = procnetdev_version(line);
|
||||||
@ -115,7 +119,7 @@ diff -up net-tools-1.60/lib/interface.c.stack net-tools-1.60/lib/interface.c
|
|||||||
get_dev_fields(s, ife);
|
get_dev_fields(s, ife);
|
||||||
if (target && !strcmp(target,name))
|
if (target && !strcmp(target,name))
|
||||||
{
|
{
|
||||||
@@ -414,6 +425,8 @@ static int if_readlist_rep(char *target,
|
@@ -416,6 +425,8 @@ static int if_readlist_rep(char *target,
|
||||||
err = -1;
|
err = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -29,8 +29,3 @@ diff -up net-tools-1.60/netstat.c.ipx net-tools-1.60/netstat.c
|
|||||||
safe_strncpy(buf, ap->sprint(&sa, flag_not & FLAG_NUM_HOST), sizeof(buf));
|
safe_strncpy(buf, ap->sprint(&sa, flag_not & FLAG_NUM_HOST), sizeof(buf));
|
||||||
snprintf(dad, sizeof(dad), "%s:%04X", buf, dport);
|
snprintf(dad, sizeof(dad), "%s:%04X", buf, dport);
|
||||||
} else
|
} else
|
||||||
diff -up net-tools-1.60/version.h.ipx net-tools-1.60/version.h
|
|
||||||
--- net-tools-1.60/version.h.ipx 2011-12-01 17:02:53.265805240 +0100
|
|
||||||
+++ net-tools-1.60/version.h 2011-12-01 17:02:53.265805240 +0100
|
|
||||||
@@ -0,0 +1 @@
|
|
||||||
+#define RELEASE "net-tools 1.60"
|
|
||||||
|
@ -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
|
|
@ -1,6 +1,6 @@
|
|||||||
diff -up net-tools-1.60/mii-tool.c.mii-registers net-tools-1.60/mii-tool.c
|
diff -up net-tools-1.60/mii-tool.c.mii-registers net-tools-1.60/mii-tool.c
|
||||||
--- net-tools-1.60/mii-tool.c.mii-registers 2011-11-21 02:31:57.000000000 +0100
|
--- net-tools-1.60/mii-tool.c.mii-registers 2012-01-05 12:22:43.000000000 +0100
|
||||||
+++ net-tools-1.60/mii-tool.c 2011-12-07 17:37:35.810289854 +0100
|
+++ net-tools-1.60/mii-tool.c 2012-01-05 13:14:54.462648840 +0100
|
||||||
@@ -51,10 +51,12 @@ static char Version[] = "$Id: mii-tool.c
|
@@ -51,10 +51,12 @@ static char Version[] = "$Id: mii-tool.c
|
||||||
#include <linux/if_arp.h>
|
#include <linux/if_arp.h>
|
||||||
#include <linux/if_ether.h>
|
#include <linux/if_ether.h>
|
||||||
@ -214,10 +214,10 @@ diff -up net-tools-1.60/mii-tool.c.mii-registers net-tools-1.60/mii-tool.c
|
|||||||
- printf((bmsr & MII_BMSR_LINK_VALID) ? "link ok" : "no link");
|
- printf((bmsr & MII_BMSR_LINK_VALID) ? "link ok" : "no link");
|
||||||
+ printf((bmsr & BMSR_LSTATUS) ? "link ok" : "no link");
|
+ printf((bmsr & BMSR_LSTATUS) ? "link ok" : "no link");
|
||||||
printf("\n capabilities:%s", media_list(bmsr >> 6, bmcr2, 0));
|
printf("\n capabilities:%s", media_list(bmsr >> 6, bmcr2, 0));
|
||||||
printf("\n advertising: %s", media_list(advert, lpa2 >> 2, 0));
|
printf("\n advertising: %s", media_list(advert, bmcr2, 0));
|
||||||
- if (lkpar & MII_AN_ABILITY_MASK)
|
- if (lkpar & MII_AN_ABILITY_MASK)
|
||||||
+ if (lkpar & LPA_ABILITY_MASK)
|
+ if (lkpar & LPA_ABILITY_MASK)
|
||||||
printf("\n link partner:%s", media_list(lkpar, bmcr2, 0));
|
printf("\n link partner:%s", media_list(lkpar, lpa2 >> 2, 0));
|
||||||
printf("\n");
|
printf("\n");
|
||||||
}
|
}
|
||||||
@@ -340,7 +370,7 @@ int show_basic_mii(int sock, int phy_id)
|
@@ -340,7 +370,7 @@ int show_basic_mii(int sock, int phy_id)
|
||||||
|
@ -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;
|
|
||||||
}
|
|
||||||
|
|
@ -1,14 +0,0 @@
|
|||||||
diff -up net-tools-1.60/nameif.c.strncpy net-tools-1.60/nameif.c
|
|
||||||
--- net-tools-1.60/nameif.c.strncpy 2011-12-06 12:35:36.123687853 +0100
|
|
||||||
+++ net-tools-1.60/nameif.c 2011-12-06 12:35:36.270686015 +0100
|
|
||||||
@@ -100,8 +100,8 @@ int setname(char *oldname, char *newnam
|
|
||||||
struct ifreq ifr;
|
|
||||||
opensock();
|
|
||||||
memset(&ifr,0,sizeof(struct ifreq));
|
|
||||||
- strcpy(ifr.ifr_name, oldname);
|
|
||||||
- strcpy(ifr.ifr_newname, newname);
|
|
||||||
+ strncpy(ifr.ifr_name, oldname, IFNAMSIZ);
|
|
||||||
+ strncpy(ifr.ifr_newname, newname, IFNAMSIZ);
|
|
||||||
return ioctl(ctl_sk, SIOCSIFNAME, &ifr);
|
|
||||||
}
|
|
||||||
|
|
@ -1,11 +0,0 @@
|
|||||||
diff -up net-tools-1.60/netstat.c.netstat-leak net-tools-1.60/netstat.c
|
|
||||||
--- net-tools-1.60/netstat.c.netstat-leak 2010-09-16 10:49:49.000000000 +0200
|
|
||||||
+++ net-tools-1.60/netstat.c 2010-09-16 10:53:47.000000000 +0200
|
|
||||||
@@ -558,6 +558,7 @@ static void tcp_node_hash_clear(void)
|
|
||||||
}
|
|
||||||
|
|
||||||
/* free the bucket itself */
|
|
||||||
+ free(tcp_node_hash[i]->socket_pair);
|
|
||||||
free(tcp_node_hash[i]);
|
|
||||||
tcp_node_hash[i] = NULL;
|
|
||||||
}
|
|
@ -1,21 +0,0 @@
|
|||||||
diff -up net-tools-1.60/netstat.c.p-basename net-tools-1.60/netstat.c
|
|
||||||
--- net-tools-1.60/netstat.c.p-basename 2011-12-06 14:54:17.023662287 +0100
|
|
||||||
+++ net-tools-1.60/netstat.c 2011-12-06 14:56:27.852026709 +0100
|
|
||||||
@@ -395,7 +395,7 @@ static void prg_cache_load(void)
|
|
||||||
{
|
|
||||||
char line[LINE_MAX],eacces=0;
|
|
||||||
int procfdlen,fd,cmdllen,lnamelen;
|
|
||||||
- char lname[30],cmdlbuf[512],finbuf[PROGNAME_WIDTH];
|
|
||||||
+ char lname[30],cmdlbuf[512],finbuf[PROGNAME_WIDTH],*cmdlpend;
|
|
||||||
unsigned long inode;
|
|
||||||
const char *cs,*cmdlp;
|
|
||||||
DIR *dirproc=NULL,*dirfd=NULL;
|
|
||||||
@@ -459,6 +459,8 @@ static void prg_cache_load(void)
|
|
||||||
cmdlp++;
|
|
||||||
else
|
|
||||||
cmdlp = cmdlbuf;
|
|
||||||
+ if ((cmdlpend = strrchr(cmdlp, ':')) != NULL)
|
|
||||||
+ *cmdlpend = '\0';
|
|
||||||
}
|
|
||||||
|
|
||||||
snprintf(finbuf, sizeof(finbuf), "%s/%s", direproc->d_name, cmdlp);
|
|
@ -1,55 +0,0 @@
|
|||||||
diff -up net-tools-1.60/man/en_US/plipconfig.8.plipconfig net-tools-1.60/man/en_US/plipconfig.8
|
|
||||||
--- net-tools-1.60/man/en_US/plipconfig.8.plipconfig 1999-01-09 17:19:58.000000000 +0100
|
|
||||||
+++ net-tools-1.60/man/en_US/plipconfig.8 2011-04-14 13:07:52.000000000 +0200
|
|
||||||
@@ -2,9 +2,9 @@
|
|
||||||
.SH NAME
|
|
||||||
plipconfig \- fine tune PLIP device parameters
|
|
||||||
.SH SYNOPSIS
|
|
||||||
-.B "plipconfig interface"
|
|
||||||
+.B "plipconfig interface [nibble NN] [trigger NN]"
|
|
||||||
.br
|
|
||||||
-.B "plipconfig interface [nibble NN] [trigger NN] [unit NN]"
|
|
||||||
+.B "plipconfig [-V] [--version] [-h] [--help]"
|
|
||||||
.SH DESCRIPTION
|
|
||||||
.B Plipconfig
|
|
||||||
is used to (hopefully) improve PLIP performance by changing the default
|
|
||||||
diff -up net-tools-1.60/plipconfig.c.plipconfig net-tools-1.60/plipconfig.c
|
|
||||||
--- net-tools-1.60/plipconfig.c.plipconfig 2001-04-08 19:04:23.000000000 +0200
|
|
||||||
+++ net-tools-1.60/plipconfig.c 2011-04-14 13:11:46.000000000 +0200
|
|
||||||
@@ -43,9 +43,6 @@
|
|
||||||
#include "net-support.h"
|
|
||||||
#include "version.h"
|
|
||||||
|
|
||||||
-int opt_a = 0;
|
|
||||||
-int opt_i = 0;
|
|
||||||
-int opt_v = 0;
|
|
||||||
int skfd = -1;
|
|
||||||
|
|
||||||
struct ifreq ifr;
|
|
||||||
@@ -63,9 +60,9 @@ static void version(void)
|
|
||||||
|
|
||||||
void usage(void)
|
|
||||||
{
|
|
||||||
- fprintf(stderr, _("Usage: plipconfig [-a] [-i] [-v] interface\n"));
|
|
||||||
- fprintf(stderr, _(" [nibble NN] [trigger NN]\n"));
|
|
||||||
+ fprintf(stderr, _("Usage: plipconfig interface [nibble NN] [trigger NN]\n"));
|
|
||||||
fprintf(stderr, _(" plipconfig -V | --version\n"));
|
|
||||||
+ fprintf(stderr, _(" plipconfig -h | --help\n"));
|
|
||||||
exit(-1);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -93,12 +90,10 @@ int main(int argc, char **argv)
|
|
||||||
argc--;
|
|
||||||
argv++;
|
|
||||||
while (argv[0] && *argv[0] == '-') {
|
|
||||||
- if (!strcmp(*argv, "-a"))
|
|
||||||
- opt_a = 1;
|
|
||||||
- if (!strcmp(*argv, "-v"))
|
|
||||||
- opt_v = 1;
|
|
||||||
if (!strcmp(*argv, "-V") || !strcmp(*argv, "--version"))
|
|
||||||
version();
|
|
||||||
+ else
|
|
||||||
+ usage();
|
|
||||||
argv++;
|
|
||||||
argc--;
|
|
||||||
}
|
|
@ -1,69 +0,0 @@
|
|||||||
diff -up net-tools-1.60/lib/inet6_gr.c.scanf-format net-tools-1.60/lib/inet6_gr.c
|
|
||||||
--- net-tools-1.60/lib/inet6_gr.c.scanf-format 2011-12-06 13:14:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/lib/inet6_gr.c 2011-12-06 13:21:01.417616990 +0100
|
|
||||||
@@ -82,7 +82,7 @@ int rprint_fib6(int ext, int numeric)
|
|
||||||
"Flag Met Ref Use If\n"));
|
|
||||||
|
|
||||||
while (fgets(buff, 1023, fp)) {
|
|
||||||
- num = sscanf(buff, "%4s%4s%4s%4s%4s%4s%4s%4s %02x %4s%4s%4s%4s%4s%4s%4s%4s %02x %4s%4s%4s%4s%4s%4s%4s%4s %08x %08x %08x %08x %s\n",
|
|
||||||
+ num = sscanf(buff, "%4s%4s%4s%4s%4s%4s%4s%4s %02x %4s%4s%4s%4s%4s%4s%4s%4s %02x %4s%4s%4s%4s%4s%4s%4s%4s %08x %08x %08x %08x %15s\n",
|
|
||||||
addr6p[0], addr6p[1], addr6p[2], addr6p[3],
|
|
||||||
addr6p[4], addr6p[5], addr6p[6], addr6p[7],
|
|
||||||
&prefix_len,
|
|
||||||
diff -up net-tools-1.60/lib/inet_gr.c.scanf-format net-tools-1.60/lib/inet_gr.c
|
|
||||||
--- net-tools-1.60/lib/inet_gr.c.scanf-format 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/lib/inet_gr.c 2011-12-06 13:23:25.408816852 +0100
|
|
||||||
@@ -68,7 +68,7 @@ int rprint_fib(int ext, int numeric)
|
|
||||||
mss = 0;
|
|
||||||
|
|
||||||
fmt = proc_gen_fmt(_PATH_PROCNET_ROUTE, 0, fp,
|
|
||||||
- "Iface", "%16s",
|
|
||||||
+ "Iface", "%15s",
|
|
||||||
"Destination", "%127s",
|
|
||||||
"Gateway", "%127s",
|
|
||||||
"Flags", "%X",
|
|
||||||
@@ -80,7 +80,7 @@ int rprint_fib(int ext, int numeric)
|
|
||||||
"Window", "%d",
|
|
||||||
"IRTT", "%d",
|
|
||||||
NULL);
|
|
||||||
- /* "%16s %127s %127s %X %d %d %d %127s %d %d %d\n" */
|
|
||||||
+ /* "%15s %127s %127s %X %d %d %d %127s %d %d %d\n" */
|
|
||||||
|
|
||||||
if (!fmt)
|
|
||||||
return 1;
|
|
||||||
@@ -268,7 +268,7 @@ int rprint_cache(int ext, int numeric)
|
|
||||||
"MSS Window irtt HH Arp\n"));
|
|
||||||
|
|
||||||
fmt = proc_gen_fmt(_PATH_PROCNET_RTCACHE, 0, fp,
|
|
||||||
- "Iface", "%16s",
|
|
||||||
+ "Iface", "%15s",
|
|
||||||
"Destination", "%127s",
|
|
||||||
"Gateway", "%127s",
|
|
||||||
"Flags", "%X",
|
|
||||||
@@ -282,7 +282,7 @@ int rprint_cache(int ext, int numeric)
|
|
||||||
"HH", "%d",
|
|
||||||
"ARP", "%d",
|
|
||||||
NULL);
|
|
||||||
- /* "%16s %127s %127s %X %d %d %d %127s %d %d %d %d %d\n" */
|
|
||||||
+ /* "%15s %127s %127s %X %d %d %d %127s %d %d %d %d %d\n" */
|
|
||||||
}
|
|
||||||
|
|
||||||
if (format == 2) {
|
|
||||||
@@ -291,7 +291,7 @@ int rprint_cache(int ext, int numeric)
|
|
||||||
"Flags Metric Ref Use Iface "
|
|
||||||
"MSS Window irtt TOS HHRef HHUptod SpecDst\n"));
|
|
||||||
fmt = proc_gen_fmt(_PATH_PROCNET_RTCACHE, 0, fp,
|
|
||||||
- "Iface", "%16s",
|
|
||||||
+ "Iface", "%15s",
|
|
||||||
"Destination", "%127s",
|
|
||||||
"Gateway", "%127s",
|
|
||||||
"Flags", "%X",
|
|
||||||
@@ -307,7 +307,7 @@ int rprint_cache(int ext, int numeric)
|
|
||||||
"HHUptod", "%d",
|
|
||||||
"SpecDst", "%127s",
|
|
||||||
NULL);
|
|
||||||
- /* "%16s %127s %127s %X %d %d %d %127s %d %d %d %d %d %127s\n" */
|
|
||||||
+ /* "%15s %127s %127s %X %d %d %d %127s %d %d %d %d %d %127s\n" */
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,14 +1,14 @@
|
|||||||
diff -up net-tools-1.60/config.in.selinux net-tools-1.60/config.in
|
diff -up net-tools-1.60/config.in.selinux net-tools-1.60/config.in
|
||||||
--- net-tools-1.60/config.in.selinux 2011-11-21 02:31:57.000000000 +0100
|
--- net-tools-1.60/config.in.selinux 2012-01-05 12:22:43.000000000 +0100
|
||||||
+++ net-tools-1.60/config.in 2011-12-07 12:24:21.922245784 +0100
|
+++ net-tools-1.60/config.in 2012-01-05 13:04:45.359263680 +0100
|
||||||
@@ -91,3 +91,4 @@ bool 'InfiniBand hardware support' HAVE_
|
@@ -92,3 +92,4 @@ bool 'InfiniBand hardware support' HAVE_
|
||||||
bool 'IP Masquerading support' HAVE_FW_MASQUERADE y
|
bool 'IP Masquerading support' HAVE_FW_MASQUERADE y
|
||||||
bool 'Build iptunnel and ipmaddr' HAVE_IP_TOOLS y
|
bool 'Build iptunnel and ipmaddr' HAVE_IP_TOOLS y
|
||||||
bool 'Build mii-tool' HAVE_MII y
|
bool 'Build mii-tool' HAVE_MII y
|
||||||
+bool 'SELinux support' HAVE_SELINUX n
|
+bool 'SELinux support' HAVE_SELINUX n
|
||||||
diff -up net-tools-1.60/Makefile.selinux net-tools-1.60/Makefile
|
diff -up net-tools-1.60/Makefile.selinux net-tools-1.60/Makefile
|
||||||
--- net-tools-1.60/Makefile.selinux 2011-11-21 02:31:57.000000000 +0100
|
--- net-tools-1.60/Makefile.selinux 2012-01-05 12:22:43.000000000 +0100
|
||||||
+++ net-tools-1.60/Makefile 2011-12-07 12:23:00.078268978 +0100
|
+++ net-tools-1.60/Makefile 2012-01-05 13:04:45.359263680 +0100
|
||||||
@@ -114,6 +114,12 @@ endif
|
@@ -114,6 +114,12 @@ endif
|
||||||
|
|
||||||
NET_LIB = $(NET_LIB_PATH)/lib$(NET_LIB_NAME).a
|
NET_LIB = $(NET_LIB_PATH)/lib$(NET_LIB_NAME).a
|
||||||
@ -23,8 +23,8 @@ diff -up net-tools-1.60/Makefile.selinux net-tools-1.60/Makefile
|
|||||||
LDFLAGS += -L$(NET_LIB_PATH)
|
LDFLAGS += -L$(NET_LIB_PATH)
|
||||||
|
|
||||||
diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
||||||
--- net-tools-1.60/netstat.c.selinux 2011-12-07 12:23:00.040269453 +0100
|
--- net-tools-1.60/netstat.c.selinux 2012-01-05 13:04:45.315264230 +0100
|
||||||
+++ net-tools-1.60/netstat.c 2011-12-07 12:23:00.079268965 +0100
|
+++ net-tools-1.60/netstat.c 2012-01-05 13:05:42.368550965 +0100
|
||||||
@@ -89,6 +89,11 @@
|
@@ -89,6 +89,11 @@
|
||||||
#include <net/if.h>
|
#include <net/if.h>
|
||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
@ -37,23 +37,23 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
#include "net-support.h"
|
#include "net-support.h"
|
||||||
#include "pathnames.h"
|
#include "pathnames.h"
|
||||||
#include "version.h"
|
#include "version.h"
|
||||||
@@ -100,6 +105,7 @@
|
@@ -104,6 +109,7 @@
|
||||||
#include "proc.h"
|
#endif
|
||||||
|
|
||||||
#define PROGNAME_WIDTH 20
|
#define PROGNAME_WIDTH 20
|
||||||
+#define SELINUX_WIDTH 50
|
+#define SELINUX_WIDTH 50
|
||||||
|
|
||||||
#if !defined(s6_addr32) && defined(in6a_words)
|
#if !defined(s6_addr32) && defined(in6a_words)
|
||||||
#define s6_addr32 in6a_words /* libinet6 */
|
#define s6_addr32 in6a_words /* libinet6 */
|
||||||
@@ -159,6 +165,7 @@ int flag_wide= 0;
|
@@ -165,6 +171,7 @@ int flag_arg = 0;
|
||||||
int flag_prg = 0;
|
|
||||||
int flag_arg = 0;
|
|
||||||
int flag_ver = 0;
|
int flag_ver = 0;
|
||||||
|
int flag_l2cap = 0;
|
||||||
|
int flag_rfcomm = 0;
|
||||||
+int flag_selinux = 0;
|
+int flag_selinux = 0;
|
||||||
|
|
||||||
FILE *procinfo;
|
FILE *procinfo;
|
||||||
|
|
||||||
@@ -222,12 +229,17 @@ FILE *procinfo;
|
@@ -228,12 +235,17 @@ FILE *procinfo;
|
||||||
#define PROGNAME_WIDTH1(s) PROGNAME_WIDTH2(s)
|
#define PROGNAME_WIDTH1(s) PROGNAME_WIDTH2(s)
|
||||||
#define PROGNAME_WIDTH2(s) #s
|
#define PROGNAME_WIDTH2(s) #s
|
||||||
|
|
||||||
@ -71,7 +71,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
} *prg_hash[PRG_HASH_SIZE];
|
} *prg_hash[PRG_HASH_SIZE];
|
||||||
|
|
||||||
static char prg_cache_loaded = 0;
|
static char prg_cache_loaded = 0;
|
||||||
@@ -235,9 +247,12 @@ static char prg_cache_loaded = 0;
|
@@ -241,9 +253,12 @@ static char prg_cache_loaded = 0;
|
||||||
#define PRG_HASHIT(x) ((x) % PRG_HASH_SIZE)
|
#define PRG_HASHIT(x) ((x) % PRG_HASH_SIZE)
|
||||||
|
|
||||||
#define PROGNAME_BANNER "PID/Program name"
|
#define PROGNAME_BANNER "PID/Program name"
|
||||||
@ -84,7 +84,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
#define PRG_LOCAL_ADDRESS "local_address"
|
#define PRG_LOCAL_ADDRESS "local_address"
|
||||||
#define PRG_INODE "inode"
|
#define PRG_INODE "inode"
|
||||||
#define PRG_SOCKET_PFX "socket:["
|
#define PRG_SOCKET_PFX "socket:["
|
||||||
@@ -257,7 +272,7 @@ static char prg_cache_loaded = 0;
|
@@ -263,7 +278,7 @@ static char prg_cache_loaded = 0;
|
||||||
#define PATH_CMDLINE "cmdline"
|
#define PATH_CMDLINE "cmdline"
|
||||||
#define PATH_CMDLINEl strlen(PATH_CMDLINE)
|
#define PATH_CMDLINEl strlen(PATH_CMDLINE)
|
||||||
|
|
||||||
@ -93,7 +93,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
{
|
{
|
||||||
unsigned hi = PRG_HASHIT(inode);
|
unsigned hi = PRG_HASHIT(inode);
|
||||||
struct prg_node **pnp,*pn;
|
struct prg_node **pnp,*pn;
|
||||||
@@ -278,6 +293,14 @@ static void prg_cache_add(unsigned long
|
@@ -284,6 +299,14 @@ static void prg_cache_add(unsigned long
|
||||||
if (strlen(name)>sizeof(pn->name)-1)
|
if (strlen(name)>sizeof(pn->name)-1)
|
||||||
name[sizeof(pn->name)-1]='\0';
|
name[sizeof(pn->name)-1]='\0';
|
||||||
strcpy(pn->name,name);
|
strcpy(pn->name,name);
|
||||||
@ -108,7 +108,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
static const char *prg_cache_get(unsigned long inode)
|
static const char *prg_cache_get(unsigned long inode)
|
||||||
@@ -290,6 +313,16 @@ static const char *prg_cache_get(unsigne
|
@@ -296,6 +319,16 @@ static const char *prg_cache_get(unsigne
|
||||||
return("-");
|
return("-");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -125,7 +125,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
static void prg_cache_clear(void)
|
static void prg_cache_clear(void)
|
||||||
{
|
{
|
||||||
struct prg_node **pnp,*pn;
|
struct prg_node **pnp,*pn;
|
||||||
@@ -367,6 +400,7 @@ static void prg_cache_load(void)
|
@@ -373,6 +406,7 @@ static void prg_cache_load(void)
|
||||||
const char *cs,*cmdlp;
|
const char *cs,*cmdlp;
|
||||||
DIR *dirproc=NULL,*dirfd=NULL;
|
DIR *dirproc=NULL,*dirfd=NULL;
|
||||||
struct dirent *direproc,*direfd;
|
struct dirent *direproc,*direfd;
|
||||||
@ -133,7 +133,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
|
|
||||||
if (prg_cache_loaded || !flag_prg) return;
|
if (prg_cache_loaded || !flag_prg) return;
|
||||||
prg_cache_loaded=1;
|
prg_cache_loaded=1;
|
||||||
@@ -428,7 +462,15 @@ static void prg_cache_load(void)
|
@@ -436,7 +470,15 @@ static void prg_cache_load(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
snprintf(finbuf, sizeof(finbuf), "%s/%s", direproc->d_name, cmdlp);
|
snprintf(finbuf, sizeof(finbuf), "%s/%s", direproc->d_name, cmdlp);
|
||||||
@ -150,7 +150,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
}
|
}
|
||||||
closedir(dirfd);
|
closedir(dirfd);
|
||||||
dirfd = NULL;
|
dirfd = NULL;
|
||||||
@@ -662,6 +704,9 @@ static void finish_this_one(int uid, uns
|
@@ -672,6 +714,9 @@ static void finish_this_one(int uid, uns
|
||||||
}
|
}
|
||||||
if (flag_prg)
|
if (flag_prg)
|
||||||
printf(" %-" PROGNAME_WIDTHs "s",prg_cache_get(inode));
|
printf(" %-" PROGNAME_WIDTHs "s",prg_cache_get(inode));
|
||||||
@ -160,7 +160,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
if (flag_opt)
|
if (flag_opt)
|
||||||
printf(" %s", timers);
|
printf(" %s", timers);
|
||||||
putchar('\n');
|
putchar('\n');
|
||||||
@@ -1484,7 +1529,9 @@ static void unix_do_one(int nr, const ch
|
@@ -1495,7 +1540,9 @@ static void unix_do_one(int nr, const ch
|
||||||
printf("- ");
|
printf("- ");
|
||||||
if (flag_prg)
|
if (flag_prg)
|
||||||
printf(" %-" PROGNAME_WIDTHs "s",(has & HAS_INODE?prg_cache_get(inode):"-"));
|
printf(" %-" PROGNAME_WIDTHs "s",(has & HAS_INODE?prg_cache_get(inode):"-"));
|
||||||
@ -171,7 +171,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
printf(" %s\n", path);
|
printf(" %s\n", path);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1503,6 +1550,7 @@ static int unix_info(void)
|
@@ -1514,6 +1561,7 @@ static int unix_info(void)
|
||||||
|
|
||||||
printf(_("\nProto RefCnt Flags Type State I-Node "));
|
printf(_("\nProto RefCnt Flags Type State I-Node "));
|
||||||
print_progname_banner();
|
print_progname_banner();
|
||||||
@ -179,7 +179,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
printf(_(" Path\n")); /* xxx */
|
printf(_(" Path\n")); /* xxx */
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -1802,6 +1850,7 @@ static void usage(void)
|
@@ -1927,6 +1975,7 @@ static void usage(void)
|
||||||
fprintf(stderr, _(" -o, --timers display timers\n"));
|
fprintf(stderr, _(" -o, --timers display timers\n"));
|
||||||
fprintf(stderr, _(" -F, --fib display Forwarding Information Base (default)\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, _(" -C, --cache display routing cache instead of FIB\n\n"));
|
||||||
@ -187,7 +187,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
|
|
||||||
fprintf(stderr, _(" <Socket>={-t|--tcp} {-u|--udp} {-U|--udplite} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom\n"));
|
fprintf(stderr, _(" <Socket>={-t|--tcp} {-u|--udp} {-U|--udplite} {-w|--raw} {-x|--unix} --ax25 --ipx --netrom\n"));
|
||||||
fprintf(stderr, _(" <AF>=Use '-6|-4' or '-A <af>' or '--<af>'; default: %s\n"), DFLT_AF);
|
fprintf(stderr, _(" <AF>=Use '-6|-4' or '-A <af>' or '--<af>'; default: %s\n"), DFLT_AF);
|
||||||
@@ -1850,6 +1899,7 @@ int main
|
@@ -1977,6 +2026,7 @@ int main
|
||||||
{"cache", 0, 0, 'C'},
|
{"cache", 0, 0, 'C'},
|
||||||
{"fib", 0, 0, 'F'},
|
{"fib", 0, 0, 'F'},
|
||||||
{"groups", 0, 0, 'g'},
|
{"groups", 0, 0, 'g'},
|
||||||
@ -195,7 +195,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
{NULL, 0, 0, 0}
|
{NULL, 0, 0, 0}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1861,7 +1911,7 @@ int main
|
@@ -1988,7 +2038,7 @@ int main
|
||||||
getroute_init(); /* Set up AF routing support */
|
getroute_init(); /* Set up AF routing support */
|
||||||
|
|
||||||
afname[0] = '\0';
|
afname[0] = '\0';
|
||||||
@ -204,7 +204,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
switch (i) {
|
switch (i) {
|
||||||
case -1:
|
case -1:
|
||||||
break;
|
break;
|
||||||
@@ -1975,6 +2025,20 @@ int main
|
@@ -2108,6 +2158,20 @@ int main
|
||||||
if (aftrans_opt("unix"))
|
if (aftrans_opt("unix"))
|
||||||
exit(1);
|
exit(1);
|
||||||
break;
|
break;
|
||||||
@ -225,7 +225,7 @@ diff -up net-tools-1.60/netstat.c.selinux net-tools-1.60/netstat.c
|
|||||||
case '?':
|
case '?':
|
||||||
case 'h':
|
case 'h':
|
||||||
usage();
|
usage();
|
||||||
@@ -2101,6 +2165,7 @@ int main
|
@@ -2238,6 +2302,7 @@ int main
|
||||||
if (flag_exp > 1)
|
if (flag_exp > 1)
|
||||||
printf(_(" User Inode "));
|
printf(_(" User Inode "));
|
||||||
print_progname_banner();
|
print_progname_banner();
|
||||||
|
@ -1,468 +0,0 @@
|
|||||||
diff -up net-tools-1.60/statistics.c.doubleword net-tools-1.60/statistics.c
|
|
||||||
--- net-tools-1.60/statistics.c.doubleword 2011-12-02 15:41:03.000000000 +0100
|
|
||||||
+++ net-tools-1.60/statistics.c 2011-12-02 15:55:22.202301865 +0100
|
|
||||||
@@ -64,115 +64,115 @@ static enum State state;
|
|
||||||
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 %llu"), number | I_STATIC},
|
|
||||||
+ {"InReceives", N_("%llu total packets received"), number},
|
|
||||||
+ {"InHdrErrors", N_("%llu with invalid headers"), opt_number},
|
|
||||||
+ {"InAddrErrors", N_("%llu with invalid addresses"), opt_number},
|
|
||||||
+ {"ForwDatagrams", N_("%llu forwarded"), number},
|
|
||||||
+ {"InUnknownProtos", N_("%llu with unknown protocol"), opt_number},
|
|
||||||
+ {"InDiscards", N_("%llu incoming packets discarded"), number},
|
|
||||||
+ {"InDelivers", N_("%llu incoming packets delivered"), number},
|
|
||||||
+ {"OutRequests", N_("%llu requests sent out"), number}, /*? */
|
|
||||||
+ {"OutDiscards", N_("%llu outgoing packets dropped"), opt_number},
|
|
||||||
+ {"OutNoRoutes", N_("%llu dropped because of missing route"), opt_number},
|
|
||||||
+ {"ReasmTimeout", N_("%llu fragments dropped after timeout"), opt_number},
|
|
||||||
+ {"ReasmReqds", N_("%llu reassemblies required"), opt_number}, /* ? */
|
|
||||||
+ {"ReasmOKs", N_("%llu packets reassembled ok"), opt_number},
|
|
||||||
+ {"ReasmFails", N_("%llu packet reassembles failed"), opt_number},
|
|
||||||
+ {"FragOKs", N_("%llu fragments received ok"), opt_number},
|
|
||||||
+ {"FragFails", N_("%llu fragments failed"), opt_number},
|
|
||||||
+ {"FragCreates", N_("%llu fragments created"), opt_number}
|
|
||||||
};
|
|
||||||
|
|
||||||
struct entry Ip6tab[] =
|
|
||||||
{
|
|
||||||
- {"Ip6InReceives", N_("%u total packets received"), number},
|
|
||||||
- {"Ip6InHdrErrors", N_("%u with invalid headers"), opt_number},
|
|
||||||
- {"Ip6InTooBigErrors", N_("%u with packets too big"), opt_number},
|
|
||||||
- {"Ip6InNoRoutes", N_("%u incoming packets with no route"), opt_number},
|
|
||||||
- {"Ip6InAddrErrors", N_("%u with invalid addresses"), opt_number},
|
|
||||||
- {"Ip6InUnknownProtos", N_("%u with unknown protocol"), opt_number},
|
|
||||||
- {"Ip6InTruncatedPkts", N_("%u with truncated packets"), opt_number},
|
|
||||||
- {"Ip6InDiscards", N_("%u incoming packets discarded"), number},
|
|
||||||
- {"Ip6InDelivers", N_("%u incoming packets delivered"), number},
|
|
||||||
- {"Ip6OutForwDatagrams", N_("%u forwarded"), number},
|
|
||||||
- {"Ip6OutRequests", N_("%u requests sent out"), number}, /*? */
|
|
||||||
- {"Ip6OutDiscards", N_("%u outgoing packets dropped"), opt_number},
|
|
||||||
- {"Ip6OutNoRoutes", N_("%u dropped because of missing route"), opt_number},
|
|
||||||
- {"Ip6ReasmTimeout", N_("%u fragments dropped after timeout"), opt_number},
|
|
||||||
- {"Ip6ReasmReqds", N_("%u reassemblies required"), opt_number}, /* ? */
|
|
||||||
- {"Ip6ReasmOKs", N_("%u packets reassembled ok"), opt_number},
|
|
||||||
- {"Ip6ReasmFails", N_("%u packet reassembles failed"), opt_number},
|
|
||||||
- {"Ip6FragOKs", N_("%u fragments received ok"), opt_number},
|
|
||||||
- {"Ip6FragFails", N_("%u fragments failed"), opt_number},
|
|
||||||
- {"Ip6FragCreates", N_("%u fragments created"), opt_number},
|
|
||||||
- {"Ip6InMcastPkts", N_("%u incoming multicast packets"), opt_number},
|
|
||||||
- {"Ip6OutMcastPkts", N_("%u outgoing multicast packets"), opt_number}
|
|
||||||
+ {"Ip6InReceives", N_("%llu total packets received"), number},
|
|
||||||
+ {"Ip6InHdrErrors", N_("%llu with invalid headers"), opt_number},
|
|
||||||
+ {"Ip6InTooBigErrors", N_("%llu with packets too big"), opt_number},
|
|
||||||
+ {"Ip6InNoRoutes", N_("%llu incoming packets with no route"), opt_number},
|
|
||||||
+ {"Ip6InAddrErrors", N_("%llu with invalid addresses"), opt_number},
|
|
||||||
+ {"Ip6InUnknownProtos", N_("%llu with unknown protocol"), opt_number},
|
|
||||||
+ {"Ip6InTruncatedPkts", N_("%llu with truncated packets"), opt_number},
|
|
||||||
+ {"Ip6InDiscards", N_("%llu incoming packets discarded"), number},
|
|
||||||
+ {"Ip6InDelivers", N_("%llu incoming packets delivered"), number},
|
|
||||||
+ {"Ip6OutForwDatagrams", N_("%llu forwarded"), number},
|
|
||||||
+ {"Ip6OutRequests", N_("%llu requests sent out"), number}, /*? */
|
|
||||||
+ {"Ip6OutDiscards", N_("%llu outgoing packets dropped"), opt_number},
|
|
||||||
+ {"Ip6OutNoRoutes", N_("%llu dropped because of missing route"), opt_number},
|
|
||||||
+ {"Ip6ReasmTimeout", N_("%llu fragments dropped after timeout"), opt_number},
|
|
||||||
+ {"Ip6ReasmReqds", N_("%llu reassemblies required"), opt_number}, /* ? */
|
|
||||||
+ {"Ip6ReasmOKs", N_("%llu packets reassembled ok"), opt_number},
|
|
||||||
+ {"Ip6ReasmFails", N_("%llu packet reassembles failed"), opt_number},
|
|
||||||
+ {"Ip6FragOKs", N_("%llu fragments received ok"), opt_number},
|
|
||||||
+ {"Ip6FragFails", N_("%llu fragments failed"), opt_number},
|
|
||||||
+ {"Ip6FragCreates", N_("%llu fragments created"), opt_number},
|
|
||||||
+ {"Ip6InMcastPkts", N_("%llu incoming multicast packets"), opt_number},
|
|
||||||
+ {"Ip6OutMcastPkts", N_("%llu outgoing multicast packets"), 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_("%llu ICMP messages received"), number},
|
|
||||||
+ {"InErrors", N_("%llu input ICMP message failed."), number},
|
|
||||||
+ {"InDestUnreachs", N_("destination unreachable: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"InTimeExcds", N_("timeout in transit: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"InParmProbs", N_("wrong parameters: %llu"), i_inp_icmp | I_TITLE}, /*? */
|
|
||||||
+ {"InSrcQuenchs", N_("source quenches: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"InRedirects", N_("redirects: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"InEchos", N_("echo requests: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"InEchoReps", N_("echo replies: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"InTimestamps", N_("timestamp request: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"InTimestampReps", N_("timestamp reply: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"InAddrMasks", N_("address mask request: %llu"), i_inp_icmp | I_TITLE}, /*? */
|
|
||||||
+ {"InAddrMaskReps", N_("address mask replies: %llu"), i_inp_icmp | I_TITLE}, /*? */
|
|
||||||
+ {"OutMsgs", N_("%llu ICMP messages sent"), number},
|
|
||||||
+ {"OutErrors", N_("%llu ICMP messages failed"), number},
|
|
||||||
+ {"OutDestUnreachs", N_("destination unreachable: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutTimeExcds", N_("time exceeded: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutParmProbs", N_("wrong parameters: %llu"), i_outp_icmp | I_TITLE}, /*? */
|
|
||||||
+ {"OutSrcQuenchs", N_("source quench: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutRedirects", N_("redirect: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutEchos", N_("echo request: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutEchoReps", N_("echo replies: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutTimestamps", N_("timestamp requests: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutTimestampReps", N_("timestamp replies: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutAddrMasks", N_("address mask requests: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"OutAddrMaskReps", N_("address mask replies: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
};
|
|
||||||
|
|
||||||
struct entry Icmp6tab[] =
|
|
||||||
{
|
|
||||||
- {"Icmp6InMsgs", N_("%u ICMP messages received"), number},
|
|
||||||
- {"Icmp6InErrors", N_("%u input ICMP message failed."), number},
|
|
||||||
- {"Icmp6InDestUnreachs", N_("destination unreachable: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InPktTooBigs", N_("packets too big: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InTimeExcds", N_("received ICMPv6 time exceeded: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InParmProblems", N_("parameter problem: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InEchos", N_("echo requests: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InEchoReplies", N_("echo replies: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InGroupMembQueries", N_("group member queries: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InGroupMembResponses", N_("group member responses: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InGroupMembReductions", N_("group member reductions: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InRouterSolicits", N_("router solicits: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InRouterAdvertisements", N_("router advertisement: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InNeighborSolicits", N_("neighbour solicits: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InNeighborAdvertisements", N_("neighbour advertisement: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6InRedirects", N_("redirects: %u"), i_inp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutMsgs", N_("%u ICMP messages sent"), number},
|
|
||||||
- {"Icmp6OutDestUnreachs", N_("destination unreachable: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutPktTooBigs", N_("packets too big: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutTimeExcds", N_("sent ICMPv6 time exceeded: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutParmProblems", N_("parameter problem: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutEchos", N_("echo requests: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutEchoReplies", N_("echo replies: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutGroupMembQueries", N_("group member queries: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutGroupMembResponses", N_("group member responses: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutGroupMembReductions", N_("group member reductions: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutRouterSolicits", N_("router solicits: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutRouterAdvertisements ", N_("router advertisement: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutNeighborSolicits", N_("neighbor solicits: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutNeighborAdvertisements", N_("neighbor advertisements: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
- {"Icmp6OutRedirects", N_("redirects: %u"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InMsgs", N_("%llu ICMP messages received"), number},
|
|
||||||
+ {"Icmp6InErrors", N_("%llu input ICMP message failed."), number},
|
|
||||||
+ {"Icmp6InDestUnreachs", N_("destination unreachable: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InPktTooBigs", N_("packets too big: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InTimeExcds", N_("received ICMPv6 time exceeded: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InParmProblems", N_("parameter problem: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InEchos", N_("echo requests: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InEchoReplies", N_("echo replies: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InGroupMembQueries", N_("group member queries: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InGroupMembResponses", N_("group member responses: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InGroupMembReductions", N_("group member reductions: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InRouterSolicits", N_("router solicits: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InRouterAdvertisements", N_("router advertisement: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InNeighborSolicits", N_("neighbour solicits: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InNeighborAdvertisements", N_("neighbour advertisement: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6InRedirects", N_("redirects: %llu"), i_inp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutMsgs", N_("%llu ICMP messages sent"), number},
|
|
||||||
+ {"Icmp6OutDestUnreachs", N_("destination unreachable: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutPktTooBigs", N_("packets too big: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutTimeExcds", N_("sent ICMPv6 time exceeded: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutParmProblems", N_("parameter problem: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutEchos", N_("echo requests: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutEchoReplies", N_("echo replies: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutGroupMembQueries", N_("group member queries: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutGroupMembResponses", N_("group member responses: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutGroupMembReductions", N_("group member reductions: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutRouterSolicits", N_("router solicits: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutRouterAdvertisements ", N_("router advertisement: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutNeighborSolicits", N_("neighbor solicits: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutNeighborAdvertisements", N_("neighbor advertisements: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
+ {"Icmp6OutRedirects", N_("redirects: %llu"), i_outp_icmp | I_TITLE},
|
|
||||||
};
|
|
||||||
|
|
||||||
struct entry Tcptab[] =
|
|
||||||
@@ -181,122 +181,122 @@ struct entry Tcptab[] =
|
|
||||||
{"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_("%llu active connections openings"), number},
|
|
||||||
+ {"PassiveOpens", N_("%llu passive connection openings"), number},
|
|
||||||
+ {"AttemptFails", N_("%llu failed connection attempts"), number},
|
|
||||||
+ {"EstabResets", N_("%llu connection resets received"), number},
|
|
||||||
+ {"CurrEstab", N_("%llu connections established"), number},
|
|
||||||
+ {"InSegs", N_("%llu segments received"), number},
|
|
||||||
+ {"OutSegs", N_("%llu segments send out"), number},
|
|
||||||
+ {"RetransSegs", N_("%llu segments retransmited"), number},
|
|
||||||
+ {"InErrs", N_("%llu bad segments received."), number},
|
|
||||||
+ {"OutRsts", N_("%llu 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},
|
|
||||||
- {"RcvbufErrors", N_("%u receive buffer errors"), number},
|
|
||||||
- {"SndbufErrors", N_("%u send buffer errors"), number},
|
|
||||||
+ {"InDatagrams", N_("%llu packets received"), number},
|
|
||||||
+ {"NoPorts", N_("%llu packets to unknown port received."), number},
|
|
||||||
+ {"InErrors", N_("%llu packet receive errors"), number},
|
|
||||||
+ {"OutDatagrams", N_("%llu packets sent"), number},
|
|
||||||
+ {"RcvbufErrors", N_("%llu receive buffer errors"), number},
|
|
||||||
+ {"SndbufErrors", N_("%llu send buffer errors"), number},
|
|
||||||
};
|
|
||||||
|
|
||||||
struct entry Udp6tab[] =
|
|
||||||
{
|
|
||||||
- {"Udp6InDatagrams", N_("%u packets received"), number},
|
|
||||||
- {"Udp6NoPorts", N_("%u packets to unknown port received."), number},
|
|
||||||
- {"Udp6InErrors", N_("%u packet receive errors"), number},
|
|
||||||
- {"Udp6OutDatagrams", N_("%u packets sent"), number},
|
|
||||||
+ {"Udp6InDatagrams", N_("%llu packets received"), number},
|
|
||||||
+ {"Udp6NoPorts", N_("%llu packets to unknown port received."), number},
|
|
||||||
+ {"Udp6InErrors", N_("%llu packet receive errors"), number},
|
|
||||||
+ {"Udp6OutDatagrams", N_("%llu 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_("%llu SYN cookies sent"), opt_number},
|
|
||||||
+ {"SyncookiesRecv", N_("%llu SYN cookies received"), opt_number},
|
|
||||||
+ {"SyncookiesFailed", N_("%llu invalid SYN cookies received"), opt_number},
|
|
||||||
|
|
||||||
- { "EmbryonicRsts", N_("%u resets received for embryonic SYN_RECV sockets"),
|
|
||||||
+ { "EmbryonicRsts", N_("%llu resets received for embryonic SYN_RECV sockets"),
|
|
||||||
opt_number },
|
|
||||||
- { "PruneCalled", N_("%u packets pruned from receive queue because of socket"
|
|
||||||
+ { "PruneCalled", N_("%llu 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_("%llu packets pruned from receive queue"), opt_number },
|
|
||||||
+ { "OfoPruned", N_("%llu 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_("%llu ICMP packets dropped because they were "
|
|
||||||
"out-of-window"), opt_number },
|
|
||||||
- { "LockDroppedIcmps", N_("%u ICMP packets dropped because"
|
|
||||||
+ { "LockDroppedIcmps", N_("%llu 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_("%llu TCP sockets finished time wait in fast timer"), opt_number },
|
|
||||||
+ { "TWRecycled", N_("%llu time wait sockets recycled by time stamp"), opt_number },
|
|
||||||
+ { "TWKilled", N_("%llu TCP sockets finished time wait in slow timer"), opt_number },
|
|
||||||
+ { "PAWSPassive", N_("%llu passive connections rejected because of"
|
|
||||||
" time stamp"), opt_number },
|
|
||||||
- { "PAWSActive", N_("%u active connections rejected because of "
|
|
||||||
+ { "PAWSActive", N_("%llu active connections rejected because of "
|
|
||||||
"time stamp"), opt_number },
|
|
||||||
- { "PAWSEstab", N_("%u packets rejects in established connections because of"
|
|
||||||
+ { "PAWSEstab", N_("%llu 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_("%llu delayed acks sent"), opt_number },
|
|
||||||
+ { "DelayedACKLocked", N_("%llu 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 %llu times"), opt_number },
|
|
||||||
+ { "ListenOverflows", N_("%llu times the listen queue of a socket overflowed"),
|
|
||||||
opt_number },
|
|
||||||
- { "ListenDrops", N_("%u SYNs to LISTEN sockets dropped"), opt_number },
|
|
||||||
- { "TCPPrequeued", N_("%u packets directly queued to recvmsg prequeue."),
|
|
||||||
+ { "ListenDrops", N_("%llu SYNs to LISTEN sockets dropped"), opt_number },
|
|
||||||
+ { "TCPPrequeued", N_("%llu packets directly queued to recvmsg prequeue."),
|
|
||||||
opt_number },
|
|
||||||
- { "TCPDirectCopyFromBacklog", N_("%u bytes directly in process context from backlog"), opt_number },
|
|
||||||
- { "TCPDirectCopyFromPrequeue", N_("%u bytes directly received in process context from prequeue"),
|
|
||||||
+ { "TCPDirectCopyFromBacklog", N_("%llu bytes directly in process context from backlog"), opt_number },
|
|
||||||
+ { "TCPDirectCopyFromPrequeue", N_("%llu bytes directly received in process context from prequeue"),
|
|
||||||
opt_number },
|
|
||||||
- { "TCPPrequeueDropped", N_("%u packets dropped from prequeue"), opt_number },
|
|
||||||
- { "TCPHPHits", N_("%u packet headers predicted"), number },
|
|
||||||
- { "TCPHPHitsToUser", N_("%u packets header predicted and "
|
|
||||||
+ { "TCPPrequeueDropped", N_("%llu packets dropped from prequeue"), opt_number },
|
|
||||||
+ { "TCPHPHits", N_("%llu packet headers predicted"), number },
|
|
||||||
+ { "TCPHPHitsToUser", N_("%llu packets header predicted and "
|
|
||||||
"directly queued to user"), opt_number },
|
|
||||||
- { "SockMallocOOM", N_("Ran %u times out of system memory during "
|
|
||||||
+ { "SockMallocOOM", N_("Ran %llu times out of system memory during "
|
|
||||||
"packet sending"), opt_number },
|
|
||||||
- { "TCPPureAcks", N_("%u acknowledgments not containing data payload received"), opt_number },
|
|
||||||
- { "TCPHPAcks", N_("%u predicted acknowledgments"), opt_number },
|
|
||||||
- { "TCPRenoRecovery", N_("%u times recovered from packet loss due to fast retransmit"), opt_number },
|
|
||||||
- { "TCPSackRecovery", N_("%u times recovered from packet loss by selective acknowledgements"), opt_number },
|
|
||||||
- { "TCPSACKReneging", N_("%u bad SACK blocks received"), opt_number },
|
|
||||||
- { "TCPFACKReorder", N_("Detected reordering %u times using FACK"), opt_number },
|
|
||||||
- { "TCPSACKReorder", N_("Detected reordering %u times using SACK"), opt_number },
|
|
||||||
- { "TCPTSReorder", N_("Detected reordering %u times using time stamp"), opt_number },
|
|
||||||
- { "TCPRenoReorder", N_("Detected reordering %u times using reno fast retransmit"), opt_number },
|
|
||||||
- { "TCPFullUndo", N_("%u congestion windows fully recovered without slow start"), opt_number },
|
|
||||||
- { "TCPPartialUndo", N_("%u congestion windows partially recovered using Hoe heuristic"), opt_number },
|
|
||||||
- { "TCPDSackUndo", N_("%u congestion window recovered without slow start using DSACK"), opt_number },
|
|
||||||
- { "TCPLossUndo", N_("%u congestion windows recovered without slow start after partial ack"), opt_number },
|
|
||||||
- { "TCPLostRetransmits", N_("%u retransmits lost"), opt_number },
|
|
||||||
- { "TCPRenoFailures", N_("%u timeouts after reno fast retransmit"), opt_number },
|
|
||||||
- { "TCPSackFailures", N_("%u timeouts after SACK recovery"), opt_number },
|
|
||||||
- { "TCPLossFailures", N_("%u timeouts in loss state"), opt_number },
|
|
||||||
- { "TCPFastRetrans", N_("%u fast retransmits"), opt_number },
|
|
||||||
- { "TCPForwardRetrans", N_("%u forward retransmits"), opt_number },
|
|
||||||
- { "TCPSlowStartRetrans", N_("%u retransmits in slow start"), opt_number },
|
|
||||||
- { "TCPTimeouts", N_("%u other TCP timeouts"), opt_number },
|
|
||||||
- { "TCPRenoRecoveryFailed", N_("%u reno fast retransmits failed"), opt_number },
|
|
||||||
- { "TCPSackRecoveryFail", N_("%u SACK retransmits failed"), opt_number },
|
|
||||||
- { "TCPSchedulerFailed", N_("%u times receiver scheduled too late for direct processing"), opt_number },
|
|
||||||
- { "TCPRcvCollapsed", N_("%u packets collapsed in receive queue due to low socket buffer"), opt_number },
|
|
||||||
- { "TCPDSACKOldSent", N_("%u DSACKs sent for old packets"), opt_number },
|
|
||||||
- { "TCPDSACKOfoSent", N_("%u DSACKs sent for out of order packets"), opt_number },
|
|
||||||
- { "TCPDSACKRecv", N_("%u DSACKs received"), opt_number },
|
|
||||||
- { "TCPDSACKOfoRecv", N_("%u DSACKs for out of order packets received"), opt_number },
|
|
||||||
- { "TCPAbortOnSyn", N_("%u connections reset due to unexpected SYN"), opt_number },
|
|
||||||
- { "TCPAbortOnData", N_("%u connections reset due to unexpected data"), opt_number },
|
|
||||||
- { "TCPAbortOnClose", N_("%u connections reset due to early user close"), opt_number },
|
|
||||||
- { "TCPAbortOnMemory", N_("%u connections aborted due to memory pressure"), opt_number },
|
|
||||||
- { "TCPAbortOnTimeout", N_("%u connections aborted due to timeout"), opt_number },
|
|
||||||
- { "TCPAbortOnLinger", N_("%u connections aborted after user close in linger timeout"), opt_number },
|
|
||||||
- { "TCPAbortFailed", N_("%u times unabled to send RST due to no memory"), opt_number },
|
|
||||||
- { "TCPMemoryPressures", N_("TCP ran low on memory %u times"), opt_number },
|
|
||||||
- { "TCPLoss", N_("%u TCP data loss events"), opt_number },
|
|
||||||
- { "TCPDSACKUndo", N_("%u congestion windows recovered without slow start by DSACK"),
|
|
||||||
+ { "TCPPureAcks", N_("%llu acknowledgments not containing data payload received"), opt_number },
|
|
||||||
+ { "TCPHPAcks", N_("%llu predicted acknowledgments"), opt_number },
|
|
||||||
+ { "TCPRenoRecovery", N_("%llu times recovered from packet loss due to fast retransmit"), opt_number },
|
|
||||||
+ { "TCPSackRecovery", N_("%llu times recovered from packet loss by selective acknowledgements"), opt_number },
|
|
||||||
+ { "TCPSACKReneging", N_("%llu bad SACK blocks received"), opt_number },
|
|
||||||
+ { "TCPFACKReorder", N_("Detected reordering %llu times using FACK"), opt_number },
|
|
||||||
+ { "TCPSACKReorder", N_("Detected reordering %llu times using SACK"), opt_number },
|
|
||||||
+ { "TCPTSReorder", N_("Detected reordering %llu times using time stamp"), opt_number },
|
|
||||||
+ { "TCPRenoReorder", N_("Detected reordering %llu times using reno fast retransmit"), opt_number },
|
|
||||||
+ { "TCPFullUndo", N_("%llu congestion windows fully recovered without slow start"), opt_number },
|
|
||||||
+ { "TCPPartialUndo", N_("%llu congestion windows partially recovered using Hoe heuristic"), opt_number },
|
|
||||||
+ { "TCPDSackUndo", N_("%llu congestion window recovered without slow start using DSACK"), opt_number },
|
|
||||||
+ { "TCPLossUndo", N_("%llu congestion windows recovered without slow start after partial ack"), opt_number },
|
|
||||||
+ { "TCPLostRetransmits", N_("%llu retransmits lost"), opt_number },
|
|
||||||
+ { "TCPRenoFailures", N_("%llu timeouts after reno fast retransmit"), opt_number },
|
|
||||||
+ { "TCPSackFailures", N_("%llu timeouts after SACK recovery"), opt_number },
|
|
||||||
+ { "TCPLossFailures", N_("%llu timeouts in loss state"), opt_number },
|
|
||||||
+ { "TCPFastRetrans", N_("%llu fast retransmits"), opt_number },
|
|
||||||
+ { "TCPForwardRetrans", N_("%llu forward retransmits"), opt_number },
|
|
||||||
+ { "TCPSlowStartRetrans", N_("%llu retransmits in slow start"), opt_number },
|
|
||||||
+ { "TCPTimeouts", N_("%llu other TCP timeouts"), opt_number },
|
|
||||||
+ { "TCPRenoRecoveryFailed", N_("%llu reno fast retransmits failed"), opt_number },
|
|
||||||
+ { "TCPSackRecoveryFail", N_("%llu SACK retransmits failed"), opt_number },
|
|
||||||
+ { "TCPSchedulerFailed", N_("%llu times receiver scheduled too late for direct processing"), opt_number },
|
|
||||||
+ { "TCPRcvCollapsed", N_("%llu packets collapsed in receive queue due to low socket buffer"), opt_number },
|
|
||||||
+ { "TCPDSACKOldSent", N_("%llu DSACKs sent for old packets"), opt_number },
|
|
||||||
+ { "TCPDSACKOfoSent", N_("%llu DSACKs sent for out of order packets"), opt_number },
|
|
||||||
+ { "TCPDSACKRecv", N_("%llu DSACKs received"), opt_number },
|
|
||||||
+ { "TCPDSACKOfoRecv", N_("%llu DSACKs for out of order packets received"), opt_number },
|
|
||||||
+ { "TCPAbortOnSyn", N_("%llu connections reset due to unexpected SYN"), opt_number },
|
|
||||||
+ { "TCPAbortOnData", N_("%llu connections reset due to unexpected data"), opt_number },
|
|
||||||
+ { "TCPAbortOnClose", N_("%llu connections reset due to early user close"), opt_number },
|
|
||||||
+ { "TCPAbortOnMemory", N_("%llu connections aborted due to memory pressure"), opt_number },
|
|
||||||
+ { "TCPAbortOnTimeout", N_("%llu connections aborted due to timeout"), opt_number },
|
|
||||||
+ { "TCPAbortOnLinger", N_("%llu connections aborted after user close in linger timeout"), opt_number },
|
|
||||||
+ { "TCPAbortFailed", N_("%llu times unabled to send RST due to no memory"), opt_number },
|
|
||||||
+ { "TCPMemoryPressures", N_("TCP ran low on memory %llu times"), opt_number },
|
|
||||||
+ { "TCPLoss", N_("%llu TCP data loss events"), opt_number },
|
|
||||||
+ { "TCPDSACKUndo", N_("%llu congestion windows recovered without slow start by DSACK"),
|
|
||||||
opt_number },
|
|
||||||
- { "TCPRenoRecoveryFail", N_("%u classic Reno fast retransmits failed"), opt_number },
|
|
||||||
+ { "TCPRenoRecoveryFail", N_("%llu classic Reno fast retransmits failed"), opt_number },
|
|
||||||
};
|
|
||||||
|
|
||||||
struct tabtab {
|
|
||||||
@@ -332,7 +332,7 @@ int cmpentries(const void *a, const void
|
|
||||||
return strcmp(((struct entry *) a)->title, ((struct entry *) b)->title);
|
|
||||||
}
|
|
||||||
|
|
||||||
-void printval(struct tabtab *tab, char *title, int val)
|
|
||||||
+void printval(struct tabtab *tab, char *title, unsigned long long val)
|
|
||||||
{
|
|
||||||
struct entry *ent = NULL, key;
|
|
||||||
int type;
|
|
||||||
@@ -344,7 +344,7 @@ void printval(struct tabtab *tab, char *
|
|
||||||
sizeof(struct entry), cmpentries);
|
|
||||||
if (!ent) { /* try our best */
|
|
||||||
if (val)
|
|
||||||
- printf("%*s%s: %d\n", states[state].indent, "", title, val);
|
|
||||||
+ printf("%*s%s: %llu\n", states[state].indent, "", title, val);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
type = ent->type;
|
|
||||||
@@ -454,7 +454,7 @@ int process_fd(FILE *f, int all, char *f
|
|
||||||
*p = '\0';
|
|
||||||
|
|
||||||
if (*sp != '\0' && *(tab->flag))
|
|
||||||
- printval(tab, sp, strtoul(np, &np, 10));
|
|
||||||
+ printval(tab, sp, strtoull(np, &np, 10));
|
|
||||||
|
|
||||||
sp = p + 1;
|
|
||||||
}
|
|
||||||
@@ -481,12 +481,12 @@ void cpytitle(char *original, char *new)
|
|
||||||
void process6_fd(FILE *f)
|
|
||||||
{
|
|
||||||
char buf1[1024],buf2[50],buf3[1024];
|
|
||||||
- unsigned long val;
|
|
||||||
+ unsigned long long val;
|
|
||||||
struct tabtab *tab = NULL;
|
|
||||||
int cpflg = 0;
|
|
||||||
|
|
||||||
while (fgets(buf1, sizeof buf1, f)) {
|
|
||||||
- sscanf(buf1, "%s %lu", buf2, &val);
|
|
||||||
+ sscanf(buf1, "%s %llu", buf2, &val);
|
|
||||||
if(!cpflg) {
|
|
||||||
cpytitle(buf2, buf3);
|
|
||||||
tab = newtable(snmp6tabs, buf3);
|
|
@ -1,14 +0,0 @@
|
|||||||
diff -up net-tools-1.60/lib/pathnames.h.x25 net-tools-1.60/lib/pathnames.h
|
|
||||||
--- net-tools-1.60/lib/pathnames.h.x25 2011-11-21 02:31:57.000000000 +0100
|
|
||||||
+++ net-tools-1.60/lib/pathnames.h 2011-12-05 17:00:49.917886688 +0100
|
|
||||||
@@ -49,8 +49,8 @@
|
|
||||||
#define _PATH_PROCNET_RARP "/proc/net/rarp"
|
|
||||||
#define _PATH_ETHERS "/etc/ethers"
|
|
||||||
#define _PATH_PROCNET_ROSE_ROUTE "/proc/net/rose_routes"
|
|
||||||
-#define _PATH_PROCNET_X25 "/proc/net/x25"
|
|
||||||
-#define _PATH_PROCNET_X25_ROUTE "/proc/net/x25_routes"
|
|
||||||
+#define _PATH_PROCNET_X25 "/proc/net/x25"
|
|
||||||
+#define _PATH_PROCNET_X25_ROUTE "/proc/net/x25/route"
|
|
||||||
#define _PATH_PROCNET_DEV_MCAST "/proc/net/dev_mcast"
|
|
||||||
#define _PATH_PROCNET_ATALK_ROUTE "/proc/net/atalk_route"
|
|
||||||
|
|
157
net-tools.spec
157
net-tools.spec
@ -1,9 +1,9 @@
|
|||||||
%global checkout 20111207git
|
%global checkout 20120105git
|
||||||
|
|
||||||
Summary: Basic networking tools
|
Summary: Basic networking tools
|
||||||
Name: net-tools
|
Name: net-tools
|
||||||
Version: 1.60
|
Version: 1.60
|
||||||
Release: 130.%{checkout}%{?dist}
|
Release: 131.%{checkout}%{?dist}
|
||||||
License: GPL+
|
License: GPL+
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
URL: http://net-tools.sourceforge.net
|
URL: http://net-tools.sourceforge.net
|
||||||
@ -20,102 +20,60 @@ Source7: iptunnel.8
|
|||||||
Source8: ipmaddr.8
|
Source8: ipmaddr.8
|
||||||
Source9: arp-ethers.service
|
Source9: arp-ethers.service
|
||||||
|
|
||||||
# translation headers - content type format
|
|
||||||
Patch1: net-tools-1.60-isofix.patch
|
|
||||||
|
|
||||||
# adds <delay> option that allows netstat to cycle printing through statistics every delay seconds.
|
# adds <delay> option that allows netstat to cycle printing through statistics every delay seconds.
|
||||||
Patch2: net-tools-1.60-cycle.patch
|
Patch1: net-tools-1.60-cycle.patch
|
||||||
|
|
||||||
# Fixed incorrect address display for ipx (#46434)
|
# Fixed incorrect address display for ipx (#46434)
|
||||||
Patch3: net-tools-1.60-ipx.patch
|
Patch2: net-tools-1.60-ipx.patch
|
||||||
|
|
||||||
# hostname lookup problems with route --inet6 (#84108)
|
# hostname lookup problems with route --inet6 (#84108)
|
||||||
Patch4: net-tools-1.60-inet6-lookup.patch
|
Patch3: net-tools-1.60-inet6-lookup.patch
|
||||||
|
|
||||||
# various man page fixes merged into one patch
|
# various man page fixes merged into one patch
|
||||||
Patch5: net-tools-1.60-man.patch
|
Patch4: net-tools-1.60-man.patch
|
||||||
|
|
||||||
# netstat: interface option now works as described in the man page (#61113, #115987)
|
# netstat: interface option now works as described in the man page (#61113, #115987)
|
||||||
Patch6: net-tools-1.60-interface.patch
|
Patch5: net-tools-1.60-interface.patch
|
||||||
|
|
||||||
# The return value of nameif was wrong (#129032) - patch from Fujitsu QA
|
|
||||||
Patch7: net-tools-1.60-nameif-return.patch
|
|
||||||
|
|
||||||
# netstat -s (statistics.c) now uses unsigned long long handle 64 bit integers (Bug #579854, Debian #561161)
|
|
||||||
Patch8: net-tools-1.60-statistics-doubleword.patch
|
|
||||||
|
|
||||||
# calculate broadcast only when netmask provided (#60509)
|
|
||||||
Patch9: net-tools-1.60-bcast.patch
|
|
||||||
|
|
||||||
# filter out duplicate tcp entries (#139407)
|
# filter out duplicate tcp entries (#139407)
|
||||||
Patch10: net-tools-1.60-duplicate-tcp.patch
|
Patch6: net-tools-1.60-duplicate-tcp.patch
|
||||||
|
|
||||||
# don't report statistics for virtual devices (#143981)
|
# don't report statistics for virtual devices (#143981)
|
||||||
Patch11: net-tools-1.60-statalias.patch
|
Patch7: net-tools-1.60-statalias.patch
|
||||||
|
|
||||||
# don't trim interface names to 5 characters in 'netstat -i' or 'ifconfig -s' (#152457)
|
# don't trim interface names to 5 characters in 'netstat -i' or 'ifconfig -s' (#152457)
|
||||||
Patch12: net-tools-1.60-trim_iface.patch
|
Patch8: net-tools-1.60-trim_iface.patch
|
||||||
|
|
||||||
# buffer overflow in arp (#164695)
|
|
||||||
Patch13: net-tools-1.60-arp_overflow.patch
|
|
||||||
|
|
||||||
# clear static buffers in interface.c by Ulrich Drepper (#176714)
|
# clear static buffers in interface.c by Ulrich Drepper (#176714)
|
||||||
Patch14: net-tools-1.60-interface_stack.patch
|
Patch9: net-tools-1.60-interface_stack.patch
|
||||||
|
|
||||||
# new option for nestat, -Z shows selinux context
|
# new option for nestat, -Z shows selinux context
|
||||||
Patch15: net-tools-1.60-selinux.patch
|
Patch10: net-tools-1.60-selinux.patch
|
||||||
|
|
||||||
# remove duplicate arp entries (#185604)
|
# remove duplicate arp entries (#185604)
|
||||||
Patch16: net-tools-1.60-fgets.patch
|
Patch11: net-tools-1.60-fgets.patch
|
||||||
|
|
||||||
# wrong definition of _PATH_PROCNET_X25_ROUTE (#188786)
|
|
||||||
Patch17: net-tools-1.60-x25-proc.patch
|
|
||||||
|
|
||||||
# statistics for SCTP
|
# statistics for SCTP
|
||||||
Patch18: net-tools-1.60-sctp-statistics.patch
|
Patch12: net-tools-1.60-sctp-statistics.patch
|
||||||
|
|
||||||
# ifconfig crash when interface name is too long (#190703)
|
# ifconfig crash when interface name is too long (#190703)
|
||||||
Patch19: net-tools-1.60-ifconfig-long-iface-crasher.patch
|
Patch13: net-tools-1.60-ifconfig-long-iface-crasher.patch
|
||||||
|
|
||||||
# nameif crash for 16char long interface names (#209120)
|
|
||||||
Patch20: net-tools-1.60-nameif_strncpy.patch
|
|
||||||
|
|
||||||
# fixed clearing flags in ifconfig (#450252)
|
|
||||||
Patch21: net-tools-1.60-clear-flag.patch
|
|
||||||
|
|
||||||
# fixed tcp timers info in netstat (#466845)
|
# fixed tcp timers info in netstat (#466845)
|
||||||
Patch22: net-tools-1.60-netstat-probe.patch
|
Patch14: net-tools-1.60-netstat-probe.patch
|
||||||
|
|
||||||
# prevent 'netstat -nr -A inet6' from smashing stack (#668047)
|
|
||||||
Patch23: net-tools-1.60-scanf-format.patch
|
|
||||||
|
|
||||||
# let the user know that ifconfig can correctly show only first 8 bytes of Infiniband hw address
|
# let the user know that ifconfig can correctly show only first 8 bytes of Infiniband hw address
|
||||||
Patch24: net-tools-1.60-ib-warning.patch
|
Patch15: net-tools-1.60-ib-warning.patch
|
||||||
|
|
||||||
# use <linux/mii.h> instead of "mii.h" and fix Bug #491358
|
# use <linux/mii.h> instead of "mii.h" and fix Bug #491358
|
||||||
Patch25: net-tools-1.60-mii-registers.patch
|
Patch16: net-tools-1.60-mii-registers.patch
|
||||||
|
|
||||||
# ifconfig interface:0 del <IP> will remove the Aliased IP on IA64 (#473211)
|
|
||||||
Patch26: net-tools-1.60-IA64.patch
|
|
||||||
|
|
||||||
# fix memory leak in netstat when run with -c option
|
|
||||||
Patch27: net-tools-1.60-netstat-leak.patch
|
|
||||||
|
|
||||||
# Don't rely on eth0 being default network device name.
|
# Don't rely on eth0 being default network device name.
|
||||||
# Since Fedora 15 network devices can have arbitrary names (#682367)
|
# Since Fedora 15 network devices can have arbitrary names (#682367)
|
||||||
Patch28: net-tools-1.60-arbitrary-device-names.patch
|
Patch17: net-tools-1.60-arbitrary-device-names.patch
|
||||||
|
|
||||||
# plipconfig man page and usage output fixes. (#694766)
|
|
||||||
Patch29: net-tools-1.60-plipconfig.patch
|
|
||||||
|
|
||||||
# netstat: remove part starting with colon in 'PID/Program name' column (#707427)
|
|
||||||
Patch30: net-tools-1.60-netstat-p-basename.patch
|
|
||||||
|
|
||||||
# Possible problems found by static analysis of code.
|
|
||||||
Patch31: net-tools-1.60-coverity.patch
|
|
||||||
|
|
||||||
# Update for 2 digit Linux version numbers (#718610)
|
# Update for 2 digit Linux version numbers (#718610)
|
||||||
Patch32: net-tools-1.60-2digit.patch
|
Patch18: net-tools-1.60-2digit.patch
|
||||||
|
|
||||||
BuildRequires: gettext, libselinux
|
BuildRequires: gettext, libselinux
|
||||||
BuildRequires: libselinux-devel
|
BuildRequires: libselinux-devel
|
||||||
@ -130,38 +88,24 @@ Most of them are obsolete. For replacement check iproute package.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -c
|
%setup -q -c
|
||||||
%patch1 -p1 -b .isofix
|
%patch1 -p1 -b .cycle
|
||||||
%patch2 -p1 -b .cycle
|
%patch2 -p1 -b .ipx
|
||||||
%patch3 -p1 -b .ipx
|
%patch3 -p1 -b .inet6-lookup
|
||||||
%patch4 -p1 -b .inet6-lookup
|
%patch4 -p1 -b .man
|
||||||
%patch5 -p1 -b .man
|
%patch5 -p1 -b .interface
|
||||||
%patch6 -p1 -b .interface
|
%patch6 -p1 -b .dup-tcp
|
||||||
%patch7 -p1 -b .return
|
%patch7 -p1 -b .statalias
|
||||||
%patch8 -p1 -b .doubleword
|
%patch8 -p1 -b .trim-iface
|
||||||
%patch9 -p1 -b .bcast
|
%patch9 -p1 -b .stack
|
||||||
%patch10 -p1 -b .dup-tcp
|
%patch10 -p1 -b .selinux
|
||||||
%patch11 -p1 -b .statalias
|
%patch11 -p1 -b .fgets
|
||||||
%patch12 -p1 -b .trim-iface
|
%patch12 -p1 -b .sctp
|
||||||
%patch13 -p1 -b .overflow
|
%patch13 -p1 -b .long_iface
|
||||||
%patch14 -p1 -b .stack
|
%patch14 -p1 -b .probe
|
||||||
%patch15 -p1 -b .selinux
|
%patch15 -p1 -b .ib-warning
|
||||||
%patch16 -p1 -b .fgets
|
%patch16 -p1 -b .mii-registers
|
||||||
%patch17 -p1 -b .x25
|
%patch17 -p1 -b .arbitrary-device-names
|
||||||
%patch18 -p1 -b .sctp
|
%patch18 -p1 -b .2digit
|
||||||
%patch19 -p1 -b .long_iface
|
|
||||||
%patch20 -p1 -b .strncpy
|
|
||||||
%patch21 -p1 -b .clear-flag
|
|
||||||
%patch22 -p1 -b .probe
|
|
||||||
%patch23 -p1 -b .scanf-format
|
|
||||||
%patch24 -p1 -b .ib-warning
|
|
||||||
%patch25 -p1 -b .mii-registers
|
|
||||||
%patch26 -p1 -b .IA64
|
|
||||||
%patch27 -p1 -b .netstat-leak
|
|
||||||
%patch28 -p1 -b .arbitrary-device-names
|
|
||||||
%patch29 -p1 -b .plipconfig
|
|
||||||
%patch30 -p1 -b .p-basename
|
|
||||||
%patch31 -p1 -b .coverity
|
|
||||||
%patch32 -p1 -b .2digit
|
|
||||||
|
|
||||||
cp %SOURCE1 ./config.h
|
cp %SOURCE1 ./config.h
|
||||||
cp %SOURCE2 ./config.make
|
cp %SOURCE2 ./config.make
|
||||||
@ -219,6 +163,11 @@ mv man/pt_BR man/pt
|
|||||||
|
|
||||||
make BASEDIR=%{buildroot} mandir=%{_mandir} install
|
make BASEDIR=%{buildroot} mandir=%{_mandir} install
|
||||||
|
|
||||||
|
# ifconfig and route are installed into /bin by default
|
||||||
|
# mv them back to /sbin for now as I (jpopelka) don't think customers would be happy
|
||||||
|
mv %{buildroot}/bin/ifconfig %{buildroot}/sbin
|
||||||
|
mv %{buildroot}/bin/route %{buildroot}/sbin
|
||||||
|
|
||||||
install -m 755 ether-wake %{buildroot}/sbin
|
install -m 755 ether-wake %{buildroot}/sbin
|
||||||
install -m 755 mii-diag %{buildroot}/sbin
|
install -m 755 mii-diag %{buildroot}/sbin
|
||||||
|
|
||||||
@ -228,7 +177,7 @@ rm %{buildroot}%{_mandir}/de/man8/rarp.8*
|
|||||||
rm %{buildroot}%{_mandir}/fr/man8/rarp.8*
|
rm %{buildroot}%{_mandir}/fr/man8/rarp.8*
|
||||||
rm %{buildroot}%{_mandir}/pt/man8/rarp.8*
|
rm %{buildroot}%{_mandir}/pt/man8/rarp.8*
|
||||||
|
|
||||||
#remove hostname (has its own package)
|
# remove hostname (has its own package)
|
||||||
rm %{buildroot}/bin/dnsdomainname
|
rm %{buildroot}/bin/dnsdomainname
|
||||||
rm %{buildroot}/bin/domainname
|
rm %{buildroot}/bin/domainname
|
||||||
rm %{buildroot}/bin/hostname
|
rm %{buildroot}/bin/hostname
|
||||||
@ -255,7 +204,17 @@ fi
|
|||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
%doc COPYING
|
%doc COPYING
|
||||||
/bin/netstat
|
/bin/netstat
|
||||||
/sbin/*
|
/sbin/ifconfig
|
||||||
|
/sbin/route
|
||||||
|
/sbin/arp
|
||||||
|
/sbin/ether-wake
|
||||||
|
/sbin/ipmaddr
|
||||||
|
/sbin/iptunnel
|
||||||
|
/sbin/mii-diag
|
||||||
|
/sbin/mii-tool
|
||||||
|
/sbin/nameif
|
||||||
|
/sbin/plipconfig
|
||||||
|
/sbin/slattach
|
||||||
%{_mandir}/man[58]/*
|
%{_mandir}/man[58]/*
|
||||||
%lang(de) %{_mandir}/de/man[58]/*
|
%lang(de) %{_mandir}/de/man[58]/*
|
||||||
%lang(fr) %{_mandir}/fr/man[58]/*
|
%lang(fr) %{_mandir}/fr/man[58]/*
|
||||||
@ -263,6 +222,12 @@ fi
|
|||||||
%attr(0644,root,root) %{_unitdir}/arp-ethers.service
|
%attr(0644,root,root) %{_unitdir}/arp-ethers.service
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Jan 05 2012 Jiri Popelka <jpopelka@redhat.com> - 1.60-131.20120105git
|
||||||
|
- next 11 patches merged upstream
|
||||||
|
- removed bcast.patch (seems to be fixed upstream)
|
||||||
|
- removed netstat-p-basename.patch (upstream is not happy with it)
|
||||||
|
- netstat-leak.patch merged into duplicate-tcp.patch
|
||||||
|
|
||||||
* Wed Dec 07 2011 Jiri Popelka <jpopelka@redhat.com> - 1.60-130.20111207git
|
* Wed Dec 07 2011 Jiri Popelka <jpopelka@redhat.com> - 1.60-130.20111207git
|
||||||
- removed virtualname.patch
|
- removed virtualname.patch
|
||||||
- added back isofix.patch
|
- added back isofix.patch
|
||||||
|
Loading…
Reference in New Issue
Block a user