From 45f4acdaa47421d6f5eb0f697171eb9b950ec936 Mon Sep 17 00:00:00 2001 From: Aneurin Price Date: Fri, 13 May 2011 14:19:43 +0100 Subject: [PATCH] Use is_superuser() rather than checking euid directly Replacing calls to geteuid() to use is_superuser() fixes metadata test failures on Cygwin when running as an Administrator. Signed-off-by: Aneurin Price --- lib/bup/metadata.py | 4 ++-- lib/bup/t/tmetadata.py | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/bup/metadata.py b/lib/bup/metadata.py index 6dae38b..981ad09 100644 --- a/lib/bup/metadata.py +++ b/lib/bup/metadata.py @@ -8,7 +8,7 @@ import errno, os, sys, stat, pwd, grp, struct, re from cStringIO import StringIO from bup import vint from bup.drecurse import recursive_dirlist -from bup.helpers import add_error, mkdirp, log +from bup.helpers import add_error, mkdirp, log, is_superuser from bup.xstat import utime, lutime, lstat, FSTime import bup._helpers as _helpers @@ -312,7 +312,7 @@ class Metadata: uid = -1 add_error('ignoring missing owner for "%s"\n' % path) else: - if os.geteuid() != 0: + if not is_superuser(): uid = -1 # Not root; assume we can't change owner. else: try: diff --git a/lib/bup/t/tmetadata.py b/lib/bup/t/tmetadata.py index 26ecbba..2d22799 100644 --- a/lib/bup/t/tmetadata.py +++ b/lib/bup/t/tmetadata.py @@ -1,7 +1,7 @@ import glob, grp, pwd, stat, tempfile, subprocess import bup.helpers as helpers from bup import metadata -from bup.helpers import clear_errors, detect_fakeroot +from bup.helpers import clear_errors, detect_fakeroot, is_superuser from wvtest import * @@ -116,7 +116,7 @@ def _first_err(): @wvtest def test_from_path_error(): - if os.geteuid() == 0 or detect_fakeroot(): + if is_superuser() or detect_fakeroot(): return tmpdir = tempfile.mkdtemp(prefix='bup-tmetadata-') try: @@ -136,7 +136,7 @@ def test_from_path_error(): @wvtest def test_apply_to_path_restricted_access(): - if os.geteuid() == 0 or detect_fakeroot(): + if is_superuser() or detect_fakeroot(): return tmpdir = tempfile.mkdtemp(prefix='bup-tmetadata-') try: @@ -156,7 +156,7 @@ def test_apply_to_path_restricted_access(): @wvtest def test_restore_restricted_user_group(): - if os.geteuid() == 0 or detect_fakeroot(): + if is_superuser() or detect_fakeroot(): return tmpdir = tempfile.mkdtemp(prefix='bup-tmetadata-') try: @@ -253,7 +253,7 @@ if not xattr: else: @wvtest def test_handling_of_incorrect_existing_linux_xattrs(): - if os.geteuid() != 0 or detect_fakeroot(): + if not is_superuser(): return setup_testfs() for f in glob.glob('testfs/*'): -- 2.39.5