Skip to content

feat(fs): readlink/readlinkat and correct ioctl errno - #147

Merged
FlareCoding merged 2 commits into
masterfrom
pr/fs-readlink
Jul 31, 2026
Merged

feat(fs): readlink/readlinkat and correct ioctl errno#147
FlareCoding merged 2 commits into
masterfrom
pr/fs-readlink

Conversation

@FlareCoding

Copy link
Copy Markdown
Owner

Summary

  • Running a Python script by path failed with ENOSYS because two file operations returned the wrong errno for unsupported cases, so CPython aborted the open.
  • readlink/readlinkat are now implemented, returning EINVAL for non-symlinks (the POSIX answer realpath expects) instead of an unimplemented-syscall ENOSYS; real targets are read for when symlink creation later lands.
  • ioctl on a request the object does not support now returns ENOTTY instead of ENOSYS, so CPython's close-on-exec probe falls back to fcntl instead of treating the open as failed. Together these let python3.12 run a file.

Made with Cursor

@FlareCoding
FlareCoding merged commit 652157d into master Jul 31, 2026
15 checks passed
@FlareCoding
FlareCoding deleted the pr/fs-readlink branch July 31, 2026 22:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant