Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 6 Aug 2011 22:39:10 -0700 (PDT)
From:      Douglas William Thrift <douglas@douglasthrift.net>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/159574: Update port: sysutils/psmisc Upgrade to 22.14
Message-ID:  <201108070539.p775d7wb061949@slowhand.douglasthrift.net>
Resent-Message-ID: <201108070540.p775e9Tq075716@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         159574
>Category:       ports
>Synopsis:       Update port: sysutils/psmisc Upgrade to 22.14
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Aug 07 05:40:09 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator:     Douglas William Thrift
>Release:        FreeBSD 8.2-RELEASE-p2 amd64
>Organization:
>Environment:
System: FreeBSD justonenight.douglasthrift.net 8.2-RELEASE-p2 FreeBSD 8.2-RELEASE-p2 #3: Sat May 28 04:53:38 PDT 2011 root@justonenight.douglasthrift.net:/usr/obj/usr/src/sys/FURTHERONUPTHEROAD amd64
>Description:
Upgraded sysutils/psmisc from 22.13 to 22.14. Fixed the -u/--user option of
killall to actually work. Made portlint happy. From ChangeLog:

Changes in 22.14
================
  * Fix file descriptor as weel as memory leaks in fuser
	* Strip @ symbol from file names read from /proc/net/unix
	* Above 2 changes close openSuSE bugs #536209, #529520, and #417841
	  and provided by Werner Fink
	* Applied patch from Werner Fink to avoid stat(2) on NFS mounts
	* Zeros process group memory - Patch by jgorig SF#3152925 RH#666213
	* fuser -m -s flags work - Patch by jgorig SF#31110178 RH#651794
	* fuser silent if /proc/swaps not available SF#3072134
	* ppc 64 support for peekfd by jgorig SF#3166444
	* jiffies now ULL in killall SF#3138538
	* pstree can show parents of a process. Patch supplied by Curtis
	  Hawthorne SF#3135157
	* killall creates right size buffer instead of MAX_PATH Debian #623425
	* check for /proc/$$/stat not /proc/self/stat which is not available
	  on hurd platforms. Same Debian bug as above
	* fuser understands IPv6 addresses, removed comment in fuser.1 that it
	  doesn't Debian #609904
	* fuser -k only returns 0 if you kill something.
	* fuser doesn't complain if /proc/#/fd disappears SF#3310990
>How-To-Repeat:
>Fix:
--- psmisc.patch begins here ---
diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/Makefile psmisc/Makefile
--- /usr/ports/sysutils/psmisc/Makefile	2010-10-05 22:58:11.000000000 -0700
+++ psmisc/Makefile	2011-08-06 22:32:59.138989182 -0700
@@ -6,19 +6,19 @@
 #
 
 PORTNAME=	psmisc
-PORTVERSION=	22.13
+PORTVERSION=	22.14
 CATEGORIES=	sysutils
 MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/
 
 MAINTAINER=	douglas@douglasthrift.net
 COMMENT=	A port of the Linux pstree, killall and pidof commands
 
+LICENSE=	GPLv2
+
 BUILD_DEPENDS=	gsed:${PORTSDIR}/textproc/gsed
 
 CONFLICTS=	pidof-[0-9]* pstree-2.[0-9]*
 
-LICENSE=	GPLv2
-
 GNU_CONFIGURE=	yes
 USE_GMAKE=	yes
 
@@ -34,9 +34,6 @@
 .else
 USE_GETTEXT=	yes
 CONFIGURE_ARGS=	--enable-nls
-CPPFLAGS+=	-I${LOCALBASE}/include
-LDFLAGS+=	-L${LOCALBASE}/lib
-CONFIGURE_ENV+=	CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}"
 PLIST_SUB+=	NLS=""
 .endif
 
diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/distinfo psmisc/distinfo
--- /usr/ports/sysutils/psmisc/distinfo	2011-03-19 05:33:10.000000000 -0700
+++ psmisc/distinfo	2011-08-06 20:48:51.620144975 -0700
@@ -1,2 +1,2 @@
-SHA256 (psmisc-22.13.tar.gz) = 06d25e8ebb4722dbcede98a787c39a9ed341f8e58fde10c0b2d6b35990b35daa
-SIZE (psmisc-22.13.tar.gz) = 382389
+SHA256 (psmisc-22.14.tar.gz) = 22bbf4561837af475c0d8d14e3b9cab453998c787212c107fac7faf2f281e26e
+SIZE (psmisc-22.14.tar.gz) = 382024
diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/files/patch-src-killall.c psmisc/files/patch-src-killall.c
--- /usr/ports/sysutils/psmisc/files/patch-src-killall.c	2010-01-02 08:40:10.000000000 -0800
+++ psmisc/files/patch-src-killall.c	2011-08-06 21:51:02.097478158 -0700
@@ -1,5 +1,5 @@
---- src/killall.c.orig	2009-12-18 21:45:36.000000000 +0900
-+++ src/killall.c	2010-01-03 00:37:34.818411284 +0900
+--- src/killall.c.orig	2011-06-20 04:43:24.000000000 -0700
++++ src/killall.c	2011-08-06 21:48:35.014330713 -0700
 @@ -36,6 +36,8 @@
  #include <dirent.h>
  #include <signal.h>
@@ -9,7 +9,7 @@
  #include <sys/types.h>
  #include <sys/stat.h>
  #include <getopt.h>
-@@ -83,40 +85,35 @@
+@@ -87,40 +89,35 @@
             ignore_case = 0, pidof;
  static long younger_than = 0, older_than = 0;
  
@@ -34,10 +34,10 @@
 -    else
 -        printf (_("Signal %s(%s%d) ? (y/N) "), name, process_group ? "pgid " : "",
 -	        pid);
+-
+-    fflush (stdout);
 +  int ch, c;
  
--    fflush (stdout);
--
 -    if (getline (&line, &len, stdin) < 0)
 -      return 0;
 -    /* Check for default */
@@ -74,7 +74,16 @@
  }
  
  static double
-@@ -356,7 +353,7 @@
+@@ -197,7 +194,7 @@
+ 	
+ 	while (fgets(buf, sizeof buf, f))
+ 	{
+-		if (sscanf (buf, "Uid:\t%d", &puid))
++		if (sscanf (buf, "%*s %*d %*d %*d %*d %*s %*s %*s %*s %*s %*s %*s %d", &puid))
+ 		{
+ 			re = uid==puid;
+ 			break;
+@@ -360,7 +357,7 @@
          }
  #endif /*WITH_SELINUX*/
        /* load process name */
@@ -83,7 +92,7 @@
  	continue;
        if (!(file = fopen (path, "r"))) 
  	{
-@@ -364,7 +361,7 @@
+@@ -368,7 +365,7 @@
  	  continue;
  	}
        free (path);
@@ -92,7 +101,7 @@
        if (!okay) {
  	fclose(file);
  	continue;
-@@ -386,65 +383,6 @@
+@@ -390,65 +387,6 @@
        got_long = 0;
        command = NULL;		/* make gcc happy */
        length = strlen (comm);
@@ -158,7 +167,7 @@
        /* mach by process name */
        for (j = 0; j < names; j++)
  	{
-@@ -495,7 +433,7 @@
+@@ -499,7 +437,7 @@
  	        {
  		  int ok = 1;
  
@@ -167,12 +176,12 @@
  		    continue;
  
  	          if (stat (path, &st) < 0) 
-@@ -842,7 +780,7 @@
-     fprintf (stderr, _("Maximum number of names is %d\n"), MAX_NAMES);
-     exit (1);
-   }
--  if (stat("/proc/self/stat", &isproc)==-1) {
-+  if (stat("/proc/curproc/status", &isproc)==-1) {
-     fprintf (stderr, _("%s is empty (not mounted ?)\n"), PROC_BASE);
-     exit (1);
-   }
+@@ -693,7 +631,7 @@
+   struct stat isproc;
+   pid_t pid = getpid();
+ 
+-  snprintf(filename, sizeof(filename), PROC_BASE"/%d/stat", (int) pid);
++  snprintf(filename, sizeof(filename), PROC_BASE"/%d/status", (int) pid);
+   return stat(filename, &isproc) == 0;
+ }
+ 
diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/pkg-descr psmisc/pkg-descr
--- /usr/ports/sysutils/psmisc/pkg-descr	2005-10-05 00:49:45.000000000 -0700
+++ psmisc/pkg-descr	2010-10-05 23:40:48.818176312 -0700
@@ -1,4 +1,4 @@
 A port of the Linux pstree, killall and pidof commands.
 Does not include the 'fuser' command.
 
-WWW: http://psmisc.sourceforge.net
+WWW: http://psmisc.sourceforge.net/
--- psmisc.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108070539.p775d7wb061949>