Initial implementation of Ioctl2 & Ioctl3

Purpose of Ioctl2 and Ioctl3 is to prevent the passing of raw pointers through ioctls
This commit is contained in:
David Marcec
2019-09-19 15:37:25 +10:00
parent b31880dc5e
commit f9259c0383
24 changed files with 143 additions and 63 deletions

View File

@ -106,8 +106,9 @@ public:
/// Opens a device node and returns a file descriptor to it.
u32 Open(const std::string& device_name);
/// Sends an ioctl command to the specified file descriptor.
u32 Ioctl(u32 fd, u32 command, const std::vector<u8>& input, std::vector<u8>& output,
IoctlCtrl& ctrl);
u32 Ioctl(u32 fd, u32 command, const std::vector<u8>& input, const std::vector<u8>& input2,
std::vector<u8>& output, std::vector<u8>& output2, IoctlCtrl& ctrl,
IoctlVersion version);
/// Closes a device file descriptor and returns operation success.
ResultCode Close(u32 fd);