mirror of
https://github.com/genuinetools/reg.git
synced 2024-08-21 14:20:23 -04:00
175 lines
3.7 KiB
Protocol Buffer
175 lines
3.7 KiB
Protocol Buffer
![]() |
message criu_page_server_info {
|
||
|
optional string address = 1;
|
||
|
optional int32 port = 2;
|
||
|
optional int32 pid = 3;
|
||
|
optional int32 fd = 4;
|
||
|
}
|
||
|
|
||
|
message criu_veth_pair {
|
||
|
required string if_in = 1;
|
||
|
required string if_out = 2;
|
||
|
};
|
||
|
|
||
|
message ext_mount_map {
|
||
|
required string key = 1;
|
||
|
required string val = 2;
|
||
|
};
|
||
|
|
||
|
message inherit_fd {
|
||
|
required string key = 1;
|
||
|
required int32 fd = 2;
|
||
|
};
|
||
|
|
||
|
message cgroup_root {
|
||
|
optional string ctrl = 1;
|
||
|
required string path = 2;
|
||
|
};
|
||
|
|
||
|
message unix_sk {
|
||
|
required uint32 inode = 1;
|
||
|
};
|
||
|
|
||
|
enum criu_cg_mode {
|
||
|
IGNORE = 0;
|
||
|
NONE = 1;
|
||
|
PROPS = 2;
|
||
|
SOFT = 3;
|
||
|
FULL = 4;
|
||
|
STRICT = 5;
|
||
|
DEFAULT = 6;
|
||
|
};
|
||
|
|
||
|
message criu_opts {
|
||
|
required int32 images_dir_fd = 1;
|
||
|
optional int32 pid = 2; /* if not set on dump, will dump requesting process */
|
||
|
|
||
|
optional bool leave_running = 3;
|
||
|
optional bool ext_unix_sk = 4;
|
||
|
optional bool tcp_established = 5;
|
||
|
optional bool evasive_devices = 6;
|
||
|
optional bool shell_job = 7;
|
||
|
optional bool file_locks = 8;
|
||
|
optional int32 log_level = 9 [default = 2];
|
||
|
optional string log_file = 10; /* No subdirs are allowed. Consider using work-dir */
|
||
|
|
||
|
optional criu_page_server_info ps = 11;
|
||
|
|
||
|
optional bool notify_scripts = 12;
|
||
|
|
||
|
optional string root = 13;
|
||
|
optional string parent_img = 14;
|
||
|
optional bool track_mem = 15;
|
||
|
optional bool auto_dedup = 16;
|
||
|
|
||
|
optional int32 work_dir_fd = 17;
|
||
|
optional bool link_remap = 18;
|
||
|
repeated criu_veth_pair veths = 19;
|
||
|
|
||
|
optional uint32 cpu_cap = 20 [default = 0xffffffff];
|
||
|
optional bool force_irmap = 21;
|
||
|
repeated string exec_cmd = 22;
|
||
|
|
||
|
repeated ext_mount_map ext_mnt = 23;
|
||
|
optional bool manage_cgroups = 24; /* backward compatibility */
|
||
|
repeated cgroup_root cg_root = 25;
|
||
|
|
||
|
optional bool rst_sibling = 26; /* swrk only */
|
||
|
repeated inherit_fd inherit_fd = 27; /* swrk only */
|
||
|
|
||
|
optional bool auto_ext_mnt = 28;
|
||
|
optional bool ext_sharing = 29;
|
||
|
optional bool ext_masters = 30;
|
||
|
|
||
|
repeated string skip_mnt = 31;
|
||
|
repeated string enable_fs = 32;
|
||
|
|
||
|
repeated unix_sk unix_sk_ino = 33;
|
||
|
|
||
|
optional criu_cg_mode manage_cgroups_mode = 34;
|
||
|
optional uint32 ghost_limit = 35 [default = 0x100000];
|
||
|
repeated string irmap_scan_paths = 36;
|
||
|
repeated string external = 37;
|
||
|
optional uint32 empty_ns = 38;
|
||
|
optional bool no_seccomp = 39;
|
||
|
}
|
||
|
|
||
|
message criu_dump_resp {
|
||
|
optional bool restored = 1;
|
||
|
}
|
||
|
|
||
|
message criu_restore_resp {
|
||
|
required int32 pid = 1;
|
||
|
}
|
||
|
|
||
|
message criu_notify {
|
||
|
optional string script = 1;
|
||
|
optional int32 pid = 2;
|
||
|
}
|
||
|
|
||
|
enum criu_req_type {
|
||
|
EMPTY = 0;
|
||
|
DUMP = 1;
|
||
|
RESTORE = 2;
|
||
|
CHECK = 3;
|
||
|
PRE_DUMP = 4;
|
||
|
PAGE_SERVER = 5;
|
||
|
|
||
|
NOTIFY = 6;
|
||
|
|
||
|
CPUINFO_DUMP = 7;
|
||
|
CPUINFO_CHECK = 8;
|
||
|
|
||
|
FEATURE_CHECK = 9;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* List of features which can queried via
|
||
|
* CRIU_REQ_TYPE__FEATURE_CHECK
|
||
|
*/
|
||
|
message criu_features {
|
||
|
optional bool mem_track = 1;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Request -- each type corresponds to must-be-there
|
||
|
* request arguments of respective type
|
||
|
*/
|
||
|
|
||
|
message criu_req {
|
||
|
required criu_req_type type = 1;
|
||
|
|
||
|
optional criu_opts opts = 2;
|
||
|
optional bool notify_success = 3;
|
||
|
|
||
|
/*
|
||
|
* When set service won't close the connection but
|
||
|
* will wait for more req-s to appear. Works not
|
||
|
* for all request types.
|
||
|
*/
|
||
|
optional bool keep_open = 4;
|
||
|
/*
|
||
|
* 'features' can be used to query which features
|
||
|
* are supported by the installed criu/kernel
|
||
|
* via RPC.
|
||
|
*/
|
||
|
optional criu_features features = 5;
|
||
|
}
|
||
|
|
||
|
/*
|
||
|
* Response -- it states whether the request was served
|
||
|
* and additional request-specific information
|
||
|
*/
|
||
|
|
||
|
message criu_resp {
|
||
|
required criu_req_type type = 1;
|
||
|
required bool success = 2;
|
||
|
|
||
|
optional criu_dump_resp dump = 3;
|
||
|
optional criu_restore_resp restore = 4;
|
||
|
optional criu_notify notify = 5;
|
||
|
optional criu_page_server_info ps = 6;
|
||
|
|
||
|
optional int32 cr_errno = 7;
|
||
|
optional criu_features features = 8;
|
||
|
}
|