This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: never enable lchmod on Linux
Type: Stage: resolved
Components: Build Versions: Python 3.8, Python 3.7, Python 3.6, Python 2.7
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: Anthony Sottile, benjamin.peterson, jmr, miss-islington
Priority: normal Keywords: patch

Created on 2018-09-12 21:43 by benjamin.peterson, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 9234 closed benjamin.peterson, 2018-09-12 21:47
PR 9239 closed miss-islington, 2018-09-12 22:52
PR 9240 closed miss-islington, 2018-09-12 22:52
PR 9241 closed benjamin.peterson, 2018-09-12 22:56
PR 9242 merged benjamin.peterson, 2018-09-12 22:57
PR 9243 merged miss-islington, 2018-09-12 22:58
PR 9244 merged miss-islington, 2018-09-12 22:58
PR 9247 merged benjamin.peterson, 2018-09-12 23:36
PR 9249 merged miss-islington, 2018-09-13 00:22
PR 9250 merged benjamin.peterson, 2018-09-13 00:24
PR 12799 merged python-dev, 2019-04-12 12:50
PR 15758 merged benjamin.peterson, 2019-09-09 11:24
PR 15763 merged miss-islington, 2019-09-09 12:13
Messages (14)
msg325185 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2018-09-12 21:43
You can't modify the mode of symbolic links on Linux. Thus, lchmod is a useless function. libc may, however, define a lchmod stub that always returns an error. autoconf has a check that detects the dummy stub for glibc, but it detects lchmod as working on musl. I propose we simply always disable lchmod if the target system is Linux.
msg325204 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2018-09-12 22:52
New changeset 40caa05fa4d1810a1a6bfc34e0ec930c351089b7 by Benjamin Peterson in branch 'master':
closes bpo-34652: Always disable lchmod on Linux. (GH-9234)
https://github.com/python/cpython/commit/40caa05fa4d1810a1a6bfc34e0ec930c351089b7
msg325210 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2018-09-12 23:31
New changeset 69e96910153219b0b15a18323b917bd74336d229 by Benjamin Peterson in branch '2.7':
[2.7] closes bpo-34652: Always disable lchmod on Linux. (GH-9242)
https://github.com/python/cpython/commit/69e96910153219b0b15a18323b917bd74336d229
msg325212 - (view) Author: miss-islington (miss-islington) Date: 2018-09-12 23:36
New changeset 98344a4f2f09ddae295352ec54fae6388446eeaf by Miss Islington (bot) in branch '3.7':
closes bpo-34652: Always disable lchmod on Linux. (GH-9234)
https://github.com/python/cpython/commit/98344a4f2f09ddae295352ec54fae6388446eeaf
msg325213 - (view) Author: miss-islington (miss-islington) Date: 2018-09-12 23:43
New changeset bdace2ea53c578184235729a4cf383891084cc70 by Miss Islington (bot) in branch '3.6':
closes bpo-34652: Always disable lchmod on Linux. (GH-9234)
https://github.com/python/cpython/commit/bdace2ea53c578184235729a4cf383891084cc70
msg325220 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2018-09-13 00:22
New changeset ed709d5699716bf7237856dc20aba321e2dfff6d by Benjamin Peterson in branch 'master':
bpo-34652: Remove lchmod from the big func checking block. (GH-9247)
https://github.com/python/cpython/commit/ed709d5699716bf7237856dc20aba321e2dfff6d
msg325223 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2018-09-13 00:37
New changeset 2184fe5ba48a58cb51be144230622b84b372644c by Benjamin Peterson in branch '3.6':
[3.6] bpo-34652: Remove lchmod from the big func checking block. (GH-9250)
https://github.com/python/cpython/commit/2184fe5ba48a58cb51be144230622b84b372644c
msg325233 - (view) Author: miss-islington (miss-islington) Date: 2018-09-13 05:33
New changeset 35c94c765bf46e93a0d84e39dbc6eaaba40b1f36 by Miss Islington (bot) in branch '3.7':
bpo-34652: Remove lchmod from the big func checking block. (GH-9247)
https://github.com/python/cpython/commit/35c94c765bf46e93a0d84e39dbc6eaaba40b1f36
msg335177 - (view) Author: Anthony Sottile (Anthony Sottile) * Date: 2019-02-10 23:05
I believe this also closes https://bugs.python.org/issue31940 and https://bugs.python.org/issue28627
msg339968 - (view) Author: Joshua Root (jmr) * Date: 2019-04-11 11:42
The follow-up fix (AC_CHECK_FUNC -> AC_CHECK_FUNCS) still needs to be backported to 2.7. Currently the lack of it causes lchmod to be disabled on all platforms, not just Linux.
msg340004 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2019-04-12 03:27
We can take a PR to fix that.

On Thu, Apr 11, 2019, at 04:42, Joshua Root wrote:
> 
> Joshua Root <josh+python@root.id.au> added the comment:
> 
> The follow-up fix (AC_CHECK_FUNC -> AC_CHECK_FUNCS) still needs to be 
> backported to 2.7. Currently the lack of it causes lchmod to be 
> disabled on all platforms, not just Linux.
> 
> ----------
> nosy: +jmr
> 
> _______________________________________
> Python tracker <report@bugs.python.org>
> <https://bugs.python.org/issue34652>
> _______________________________________
>
msg340073 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2019-04-12 15:51
New changeset 0fd5a7338cbaf7a61ab5bad270c1b0311047d0f9 by Benjamin Peterson (Joshua Root) in branch '2.7':
bpo-34652: Use AC_CHECK_FUNCS for lchmod. (GH-12799)
https://github.com/python/cpython/commit/0fd5a7338cbaf7a61ab5bad270c1b0311047d0f9
msg351436 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2019-09-09 12:13
New changeset bed04b664729e3e6fcee42daa108936360bac6ea by Benjamin Peterson in branch 'master':
bpo-34652 again: Remove lchmod from the default AC_CHECK_FUNCS list. (GH-15758)
https://github.com/python/cpython/commit/bed04b664729e3e6fcee42daa108936360bac6ea
msg351449 - (view) Author: miss-islington (miss-islington) Date: 2019-09-09 13:01
New changeset 12acb5b9c8c21e486083483bded422d8443c38a7 by Miss Islington (bot) in branch '3.8':
bpo-34652 again: Remove lchmod from the default AC_CHECK_FUNCS list. (GH-15758)
https://github.com/python/cpython/commit/12acb5b9c8c21e486083483bded422d8443c38a7
History
Date User Action Args
2022-04-11 14:59:05adminsetgithub: 78833
2019-09-09 13:01:50miss-islingtonsetmessages: + msg351449
2019-09-09 12:13:17miss-islingtonsetpull_requests: + pull_request15416
2019-09-09 12:13:05benjamin.petersonsetmessages: + msg351436
2019-09-09 11:24:15benjamin.petersonsetpull_requests: + pull_request15411
2019-04-12 15:51:37benjamin.petersonsetmessages: + msg340073
2019-04-12 12:50:55python-devsetpull_requests: + pull_request12727
2019-04-12 03:27:25benjamin.petersonsetmessages: + msg340004
2019-04-11 11:42:28jmrsetnosy: + jmr
messages: + msg339968
2019-02-11 01:52:46benjamin.petersonlinkissue31940 superseder
2019-02-10 23:05:45Anthony Sottilesetnosy: + Anthony Sottile
messages: + msg335177
2018-09-13 05:33:08miss-islingtonsetmessages: + msg325233
2018-09-13 00:37:51benjamin.petersonsetmessages: + msg325223
2018-09-13 00:24:44benjamin.petersonsetpull_requests: + pull_request8681
2018-09-13 00:22:24miss-islingtonsetpull_requests: + pull_request8680
2018-09-13 00:22:14benjamin.petersonsetmessages: + msg325220
2018-09-12 23:43:23miss-islingtonsetmessages: + msg325213
2018-09-12 23:36:22benjamin.petersonsetpull_requests: + pull_request8678
2018-09-12 23:36:09miss-islingtonsetnosy: + miss-islington
messages: + msg325212
2018-09-12 23:31:21benjamin.petersonsetmessages: + msg325210
2018-09-12 22:58:59miss-islingtonsetpull_requests: + pull_request8675
2018-09-12 22:58:51miss-islingtonsetpull_requests: + pull_request8674
2018-09-12 22:57:34benjamin.petersonsetpull_requests: + pull_request8673
2018-09-12 22:56:11benjamin.petersonsetpull_requests: + pull_request8672
2018-09-12 22:53:00miss-islingtonsetpull_requests: + pull_request8671
2018-09-12 22:52:52miss-islingtonsetpull_requests: + pull_request8670
2018-09-12 22:52:43benjamin.petersonsetstatus: open -> closed
resolution: fixed
messages: + msg325204

stage: patch review -> resolved
2018-09-12 21:47:16benjamin.petersonsetkeywords: + patch
stage: patch review
pull_requests: + pull_request8665
2018-09-12 21:43:38benjamin.petersoncreate