diff --git a/package/system/procd/Makefile b/package/system/procd/Makefile index 43ef4c932a3dbc..e2919ab5009e09 100644 --- a/package/system/procd/Makefile +++ b/package/system/procd/Makefile @@ -68,7 +68,7 @@ define Package/procd-ujail SECTION:=base CATEGORY:=Base system DEPENDS:=@KERNEL_NAMESPACES +@KERNEL_UTS_NS +@KERNEL_IPC_NS +@KERNEL_PID_NS \ - +libubox +libubus +libblobmsg-json + +libubox +libubus +libuci +libblobmsg-json TITLE:=OpenWrt process jail helper endef diff --git a/package/system/procd/patches/001-procd_ujail_static_binary_fix.patch b/package/system/procd/patches/001-procd_ujail_static_binary_fix.patch index d0484b15f0eb6c..1612b8a8f1adc3 100644 --- a/package/system/procd/patches/001-procd_ujail_static_binary_fix.patch +++ b/package/system/procd/patches/001-procd_ujail_static_binary_fix.patch @@ -1,16 +1,16 @@ --- a/jail/elf.c +++ b/jail/elf.c -@@ -240,18 +240,18 @@ int elf_load_deps(const char *path, cons - - gcc_mips64_bug_work_around = 1; - #endif +@@ -236,18 +236,18 @@ int elf_load_deps(const char *path, cons + unsigned long load_offset, load_vaddr; + unsigned long interp_offset; + - if (elf_find_section(map, PT_LOAD, &load_offset, NULL, &load_vaddr)) { - ERROR("failed to load the .load section from %s\n", path); - return -1; + if (elf_find_section(map, PT_INTERP, &interp_offset, NULL, NULL) == 0) { + add_path_and_deps(map+interp_offset, 1, -1, 0); } - + - if (elf_find_section(map, PT_DYNAMIC, &dyn_offset, &dyn_size, NULL)) { - ERROR("failed to load the .dynamic section from %s\n", path); - return -1; @@ -18,12 +18,12 @@ + DEBUG("failed to load the .load section from %s\n", path); + return 0; } - + - if (elf_find_section(map, PT_INTERP, &interp_offset, NULL, NULL) == 0) { - add_path_and_deps(map+interp_offset, 1, -1, 0); + if (elf_find_section(map, PT_DYNAMIC, &dyn_offset, &dyn_size, NULL)) { + DEBUG("failed to load the .dynamic section from %s\n", path); + return 0; } - + int clazz = map[EI_CLASS];