classification
Title: test_copyxattr_symlinks fails
Type: Stage:
Components: Tests Versions: Python 3.6, Python 3.5
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: marktay, nitishch, thehesiod
Priority: normal Keywords:

Created on 2017-01-18 23:33 by marktay, last changed 2018-02-03 07:05 by nitishch.

Messages (1)
msg285764 - (view) Author: mark (marktay) Date: 2017-01-18 23:33
======================================================================
ERROR: test_copyxattr_symlinks (test.test_shutil.TestShutil)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/opt/Python-3.6.0/Lib/test/test_shutil.py", line 505, in test_copyxattr_symlinks
    os.setxattr(src, 'trusted.foo', b'42')
PermissionError: [Errno 1] Operation not permitted: '/tmp/tmpvlu10qdm/foo'

----------------------------------------------------------------------

The problem is that "trusted" attributes (in this case trusted.foo) are visible and accessible only to processes that have the CAP_SYS_ADMIN capability. The current "skipUnless" guard is wrong: being root (UID 0) doesn't necessarely imply you have CAP_SYS_ADMIN. For instance this test (and thus "make test") will always fail in a Docker container unless it's started with "--cap-add SYS_ADMIN" (which, in general, is not the best thing to do).
History
Date User Action Args
2018-02-03 07:05:44nitishchsetnosy: + nitishch
2018-02-02 06:22:41thehesiodsetnosy: + thehesiod

versions: + Python 3.5
2017-01-18 23:33:31marktaycreate