1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00

fixed file module to use realpath when following links, readlink could be relative and fail in corner cases as per #852

This commit is contained in:
Brian Coca 2015-02-26 08:43:24 -05:00 committed by Matt Clay
parent d17726bae9
commit d6305bc938

View file

@ -201,7 +201,7 @@ def main():
if state in ['link','hard']:
if follow and state == 'link':
# use the current target of the link as the source
src = os.readlink(path)
src = os.path.realpath(path)
else:
module.fail_json(msg='src and dest are required for creating links')
@ -245,7 +245,7 @@ def main():
if state != prev_state:
if follow and prev_state == 'link':
# follow symlink and operate on original
path = os.readlink(path)
path = os.path.realpath(path)
prev_state = get_state(path)
file_args['path'] = path
@ -258,7 +258,7 @@ def main():
elif state == 'directory':
if follow and prev_state == 'link':
path = os.readlink(path)
path = os.path.realpath(path)
prev_state = get_state(path)
if prev_state == 'absent':