From 351efe6707a4cb5424b36b74f0b82bc163933a6a Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Sun, 13 Sep 2020 10:32:13 +0200 Subject: [PATCH] apache: use fakeroot instead of postinst script fakeroot support was recently added to OpenWrt. Let's make use of it. Signed-off-by: Sebastian Kemper --- net/apache/Makefile | 25 +++++++------------------ 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/net/apache/Makefile b/net/apache/Makefile index 5f80646c8d..d558675f53 100644 --- a/net/apache/Makefile +++ b/net/apache/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=apache PKG_VERSION:=2.4.46 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_NAME:=httpd PKG_SOURCE:=$(PKG_SOURCE_NAME)-$(PKG_VERSION).tar.bz2 @@ -138,6 +138,11 @@ define Package/apache-suexec $(call Package/apache/Default) TITLE:=Apache suEXEC DEPENDS:=apache + # Directory "/usr/lib/apache2/suexec_dir" is installed with mode 0750 + # and is only accessible by root and the group apache. This way apache + # can access the SUID binary "suexec" contained within while others + # cannot. + FILE_MODES:=/usr/lib/apache2/suexec_dir:root:apache:0750 endef define Package/apache-suexec/description @@ -327,7 +332,7 @@ define Package/apache-icons/install endef define Package/apache-suexec/install - $(INSTALL_DIR) -m0750 $(1)/usr/lib/apache2/suexec_dir + $(INSTALL_DIR) $(1)/usr/lib/apache2/suexec_dir $(INSTALL_SUID) $(PKG_INSTALL_DIR)/usr/sbin/suexec \ $(1)/usr/lib/apache2/suexec_dir endef @@ -339,22 +344,6 @@ define Package/apache-utils/install $(1)/usr/sbin endef -# Directory "suexec_dir" is installed with '-m0750' above and contains -# SUID binary "suexec". Below post-install script changes the group of -# "suexec_dir" to apache, so user apache can access the folder (and the -# SUID binary). The script only changes the group if the directory is -# currently owned by "root:root". -define Package/apache-suexec/postinst -#!/bin/sh -if [ -z "$${IPKG_INSTROOT}" ]; then - dir="/usr/lib/apache2/suexec_dir" - if ! [ -L "$$dir" ] && [ -d "$$dir" ] && [ -O "$$dir" ] && [ -G "$$dir" ]; then - chown :apache "$$dir" - fi -fi -exit 0 -endef - define Package/apache/Module define Package/apache-mod-$(1) $(call Package/apache/Default) -- 2.30.2