8 个版本
使用旧 Rust 2015
0.2.0 | 2017年12月4日 |
---|---|
0.1.6 | 2017年11月20日 |
0.1.5 | 2016年1月27日 |
0.1.4 | 2015年11月5日 |
0.1.0 | 2015年5月27日 |
#422 在 Unix API 中
71,491 每月下载量
在 210 个包中 使用(直接使用5个)
20KB
412 行
IOCTL
ioctl-rs
包提供了对 Unix 操作系统系统 ioctl 调用的原始定义和安全的绑定。例如,ioctl 常量 TIOCEXCL
被导出为可以与不安全的 ioctl()
函数一起使用的常量。为一些处理输入输出参数并将返回值转换为 io::Result
的 ioctl 提供了包装函数。包装函数的名称与它们实现的 ioctl 相对应。例如,TIOCEXCL
在名为 tiocexcl()
的包装函数中实现。
使用方法
在 Cargo.toml
中将 ioctl-rs
添加为依赖项
[dependencies]
ioctl-rs = "0.2"
导入 ioctl_rs
包。您可能还需要 std::os::unix::io::RawFd
用于文件描述符,以及 std::io::Result
用于传播错误。
extern crate ioctl_rs as ioctl;
use std::io
use std::os::unix::io::RawFd;
fn setup_serial_port(fd: RawFd) -> io::Result<()> {
// put file descriptor in exclusive mode
try!(ioctl::tiocexcl(fd));
// clear all the modem pins
ioctl::tiocmset(fd, 0)
}
贡献
此存储库包含一个名为 ioctl_list
的 C++ 程序,该程序生成 ioctl 常量的 Rust 定义。要为新的平台贡献 ioctl 定义或添加新的 ioctl 定义,请遵循 ioctl_list
的 README 中的说明。
贡献者
许可证
版权所有 © 2015 David Cuddeback
在 MIT 许可证 下分发。
依赖关系
~42KB