2
0
mirror of https://github.com/koreader/koreader synced 2024-11-10 01:10:34 +00:00
koreader/frontend/device/kobo/ntx_io.lua

19 lines
528 B
Lua
Raw Normal View History

-- Stupid wrapper so that we can send simple ntx_io ioctls from shell scripts...
local ffi = require("ffi")
local bor = bit.bor
local C = ffi.C
require("ffi/posix_h")
assert(#arg == 2, "must pass an ioctl command & an ioctl argument")
local ioc_cmd = tonumber(arg[1])
local ioc_arg = tonumber(arg[2])
local fd = C.open("/dev/ntx_io", bor(C.O_RDONLY, C.O_NONBLOCK, C.O_CLOEXEC))
assert(fd ~= -1, "cannot open ntx_io character device")
assert(C.ioctl(fd, ioc_cmd, ffi.cast("int", ioc_arg)) == 0, "ioctl failed")
C.close(fd)