config.proto: renumerate fields
authorRobert Swiecki <robert@swiecki.net>
Tue, 10 Aug 2021 17:17:33 +0000 (19:17 +0200)
committerRobert Swiecki <robert@swiecki.net>
Tue, 10 Aug 2021 17:17:33 +0000 (19:17 +0200)
config.proto

index ab616dee3a1d14716bd6e3edb77e243ca76cb923..96a2b1041783b245d893bdcbd1f8e9ca801a55d3 100644 (file)
@@ -82,184 +82,184 @@ message NsJailConfig {
     /* Execution mode: see 'msg Mode' description for more */
     optional Mode mode = 3 [default = ONCE];
     /* Hostname inside jail */
-    optional string hostname = 8 [default = "NSJAIL"];
+    optional string hostname = 4 [default = "NSJAIL"];
     /* Initial current working directory for the binary */
-    optional string cwd = 9 [default = "/"];
+    optional string cwd = 5 [default = "/"];
 
     /* Defines whether to use switch_root or pivot_root */
-    optional bool no_pivotroot = 94 [default = false];
+    optional bool no_pivotroot = 6 [default = false];
 
     /* TCP port to listen to. Valid with mode=LISTEN only */
-    optional uint32 port = 10 [default = 0];
+    optional uint32 port = 7 [default = 0];
     /* Host to bind to for mode=LISTEN. Must be in IPv6 format */
-    optional string bindhost = 11 [default = "::"];
+    optional string bindhost = 8 [default = "::"];
     /* For mode=LISTEN, maximum number of connections across all IPs */
-    optional uint32 max_conns = 85 [default = 0];
+    optional uint32 max_conns = 9 [default = 0];
     /* For mode=LISTEN, maximum number of connections from a single IP */
-    optional uint32 max_conns_per_ip = 12 [default = 0];
+    optional uint32 max_conns_per_ip = 10 [default = 0];
 
     /* Wall-time time limit for commands */
-    optional uint32 time_limit = 13 [default = 600];
+    optional uint32 time_limit = 11 [default = 600];
     /* Should nsjail go into background? */
-    optional bool daemon = 14 [default = false];
+    optional bool daemon = 12 [default = false];
     /* Maximum number of CPUs to use: 0 - no limit */
-    optional uint32 max_cpus = 15 [default = 0];
+    optional uint32 max_cpus = 13 [default = 0];
 
     /* FD to log to. */
-    optional int32 log_fd = 16;
+    optional int32 log_fd = 14;
     /* File to save logs to. */
-    optional string log_file = 17;
+    optional string log_file = 15;
     /* Minimum log level displayed.
        See 'msg LogLevel' description for more */
-    optional LogLevel log_level = 18;
+    optional LogLevel log_level = 16;
 
     /* Should the current environment variables be kept
        when executing the binary */
-    optional bool keep_env = 19 [default = false];
+    optional bool keep_env = 17 [default = false];
     /* EnvVars to be set before executing binaries. If the envar doesn't contain '='
        (e.g. just the 'DISPLAY' string), the current envar value will be used */
-    repeated string envar = 20;
+    repeated string envar = 18;
 
     /* Should capabilities be preserved or dropped */
-    optional bool keep_caps = 21 [default = false];
+    optional bool keep_caps = 19 [default = false];
     /* Which capabilities should be preserved if keep_caps == false.
        Format: "CAP_SYS_PTRACE" */
-    repeated string cap = 22;
+    repeated string cap = 20;
     /* Should nsjail close FD=0,1,2 before executing the process */
-    optional bool silent = 23 [default = false];
+    optional bool silent = 21 [default = false];
     /* Should the child process have control over terminal?
        Can be useful to allow /bin/sh to provide
        job control / signals. Dangerous, can be used to put
        characters into the controlling terminal back */
-    optional bool skip_setsid = 24 [default = false];
+    optional bool skip_setsid = 22 [default = false];
     /* Redirect sdterr of the process to /dev/null instead of the socket or original TTY */
-    optional bool stderr_to_null = 25 [default = false];
+    optional bool stderr_to_null = 23 [default = false];
     /* Which FDs should be passed to the newly executed process
        By default only FD=0,1,2 are passed */
-    repeated int32 pass_fd = 26;
+    repeated int32 pass_fd = 24;
     /* Setting it to true will allow to have set-uid binaries
        inside the jail */
-    optional bool disable_no_new_privs = 27 [default = false];
+    optional bool disable_no_new_privs = 25 [default = false];
 
     /* Various rlimits, the rlimit_as/rlimit_core/... are used only if
        rlimit_as_type/rlimit_core_type/... are set to RLimit::VALUE */
-    optional uint64 rlimit_as = 28 [default = 4096]; /* In MiB */
-    optional RLimit rlimit_as_type = 29 [default = VALUE];
-    optional uint64 rlimit_core = 30 [default = 0]; /* In MiB */
-    optional RLimit rlimit_core_type = 31 [default = VALUE];
-    optional uint64 rlimit_cpu = 32 [default = 600]; /* In seconds */
-    optional RLimit rlimit_cpu_type = 33 [default = VALUE];
-    optional uint64 rlimit_fsize = 34 [default = 1]; /* In MiB */
-    optional RLimit rlimit_fsize_type = 35 [default = VALUE];
-    optional uint64 rlimit_nofile = 36 [default = 32];
-    optional RLimit rlimit_nofile_type = 37 [default = VALUE];
+    optional uint64 rlimit_as = 26 [default = 4096]; /* In MiB */
+    optional RLimit rlimit_as_type = 27 [default = VALUE];
+    optional uint64 rlimit_core = 28 [default = 0]; /* In MiB */
+    optional RLimit rlimit_core_type = 29 [default = VALUE];
+    optional uint64 rlimit_cpu = 30 [default = 600]; /* In seconds */
+    optional RLimit rlimit_cpu_type = 31 [default = VALUE];
+    optional uint64 rlimit_fsize = 32 [default = 1]; /* In MiB */
+    optional RLimit rlimit_fsize_type = 33 [default = VALUE];
+    optional uint64 rlimit_nofile = 34 [default = 32];
+    optional RLimit rlimit_nofile_type = 35 [default = VALUE];
     /* RLIMIT_NPROC is system-wide - tricky to use; use the soft limit value by
      * default here */
-    optional uint64 rlimit_nproc = 38 [default = 1024];
-    optional RLimit rlimit_nproc_type = 39 [default = SOFT];
+    optional uint64 rlimit_nproc = 36 [default = 1024];
+    optional RLimit rlimit_nproc_type = 37 [default = SOFT];
     /* In MiB, use the soft limit value by default */
-    optional uint64 rlimit_stack = 40 [default = 8];
-    optional RLimit rlimit_stack_type = 41 [default = SOFT];
+    optional uint64 rlimit_stack = 38 [default = 8];
+    optional RLimit rlimit_stack_type = 39 [default = SOFT];
     /* In KB, use the soft limit value by default */
-    optional uint64 rlimit_memlock = 88 [default = 64];
-    optional RLimit rlimit_memlock_type = 89 [default = SOFT];
-    optional uint64 rlimit_rtprio = 90 [default = 0];
-    optional RLimit rlimit_rtprio_type = 91 [default = SOFT];
-    optional uint64 rlimit_msgqueue = 92 [default = 1024]; /* In bytes */
-    optional RLimit rlimit_msgqueue_type = 93 [default = SOFT];
+    optional uint64 rlimit_memlock = 40 [default = 64];
+    optional RLimit rlimit_memlock_type = 41 [default = SOFT];
+    optional uint64 rlimit_rtprio = 42 [default = 0];
+    optional RLimit rlimit_rtprio_type = 43 [default = SOFT];
+    optional uint64 rlimit_msgqueue = 44 [default = 1024]; /* In bytes */
+    optional RLimit rlimit_msgqueue_type = 45 [default = SOFT];
 
     /* Disable all rlimits, default to limits set by parent */
-    optional bool disable_rl = 84 [default = false];
+    optional bool disable_rl = 46 [default = false];
 
     /* See 'man personality' for more */
-    optional bool persona_addr_compat_layout = 42 [default = false];
-    optional bool persona_mmap_page_zero = 43 [default = false];
-    optional bool persona_read_implies_exec = 44 [default = false];
-    optional bool persona_addr_limit_3gb = 45 [default = false];
-    optional bool persona_addr_no_randomize = 46 [default = false];
+    optional bool persona_addr_compat_layout = 47 [default = false];
+    optional bool persona_mmap_page_zero = 48 [default = false];
+    optional bool persona_read_implies_exec = 49 [default = false];
+    optional bool persona_addr_limit_3gb = 50 [default = false];
+    optional bool persona_addr_no_randomize = 51 [default = false];
 
     /* Which name-spaces should be used? */
-    optional bool clone_newnet = 47 [default = true];
-    optional bool clone_newuser = 48 [default = true];
-    optional bool clone_newns = 49 [default = true];
-    optional bool clone_newpid = 50 [default = true];
-    optional bool clone_newipc = 51 [default = true];
-    optional bool clone_newuts = 52 [default = true];
+    optional bool clone_newnet = 52 [default = true];
+    optional bool clone_newuser = 53 [default = true];
+    optional bool clone_newns = 54 [default = true];
+    optional bool clone_newpid = 55 [default = true];
+    optional bool clone_newipc = 56 [default = true];
+    optional bool clone_newuts = 57 [default = true];
     /* Disable for kernel versions < 4.6 as it's not supported there */
-    optional bool clone_newcgroup = 53 [default = true];
+    optional bool clone_newcgroup = 58 [default = true];
     /* Supported with kernel versions >= 5.3 */
-    optional bool clone_newtime = 86 [default = false];
+    optional bool clone_newtime = 59 [default = false];
 
     /* Mappings for UIDs and GIDs. See the description for 'msg IdMap'
        for more */
-    repeated IdMap uidmap = 54;
-    repeated IdMap gidmap = 55;
+    repeated IdMap uidmap = 60;
+    repeated IdMap gidmap = 61;
 
     /* Should /proc be mounted (R/O)? This can also be added in the 'mount'
        section below */
-    optional bool mount_proc = 56 [default = false];
+    optional bool mount_proc = 62 [default = false];
     /* Mount points inside the jail. See the description for 'msg MountPt'
        for more */
-    repeated MountPt mount = 57;
+    repeated MountPt mount = 63;
 
     /* Kafel seccomp-bpf policy file or a string:
        Homepage of the project: https://github.com/google/kafel */
-    optional string seccomp_policy_file = 58;
-    repeated string seccomp_string = 59;
+    optional string seccomp_policy_file = 64;
+    repeated string seccomp_string = 65;
     /* Setting it to true makes audit write seccomp logs to dmesg */
-    optional bool seccomp_log = 60 [default = false];
+    optional bool seccomp_log = 66 [default = false];
 
     /* If > 0, maximum cumulative size of RAM used inside any jail */
-    optional uint64 cgroup_mem_max = 61 [default = 0]; /* In bytes */
+    optional uint64 cgroup_mem_max = 67 [default = 0]; /* In bytes */
     /* Mount point for cgroups-memory in your system */
-    optional string cgroup_mem_mount = 62 [default = "/sys/fs/cgroup/memory"];
+    optional string cgroup_mem_mount = 68 [default = "/sys/fs/cgroup/memory"];
     /* Writeable directory (for the nsjail user) under cgroup_mem_mount */
-    optional string cgroup_mem_parent = 63 [default = "NSJAIL"];
+    optional string cgroup_mem_parent = 69 [default = "NSJAIL"];
 
     /* If > 0, maximum number of PIDs (threads/processes) inside jail */
-    optional uint64 cgroup_pids_max = 64 [default = 0];
+    optional uint64 cgroup_pids_max = 70 [default = 0];
     /* Mount point for cgroups-pids in your system */
-    optional string cgroup_pids_mount = 65 [default = "/sys/fs/cgroup/pids"];
+    optional string cgroup_pids_mount = 71 [default = "/sys/fs/cgroup/pids"];
     /* Writeable directory (for the nsjail user) under cgroup_pids_mount */
-    optional string cgroup_pids_parent = 66 [default = "NSJAIL"];
+    optional string cgroup_pids_parent = 72 [default = "NSJAIL"];
 
     /* If > 0, Class identifier of network packets inside jail */
-    optional uint32 cgroup_net_cls_classid = 67 [default = 0];
+    optional uint32 cgroup_net_cls_classid = 73 [default = 0];
     /* Mount point for cgroups-net-cls in your system */
-    optional string cgroup_net_cls_mount = 68 [default = "/sys/fs/cgroup/net_cls"];
+    optional string cgroup_net_cls_mount = 74 [default = "/sys/fs/cgroup/net_cls"];
     /* Writeable directory (for the nsjail user) under cgroup_net_mount */
-    optional string cgroup_net_cls_parent = 69 [default = "NSJAIL"];
+    optional string cgroup_net_cls_parent = 75 [default = "NSJAIL"];
 
     /* If > 0, number of milliseconds of CPU time per second that jailed processes can use */
-    optional uint32 cgroup_cpu_ms_per_sec = 70 [default = 0];
+    optional uint32 cgroup_cpu_ms_per_sec = 76 [default = 0];
     /* Mount point for cgroups-cpu in your system */
-    optional string cgroup_cpu_mount = 71 [default = "/sys/fs/cgroup/cpu"];
+    optional string cgroup_cpu_mount = 77 [default = "/sys/fs/cgroup/cpu"];
     /* Writeable directory (for the nsjail user) under cgroup_cpu_mount */
-    optional string cgroup_cpu_parent = 72 [default = "NSJAIL"];
+    optional string cgroup_cpu_parent = 78 [default = "NSJAIL"];
 
     /* Mount point for cgroup v2 in your system */
-    optional string cgroupv2_mount = 73 [default = "/sys/fs/cgroup"];
+    optional string cgroupv2_mount = 79 [default = "/sys/fs/cgroup"];
     /* Use cgroup v2 */
-    optional bool use_cgroupv2 = 74 [default = false];
+    optional bool use_cgroupv2 = 80 [default = false];
 
     /* Should the 'lo' interface be brought up (active) inside this jail? */
-    optional bool iface_no_lo = 75 [default = false];
+    optional bool iface_no_lo = 81 [default = false];
 
     /* Put this interface inside the jail */
-    repeated string iface_own = 76;
+    repeated string iface_own = 82;
 
     /* Parameters for the cloned MACVLAN interface inside jail */
-    optional string macvlan_iface = 77; /* Interface to be cloned, eg 'eth0' */
-    optional string macvlan_vs_ip = 78 [default = "192.168.0.2"];
-    optional string macvlan_vs_nm = 79 [default = "255.255.255.0"];
-    optional string macvlan_vs_gw = 80 [default = "192.168.0.1"];
-    optional string macvlan_vs_ma = 81 [default = ""];
-    optional string macvlan_vs_mo = 87 [default = "private"];
+    optional string macvlan_iface = 83; /* Interface to be cloned, eg 'eth0' */
+    optional string macvlan_vs_ip = 84 [default = "192.168.0.2"];
+    optional string macvlan_vs_nm = 85 [default = "255.255.255.0"];
+    optional string macvlan_vs_gw = 86 [default = "192.168.0.1"];
+    optional string macvlan_vs_ma = 87 [default = ""];
+    optional string macvlan_vs_mo = 88 [default = "private"];
 
     /* Niceness level of the jailed process */
-    optional int32 nice_level = 82 [default = 19];
+    optional int32 nice_level = 89 [default = 19];
 
     /* Binary path (with arguments) to be executed. If not specified here, it
        can be specified with cmd-line as "-- /path/to/command arg1 arg2" */
-    optional Exe exec_bin = 83;
+    optional Exe exec_bin = 90;
 }