linux: Add splice, tee, vmsplice
This commit is contained in:
parent
748c92a098
commit
0cfc25fe96
@ -4,6 +4,7 @@ pub type sa_family_t = u16;
|
|||||||
pub type pthread_key_t = ::c_uint;
|
pub type pthread_key_t = ::c_uint;
|
||||||
pub type speed_t = ::c_uint;
|
pub type speed_t = ::c_uint;
|
||||||
pub type tcflag_t = ::c_uint;
|
pub type tcflag_t = ::c_uint;
|
||||||
|
pub type loff_t = ::c_longlong;
|
||||||
|
|
||||||
pub enum timezone {}
|
pub enum timezone {}
|
||||||
|
|
||||||
@ -526,6 +527,11 @@ pub const CLONE_CHILD_SETTID: ::c_int = 0x01000000;
|
|||||||
|
|
||||||
pub const WNOHANG: ::c_int = 1;
|
pub const WNOHANG: ::c_int = 1;
|
||||||
|
|
||||||
|
pub const SPLICE_F_MOVE: ::c_uint = 0x01;
|
||||||
|
pub const SPLICE_F_NONBLOCK: ::c_uint = 0x02;
|
||||||
|
pub const SPLICE_F_MORE: ::c_uint = 0x04;
|
||||||
|
pub const SPLICE_F_GIFT: ::c_uint = 0x08;
|
||||||
|
|
||||||
f! {
|
f! {
|
||||||
pub fn FD_CLR(fd: ::c_int, set: *mut fd_set) -> () {
|
pub fn FD_CLR(fd: ::c_int, set: *mut fd_set) -> () {
|
||||||
let fd = fd as usize;
|
let fd = fd as usize;
|
||||||
@ -616,6 +622,21 @@ extern {
|
|||||||
pub fn fstatfs(fd: ::c_int, buf: *mut statfs) -> ::c_int;
|
pub fn fstatfs(fd: ::c_int, buf: *mut statfs) -> ::c_int;
|
||||||
pub fn memrchr(cx: *const ::c_void, c: ::c_int, n: ::size_t) -> *mut ::c_void;
|
pub fn memrchr(cx: *const ::c_void, c: ::c_int, n: ::size_t) -> *mut ::c_void;
|
||||||
pub fn syscall(num: ::c_long, ...) -> ::c_long;
|
pub fn syscall(num: ::c_long, ...) -> ::c_long;
|
||||||
|
pub fn splice(fd_in: ::c_int,
|
||||||
|
off_in: *mut ::loff_t,
|
||||||
|
fd_out: ::c_int,
|
||||||
|
off_out: *mut ::loff_t,
|
||||||
|
len: ::size_t,
|
||||||
|
flags: ::c_uint) -> ::ssize_t;
|
||||||
|
pub fn tee(fd_in: ::c_int,
|
||||||
|
fd_out: ::c_int,
|
||||||
|
len: ::size_t,
|
||||||
|
flags: ::c_uint) -> ::ssize_t;
|
||||||
|
pub fn vmsplice(fd: ::c_int,
|
||||||
|
iov: *const ::iovec,
|
||||||
|
nr_segs: ::size_t,
|
||||||
|
flags: ::c_uint) -> ::ssize_t;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
cfg_if! {
|
cfg_if! {
|
||||||
|
Loading…
Reference in New Issue
Block a user