Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
M Musl
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2
    • Issues 2
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Morello
  • Musl
  • Issues
  • #4

Closed
Open
Created Aug 12, 2021 by Jack Bond-Preston@jackbondpreston🐈Developer

fcntl() varargs parsing should be conditional on the command

As reported by @jrtc27: c3a7ed32 (comment 13031)

This seems very wrong. POSIX says the argument is of type int for some operations, so only an int should be read for those, although I guess after the varargs syscall discussion in practice reading a uintptr_t in userspace is fine (but not currently on any of Morello, CHERI-MIPS and CHERI-RISC-V as they all use a long as the varargs slot size). However it definitely must not be read unconditionally; with bounded varargs this will fault for commands that don't take an argument, so this needs to be conditional on the command.

Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking