summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Makefile.in3
-rwxr-xr-xconfigure19
-rw-r--r--configure.ac10
-rwxr-xr-xmketc.sh14
4 files changed, 45 insertions, 1 deletions
diff --git a/Makefile.in b/Makefile.in
index 5269170c2..6c98742b7 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -16,6 +16,7 @@ NAME=@PACKAGE_NAME@
16PACKAGE_TARNAME=@PACKAGE_TARNAME@ 16PACKAGE_TARNAME=@PACKAGE_TARNAME@
17DOCDIR=@docdir@ 17DOCDIR=@docdir@
18HAVE_APPARMOR=@HAVE_APPARMOR@ 18HAVE_APPARMOR=@HAVE_APPARMOR@
19BUSYBOX_WORKAROUND=@BUSYBOX_WORKAROUND@
19 20
20.PHONY: mylibs $(MYLIBS) 21.PHONY: mylibs $(MYLIBS)
21mylibs: $(MYLIBS) 22mylibs: $(MYLIBS)
@@ -79,7 +80,7 @@ realinstall:
79 install -c -m 0644 README $(DESTDIR)/$(DOCDIR)/. 80 install -c -m 0644 README $(DESTDIR)/$(DOCDIR)/.
80 install -c -m 0644 RELNOTES $(DESTDIR)/$(DOCDIR)/. 81 install -c -m 0644 RELNOTES $(DESTDIR)/$(DOCDIR)/.
81 # etc files 82 # etc files
82 ./mketc.sh $(sysconfdir) 83 ./mketc.sh $(sysconfdir) $(BUSYBOX_WORKAROUND)
83 install -m 0755 -d $(DESTDIR)/$(sysconfdir)/firejail 84 install -m 0755 -d $(DESTDIR)/$(sysconfdir)/firejail
84 for file in .etc/* etc/firejail.config; do \ 85 for file in .etc/* etc/firejail.config; do \
85 install -c -m 0644 $$file $(DESTDIR)/$(sysconfdir)/firejail; \ 86 install -c -m 0644 $$file $(DESTDIR)/$(sysconfdir)/firejail; \
diff --git a/configure b/configure
index 0f6f8f7fb..29792969c 100755
--- a/configure
+++ b/configure
@@ -625,6 +625,7 @@ ac_includes_default="\
625ac_subst_vars='LTLIBOBJS 625ac_subst_vars='LTLIBOBJS
626LIBOBJS 626LIBOBJS
627HAVE_SECCOMP_H 627HAVE_SECCOMP_H
628BUSYBOX_WORKAROUND
628HAVE_FATAL_WARNINGS 629HAVE_FATAL_WARNINGS
629HAVE_WHITELIST 630HAVE_WHITELIST
630HAVE_FILE_TRANSFER 631HAVE_FILE_TRANSFER
@@ -703,6 +704,7 @@ enable_x11
703enable_file_transfer 704enable_file_transfer
704enable_whitelist 705enable_whitelist
705enable_fatal_warnings 706enable_fatal_warnings
707enable_busybox_workaround
706' 708'
707 ac_precious_vars='build_alias 709 ac_precious_vars='build_alias
708host_alias 710host_alias
@@ -1336,6 +1338,8 @@ Optional Features:
1336 --disable-file-transfer disable file transfer 1338 --disable-file-transfer disable file transfer
1337 --disable-whitelist disable whitelist 1339 --disable-whitelist disable whitelist
1338 --enable-fatal-warnings -W -Wall -Werror 1340 --enable-fatal-warnings -W -Wall -Werror
1341 --enable-busybox-workaround
1342 enable busybox workaround
1339 1343
1340Some influential environment variables: 1344Some influential environment variables:
1341 CC C compiler command 1345 CC C compiler command
@@ -3647,6 +3651,20 @@ if test "x$enable_fatal_warnings" = "xyes"; then :
3647 3651
3648fi 3652fi
3649 3653
3654BUSYBOX_WORKAROUND="no"
3655# Check whether --enable-busybox-workaround was given.
3656if test "${enable_busybox_workaround+set}" = set; then :
3657 enableval=$enable_busybox_workaround;
3658fi
3659
3660if test "x$enable_busybox_workaround" = "xyes"; then :
3661
3662 BUSYBOX_WORKAROUND="yes"
3663
3664
3665fi
3666
3667
3650 3668
3651# checking pthread library 3669# checking pthread library
3652{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpthread" >&5 3670{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lpthread" >&5
@@ -4905,6 +4923,7 @@ echo " X11 sandboxing support: $HAVE_X11"
4905echo " whitelisting: $HAVE_WHITELIST" 4923echo " whitelisting: $HAVE_WHITELIST"
4906echo " file transfer support: $HAVE_FILE_TRANSFER" 4924echo " file transfer support: $HAVE_FILE_TRANSFER"
4907echo " fatal warnings: $HAVE_FATAL_WARNINGS" 4925echo " fatal warnings: $HAVE_FATAL_WARNINGS"
4926echo " busybox workaround: $BUSYBOX_WORKAROUND"
4908printf " uid_min: "; grep UID_MIN uids.h 4927printf " uid_min: "; grep UID_MIN uids.h
4909printf " gid_min: "; grep GID_MIN uids.h 4928printf " gid_min: "; grep GID_MIN uids.h
4910printf " EXTRA_LDFLAGS: $EXTRA_LDFLAGS" 4929printf " EXTRA_LDFLAGS: $EXTRA_LDFLAGS"
diff --git a/configure.ac b/configure.ac
index 315c25038..149f76eae 100644
--- a/configure.ac
+++ b/configure.ac
@@ -115,6 +115,15 @@ AS_IF([test "x$enable_fatal_warnings" = "xyes"], [
115 AC_SUBST(HAVE_FATAL_WARNINGS) 115 AC_SUBST(HAVE_FATAL_WARNINGS)
116]) 116])
117 117
118BUSYBOX_WORKAROUND="no"
119AC_ARG_ENABLE([busybox-workaround],
120 AS_HELP_STRING([--enable-busybox-workaround], [enable busybox workaround]))
121AS_IF([test "x$enable_busybox_workaround" = "xyes"], [
122 BUSYBOX_WORKAROUND="yes"
123 AC_SUBST(BUSYBOX_WORKAROUND)
124])
125
126
118 127
119# checking pthread library 128# checking pthread library
120AC_CHECK_LIB([pthread], [main], [], AC_MSG_ERROR([*** POSIX thread support not installed ***])) 129AC_CHECK_LIB([pthread], [main], [], AC_MSG_ERROR([*** POSIX thread support not installed ***]))
@@ -148,6 +157,7 @@ echo " X11 sandboxing support: $HAVE_X11"
148echo " whitelisting: $HAVE_WHITELIST" 157echo " whitelisting: $HAVE_WHITELIST"
149echo " file transfer support: $HAVE_FILE_TRANSFER" 158echo " file transfer support: $HAVE_FILE_TRANSFER"
150echo " fatal warnings: $HAVE_FATAL_WARNINGS" 159echo " fatal warnings: $HAVE_FATAL_WARNINGS"
160echo " busybox workaround: $BUSYBOX_WORKAROUND"
151printf " uid_min: "; grep UID_MIN uids.h 161printf " uid_min: "; grep UID_MIN uids.h
152printf " gid_min: "; grep GID_MIN uids.h 162printf " gid_min: "; grep GID_MIN uids.h
153printf " EXTRA_LDFLAGS: $EXTRA_LDFLAGS" 163printf " EXTRA_LDFLAGS: $EXTRA_LDFLAGS"
diff --git a/mketc.sh b/mketc.sh
index 94fad8f10..f98c5479f 100755
--- a/mketc.sh
+++ b/mketc.sh
@@ -6,3 +6,17 @@ for file in etc/*.profile etc/*.inc etc/*.net;
6do 6do
7 sed "s;/etc/firejail;$1/firejail;g" $file > .$file 7 sed "s;/etc/firejail;$1/firejail;g" $file > .$file
8done 8done
9
10if [ "x$2" = "xyes" ]
11then
12sed -i -e '
131i# Workaround for systems where common UNIX utilities are symlinks to busybox.\
14# If this is not your case you can remove --enable-busybox-workaround from\
15# ./configure options, for added security.\
16noblacklist \${PATH}/mount\
17noblacklist \${PATH}/umount\
18noblacklist \${PATH}/su\
19noblacklist \${PATH}/sudo\
20noblacklist \${PATH}/nc\
21' .etc/disable-common.inc
22fi