1 pub type __rlim64_t = u64; 2 pub type __u8 = u8; 3 pub type __u16 = u16; 4 pub type __u32 = u32; 5 6 pub type __uid_t = ::std::os::raw::c_uint; 7 pub type __gid_t = ::std::os::raw::c_uint; 8 pub type __pid_t = ::std::os::raw::c_int; 9 pub type rlim_t = __rlim64_t; 10 pub type gid_t = __gid_t; 11 pub type uid_t = __uid_t; 12 pub type pid_t = __pid_t; 13 #[repr(C)] 14 pub struct sock_filter { 15 pub code: __u16, 16 pub jt: __u8, 17 pub jf: __u8, 18 pub k: __u32, 19 } 20 #[repr(C)] 21 #[derive(Debug, Copy, Clone)] 22 pub struct sock_fprog { 23 pub len: ::std::os::raw::c_ushort, 24 pub filter: *mut sock_filter, 25 } 26 pub const MINIJAIL_ERR_NO_ACCESS: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_NO_ACCESS; 27 pub const MINIJAIL_ERR_NO_COMMAND: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_NO_COMMAND; 28 pub const MINIJAIL_ERR_SIG_BASE: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_SIG_BASE; 29 pub const MINIJAIL_ERR_MOUNT: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_MOUNT; 30 pub const MINIJAIL_ERR_PRELOAD: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_PRELOAD; 31 pub const MINIJAIL_ERR_JAIL: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_JAIL; 32 pub const MINIJAIL_ERR_INIT: _bindgen_ty_1 = _bindgen_ty_1::MINIJAIL_ERR_INIT; 33 #[repr(u32)] 34 #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] 35 pub enum _bindgen_ty_1 { 36 MINIJAIL_ERR_NO_ACCESS = 126, 37 MINIJAIL_ERR_NO_COMMAND = 127, 38 MINIJAIL_ERR_SIG_BASE = 128, 39 MINIJAIL_ERR_MOUNT = 251, 40 MINIJAIL_ERR_PRELOAD = 252, 41 MINIJAIL_ERR_JAIL = 253, 42 MINIJAIL_ERR_INIT = 254, 43 } 44 #[repr(C)] 45 #[derive(Debug, Copy, Clone)] 46 pub struct minijail { 47 _unused: [u8; 0], 48 } 49 pub type minijail_hook_t = ::std::option::Option< 50 unsafe extern "C" fn(context: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int, 51 >; 52 #[repr(u32)] 53 #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] 54 pub enum minijail_hook_event_t { 55 MINIJAIL_HOOK_EVENT_PRE_DROP_CAPS = 0, 56 MINIJAIL_HOOK_EVENT_PRE_EXECVE = 1, 57 MINIJAIL_HOOK_EVENT_PRE_CHROOT = 2, 58 MINIJAIL_HOOK_EVENT_MAX = 3, 59 } 60 extern "C" { minijail_new() -> *mut minijail61 pub fn minijail_new() -> *mut minijail; 62 } 63 extern "C" { minijail_change_uid(j: *mut minijail, uid: uid_t)64 pub fn minijail_change_uid(j: *mut minijail, uid: uid_t); 65 } 66 extern "C" { minijail_change_gid(j: *mut minijail, gid: gid_t)67 pub fn minijail_change_gid(j: *mut minijail, gid: gid_t); 68 } 69 extern "C" { minijail_set_supplementary_gids(j: *mut minijail, size: usize, list: *const gid_t)70 pub fn minijail_set_supplementary_gids(j: *mut minijail, size: usize, list: *const gid_t); 71 } 72 extern "C" { minijail_keep_supplementary_gids(j: *mut minijail)73 pub fn minijail_keep_supplementary_gids(j: *mut minijail); 74 } 75 extern "C" { minijail_change_user( j: *mut minijail, user: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int76 pub fn minijail_change_user( 77 j: *mut minijail, 78 user: *const ::std::os::raw::c_char, 79 ) -> ::std::os::raw::c_int; 80 } 81 extern "C" { minijail_change_group( j: *mut minijail, group: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int82 pub fn minijail_change_group( 83 j: *mut minijail, 84 group: *const ::std::os::raw::c_char, 85 ) -> ::std::os::raw::c_int; 86 } 87 extern "C" { minijail_use_seccomp(j: *mut minijail)88 pub fn minijail_use_seccomp(j: *mut minijail); 89 } 90 extern "C" { minijail_no_new_privs(j: *mut minijail)91 pub fn minijail_no_new_privs(j: *mut minijail); 92 } 93 extern "C" { minijail_use_seccomp_filter(j: *mut minijail)94 pub fn minijail_use_seccomp_filter(j: *mut minijail); 95 } 96 extern "C" { minijail_set_seccomp_filter_tsync(j: *mut minijail)97 pub fn minijail_set_seccomp_filter_tsync(j: *mut minijail); 98 } 99 extern "C" { minijail_set_using_minimalistic_mountns(j: *mut minijail)100 pub fn minijail_set_using_minimalistic_mountns(j: *mut minijail); 101 } 102 extern "C" { minijail_add_minimalistic_mountns_fs_rules(j: *mut minijail)103 pub fn minijail_add_minimalistic_mountns_fs_rules(j: *mut minijail); 104 } 105 extern "C" { minijail_enable_default_fs_restrictions(j: *mut minijail)106 pub fn minijail_enable_default_fs_restrictions(j: *mut minijail); 107 } 108 extern "C" { minijail_set_seccomp_filter_allow_speculation(j: *mut minijail)109 pub fn minijail_set_seccomp_filter_allow_speculation(j: *mut minijail); 110 } 111 extern "C" { minijail_set_seccomp_filters(j: *mut minijail, filter: *const sock_fprog)112 pub fn minijail_set_seccomp_filters(j: *mut minijail, filter: *const sock_fprog); 113 } 114 extern "C" { minijail_parse_seccomp_filters(j: *mut minijail, path: *const ::std::os::raw::c_char)115 pub fn minijail_parse_seccomp_filters(j: *mut minijail, path: *const ::std::os::raw::c_char); 116 } 117 extern "C" { minijail_parse_seccomp_filters_from_fd(j: *mut minijail, fd: ::std::os::raw::c_int)118 pub fn minijail_parse_seccomp_filters_from_fd(j: *mut minijail, fd: ::std::os::raw::c_int); 119 } 120 extern "C" { minijail_log_seccomp_filter_failures(j: *mut minijail)121 pub fn minijail_log_seccomp_filter_failures(j: *mut minijail); 122 } 123 extern "C" { minijail_use_caps(j: *mut minijail, capmask: u64)124 pub fn minijail_use_caps(j: *mut minijail, capmask: u64); 125 } 126 extern "C" { minijail_capbset_drop(j: *mut minijail, capmask: u64)127 pub fn minijail_capbset_drop(j: *mut minijail, capmask: u64); 128 } 129 extern "C" { minijail_set_ambient_caps(j: *mut minijail)130 pub fn minijail_set_ambient_caps(j: *mut minijail); 131 } 132 extern "C" { minijail_reset_signal_mask(j: *mut minijail)133 pub fn minijail_reset_signal_mask(j: *mut minijail); 134 } 135 extern "C" { minijail_reset_signal_handlers(j: *mut minijail)136 pub fn minijail_reset_signal_handlers(j: *mut minijail); 137 } 138 extern "C" { minijail_namespace_vfs(j: *mut minijail)139 pub fn minijail_namespace_vfs(j: *mut minijail); 140 } 141 extern "C" { minijail_namespace_enter_vfs(j: *mut minijail, ns_path: *const ::std::os::raw::c_char)142 pub fn minijail_namespace_enter_vfs(j: *mut minijail, ns_path: *const ::std::os::raw::c_char); 143 } 144 extern "C" { minijail_new_session_keyring(j: *mut minijail)145 pub fn minijail_new_session_keyring(j: *mut minijail); 146 } 147 extern "C" { minijail_skip_setting_securebits(j: *mut minijail, securebits_skip_mask: u64)148 pub fn minijail_skip_setting_securebits(j: *mut minijail, securebits_skip_mask: u64); 149 } 150 extern "C" { minijail_skip_remount_private(j: *mut minijail)151 pub fn minijail_skip_remount_private(j: *mut minijail); 152 } 153 extern "C" { minijail_remount_mode(j: *mut minijail, mode: ::std::os::raw::c_ulong)154 pub fn minijail_remount_mode(j: *mut minijail, mode: ::std::os::raw::c_ulong); 155 } 156 extern "C" { minijail_namespace_ipc(j: *mut minijail)157 pub fn minijail_namespace_ipc(j: *mut minijail); 158 } 159 extern "C" { minijail_namespace_uts(j: *mut minijail)160 pub fn minijail_namespace_uts(j: *mut minijail); 161 } 162 extern "C" { minijail_namespace_set_hostname( j: *mut minijail, name: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int163 pub fn minijail_namespace_set_hostname( 164 j: *mut minijail, 165 name: *const ::std::os::raw::c_char, 166 ) -> ::std::os::raw::c_int; 167 } 168 extern "C" { minijail_namespace_net(j: *mut minijail)169 pub fn minijail_namespace_net(j: *mut minijail); 170 } 171 extern "C" { minijail_namespace_enter_net(j: *mut minijail, ns_path: *const ::std::os::raw::c_char)172 pub fn minijail_namespace_enter_net(j: *mut minijail, ns_path: *const ::std::os::raw::c_char); 173 } 174 extern "C" { minijail_namespace_cgroups(j: *mut minijail)175 pub fn minijail_namespace_cgroups(j: *mut minijail); 176 } 177 extern "C" { minijail_close_open_fds(j: *mut minijail)178 pub fn minijail_close_open_fds(j: *mut minijail); 179 } 180 extern "C" { minijail_namespace_pids(j: *mut minijail)181 pub fn minijail_namespace_pids(j: *mut minijail); 182 } 183 extern "C" { minijail_namespace_pids_rw_proc(j: *mut minijail)184 pub fn minijail_namespace_pids_rw_proc(j: *mut minijail); 185 } 186 extern "C" { minijail_namespace_user(j: *mut minijail)187 pub fn minijail_namespace_user(j: *mut minijail); 188 } 189 extern "C" { minijail_namespace_user_disable_setgroups(j: *mut minijail)190 pub fn minijail_namespace_user_disable_setgroups(j: *mut minijail); 191 } 192 extern "C" { minijail_uidmap( j: *mut minijail, uidmap: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int193 pub fn minijail_uidmap( 194 j: *mut minijail, 195 uidmap: *const ::std::os::raw::c_char, 196 ) -> ::std::os::raw::c_int; 197 } 198 extern "C" { minijail_gidmap( j: *mut minijail, gidmap: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int199 pub fn minijail_gidmap( 200 j: *mut minijail, 201 gidmap: *const ::std::os::raw::c_char, 202 ) -> ::std::os::raw::c_int; 203 } 204 extern "C" { minijail_remount_proc_readonly(j: *mut minijail)205 pub fn minijail_remount_proc_readonly(j: *mut minijail); 206 } 207 extern "C" { minijail_run_as_init(j: *mut minijail)208 pub fn minijail_run_as_init(j: *mut minijail); 209 } 210 extern "C" { minijail_write_pid_file( j: *mut minijail, path: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int211 pub fn minijail_write_pid_file( 212 j: *mut minijail, 213 path: *const ::std::os::raw::c_char, 214 ) -> ::std::os::raw::c_int; 215 } 216 extern "C" { minijail_inherit_usergroups(j: *mut minijail)217 pub fn minijail_inherit_usergroups(j: *mut minijail); 218 } 219 extern "C" { minijail_use_alt_syscall( j: *mut minijail, table: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int220 pub fn minijail_use_alt_syscall( 221 j: *mut minijail, 222 table: *const ::std::os::raw::c_char, 223 ) -> ::std::os::raw::c_int; 224 } 225 extern "C" { minijail_rlimit( j: *mut minijail, type_: ::std::os::raw::c_int, cur: rlim_t, max: rlim_t, ) -> ::std::os::raw::c_int226 pub fn minijail_rlimit( 227 j: *mut minijail, 228 type_: ::std::os::raw::c_int, 229 cur: rlim_t, 230 max: rlim_t, 231 ) -> ::std::os::raw::c_int; 232 } 233 extern "C" { minijail_add_to_cgroup( j: *mut minijail, path: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int234 pub fn minijail_add_to_cgroup( 235 j: *mut minijail, 236 path: *const ::std::os::raw::c_char, 237 ) -> ::std::os::raw::c_int; 238 } 239 extern "C" { minijail_add_fs_restriction_rx( j: *mut minijail, path: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int240 pub fn minijail_add_fs_restriction_rx( 241 j: *mut minijail, 242 path: *const ::std::os::raw::c_char, 243 ) -> ::std::os::raw::c_int; 244 } 245 extern "C" { minijail_add_fs_restriction_ro( j: *mut minijail, path: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int246 pub fn minijail_add_fs_restriction_ro( 247 j: *mut minijail, 248 path: *const ::std::os::raw::c_char, 249 ) -> ::std::os::raw::c_int; 250 } 251 extern "C" { minijail_add_fs_restriction_rw( j: *mut minijail, path: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int252 pub fn minijail_add_fs_restriction_rw( 253 j: *mut minijail, 254 path: *const ::std::os::raw::c_char, 255 ) -> ::std::os::raw::c_int; 256 } 257 extern "C" { minijail_add_fs_restriction_advanced_rw( j: *mut minijail, path: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int258 pub fn minijail_add_fs_restriction_advanced_rw( 259 j: *mut minijail, 260 path: *const ::std::os::raw::c_char, 261 ) -> ::std::os::raw::c_int; 262 } 263 extern "C" { minijail_add_fs_restriction_edit( j: *mut minijail, path: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int264 pub fn minijail_add_fs_restriction_edit( 265 j: *mut minijail, 266 path: *const ::std::os::raw::c_char, 267 ) -> ::std::os::raw::c_int; 268 } 269 extern "C" { minijail_forward_signals(j: *mut minijail) -> ::std::os::raw::c_int270 pub fn minijail_forward_signals(j: *mut minijail) -> ::std::os::raw::c_int; 271 } 272 extern "C" { minijail_create_session(j: *mut minijail) -> ::std::os::raw::c_int273 pub fn minijail_create_session(j: *mut minijail) -> ::std::os::raw::c_int; 274 } 275 extern "C" { minijail_enter_chroot( j: *mut minijail, dir: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int276 pub fn minijail_enter_chroot( 277 j: *mut minijail, 278 dir: *const ::std::os::raw::c_char, 279 ) -> ::std::os::raw::c_int; 280 } 281 extern "C" { minijail_enter_pivot_root( j: *mut minijail, dir: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int282 pub fn minijail_enter_pivot_root( 283 j: *mut minijail, 284 dir: *const ::std::os::raw::c_char, 285 ) -> ::std::os::raw::c_int; 286 } 287 extern "C" { minijail_get_original_path( j: *mut minijail, chroot_path: *const ::std::os::raw::c_char, ) -> *mut ::std::os::raw::c_char288 pub fn minijail_get_original_path( 289 j: *mut minijail, 290 chroot_path: *const ::std::os::raw::c_char, 291 ) -> *mut ::std::os::raw::c_char; 292 } 293 extern "C" { minijail_mount_tmp(j: *mut minijail)294 pub fn minijail_mount_tmp(j: *mut minijail); 295 } 296 extern "C" { minijail_mount_tmp_size(j: *mut minijail, size: usize)297 pub fn minijail_mount_tmp_size(j: *mut minijail, size: usize); 298 } 299 extern "C" { minijail_mount_dev(j: *mut minijail)300 pub fn minijail_mount_dev(j: *mut minijail); 301 } 302 extern "C" { 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_int303 pub fn minijail_mount_with_data( 304 j: *mut minijail, 305 src: *const ::std::os::raw::c_char, 306 dest: *const ::std::os::raw::c_char, 307 type_: *const ::std::os::raw::c_char, 308 flags: ::std::os::raw::c_ulong, 309 data: *const ::std::os::raw::c_char, 310 ) -> ::std::os::raw::c_int; 311 } 312 extern "C" { 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_int313 pub fn minijail_mount( 314 j: *mut minijail, 315 src: *const ::std::os::raw::c_char, 316 dest: *const ::std::os::raw::c_char, 317 type_: *const ::std::os::raw::c_char, 318 flags: ::std::os::raw::c_ulong, 319 ) -> ::std::os::raw::c_int; 320 } 321 extern "C" { 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_int322 pub fn minijail_bind( 323 j: *mut minijail, 324 src: *const ::std::os::raw::c_char, 325 dest: *const ::std::os::raw::c_char, 326 writeable: ::std::os::raw::c_int, 327 ) -> ::std::os::raw::c_int; 328 } 329 extern "C" { minijail_add_remount( j: *mut minijail, mount_name: *const ::std::os::raw::c_char, remount_mode: ::std::os::raw::c_ulong, ) -> ::std::os::raw::c_int330 pub fn minijail_add_remount( 331 j: *mut minijail, 332 mount_name: *const ::std::os::raw::c_char, 333 remount_mode: ::std::os::raw::c_ulong, 334 ) -> ::std::os::raw::c_int; 335 } 336 extern "C" { 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_int337 pub fn minijail_add_hook( 338 j: *mut minijail, 339 hook: minijail_hook_t, 340 payload: *mut ::std::os::raw::c_void, 341 event: minijail_hook_event_t, 342 ) -> ::std::os::raw::c_int; 343 } 344 extern "C" { minijail_preserve_fd( j: *mut minijail, parent_fd: ::std::os::raw::c_int, child_fd: ::std::os::raw::c_int, ) -> ::std::os::raw::c_int345 pub fn minijail_preserve_fd( 346 j: *mut minijail, 347 parent_fd: ::std::os::raw::c_int, 348 child_fd: ::std::os::raw::c_int, 349 ) -> ::std::os::raw::c_int; 350 } 351 extern "C" { minijail_set_preload_path( j: *mut minijail, preload_path: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int352 pub fn minijail_set_preload_path( 353 j: *mut minijail, 354 preload_path: *const ::std::os::raw::c_char, 355 ) -> ::std::os::raw::c_int; 356 } 357 extern "C" { minijail_enter(j: *const minijail)358 pub fn minijail_enter(j: *const minijail); 359 } 360 extern "C" { minijail_run_env( 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, ) -> ::std::os::raw::c_int361 pub fn minijail_run_env( 362 j: *mut minijail, 363 filename: *const ::std::os::raw::c_char, 364 argv: *const *mut ::std::os::raw::c_char, 365 envp: *const *mut ::std::os::raw::c_char, 366 ) -> ::std::os::raw::c_int; 367 } 368 extern "C" { minijail_run( j: *mut minijail, filename: *const ::std::os::raw::c_char, argv: *const *mut ::std::os::raw::c_char, ) -> ::std::os::raw::c_int369 pub fn minijail_run( 370 j: *mut minijail, 371 filename: *const ::std::os::raw::c_char, 372 argv: *const *mut ::std::os::raw::c_char, 373 ) -> ::std::os::raw::c_int; 374 } 375 extern "C" { 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_int376 pub fn minijail_run_no_preload( 377 j: *mut minijail, 378 filename: *const ::std::os::raw::c_char, 379 argv: *const *mut ::std::os::raw::c_char, 380 ) -> ::std::os::raw::c_int; 381 } 382 extern "C" { 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_int383 pub fn minijail_run_pid( 384 j: *mut minijail, 385 filename: *const ::std::os::raw::c_char, 386 argv: *const *mut ::std::os::raw::c_char, 387 pchild_pid: *mut pid_t, 388 ) -> ::std::os::raw::c_int; 389 } 390 extern "C" { 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_int391 pub fn minijail_run_pipe( 392 j: *mut minijail, 393 filename: *const ::std::os::raw::c_char, 394 argv: *const *mut ::std::os::raw::c_char, 395 pstdin_fd: *mut ::std::os::raw::c_int, 396 ) -> ::std::os::raw::c_int; 397 } 398 extern "C" { 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_int399 pub fn minijail_run_pid_pipes( 400 j: *mut minijail, 401 filename: *const ::std::os::raw::c_char, 402 argv: *const *mut ::std::os::raw::c_char, 403 pchild_pid: *mut pid_t, 404 pstdin_fd: *mut ::std::os::raw::c_int, 405 pstdout_fd: *mut ::std::os::raw::c_int, 406 pstderr_fd: *mut ::std::os::raw::c_int, 407 ) -> ::std::os::raw::c_int; 408 } 409 extern "C" { minijail_run_env_pid_pipes( 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_int410 pub fn minijail_run_env_pid_pipes( 411 j: *mut minijail, 412 filename: *const ::std::os::raw::c_char, 413 argv: *const *mut ::std::os::raw::c_char, 414 envp: *const *mut ::std::os::raw::c_char, 415 pchild_pid: *mut pid_t, 416 pstdin_fd: *mut ::std::os::raw::c_int, 417 pstdout_fd: *mut ::std::os::raw::c_int, 418 pstderr_fd: *mut ::std::os::raw::c_int, 419 ) -> ::std::os::raw::c_int; 420 } 421 extern "C" { minijail_run_fd_env_pid_pipes( j: *mut minijail, elf_fd: ::std::os::raw::c_int, 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_int422 pub fn minijail_run_fd_env_pid_pipes( 423 j: *mut minijail, 424 elf_fd: ::std::os::raw::c_int, 425 argv: *const *mut ::std::os::raw::c_char, 426 envp: *const *mut ::std::os::raw::c_char, 427 pchild_pid: *mut pid_t, 428 pstdin_fd: *mut ::std::os::raw::c_int, 429 pstdout_fd: *mut ::std::os::raw::c_int, 430 pstderr_fd: *mut ::std::os::raw::c_int, 431 ) -> ::std::os::raw::c_int; 432 } 433 extern "C" { 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_int434 pub fn minijail_run_pid_pipes_no_preload( 435 j: *mut minijail, 436 filename: *const ::std::os::raw::c_char, 437 argv: *const *mut ::std::os::raw::c_char, 438 pchild_pid: *mut pid_t, 439 pstdin_fd: *mut ::std::os::raw::c_int, 440 pstdout_fd: *mut ::std::os::raw::c_int, 441 pstderr_fd: *mut ::std::os::raw::c_int, 442 ) -> ::std::os::raw::c_int; 443 } 444 extern "C" { 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_int445 pub fn minijail_run_env_pid_pipes_no_preload( 446 j: *mut minijail, 447 filename: *const ::std::os::raw::c_char, 448 argv: *const *mut ::std::os::raw::c_char, 449 envp: *const *mut ::std::os::raw::c_char, 450 pchild_pid: *mut pid_t, 451 pstdin_fd: *mut ::std::os::raw::c_int, 452 pstdout_fd: *mut ::std::os::raw::c_int, 453 pstderr_fd: *mut ::std::os::raw::c_int, 454 ) -> ::std::os::raw::c_int; 455 } 456 extern "C" { minijail_fork(j: *mut minijail) -> pid_t457 pub fn minijail_fork(j: *mut minijail) -> pid_t; 458 } 459 extern "C" { minijail_kill(j: *mut minijail) -> ::std::os::raw::c_int460 pub fn minijail_kill(j: *mut minijail) -> ::std::os::raw::c_int; 461 } 462 extern "C" { minijail_wait(j: *mut minijail) -> ::std::os::raw::c_int463 pub fn minijail_wait(j: *mut minijail) -> ::std::os::raw::c_int; 464 } 465 extern "C" { minijail_destroy(j: *mut minijail)466 pub fn minijail_destroy(j: *mut minijail); 467 } 468 extern "C" { minijail_copy_jail(from: *const minijail, out: *mut minijail) -> ::std::os::raw::c_int469 pub fn minijail_copy_jail(from: *const minijail, out: *mut minijail) -> ::std::os::raw::c_int; 470 } 471 extern "C" { minijail_log_to_fd(fd: ::std::os::raw::c_int, min_priority: ::std::os::raw::c_int)472 pub fn minijail_log_to_fd(fd: ::std::os::raw::c_int, min_priority: ::std::os::raw::c_int); 473 } 474