项目作者: kolgotko

项目描述 :
Interface for system calls: jail_get, jail_set, jail_remove, jail_attach
高级语言: Rust
项目地址: git://github.com/kolgotko/libjail.git
创建时间: 2018-10-07T20:05:27Z
项目社区:https://github.com/kolgotko/libjail

开源协议:

下载


libjail

Interface for system calls: jail_get, jail_set, jail_remove, jail_attach

Example:

  1. #![feature(try_from)]
  2. extern crate libjail;
  3. use libjail::*;
  4. use std::collections::HashMap;
  5. use std::net::{Ipv4Addr, Ipv6Addr};
  6. use std::error::Error;
  7. use std::convert::TryInto;
  8. fn main() -> Result<(), Box<Error>> {
  9. let mut rules: HashMap<Val, Val> = HashMap::new();
  10. rules.insert("path".try_into()?, "/jails/freebsd112".try_into()?);
  11. rules.insert("name".try_into()?, "freebsd112".try_into()?);
  12. rules.insert("host.hostname".try_into()?, "freebsd112.local.net".try_into()?);
  13. rules.insert("ip4.addr".try_into()?, "127.0.0.2".try_into()?);
  14. rules.insert("persist".try_into()?, true.try_into()?);
  15. let jid = set(rules, Action::create()).unwrap();
  16. Ok(())
  17. }