1extern crate libc;
11
12use ::libc::{size_t, mode_t};
13use ::libc::{c_void, c_char, c_int, c_longlong, c_uint};
14
15pub enum PMEMblkpool {}
16
17#[allow(dead_code)]
18#[link(name = "pmemblk")]
19extern "C" {
20 pub fn pmemblk_open(path: *const c_char, bsize: size_t) -> *mut PMEMblkpool;
23 pub fn pmemblk_create(path: *const c_char, bsize: size_t, poolsize: size_t, mode: mode_t) -> *mut PMEMblkpool;
24 pub fn pmemblk_close(pbp: *mut PMEMblkpool);
25 pub fn pmemblk_bsize(pbp: *mut PMEMblkpool) -> size_t;
26 pub fn pmemblk_nblock(pbp: *mut PMEMblkpool) -> size_t;
27 pub fn pmemblk_read(pbp: *mut PMEMblkpool, buf: *mut c_void, blockno: c_longlong) -> c_int;
28 pub fn pmemblk_write(pbp: *mut PMEMblkpool, buf: *const c_void, blockno: c_longlong) -> c_int;
29 pub fn pmemblk_set_zero(pbp: *mut PMEMblkpool, blockno: c_longlong) -> c_int;
30 pub fn pmemblk_set_error(pbp: *mut PMEMblkpool, blockno: c_longlong) -> c_int;
31
32 pub fn pmemblk_check_version(major_required: c_uint, minor_required: c_uint) -> *const c_char;
35
36 pub fn pmemblk_check(path: *const c_char, bsize: size_t) -> c_int;
39
40 pub fn pmemblk_errormsg() -> *const c_char;
43
44 pub static PMEMBLK_MIN_POOL: size_t;
47}