4377
4377
except ImportError:
4380
class _PosixPermissionsFeature(Feature):
4384
# create temporary file and check if specified perms are maintained.
4387
write_perms = stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR
4388
f = tempfile.mkstemp(prefix='bzr_perms_chk_')
4391
os.chmod(name, write_perms)
4393
read_perms = os.stat(name).st_mode & 0777
4395
return (write_perms == read_perms)
4397
return (os.name == 'posix') and has_perms()
4399
def feature_name(self):
4400
return 'POSIX permissions support'
4402
posix_permissions_feature = _PosixPermissionsFeature()