aboutsummaryrefslogtreecommitdiffstats
path: root/src/firejail/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/firejail/main.c')
-rw-r--r--src/firejail/main.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/firejail/main.c b/src/firejail/main.c
index b6fd745a2..b6b97c98c 100644
--- a/src/firejail/main.c
+++ b/src/firejail/main.c
@@ -51,6 +51,7 @@ uid_t firejail_uid = 0;
51static char child_stack[STACK_SIZE]; // space for child's stack 51static char child_stack[STACK_SIZE]; // space for child's stack
52Config cfg; // configuration 52Config cfg; // configuration
53int arg_private = 0; // mount private /home and /tmp directoryu 53int arg_private = 0; // mount private /home and /tmp directoryu
54int arg_private_template = 0; // mount private /home using a template
54int arg_debug = 0; // print debug messages 55int arg_debug = 0; // print debug messages
55int arg_debug_check_filename; // print debug messages for filename checking 56int arg_debug_check_filename; // print debug messages for filename checking
56int arg_debug_blacklists; // print debug messages for blacklists 57int arg_debug_blacklists; // print debug messages for blacklists
@@ -1360,6 +1361,19 @@ int main(int argc, char **argv) {
1360 fs_check_private_dir(); 1361 fs_check_private_dir();
1361 arg_private = 1; 1362 arg_private = 1;
1362 } 1363 }
1364 else if (strcmp(argv[i], "--private-template=", 19) == 0) {
1365 cfg.private_template = argv[i] + 14;
1366 if (arg_private) {
1367 fprintf(stderr, "Error: --private and --private-template are mutually exclusive\n");
1368 exit(1);
1369 }
1370 if (*cfg.private_template == '\0') {
1371 fprintf(stderr, "Error: invalid private-template option\n");
1372 exit(1);
1373 }
1374 fs_check_private_template();
1375 arg_private_template = 1;
1376 }
1363 else if (strcmp(argv[i], "--private-dev") == 0) { 1377 else if (strcmp(argv[i], "--private-dev") == 0) {
1364 arg_private_dev = 1; 1378 arg_private_dev = 1;
1365 } 1379 }