aboutsummaryrefslogtreecommitdiffstats
path: root/src/firejail/sandbox.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/firejail/sandbox.c')
-rw-r--r--src/firejail/sandbox.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/firejail/sandbox.c b/src/firejail/sandbox.c
index 3942e4da6..e3c95283d 100644
--- a/src/firejail/sandbox.c
+++ b/src/firejail/sandbox.c
@@ -260,6 +260,7 @@ void start_audit(void) {
260 char *audit_prog; 260 char *audit_prog;
261 if (asprintf(&audit_prog, "%s/firejail/faudit", LIBDIR) == -1) 261 if (asprintf(&audit_prog, "%s/firejail/faudit", LIBDIR) == -1)
262 errExit("asprintf"); 262 errExit("asprintf");
263 assert(getenv("LD_PRELOAD") == NULL);
263 execl(audit_prog, audit_prog, NULL); 264 execl(audit_prog, audit_prog, NULL);
264 perror("execl"); 265 perror("execl");
265 exit(1); 266 exit(1);
@@ -268,6 +269,15 @@ void start_audit(void) {
268void start_application(void) { 269void start_application(void) {
269//if (setsid() == -1) 270//if (setsid() == -1)
270//errExit("setsid"); 271//errExit("setsid");
272
273 // set environment
274 env_defaults();
275 env_apply();
276 if (arg_debug) {
277 printf("starting application\n");
278 printf("LD_PRELOAD=%s\n", getenv("LD_PRELOAD"));
279 }
280
271 //**************************************** 281 //****************************************
272 // audit 282 // audit
273 //**************************************** 283 //****************************************
@@ -787,12 +797,6 @@ assert(0);
787 } 797 }
788 } 798 }
789 799
790 // set environment
791 env_defaults();
792
793 // set user-supplied environment variables
794 env_apply();
795
796 // set nice 800 // set nice
797 if (arg_nice) { 801 if (arg_nice) {
798 errno = 0; 802 errno = 0;