summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Client/Tools/POSIX/base.py
diff options
context:
space:
mode:
authorJason Kincl <kincljc@ornl.gov>2012-12-04 08:14:33 -0500
committerJason Kincl <kincljc@ornl.gov>2012-12-04 08:14:33 -0500
commit09a45d745269a419b0c5da0664912e061dc8e5d3 (patch)
treec5c0af33093087f10f0caf5ce021aa4cb0b4a879 /src/lib/Bcfg2/Client/Tools/POSIX/base.py
parent648c8f6e313e684d5fadc1fdbc97e08d83eb2b16 (diff)
parentf35c38e87eafffb497338b9273fe84f284a41dcf (diff)
downloadbcfg2-09a45d745269a419b0c5da0664912e061dc8e5d3.tar.gz
bcfg2-09a45d745269a419b0c5da0664912e061dc8e5d3.tar.bz2
bcfg2-09a45d745269a419b0c5da0664912e061dc8e5d3.zip
Merge remote branch 'upstream/master' into jasons-hacking
Diffstat (limited to 'src/lib/Bcfg2/Client/Tools/POSIX/base.py')
-rw-r--r--src/lib/Bcfg2/Client/Tools/POSIX/base.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/lib/Bcfg2/Client/Tools/POSIX/base.py b/src/lib/Bcfg2/Client/Tools/POSIX/base.py
index 6388f6731..b867fa3d8 100644
--- a/src/lib/Bcfg2/Client/Tools/POSIX/base.py
+++ b/src/lib/Bcfg2/Client/Tools/POSIX/base.py
@@ -9,6 +9,7 @@ import copy
import shutil
import Bcfg2.Client.Tools
import Bcfg2.Client.XML
+from Bcfg2.Compat import oct_mode
try:
import selinux
@@ -128,7 +129,7 @@ class POSIXTool(Bcfg2.Client.Tools.Tool):
wanted_mode |= device_map[entry.get('dev_type')]
try:
self.logger.debug("POSIX: Setting mode on %s to %s" %
- (path, oct(wanted_mode)))
+ (path, oct_mode(wanted_mode)))
os.chmod(path, wanted_mode)
except (OSError, KeyError):
self.logger.error('POSIX: Failed to change mode on %s' %
@@ -436,7 +437,7 @@ class POSIXTool(Bcfg2.Client.Tools.Tool):
group = None
try:
- mode = oct(ondisk[stat.ST_MODE])[-4:]
+ mode = oct_mode(ondisk[stat.ST_MODE])[-4:]
except (OSError, KeyError, TypeError):
err = sys.exc_info()[1]
self.logger.debug("POSIX: Could not get current permissions of "
@@ -507,7 +508,7 @@ class POSIXTool(Bcfg2.Client.Tools.Tool):
(path, attrib['current_group'], entry.get('group')))
if (wanted_mode and
- oct(int(attrib['current_mode'], 8)) != oct(wanted_mode)):
+ oct_mode(int(attrib['current_mode'], 8)) != oct_mode(wanted_mode)):
errors.append("Permissions for path %s are incorrect. "
"Current permissions are %s but should be %s" %
(path, attrib['current_mode'], entry.get('mode')))
@@ -708,10 +709,11 @@ class POSIXTool(Bcfg2.Client.Tools.Tool):
for i in range(0, 3):
if newmode & (6 * pow(8, i)):
newmode |= 1 * pow(8, i)
- tmpentry.set('mode', oct(newmode))
+ tmpentry.set('mode', oct_mode(newmode))
for acl in tmpentry.findall('ACL'):
acl.set('perms',
- oct(self._norm_acl_perms(acl.get('perms')) | ACL_MAP['x']))
+ oct_mode(self._norm_acl_perms(acl.get('perms')) | \
+ ACL_MAP['x']))
for cpath in created:
rv &= self._set_perms(tmpentry, path=cpath)
return rv