aboutsummaryrefslogtreecommitdiffstats
path: root/src/firejail/fs_home.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/firejail/fs_home.c')
-rw-r--r--src/firejail/fs_home.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/firejail/fs_home.c b/src/firejail/fs_home.c
index b44d09acc..a1a16841a 100644
--- a/src/firejail/fs_home.c
+++ b/src/firejail/fs_home.c
@@ -370,6 +370,21 @@ void fs_check_private_dir(void) {
370 } 370 }
371} 371}
372 372
373// check new private working directory (--private-cwd= option) - exit if it fails
374void fs_check_private_cwd(void) {
375 EUID_ASSERT();
376 invalid_filename(cfg.cwd, 0); // no globbing
377
378 // Expand the working directory
379 cfg.cwd = expand_macros(cfg.cwd);
380
381 // realpath/is_dir not used because path may not exist outside of jail
382 if (!cfg.cwd) {
383 fprintf(stderr, "Error: invalid private working directory\n");
384 exit(1);
385 }
386}
387
373//*********************************************************************************** 388//***********************************************************************************
374// --private-home 389// --private-home
375//*********************************************************************************** 390//***********************************************************************************