You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
394 lines
11 KiB
394 lines
11 KiB
/* automatically generated by rust-bindgen */
|
|
#![allow(clippy::all)]
|
|
|
|
pub type __rlim64_t = u64;
|
|
pub type __u8 = u8;
|
|
pub type __u16 = u16;
|
|
pub type __u32 = u32;
|
|
|
|
pub type __uid_t = ::std::os::raw::c_uint;
|
|
pub type __gid_t = ::std::os::raw::c_uint;
|
|
pub type __pid_t = ::std::os::raw::c_int;
|
|
pub type rlim_t = __rlim64_t;
|
|
pub type gid_t = __gid_t;
|
|
pub type uid_t = __uid_t;
|
|
pub type pid_t = __pid_t;
|
|
#[repr(C)]
|
|
pub struct sock_filter {
|
|
pub code: __u16,
|
|
pub jt: __u8,
|
|
pub jf: __u8,
|
|
pub k: __u32,
|
|
}
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct sock_fprog {
|
|
pub len: ::std::os::raw::c_ushort,
|
|
pub filter: *mut sock_filter,
|
|
}
|
|
pub const MINIJAIL_ERR_NO_ACCESS: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_NO_ACCESS;
|
|
pub const MINIJAIL_ERR_NO_COMMAND: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_NO_COMMAND;
|
|
pub const MINIJAIL_ERR_SIG_BASE: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_SIG_BASE;
|
|
pub const MINIJAIL_ERR_PRELOAD: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_PRELOAD;
|
|
pub const MINIJAIL_ERR_JAIL: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_JAIL;
|
|
pub const MINIJAIL_ERR_INIT: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_INIT;
|
|
#[repr(u32)]
|
|
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
|
|
pub enum _bindgen_ty_1 {
|
|
MINIJAIL_ERR_NO_ACCESS = 126,
|
|
MINIJAIL_ERR_NO_COMMAND = 127,
|
|
MINIJAIL_ERR_SIG_BASE = 128,
|
|
MINIJAIL_ERR_PRELOAD = 252,
|
|
MINIJAIL_ERR_JAIL = 253,
|
|
MINIJAIL_ERR_INIT = 254,
|
|
}
|
|
#[repr(C)]
|
|
#[derive(Debug, Copy, Clone)]
|
|
pub struct minijail {
|
|
_unused: [u8; 0],
|
|
}
|
|
pub type minijail_hook_t = ::std::option::Option<
|
|
unsafe extern "C" fn(context: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int,
|
|
>;
|
|
#[repr(u32)]
|
|
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
|
|
pub enum minijail_hook_event_t {
|
|
MINIJAIL_HOOK_EVENT_PRE_DROP_CAPS = 0,
|
|
MINIJAIL_HOOK_EVENT_PRE_EXECVE = 1,
|
|
MINIJAIL_HOOK_EVENT_PRE_CHROOT = 2,
|
|
MINIJAIL_HOOK_EVENT_MAX = 3,
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_new() -> *mut minijail;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_change_uid(j: *mut minijail, uid: uid_t);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_change_gid(j: *mut minijail, gid: gid_t);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_set_supplementary_gids(j: *mut minijail, size: usize, list: *const gid_t);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_keep_supplementary_gids(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_change_user(
|
|
j: *mut minijail,
|
|
user: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_change_group(
|
|
j: *mut minijail,
|
|
group: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_use_seccomp(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_no_new_privs(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_use_seccomp_filter(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_set_seccomp_filter_tsync(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_set_seccomp_filters(j: *mut minijail, filter: *const sock_fprog);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_parse_seccomp_filters(j: *mut minijail, path: *const ::std::os::raw::c_char);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_parse_seccomp_filters_from_fd(j: *mut minijail, fd: ::std::os::raw::c_int);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_log_seccomp_filter_failures(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_use_caps(j: *mut minijail, capmask: u64);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_capbset_drop(j: *mut minijail, capmask: u64);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_set_ambient_caps(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_reset_signal_mask(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_reset_signal_handlers(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_vfs(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_enter_vfs(j: *mut minijail, ns_path: *const ::std::os::raw::c_char);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_new_session_keyring(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_skip_setting_securebits(j: *mut minijail, securebits_skip_mask: u64);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_skip_remount_private(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_remount_mode(j: *mut minijail, mode: ::std::os::raw::c_ulong);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_ipc(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_uts(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_set_hostname(
|
|
j: *mut minijail,
|
|
name: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_net(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_enter_net(j: *mut minijail, ns_path: *const ::std::os::raw::c_char);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_cgroups(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_close_open_fds(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_pids(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_pids_rw_proc(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_user(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_namespace_user_disable_setgroups(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_uidmap(
|
|
j: *mut minijail,
|
|
uidmap: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_gidmap(
|
|
j: *mut minijail,
|
|
gidmap: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_remount_proc_readonly(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_run_as_init(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_write_pid_file(
|
|
j: *mut minijail,
|
|
path: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_inherit_usergroups(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_use_alt_syscall(
|
|
j: *mut minijail,
|
|
table: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_rlimit(
|
|
j: *mut minijail,
|
|
type_: ::std::os::raw::c_int,
|
|
cur: rlim_t,
|
|
max: rlim_t,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_add_to_cgroup(
|
|
j: *mut minijail,
|
|
path: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_forward_signals(j: *mut minijail) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_create_session(j: *mut minijail) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_enter_chroot(
|
|
j: *mut minijail,
|
|
dir: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_enter_pivot_root(
|
|
j: *mut minijail,
|
|
dir: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_get_original_path(
|
|
j: *mut minijail,
|
|
chroot_path: *const ::std::os::raw::c_char,
|
|
) -> *mut ::std::os::raw::c_char;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_mount_tmp(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_mount_tmp_size(j: *mut minijail, size: usize);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_mount_dev(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_mount_with_data(
|
|
j: *mut minijail,
|
|
src: *const ::std::os::raw::c_char,
|
|
dest: *const ::std::os::raw::c_char,
|
|
type_: *const ::std::os::raw::c_char,
|
|
flags: ::std::os::raw::c_ulong,
|
|
data: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_mount(
|
|
j: *mut minijail,
|
|
src: *const ::std::os::raw::c_char,
|
|
dest: *const ::std::os::raw::c_char,
|
|
type_: *const ::std::os::raw::c_char,
|
|
flags: ::std::os::raw::c_ulong,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_bind(
|
|
j: *mut minijail,
|
|
src: *const ::std::os::raw::c_char,
|
|
dest: *const ::std::os::raw::c_char,
|
|
writeable: ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_copy_jail(from: *const minijail, out: *mut minijail) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_add_hook(
|
|
j: *mut minijail,
|
|
hook: minijail_hook_t,
|
|
payload: *mut ::std::os::raw::c_void,
|
|
event: minijail_hook_event_t,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_preserve_fd(
|
|
j: *mut minijail,
|
|
parent_fd: ::std::os::raw::c_int,
|
|
child_fd: ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_set_preload_path(
|
|
j: *mut minijail,
|
|
preload_path: *const ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_enter(j: *const minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_run(
|
|
j: *mut minijail,
|
|
filename: *const ::std::os::raw::c_char,
|
|
argv: *const *mut ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_run_no_preload(
|
|
j: *mut minijail,
|
|
filename: *const ::std::os::raw::c_char,
|
|
argv: *const *mut ::std::os::raw::c_char,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_run_pid(
|
|
j: *mut minijail,
|
|
filename: *const ::std::os::raw::c_char,
|
|
argv: *const *mut ::std::os::raw::c_char,
|
|
pchild_pid: *mut pid_t,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_run_pipe(
|
|
j: *mut minijail,
|
|
filename: *const ::std::os::raw::c_char,
|
|
argv: *const *mut ::std::os::raw::c_char,
|
|
pstdin_fd: *mut ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_run_pid_pipes(
|
|
j: *mut minijail,
|
|
filename: *const ::std::os::raw::c_char,
|
|
argv: *const *mut ::std::os::raw::c_char,
|
|
pchild_pid: *mut pid_t,
|
|
pstdin_fd: *mut ::std::os::raw::c_int,
|
|
pstdout_fd: *mut ::std::os::raw::c_int,
|
|
pstderr_fd: *mut ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_run_pid_pipes_no_preload(
|
|
j: *mut minijail,
|
|
filename: *const ::std::os::raw::c_char,
|
|
argv: *const *mut ::std::os::raw::c_char,
|
|
pchild_pid: *mut pid_t,
|
|
pstdin_fd: *mut ::std::os::raw::c_int,
|
|
pstdout_fd: *mut ::std::os::raw::c_int,
|
|
pstderr_fd: *mut ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_run_env_pid_pipes_no_preload(
|
|
j: *mut minijail,
|
|
filename: *const ::std::os::raw::c_char,
|
|
argv: *const *mut ::std::os::raw::c_char,
|
|
envp: *const *mut ::std::os::raw::c_char,
|
|
pchild_pid: *mut pid_t,
|
|
pstdin_fd: *mut ::std::os::raw::c_int,
|
|
pstdout_fd: *mut ::std::os::raw::c_int,
|
|
pstderr_fd: *mut ::std::os::raw::c_int,
|
|
) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_fork(j: *mut minijail) -> pid_t;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_kill(j: *mut minijail) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_wait(j: *mut minijail) -> ::std::os::raw::c_int;
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_destroy(j: *mut minijail);
|
|
}
|
|
extern "C" {
|
|
pub fn minijail_log_to_fd(fd: ::std::os::raw::c_int, min_priority: ::std::os::raw::c_int);
|
|
}
|