procd: jail: fix segfault and add console feature
authorDaniel Golle <daniel@makrotopia.org>
Mon, 13 Apr 2020 02:19:01 +0000 (03:19 +0100)
committerDaniel Golle <daniel@makrotopia.org>
Fri, 15 May 2020 18:19:32 +0000 (19:19 +0100)
 2e73848 jail: SIGSEGV must not be forwarded to the child process
 7e150f6 jail: unnamed jails can not have netns (fix segfault)
 1ab539b jail: add option to provide /dev/console to containers

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
package/system/procd/Makefile
package/system/procd/files/procd.sh

index 8ae1e3f12ff865fd3458d3dfbece1b6bf61e8bc1..51e4bf279ade8ca4127eb902723e37316d25b87c 100644 (file)
@@ -12,9 +12,9 @@ PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL=$(PROJECT_GIT)/project/procd.git
-PKG_SOURCE_DATE:=2020-04-25
-PKG_SOURCE_VERSION:=17e7ae769a4739e4b41a93f588d52cfd216b8eb2
-PKG_MIRROR_HASH:=6763cb63a53222d44be3b1ef238f3b9198d31fd533534abbbdc02202d3ef88e0
+PKG_SOURCE_DATE:=2020-05-15
+PKG_SOURCE_VERSION:=1ab539b3a8a0070b493112c8263ab380a689db66
+PKG_MIRROR_HASH:=fcc9fb1a046dbbea776ab1ca616c885e73d6a0a35c2278b8fddcc7e42d6b8647
 CMAKE_INSTALL:=1
 
 PKG_LICENSE:=GPL-2.0
@@ -56,6 +56,13 @@ define Package/procd-ujail
   TITLE:=OpenWrt process jail helper
 endef
 
+define Package/procd-ujail-console
+  SECTION:=base
+  CATEGORY:=Base system
+  DEPENDS:=+procd-ujail +libubus +libubox
+  TITLE:=OpenWrt process jail console
+endef
+
 define Package/procd-seccomp
   SECTION:=base
   CATEGORY:=Base system
@@ -110,6 +117,11 @@ define Package/procd-ujail/install
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ujail $(1)/sbin/
 endef
 
+define Package/procd-ujail-console/install
+       $(INSTALL_DIR) $(1)/sbin
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ujail-console $(1)/sbin/
+endef
+
 define Package/procd-seccomp/install
        $(INSTALL_DIR) $(1)/sbin $(1)/lib
        $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libpreload-seccomp.so $(1)/lib
@@ -120,4 +132,5 @@ endef
 
 $(eval $(call BuildPackage,procd))
 $(eval $(call BuildPackage,procd-ujail))
+$(eval $(call BuildPackage,procd-ujail-console))
 $(eval $(call BuildPackage,procd-seccomp))
index b8605396e9b006696357bbc25351f00e1850bc33..dd6dc1c58df2a56807c0a7b59d4767caec42ebaf 100644 (file)
@@ -198,6 +198,7 @@ _procd_add_jail() {
                netns)  json_add_boolean "netns" "1";;
                userns) json_add_boolean "userns" "1";;
                cgroupsns)      json_add_boolean "cgroupsns" "1";;
+               console)        json_add_boolean "console" "1";;
                esac
        done
        json_add_object "mount"