Sync from SUSE:SLFO:Main net-tools revision ce25d263459558ed1d324cfd38995026

This commit is contained in:
Adrian Schröter 2024-05-03 16:58:04 +02:00
commit c3499f022a
10 changed files with 1856 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

View File

@ -0,0 +1,585 @@
From 259d1c453c7dc3b0291f3b4755567a94b778480e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= <tchvatal@suse.com>
Date: Sat, 17 Jun 2017 22:06:03 +0200
Subject: [PATCH 1/7] Add ether-wake binary
---
Makefile | 6 +-
ether-wake.c | 445 +++++++++++++++++++++++++++++++++++++++++++++++++
man/en_US/ether-wake.8 | 81 +++++++++
3 files changed, 531 insertions(+), 1 deletion(-)
create mode 100644 ether-wake.c
create mode 100644 man/en_US/ether-wake.8
diff --git a/Makefile b/Makefile
index bf67bc6..cb171a0 100644
--- a/Makefile
+++ b/Makefile
@@ -33,7 +33,7 @@ SBINDIR ?= /sbin
NET_LIB_PATH = lib
NET_LIB_NAME = net-tools
-PROGS := ifconfig netstat route nameif
+PROGS := ifconfig netstat route nameif ether-wake
-include config.make
ifeq ($(HAVE_ARP_TOOLS),1)
@@ -205,6 +205,9 @@ ipmaddr: $(NET_LIB) ipmaddr.o
mii-tool: $(NET_LIB) mii-tool.o
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ mii-tool.o $(NLIB) $(LDLIBS)
+ether-wake: $(NET_LIB) ether-wake.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o ether-wake ether-wake.o $(NLIB) $(LDLIBS)
+
installbin:
@echo
@echo "######################################################"
@@ -217,6 +220,7 @@ installbin:
install -m 0755 nameif ${BASEDIR}${SBINDIR}
install -m 0755 netstat ${BASEDIR}${BINDIR}
install -m 0755 route ${BASEDIR}${BINDIR}
+ install -m 0755 ether-wake ${BASEDIR}${SBINDIR}
ifeq ($(HAVE_ARP_TOOLS),1)
install -m 0755 arp ${BASEDIR}${SBINDIR}
install -m 0755 rarp ${BASEDIR}${SBINDIR}
diff --git a/ether-wake.c b/ether-wake.c
new file mode 100644
index 0000000..cfceb44
--- /dev/null
+++ b/ether-wake.c
@@ -0,0 +1,445 @@
+/* ether-wake.c: Send a magic packet to wake up sleeping machines. */
+
+static char version_msg[] =
+"ether-wake.c: v1.09 11/12/2003 Donald Becker, http://www.scyld.com/";
+static char brief_usage_msg[] =
+"usage: ether-wake -i <ifname> [-p aa:bb:cc:dd[:ee:ff]] 00:11:22:33:44:55\n"
+" Use '-u' to see the complete set of options.\n";
+static char usage_msg[] =
+"usage: ether-wake -i <ifname> [-p aa:bb:cc:dd[:ee:ff]] 00:11:22:33:44:55\n"
+"\n"
+" This program generates and transmits a Wake-On-LAN (WOL)\n"
+" \"Magic Packet\", used for restarting machines that have been\n"
+" soft-powered-down (ACPI D3-warm state).\n"
+" It currently generates the standard AMD Magic Packet format, with\n"
+" an optional password appended.\n"
+"\n"
+" The single required parameter is the Ethernet MAC (station) address\n"
+" of the machine to wake or a host ID with known NSS 'ethers' entry.\n"
+" The MAC address may be found with the 'arp' program while the target\n"
+" machine is awake.\n"
+"\n"
+" Options:\n"
+" -b Send wake-up packet to the broadcast address.\n"
+" -D Increase the debug level.\n"
+" -i ifname Use interface ifname instead of sending a wake packet to all interfaces.\n"
+" -p <pw> Append the four or six byte password PW to the packet.\n"
+" A password is only required for a few adapter types.\n"
+" The password may be specified in ethernet hex format\n"
+" or dotted decimal (Internet address)\n"
+" -p 00:22:44:66:88:aa\n"
+" -p 192.168.1.1\n";
+
+/*
+ This program generates and transmits a Wake-On-LAN (WOL) "Magic Packet",
+ used for restarting machines that have been soft-powered-down
+ (ACPI D3-warm state). It currently generates the standard AMD Magic Packet
+ format, with an optional password appended.
+
+ This software may be used and distributed according to the terms
+ of the GNU Public License, incorporated herein by reference.
+ Contact the author for use under other terms.
+
+ This source file was originally part of the network tricks package, and
+ is now distributed to support the Scyld Beowulf system.
+ Copyright 1999-2003 Donald Becker and Scyld Computing Corporation.
+
+ The author may be reached as becker@scyld, or C/O
+ Scyld Computing Corporation
+ 914 Bay Ridge Road, Suite 220
+ Annapolis MD 21403
+
+ Notes:
+ On some systems dropping root capability allows the process to be
+ dumped, traced or debugged.
+ If someone traces this program, they get control of a raw socket.
+ Linux handles this safely, but beware when porting this program.
+
+ An alternative to needing 'root' is using a UDP broadcast socket, however
+ doing so only works with adapters configured for unicast+broadcast Rx
+ filter. That configuration consumes more power.
+*/
+
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <errno.h>
+#include <ctype.h>
+#include <string.h>
+
+#if 0 /* Only exists on some versions. */
+#include <ioctls.h>
+#endif
+
+#include <sys/socket.h>
+
+#include <sys/types.h>
+#include <sys/ioctl.h>
+#include <linux/if.h>
+
+#include <features.h>
+#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 1
+#include <netpacket/packet.h>
+#include <net/ethernet.h>
+#else
+#include <asm/types.h>
+#include <linux/if_packet.h>
+#include <linux/if_ether.h>
+#endif
+#include <netdb.h>
+#include <netinet/ether.h>
+
+#include "interface.h"
+#include "sockets.h"
+
+/* Grrr, no consistency between include versions.
+ Enable this if setsockopt() isn't declared with your library. */
+#if 0
+extern int setsockopt __P ((int __fd, int __level, int __optname,
+ __ptr_t __optval, int __optlen));
+#else /* New, correct head files. */
+#include <sys/socket.h>
+#endif
+
+u_char outpack[1000];
+int outpack_sz = 0;
+int debug = 0;
+u_char wol_passwd[6];
+int wol_passwd_sz = 0;
+
+static int opt_no_src_addr = 0, opt_broadcast = 0;
+
+static int get_dest_addr(const char *arg, struct ether_addr *eaddr);
+static int get_fill(unsigned char *pkt, struct ether_addr *eaddr);
+static int get_wol_pw(const char *optarg);
+
+typedef struct {
+ int s;
+ int verbose;
+ int pktsize;
+} if_info;
+
+static int send_wol_packet(char *ifname, int s, int verbose, int pktsize);
+
+static int do_wake(struct interface *ife, void *cookie) {
+ if_info *info = (if_info *)cookie;
+ send_wol_packet(ife->name, info->s, info->verbose, info->pktsize);
+ return 0;
+}
+
+int main(int argc, char *argv[])
+{
+ char *ifname = NULL;
+ int s; /* Raw socket */
+ int errflag = 0, verbose = 0, do_version = 0;
+ int perm_failure = 0;
+ int c, pktsize;
+ struct ether_addr eaddr;
+ if_info info;
+
+ while ((c = getopt(argc, argv, "bDi:p:uvV")) != -1)
+ switch (c) {
+ case 'b': opt_broadcast++; break;
+ case 'D': debug++; break;
+ case 'i': ifname = optarg; break;
+ case 'p': get_wol_pw(optarg); break;
+ case 'u': printf("%s",usage_msg); return 0;
+ case 'v': verbose++; break;
+ case 'V': do_version++; break;
+ case '?':
+ errflag++;
+ }
+ if (verbose || do_version)
+ printf("%s\n", version_msg);
+ if (errflag) {
+ fprintf(stderr,"%s", brief_usage_msg);
+ return 3;
+ }
+
+ if (ifname == NULL) {
+ fprintf(stderr, "Specify -i <interface>.\n");
+ return 3;
+ }
+
+ if (optind == argc) {
+ fprintf(stderr, "Specify the Ethernet address as 00:11:22:33:44:55.\n");
+ return 3;
+ }
+
+ /* Note: PF_INET, SOCK_DGRAM, IPPROTO_UDP would allow SIOCGIFHWADDR to
+ work as non-root, but we need SOCK_PACKET to specify the Ethernet
+ destination address. */
+#if defined(PF_PACKET)
+ s = socket(PF_PACKET, SOCK_RAW, 0);
+#else
+ s = socket(AF_INET, SOCK_PACKET, SOCK_PACKET);
+#endif
+ if (s < 0) {
+ if (errno == EPERM)
+ fprintf(stderr, "ether-wake: This program must be run as root.\n");
+ else
+ perror("ether-wake: socket");
+ perm_failure++;
+ }
+ /* Don't revert if debugging allows a normal user to get the raw socket. */
+ setuid(getuid());
+
+ /* We look up the station address before reporting failure so that
+ errors may be reported even when run as a normal user.
+ */
+ if (get_dest_addr(argv[optind], &eaddr) != 0)
+ return 3;
+ if (perm_failure && ! debug)
+ return 2;
+
+ pktsize = get_fill(outpack, &eaddr);
+
+ if (ifname == NULL) {
+ info.s = s;
+ info.verbose = verbose;
+ info.pktsize = pktsize;
+
+ /* Create a channel to the NET kernel. */
+ if ((sockets_open(0)) < 0) {
+ perror("socket");
+ exit(1);
+ }
+
+ return for_all_interfaces(do_wake, &info);
+ }
+
+ return send_wol_packet(ifname, s, verbose, pktsize);
+}
+
+/* Send a Wake-On-LAN (WOL) "Magic Packet" to Interface IFNAME using
+ Socket S with a packet size PKTSIZE. VERBOSE implies
+ verbosity. */
+
+static int send_wol_packet(char *ifname, int s, int verbose, int pktsize)
+{
+ int i;
+ int one = 1; /* True, for socket options. */
+#if defined(PF_PACKET)
+ struct sockaddr_ll whereto;
+#else
+ struct sockaddr whereto; /* who to wake up */
+#endif
+
+ /* Fill in the source address, if possible.
+ The code to retrieve the local station address is Linux specific. */
+ if (! opt_no_src_addr) {
+ struct ifreq if_hwaddr;
+ const char *hwaddr = if_hwaddr.ifr_hwaddr.sa_data;
+
+ strncpy(if_hwaddr.ifr_name, ifname, IFNAMSIZ);
+ if_hwaddr.ifr_name[IFNAMSIZ-1] = '\0';
+ if (ioctl(s, SIOCGIFHWADDR, &if_hwaddr) < 0) {
+ fprintf(stderr, "SIOCGIFHWADDR on %s failed: %s\n", ifname,
+ strerror(errno));
+ /* Magic packets still work if our source address is bogus, but
+ we fail just to be anal. */
+ return 1;
+ }
+ memcpy(outpack+6, if_hwaddr.ifr_hwaddr.sa_data, 6);
+
+ if (verbose) {
+ printf("The hardware address (SIOCGIFHWADDR) of %s is type %d "
+ "%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x.\n", ifname,
+ if_hwaddr.ifr_hwaddr.sa_family, hwaddr[0], hwaddr[1],
+ hwaddr[2], hwaddr[3], hwaddr[4], hwaddr[5]);
+ }
+ }
+
+ if (wol_passwd_sz > 0) {
+ memcpy(outpack+pktsize, wol_passwd, wol_passwd_sz);
+ pktsize += wol_passwd_sz;
+ }
+
+ if (verbose > 1) {
+ printf("The final packet is: ");
+ for (i = 0; i < pktsize; i++)
+ printf(" %2.2x", outpack[i]);
+ printf(".\n");
+ }
+
+ /* This is necessary for broadcasts to work */
+ if (setsockopt(s, SOL_SOCKET, SO_BROADCAST, (char *)&one, sizeof(one)) < 0)
+ perror("setsockopt: SO_BROADCAST");
+
+#if defined(PF_PACKET)
+ {
+ struct ifreq ifr;
+ strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+ ifr.ifr_name[IFNAMSIZ-1] = '\0';
+ if (ioctl(s, SIOCGIFINDEX, &ifr) == -1) {
+ fprintf(stderr, "SIOCGIFINDEX on %s failed: %s\n", ifname,
+ strerror(errno));
+ return 1;
+ }
+ memset(&whereto, 0, sizeof(whereto));
+ whereto.sll_family = AF_PACKET;
+ whereto.sll_ifindex = ifr.ifr_ifindex;
+ /* The manual page incorrectly claims the address must be filled.
+ We do so because the code may change to match the docs. */
+ whereto.sll_halen = ETH_ALEN;
+ memcpy(whereto.sll_addr, outpack, ETH_ALEN);
+
+ }
+#else
+ whereto.sa_family = 0;
+ strcpy(whereto.sa_data, ifname);
+#endif
+
+ char senderrmsg[IFNAMSIZ+16] = "'";
+ strcat(senderrmsg, ifname);
+ strcat(senderrmsg, "', sendto");
+ if ((i = sendto(s, outpack, pktsize, 0, (struct sockaddr *)&whereto,
+ sizeof(whereto))) < 0)
+ perror(senderrmsg);
+ else if (debug)
+ printf("'%s', Sendto worked ! %d.\n", ifname, i);
+
+#ifdef USE_SEND
+ if (bind(s, (struct sockaddr *)&whereto, sizeof(whereto)) < 0)
+ perror("bind");
+ else if (send(s, outpack, 100, 0) < 0)
+ perror("send");
+#endif
+#ifdef USE_SENDMSG
+ {
+ struct msghdr msghdr = { 0,};
+ struct iovec iovector[1];
+ msghdr.msg_name = &whereto;
+ msghdr.msg_namelen = sizeof(whereto);
+ msghdr.msg_iov = iovector;
+ msghdr.msg_iovlen = 1;
+ iovector[0].iov_base = outpack;
+ iovector[0].iov_len = pktsize;
+ if ((i = sendmsg(s, &msghdr, 0)) < 0)
+ perror("sendmsg");
+ else if (debug)
+ printf("sendmsg worked, %d (%d).\n", i, errno);
+ }
+#endif
+
+ return 0;
+}
+
+/* Convert the host ID string to a MAC address.
+ The string may be a
+ Host name
+ IP address string
+ MAC address string
+*/
+
+static int get_dest_addr(const char *hostid, struct ether_addr *eaddr)
+{
+ struct ether_addr *eap;
+
+ eap = ether_aton(hostid);
+ if (eap) {
+ *eaddr = *eap;
+ if (debug)
+ fprintf(stderr, "The target station address is %s.\n",
+ ether_ntoa(eaddr));
+ } else if (ether_hostton(hostid, eaddr) == 0) {
+ if (debug)
+ fprintf(stderr, "Station address for hostname %s is %s.\n",
+ hostid, ether_ntoa(eaddr));
+ } else {
+ (void)fprintf(stderr,
+ "ether-wake: The Magic Packet host address must be "
+ "specified as\n"
+ " - a station address, 00:11:22:33:44:55, or\n"
+ " - a hostname with a known 'ethers' entry.\n");
+ return -1;
+ }
+ return 0;
+}
+
+
+static int get_fill(unsigned char *pkt, struct ether_addr *eaddr)
+{
+ int offset, i;
+ unsigned char *station_addr = eaddr->ether_addr_octet;
+
+ if (opt_broadcast)
+ memset(pkt+0, 0xff, 6);
+ else
+ memcpy(pkt, station_addr, 6);
+ memcpy(pkt+6, station_addr, 6);
+ pkt[12] = 0x08; /* Or 0x0806 for ARP, 0x8035 for RARP */
+ pkt[13] = 0x42;
+ offset = 14;
+
+ memset(pkt+offset, 0xff, 6);
+ offset += 6;
+
+ for (i = 0; i < 16; i++) {
+ memcpy(pkt+offset, station_addr, 6);
+ offset += 6;
+ }
+ if (debug) {
+ fprintf(stderr, "Packet is ");
+ for (i = 0; i < offset; i++)
+ fprintf(stderr, " %2.2x", pkt[i]);
+ fprintf(stderr, ".\n");
+ }
+ return offset;
+}
+
+static int get_wol_pw(const char *optarg)
+{
+ int passwd[6];
+ int byte_cnt;
+ int i;
+
+ byte_cnt = sscanf(optarg, "%2x:%2x:%2x:%2x:%2x:%2x",
+ &passwd[0], &passwd[1], &passwd[2],
+ &passwd[3], &passwd[4], &passwd[5]);
+ if (byte_cnt < 4)
+ byte_cnt = sscanf(optarg, "%d.%d.%d.%d",
+ &passwd[0], &passwd[1], &passwd[2], &passwd[3]);
+ if (byte_cnt < 4) {
+ fprintf(stderr, "Unable to read the Wake-On-LAN password.\n");
+ return 0;
+ }
+ printf(" The Magic packet password is %2.2x %2.2x %2.2x %2.2x (%d).\n",
+ passwd[0], passwd[1], passwd[2], passwd[3], byte_cnt);
+ for (i = 0; i < byte_cnt; i++)
+ wol_passwd[i] = passwd[i];
+ return wol_passwd_sz = byte_cnt;
+}
+
+#if 0
+{
+ to = (struct sockaddr_in *)&whereto;
+ to->sin_family = AF_INET;
+ if (inet_aton(target, &to->sin_addr)) {
+ hostname = target;
+ }
+ memset (&sa, 0, sizeof sa);
+ sa.sa_family = AF_INET;
+ strncpy (sa.sa_data, interface, sizeof sa.sa_data);
+ sendto (sock, buf, bufix + len, 0, &sa, sizeof sa);
+ strncpy (sa.sa_data, interface, sizeof sa.sa_data);
+#if 1
+ sendto (sock, buf, bufix + len, 0, &sa, sizeof sa);
+#else
+ bind (sock, &sa, sizeof sa);
+ connect();
+ send (sock, buf, bufix + len, 0);
+#endif
+}
+#endif
+
+
+/*
+ * Local variables:
+ * compile-command: "gcc -O -Wall -o ether-wake ether-wake.c"
+ * c-indent-level: 4
+ * c-basic-offset: 4
+ * c-indent-level: 4
+ * tab-width: 4
+ * End:
+ */
diff --git a/man/en_US/ether-wake.8 b/man/en_US/ether-wake.8
new file mode 100644
index 0000000..d0569c2
--- /dev/null
+++ b/man/en_US/ether-wake.8
@@ -0,0 +1,81 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH ETHER-WAKE 8 "March 31, 2003" "Scyld"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+ether-wake \- A tool to send a Wake-On-LAN "Magic Packet"
+.SH SYNOPSIS
+.B ether-wake
+.RI [ options ] " Host-ID"
+.SH DESCRIPTION
+This manual page documents the usage of the
+.B ether-wake
+command.
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invoke bold face and italics,
+.\" respectively.
+\fBether-wake\fP is a program that generates and transmits a Wake-On-LAN
+(WOL) "Magic Packet", used for restarting machines that have been
+soft-powered-down (ACPI D3-warm state). It generates the standard
+AMD Magic Packet format, optionally with a password included. The
+single required parameter is a station (MAC) address or a host ID that can
+be translated to a MAC address by an
+.BR ethers (5)
+database specified in
+.BR nsswitch.conf (5)
+.
+.SH OPTIONS
+\fBether-wake\fP needs a single dash (´-´) in front of options.
+A summary of options is included below.
+.TP
+.B \-b
+Send the wake-up packet to the broadcast address.
+.TP
+.B \-D
+Increase the Debug Level.
+.TP
+.B \-i ifname
+Use interface ifname instead of sending a wake packet to all interfaces.
+.TP
+.B \-p passwd
+Append a four or six byte password to the packet. Only a few adapters
+need or support this. A six byte password may be specified in Ethernet hex
+format (00:22:44:66:88:aa) or four byte dotted decimal (192.168.1.1) format.
+A four byte password must use the dotted decimal format.
+
+.TP
+.B \-V
+Show the program version information.
+
+.SH EXIT STATUS
+This program returns 0 on success.
+A permission failures (e.g. run as a non-root user) results in an exit
+status of 2. Unrecognized or invalid parameters result in an exit
+status of 3. Failure to retrieve network interface information or send
+a packet will result in an exit status of 1.
+
+.SH SEE ALSO
+.BR arp (8).
+.br
+.SH SECURITY
+On some non-Linux systems dropping root capability allows the process to be
+dumped, traced or debugged.
+If someone traces this program, they get control of a raw socket.
+Linux handles this safely, but beware when porting this program.
+.SH AUTHOR
+The ether-wake program was written by Donald Becker at Scyld Computing
+Corporation for use with the Scyld(\*(Tm) Beowulf System.
--
2.13.1

View File

@ -0,0 +1,33 @@
From 5b612570220e66ea3197b88b5f9d81e064f9e873 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= <tchvatal@suse.com>
Date: Sat, 17 Jun 2017 22:15:06 +0200
Subject: [PATCH 2/7] Do not warn about interface socket not binded
---
lib/interface.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/lib/interface.c b/lib/interface.c
index e8ab2b8..94e554b 100644
--- a/lib/interface.c
+++ b/lib/interface.c
@@ -173,12 +173,10 @@ static int if_readconf(void)
(as of 2.1.128) */
skfd = get_socket_for_af(AF_INET);
if (skfd < 0) {
- fprintf(stderr, _("warning: no inet socket available: %s\n"),
- strerror(errno));
- /* Try to soldier on with whatever socket we can get hold of. */
- skfd = sockets_open(0);
- if (skfd < 0)
- return -1;
+ /* Try to soldier on with whatever socket we can get hold of. */
+ skfd = sockets_open(0);
+ if (skfd < 0)
+ return -1;
}
ifc.ifc_buf = NULL;
--
2.13.1

View File

@ -0,0 +1,28 @@
From 70a4077962be2dc3ea7dc20a3687e9f1c7458ade Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= <tchvatal@suse.com>
Date: Sat, 17 Jun 2017 22:26:14 +0200
Subject: [PATCH 4/7] By default do not fopen anything in netrom_gr
This is SUSE specific patch basically disabling this functionality.
---
lib/netrom_gr.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/netrom_gr.c b/lib/netrom_gr.c
index ec82fe8..eecf148 100644
--- a/lib/netrom_gr.c
+++ b/lib/netrom_gr.c
@@ -32,8 +32,8 @@
int NETROM_rprint(int options)
{
- FILE *f1 = fopen(_PATH_PROCNET_NR_NODES, "r");
- FILE *f2 = fopen(_PATH_PROCNET_NR_NEIGH, "r");
+ FILE *f1 = NULL;
+ FILE *f2 = NULL;
char buffer[256];
int qual, n, w;
/*int ext = options & FLAG_EXT;
--
2.13.1

View File

@ -0,0 +1,85 @@
From 3e27ced0c24be18dc443f7eb1421c7c3c1755cfe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= <tchvatal@suse.com>
Date: Sun, 18 Jun 2017 08:54:17 +0200
Subject: [PATCH 6/7] Allow interface stacking
---
lib/interface.c | 25 +++++++++++++++----------
1 file changed, 15 insertions(+), 10 deletions(-)
diff --git a/lib/interface.c b/lib/interface.c
index 7e326a0..42d86fb 100644
--- a/lib/interface.c
+++ b/lib/interface.c
@@ -208,10 +208,11 @@ out:
return err;
}
-static const char *get_name(char *name, const char *p)
+static const char *get_name(char **namep, const char *p)
{
while (isspace(*p))
p++;
+ char *name = *namep = p;
while (*p) {
if (isspace(*p))
break;
@@ -314,9 +315,10 @@ static int get_dev_fields(const char *bp, struct interface *ife)
static int if_readlist_proc(const char *target)
{
FILE *fh;
- char buf[512];
struct interface *ife;
int err;
+ char *line = NULL;
+ size_t linelen = 0;
fh = fopen(_PATH_PROCNET_DEV, "r");
if (!fh) {
@@ -324,10 +326,11 @@ static int if_readlist_proc(const char *target)
_PATH_PROCNET_DEV, strerror(errno));
return -2;
}
- if (fgets(buf, sizeof buf, fh))
- /* eat line */;
- if (fgets(buf, sizeof buf, fh))
- /* eat line */;
+ if (getline(&line, &linelen, fh) == -1 /* eat line */
+ || getline(&line, &linelen, fh) == -1) {
+ err = -1;
+ goto out;
+ }
#if 0 /* pretty, but can't cope with missing fields */
fmt = proc_gen_fmt(_PATH_PROCNET_DEV, 1, fh,
@@ -352,14 +355,14 @@ static int if_readlist_proc(const char *target)
if (!fmt)
return -1;
#else
- procnetdev_vsn = procnetdev_version(buf);
+ procnetdev_vsn = procnetdev_version(line);
#endif
err = 0;
- while (fgets(buf, sizeof buf, fh)) {
+ while (getline(&line, &linelen, fh) != -1) {
const char *s;
- char name[IFNAMSIZ];
- s = get_name(name, buf);
+ char *name;
+ s = get_name(&name, line);
ife = if_cache_add(name);
get_dev_fields(s, ife);
ife->statistics_valid = 1;
@@ -374,6 +377,8 @@ static int if_readlist_proc(const char *target)
#if 0
free(fmt);
#endif
+ out:
+ free(line);
fclose(fh);
return err;
}
--
2.13.1

View File

@ -0,0 +1,44 @@
From 0e30aa568f29e1626177458cfe1d33b25c6da7a6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= <tchvatal@suse.com>
Date: Sun, 18 Jun 2017 09:12:33 +0200
Subject: [PATCH 7/7] Introduce T notrim option in netstat
This is the same as wide option but unfortunately SUSE carried
for last 10 years patch using the -T option so we need not to regress
in script usage.
---
netstat.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/netstat.c b/netstat.c
index fe25e92..401ac3b 100644
--- a/netstat.c
+++ b/netstat.c
@@ -2043,6 +2043,7 @@ int main
{"fib", 0, 0, 'F'},
{"groups", 0, 0, 'g'},
{"context", 0, 0, 'Z'},
+ {"notrim", 0, 0, 'T'},
{NULL, 0, 0, 0}
};
@@ -2054,7 +2055,7 @@ int main
getroute_init(); /* Set up AF routing support */
afname[0] = '\0';
- while ((i = getopt_long(argc, argv, "A:CFMacdeghilnNoprsStuUvVWw2fx64?Z", longopts, &lop)) != EOF)
+ while ((i = getopt_long(argc, argv, "A:CFMacdeghilnNoprsStuUvVWw2fx64?ZT", longopts, &lop)) != EOF)
switch (i) {
case -1:
break;
@@ -2098,6 +2099,7 @@ int main
case 'i':
flag_int++;
break;
+ case 'T':
case 'W':
flag_wide++;
break;
--
2.13.1

BIN
net-tools-2.10.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

43
net-tools-configure.patch Normal file
View File

@ -0,0 +1,43 @@
Index: net-tools-2.10/config.in
===================================================================
--- net-tools-2.10.orig/config.in
+++ net-tools-2.10/config.in
@@ -42,7 +42,7 @@
* course, welcome. Answer `n' here if you have no support for
* internationalization on your system.
*
-bool 'Does your system support GNU gettext?' I18N n
+bool 'Does your system support GNU gettext?' I18N y
*
*
* Protocol Families.
@@ -91,10 +91,10 @@ bool 'InfiniBand hardware support' HAVE_
*
bool 'IP Masquerading support' HAVE_FW_MASQUERADE y
bool 'Build arp and rarp' HAVE_ARP_TOOLS y
-bool 'Build hostname' HAVE_HOSTNAME_TOOLS y
-bool 'Install hostname NIS/YP symlinks' HAVE_HOSTNAME_SYMLINKS y
+bool 'Build hostname' HAVE_HOSTNAME_TOOLS n
+bool 'Install hostname NIS/YP symlinks' HAVE_HOSTNAME_SYMLINKS n
bool 'Build iptunnel and ipmaddr' HAVE_IP_TOOLS y
-bool 'Build mii-tool' HAVE_MII y
+bool 'Build mii-tool' HAVE_MII n
bool 'Build plipconfig' HAVE_PLIP_TOOLS y
bool 'Build slattach' HAVE_SERIAL_TOOLS y
bool 'SELinux support' HAVE_SELINUX n
Index: net-tools-2.10/configure.sh
===================================================================
--- net-tools-2.10.orig/configure.sh
+++ net-tools-2.10/configure.sh
@@ -66,9 +66,8 @@ config_fd_redir='<&7'
#
function readln()
{
- echo -n "$1"
- IFS='@' read ans || exit 1
- [ -z "$ans" ] && ans=$2
+ echo "$1"
+ ans=$2
}
# bool processes a boolean argument

851
net-tools.changes Normal file
View File

@ -0,0 +1,851 @@
-------------------------------------------------------------------
Tue Dec 27 13:12:55 UTC 2022 - Ludwig Nussel <lnussel@suse.com>
- Replace transitional %usrmerged macro with regular version check (boo#1206798)
-------------------------------------------------------------------
Sun Jan 24 18:04:26 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 2.10:
* man: pt_BR: ifconfig: fix procmisc option typo
* netstat: exit non-zero when sctp protocols are not supported
* man: route: add single route del example
* ifconfig: accept "pointtopoint" as an alias to "pointopoint"
* man: netstat: fill out Timers section
* man: ethers: remove funky comment blocks
* man: standardize SEE ALSO across all pages & translations
* netstat: fix iface truncation with -i
* ifconfig: fix exabyte statistic handling
* man: ipmaddr/iptunnel: new stub man pages
* man: route: use standard .BR for SEE ALSO
* netstat: fix iface truncation with -g
* po: rename et_EE to et
* README/INSTALL: refresh for the modern times
* THANKS: add a few more people from `git-log`
* netstat: Set SCTP report compliant with -l/--listening option.
* Describe "hyphen" program in man page.
* man: cleanup ipfw & ipchains refs
* ipv6: fix memmove usage with overlapping memory
* build: drop support for backing up programs
* netstat: add ROSE print support
* remove ancient "register" markings
* hostname: constify a few string arguments
* hostname: add fallback errno decoding on failure
* de.po: fix typo "Processe" -> "Prozesse"
* route: Fix a missing space in the ipv6 route output
* util: drop new() helper
* proc: constify filename arg
* nameif: add printf attributes to helper funcs
* nameif: mark local vars/funcs as static
* nameif: fix memory corruption and increase maximum MAC address length
* inet_gr: tweak formatting to avoid confusing the compiler
* ipmaddr: use safe_strncpy for ifr_name
* ifconfig: fix confusing error message logic
* ifconfig: add name subcommand to rename an interface
* statistics: Fix ipFragOKs and ipFragFails verbiage
* statistics: fix packets typo
* fix minor mistakes in Czech translation
- drop 0003-Add-support-for-EiB-in-interface.c.patch
0005-Add-support-for-interface-rename-in-nameif.patch: upstream
- net-tools-configure.patch: refresh
-------------------------------------------------------------------
Mon Oct 19 16:15:27 UTC 2020 - Ludwig Nussel <lnussel@suse.de>
- prepare usrmerge (boo#1029961)
-------------------------------------------------------------------
Thu Sep 19 11:56:53 UTC 2019 - Ludwig Nussel <lnussel@suse.de>
- Do not recommend lang package. The lang package already has a
supplements.
-------------------------------------------------------------------
Thu Aug 30 09:56:06 UTC 2018 - tchvatal@suse.com
- Update to version 2.0+git20180626.aebd88e:
* standardize --help/usage handling
* always write --version output to stdout
- Rebase patch:
* 0005-Add-support-for-interface-rename-in-nameif.patch
-------------------------------------------------------------------
Tue Mar 27 11:39:22 CEST 2018 - kukuk@suse.de
- Use %license instead of %doc [bsc#1082318]
-------------------------------------------------------------------
Wed Nov 15 13:47:58 UTC 2017 - vcizek@suse.com
- Update descriptions to better reflect the contents of both packages
and mention the deprecation of the tools (bsc#1067937)
-------------------------------------------------------------------
Sun Jun 18 07:29:18 UTC 2017 - tchvatal@suse.com
- Drop netstat xinetd service as we are phasing xinetd out
There is probably no need to replace it here as netstat was
deprecated and now users should favor 'ss' command from
iproute2
-------------------------------------------------------------------
Sun Jun 18 07:27:20 UTC 2017 - tchvatal@suse.com
- Provide compat symlink to /bin and /sbin to be on safe side
if someone hardcoded them in scripts (most distros switched
7 years ago)
-------------------------------------------------------------------
Sat Jun 17 19:53:44 UTC 2017 - tchvatal@suse.com
- Disable removed binaries for build rather than on install
* Refresh patch net-tools-configure.patch
- Make sure we respect optflags
- Add patch 0001-Add-ether-wake-binary.patch replacing standalone
ether-wake code in the archive
- Add patch 0002-Do-not-warn-about-interface-socket-not-binded.patch
replacing net-tools-1.60-interface_socket.diff
- Add patch 0003-Add-support-for-EiB-in-interface.c.patch enabling
EiB support in interfaces
- Add patch 0004-By-default-do-not-fopen-anything-in-netrom_gr.patch
relpacing net-tools-1.60-netrom-fopen.diff
- Add patch 0005-Add-support-for-interface-rename-in-nameif.patch
replacing nameif-rename.patch
- Add patch 0006-Allow-interface-stacking.patch
replacing net-tools-1.60-interface_stack.patch
- Add patch 0007-Introduce-T-notrim-option-in-netstat.patch
replacing net-tools-1.60-dont-trim-foreign-addr6.diff
and also net-tools-1.60-notrim.diff
- Drop net-tools-1.60-use-gai.patch as it should be upstreamed first
and it does not apply clearly at all now
-------------------------------------------------------------------
Sat Jun 17 19:41:08 UTC 2017 - tchvatal@suse.com
- Move binaries to sbindir and bindir respectively
- Switch from generating filelists to actually state them within
the spec-file, now it is quite readable
- Move ifconfig and route to %{_bindir} as upstream does
(and debian/rh/... do too)
-------------------------------------------------------------------
Sat Jun 17 08:09:20 UTC 2017 - tchvatal@suse.com
- Remove all the manpage altering patches as they are from 2002 and
older while it changed and touching different languages for
rebasing is not bright idea, the same applies for translations
as upstream updated the translations we will pretend their
strings win
- Switch to git service repacking so we don't have to carry all
the patches ourselves
- Update to version 2.0+git20170221.479bb4a:
* slattach/plipconfig: add a config knob to control them
* Fixed trailing whitespace issue with a and i flags (#7)
* iptunnel: drop netinet/ip.h include
* iptunnel: fix building w/older linux headers
* build: respect standard $(LDLIBS) variable
* netstat: improve ROSE support
* AX.25: Rename all references to axattach to kissattach.
* Update all instances of my email address.
* Fix conversion of some ROSE addresses.
* Fix incorrect ARP output
- Merge patch net-tools-1.60-miioff.diff in the main config patch
- Rename net-tools-1.60.dif to net-tools-configure.patch in order
to reflect what it actually does
- Drop nstrcmp.c as VCS contains newer version
- Drop patches that were either merged upstream or fixed bit differently:
* manpages.diff
* net-tools-1.60-arp-unaligned-access.patch
* net-tools-1.60-compoundstatement.diff
* net-tools-1.60-cont-buff.patch
* net-tools-1.60-cs_CZ.bnc715580.diff
* net-tools-1.60-doc.dif
* net-tools-1.60-errors.patch
* net-tools-1.60-fclose.diff
* net-tools-1.60-fix-header-conflict.patch
* net-tools-1.60-hostname-ipv6.patch
* net-tools-1.60-hostname-s.patch
* net-tools-1.60-hostname-space.patch
* net-tools-1.60-ifconfig-SIOCSIFNETMASK.diff
* net-tools-1.60-ifconfig.8.diff
* net-tools-1.60-ifindex.diff
* net-tools-1.60-infiniband.diff
* net-tools-1.60-ipv6-statistics.diff
* net-tools-1.60-krn26.dif
* net-tools-1.60-long_to_int.diff
* net-tools-1.60-multilinestr.diff
* net-tools-1.60-nameif.diff
* net-tools-1.60-netstat-ci.diff
* net-tools-1.60-netstat-output.patch
* net-tools-1.60-netstat-p.patch
* net-tools-1.60-netstat.8.diff
* net-tools-1.60-netstat_retval.diff
* net-tools-1.60-numericstuff.diff
* net-tools-1.60-plipconfig-ecode.patch
* net-tools-1.60-plipconfig-manpage.patch
* net-tools-1.60-plipconfig-usage.patch
* net-tools-1.60-printval-conversion.patch
* net-tools-1.60-sctp-quiet
* net-tools-1.60-sctp.patch
* net-tools-1.60-snmp-counter-overflow.patch
* net-tools-1.60-sockios-SIOCGMIIPHY.diff
* net-tools-1.60-strictaliasing.diff
* net-tools-1.60-tcp-recvq-listen.patch
* netstat-trunc.dif
* net-tools-1.60-if_tr.diff
* net-tools-1.60-interface_mtu.diff
-------------------------------------------------------------------
Sat Jun 17 08:02:18 UTC 2017 - tchvatal@suse.com
- Cleanup a bit with spec-cleaner and remove sle11 conditions
- Drop the patch net-tools-1.60-obsolete.diff
* If restored it is in the VCS and it silences all the rpm warnings
-------------------------------------------------------------------
Tue Nov 1 10:01:53 UTC 2016 - giecrilj@stegny.2a.pl
- add COPYING
- net-tools-1.60-use-gai.patch:
use getaddrinfo instead of gethostbyname
-------------------------------------------------------------------
Mon Oct 17 07:39:12 UTC 2016 - schwab@suse.de
- net-tools-1.60-fix-header-conflict.patch: use kernel headers to avoid
conflict with user-space headers
-------------------------------------------------------------------
Tue May 17 11:36:17 UTC 2016 - pwieczorkiewicz@suse.com
- Add net-tools-1.60-hostname-s.patch:
This changes the hostname behavior to match other systems and its
own documentation. Namely, that -s just parses the result of the
active gethostname() and does not attempt any network/DNS traffic.
upstream: https://sourceforge.net/p/net-tools/bugs/14/
commit#452f8e (boo#872264).
-------------------------------------------------------------------
Wed Jun 10 12:57:09 UTC 2015 - gber@opensuse.org
- Remove hostname, domainname, dnsdomainname and require the
separate hostname package instead
-------------------------------------------------------------------
Tue May 26 15:09:57 UTC 2015 - dgutu@suse.com
- Added patches to past change log entry
-------------------------------------------------------------------
Sun Mar 29 00:41:21 UTC 2015 - jengelh@inai.de
- ipmaddr and iptunnel are obsolete too, move them to subpackage.
(Superseded by `ip maddr` and `ip tunnel`)
- remove redundant %clean section
-------------------------------------------------------------------
Thu Apr 10 12:33:41 UTC 2014 - mmarek@suse.cz
- Move arp, ifconfig, netstat and route to a -deprecated subpackage
(fate#317196, fate#317197)
- Drop the rarp tool, which has been broken since kernel 2.3
-------------------------------------------------------------------
Thu Jul 25 14:41:14 CEST 2013 - ms@suse.de
- ported plipconfig patches from SLE base (bnc #831310)
- net-tools-1.60-plipconfig-ecode.patch
- net-tools-1.60-plipconfig-manpage.patch
- net-tools-1.60-plipconfig-usage.patch
-------------------------------------------------------------------
Mon Apr 15 13:41:34 UTC 2013 - idonmez@suse.com
- Add Source URL, see https://en.opensuse.org/SourceUrls
-------------------------------------------------------------------
Fri Feb 1 00:05:21 UTC 2013 - crrodriguez@opensuse.org
- Use Recommends insted of requires for traceroute
-------------------------------------------------------------------
Tue Jan 29 18:55:00 UTC 2013 - crrodriguez@opensuse.org
- Remove obsolete traceroute(8) implementation.
Modern one is packaged as "traceroute". to fullfil userspace
requirements, Require the new version explicitly.
- Fix localized man page installation, the right thing (tm) to
do is to use find_lang --with-man --all-name instead.
-------------------------------------------------------------------
Sat Jan 26 18:45:57 UTC 2013 - jslaby@suse.com
- add etherwake
-------------------------------------------------------------------
Sun Oct 7 20:21:00 UTC 2012 - andreas.stieger@gmx.de
- Kernel 3.6 removes if_strip.h - disable STRIP support in factory
- convert .changes to utf-8 fixing old entry, W: non-utf8-spec-file
-------------------------------------------------------------------
Mon Sep 12 16:02:02 CEST 2011 - mt@suse.com
- Applied corrections for Czech translation (bnc#715580)
-------------------------------------------------------------------
Tue Feb 15 11:37:36 UTC 2011 - mt@suse.de
- Fixed netstat to not trim foreign/remote ipv6 addresses when
the -T option is set (bnc#637490).
-------------------------------------------------------------------
Tue Jul 20 12:28:38 UTC 2010 - mt@suse.de
- implemented ipv6 support in hostname -[aifsd] (bnc #577070)
-------------------------------------------------------------------
Tue Jan 26 22:35:03 CET 2010 - jengelh@medozas.de
- make sure -m64 is passed to the linker in 64-bit mode
-------------------------------------------------------------------
Fri Jan 1 21:07:12 CET 2010 - ms@suse.de
- fixed return value of netstat -s call (bnc #566946)
-------------------------------------------------------------------
Wed Dec 16 11:49:33 CET 2009 - ms@suse.de
- removed ipchains references in man pages (bnc #561866)
-------------------------------------------------------------------
Tue Nov 3 19:09:33 UTC 2009 - coolo@novell.com
- updated patches to apply with fuzz=0
-------------------------------------------------------------------
Wed Oct 7 12:30:00 CEST 2009 - ms@suse.de
- fixed duplicate fopen calls in netrom_gr.c (bnc #544339)
-------------------------------------------------------------------
Mon Sep 14 11:04:16 CEST 2009 - ms@suse.de
- added support for IPV6 statistics (bnc #537904)
- fixed interface address field length (bnc #537904)
- added support for infiniband IPoIB devices (bnc #537904)
-------------------------------------------------------------------
Wed Aug 12 10:38:32 CEST 2009 - ms@suse.de
- added -T, --notrim option which prevents the address
field from being truncated (bnc #530196)
-------------------------------------------------------------------
Thu Aug 6 16:17:40 CEST 2009 - ms@suse.de
- fixed missing fclose to fopen (bnc #528577)
-------------------------------------------------------------------
Tue Jul 7 20:50:38 CEST 2009 - ms@suse.de
- disabled net-tools obsolete patch, no way to convince
people that it would be a good idea (bnc #492665)
-------------------------------------------------------------------
Tue Jul 7 11:02:12 CEST 2009 - ms@suse.de
- Programs from net-tools have modern equivalents:
arp -> ip neigh
ifconfig -> ip addr/ip link
ipmaddr -> ip maddr
iptunnel -> ip tunnel
netstat -> ss
route -> ip route
added patch to print an obsoletes warning on
stderr (bnc #492665)
-------------------------------------------------------------------
Thu Jun 11 21:22:53 CEST 2009 - coolo@novell.com
- define we need GNU_SOURCE
-------------------------------------------------------------------
Thu May 7 10:05:09 CEST 2009 - ms@suse.de
- fixed data type of third argument in printval function.
Also make sure the printf call in this function uses the
correct format sequence (bnc #501113)
-------------------------------------------------------------------
Wed Mar 25 16:23:29 CET 2009 - ms@suse.de
- increased field length for display of MTU value (bnc #486014)
-------------------------------------------------------------------
Thu Nov 20 12:24:38 CET 2008 - ms@suse.de
- don't show af_inet socket warning for netstat -i (bnc #430864)
-------------------------------------------------------------------
Thu Nov 6 16:06:51 CET 2008 - ms@suse.de
- really fixed SIOCSIFNETMASK ioctl from being called earlier
to SIOCSIFADDR (bnc #438983)
-------------------------------------------------------------------
Fri Oct 31 16:20:54 CET 2008 - ms@suse.de
- reverted last patch from IBM because it breaks standard
ifconfig usage as shown in bug (bnc #440580)
-------------------------------------------------------------------
Mon Oct 27 15:33:44 CET 2008 - ms@suse.de
- fixed ifconfig SIOCSIFNETMASK ioctl from being called earlier
to SIOCSIFADDR (bnc #438983)
-------------------------------------------------------------------
Thu Sep 25 17:12:33 CEST 2008 - ms@suse.de
- really fixed netstat -ci, incomplete patch (bnc #424813)
-------------------------------------------------------------------
Wed Sep 10 10:18:19 CEST 2008 - ms@suse.de
- fixed netstat -ci which prints the stats only on the first loop
on subsequent loops it says "no statistics available", even though
there was network traffic in between (bnc #424813)
-------------------------------------------------------------------
Tue Sep 2 16:59:13 CEST 2008 - ms@suse.de
- update to traceroute 1.2
-------------------------------------------------------------------
Mon Aug 11 09:32:46 CEST 2008 - ms@suse.de
- added patch to allow monitoring of accepted connections queue
length for tcp listening sockets. This will work with
kernels >= 2.6.18.
-------------------------------------------------------------------
Mon May 5 15:08:27 CEST 2008 - ms@suse.de
- added hint about option -s and -f to hostname (bnc #386686)
-------------------------------------------------------------------
Thu Mar 6 18:02:43 CET 2008 - ms@suse.de
- fixed length of interface field (bnc #367769)
-------------------------------------------------------------------
Tue Mar 4 10:30:18 CET 2008 - ms@suse.de
- added obsolete warning for ifconfig into man page (bnc #366477)
-------------------------------------------------------------------
Sun Feb 24 22:03:41 CET 2008 - crrodriguez@suse.de
- use find_lang macro
-------------------------------------------------------------------
Wed Jul 25 14:42:34 CEST 2007 - ms@suse.de
- fixed locale names (#294148)
-------------------------------------------------------------------
Wed May 2 10:38:31 CEST 2007 - ms@suse.de
- fixed trailing space for hostname -a and -i (#270314)
-------------------------------------------------------------------
Tue Sep 26 16:02:23 CEST 2006 - ms@suse.de
- fixed stack overflow when using traceroute -q [n]>=10 (#200508)
-------------------------------------------------------------------
Mon Jul 24 09:50:54 CEST 2006 - ms@suse.de
- fixed german translation for route -C (#194357)
-------------------------------------------------------------------
Thu Jul 20 10:24:51 CEST 2006 - ms@suse.de
- replaced static HZ define to dynamic:
#ifndef HZ
#define HZ sysconf(_SC_CLK_TCK)
#endif
-------------------------------------------------------------------
Wed May 24 21:32:23 CEST 2006 - schwab@suse.de
- Don't strip binaries.
-------------------------------------------------------------------
Wed May 17 15:01:39 CEST 2006 - ms@suse.de
- added patch from Olaf Kirch. Do not display SCTP sockets
if /proc/net/sctp/eps couldn't be opened (#159686)
-------------------------------------------------------------------
Tue Mar 21 12:28:39 CET 2006 - okir@suse.de
- Display SCTP sockets correctly [#159686 - LTC22492]
-------------------------------------------------------------------
Mon Mar 20 12:36:32 CET 2006 - hvogel@suse.de
- fix netstat -p segfault [#159069]
-------------------------------------------------------------------
Mon Feb 20 12:00:24 CET 2006 - hvogel@suse.de
- fix netstat output not to bit-wrap [#149563]
-------------------------------------------------------------------
Mon Feb 6 12:10:13 CET 2006 - hvogel@suse.de
- add snmp counter overflow patch by ak [#148350]
-------------------------------------------------------------------
Wed Feb 1 19:01:28 CET 2006 - hvogel@suse.de
- fix arp causing unaligned access [#146422]
patch from Arthur D. Kepner
-------------------------------------------------------------------
Wed Jan 25 21:30:37 CET 2006 - mls@suse.de
- converted neededforbuild to BuildRequires
-------------------------------------------------------------------
Wed Jan 11 15:10:08 CET 2006 - mmj@suse.de
- Add patch from fedora to avoid stack smashing [#142461]
-------------------------------------------------------------------
Mon Dec 19 15:55:15 CET 2005 - mmj@suse.de
- Update to traceroute-1.0.4
-------------------------------------------------------------------
Mon Dec 19 11:03:09 CET 2005 - mmj@suse.de
- Update to traceroute-1.0.3
-------------------------------------------------------------------
Fri Dec 16 11:46:37 CET 2005 - mmj@suse.de
- Use ICMP6_DST_UNREACH_BEYONDSCOPE instead of
ICMP6_DST_UNREACH_NOTNEIGHBOR on newer glibc
-------------------------------------------------------------------
Tue Sep 27 10:07:31 CEST 2005 - mmj@suse.de
- Fix strict aliasing issues
-------------------------------------------------------------------
Mon Aug 29 15:42:16 CEST 2005 - mmj@suse.de
- Correct netstat.8 [#104487]
-------------------------------------------------------------------
Wed Jul 6 14:13:10 CEST 2005 - mmj@suse.de
- Fix missing decl in nstrcmp.c
-------------------------------------------------------------------
Mon Jun 20 10:30:50 CEST 2005 - mmj@suse.de
- compile with -fpie, link with -pie
- don't strip explicitly
-------------------------------------------------------------------
Mon Jun 13 16:23:38 CEST 2005 - ro@suse.de
- include netinet/if_tr.h instead of linux/if_tr.h
-------------------------------------------------------------------
Wed Jan 5 12:42:56 CET 2005 - mmj@suse.de
- Fix --numeric-ports to not imply --numeric [#45609]
-------------------------------------------------------------------
Wed Dec 8 00:33:03 CET 2004 - mmj@suse.de
- Include linux/sockios.h to get the right ioctl [#48873]. This bug
is in mii-tool which is not included anymore, but better not risk
ever re-adding buggy stuff.
-------------------------------------------------------------------
Thu Dec 2 10:09:01 CET 2004 - mmj@suse.de
- Fix nameif segfault [#48749]
-------------------------------------------------------------------
Mon Aug 9 14:39:20 CEST 2004 - mmj@suse.de
- Remove mii-tool everywhere [#43343]
-------------------------------------------------------------------
Fri Jul 30 12:36:59 CEST 2004 - fdg@suse.de
- fixed the -ic option without destroying the ifconfig buffer
regarding to bug #42932
-------------------------------------------------------------------
Mon May 24 14:26:50 CEST 2004 - meissner@suse.de
- also print unsigned long longs (last patch updated).
-------------------------------------------------------------------
Mon May 24 13:58:36 CEST 2004 - meissner@suse.de
- Always read 64bit values from /proc/net/dev, so we can
use 32bit userland to read from 64bit kernel. #40951/LTC#8726
-------------------------------------------------------------------
Fri Mar 5 09:17:31 CET 2004 - hare@suse.de
- Fixed return values for non-existing interfaces in nameif.
-------------------------------------------------------------------
Thu Feb 26 10:54:31 CET 2004 - hare@suse.de
- Add -r option to nameif to allow renaming of
interfaces.
-------------------------------------------------------------------
Thu Jan 29 17:33:30 CET 2004 - hare@suse.de
- Cool. The last change effectively broke route(1).
-> replaced return; with break;
-------------------------------------------------------------------
Sun Jan 18 16:53:42 CET 2004 - mmj@suse.de
- Fix compound statement calls, and add a missing include
-------------------------------------------------------------------
Wed Oct 15 12:54:44 CEST 2003 - mmj@suse.de
- Don't build as root
-------------------------------------------------------------------
Mon Oct 13 13:47:23 CEST 2003 - mmj@suse.de
- Fix 32 vs. 64-bit programming mistakes [#32089]
-------------------------------------------------------------------
Mon Aug 18 20:17:55 CEST 2003 - mmj@suse.de
- Fix from mmeissner for nstrcmp.c to handle alias interfaces,
even without standard names. (eth1:1 vs eth1:2, also
eth1:blubber vs eth1:1) [#28985]
-------------------------------------------------------------------
Mon Jul 14 10:14:54 CEST 2003 - mmj@suse.de
- Add fix from okir for traceroute -S [#27573]
-------------------------------------------------------------------
Wed Jun 18 16:06:33 CEST 2003 - ro@suse.de
- added non-en manpage directories to filelist
-------------------------------------------------------------------
Mon May 19 15:56:07 CEST 2003 - mmj@suse.de
- Use a better and more tested nstrcmp.c [#26950]
-------------------------------------------------------------------
Wed May 14 00:28:10 CEST 2003 - ro@suse.de
- fix build with 2.5 kernel includes
-------------------------------------------------------------------
Tue May 13 10:48:01 CEST 2003 - mmj@suse.de
- Package man-pages in several languages
-------------------------------------------------------------------
Wed Mar 5 15:28:48 CET 2003 - mmj@suse.de
- Add missing xinetd file [#24676]
-------------------------------------------------------------------
Tue Nov 26 10:40:28 CET 2002 - mmj@suse.de
- Fix traceroute 6 segfault [#21975]
-------------------------------------------------------------------
Fri Nov 15 12:53:03 CET 2002 - okir@suse.de
- Upgraded to new traceroute to fix #20358
-------------------------------------------------------------------
Mon Nov 11 10:22:04 CET 2002 - mmj@suse.de
- Fix multi string literals
-------------------------------------------------------------------
Thu Jul 25 18:22:48 CEST 2002 - mmj@suse.de
- Added traceroute from Olaf Kirch, which is much more secure and
also IPv6 capable.
-------------------------------------------------------------------
Tue Apr 16 14:40:37 CEST 2002 - mmj@suse.de
- Do not pack translated manpages. Should go to other package.
-------------------------------------------------------------------
Mon Mar 4 10:15:43 MET 2002 - mmj@suse.de
- unvollsändig -> unvollständig in German locale. [Bug #14371]
-------------------------------------------------------------------
Wed Feb 6 12:43:56 CET 2002 - mmj@suse.de
- Removed yp and nis stuff from manpages.
-------------------------------------------------------------------
Sat Aug 25 13:54:05 CEST 2001 - kukuk@suse.de
- Replace last patch by a newer one from ak@suse.de
-------------------------------------------------------------------
Mon Aug 20 18:33:41 CEST 2001 - kukuk@suse.de
- Add fix for truncated IP addresses [Bug #9737]
-------------------------------------------------------------------
Wed Apr 25 19:09:43 CEST 2001 - kukuk@suse.de
- Update to net-tools-1.60:
* lot of locale fixes
* IPv6 fixes
* use secure strcpy
-------------------------------------------------------------------
Tue Apr 17 11:57:30 CEST 2001 - ro@suse.de
- added provides for net_tool
-------------------------------------------------------------------
Sun Mar 4 19:07:28 CET 2001 - bk@suse.de
- Update to 1.59(many fixes and improvements and new program nameif)
- enabled gettext support and added locales
- added ipmaddr and iptunnel tools
- enabled FDDI and HIPPI support
- use optimisation flags
- added international man pages
- spec file changes to make use of wildcards in the filelist
-------------------------------------------------------------------
Fri Oct 20 18:47:45 CEST 2000 - kukuk@suse.de
- Rename from net_tool to net-tools
-------------------------------------------------------------------
Sun Jun 25 23:16:19 CEST 2000 - bk@suse.de
- s390: removed not needed files
-------------------------------------------------------------------
Sat Jun 3 15:33:26 CEST 2000 - kukuk@suse.de
- Update to 1.56
-------------------------------------------------------------------
Thu May 25 17:52:34 CEST 2000 - kukuk@suse.de
- Update to 1.55 (contains all fixes)
-------------------------------------------------------------------
Thu May 18 15:28:40 CEST 2000 - kukuk@suse.de
- Add oh2bns patch (bug #2864)
-------------------------------------------------------------------
Wed Feb 9 15:36:40 CET 2000 - kukuk@suse.de
- Add ifconfig manual pages from Andi Kleen
-------------------------------------------------------------------
Wed Feb 2 18:15:19 CET 2000 - kukuk@suse.de
- Fix PPP initialisation
-------------------------------------------------------------------
Wed Feb 2 14:48:03 CET 2000 - kukuk@suse.de
- Update to 1.54, move /usr/man -> /usr/share/man
-------------------------------------------------------------------
Mon Jan 3 15:12:23 CET 2000 - kukuk@suse.de
- Enable IPv6 support
- Fix arp/ethers parsing
-------------------------------------------------------------------
Tue Oct 12 11:13:20 CEST 1999 - garloff@suse.de
- gateways and targets of PtP routes (host flag) are hosts, not
networks. Change name lookup accordingly.
-------------------------------------------------------------------
Mon Sep 13 17:23:57 CEST 1999 - bs@suse.de
- ran old prepare_spec on spec file to switch to new prepare_spec.
-------------------------------------------------------------------
Mon Aug 30 11:16:50 MEST 1999 - kukuk@suse.de
- Update to 1.53, remove ypdomainname and nisdomainname
-------------------------------------------------------------------
Sat Jun 26 19:31:07 MEST 1999 - kukuk@suse.de
- update from jurix to 1.52
-------------------------------------------------------------------
Tue Mar 9 23:46:41 MET 1999 - ro@suse.de
- update to 1.50
- included slattach and its manpage in filelist
-------------------------------------------------------------------
Wed Oct 28 11:29:46 MET 1998 - ro@suse.de
- update to 1.46 / removed incorporated changes from .dif
-------------------------------------------------------------------
Sat Sep 19 19:38:31 MEST 1998 - ro@suse.de
- define _GNU_SOURCE where getopt_long is used
-------------------------------------------------------------------
Tue Sep 1 15:42:30 MEST 1998 - ro@suse.de
- fixed problems with inluding own ipx.h under glibc
-------------------------------------------------------------------
Wed Jun 24 15:50:34 MEST 1998 - ro@suse.de
- added include linux/timer.h before including linux/ip_fw.h
-------------------------------------------------------------------
Mon Oct 27 16:53:41 MET 1997 - ro@suse.de
- added ADD_LANG in Makefile to avoid error
-------------------------------------------------------------------
whenever-whenever - florian@suse.de
new version 1.32-alpha
mv /sbin/arp /usr/sbin/arp

161
net-tools.spec Normal file
View File

@ -0,0 +1,161 @@
#
# spec file for package net-tools
#
# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: net-tools
Version: 2.10
Release: 0
Summary: Important Programs for Networking
License: GPL-2.0-or-later
Group: Productivity/Networking/Other
URL: https://sourceforge.net/projects/net-tools/
Source: https://sourceforge.net/projects/net-tools/files/net-tools-%{version}.tar.xz
# PATCH-FEATURE-SUSE: set configure values to our liking as we do not need
# everything here
Patch0: net-tools-configure.patch
# Git formatted patches described in each patch
Patch1: 0001-Add-ether-wake-binary.patch
Patch2: 0002-Do-not-warn-about-interface-socket-not-binded.patch
Patch4: 0004-By-default-do-not-fopen-anything-in-netrom_gr.patch
Patch6: 0006-Allow-interface-stacking.patch
Patch7: 0007-Introduce-T-notrim-option-in-netstat.patch
BuildRequires: help2man
Requires: hostname
Recommends: traceroute >= 2.0.0
Provides: net_tool = %{version}
Obsoletes: net_tool < %{version}
%description
This package contains programs for network administration and maintenance.
Most of the utilities formerly contained in this package (netstat, arp,
ifconfig, rarp, route) are obsoleted by the tools from iproute2 package (ip, ss)
and have been moved to net-tools-deprecated.
%package deprecated
Summary: Deprecated Networking Utilities
Group: Productivity/Networking/Other
%description deprecated
This package contains the deprecated network utilities arp, ifconfig, netstat and route,
which have been replaced by tools from the iproute2 package:
* arp -> ip [-r] neigh
* ifconfig -> ip a
* netstat -> ss [-r]
* route -> ip r
%lang_package
%prep
%setup -q
%autopatch -p1
%build
export CFLAGS="%{optflags}"
make %{?_smp_mflags} config
make %{?_smp_mflags}
%install
%make_install BINDIR=%{_bindir} SBINDIR=%{_sbindir}
# remove rarp as it is not usefull with our kernel
rm -fv %{buildroot}%{_prefix}/*bin/rarp
rm -fv %{buildroot}/%{_mandir}/man*/rarp.*
rm -fv %{buildroot}/%{_mandir}/*/man*/rarp.*
# Fix manpage locations
mv %{buildroot}/%{_mandir}/de_DE %{buildroot}/%{_mandir}/de
mv %{buildroot}/%{_mandir}/fr_FR %{buildroot}/%{_mandir}/fr
# Generate missing manpages
for tool in iptunnel ipmaddr; do
t="%{buildroot}/%{_mandir}/man8/${tool}.8"
help2man -s8 "%{buildroot}%{_sbindir}/${tool}" --no-discard-stderr >"${t}"
done
# generate bin/sbin compat symlinks
%if 0%{?suse_version} < 1550
mkdir -p %{buildroot}/sbin
mkdir -p %{buildroot}/bin
for i in ether-wake nameif plipconfig slattach arp ipmaddr iptunnel; do
ln -s %{_sbindir}/$i %{buildroot}/sbin/$i
done
for i in netstat ifconfig route; do
ln -s %{_bindir}/$i %{buildroot}/bin/$i
done
%endif
%find_lang %{name} --all-name
%files
%license COPYING
%doc README ABOUT-NLS
%{_sbindir}/ether-wake
%{_sbindir}/nameif
%{_sbindir}/plipconfig
%{_sbindir}/slattach
%if 0%{?suse_version} < 1550
/sbin/ether-wake
/sbin/nameif
/sbin/plipconfig
/sbin/slattach
%endif
%{_mandir}/de/man5/ethers.5%{?ext_man}
%{_mandir}/de/man8/plipconfig.8%{?ext_man}
%{_mandir}/de/man8/slattach.8%{?ext_man}
%{_mandir}/fr/man5/ethers.5%{?ext_man}
%{_mandir}/fr/man8/plipconfig.8%{?ext_man}
%{_mandir}/fr/man8/slattach.8%{?ext_man}
%{_mandir}/man5/ethers.5%{?ext_man}
%{_mandir}/man8/ether-wake.8%{?ext_man}
%{_mandir}/man8/nameif.8%{?ext_man}
%{_mandir}/man8/plipconfig.8%{?ext_man}
%{_mandir}/man8/slattach.8%{?ext_man}
%files deprecated
%license COPYING
%{_bindir}/ifconfig
%{_bindir}/netstat
%{_bindir}/route
%if 0%{?suse_version} < 1550
/bin/ifconfig
/bin/netstat
/bin/route
/sbin/arp
/sbin/ipmaddr
/sbin/iptunnel
%endif
%{_sbindir}/arp
%{_sbindir}/ipmaddr
%{_sbindir}/iptunnel
%{_mandir}/de/man8/arp.8%{?ext_man}
%{_mandir}/de/man8/ifconfig.8%{?ext_man}
%{_mandir}/de/man8/netstat.8%{?ext_man}
%{_mandir}/de/man8/route.8%{?ext_man}
%{_mandir}/fr/man8/arp.8%{?ext_man}
%{_mandir}/fr/man8/ifconfig.8%{?ext_man}
%{_mandir}/fr/man8/netstat.8%{?ext_man}
%{_mandir}/fr/man8/route.8%{?ext_man}
%{_mandir}/man8/arp.8%{?ext_man}
%{_mandir}/man8/ifconfig.8%{?ext_man}
%{_mandir}/man8/netstat.8%{?ext_man}
%{_mandir}/man8/route.8%{?ext_man}
%{_mandir}/man8/ipmaddr.8%{?ext_man}
%{_mandir}/man8/iptunnel.8%{?ext_man}
%{_mandir}/pt_BR/man8/arp.8%{?ext_man}
%{_mandir}/pt_BR/man8/ifconfig.8%{?ext_man}
%{_mandir}/pt_BR/man8/netstat.8%{?ext_man}
%{_mandir}/pt_BR/man8/route.8%{?ext_man}
%files lang -f %{name}.lang
%changelog