Skip to content

Consider parsing the arguments passed #64

@linkmauve

Description

@linkmauve

I’m mostly interested in ioctl(), where the arguments are dependent on the architecture in use.

For instance, strace parses a V4L2 ioctl() that way:

ioctl(3, VIDIOC_ENUM_FMT, {index=2, type=V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE, flags=V4L2_FMT_FLAG_COMPRESSED, description="VP8 Frame", pixelformat=v4l2_fourcc('V', 'P', '8', 'F') /* V4L2_PIX_FMT_VP8_FRAME */}) = 0

Current lurk instead prints the raw values of the ioctl() number and the address of the buffer being passed to it, both of which are pretty useless:

[139118] ioctl(0, 3225441794, 281474976706312) = 29

I’m currently working with V4L2 but many Linux subsystems use ioctl() as their uAPI.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions