Revision history for Perl extension Proc::ProcessTable. 0.01 Mon Jun 8 11:37:47 1998 - original version; created by h2xs 1.18 0.03 Sun Jul 26 09:07:50 1998 - added argument to va_end to make linux-ppc work 0.04 Fri Aug 14 22:51:31 1998 - preliminary pre-alpha solaris support 0.05 Wed Dec 9 18:47:39 1998 - fixed minor compilation problems for solaris. Changed rss to bytes on linux for consistency with solaris; also added "time" and "ctime" fields to linux for consistency. Updated documentation in Process.pm. Folded in AIX port by David Paquet <firstname.lastname@example.org>. 0.06 Wed Dec 9 23:42:05 1998 - added HPUX port by Mike Romberg <email@example.com>. 0.07 Wed Jan 6 14:57:04 1999 - added FreeBSD port by Slaven Rezic <firstname.lastname@example.org>. 0.08 Thu Feb 4 00:35:53 1999 - Fixed bug in solaris hints file that was looking for a version of solaris returned by "uname -r" as > 2.5, when "uname -r" returns the "SunOS" version of 5.5. Fixed bug in linux module in which only the first field of the command line was getting passed in cmndline attribute. 0.09 Fri Feb 19 23:23:53 1999 - Fixed bug in Linux.c, fopen() called without corresponding fclose. Added empty DESTROY subs to ProcessTable.pm and Process.pm to fix occasional problems with mod_perl. Changed all instances of sv_undef in ProcessTable.xs to PL_sv_undef to comply with new standard. 0.10 Sat Feb 20 11:29:35 1999 - Added code to ProcessTable.xs to check perl patchlevel version and use either PL_sv_undef or sv_undef since lots of people are still using older versions of perl. 0.11 Sat Mar 6 19:04:39 1999 - Fixed code that checked perl patchlevel version to check directly for definition of PL_sv_undef and define it as sv_undef if it's not there, since it's not clear what patchlevel we need to check for. Also fixed embarrassing and unnecessary call to close() a string in Solaris.c 0.12 Sun Mar 21 10:53:56 1999 - Hopefully the final fix for the sv_undef buglet. 0.14 Fri May 14 06:30:15 1999 - Added port for IRIX from W. Phillip Moore <email@example.com> in 0.13, but forgot to add files to MANIFEST and edit Changes (Duh). W. Phillip Moore's port also included a minor patch for Solaris to get the page size from the system. 0.15 Tue Jun 1 21:33:16 1999 - Added patch from Peter ? <firstname.lastname@example.org> for IRIX version differences. There seems to be a lot of IRIX out there. 0.16 Mon Aug 9 22:59:46 1999 - Added nanosecond Solaris patch from Rolf Petter Halle <email@example.com>. Added port for dec_osf from Bernhard Schmalhofer <Bernhard.Schmalhofer@fazi.de>, which included new version of test code as well. Added bsdi port from Sean Eskins <firstname.lastname@example.org>. 0.17 Thu Aug 19 10:57:16 1999 - Lost connection to ISP during upload to PAUSE, and PAUSE won't let me reload it so I have to increment the version number. Kind of annoying. 0.18 Thu Aug 19 10:57:16 1999 - Fixed bug (at least for linux) in Makefile.PL that was causing ProcessTable.xs not to be converted to ProcessTable.c; this was carelessly introduced by me with integration of the port to dec_osf. Added port for netbsd from Peter Reich <email@example.com>. 0.19 Mon Aug 30 00:22:02 1999 - Reinstated 'OBJECT' argument in WriteMakefile in Makefile.PL since it was breaking the build on dec-osf, but this time with explicit object files to look for which seems to work, at least under Linux. Why this should be necessary is unclear. Added "fname" field to HPUX (was "cmd") for consistency with other ports and for new test. Added very basic "README.hpux". Added check in ProcessTable.pm to prune search tree for unreadable directories when finding TTY list; this was causing spurious errors during build on dec_osf since some directories under /dev are readable only by root. 0.20 Wed Sep 8 22:27:28 1999 - Added "fields" method to module to return list of fields supported for the current architecture. This is implemented in a slightly kludgy way, since it needs to call the table method if the table method hasn't been called before, since only the table method knows the names of the fields. Also changed the test code to dump all the fields/values available for the current process table, instead of just dumping pids and "fname" which isn't supported on all architectures (though it should be). Added "example.pl" file which contains the same code. 0.21 Fri Sep 10 12:32:13 1999 - Bug fix; new "fields" method was crapping out on everything except Linux-Intel. 0.22 Tue Oct 5 07:47:54 1999 - Bug fix for Solaris; nanosecond process times are only available on 2.6 (and above?); this was causing the module to dump core on earlier systems. Also, size and rss appear to be in kilobytes, not pages in 2.6 and above (they are in pages in the struct prpsinfo in < 2.6, but also available directly as bytes). 0.23 Mon Nov 1 08:32:54 1999 - Added patch from Dave Alden <firstname.lastname@example.org> for solaris "nice" and "onproc" fields. 0.24 Thu Jan 20 08:00:30 2000 - Added patches from Noel Paul <NoelP@mincom.com> for dec_osf pctcpu and pctmem, and for IRIX for pctmem. 0.25 Thu Feb 3 11:20:27 2000 - Added patch from F. Buirey <email@example.com> for AIX SMP. 0.26 Fri Feb 11 16:43:48 2000 - Added Proc::Killall from Aaraon Sherman <firstname.lastname@example.org>. 0.27 Thu Jun 29 08:27:23 2000 - Added patch for converting jiffies to microseconds in linux from Philip Gwyn <email@example.com>. Added patch from Slaven Rezic <firstname.lastname@example.org> for FreeBSD and to make Storable optional. 0.28 Mon Aug 14 16:31:43 MYT 2000 - Patch from Slaven Rezic <email@example.com> to make test script -w clean. 0.29 Tue Jan 9 07:36:13 EST 2001 - Patch from Wolfgang Friebel <Wolfgang.Friebel@desy.de> for os/HPUX.c to make the time method return useful values. Patch from Adrian Phillips <firstname.lastname@example.org> to fix AIX cmndline field. Patch from Tryggvi Farestveit <email@example.com> to fix bug in cmndline under Linux. Killfam.pm module from Steve Lidie <sol0@Lehigh.EDU>. 0.30 Sun Mar 4 05:05:26 EST 2001 - Patch from David Good <firstname.lastname@example.org> for 32-bit HPUX 11.0 support via the 64-bit interface. Port to Unixware 7.x from Martin Lucina <email@example.com>. Upgraded status to beta :) 0.31 Fri Jun 1 08:27:03 EDT 2001 - Removed bogus test code line from os/Linux.c that was opening "/tmp/tedddi". 0.32 Sun Aug 19 04:45:25 EDT 2001 -SunOS port from Shawn Clifford <firstname.lastname@example.org>. Patch from Thomas Linden <email@example.com> for additional Linux fields. Patch for bsdi from Nicolas Belan <firstname.lastname@example.org> to add cmndline. 0.33 Wed Oct 10 15:50:17 EDT 2001 -Fixed Solaris large file environment problem (by turning off large file environment CCFLAGS!). Patches from Chris Adams <email@example.com> for TTYs with device number(s) zero and Digital Unix table() call to read processes. Added README.taint for workarounds for perl -T. Changed umask for 644 permissions for /tmp/TTYDEVS. 0.34 Sun Feb 24 21:55:07 EST 2002 -Corrected documentation type pointed out by Marcus Crafter <firstname.lastname@example.org>. Fix for JIFFIES_TO_MICROSECONDS potential int overflow on linux from Stephen Pillinger <S.M.Pillinger@cs.bham.ac.uk>. Patch for File::Find routine on AIX (broken POSIX?) from H.Merijn Brand <email@example.com>. Big linux code cleanup patch from Anthony Higa <firstname.lastname@example.org>; I *think* this also fixes the linux-ppc problem reported by Marcus Crafter. 0.35 Mon Jul 1 11:24:43 EDT 2002 -Patch from Thomas Glanzmann <email@example.com> to fix starttime overflow bug on linux. This should also fix multiprocessor starttime bugs. He says there is another overflow after 25 days of uptime though :( Nearly identical patches from Doug Lewis <firstname.lastname@example.org> and Jan L. Peterson <email@example.com> to fix taint problem. Patch from Peter van Hooft <firstname.lastname@example.org> to allow non-root users to list processes on IRIX. 0.36 Tue Nov 5 23:04:12 EST 2002 -Patch for documentation typo for Killfam.pm from Mike Castle <email@example.com>. Patch for AIX v4.2 from James FitzGibbon <firstname.lastname@example.org> to take advantage of newer OS API; this also required addition of a new return type (long-long, specified as "j") to ProcessTable.xs. Patch to add new field "numthr" for number of threads for Solaris from Joseph Cavanaugh <Joseph.Cavanaugh@FMR.COM>. Patch for linux compiler warnings from Marcus Crafter <email@example.com>. Changed HPUX "cmd" field to "cmndline" for consistency with other ports at the suggestion of Craig Cook <cncook@gene.COM>. Windows port via Cygwin from J Robert Ray <firstname.lastname@example.org>. Patch for multithread support under Solaris from Kong Li <Kong.Li@netiq.com>. Patch for File::Find::prune tty mapping buglet from <email@example.com>. Changed behavior of store_ttydev() in ProcessTable.xs to insert an empty string for processes that don't have a tty, instead of having it return undef. I *think* this will fix a problem reported on HPUX by H.Merijn Brand <firstname.lastname@example.org>. Changed ttynums to be treated as unsigned to fix occasional negative ttynum bug reported by Daniel Berger <email@example.com>. 0.37 Fri Nov 8 09:50:56 EST 2002 -Patch from Philip Molter <firstname.lastname@example.org> to fix typo in Solaris.c. 0.38 Fri Dec 6 22:23:20 EST 2002 -Fixed my omission of new AIX files from MANIFEST. Patch from Tim Cutts <email@example.com> for Tru64 clusters. 0.39 Fri Oct 3 11:45:21 MDT 2003 -Project is now hosted on SourceForge. Patch from Aaron Sherman <firstname.lastname@example.org> from rt.cpan.org ticket #2578 to add a warn function ppt_warn() instead of sending errors to stderr; changed linux, bsdi and aix. Added ppt_croak and updated PORTING docs. Added port to Darwin from Tom Wyant <email@example.com>. Added port to Nonstop-UX from Mike Steinert <firstname.lastname@example.org>. Patch from James.FitzGibbon <James.FitzGibbon@target.com> for AIX 5.1 command line args. Added note to README.dec_osf that root access is required. 0.40 Sun Jul 10 19:10:16 MDT 2005 -Added patch for support of FreeBSD-5 via kvm from Oleg King <email@example.com>. Added contrib directory and pswait script from dominix <firstname.lastname@example.org>. Patch from Steve Linn <email@example.com> to handle processes larger than 2GB. Added jiffies-to-microseconds patch for linux from Jason A. Smith <firstname.lastname@example.org>. Added patch from rt.cpan.org ticket #12951 to fix Solaris 8 with multi-threaded Perl where readdir_r is defined differently for POSIX compiles. Patch for misreport of PID in cygwin (rt.cpan.org ticket #12840). Fix for FC4 gcc-4 buffer overrun complaint. 0.41 Fri Jun 30 22:04:43 MDT 2006 -Port to openbsd from <email@example.com>. Fix for EOVERFLOW in HPUX 11.11 from <firstname.lastname@example.org> (rt.cpan.org ticket #18932). Module now requires perl 5.6 as suggested by <email@example.com> (rt.cpan.org ticket #15279). Patches from <firstname.lastname@example.org> for killall to use fname if cmndline is not defined and rename PID_ZOMBIE to PID_ORPHANED under cygwin (rt.cpan.org ticket #14837, #14836). Fixed empty pctmem bug on linux due to change in format of /proc/meminfo (hopefully this format is stable now??). 0.42 Fri Jan 25 22:29:00 MST 2008 -Patch to fix PROC_FS define in Solaris 5.10 from jlv <email@example.com>; patch to replace kinfo array and use KINFO structure on darwin. Patch from Steve Linn <firstname.lastname@example.org> for x86_64 linux. Shortened test code so it only shows info for current process. 0.43 Thu Jul 17 20:59:23 MDT 2008 -Changed 'my $TTYDEVSFILE;' to 'our' to permit multiple versions of perl (rt.cpan.org bug ID 37722); fixed up include file order in os/Linux.h so module will build on OpenSuse 11 per request of Steve Linn <email@example.com>; fixed warning under perl 5,10 (rt.cpan.org bug ID 36666); fixes for numerous problems on darwin from Tom Wyant <firstname.lastname@example.org> (rt.cpan.org bug IDs 24331, 32761, and 33698); fix for ARG_MAX dynamic configuration in os/Linux.h (rt.cpan.org bug ID 36283). 0.44 Fri Jul 25 08:25:52 MDT 2008 -Patch from Tom Wyant <email@example.com> for darwin issues that didn't make it into 0.43. 0.45 Mon Sep 8 09:13:14 MDT 2008 -Patch from Milosz Tanski <firstname.lastname@example.org> to make module thread-safe on linux (rt.cpan.org ID 38709). Patch from Scott Davis <email@example.com> for new constructor flag enable_ttys, which when set to 0 disables traversing the device tree. 0.46 Fri, Oct 19 2012 -Initial release by new maintainer jswartz, identical to 0.45 except for meta files and README 0.47 16 Feb. 2013 -Initial releas by new maintainer jwb. Incorporated meta file updates from Jonathan Swartz <firstname.lastname@example.org>. Closed a bunch of bugs: Patch from Christian Boitel <email@example.com> (fixes #51470); added suggestion from Opera Wang <Opera.Wang@synopsys.com> (fixes #51470 even more); patches from Michael Schilli (MSCHILLI) (fix #41397, #46861 and #58236), work on perl w/o threads; pulled commits from Slaven Rezić <SREZIC@cpan.org>, use kvm implementation for FreeBSD >= 6.0 (closes #68405 and #16978); fixed bug #69397, fh not closed; fixed RT #72862, unsafe use of /tmp; added tests; 0.48 -Pulled commits from Chris Williams <firstname.lastname@example.org>, fixes build errors on NetBSD and OpenBSD. Fixed #72862 (byte order tag in cache file), applied patch to fix #67224 (cygwin PID_ORPHANED) by <rurban at x-ray.at>. Pulled FreeBSD patches from Slaven Rezić <SREZIC@cpan.org>; Pulled from David Zaebst <email@example.com>): Fixes to stay accurate on machines with many cpus (#82175), to include system time into calculations (#80391) and others (#81312, #82175 and #80391) and to fix unknown process states for debian kernels #71976. Tried to get it compiling under MidnightBSD. 0.49 -Fixed #61946 (odd process names), solution by Bernd Kallies. Fixed #48445, patch from Guillaume Rousse. Pulled fixes from Opera Wang. Fixed typos discovered by Salvatore Bonaccorso, David Steinbrunner and HMBRAND. Fixed #89117, patch from yyang. Got it (hopefully) running under kfreebsd. 0.50 - Added hint file for gnukfreebsd. 0.51 - Fixed #65347 (installation hangs on AIX), patch from Rainer Tammer; Fixed #99163 (segfault from canonicalize_file_name), pulled patch from Borislav Nikolov.