diff options
author | Mike Frysinger <vapier@gentoo.org> | 2008-04-14 05:07:39 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2008-04-14 05:07:39 +0000 |
commit | 9b6f04aa31624f5192c11cc96b4a6d32c55cb1b7 (patch) | |
tree | baa5d1d5157bb7d1e98a941c4d1d2752d2850cf3 /sys-apps/net-tools | |
parent | New version based on current cvs. (diff) | |
download | gentoo-2-9b6f04aa31624f5192c11cc96b4a6d32c55cb1b7.tar.gz gentoo-2-9b6f04aa31624f5192c11cc96b4a6d32c55cb1b7.tar.bz2 gentoo-2-9b6f04aa31624f5192c11cc96b4a6d32c55cb1b7.zip |
New version based on current cvs.
(Portage version: 2.2_pre5)
(Signed Manifest commit)
Diffstat (limited to 'sys-apps/net-tools')
12 files changed, 995 insertions, 4 deletions
diff --git a/sys-apps/net-tools/Manifest b/sys-apps/net-tools/Manifest index 1f09f1380456..10258e225a6b 100644 --- a/sys-apps/net-tools/Manifest +++ b/sys-apps/net-tools/Manifest @@ -1,15 +1,28 @@ -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 +AUX 1.60_p20071202044231/0001-git-ignores.patch 654 RMD160 244cdb40c5969f29a9690ad1781142e6c5b91442 SHA1 a06a5ff44bea3d34f124ea52ff94226a7fb50966 SHA256 377a46a5ab37a654c5bf58fa42adccb1ceee11a8c083e6000a3df4dc958e1811 +AUX 1.60_p20071202044231/0002-respect-normal-toolchain-envvars.patch 1704 RMD160 5dd0f00322fb58944d8d462f7738ca7250531d72 SHA1 611a52dc05671716a6b6cbb19136cc23c0d31883 SHA256 ecc53f99547031dc33bc587af260fc797f4bc2696b55bbeba98bc321744479a2 +AUX 1.60_p20071202044231/0003-libdir-needs-version.h.patch 529 RMD160 c9391036b30265231e572eababae568ecbf520aa SHA1 a89fdcc1244892985e29f26557b68b021f053948 SHA256 89bb41bbb361466d2e75d054b302c5d09668710b1bb2c558f3053fa8ae34c447 +AUX 1.60_p20071202044231/0004-document-the-e-option.patch 1962 RMD160 db3b81c09b52a4d8e69aceae0f4e879a6b80e6c1 SHA1 da952486ca943a1809f8a2d9f25e11180262bb35 SHA256 35aa9d70234eaf37c90edecf17eb012b83a089ec4ffd14ebec1509ecc6aa8290 +AUX 1.60_p20071202044231/0005-all-of-the-8-man-pages-are-administrator-not-pr.patch 4356 RMD160 17013266d3f27c9ffc09e0eb2acb41cbbb581d9a SHA1 9e4a07a63df7426e9b0eacc0e3452f539c5a6f91 SHA256 32d5c56630ef8724f33399ffe93eb07cfec6aee3f33479708c4529a6913f8ec6 +AUX 1.60_p20071202044231/0006-handle-just-raw-IP-info.patch 772 RMD160 633072ac3734ef8088e59302b1692a641ef05c16 SHA1 eb1964e5ae8335625278ca36005a82e50a7a21fb SHA256 d480f847de0cefd1e5975036819c3c91b96062063fd9b5da5cea4dd2e7d6c179 +AUX 1.60_p20071202044231/0007-prevent-overflows-in-interface-buffers.patch 2595 RMD160 e716cb5360615025cf75b212043817c7b9bf2fe7 SHA1 b9a88062886220d350d94174e49649d169d9b11e SHA256 4993b256988ed1f59f52b2a83132989a57f04c0f1def0174f06e73cb7b3ee386 +AUX 1.60_p20071202044231/0008-Mads-Martin-Joergensen-writes.patch 3003 RMD160 5cefe53621b9e109e93f9e107f65861bca3f6d08 SHA1 733cec0414c4a5b93db64dbe2e6d8c7d8ccb9580 SHA256 331c61893aafddd785d811439681c1a9c84363e8134044bd9658c2a2627c73d4 +AUX 1.60_p20071202044231/0009-Patch-by-pasi.valminen-hut.fi-to-fix-FQDN-handling-w.patch 3934 RMD160 1e3534f3d3e95d2f9b7bc1a64d131e8c4e88087d SHA1 7a7d74a12b6d78de1262594e9e3827b425cbcda4 SHA256 f49a10c20559dacdaef5028856215bf12cf2bdaf3ae652578c7708e560867c37 +AUX 1.60_p20071202044231/0010-Patch-by-Tom-Duffy-tduffy-sun.com-to-teach-ifconfi.patch 5932 RMD160 41f28282d64323539467c31b28a58b8fa426b47c SHA1 c7b33ea9197284980b820ed88a2d32af33682c06 SHA256 c40470b249f162faec7d0eaf7be7bccab5b3dd1a3e1264439afaa782b0d5824f +AUX 1.60_p20071202044231/0011-comabug-gmail.com-writes.patch 5578 RMD160 78caed73438814e10864f5462f7e15486b5b97a0 SHA1 79fae683bb9494fbecc221c69c26b134af8c6378 SHA256 38faa2d667f5c275dedea383bb4b2a99fc2b2fd08224ac669284ad6d1ff1533c DIST net-tools-1.60-patches-1.6.tar.bz2 106557 RMD160 1dce9fecbbab849bfdb8b832ee4baf5cead983d9 SHA1 709d1c8f611225f851ec6227b4928ae9f97edbb5 SHA256 61df3fca2bd30a752231285bd714edcadc0c5206a09954eb1861a68a0ef4bba9 DIST net-tools-1.60.tar.bz2 198520 RMD160 58376371a9383842640d2c4215cf771d522ee43e SHA1 944fb70641505d5d1139dba3aeb81ba124574b83 SHA256 7ae4dd6d44d6715f18e10559ffd270511b6e55a8900ca54fbebafe0ae6cf7d7b +DIST net-tools-1.60_p20071202044231.tar.lzma 183956 RMD160 c3a836b865333326cb868da1d586383d30b3d153 SHA1 0b34c293ae3fde2ac2ec1c416e71478d242c1002 SHA256 381bce364d144b140d2e44b4a9430cd292d8410185099b5cc45502a5e6111de8 EBUILD net-tools-1.60-r13.ebuild 2267 RMD160 6fed42c892dbfa5fd13daba8ebd8b6c8d63365c8 SHA1 a26ad4ec81a9003a586eb58f87248e9e006db6ba SHA256 22f1c4ab8848ae781813e89701eaff9147f68a6534c39831dd9aa1ff0dac70d5 -MISC ChangeLog 11136 RMD160 21e32e2fbadc0a0aa660546d48b3c8a11934a7b5 SHA1 c6eb74df1d812f3dd237fb4a13017f8683be66ce SHA256 e0656b0a77208080b54a31ff59ccc37b1358c5bc8793be316172c919ac6bc6f4 +EBUILD net-tools-1.60_p20071202044231.ebuild 1506 RMD160 a15424ddfbbc56f0ed3770ac37d10b0fcc7be1de SHA1 f060e2b3b886d606c297c9b1571d284b7a846b02 SHA256 1469ca3bdefe99cbea87e9c65dca77e160c055bfa84e572d6f9b43599647184a +MISC ChangeLog 12144 RMD160 68e017bad5ceaf8660e4d348f22a5be7f867a3eb SHA1 e2c6150c5c729ba8a539f085c58eb48aff80ba85 SHA256 cd6940de2e6b912f8bd2bebaa42d9253e705560405dc43309f8d93b27d805307 MISC metadata.xml 164 RMD160 f43cbec30b7074319087c9acffdb9354b17b0db3 SHA1 9c213f5803676c56439df3716be07d6692588856 SHA256 f5f2891f2a4791cd31350bb2bb572131ad7235cd0eeb124c9912c187ac10ce92 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.7 (GNU/Linux) -iD8DBQFH/oMNj9hvisErhMIRAiWPAJ0cEv/E1Pkppn84Yx+lQddXlLO71gCg160O -gvmqJKwg4SBomH/OwAXw9i8= -=mGIl +iD8DBQFIAuaZj9hvisErhMIRAqEGAJ9YPSiRjLJI3+MgbBE0fgexCVyupwCfYy+s +CflyUQaeMRIrZmCIccJxmJ4= +=eddm -----END PGP SIGNATURE----- diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0001-git-ignores.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0001-git-ignores.patch new file mode 100644 index 000000000000..314bcf1604f8 --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0001-git-ignores.patch @@ -0,0 +1,41 @@ +From cc21d43a5991764a2dc2bfc5b22a19cec2f62180 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sun, 13 Apr 2008 23:57:55 -0400 +Subject: [PATCH] git ignores + +--- + .gitignore | 22 ++++++++++++++++++++++ + 1 files changed, 22 insertions(+), 0 deletions(-) + create mode 100644 .gitignore + +diff --git a/.gitignore b/.gitignore +new file mode 100644 +index 0000000..f011661 +--- /dev/null ++++ b/.gitignore +@@ -0,0 +1,22 @@ ++*.o ++ ++/config.h ++/config.make ++/config.status ++ ++/lib/libnet-tools.a ++ ++/version.h ++ ++/arp ++/hostname ++/ifconfig ++/ipmaddr ++/iptunnel ++/mii-tool ++/nameif ++/netstat ++/plipconfig ++/rarp ++/route ++/slattach +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0002-respect-normal-toolchain-envvars.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0002-respect-normal-toolchain-envvars.patch new file mode 100644 index 000000000000..3bfbfc032144 --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0002-respect-normal-toolchain-envvars.patch @@ -0,0 +1,66 @@ +From 8903f55c34c4f7a4bed25b7961717fdf4652704b Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Sun, 13 Apr 2008 23:58:07 -0400 +Subject: [PATCH] respect normal toolchain envvars + +--- + Makefile | 17 +++++++---------- + 1 files changed, 7 insertions(+), 10 deletions(-) + +diff --git a/Makefile b/Makefile +index 8fcc55c..a2f0c77 100644 +--- a/Makefile ++++ b/Makefile +@@ -88,10 +88,9 @@ endif + + # Compiler and Linker Options + # You may need to uncomment and edit these if you are using libc5 and IPv6. +-COPTS = -D_GNU_SOURCE -O2 -Wall -g # -I/usr/inet6/include +-ifeq ($(origin LOPTS), undefined) +-LOPTS = +-endif ++CFLAGS ?= -O2 -g ++CFLAGS += -Wall ++CPPFLAGS += -D_GNU_SOURCE + RESLIB = # -L/usr/inet6/lib -linet6 + + ifeq ($(HAVE_AFDECnet),1) +@@ -113,8 +112,8 @@ endif + + NET_LIB = $(NET_LIB_PATH)/lib$(NET_LIB_NAME).a + +-CFLAGS = $(COPTS) -I. -idirafter ./include/ -I$(NET_LIB_PATH) +-LDFLAGS = $(LOPTS) -L$(NET_LIB_PATH) ++CPPFLAGS += -I. -idirafter ./include/ -I$(NET_LIB_PATH) ++LDFLAGS += -L$(NET_LIB_PATH) + + SUBDIRS = man/ $(NET_LIB_PATH)/ + +@@ -125,8 +124,6 @@ LD = $(CC) + + NLIB = -l$(NET_LIB_NAME) + +-MDEFINES = COPTS='$(COPTS)' LOPTS='$(LOPTS)' TOPDIR='$(TOPDIR)' +- + %.o: %.c config.h version.h intl.h net-features.h $< + $(CC) $(CFLAGS) -c $< + +@@ -176,13 +173,13 @@ $(NET_LIB): config.h version.h intl.h libdir + i18n.h: i18ndir + + libdir: +- @$(MAKE) -C $(NET_LIB_PATH) $(MDEFINES) ++ @$(MAKE) -C $(NET_LIB_PATH) + + i18ndir: + @$(MAKE) -C po + + subdirs: +- @for i in $(SUBDIRS); do $(MAKE) -C $$i $(MDEFINES) ; done ++ @for i in $(SUBDIRS); do $(MAKE) -C $$i ; done + + ifconfig: $(NET_LIB) ifconfig.o + $(CC) $(LDFLAGS) -o ifconfig ifconfig.o $(NLIB) $(RESLIB) +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0003-libdir-needs-version.h.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0003-libdir-needs-version.h.patch new file mode 100644 index 000000000000..7e36cbff78fc --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0003-libdir-needs-version.h.patch @@ -0,0 +1,25 @@ +From 396d2d99db901296449663782a7ea13b1d0d6b51 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:17:39 -0400 +Subject: [PATCH] libdir needs version.h + +--- + Makefile | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/Makefile b/Makefile +index a2f0c77..382cbf2 100644 +--- a/Makefile ++++ b/Makefile +@@ -172,7 +172,7 @@ $(NET_LIB): config.h version.h intl.h libdir + + i18n.h: i18ndir + +-libdir: ++libdir: version.h + @$(MAKE) -C $(NET_LIB_PATH) + + i18ndir: +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0004-document-the-e-option.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0004-document-the-e-option.patch new file mode 100644 index 000000000000..8f03e1e6a19b --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0004-document-the-e-option.patch @@ -0,0 +1,57 @@ +From ea596e184e45d3cb08fbb0f4269f9bcbf3256ed3 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:32:40 -0400 +Subject: [PATCH] document the -e option + +--- + arp.c | 1 + + man/en_US/arp.8 | 7 +++++-- + 2 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/arp.c b/arp.c +index 4ee5c58..26ab326 100644 +--- a/arp.c ++++ b/arp.c +@@ -630,6 +630,7 @@ static void usage(void) + fprintf(stderr, _(" arp [-v] [<HW>] [-i <if>] -Ds <host> <if> [netmask <nm>] pub <-''-\n\n")); + + fprintf(stderr, _(" -a display (all) hosts in alternative (BSD) style\n")); ++ fprintf(stderr, _(" -e display (all) hosts in default (Linux) style\n")); + fprintf(stderr, _(" -s, --set set a new ARP entry\n")); + fprintf(stderr, _(" -d, --delete delete a specified entry\n")); + fprintf(stderr, _(" -v, --verbose be verbose\n")); +diff --git a/man/en_US/arp.8 b/man/en_US/arp.8 +index 4d20ed3..281047d 100644 +--- a/man/en_US/arp.8 ++++ b/man/en_US/arp.8 +@@ -8,7 +8,7 @@ arp \- manipulate the system ARP cache + .IR type ] + .RB [ \-i + .IR if ] +-.RB [ \-a ] ++.RB [ \-ae ] + .RI [ hostname ] + .PP + .B arp +@@ -115,7 +115,7 @@ Tell the user what is going on by being verbose. + shows numerical addresses instead of trying to determine symbolic host, port + or user names. + .TP +-.B "\-H type, \-\-hw-type type" ++.B "\-H type, \-\-hw-type type, \-t type" + When setting or reading the ARP cache, this optional parameter tells + .B arp + which class of entries it should check for. The default value of +@@ -134,6 +134,9 @@ and + .B \-a + Use alternate BSD style output format (with no fixed columns). + .TP ++.B \-e ++Use default Linux style output format (with fixed columns). ++.TP + .B "\-D, \-\-use-device" + Instead of a hw_addr, the given argument is the name of an interface. + .B arp +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0005-all-of-the-8-man-pages-are-administrator-not-pr.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0005-all-of-the-8-man-pages-are-administrator-not-pr.patch new file mode 100644 index 000000000000..a2d65893f1e3 --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0005-all-of-the-8-man-pages-are-administrator-not-pr.patch @@ -0,0 +1,127 @@ +From fbb893d0d1655fd514a55da22dccd28693e63031 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:35:00 -0400 +Subject: [PATCH] all of the (8) man pages are "administrator" not "programmer" manpages + +--- + man/en_US/arp.8 | 2 +- + man/en_US/ifconfig.8 | 2 +- + man/en_US/netstat.8 | 2 +- + man/en_US/rarp.8 | 2 +- + man/en_US/route.8 | 2 +- + man/fr_FR/arp.8 | 2 +- + man/fr_FR/ifconfig.8 | 2 +- + man/fr_FR/netstat.8 | 2 +- + man/fr_FR/rarp.8 | 2 +- + man/fr_FR/route.8 | 2 +- + 10 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/man/en_US/arp.8 b/man/en_US/arp.8 +index 281047d..93feb04 100644 +--- a/man/en_US/arp.8 ++++ b/man/en_US/arp.8 +@@ -1,4 +1,4 @@ +-.TH ARP 8 "2007-12-01" "net-tools" "Linux Programmer's Manual" ++.TH ARP 8 "2007-12-01" "net-tools" "Linux Administrator's Manual" + .SH NAME + arp \- manipulate the system ARP cache + .SH SYNOPSIS +diff --git a/man/en_US/ifconfig.8 b/man/en_US/ifconfig.8 +index 410677e..ac5c829 100644 +--- a/man/en_US/ifconfig.8 ++++ b/man/en_US/ifconfig.8 +@@ -1,4 +1,4 @@ +-.TH IFCONFIG 8 "2007-11-07" "net-tools" "Linux Programmer's Manual" ++.TH IFCONFIG 8 "2007-11-07" "net-tools" "Linux Administrator's Manual" + .SH NAME + ifconfig \- configure a network interface + .SH SYNOPSIS +diff --git a/man/en_US/netstat.8 b/man/en_US/netstat.8 +index 7a8a42c..e6be46b 100644 +--- a/man/en_US/netstat.8 ++++ b/man/en_US/netstat.8 +@@ -8,7 +8,7 @@ + .\" Modified: Tuan Hoang tqhoang@bigfoot.com + .\" + .\" +-.TH NETSTAT 8 "2007-12-02" "net-tools" "Linux Programmer's Manual" ++.TH NETSTAT 8 "2007-12-02" "net-tools" "Linux Administrator's Manual" + + .SH NAME + netstat \- Print network connections, routing tables, interface statistics, masquerade connections, and multicast memberships +diff --git a/man/en_US/rarp.8 b/man/en_US/rarp.8 +index 1186aa8..c450f13 100644 +--- a/man/en_US/rarp.8 ++++ b/man/en_US/rarp.8 +@@ -1,4 +1,4 @@ +-.TH RARP 8 "4 August 1997" "net-tools" "Linux Programmer's Manual" ++.TH RARP 8 "4 August 1997" "net-tools" "Linux Administrator's Manual" + .SH NAME + rarp \- manipulate the system RARP table + .SH SYNOPSIS +diff --git a/man/en_US/route.8 b/man/en_US/route.8 +index 6c06017..9aa4ff1 100644 +--- a/man/en_US/route.8 ++++ b/man/en_US/route.8 +@@ -1,4 +1,4 @@ +-.TH ROUTE 8 "02 October 2003" "net-tools" "Linux Programmer's Manual" ++.TH ROUTE 8 "02 October 2003" "net-tools" "Linux Administrator's Manual" + .SH NAME + route \- show / manipulate the IP routing table + .SH SYNOPSIS +diff --git a/man/fr_FR/arp.8 b/man/fr_FR/arp.8 +index b658aa5..50dbc99 100644 +--- a/man/fr_FR/arp.8 ++++ b/man/fr_FR/arp.8 +@@ -1,4 +1,4 @@ +-.TH ARP 8 "5 Jan 1999" "net-tools" "Linux Programmer's Manual" ++.TH ARP 8 "5 Jan 1999" "net-tools" "Linux Administrator's Manual" + .SH NOM + arp \- manipule la table ARP du système + .SH SYNOPSIS +diff --git a/man/fr_FR/ifconfig.8 b/man/fr_FR/ifconfig.8 +index af58e56..afed13a 100644 +--- a/man/fr_FR/ifconfig.8 ++++ b/man/fr_FR/ifconfig.8 +@@ -1,4 +1,4 @@ +-.TH IFCONFIG 8 "4 August 1997" "net-tools" "Linux Programmer's Manual" ++.TH IFCONFIG 8 "4 August 1997" "net-tools" "Linux Administrator's Manual" + .SH NOM + ifconfig \- configure une interface réseau + .SH SYNOPSIS +diff --git a/man/fr_FR/netstat.8 b/man/fr_FR/netstat.8 +index 5ec3721..d92fbcb 100644 +--- a/man/fr_FR/netstat.8 ++++ b/man/fr_FR/netstat.8 +@@ -8,7 +8,7 @@ + .\" Modified: Tuan Hoang tuan@optimus.mitre.org + .\" + .\" +-.TH NETSTAT 8 "2007-12-02" "net-tools" "Linux Programmer's Manual" ++.TH NETSTAT 8 "2007-12-02" "net-tools" "Linux Administrator's Manual" + + .SH NAME + netstat \- Affiche les connexions réseau, les tables de routage, les +diff --git a/man/fr_FR/rarp.8 b/man/fr_FR/rarp.8 +index 57a2281..1098c63 100644 +--- a/man/fr_FR/rarp.8 ++++ b/man/fr_FR/rarp.8 +@@ -1,4 +1,4 @@ +-.TH RARP 8 "4 Août 1997" "net-tools" "Linux Programmer's Manual" ++.TH RARP 8 "4 Août 1997" "net-tools" "Linux Administrator's Manual" + .SH NOM + rarp \- manipule la table système RARP + .SH SYNOPSIS +diff --git a/man/fr_FR/route.8 b/man/fr_FR/route.8 +index 9109e8d..bf9863c 100644 +--- a/man/fr_FR/route.8 ++++ b/man/fr_FR/route.8 +@@ -1,4 +1,4 @@ +-.TH ROUTE 8 "8 Août 1997" "net-tools" "Linux Programmer's Manual" ++.TH ROUTE 8 "8 Août 1997" "net-tools" "Linux Administrator's Manual" + .SH NAME + route \- affiche / manipule la table de routage IP + .SH SYNOPSIS +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0006-handle-just-raw-IP-info.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0006-handle-just-raw-IP-info.patch new file mode 100644 index 000000000000..b742ada02eea --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0006-handle-just-raw-IP-info.patch @@ -0,0 +1,27 @@ +From b7171f3e8a16766e1543e3e3ca797371466cbf87 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:35:59 -0400 +Subject: [PATCH] handle just raw "IP" info + +--- + lib/masq_info.c | 4 +++- + 1 files changed, 3 insertions(+), 1 deletions(-) + +diff --git a/lib/masq_info.c b/lib/masq_info.c +index 45ca689..93eb04f 100644 +--- a/lib/masq_info.c ++++ b/lib/masq_info.c +@@ -119,7 +119,9 @@ static int read_masqinfo(FILE * f, struct masq *mslist, int nmslist) + ms->src.sin_family = AF_INET; + ms->dst.sin_family = AF_INET; + +- if (strcmp("TCP", buf) == 0) ++ if (strcmp("IP", buf) == 0) ++ ms->proto = "ip"; ++ else if (strcmp("TCP", buf) == 0) + ms->proto = "tcp"; + else if (strcmp("UDP", buf) == 0) + ms->proto = "udp"; +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0007-prevent-overflows-in-interface-buffers.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0007-prevent-overflows-in-interface-buffers.patch new file mode 100644 index 000000000000..110fc06aa0ba --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0007-prevent-overflows-in-interface-buffers.patch @@ -0,0 +1,76 @@ +From bef310c8274c7df6e004ae0e927e0d757a85c586 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:39:09 -0400 +Subject: [PATCH] prevent overflows in interface buffers + +--- + netstat.c | 18 ++++++++++++------ + 1 files changed, 12 insertions(+), 6 deletions(-) + +diff --git a/netstat.c b/netstat.c +index dcd1f8a..8057d78 100644 +--- a/netstat.c ++++ b/netstat.c +@@ -784,7 +784,8 @@ static void tcp_do_one(int lnr, const char *line) + local_addr[22 - strlen(buffer)] = '\0'; + + strcat(local_addr, ":"); +- strcat(local_addr, buffer); ++ strncat(local_addr, buffer, sizeof(local_addr)); ++ local_addr[sizeof(local_addr)-1] = 0; + snprintf(buffer, sizeof(buffer), "%s", + get_sname(htons(rem_port), "tcp", flag_not & FLAG_NUM_PORT)); + +@@ -792,7 +793,8 @@ static void tcp_do_one(int lnr, const char *line) + rem_addr[22 - strlen(buffer)] = '\0'; + + strcat(rem_addr, ":"); +- strcat(rem_addr, buffer); ++ strncat(rem_addr, buffer, sizeof(rem_addr)); ++ rem_addr[sizeof(rem_addr)-1] = 0; + timers[0] = '\0'; + + if (flag_opt) +@@ -936,7 +938,8 @@ static void udp_do_one(int lnr, const char *line) + if ((strlen(local_addr) + strlen(buffer)) > 22) + local_addr[22 - strlen(buffer)] = '\0'; + strcat(local_addr, ":"); +- strcat(local_addr, buffer); ++ strncat(local_addr, buffer, sizeof(local_addr)); ++ local_addr[sizeof(local_addr)-1] = 0; + + snprintf(buffer, sizeof(buffer), "%s", + get_sname(htons(rem_port), "udp", flag_not & FLAG_NUM_PORT)); +@@ -945,7 +948,8 @@ static void udp_do_one(int lnr, const char *line) + if ((strlen(rem_addr) + strlen(buffer)) > 22) + rem_addr[22 - strlen(buffer)] = '\0'; + strcat(rem_addr, ":"); +- strcat(rem_addr, buffer); ++ strncat(rem_addr, buffer, sizeof(rem_addr)); ++ rem_addr[sizeof(rem_addr)-1] = 0; + + timers[0] = '\0'; + if (flag_opt) +@@ -1058,7 +1062,8 @@ static void raw_do_one(int lnr, const char *line) + if ((strlen(local_addr) + strlen(buffer)) > 22) + local_addr[22 - strlen(buffer)] = '\0'; + strcat(local_addr, ":"); +- strcat(local_addr, buffer); ++ strncat(local_addr, buffer, sizeof(local_addr)); ++ local_addr[sizeof(local_addr)-1] = 0; + + snprintf(buffer, sizeof(buffer), "%s", + get_sname(htons(rem_port), "raw", flag_not & FLAG_NUM_PORT)); +@@ -1067,7 +1072,8 @@ static void raw_do_one(int lnr, const char *line) + if ((strlen(rem_addr) + strlen(buffer)) > 22) + rem_addr[22 - strlen(buffer)] = '\0'; + strcat(rem_addr, ":"); +- strcat(rem_addr, buffer); ++ strncat(rem_addr, buffer, sizeof(rem_addr)); ++ rem_addr[sizeof(rem_addr)-1] = 0; + + timers[0] = '\0'; + if (flag_opt) +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0008-Mads-Martin-Joergensen-writes.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0008-Mads-Martin-Joergensen-writes.patch new file mode 100644 index 000000000000..aceebf48b1ca --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0008-Mads-Martin-Joergensen-writes.patch @@ -0,0 +1,67 @@ +From fcfb7fa902fcfc23e9fe78bb57748c110b972029 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:39:50 -0400 +Subject: [PATCH] Mads Martin Joergensen writes: + According to the manual the option "--numeric-ports" should not + affect host resolution, but it does. All connected hosts are displayed + with numeric values instead of their FQDN. + +http://bugs.gentoo.org/76756 +--- + netstat.c | 12 ++++++------ + 1 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/netstat.c b/netstat.c +index 8057d78..843c06b 100644 +--- a/netstat.c ++++ b/netstat.c +@@ -772,8 +772,8 @@ static void tcp_do_one(int lnr, const char *line) + txq = 0L; + } + safe_strncpy(local_addr, ap->sprint((struct sockaddr *) &localaddr, +- flag_not), sizeof(local_addr)); +- safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, flag_not), ++ flag_not & FLAG_NUM_HOST), sizeof(local_addr)); ++ safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, flag_not & FLAG_NUM_HOST), + sizeof(rem_addr)); + if (flag_all || (flag_lst && !rem_port) || (!flag_lst && rem_port)) { + snprintf(buffer, sizeof(buffer), "%s", +@@ -931,7 +931,7 @@ static void udp_do_one(int lnr, const char *line) + if (flag_all || (notnull(remaddr) && !flag_lst) || (!notnull(remaddr) && flag_lst)) + { + safe_strncpy(local_addr, ap->sprint((struct sockaddr *) &localaddr, +- flag_not), sizeof(local_addr)); ++ flag_not & FLAG_NUM_HOST), sizeof(local_addr)); + snprintf(buffer, sizeof(buffer), "%s", + get_sname(htons(local_port), "udp", + flag_not & FLAG_NUM_PORT)); +@@ -944,7 +944,7 @@ static void udp_do_one(int lnr, const char *line) + snprintf(buffer, sizeof(buffer), "%s", + get_sname(htons(rem_port), "udp", flag_not & FLAG_NUM_PORT)); + safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, +- flag_not), sizeof(rem_addr)); ++ flag_not & FLAG_NUM_HOST), sizeof(rem_addr)); + if ((strlen(rem_addr) + strlen(buffer)) > 22) + rem_addr[22 - strlen(buffer)] = '\0'; + strcat(rem_addr, ":"); +@@ -1058,7 +1058,7 @@ static void raw_do_one(int lnr, const char *line) + get_sname(htons(local_port), "raw", + flag_not & FLAG_NUM_PORT)); + safe_strncpy(local_addr, ap->sprint((struct sockaddr *) &localaddr, +- flag_not), sizeof(local_addr)); ++ flag_not & FLAG_NUM_HOST), sizeof(local_addr)); + if ((strlen(local_addr) + strlen(buffer)) > 22) + local_addr[22 - strlen(buffer)] = '\0'; + strcat(local_addr, ":"); +@@ -1068,7 +1068,7 @@ static void raw_do_one(int lnr, const char *line) + snprintf(buffer, sizeof(buffer), "%s", + get_sname(htons(rem_port), "raw", flag_not & FLAG_NUM_PORT)); + safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, +- flag_not), sizeof(rem_addr)); ++ flag_not & FLAG_NUM_HOST), sizeof(rem_addr)); + if ((strlen(rem_addr) + strlen(buffer)) > 22) + rem_addr[22 - strlen(buffer)] = '\0'; + strcat(rem_addr, ":"); +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0009-Patch-by-pasi.valminen-hut.fi-to-fix-FQDN-handling-w.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0009-Patch-by-pasi.valminen-hut.fi-to-fix-FQDN-handling-w.patch new file mode 100644 index 000000000000..abc85659df02 --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0009-Patch-by-pasi.valminen-hut.fi-to-fix-FQDN-handling-w.patch @@ -0,0 +1,124 @@ +From d894c8c42415fb8e5148dc0ba073078acb99a607 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:40:29 -0400 +Subject: [PATCH] Patch by pasi.valminen@hut.fi to fix FQDN handling with AAAA records + +http://bugs.gentoo.org/42650 +--- + hostname.c | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++-------- + 1 files changed, 61 insertions(+), 10 deletions(-) + +diff --git a/hostname.c b/hostname.c +index c4c5aa0..e8ed156 100644 +--- a/hostname.c ++++ b/hostname.c +@@ -36,6 +36,10 @@ + #include <getopt.h> + #include <string.h> + #include <netdb.h> ++#ifdef IPV6 ++#include <sys/socket.h> /* for PF_INET6 */ ++#include <sys/types.h> /* for inet_ntop */ ++#endif /* IPV6 */ + #include <errno.h> + #include <sys/param.h> + #include <netinet/in.h> +@@ -125,15 +129,23 @@ static void setdname(char *dname) + static void showhname(char *hname, int c) + { + struct hostent *hp; ++#ifdef IPV6 ++ struct in6_addr **ip6; ++#endif /* IPV6 */ + register char *p, **alias; + struct in_addr **ip; + + if (opt_v) + fprintf(stderr, _("Resolving `%s' ...\n"), hname); +- if (!(hp = gethostbyname(hname))) { ++ if ( ++#ifdef IPV6 ++ !(hp = gethostbyname2(hname, PF_INET6)) && ++#endif /* IPV6 */ ++ !(hp = gethostbyname(hname))) { + herror(program_name); + exit(1); + } ++ + if (opt_v) { + fprintf(stderr, _("Result: h_name=`%s'\n"), + hp->h_name); +@@ -142,11 +154,28 @@ static void showhname(char *hname, int c) + while (alias[0]) + fprintf(stderr, _("Result: h_aliases=`%s'\n"), + *alias++); +- +- ip = (struct in_addr **) hp->h_addr_list; +- while (ip[0]) +- fprintf(stderr, _("Result: h_addr_list=`%s'\n"), +- inet_ntoa(**ip++)); ++#ifdef IPV6 ++ if(hp->h_addrtype == PF_INET6) { ++ char addr[INET6_ADDRSTRLEN + 1]; ++ addr[INET6_ADDRSTRLEN] = '\0'; ++ ip6 = (struct in6_addr **) hp->h_addr_list; ++ while(ip6[0]) { ++ if(inet_ntop(PF_INET6, *ip6++, addr, INET6_ADDRSTRLEN)) ++ fprintf(stderr, _("Result: h_addr_list=`%s'\n"), addr); ++ else if(errno == EAFNOSUPPORT) ++ fprintf(stderr, _("%s: protocol family not supported\n"), ++ program_name); ++ else if(errno == ENOSPC) ++ fprintf(stderr, _("%s: name too long\n"), program_name); ++ } ++ } else ++#endif /* IPV6 */ ++ { ++ ip = (struct in_addr **) hp->h_addr_list; ++ while (ip[0]) ++ fprintf(stderr, _("Result: h_addr_list=`%s'\n"), ++ inet_ntoa(**ip++)); ++ } + } + if (!(p = strchr(hp->h_name, '.')) && (c == 'd')) + return; +@@ -158,10 +187,32 @@ static void showhname(char *hname, int c) + printf("\n"); + break; + case 'i': +- while (hp->h_addr_list[0]) +- printf("%s ", inet_ntoa(*(struct in_addr *) *hp->h_addr_list++)); +- printf("\n"); +- break; ++#ifdef IPV6 ++ if(hp->h_addrtype == PF_INET6) { ++ char addr[INET6_ADDRSTRLEN + 1]; ++ addr[INET6_ADDRSTRLEN] = '\0'; ++ while(hp->h_addr_list[0]) { ++ if(inet_ntop(PF_INET6, (struct in6_addr *)*hp->h_addr_list++, ++ addr, INET6_ADDRSTRLEN)) ++ printf("%s ", addr); ++ else if(errno == EAFNOSUPPORT) { ++ fprintf(stderr, _("\n%s: protocol family not supported\n"), ++ program_name); ++ exit(1); ++ } else if(errno == ENOSPC) { ++ fprintf(stderr, _("\n%s: name too long\n"), program_name); ++ exit(1); ++ } ++ printf("\n"); ++ } ++ } else ++#endif /* IPV6 */ ++ { ++ while (hp->h_addr_list[0]) ++ printf("%s ", inet_ntoa(*(struct in_addr *)*hp->h_addr_list++)); ++ printf("\n"); ++ } ++ break; + case 'd': + printf("%s\n", ++p); + break; +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0010-Patch-by-Tom-Duffy-tduffy-sun.com-to-teach-ifconfi.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0010-Patch-by-Tom-Duffy-tduffy-sun.com-to-teach-ifconfi.patch new file mode 100644 index 000000000000..6dd07472ac98 --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0010-Patch-by-Tom-Duffy-tduffy-sun.com-to-teach-ifconfi.patch @@ -0,0 +1,228 @@ +From 9fb2c65b56df96c7bc9538c2b40028df0a1a3255 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:42:18 -0400 +Subject: [PATCH] Patch by Tom Duffy <tduffy@sun.com> to teach ifconfig about infiniband + +http://bugs.gentoo.org/81180 +--- + config.in | 1 + + lib/Makefile | 2 +- + lib/hw.c | 8 +++ + lib/ib.c | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 4 files changed, 157 insertions(+), 1 deletions(-) + create mode 100644 lib/ib.c + +diff --git a/config.in b/config.in +index 2999cd1..da09827 100644 +--- a/config.in ++++ b/config.in +@@ -83,6 +83,7 @@ bool '(Cisco)-HDLC/LAPB support' HAVE_HWHDLCLAPB y + bool 'IrDA support' HAVE_HWIRDA y + bool 'Econet hardware support' HAVE_HWEC y + bool 'Generic EUI-64 hardware support' HAVE_HWEUI64 y ++bool 'InfiniBand hardware support' HAVE_HWIB y + + * + * +diff --git a/lib/Makefile b/lib/Makefile +index f4b5cbd..976ebb8 100644 +--- a/lib/Makefile ++++ b/lib/Makefile +@@ -16,7 +16,7 @@ + # + + +-HWOBJS = hw.o loopback.o slip.o ether.o ax25.o ppp.o arcnet.o tr.o tunnel.o frame.o sit.o rose.o ash.o fddi.o hippi.o hdlclapb.o strip.o irda.o ec_hw.o x25.o eui64.o ++HWOBJS = hw.o loopback.o slip.o ether.o ax25.o ppp.o arcnet.o tr.o tunnel.o frame.o sit.o rose.o ash.o fddi.o hippi.o hdlclapb.o strip.o irda.o ec_hw.o x25.o eui64.o ib.o + AFOBJS = unix.o inet.o inet6.o ax25.o ipx.o ddp.o ipx.o netrom.o af.o rose.o econet.o x25.o + AFGROBJS = inet_gr.o inet6_gr.o ipx_gr.o ddp_gr.o netrom_gr.o ax25_gr.o rose_gr.o getroute.o x25_gr.o + AFSROBJS = inet_sr.o inet6_sr.o netrom_sr.o ipx_sr.o setroute.o x25_sr.o +diff --git a/lib/hw.c b/lib/hw.c +index c714313..fd6ea76 100644 +--- a/lib/hw.c ++++ b/lib/hw.c +@@ -75,6 +75,8 @@ extern struct hwtype ec_hwtype; + + extern struct hwtype eui64_hwtype; + ++extern struct hwtype ib_hwtype; ++ + static struct hwtype *hwtypes[] = + { + +@@ -149,6 +151,9 @@ static struct hwtype *hwtypes[] = + #if HAVE_HWEUI64 + &eui64_hwtype, + #endif ++#if HAVE_HWIB ++ &ib_hwtype, ++#endif + &unspec_hwtype, + NULL + }; +@@ -225,6 +230,9 @@ void hwinit() + #if HAVE_HWEUI64 + eui64_hwtype.title = _("Generic EUI-64"); + #endif ++#if HAVE_HWIB ++ ib_hwtype.title = _("InfiniBand"); ++#endif + sVhwinit = 1; + } + +diff --git a/lib/ib.c b/lib/ib.c +new file mode 100644 +index 0000000..aa3d8f9 +--- /dev/null ++++ b/lib/ib.c +@@ -0,0 +1,147 @@ ++/* ++ * lib/ib.c This file contains an implementation of the "Infiniband" ++ * support functions. ++ * ++ * Version: $Id: 0010-Patch-by-Tom-Duffy-tduffy-sun.com-to-teach-ifconfi.patch,v 1.1 2008/04/14 05:07:39 vapier Exp $ ++ * ++ * Author: Fred N. van Kempen, <waltje@uwalt.nl.mugnet.org> ++ * Copyright 1993 MicroWalt Corporation ++ * Tom Duffy <tduffy@sun.com> ++ * ++ * This program is free software; you can redistribute it ++ * and/or modify it under the terms of the GNU General ++ * Public License as published by the Free Software ++ * Foundation; either version 2 of the License, or (at ++ * your option) any later version. ++ */ ++#include "config.h" ++ ++#if HAVE_HWIB ++#include <sys/types.h> ++#include <sys/socket.h> ++#include <net/if_arp.h> ++#include <linux/if_infiniband.h> ++#include <stdlib.h> ++#include <stdio.h> ++#include <errno.h> ++#include <ctype.h> ++#include <string.h> ++#include <unistd.h> ++#include "net-support.h" ++#include "pathnames.h" ++#include "intl.h" ++#include "util.h" ++ ++extern struct hwtype ib_hwtype; ++ ++ ++/* Display an InfiniBand address in readable format. */ ++static char *pr_ib(unsigned char *ptr) ++{ ++ static char buff[128]; ++ char *pos; ++ unsigned int i; ++ ++ pos = buff; ++ for (i = 0; i < INFINIBAND_ALEN; i++) { ++ pos += sprintf(pos, "%02X:", (*ptr++ & 0377)); ++ } ++ buff[strlen(buff) - 1] = '\0'; ++ ++ /* snprintf(buff, sizeof(buff), "%02X:%02X:%02X:%02X:%02X:%02X", ++ (ptr[0] & 0377), (ptr[1] & 0377), (ptr[2] & 0377), ++ (ptr[3] & 0377), (ptr[4] & 0377), (ptr[5] & 0377) ++ ); ++ */ ++ return (buff); ++} ++ ++ ++/* Input an Infiniband address and convert to binary. */ ++static int in_ib(char *bufp, struct sockaddr *sap) ++{ ++ unsigned char *ptr; ++ char c, *orig; ++ int i; ++ unsigned val; ++ ++ sap->sa_family = ib_hwtype.type; ++ ptr = sap->sa_data; ++ ++ i = 0; ++ orig = bufp; ++ while ((*bufp != '\0') && (i < INFINIBAND_ALEN)) { ++ val = 0; ++ c = *bufp++; ++ if (isdigit(c)) ++ val = c - '0'; ++ else if (c >= 'a' && c <= 'f') ++ val = c - 'a' + 10; ++ else if (c >= 'A' && c <= 'F') ++ val = c - 'A' + 10; ++ else { ++#ifdef DEBUG ++ fprintf(stderr, _("in_ib(%s): invalid infiniband address!\n"), orig); ++#endif ++ errno = EINVAL; ++ return (-1); ++ } ++ val <<= 4; ++ c = *bufp; ++ if (isdigit(c)) ++ val |= c - '0'; ++ else if (c >= 'a' && c <= 'f') ++ val |= c - 'a' + 10; ++ else if (c >= 'A' && c <= 'F') ++ val |= c - 'A' + 10; ++ else if (c == ':' || c == 0) ++ val >>= 4; ++ else { ++#ifdef DEBUG ++ fprintf(stderr, _("in_ib(%s): invalid infiniband address!\n"), orig); ++#endif ++ errno = EINVAL; ++ return (-1); ++ } ++ if (c != 0) ++ bufp++; ++ *ptr++ = (unsigned char) (val & 0377); ++ i++; ++ ++ /* We might get a semicolon here - not required. */ ++ if (*bufp == ':') { ++ if (i == INFINIBAND_ALEN) { ++#ifdef DEBUG ++ fprintf(stderr, _("in_ib(%s): trailing : ignored!\n"), ++ orig) ++#endif ++ ; /* nothing */ ++ } ++ bufp++; ++ } ++ } ++ ++ /* That's it. Any trailing junk? */ ++ if ((i == INFINIBAND_ALEN) && (*bufp != '\0')) { ++#ifdef DEBUG ++ fprintf(stderr, _("in_ib(%s): trailing junk!\n"), orig); ++ errno = EINVAL; ++ return (-1); ++#endif ++ } ++#ifdef DEBUG ++ fprintf(stderr, "in_ib(%s): %s\n", orig, pr_ib(sap->sa_data)); ++#endif ++ ++ return (0); ++} ++ ++ ++struct hwtype ib_hwtype = ++{ ++ "infiniband", NULL, ARPHRD_INFINIBAND, INFINIBAND_ALEN, ++ pr_ib, in_ib, NULL ++}; ++ ++ ++#endif /* HAVE_HWETHER */ +-- +1.5.5 + diff --git a/sys-apps/net-tools/files/1.60_p20071202044231/0011-comabug-gmail.com-writes.patch b/sys-apps/net-tools/files/1.60_p20071202044231/0011-comabug-gmail.com-writes.patch new file mode 100644 index 000000000000..bb751de22ec1 --- /dev/null +++ b/sys-apps/net-tools/files/1.60_p20071202044231/0011-comabug-gmail.com-writes.patch @@ -0,0 +1,140 @@ +From b1c72a13d07b59fc67a7b338fa3969b96af7e67d Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier@gentoo.org> +Date: Mon, 14 Apr 2008 00:47:37 -0400 +Subject: [PATCH] comabug@gmail.com writes: + +net-tools' netstat should have a -W flag like FreeBSD. +There is currently no way to get the full hostname from netstat +for local/remote hostnames. + +http://bugs.gentoo.org/53731 +--- + man/en_US/netstat.8 | 3 +++ + netstat.c | 20 +++++++++++++------- + 2 files changed, 16 insertions(+), 7 deletions(-) + +diff --git a/man/en_US/netstat.8 b/man/en_US/netstat.8 +index e6be46b..9a3ff44 100644 +--- a/man/en_US/netstat.8 ++++ b/man/en_US/netstat.8 +@@ -24,6 +24,7 @@ netstat \- Print network connections, routing tables, interface statistics, masq + .RB [ \-\-all | \-a ] + .RB [ \-\-numeric | \-n ] + .RB [ \-\-numeric-hosts "] [" \-\-numeric-ports "] [" \-\-numeric-users ] ++.RB [ \-\-wide | \-W] + .RB [ \-\-symbolic | \-N ] + .RB [ \-\-extend | \-e [ \-\-extend | \-e] ] + .RB [ \-\-timers | \-o ] +@@ -130,6 +131,8 @@ host or user names. + .SS "\-\-numeric-users" + shows numerical user IDs but does not affect the resolution of host or + port names. ++.SS "\-\-wide , \-W" ++Don't truncate host names. + + .SS "\-\-protocol=\fIfamily \fR, \fB\-A" + Specifies the address families (perhaps better described as low level +diff --git a/netstat.c b/netstat.c +index 843c06b..78bf551 100644 +--- a/netstat.c ++++ b/netstat.c +@@ -150,6 +150,7 @@ int flag_exp = 1; + int flag_prg = 0; + int flag_arg = 0; + int flag_ver = 0; ++int flag_wid = 0; + + FILE *procinfo; + +@@ -780,7 +781,7 @@ static void tcp_do_one(int lnr, const char *line) + get_sname(htons(local_port), "tcp", + flag_not & FLAG_NUM_PORT)); + +- if ((strlen(local_addr) + strlen(buffer)) > 22) ++ if (!flag_wid && ((strlen(local_addr) + strlen(buffer)) > 22)) + local_addr[22 - strlen(buffer)] = '\0'; + + strcat(local_addr, ":"); +@@ -789,7 +790,7 @@ static void tcp_do_one(int lnr, const char *line) + snprintf(buffer, sizeof(buffer), "%s", + get_sname(htons(rem_port), "tcp", flag_not & FLAG_NUM_PORT)); + +- if ((strlen(rem_addr) + strlen(buffer)) > 22) ++ if (!flag_wid && ((strlen(rem_addr) + strlen(buffer)) > 22)) + rem_addr[22 - strlen(buffer)] = '\0'; + + strcat(rem_addr, ":"); +@@ -935,7 +936,7 @@ static void udp_do_one(int lnr, const char *line) + snprintf(buffer, sizeof(buffer), "%s", + get_sname(htons(local_port), "udp", + flag_not & FLAG_NUM_PORT)); +- if ((strlen(local_addr) + strlen(buffer)) > 22) ++ if (!flag_wid && ((strlen(local_addr) + strlen(buffer)) > 22)) + local_addr[22 - strlen(buffer)] = '\0'; + strcat(local_addr, ":"); + strncat(local_addr, buffer, sizeof(local_addr)); +@@ -945,7 +946,7 @@ static void udp_do_one(int lnr, const char *line) + get_sname(htons(rem_port), "udp", flag_not & FLAG_NUM_PORT)); + safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, + flag_not & FLAG_NUM_HOST), sizeof(rem_addr)); +- if ((strlen(rem_addr) + strlen(buffer)) > 22) ++ if (!flag_wid && ((strlen(rem_addr) + strlen(buffer)) > 22)) + rem_addr[22 - strlen(buffer)] = '\0'; + strcat(rem_addr, ":"); + strncat(rem_addr, buffer, sizeof(rem_addr)); +@@ -1059,7 +1060,7 @@ static void raw_do_one(int lnr, const char *line) + flag_not & FLAG_NUM_PORT)); + safe_strncpy(local_addr, ap->sprint((struct sockaddr *) &localaddr, + flag_not & FLAG_NUM_HOST), sizeof(local_addr)); +- if ((strlen(local_addr) + strlen(buffer)) > 22) ++ if (!flag_wid && ((strlen(local_addr) + strlen(buffer)) > 22)) + local_addr[22 - strlen(buffer)] = '\0'; + strcat(local_addr, ":"); + strncat(local_addr, buffer, sizeof(local_addr)); +@@ -1069,7 +1070,7 @@ static void raw_do_one(int lnr, const char *line) + get_sname(htons(rem_port), "raw", flag_not & FLAG_NUM_PORT)); + safe_strncpy(rem_addr, ap->sprint((struct sockaddr *) &remaddr, + flag_not & FLAG_NUM_HOST), sizeof(rem_addr)); +- if ((strlen(rem_addr) + strlen(buffer)) > 22) ++ if (!flag_wid && ((strlen(rem_addr) + strlen(buffer)) > 22)) + rem_addr[22 - strlen(buffer)] = '\0'; + strcat(rem_addr, ":"); + strncat(rem_addr, buffer, sizeof(rem_addr)); +@@ -1531,6 +1532,7 @@ static void usage(void) + fprintf(stderr, _(" --numeric-hosts don't resolve host names\n")); + fprintf(stderr, _(" --numeric-ports don't resolve port names\n")); + fprintf(stderr, _(" --numeric-users don't resolve user names\n")); ++ fprintf(stderr, _(" -W, --wide don't truncate host names\n")); + fprintf(stderr, _(" -N, --symbolic resolve hardware names\n")); + fprintf(stderr, _(" -e, --extend display other/more information\n")); + fprintf(stderr, _(" -p, --programs display PID/Program name for sockets\n")); +@@ -1580,6 +1582,7 @@ int main + {"numeric-hosts", 0, 0, '!'}, + {"numeric-ports", 0, 0, '@'}, + {"numeric-users", 0, 0, '#'}, ++ {"wide", 0, 0, 'W'}, + {"symbolic", 0, 0, 'N'}, + {"cache", 0, 0, 'C'}, + {"fib", 0, 0, 'F'}, +@@ -1595,7 +1598,7 @@ int main + getroute_init(); /* Set up AF routing support */ + + afname[0] = '\0'; +- while ((i = getopt_long(argc, argv, "MCFA:acdegphinNorstuVv?wxl64", longopts, &lop)) != EOF) ++ while ((i = getopt_long(argc, argv, "MCFA:acdegphinWNorstuVv?wxl64", longopts, &lop)) != EOF) + switch (i) { + case -1: + break; +@@ -1651,6 +1654,9 @@ int main + case '#': + flag_not |= FLAG_NUM_USER; + break; ++ case 'W': ++ flag_wid++; ++ break; + case 'N': + flag_not |= FLAG_SYM; + break; +-- +1.5.5 + |