Your message dated Wed, 09 Jan 2008 14:20:57 -0500
with message-id <[EMAIL PROTECTED]>
and subject line Thanks!
has caused the attached Bug report 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 I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Debian bug tracking system administrator
(administrator, Debian Bugs database)

--- Begin Message ---
Package: rdiff-backup
Version: 1.1.14-1
Severity: normal
Tags: patch


In AFS, non-privileged users can change the high-bit permissions on
files, but not on directories.  The enclosed patch makes the
high_perms test try to set bits on both files and directories.  The
new test should succeed in less weird filesystems, but fail in afs.

(When a privileged users tries to set high-bit permissions on a
directory, chmod returns 0 but the bits aren't set, which means a
privileged user might fail more subtly and silently.  I haven't tested
this case, but this patch won't make the situation any worse.)

-- System Information:
Debian Release: 3.1
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable')
Architecture: sparc (sparc64)

Kernel: Linux 2.6.14-2-sparc64
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages rdiff-backup depends on:
ii  libc6                         2.6.1-1    GNU C Library: Shared libraries
ii  librsync1                     0.9.7-1    Library which implements the rsync
ii  python                        2.4.4-6    An interactive high-level object-o
ii  python-support                0.7.4      automated rebuilding support for p

Versions of packages rdiff-backup recommends:
pn  python-pylibacl               <none>     (no description available)
pn  python-pyxattr                <none>     (no description available)

-- no debconf information

*** /tmp/diff
diff -wru rdiff_backup.orig/fs_abilities.py rdiff_backup/fs_abilities.py
--- rdiff_backup.orig/fs_abilities.py   2007-08-13 16:39:22.000000000 +0000
+++ rdiff_backup/fs_abilities.py        2007-11-05 06:31:34.000000000 +0000
@@ -411,14 +411,19 @@
 
        def set_high_perms_readwrite(self, dir_rp):
                """Test for writing high-bit permissions like suid"""
-               tmp_rp = dir_rp.append("high_perms")
-               tmp_rp.touch()
+               tmpf_rp = dir_rp.append("high_perms_file")
+               tmpf_rp.touch()
+               tmpd_rp = dir_rp.append("high_perms_dir")
+               tmpd_rp.mkdir()
                try:
-                       tmp_rp.chmod(07000)
-                       tmp_rp.chmod(07777)
+                       tmpf_rp.chmod(07000)
+                       tmpf_rp.chmod(07777)
+                       tmpd_rp.chmod(07000)
+                       tmpd_rp.chmod(07777)
                except (OSError, IOError): self.high_perms = 0
                else: self.high_perms = 1
-               tmp_rp.delete()
+               tmpf_rp.delete()
+               tmpd_rp.rmdir()
 
        def set_symlink_perms(self, dir_rp):
                """Test if symlink permissions are affected by umask"""
diff -wru rdiff_backup.orig/fs_abilities.py rdiff_backup/fs_abilities.py
--- rdiff_backup.orig/fs_abilities.py   2007-08-13 16:39:22.000000000 +0000
+++ rdiff_backup/fs_abilities.py        2007-11-05 06:31:34.000000000 +0000
@@ -411,14 +411,19 @@
 
        def set_high_perms_readwrite(self, dir_rp):
                """Test for writing high-bit permissions like suid"""
-               tmp_rp = dir_rp.append("high_perms")
-               tmp_rp.touch()
+               tmpf_rp = dir_rp.append("high_perms_file")
+               tmpf_rp.touch()
+               tmpd_rp = dir_rp.append("high_perms_dir")
+               tmpd_rp.mkdir()
                try:
-                       tmp_rp.chmod(07000)
-                       tmp_rp.chmod(07777)
+                       tmpf_rp.chmod(07000)
+                       tmpf_rp.chmod(07777)
+                       tmpd_rp.chmod(07000)
+                       tmpd_rp.chmod(07777)
                except (OSError, IOError): self.high_perms = 0
                else: self.high_perms = 1
-               tmp_rp.delete()
+               tmpf_rp.delete()
+               tmpd_rp.rmdir()
 
        def set_symlink_perms(self, dir_rp):
                """Test if symlink permissions are affected by umask"""
Only in rdiff_backup: fs_abilities.py~

--- End Message ---
--- Begin Message ---
fixed 1.1.16

Thanks for the patch. It has been committed to CVS and will be a part of
 the next release.


--- End Message ---

Reply via email to