[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#675594: pu: package lockfile-progs/0.1.15



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: pu

Hi,

I have backported the fix for #626752[1], which currently makes
the --use-pid feature useless in stable.  The fix has already
been deployed in sid (version 0.1.16).

Please see attached debdiff.

~Niels

[1] lockfile-progs: lockfile-create --use-pid uses wrong pid
diff -Nru lockfile-progs-0.1.15/debian/changelog lockfile-progs-0.1.15+squeeze1/debian/changelog
--- lockfile-progs-0.1.15/debian/changelog	2010-06-13 09:21:29.000000000 +0200
+++ lockfile-progs-0.1.15+squeeze1/debian/changelog	2012-06-02 13:17:42.000000000 +0200
@@ -1,3 +1,20 @@
+lockfile-progs (0.1.15+squeeze1) stable; urgency=low
+
+  [ Niels Thykier ]
+  * Non-maintainer upload.
+  * Backport fix for #626752
+
+  [ Rob Browning ]
+  * Use L_PID rather than L_PPID when appropriate.  In cases where
+    lockfile_create() and lockfile_check() were being called with L_PID,
+    use L_PPID to capture the parent's PID.  Capturing the PID of the
+    lockfile-create or lockfile-check process made no sense.  Thanks to
+    Zrin Žiborski <zrin+launchpad@ziborski.net> for the report, Larry
+    Diegel for the patch, and Sebastian Siewior <sebastian@breakpoint.cc>
+    for the suggestion to update the documentation. (Closes: #626752)
+
+ -- Niels Thykier <niels@thykier.net>  Sat, 02 Jun 2012 13:07:35 +0200
+
 lockfile-progs (0.1.15) unstable; urgency=low
 
   * Add missing debhelper Build-Depends.
diff -Nru lockfile-progs-0.1.15/lockfile-progs.1 lockfile-progs-0.1.15+squeeze1/lockfile-progs.1
--- lockfile-progs-0.1.15/lockfile-progs.1	2010-06-12 19:02:33.000000000 +0200
+++ lockfile-progs-0.1.15+squeeze1/lockfile-progs.1	2012-06-02 13:07:13.000000000 +0200
@@ -81,11 +81,12 @@
 .PP .\" --use-pid
 \fB\-p\fR, \fB\-\-use\-pid\fR
 .RS 4
-Write the current process id (PID) to the lockfile whenever a lockfile
+Write the parent process id (PPID) to the lockfile whenever a lockfile
 is created, and use that pid when checking a lock's validity.  See the
 \fBlockfile_create\fR(3) manpage for more information.  This option
-applies to \fBlockfile\-create\fR, \fBlockfile\-remove\fR,
-\fBlockfile-touch\fR, and \fBlockfile-check\fR.
+applies to \fBlockfile\-create\fR and \fBlockfile-check\fR.  NOTE:
+this option will not work correctly between machines sharing a
+filesystem.
 .RE
 .PP .\" --oneshot
 \fB\-o\fR, \fB\-\-oneshot\fR
diff -Nru lockfile-progs-0.1.15/lockfile-progs.c lockfile-progs-0.1.15+squeeze1/lockfile-progs.c
--- lockfile-progs-0.1.15/lockfile-progs.c	2010-06-09 07:27:30.000000000 +0200
+++ lockfile-progs-0.1.15+squeeze1/lockfile-progs.c	2012-06-02 13:07:13.000000000 +0200
@@ -328,7 +328,7 @@
 static int
 cmd_lock(const char *lockfilename, int retry_count)
 {
-  int rc = lockfile_create(lockfilename, retry_count, (use_pid ? L_PID : 0));
+  int rc = lockfile_create(lockfilename, retry_count, (use_pid ? L_PPID : 0));
   const char *rc_str = get_status_code_string(rc);
 
   if(rc != L_SUCCESS)
@@ -363,7 +363,7 @@
 static int
 cmd_check(const char *lockfilename)
 {
-  int rc = lockfile_check(lockfilename, (use_pid ? L_PID : 0));
+  int rc = lockfile_check(lockfilename, (use_pid ? L_PPID : 0));
   return rc;
 }
 
diff -Nru lockfile-progs-0.1.15/Makefile lockfile-progs-0.1.15+squeeze1/Makefile
--- lockfile-progs-0.1.15/Makefile	2009-06-21 19:01:51.000000000 +0200
+++ lockfile-progs-0.1.15+squeeze1/Makefile	2012-06-02 13:07:13.000000000 +0200
@@ -46,7 +46,7 @@
 	bin/lockfile-create --use-pid --lock-name check/file.lock
 	bin/lockfile-touch --oneshot --lock-name check/file.lock
         # PID shouldn't be the same, so this should fail.
-	! bin/lockfile-check --use-pid --lock-name check/file.lock
+	bin/lockfile-check --use-pid --lock-name check/file.lock
 	bin/lockfile-remove --lock-name check/file.lock
 	! test -e check/file.lock
 

Reply to: