diff options
author | Bryant Mairs <bryant@mai.rs> | 2017-07-11 09:55:47 -0700 |
---|---|---|
committer | Bryant Mairs <bryant@mai.rs> | 2017-07-19 07:19:26 -0700 |
commit | 7e2bbdc75ab335ee4c34f8ed4a8d507663080a10 (patch) | |
tree | 9520c4008b01a3b1e3e01a220ad6e5a5a1f44ac1 | |
parent | 33e4aa792010f46d93fd4372ed1c9d7d34bc6c69 (diff) | |
download | nix-7e2bbdc75ab335ee4c34f8ed4a8d507663080a10.zip |
Add a "bad none" variant to the ioctl macro
-rw-r--r-- | src/sys/ioctl/mod.rs | 6 | ||||
-rw-r--r-- | test/sys/test_ioctl.rs | 1 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/sys/ioctl/mod.rs b/src/sys/ioctl/mod.rs index b3388c28..ac8ff149 100644 --- a/src/sys/ioctl/mod.rs +++ b/src/sys/ioctl/mod.rs @@ -137,6 +137,12 @@ macro_rules! ioctl { convert_ioctl_res!($crate::sys::ioctl::libc::ioctl(fd, $nr as $crate::sys::ioctl::libc::c_ulong, data)) } ); + (bad none $name:ident with $nr:expr) => ( + pub unsafe fn $name(fd: $crate::sys::ioctl::libc::c_int) + -> $crate::Result<$crate::sys::ioctl::libc::c_int> { + convert_ioctl_res!($crate::sys::ioctl::libc::ioctl(fd, $nr as $crate::sys::ioctl::libc::c_ulong)) + } + ); (none $name:ident with $ioty:expr, $nr:expr) => ( pub unsafe fn $name(fd: $crate::sys::ioctl::libc::c_int) -> $crate::Result<$crate::sys::ioctl::libc::c_int> { diff --git a/test/sys/test_ioctl.rs b/test/sys/test_ioctl.rs index 8a5b8a12..c0ae078a 100644 --- a/test/sys/test_ioctl.rs +++ b/test/sys/test_ioctl.rs @@ -2,6 +2,7 @@ // Simple tests to ensure macro generated fns compile ioctl!(bad do_bad with 0x1234); +ioctl!(bad none do_bad_none with 0x1234); ioctl!(none do_none with 0, 0); ioctl!(read read_test with 0, 0; u32); ioctl!(write write_test with 0, 0; u64); |