mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-08-02 08:17:01 +00:00
netlink: pull out netlink as library crate.
Fixes: #111 Signed-off-by: Yang Bo <yb203166@antfin.com>
This commit is contained in:
parent
cfda17d529
commit
a5192a16e8
@ -8,6 +8,7 @@ edition = "2018"
|
||||
oci = { path = "oci" }
|
||||
rustjail = { path = "rustjail" }
|
||||
protocols = { path = "protocols" }
|
||||
netlink = { path = "netlink" }
|
||||
lazy_static = "1.3.0"
|
||||
error-chain = "0.12.1"
|
||||
grpcio = { git="https://github.com/alipay/grpc-rs", branch="rust_agent" }
|
||||
|
19
src/agent/netlink/Cargo.toml
Normal file
19
src/agent/netlink/Cargo.toml
Normal file
@ -0,0 +1,19 @@
|
||||
[package]
|
||||
name = "netlink"
|
||||
version = "0.1.0"
|
||||
authors = ["Yang Bo <yb203166@antfin.com>"]
|
||||
edition = "2018"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
libc = "0.2.58"
|
||||
nix = "0.14.1"
|
||||
protobuf = "2.6.1"
|
||||
rustjail = { path = "../rustjail" }
|
||||
protocols = { path = "../protocols" }
|
||||
slog = { version = "2.5.2", features = ["dynamic-keys", "max_level_trace", "release_max_level_info"] }
|
||||
slog-json = "2.3.0"
|
||||
slog-async = "2.3.0"
|
||||
slog-scope = "4.1.2"
|
||||
scan_fmt = "0.2.3"
|
@ -6,8 +6,24 @@
|
||||
#![allow(non_camel_case_types)]
|
||||
#![allow(non_upper_case_globals)]
|
||||
#![allow(dead_code)]
|
||||
#![allow(unused_parens)]
|
||||
#![allow(unused_unsafe)]
|
||||
|
||||
extern crate libc;
|
||||
extern crate nix;
|
||||
extern crate protobuf;
|
||||
extern crate protocols;
|
||||
extern crate rustjail;
|
||||
|
||||
#[macro_use]
|
||||
extern crate slog;
|
||||
extern crate slog_async;
|
||||
extern crate slog_json;
|
||||
extern crate slog_scope;
|
||||
|
||||
#[macro_use]
|
||||
extern crate scan_fmt;
|
||||
|
||||
use libc;
|
||||
use nix::errno::Errno;
|
||||
use protobuf::RepeatedField;
|
||||
use protocols::types::{IPAddress, IPFamily, Interface, Route};
|
||||
@ -2834,7 +2850,7 @@ impl From<IPAddress> for RtIPAddr {
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use crate::netlink::{nlmsghdr, NLMSG_ALIGNTO, RTA_ALIGNTO, RTM_BASE};
|
||||
use crate::{nlmsghdr, NLMSG_ALIGNTO, RTA_ALIGNTO, RTM_BASE};
|
||||
use libc;
|
||||
use std::mem;
|
||||
#[test]
|
@ -33,10 +33,10 @@ use crate::device::{add_devices, rescan_pci_bus};
|
||||
use crate::linux_abi::*;
|
||||
use crate::mount::{add_storages, remove_mounts, STORAGEHANDLERLIST};
|
||||
use crate::namespace::{NSTYPEIPC, NSTYPEPID, NSTYPEUTS};
|
||||
use crate::netlink::{RtnlHandle, NETLINK_ROUTE};
|
||||
use crate::random;
|
||||
use crate::sandbox::Sandbox;
|
||||
use crate::version::{AGENT_VERSION, API_VERSION};
|
||||
use netlink::{RtnlHandle, NETLINK_ROUTE};
|
||||
|
||||
use libc::{self, c_ushort, pid_t, winsize, TIOCSWINSZ};
|
||||
use serde_json;
|
||||
|
@ -24,6 +24,8 @@ extern crate oci;
|
||||
extern crate slog;
|
||||
extern crate slog_async;
|
||||
extern crate slog_json;
|
||||
#[macro_use]
|
||||
extern crate netlink;
|
||||
|
||||
use futures::*;
|
||||
use nix::sys::wait::{self, WaitStatus};
|
||||
@ -48,7 +50,6 @@ mod linux_abi;
|
||||
mod logging;
|
||||
mod mount;
|
||||
mod namespace;
|
||||
pub mod netlink;
|
||||
mod network;
|
||||
pub mod random;
|
||||
mod sandbox;
|
||||
|
@ -7,9 +7,9 @@
|
||||
use crate::linux_abi::*;
|
||||
use crate::mount::{get_mount_fs_type, remove_mounts, TYPEROOTFS};
|
||||
use crate::namespace::Namespace;
|
||||
use crate::netlink::{RtnlHandle, NETLINK_ROUTE};
|
||||
use crate::network::Network;
|
||||
use libc::pid_t;
|
||||
use netlink::{RtnlHandle, NETLINK_ROUTE};
|
||||
use protocols::agent::OnlineCPUMemRequest;
|
||||
use regex::Regex;
|
||||
use rustjail::cgroups;
|
||||
|
@ -5,9 +5,9 @@
|
||||
|
||||
use crate::device::online_device;
|
||||
use crate::linux_abi::*;
|
||||
use crate::netlink::{RtnlHandle, NETLINK_UEVENT};
|
||||
use crate::sandbox::Sandbox;
|
||||
use crate::GLOBAL_DEVICE_WATCHER;
|
||||
use netlink::{RtnlHandle, NETLINK_UEVENT};
|
||||
use slog::Logger;
|
||||
use std::sync::{Arc, Mutex};
|
||||
use std::thread;
|
||||
|
Loading…
Reference in New Issue
Block a user