Your message dated Sun, 11 Jan 2009 01:47:05 +0000
with message-id <[email protected]>
and subject line Bug#496274: fixed in procps 1:3.2.7-10
has caused the Debian Bug report #496274,
regarding procps: (Hurd) Fixes PATH_MAX problem, builds and most of the tools 
work
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
496274: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=496274
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: procps
Version: 3.2.7
Severity: important
Tags: patch

Fixes the PATH_MAX problems in proc/readproc.c file
and pwdx.c file. This patch builds procps on Hurd. And
the tools pgrep, pkill, kill, top, watch, tload also
work.

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: hurd-i386 (i686-AT386)

Kernel: GNU-Mach 1.3.99/Hurd-0.3
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash
Only in procps-3.2.7/: build-stamp
Only in procps-3.2.7/debian: files
Only in procps-3.2.7/debian: libproc-dev
Only in procps-3.2.7/debian: libproc-dev.debhelper.log
diff -ur cl3/procps-3.2.7/debian/postinst procps-3.2.7/debian/postinst
--- cl3/procps-3.2.7/debian/postinst    2008-08-21 17:35:17.000000000 +0530
+++ procps-3.2.7/debian/postinst        2008-08-21 17:49:08.000000000 +0530
@@ -60,9 +60,17 @@
           fi
                
                #
-               # Now to do the alternatives for w and ps
+               # Now to do the alternatives for w uptime kill vmstat and ps
                update-alternatives --install /usr/bin/w w /usr/bin/w.procps 50 
\
                        --slave /usr/share/man/man1/w.1.gz w.1.gz 
/usr/share/man/man1/w.procps.1.gz
+               update-alternatives --install /usr/bin/uptime uptime 
/usr/bin/uptime.procps 50 \
+                       --slave /usr/share/man/man1/uptime.1.gz uptime.1.gz 
/usr/share/man/man1/uptime.procps.1.gz                      
+               update-alternatives --install /usr/bin/kill kill 
/usr/bin/kill.procps 50 \
+                       --slave /usr/share/man/man1/kill.1.gz kill.1.gz 
/usr/share/man/man1/kill.procps.1.gz                    
+               update-alternatives --install /usr/bin/vmstat vmstat 
/usr/bin/vmstat.procps 50 \
+                       --slave /usr/share/man/man8/vmstat.8.gz vmstat.8.gz 
/usr/share/man/man8/vmstat.procps.8.gz                                          
    
+               update-alternatives --install /bin/ps ps /bin/ps.procps 50 \
+                       --slave /usr/share/man/man1/ps.1.gz ps.1.gz 
/usr/share/man/man1/ps.procps.1.gz
                
     ;;
 
Only in procps-3.2.7/debian: procps
Only in procps-3.2.7/debian: procps.debhelper.log
Only in procps-3.2.7/debian: procps.postinst.debhelper
Only in procps-3.2.7/debian: procps.postrm.debhelper
Only in procps-3.2.7/debian: procps.prerm.debhelper
Only in procps-3.2.7/debian: procps.substvars
diff -ur cl3/procps-3.2.7/debian/rules procps-3.2.7/debian/rules
--- cl3/procps-3.2.7/debian/rules       2008-08-21 17:35:17.000000000 +0530
+++ procps-3.2.7/debian/rules   2008-08-22 04:08:47.000000016 +0530
@@ -55,18 +55,46 @@
        (cd $(DEBROOT)/usr/bin && mv w w.procps )
        (cd $(DEBROOT)/usr/share/man/man1 && mv w.1 w.procps.1 )
 
+        # Rename kill as there are two of them
+       (cd $(DEBROOT)/bin && mv kill kill.procps )
+       (cd $(DEBROOT)/usr/share/man/man1 && mv kill.1 kill.procps.1 )
+
+       # Rename vmstat as there are two of them
+       (cd $(DEBROOT)/usr/bin && mv vmstat vmstat.procps )
+       (cd $(DEBROOT)/usr/share/man/man8 && mv vmstat.8 vmstat.procps.8 )
+       
+        # Rename uptime as there are two of them
+       (cd $(DEBROOT)/usr/bin && mv uptime uptime.procps )
+       (cd $(DEBROOT)/usr/share/man/man1 && mv uptime.1 uptime.procps.1 )
+
+       # Rename ps as there are two of them
+       (cd $(DEBROOT)/bin && mv ps ps.procps )
+       (cd $(DEBROOT)/usr/share/man/man1 && mv ps.1 ps.procps.1 )
+
        # Work-around until proc includes fixed
        (cp proc/*.h $(CURDIR)/debian/libproc-dev/usr/include/proc)
        cp static/libproc.a $(CURDIR)/debian/libproc-dev/usr/lib
 
 ifneq ($(DEB_HOST_ARCH_OS), linux)
        rm -f \
-               $(CURDIR)/debian/procps/bin/kill \
-               $(CURDIR)/debian/procps/usr/share/man/man1/kill.1 \
+               $(CURDIR)/debian/procps/usr/bin/slabtop \
+               $(CURDIR)/debian/procps/usr/share/man/man1/slabtop.1 \
                $(CURDIR)/debian/procps/sbin/sysctl \
                $(CURDIR)/debian/procps/usr/share/man/man8/sysctl.8 \
                $(NULL)
 endif
+ifeq ($(DEB_HOST_ARCH_OS), kfreebsd)
+       rm -f \
+               $(CURDIR)/debian/procps/bin/kill \
+               $(CURDIR)/debian/procps/usr/share/man/man1/kill.1 \
+               $(NULL)
+endif
+ifeq ($(DEB_HOST_ARCH_OS), hurd)
+       rm -f \
+               $(CURDIR)/debian/procps/usr/bin/pmap \
+               $(CURDIR)/debian/procps/usr/share/man/man1/pmap.1 \
+               $(NULL)
+endif
 
        dh_movefiles --sourcedir=debian/procps
        #rmdir $(CURDIR)/debian/procps/usr/include/proc
Only in procps-3.2.7/: free
Only in procps-3.2.7/: free.o
Only in procps-3.2.7/: kill
Only in procps-3.2.7/: patch-stamp
Only in procps-3.2.7/: pgrep
Only in procps-3.2.7/: pgrep.o
Only in procps-3.2.7/: pkill
Only in procps-3.2.7/: pmap
Only in procps-3.2.7/: pmap.o
Only in procps-3.2.7/proc: .depend
Only in procps-3.2.7/proc: alloc.o
Only in procps-3.2.7/proc: devname.o
Only in procps-3.2.7/proc: escape.o
Only in procps-3.2.7/proc: ksym.o
Only in procps-3.2.7/proc: libproc-3.2.7.so
Only in procps-3.2.7/proc: pwcache.o
diff -ur cl3/procps-3.2.7/proc/readproc.c procps-3.2.7/proc/readproc.c
--- cl3/procps-3.2.7/proc/readproc.c    2008-08-21 17:39:52.000000000 +0530
+++ procps-3.2.7/proc/readproc.c        2008-08-21 10:20:21.000000000 +0530
@@ -1036,7 +1036,7 @@
  * and filled out proc_t structure.
  */
 proc_t * get_proc_stats(pid_t pid, proc_t *p) {
-       static char path[PATH_MAX], sbuf[1024];
+       static char path[32], sbuf[1024];
        struct stat statbuf;
 
        sprintf(path, "/proc/%d", pid);
Only in procps-3.2.7/proc: readproc.o
Only in procps-3.2.7/proc: sig.o
Only in procps-3.2.7/proc: slab.o
Only in procps-3.2.7/proc: sysinfo.o
Only in procps-3.2.7/proc: version.o
Only in procps-3.2.7/proc: whattime.o
Only in procps-3.2.7/ps: display.o
Only in procps-3.2.7/ps: global.o
Only in procps-3.2.7/ps: help.o
Only in procps-3.2.7/ps: output.o
Only in procps-3.2.7/ps: parser.o
Only in procps-3.2.7/ps: ps
Only in procps-3.2.7/ps: select.o
Only in procps-3.2.7/ps: sortformat.o
Only in procps-3.2.7/: pwdx
diff -ur cl3/procps-3.2.7/pwdx.c procps-3.2.7/pwdx.c
--- cl3/procps-3.2.7/pwdx.c     2006-06-17 14:59:06.000000000 +0530
+++ procps-3.2.7/pwdx.c 2008-08-22 04:29:52.000000000 +0530
@@ -35,7 +35,6 @@
 
 int main(int argc, char* argv[])
 {
-     char buf[PATH_MAX+1];
      regex_t re;
      int i;
 
@@ -59,6 +58,7 @@
 
      for (i = 1; i < argc; i++) {
           if (regexec(&re, argv[i], 0, NULL, 0) != 0) {
+               char buf[27 + strlen (argv[i]) + 1];  // Constant 27 is the 
length of the error string "pwdx: ... "
                snprintf(buf, sizeof buf, "pwdx: invalid process id: %s\n", 
argv[i]);
                die(buf);
           }
@@ -68,9 +68,13 @@
 
      regfree(&re);
 
+     int alloclen = 128;
+     char *pathbuf = malloc(alloclen);
+
      for (i = 1; i < argc; i++) {
-          char * s = buf;
+          char * s;
           int len;
+          char buf[10 + strlen(argv[i]) + 1]; // Constant 10 is the length of 
strings "/proc/" + "/cwd" + 1
           
           // At this point, all arguments are in the form /proc/nnnn
           // or nnnn, so a simple check based on the first char is
@@ -82,7 +86,12 @@
 
           // buf contains /proc/nnnn/cwd symlink name on entry, the
           // target of that symlink on return
-          if ((len = readlink(buf, buf, PATH_MAX)) < 0) {
+          while ((len = readlink(buf, pathbuf, alloclen) == alloclen)) {
+               alloclen *= 2;
+               s = pathbuf = realloc(pathbuf, alloclen);
+          }  
+
+          if (len < 0) {
                s = strerror(errno == ENOENT ? ESRCH : errno);
           } else {
                buf[len] = 0;
@@ -91,5 +100,7 @@
           printf("%s: %s\n", argv[i], s);
      }
 
+     free(pathbuf);
+
      return 0;
 }
Only in procps-3.2.7/: pwdx.o
Only in procps-3.2.7/: skill
Only in procps-3.2.7/: skill.o
Only in procps-3.2.7/: slabtop
Only in procps-3.2.7/: slabtop.o
Only in procps-3.2.7/: snice
Only in procps-3.2.7/: static
Only in procps-3.2.7/: sysctl
Only in procps-3.2.7/: sysctl.o
Only in procps-3.2.7/: tload
Only in procps-3.2.7/: tload.o
Only in procps-3.2.7/: top
Only in procps-3.2.7/: top.o
Only in procps-3.2.7/: uptime
Only in procps-3.2.7/: uptime.o
Only in procps-3.2.7/: vmstat
Only in procps-3.2.7/: vmstat.o
Only in procps-3.2.7/: w
Only in procps-3.2.7/: w.o
Only in procps-3.2.7/: watch
Only in procps-3.2.7/: watch.o

--- End Message ---
--- Begin Message ---
Source: procps
Source-Version: 1:3.2.7-10

We believe that the bug you reported is fixed in the latest version of
procps, which is due to be installed in the Debian FTP archive:

libproc-dev_3.2.7-10_i386.deb
  to pool/main/p/procps/libproc-dev_3.2.7-10_i386.deb
procps_3.2.7-10.diff.gz
  to pool/main/p/procps/procps_3.2.7-10.diff.gz
procps_3.2.7-10.dsc
  to pool/main/p/procps/procps_3.2.7-10.dsc
procps_3.2.7-10_i386.deb
  to pool/main/p/procps/procps_3.2.7-10_i386.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Craig Small <[email protected]> (supplier of updated procps package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Sun, 11 Jan 2009 12:29:42 +1100
Source: procps
Binary: procps libproc-dev
Architecture: source i386
Version: 1:3.2.7-10
Distribution: unstable
Urgency: low
Maintainer: Craig Small <[email protected]>
Changed-By: Craig Small <[email protected]>
Description: 
 libproc-dev - library for accessing process information from /proc
 procps     - /proc file system utilities
Closes: 155227 183346 183486 225549 252575 267873 375739 378695 410967 414906 
420377 426782 451812 469669 481679 494655 495882 495884 495885 495987 496274 
502729 508435 511082
Changes: 
 procps (1:3.2.7-10) unstable; urgency=low
 .
   * PATH_MAX problem fixed Closes: #496274
   * NOHZ patch appilied Closes: #495882
   * Added some extra comments about sysctl Closes: #495884
   * init script respects VERBOSE Closes: #495885
   * More ps sorting Closes: #508435
   * ps displays cgroups Closes: #469669
   * Added cross build support Closes: #451812
   * Added Hilko's fix for sysctl Closes: #511082
   * Applied Mortys watch exec patch, thankyou!!
     Closes: #225549, #155227, #420377, #481679,#410967
   * top UID length now increased to 5 Closes: #426782
   * init script not installed for kFreeBSD Closes: #502729
   * Fixed kernel.maps_protect entry in sysctl.conf Closes: #494655
   * D flag documented in man page Closes: #495987
   * w uses locale for centi-seconds Closes: #252575
   * Corrected w-bassman patch which made ALL times change and documented
     what the times mean in w.1 Closes: #414906
   * Changed dh_clean -k to dh_prep
   * Updated to debhelper 7
   * Replaced may in kill.1 Closes: #375739
   * Added precision wait time to watch Closes: #183486
   * top exits if it cannot read /proc Closes: #378695
   * Adjusted top.1 as CODE DATA fields were incorrect Closes: 267873
   * Added --errexit flag on watch to exit on command error Closes:
     #183346
Checksums-Sha1: 
 7c6b79f5de42aa2acce4d6dc6ebebdaed4a30e9e 990 procps_3.2.7-10.dsc
 36fc8a379dd6c310cdbc29e5136f2fe235d1f48d 81896 procps_3.2.7-10.diff.gz
 b2cab9c0bfd951701d987c762a29de0cb33fd699 225882 procps_3.2.7-10_i386.deb
 15e1a4f9f2adda3c2fae8fd716f677c2950bdd08 57146 libproc-dev_3.2.7-10_i386.deb
Checksums-Sha256: 
 f9e39d0bfba1ecf2d3cd37bde55a2987866911f37e39b2460b91118b6a7644cb 990 
procps_3.2.7-10.dsc
 0bb5ba17a2c44342f79a6601ce070847c90bcfb58999b641be4b86c4ec5c1902 81896 
procps_3.2.7-10.diff.gz
 de3a721b689c33c0864b8daf698644beccf0f5afeebbbecaa5afe5f54b08a554 225882 
procps_3.2.7-10_i386.deb
 166c7b1524ab91f37be67f1fcfa3e6ef2d0ef0fdd8ec0b61b3f52be8b27c0780 57146 
libproc-dev_3.2.7-10_i386.deb
Files: 
 87c80bc01ad625d5706b2d6dfc677a00 990 admin required procps_3.2.7-10.dsc
 fd186946acddc00b1923eebba3a1948d 81896 admin required procps_3.2.7-10.diff.gz
 da71ca3be2133d481c71ec67957b2ce1 225882 admin required procps_3.2.7-10_i386.deb
 8d7b98f42f31896bca47aa403100ea75 57146 libdevel optional 
libproc-dev_3.2.7-10_i386.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iD8DBQFJaUzMx2zlrBLK36URAlfAAJoDFOv+B3MaTisuLpaHuIf5GR09mgCfbEFB
YLL4f9Mhoc7tLtnTwA3HmzA=
=tS6D
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to