readline memory corruption when sys.stdin fd >= FD_SETSIZE for select()
Open
Nobody has claimed this yet.
3.7 (EOL)
extension-modules
type-crash
- Dominant language
- Python
- Stars
- 77.2k
- Forks
- 36k
- PR merge metrics
- PR metrics pending
Description
| BPO | 29700 |
|---|---|
| Nosy | @gpshead, @marienz, @tiran, @vadmium, @zhangyangyu |
| PRs | |
| Files |
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
assignee = None
closed_at = None
created_at = <Date 2017-03-02.19:48:15.854>
labels = ['extension-modules', '3.7', 'type-crash']
title = 'readline memory corruption when sys.stdin fd >= FD_SETSIZE for select()'
updated_at = <Date 2017-04-30.12:14:38.475>
user = 'https://github.com/gpshead'
bugs.python.org fields:
activity = <Date 2017-04-30.12:14:38.475>
actor = 'marienz'
assignee = 'none'
closed = False
closed_date = None
closer = None
components = ['Extension Modules']
creation = <Date 2017-03-02.19:48:15.854>
creator = 'gregory.p.smith'
dependencies = []
files = ['46689']
hgrepos = []
issue_num = 29700
keywords = []
message_count = 9.0
messages = ['288825', '288826', '288829', '288831', '288832', '289098', '289133', '289836', '292627']
nosy_count = 5.0
nosy_names = ['gregory.p.smith', 'marienz', 'christian.heimes', 'martin.panter', 'xiang.zhang']
pr_nums = ['540']
priority = 'normal'
resolution = None
stage = 'needs patch'
status = 'open'
superseder = None
type = 'crash'
url = 'https://bugs.python.org/issue29700'
versions = ['Python 2.7', 'Python 3.5', 'Python 3.6', 'Python 3.7']
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the uploaded crash_readline_fdset.py reproducer and the readline extension's select() path. Run the reproducer with sys.stdin on a file descriptor at or above FD_SETSIZE, then investigate the existing python/cpython#540 work; done means the memory corruption no longer occurs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100