--- procinfo-2.0.304.orig/debian/watch
+++ procinfo-2.0.304/debian/watch
@@ -0,0 +1,3 @@
+version=3
+
+http://sf.net/procinfo-ng/procinfo-ng-(.*)\.tar\.bz2
--- procinfo-2.0.304.orig/debian/compat
+++ procinfo-2.0.304/debian/compat
@@ -0,0 +1 @@
+7
--- procinfo-2.0.304.orig/debian/dirs
+++ procinfo-2.0.304/debian/dirs
@@ -0,0 +1 @@
+usr/bin
--- procinfo-2.0.304.orig/debian/README.Debian
+++ procinfo-2.0.304/debian/README.Debian
@@ -0,0 +1,13 @@
+procinfo for Debian
+-------------------
+
+Procinfo contain also two script, lsdev and socklist
+
+Lsdev is a Perl script that attempts to tabulate DMA, IRQ and I/O port
+allocation per kernel driver.
+
+Socklist is a Perl script that gives you a list of all open sockets,
+enumerating types, port, inode, uid, pid, fd and the program to which
+it belongs. Contributed by Larry Doolittle <ldoolitt@jlab.org>.
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it>  Tue, 20 Aug 2008 14:36:41 +0200
--- procinfo-2.0.304.orig/debian/copyright
+++ procinfo-2.0.304/debian/copyright
@@ -0,0 +1,43 @@
+This package was debianized by Giuseppe Iuculano <giuseppe@iuculano.it> on
+Fri, 01 Aug 2008 15:38:59 +0200.
+
+It was downloaded from:
+	http://sourceforge.net/project/showfiles.php?group_id=195336
+
+Upstream Author: Thaddeus Messenger <tabrisnet@users.sourceforge.net>
+
+Copyright: Copyright (C) 2008 Thaddeus Messenger
+
+License:
+
+    This package 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; version 2 of the License
+ 
+    This package is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+ 
+    You should have received a copy of the GNU General Public License
+    along with this package; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+On Debian systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL-2'.
+
+The Debian packaging is © 2008, Giuseppe Iuculano <giuseppe@iuculano.it> and
+is licensed under the GPL version 2, see `/usr/share/common-licenses/GPL-2'.
+
+The source packages contains also:
+
+routines.cpp, timeRoutines.cpp, prettyPrint.cpp:
+	Copyright (C) 2008 Thaddeus Messenger
+	routines.cpp, timeRoutines.cpp, prettyPrint.cpp are free software;
+	you can redistribute it and or modify it under the terms of the GNU
+	Lesser General Public.
+	License as published by the Free Software Foundation; version 2.1.
+
+	On Debian systems, the complete text of the GNU Lesser General Public
+	License	can be found in `/usr/share/common-licenses/LGPL-2.1'.
+
--- procinfo-2.0.304.orig/debian/install
+++ procinfo-2.0.304/debian/install
@@ -0,0 +1,4 @@
+debian/procinfo-old/lsdev usr/bin
+debian/procinfo-old/lsdev.8 usr/share/man/man8
+debian/procinfo-old/socklist usr/bin
+debian/procinfo-old/socklist.8 usr/share/man/man8
--- procinfo-2.0.304.orig/debian/changelog
+++ procinfo-2.0.304/debian/changelog
@@ -0,0 +1,254 @@
+procinfo (1:2.0.304-1.11.201403270705) ucs4-0-0-0; urgency=low
+
+  * UCS auto build. No patches were applied to the original source package
+
+ -- Univention builddaemon <buildd@univention.de>  Thu, 27 Mar 2014 07:05:15 +0100
+
+procinfo (1:2.0.304-1) unstable; urgency=low
+
+  * [9413c06] New Upstream Version 2.0.304
+  * [8a7a2a3] debian/rules: use dh_prep instead of deprecated dh_clean -k
+  * [4298336] Updated to standards version 3.8.1 (No changes needed)
+  * [86e266b] debian/control: Added Homepage, DM-Upload-Allowed, and Vcs
+    control fields
+  * [0a8b833] debian/copyright: refer to /usr/share/common-licenses/GPL-2,
+    not /GPL.
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it>  Sun, 03 May 2009 23:34:49 +0200
+
+procinfo (1:2.0.217-1) unstable; urgency=low
+
+  * New upstream release
+    + kernel 2.6.24 added another column (actually, 2 columns) to /proc/stat,
+      and the position of cpuTotals in the vector was expected to be fixed
+      (Closes: #496023)
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it>  Fri, 22 Aug 2008 09:44:56 +0200
+
+procinfo (1:2.0.208-1) unstable; urgency=low
+
+  * New Upstream release (Closes: #492780), this is the new procinfo-ng
+    (Closes: #492780)
+    This version fixes:
+    + 32-bit wraparound (Closes: #285880)
+    + Times do not display on Alpha (Closes: #391420)
+    + reports gcc [can't parse] (Closes: #402620)
+    + Reports out by 10x; disk duplicated (Closes: #355623)
+    + garbles numbers on AMD64 (Closes: #379592)
+    + segfaults at fresh amd64 etch install (Closes: #421924)
+    + displays improper amount of context switches (Closes: #99827)
+    + shows non-existent disks (Closes: #99828)
+    + procinfo misses the second hard drive (Closes: #265131)
+    + unable to parse GCC version with GCC 3.3. (Closes: #247039)
+  * New maintainer, thanks to Antonio José Calderón for the prior work on
+    procinfo
+  * Bump epoch
+
+ -- Giuseppe Iuculano <giuseppe@iuculano.it>  Wed, 20 Aug 2008 09:45:06 +0200
+
+procinfo (18-2) unstable; urgency=low
+
+  * New maintainer (closes: #384633).
+
+ -- Antonio José Calderón <neo@neocalderon.net>  Wed, 10 Jan 2007 01:09:24 -0500
+
+procinfo (18-1) unstable; urgency=low
+
+  * The sysutils package previously contained the utilities
+    - memtester
+    - procinfo
+    - tofrodos
+    - bogomips
+    Except for the latter they are all split out into a separate package
+    now as those utilities are fairly disconnected. This will eventually
+    fix bug#253302.
+    bogomips will be just dropped, use "cat /proc/cpuinfo | grep ^bogo"
+    instead.
+  * debian/watch: added
+
+ -- Florian Ernst <florian@debian.org>  Thu, 29 Dec 2005 15:07:00 +0100
+
+sysutils (2.0.0-1) unstable; urgency=low
+
+  * A plethora of changes, so jumping to version 2.0.0 for now
+  * New maintainer, taking over with the previous maintainer's consent
+    + changing to non-native packaging for the time being
+    + follow current standards / best practices
+      - make sure the package includes a Section header (Closes: #226303)
+      - correct copyright reference and manpage placement (Closes: #127123)
+      - extend / clarify long description, thanks to Justin B Rye
+        (Closes: #332818)
+      - drop legacy Conflicts and Replaces that were once necessary for Potato
+    + using dpatch for any in-package adjustments
+  * New upstream releases of most subparts (Closes: #340153), like
+    + bogomips updated to 1.4.1
+      - supposedly doesn't just fail on error (Closes: #198757)
+    + memtester updated to 4.0.5
+      - doesn't segfault anymore on a 2.6 kernel (Closes: #287611)
+      - rewritten to be 64-bit clean (Closes: #126776)
+      - can be run as non-root user, thus allows special tests
+        (Closes: #259425), so also moving to /usr/bin
+    + tofrodos updated to 1.7.6 (Closes: #306191)
+      - dos2unix errors now go to stderr, not stdout (Closes: #140956)
+      - dos2unix now behaves as expected (Closes: #149116)
+      - clarifies symlinks (Closes: #180723)
+      - corrects -d and -u explanation in manpage (Closes: #177874)
+  * Further changes:
+    + procinfo:
+      - add 41_procinfo_use_HZ_from_kernel.dpatch, thanks to Guus Sliepen
+        (Closes: #94337)
+      - add 42_procinfo_paging_swap_disk_statistics_on_2.6.dpatch and
+        43_procinfo_fix_CPU_percentage_display_on_2.6.dpatch, thanks to
+        Arkadi Shishlov for the pointer and patch (Closes: #293429, #266589);
+        this combined with 48_procinfo_simplify_counting_CPUs.dpatch allows
+        procinfo to add up correctly on sparc, thanks to Peter Hunter
+        (Closes: #174645)
+      - add 44_procinfo_extend_load_average_in_manpage.dpatch, thanks to
+        Kingsley G. Morse Jr. (Closes: #153946)
+      - add 45_procinfo_prevent_buffer_overflows.dpatch, thanks to Benoit
+        Dejean (Closes: #319980)
+      - reinclude socklist utility, even though better alternatives such as
+        lsof exist (Closes: #161237)
+      - add 46_procinfo_manpage_typo.dpatch, thanks to A Costa
+        (Closes: #305960)
+    + tofrodos:
+      - correct one typo in manpage, the others are actually correct, by
+        adding 61_tofrodos_manpage_typo.dpatch (Closes: #305959)
+    + debian/copyright: updated according to changes
+    + debian/{postinst,prerm}: removed, not needed anymore; thus finally
+      finishing the /usr/doc transition (Closes: #320084, #322798)
+    + debian/sysutils.1: clarified (Closes: #305961)
+
+ -- Florian Ernst <florian@debian.org>  Wed, 23 Nov 2005 22:51:49 +0100
+
+sysutils (1.3.8.5.1) unstable; urgency=low
+
+  * Non-maintainer upload, with the maintainer's permission.
+  * Install /usr/doc symlink in the postinst and remove it in the prerm,
+    rather than directly in the .deb (closes: #120025, #124304).
+  * Call dh_clean in debian/rules' clean target.
+  * Add 'Section: utils' to control file.
+
+ -- Colin Watson <cjwatson@debian.org>  Fri, 11 Jan 2002 02:14:29 +0000
+
+sysutils (1.3.8.5) unstable; urgency=low
+
+  * Fixed missing /usr/doc symlink (closes: bug#96211)
+
+ -- Lonnie Sauter <sauter@debian.org>  Thu, 03 May 2001 15:41:07 -0600
+
+sysutils (1.3.8.4) unstable; urgency=low
+
+  * Fixed missing debhelper in Build-Depends (closes: bug#92267)
+  * New version of procinfo 18
+
+ -- Lonnie Sauter <sauter@debian.org>  Sun, 22 Apr 2001 15:41:07 -0600
+
+sysutils (1.3.8.3) unstable; urgency=low
+
+  * Fixed missing depends (closes: bug#93611)
+
+ -- Lonnie Sauter <sauter@debian.org>  Sat, 7 Apr 2001 15:41:07 -0600
+
+sysutils (1.3.8.2) unstable; urgency=low
+
+  * Fixed missing build depends in source package (closes: bug#92267)
+
+ -- Lonnie Sauter <sauter@debian.org>  Sat, 7 Apr 2001 15:41:07 -0600
+
+sysutils (1.3.8.1) stable; urgency=low
+
+  * New version of memtester (2.93.1)
+  * Fix typo in package description (closes: bug#74065)
+    Patch received from Raphael Manfredi <Raphael_Manfredi@pobox.com>
+
+ -- Lonnie Sauter <sauter@debian.org>  Thu, 1 Nov 2000 15:41:07 -0400
+
+sysutils (1.3.7.2) unstable; urgency=low
+
+  * patch to fix running "procinfo -d" on SMP kernels.
+    Patch received from Raphael Manfredi <Raphael_Manfredi@pobox.com>
+
+ -- Lonnie Sauter <sauter@debian.org>  Thu, 4 May 2000 15:41:07 -0400
+
+sysutils (1.3.7.1) unstable; urgency=low
+
+  * patch to fix SIGILL in procinfo on alpha/sparc/etc (closes: bug#46144).
+    Patch received from Jason Gunthorpe <jgg@auric.debian.org>.
+
+ -- Lonnie Sauter <sauter@debian.org>  Sat, 5 Feb 2000 15:41:07 -0400
+
+sysutils (1.3.7) unstable; urgency=low
+
+  * New version of memtest (closes: bug#52062)
+
+ -- Lonnie Sauter <sauter@debian.org>  Sun, 9 Jan 2000 15:41:07 -0400
+
+sysutils (1.3.6.2) unstable; urgency=low
+
+  * I just took over this package.
+
+ -- Lonnie Sauter <sauter@debian.org>  Sun, 9 Jan 2000 15:41:07 -0400
+
+sysutils (1.3.6.1) unstable; urgency=low
+
+  * Orphaned.  I only ever took it because it needed to be moved to
+    the new packaging scheme.  I don't use it.  I don't even have it
+    installed.
+
+ -- Michael Alan Dorman <mdorman@debian.org>  Sun, 10 Oct 1999 15:41:07 -0400
+
+sysutils (1.3.6) unstable; urgency=low
+
+  * Corrected perl dependency (closes: bug#41489, bug#41401)
+
+ -- Michael Alan Dorman <mdorman@debian.org>  Mon, 19 Jul 1999 09:44:42 -0400
+
+sysutils (1.3.5) unstable; urgency=low
+
+  * New version of procinfo. (closes: bug#37794, bug#36468, bug#33924)
+  * Perms bugs taken care of (closes: bug#36831) 
+  * Last update also corrected problems with absolute file names (closes: bug#29747)
+
+ -- Michael Alan Dorman <mdorman@debian.org>  Sun, 11 Jul 1999 16:24:24 -0400
+
+sysutils (1.3.4) unstable; urgency=low
+
+  * Close old fixed bug (closes: bug#5989)
+  * Close old fixed bug (closes: bug#7682)
+  * Code in procinfo should cope with no /proc/modules (closes: bug#13515)
+  * Updated procinfo (closes: bug#29392)
+  * Corrected description of included packages (closes: bug#30125)
+  * procinfo update prints all irqs (closes: bug#31036)
+  * tofrodos does work (closes: bug#33535)
+  * tofrodos now has switch to preserve ownership (closes: bug#35172)
+
+ -- Michael Alan Dorman <mdorman@debian.org>  Mon, 29 Mar 1999 14:02:41 -0500
+
+sysutils (1.3.3) unstable; urgency=low
+
+  * New release.
+  * Correct package description. (Bug#10375,18966)
+  * Update version of procinfo to latest. (Bug#12079,18269,19929,23010)
+  * Correct extention of manpage symlinks.  (Bug#18562,24952)
+  * Correct declaration of argv in memtest.  (Bug#23581)
+
+ -- Michael Alan Dorman <mdorman@debian.org>  Sun,  1 Nov 1998 14:59:59 -0500
+
+sysutils (1.3.2) unstable; urgency=low
+
+  * New release corrected a couple of debian/rules issues.
+
+ -- Michael Alan Dorman <mdorman@debian.org>  Sun, 17 Dec 2017 03:53:58 -0500
+
+sysutils (1.3.1) unstable; urgency=low
+
+  * Nonmaintainerrelease for libc6
+
+ -- Christoph Lameter <clameter@debian.org>  Thu, 13 Nov 1997 10:45:08 +0000
+
+sysutils (1.3) unstable; urgency=low
+
+  * New packaging scheme instituted
+
+ -- Michael Alan Dorman <mdorman@debian.org>  Fri,  4 Jul 1997 20:57:19 -0400
--- procinfo-2.0.304.orig/debian/control
+++ procinfo-2.0.304/debian/control
@@ -0,0 +1,19 @@
+Source: procinfo
+Section: utils
+Priority: optional
+Maintainer: Giuseppe Iuculano <giuseppe@iuculano.it>
+Build-Depends: debhelper (>= 7), autotools-dev, libncurses5-dev
+Standards-Version: 3.8.1
+Homepage: http://procinfo-ng.sourceforge.net
+Vcs-Git: git://git.debian.org/git/users/derevko-guest/procinfo.git
+Vcs-Browser: http://git.debian.org/?p=users/derevko-guest/procinfo.git
+DM-Upload-Allowed: yes
+
+Package: procinfo
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Provides: procinfo-ng
+Description: reporter for system information from /proc and /sys
+ Procinfo-NG is a small program that gathers some system information from
+ diverse files under /proc and /sys and prints it to the screen.
+ Procinfo-NG is a complete rewrite of the old system monitoring app procinfo.
--- procinfo-2.0.304.orig/debian/rules
+++ procinfo-2.0.304/debian/rules
@@ -0,0 +1,78 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
+CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
+else
+CROSS= --build $(DEB_BUILD_GNU_TYPE)
+endif
+
+
+config.status: configure
+	dh_testdir
+ifneq "$(wildcard /usr/share/misc/config.sub)" ""
+	cp -f /usr/share/misc/config.sub config.sub
+endif
+ifneq "$(wildcard /usr/share/misc/config.guess)" ""
+	cp -f /usr/share/misc/config.guess config.guess
+endif
+	./configure $(CROSS) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"
+
+
+build: build-stamp
+
+build-stamp:  config.status
+	dh_testdir
+	$(MAKE)
+	touch $@
+
+clean: 
+	dh_testdir
+	dh_testroot
+	rm -f build-stamp 
+	[ ! -f Makefile ] || $(MAKE) distclean
+	rm -f config.sub config.guess
+	dh_clean 
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_prep
+	dh_installdirs
+	$(MAKE) prefix=$(CURDIR)/debian/procinfo/usr install
+
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs 
+	dh_installdocs
+	dh_installexamples
+	dh_install
+	dh_installman
+	dh_link
+	dh_strip
+	dh_compress
+	dh_fixperms
+	dh_makeshlibs
+	dh_installdeb
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install 
--- procinfo-2.0.304.orig/debian/procinfo-old/lsdev
+++ procinfo-2.0.304/debian/procinfo-old/lsdev
@@ -0,0 +1,65 @@
+#!/usr/bin/perl
+#
+#	lsdev.pl
+#
+#	Created by Sander van Malssen <svm@ava.kozmix.cistron.nl>
+#
+#	Date:        1996-01-22 19:06:22
+#	Last Change: 1998-05-31 15:26:58
+#
+# $Id: lsdev.pl,v 1.5 1999/05/15 22:16:03 svm Exp $
+#
+
+# MAIN #######################################################################
+
+open (IRQ, "</proc/interrupts") || die "can't open /proc/interrupts";
+while (<IRQ>) {
+    next if /^[ \t]*[A-Z]/;
+    chop;
+    if (/PIC/) {
+	$n = (@line = split());
+    } else {
+	$n = (@line = split(' [ +] '));
+    }
+    $name = $line[$n-1];
+    $device{$name} = $name;
+    @tmp = split(':', $line[0]);
+    $tmp0 = int($tmp[0]);
+    $irq{$name} = "$irq{$name} $tmp0";
+}
+close (IRQ);
+
+open (DMA, "</proc/dma") || die "can't open /proc/dma";
+while (<DMA>) {
+    chop;
+    @line = split(': ');
+    @tmp = split (/[ \(]/, $line[1]);
+    $name = $tmp[0];
+    $device{$name} = $name;
+    $dma{$name} = "$dma{$name}$line[0]";
+}
+close (DMA);
+
+open (IOPORTS, "</proc/ioports") || die "can't open /proc/ioports";
+while (<IOPORTS>) {
+    chop;
+    @line = split(' : ');
+    @tmp = split (/[ \(]/, $line[1]);
+    $name = $tmp[0];
+    $device{$name} = $name;
+    $port{$name} = "$port{$name} $line[0]";
+}
+close (IOPORTS);
+
+printf ("%-16s %4s%6s %s\n------------------------------------------------\n",
+	"Device", "DMA", "IRQ", " I/O Ports");
+
+foreach $name (sort { uc($a) cmp uc($b) } keys %device) {
+    printf ("%-16s %4s%6s %s\n",
+	    $name, $dma{$name}, $irq{$name}, $port{$name});
+}
+
+# The End ####################################################################
+
+# Local variables:
+# rm-trailing-spaces: t
--- procinfo-2.0.304.orig/debian/procinfo-old/lsdev.8
+++ procinfo-2.0.304/debian/procinfo-old/lsdev.8
@@ -0,0 +1,66 @@
+.TH LSDEV 8 "1998-05-31" "3rd Release" "Linux System Manual"
+
+.SH NAME
+lsdev \- display information about installed hardware
+
+.SH SYNOPSIS
+.B lsdev
+
+.SH DESCRIPTION
+.B lsdev
+gathers information about your computer's installed hardware from the
+.B interrupts,
+.B ioports
+and
+.B dma
+files in the
+.B /proc
+directory, thus giving you a quick overview of which hardware uses
+what I/O addresses and what IRQ and DMA channels.
+
+.SH OPTIONS
+None.
+
+.SH FILES
+.TP
+.BI /proc/interrupts
+IRQ channels.
+
+.TP
+.BI /proc/ioports
+I/O memory addresses.
+
+.TP
+.BI /proc/dma
+DMA channels.
+
+.SH BUGS
+.B lsdev
+can't always figure out which lines in the three examined files refer
+to one and the same device, because these files sometimes use
+different names for the same piece of hardware. For example, in some
+kernels the keyboard is referred to as `kbd' in
+.B /proc/ioports
+and as `keyboard' in
+.B /proc/interrupts.
+This should be fixed in the kernel, not in 
+.B lsdev
+(as has indeed happened for this particular example).
+
+The program does however try to match lines by stripping anything
+after a space or open parenthesis from the name, so that e.g. the
+`serial' lines from 
+.B /proc/interrupts
+match the `serial(set)' lines from
+.B /proc/ioports.
+This attempt at DWIM might be considered a bug in itself.
+
+This program only shows the kernel's 
+.BI idea
+of what hardware is present, not what's actually physically available.
+
+.SH SEE ALSO
+procinfo(8).
+
+.SH AUTHOR
+Sander van Malssen <svm@kozmix.cistron.nl>
--- procinfo-2.0.304.orig/debian/procinfo-old/socklist.8
+++ procinfo-2.0.304/debian/procinfo-old/socklist.8
@@ -0,0 +1,43 @@
+.TH SOCKLIST 8 "1998-02-09" "1st Release" "Linux System Manual"
+
+.SH NAME
+socklist \- display list of open sockets
+
+.SH SYNOPSIS
+.B socklist
+
+.SH DESCRIPTION
+
+.B socklist
+is a Perl script that gives you a list of all open sockets,
+enumerating types, port, inode, uid, pid, fd and the program to which
+it belongs.
+
+.SH OPTIONS
+None.
+
+.SH FILES
+.TP
+.BI /proc/*/fd/*
+File descriptors.
+
+.TP
+.BI /proc/net/tcp
+List of TCP sockets.
+
+.TP
+.BI /proc/net/udp
+List of UDP sockets.
+
+.TP
+.BI /proc/net/raw
+List of raw sockets.
+
+.SH BUGS
+None as yet.
+
+.SH SEE ALSO
+procinfo(8), netstat(8).
+
+.SH AUTHOR
+Larry Doolittle <ldoolitt@jlab.org>
--- procinfo-2.0.304.orig/debian/procinfo-old/socklist
+++ procinfo-2.0.304/debian/procinfo-old/socklist
@@ -0,0 +1,98 @@
+#!/usr/bin/perl
+
+# socklist
+# Simple and effective substitute for "lsof" for Linux with a proc filesystem.
+# Standard permissions on the proc filesystem make this program only
+# useful when run as root.
+
+# Larry Doolittle <ldoolitt@jlab.org>
+# September 1997
+
+# example output (with # added given the context of a perl program):
+#
+# type  port      inode     uid    pid   fd  name
+# tcp   1023     394218     425  23333    3  ssh
+# tcp   1022     394166     425  23312    3  ssh
+# tcp   6000     387833     313   3942    0  X
+# tcp   2049      81359       0  13296    4  rpc.nfsd
+# tcp    745      81322       0  13287    4  rpc.mountd
+# tcp    111      81282       0  13276    4  portmap
+# tcp     22      26710       0   7372    3  sshd
+# tcp     25      25902       0    156   18  inetd
+# tcp     80      20151       0   2827    4  boa-0.92
+# tcp     23       2003       0    156    5  inetd
+# udp    620     855681       0      0    0  
+# udp    655     394445       0      0    0  
+# udp   2049      81356       0  13296    3  rpc.nfsd
+# udp    743      81319       0  13287    3  rpc.mountd
+# udp    111      81281       0  13276    3  portmap
+# udp    707       2776       0      0    0  
+# udp    514       1861       0    124    1  syslogd
+# raw      1          0       0      0    0  
+#
+# It appears that each NFS mount generates an open udp port, which
+# is not associated with any process.  This is the origin of those
+# mysterious ports 620, 655, and 707 above.  I still don't understand
+# the meaning of raw port 1.
+
+# part 1: scan through the /proc filesystem building up
+# a list of what processes own what network "inodes".
+# result is associative array %sock_proc.
+
+opendir (PROC, "/proc") || die "proc";
+for $f (readdir(PROC)) {
+    next if (! ($f=~/[0-9]+/) );
+    if (! opendir (PORTS, "/proc/$f/fd")) {
+        # print "failed opendir on process $f fds\n";
+        closedir PORTS;
+        next;
+    }
+    for $g (readdir(PORTS)) {
+        next if (! ($g=~/[0-9]+/) );
+        $r=readlink("/proc/$f/fd/$g");
+
+# 2.0.33: [dev]:ino 
+#	($dev,$ino)=($r=~/^\[([0-9a-fA-F]*)\]:([0-9]*)$/);
+# 2.0.78: socket:[ino]
+#	($dev,$ino)=($r=~/^(socket):\[([0-9]*)\]$/);
+# -svm-
+	($dev,$ino)=($r=~/^(socket|\[[0-9a-fA-F]*\]):\[?([0-9]*)\]?$/);
+
+        # print "$f $g $r DEV=$dev INO=$ino\n";
+        if ($dev == "[0000]" || $dev == "socket") {$sock_proc{$ino}=$f.":".$g;}
+    }
+    closedir PORTS;
+}
+closedir PROC;
+
+# exit;
+
+# for $a (keys(%sock_proc)) {print "$a $sock_proc{$a}\n";}
+
+# part 2: read /proc/net/tcp, /proc/net/udp, and /proc/net/raw,
+# printing the answers as we go.
+
+print "type  port      inode     uid    pid   fd  name\n";
+sub scheck {
+    open(FILE,"/proc/net/".$_[0]) || die;
+    while (<FILE>) {
+        @F=split();
+        next if ($F[9]=~/uid/);
+        @A=split(":",$F[1]);
+        $a=hex($A[1]);
+        ($pid,$fd)=($sock_proc{$F[9]}=~m.([0-9]*):([0-9]*).);
+        $cmd = "";
+        if ($pid && open (CMD,"/proc/$pid/status")) {
+           $l = <CMD>;
+           ($cmd) = ( $l=~/Name:\s*(\S+)/ );
+           close(CMD);
+	}
+        printf "%s %6d %10d  %6d %6d %4d  %s\n",
+            $_[0], $a ,$F[9], $F[7], $pid, $fd, $cmd;
+    }
+    close(FILE);
+}
+
+scheck("tcp");
+scheck("udp");
+scheck("raw");
