diff options
author | Holger Weiß <holger@zedat.fu-berlin.de> | 2018-05-18 13:47:14 +0200 |
---|---|---|
committer | Holger Weiß <holger@zedat.fu-berlin.de> | 2018-05-18 22:50:36 +0200 |
commit | 56ae1baf7055155c7ec279fd5e5f1b7275366fee (patch) | |
tree | ae79eb118438aeeb94c9e5aed497a2a99da2df2d /src/lib/Bcfg2 | |
parent | 8ead11b6f6bb477172e40dfca8dc848c6a9494e4 (diff) | |
download | bcfg2-56ae1baf7055155c7ec279fd5e5f1b7275366fee.tar.gz bcfg2-56ae1baf7055155c7ec279fd5e5f1b7275366fee.tar.bz2 bcfg2-56ae1baf7055155c7ec279fd5e5f1b7275366fee.zip |
POSIX: Don't follow symlinks when changing owner
Don't let the client follow symbolic links when changing the owner of a
path.
Diffstat (limited to 'src/lib/Bcfg2')
-rw-r--r-- | src/lib/Bcfg2/Client/Tools/POSIX/base.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/Bcfg2/Client/Tools/POSIX/base.py b/src/lib/Bcfg2/Client/Tools/POSIX/base.py index 89675af02..ffa527cd6 100644 --- a/src/lib/Bcfg2/Client/Tools/POSIX/base.py +++ b/src/lib/Bcfg2/Client/Tools/POSIX/base.py @@ -130,14 +130,14 @@ class POSIXTool(Bcfg2.Client.Tools.Tool): % (path, self._norm_entry_uid(entry), self._norm_entry_gid(entry))) - os.chown(path, self._norm_entry_uid(entry), - self._norm_entry_gid(entry)) + os.lchown(path, self._norm_entry_uid(entry), + self._norm_entry_gid(entry)) except (OSError, KeyError): self.logger.error('POSIX: Failed to change ownership of %s' % path) rv = False if sys.exc_info()[0] == KeyError: - os.chown(path, 0, 0) + os.lchown(path, 0, 0) else: self.logger.debug("POSIX: Run as non-root, not setting ownership") |