Initialize nsjconf structure in the commandline module:

This commit is contained in:
Robert Swiecki 2015-06-17 16:52:51 +02:00
parent 9960304cab
commit 1c99a839ac
2 changed files with 40 additions and 37 deletions

View File

@ -141,6 +141,45 @@ rlim_t cmdlineParseRLimit(int res, const char *optarg, unsigned long mul)
bool cmdlineParse(int argc, char *argv[], struct nsjconf_t * nsjconf)
{
/* *INDENT-OFF* */
(*nsjconf) = (struct nsjconf_t) {
.hostname = "NSJAIL",
.chroot = "/chroot",
.argv = NULL,
.port = 31337,
.uid = -1,
.gid = -1,
.daemonize = false,
.tlimit = 0,
.apply_sandbox = true,
.verbose = false,
.keep_caps = false,
.rl_as = 512 * (1024 * 1024),
.rl_core = 0,
.rl_cpu = 600,
.rl_fsize = 1 * (1024 * 1024),
.rl_nofile = 32,
.rl_nproc = cmdlineParseRLimit(RLIMIT_NPROC, "def", 1),
.rl_stack = cmdlineParseRLimit(RLIMIT_STACK, "def", 1),
.personality = 0,
.clone_newnet = true,
.clone_newuser = true,
.clone_newns = true,
.clone_newpid = true,
.clone_newipc = true,
.clone_newuts = true,
.mode = MODE_LISTEN_TCP,
.is_root_rw = false,
.is_silent = false,
.bindmountpts = NULL,
.tmpfsmountpts = NULL,
.iface = NULL,
.initial_uid = getuid(),
.initial_gid = getgid(),
.max_conns_per_ip = 0,
};
/* *INDENT-OFF* */
LIST_INIT(&nsjconf->pids);
const char *user = "nobody";
const char *group = "nobody";

View File

@ -156,43 +156,7 @@ static void nsjailStandaloneMode(struct nsjconf_t *nsjconf)
int main(int argc, char *argv[])
{
struct nsjconf_t nsjconf = {
.hostname = "NSJAIL",
.chroot = "/chroot",
.argv = NULL,
.port = 31337,
.uid = -1,
.gid = -1,
.daemonize = false,
.tlimit = 0,
.apply_sandbox = true,
.verbose = false,
.keep_caps = false,
.rl_as = 512 * (1024 * 1024),
.rl_core = 0,
.rl_cpu = 600,
.rl_fsize = 1 * (1024 * 1024),
.rl_nofile = 32,
.rl_nproc = cmdlineParseRLimit(RLIMIT_NPROC, "def", 1),
.rl_stack = cmdlineParseRLimit(RLIMIT_STACK, "def", 1),
.personality = 0,
.clone_newnet = true,
.clone_newuser = true,
.clone_newns = true,
.clone_newpid = true,
.clone_newipc = true,
.clone_newuts = true,
.mode = MODE_LISTEN_TCP,
.is_root_rw = false,
.is_silent = false,
.bindmountpts = NULL,
.tmpfsmountpts = NULL,
.iface = NULL,
.initial_uid = getuid(),
.initial_gid = getgid(),
.max_conns_per_ip = 0,
};
struct nsjconf_t nsjconf;
if (!cmdlineParse(argc, argv, &nsjconf)) {
exit(1);
}