aboutsummaryrefslogtreecommitdiffstats
path: root/meta-webserver/recipes-httpd
diff options
context:
space:
mode:
Diffstat (limited to 'meta-webserver/recipes-httpd')
-rw-r--r--meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb15
-rw-r--r--meta-webserver/recipes-httpd/apache-mod/mod-dnssd_0.6.bb20
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch37
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0001-make_exports.awk-not-expose-the-path.patch32
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch13
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch11
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0004-apache2-log-the-SELinux-context-at-startup.patch26
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0005-replace-lynx-to-curl-in-apachectl-script.patch4
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0006-apache2-fix-the-race-issue-of-parallel-installation.patch4
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0007-apache2-allow-to-disable-selinux-support.patch12
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0008-Fix-perl-install-directory-to-usr-bin.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2/apache-configure_perlbin.patch)10
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0009-support-apxs.in-force-destdir-to-be-empty-string.patch49
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2/0010-apache2-do-not-use-relative-path-for-gen_test_char.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2/0008-apache2-do-not-use-relative-path-for-gen_test_char.patch)7
-rw-r--r--meta-webserver/recipes-httpd/apache2/apache2_2.4.59.bb (renamed from meta-webserver/recipes-httpd/apache2/apache2_2.4.41.bb)128
-rw-r--r--meta-webserver/recipes-httpd/apache2/files/apache2-volatile.conf2
-rw-r--r--meta-webserver/recipes-httpd/cherokee/cherokee/0001-common-internal.h-Define-LLONG_MAX-if-undefined.patch47
-rw-r--r--meta-webserver/recipes-httpd/cherokee/cherokee/0001-configure.ac-Add-foreign-to-AM_INIT_AUTOMAKE.patch1
-rw-r--r--meta-webserver/recipes-httpd/cherokee/cherokee/0001-make-Do-not-build-po-files.patch1
-rw-r--r--meta-webserver/recipes-httpd/cherokee/cherokee_git.bb46
-rw-r--r--meta-webserver/recipes-httpd/hiawatha/hiawatha_10.12.bb (renamed from meta-webserver/recipes-httpd/hiawatha/hiawatha_10.7.bb)41
-rw-r--r--meta-webserver/recipes-httpd/monkey/files/0001-configure-Respect-LIBS-variable-from-env.patch29
-rw-r--r--meta-webserver/recipes-httpd/monkey/files/0001-fastcgi-Use-value-instead-of-address-of-sin6_port.patch30
-rw-r--r--meta-webserver/recipes-httpd/monkey/files/monkey.init2
-rw-r--r--meta-webserver/recipes-httpd/monkey/files/monkey.service2
-rw-r--r--meta-webserver/recipes-httpd/monkey/monkey_1.5.6.bb77
-rw-r--r--meta-webserver/recipes-httpd/monkey/monkey_1.6.9.bb92
-rw-r--r--meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch39
-rw-r--r--meta-webserver/recipes-httpd/nginx/files/nginx-fix-pidfile.patch99
-rw-r--r--meta-webserver/recipes-httpd/nginx/nginx.inc50
-rw-r--r--meta-webserver/recipes-httpd/nginx/nginx_1.16.0.bb10
-rw-r--r--meta-webserver/recipes-httpd/nginx/nginx_1.17.0.bb6
-rw-r--r--meta-webserver/recipes-httpd/nginx/nginx_1.25.3.bb10
-rw-r--r--meta-webserver/recipes-httpd/nginx/nginx_1.26.0.bb6
-rw-r--r--meta-webserver/recipes-httpd/nostromo/files/0001-GNUmakefile-add-possibility-to-override-variables.patch145
-rw-r--r--meta-webserver/recipes-httpd/nostromo/files/nhttpd.conf55
-rw-r--r--meta-webserver/recipes-httpd/nostromo/files/nostromo34
-rw-r--r--meta-webserver/recipes-httpd/nostromo/files/tmpfiles.conf1
-rw-r--r--meta-webserver/recipes-httpd/nostromo/files/volatiles2
-rw-r--r--meta-webserver/recipes-httpd/nostromo/nostromo_1.9.6.bb64
-rw-r--r--meta-webserver/recipes-httpd/sthttpd/sthttpd/0001-Define-_GNU_SOURCE-if-HAVE_SIGSET-is-set.patch51
-rw-r--r--meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb23
41 files changed, 727 insertions, 606 deletions
diff --git a/meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb b/meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb
index 3cbab22c3d..4dbf595c19 100644
--- a/meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb
+++ b/meta-webserver/recipes-httpd/apache-mod/apache-websocket_git.bb
@@ -7,27 +7,26 @@ LICENSE = "Apache-2.0"
inherit autotools-brokensep pkgconfig
DEPENDS = "apache2 apache2-native pbzip2-native"
-RDEPENDS_${PN} += "apache2"
+RDEPENDS:${PN} += "apache2"
# Original (github.com/disconnect/apache-websocket) is dead since 2012, the
# fork contains patches from the modules ML and fixes CVE compliance issues
-SRC_URI = "git://github.com/jchampio/apache-websocket.git"
+SRC_URI = "git://github.com/jchampio/apache-websocket.git;branch=master;protocol=https"
-SRCREV = "6968083264b90b89b1b9597a4ca03ba29e7ea2e1"
+SRCREV = "0ee34c77fc78ff08fd548706300b80a7bc7874e4"
-PV = "0.1.1+git${SRCPV}"
+PV = "0.1.2+git"
S = "${WORKDIR}/git"
LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"
-EXTRA_OECONF = "APACHECTL=${STAGING_DIR_TARGET}${sbindir}/apachectl \
- LIBTOOL=${STAGING_DIR_TARGET}${bindir_crossscripts}/${HOST_SYS}-libtool"
+EXTRA_OECONF = "APACHECTL=${STAGING_DIR_TARGET}${sbindir}/apachectl"
do_install() {
install -d ${D}${libexecdir}/apache2/modules
install -m 755 ${B}/.libs/mod_websocket.so ${D}${libexecdir}/apache2/modules
}
-FILES_${PN} += " ${libexecdir}/apache2/modules/* "
-FILES_${PN}-dbg += " ${libexecdir}/apache2/modules/.debug/* "
+FILES:${PN} += " ${libexecdir}/apache2/modules/* "
+FILES:${PN}-dbg += " ${libexecdir}/apache2/modules/.debug/* "
diff --git a/meta-webserver/recipes-httpd/apache-mod/mod-dnssd_0.6.bb b/meta-webserver/recipes-httpd/apache-mod/mod-dnssd_0.6.bb
new file mode 100644
index 0000000000..5fac0a6ed4
--- /dev/null
+++ b/meta-webserver/recipes-httpd/apache-mod/mod-dnssd_0.6.bb
@@ -0,0 +1,20 @@
+DESCRIPTION = "Avahi Module for Apache2."
+HOMEPAGE = "https://0pointer.de/lennart/projects/mod_dnssd/"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
+
+DEPENDS = "apache2 avahi"
+
+SRC_URI = "git://git.0pointer.de/mod_dnssd;protocol=git;branch=master"
+SRCREV = "be2fb9f6158f800685de7a1bc01c39b6cf1fa12c"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OECONF = "--disable-lynx"
+
+inherit autotools pkgconfig
+
+do_install() {
+ install -Dm755 ${S}/src/.libs/mod_dnssd.so ${D}${libexecdir}/apache2/modules/mod_dnssd.so
+}
+
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch b/meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch
index 6c0286457c..50775be533 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0001-configure-use-pkg-config-for-PCRE-detection.patch
@@ -1,44 +1,43 @@
-From d2cedfa3394365689a3f7c8cfe8e0dd56b29bed9 Mon Sep 17 00:00:00 2001
+From ba9015386cbc044e111d7c266f13e2be045e4bf1 Mon Sep 17 00:00:00 2001
From: Koen Kooi <koen.kooi@linaro.org>
Date: Tue, 17 Jun 2014 09:10:57 +0200
Subject: [PATCH] configure: use pkg-config for PCRE detection
-Upstream-Status: Pending
+Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
---
- configure.in | 27 +++++----------------------
- 1 file changed, 5 insertions(+), 22 deletions(-)
+ configure.in | 26 +++++---------------------
+ 1 file changed, 5 insertions(+), 21 deletions(-)
diff --git a/configure.in b/configure.in
-index 9feaceb..dc6ea15 100644
+index 38c1d0a..c799aec 100644
--- a/configure.in
+++ b/configure.in
-@@ -215,28 +215,11 @@ fi
- AC_ARG_WITH(pcre,
- APACHE_HELP_STRING(--with-pcre=PATH,Use external PCRE library))
+@@ -221,27 +221,11 @@ else if which $with_pcre 2>/dev/null; then :; else
+ fi
+ fi
--AC_PATH_PROG(PCRE_CONFIG, pcre-config, false)
--if test -d "$with_pcre" && test -x "$with_pcre/bin/pcre-config"; then
-- PCRE_CONFIG=$with_pcre/bin/pcre-config
--elif test -x "$with_pcre"; then
-- PCRE_CONFIG=$with_pcre
--fi
+-AC_CHECK_TARGET_TOOLS(PCRE_CONFIG, [pcre2-config pcre-config],
+- [`which $with_pcre 2>/dev/null`], $with_pcre)
-
--if test "$PCRE_CONFIG" != "false"; then
+-if test "x$PCRE_CONFIG" != "x"; then
- if $PCRE_CONFIG --version >/dev/null 2>&1; then :; else
-- AC_MSG_ERROR([Did not find pcre-config script at $PCRE_CONFIG])
+- AC_MSG_ERROR([Did not find working script at $PCRE_CONFIG])
- fi
- case `$PCRE_CONFIG --version` in
+- [1[0-9].*])
+- AC_DEFINE(HAVE_PCRE2, 1, [Detected PCRE2])
+- ;;
- [[1-5].*])
- AC_MSG_ERROR([Need at least pcre version 6.0])
- ;;
- esac
- AC_MSG_NOTICE([Using external PCRE library from $PCRE_CONFIG])
- APR_ADDTO(PCRE_INCLUDES, [`$PCRE_CONFIG --cflags`])
-- APR_ADDTO(PCRE_LIBS, [`$PCRE_CONFIG --libs`])
+- APR_ADDTO(PCRE_LIBS, [`$PCRE_CONFIG --libs8 2>/dev/null || $PCRE_CONFIG --libs`])
-else
-- AC_MSG_ERROR([pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/])
+- AC_MSG_ERROR([pcre(2)-config for libpcre not found. PCRE is required and available from http://pcre.org/])
-fi
+PKG_CHECK_MODULES([PCRE], [libpcre], [
+ AC_DEFINE([HAVE_PCRE], [1], [Define if you have PCRE library])
@@ -49,5 +48,5 @@ index 9feaceb..dc6ea15 100644
AC_MSG_NOTICE([])
--
-2.7.4
+2.25.1
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0001-make_exports.awk-not-expose-the-path.patch b/meta-webserver/recipes-httpd/apache2/apache2/0001-make_exports.awk-not-expose-the-path.patch
new file mode 100644
index 0000000000..78f23f0f2d
--- /dev/null
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0001-make_exports.awk-not-expose-the-path.patch
@@ -0,0 +1,32 @@
+From 5b5eae9cdf3bae91756c717349f2f33a31888f24 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Wed, 3 Aug 2022 12:35:16 +0800
+Subject: [PATCH] make_exports.awk: not expose the path
+
+Don't print the full path in the comment line.
+
+Upstream-Status: Inappropriate [oe specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ build/make_exports.awk | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/build/make_exports.awk b/build/make_exports.awk
+index 1cf0568..44d93c5 100644
+--- a/build/make_exports.awk
++++ b/build/make_exports.awk
+@@ -47,7 +47,9 @@ function push(line) {
+
+ function do_output() {
+ printf("/*\n")
+- printf(" * %s\n", FILENAME)
++ file = FILENAME
++ sub("([^/]*[/])*", "", file)
++ printf(" * %s\n", file)
+ printf(" */\n")
+
+ for (i = 0; i < stackptr; i++) {
+--
+2.25.1
+
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch b/meta-webserver/recipes-httpd/apache2/apache2/0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch
index 85fe6ae4bd..bbe8b325b5 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0002-apache2-bump-up-the-core-size-limit-if-CoreDumpDirec.patch
@@ -1,8 +1,8 @@
-From 7df207ad4d0dcda2ad36e5642296e0dec7e13647 Mon Sep 17 00:00:00 2001
+From 5074ab3425e5f1e01fd9cfa2d9b7300ea1b3f38f Mon Sep 17 00:00:00 2001
From: Paul Eggleton <paul.eggleton@linux.intel.com>
Date: Tue, 17 Jul 2012 11:27:39 +0100
-Subject: [PATCH] apache2: bump up the core size limit if CoreDumpDirectory
- is configured
+Subject: [PATCH] apache2: bump up the core size limit if CoreDumpDirectory is
+ configured
Bump up the core size limit if CoreDumpDirectory is
configured.
@@ -11,16 +11,15 @@ Upstream-Status: Pending
Note: upstreaming was discussed but there are competing desires;
there are portability oddities here too.
-
---
server/core.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/server/core.c b/server/core.c
-index eacb54f..7aa841f 100644
+index 090e397..3020090 100644
--- a/server/core.c
+++ b/server/core.c
-@@ -4965,6 +4965,25 @@ static int core_post_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *pte
+@@ -5107,6 +5107,25 @@ static int core_post_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *pte
}
apr_pool_cleanup_register(pconf, NULL, ap_mpm_end_gen_helper,
apr_pool_cleanup_null);
@@ -47,5 +46,5 @@ index eacb54f..7aa841f 100644
}
--
-2.7.4
+2.25.1
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch b/meta-webserver/recipes-httpd/apache2/apache2/0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch
index 081a02baa3..adb728ba31 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0003-apache2-do-not-export-apr-apr-util-symbols-when-usin.patch
@@ -1,8 +1,8 @@
-From ddd560024a6d526187fd126f306b59533ca3f7e2 Mon Sep 17 00:00:00 2001
+From 9c03ed909b8da0e1a288f53fda535a3f15bcf791 Mon Sep 17 00:00:00 2001
From: Paul Eggleton <paul.eggleton@linux.intel.com>
Date: Tue, 17 Jul 2012 11:27:39 +0100
-Subject: [PATCH] apache2: do not export apr/apr-util symbols when using
- shared libapr
+Subject: [PATCH] apache2: do not export apr/apr-util symbols when using shared
+ libapr
There is no need to "suck in" the apr/apr-util symbols when using
a shared libapr{,util}, it just bloats the symbol table; so don't.
@@ -10,13 +10,12 @@ a shared libapr{,util}, it just bloats the symbol table; so don't.
Upstream-Status: Pending
Note: EXPORT_DIRS change is conditional on using shared apr
-
---
server/Makefile.in | 3 ---
1 file changed, 3 deletions(-)
diff --git a/server/Makefile.in b/server/Makefile.in
-index 1fa3344..f635d76 100644
+index 8111877..8c0c396 100644
--- a/server/Makefile.in
+++ b/server/Makefile.in
@@ -60,9 +60,6 @@ export_files:
@@ -30,5 +29,5 @@ index 1fa3344..f635d76 100644
exports.c: export_files
--
-2.7.4
+2.25.1
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0004-apache2-log-the-SELinux-context-at-startup.patch b/meta-webserver/recipes-httpd/apache2/apache2/0004-apache2-log-the-SELinux-context-at-startup.patch
index 78a04d9af4..1abbe0c41f 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/0004-apache2-log-the-SELinux-context-at-startup.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0004-apache2-log-the-SELinux-context-at-startup.patch
@@ -1,4 +1,4 @@
-From dfa834ebd449df299f54e98f0fb3a7bb4008fb03 Mon Sep 17 00:00:00 2001
+From e47cc405eadcbe37a579c375e824e20a5c53bfad Mon Sep 17 00:00:00 2001
From: Paul Eggleton <paul.eggleton@linux.intel.com>
Date: Tue, 17 Jul 2012 11:27:39 +0100
Subject: [PATCH] Log the SELinux context at startup.
@@ -8,17 +8,16 @@ Log the SELinux context at startup.
Upstream-Status: Inappropriate [other]
Note: unlikely to be any interest in this upstream
-
---
configure.in | 5 +++++
server/core.c | 26 ++++++++++++++++++++++++++
2 files changed, 31 insertions(+)
diff --git a/configure.in b/configure.in
-index dc6ea15..caa6f54 100644
+index 352711a..f58620f 100644
--- a/configure.in
+++ b/configure.in
-@@ -466,6 +466,11 @@ getloadavg
+@@ -514,6 +514,11 @@ gettid
dnl confirm that a void pointer is large enough to store a long integer
APACHE_CHECK_VOID_PTR_LEN
@@ -27,14 +26,14 @@ index dc6ea15..caa6f54 100644
+ APR_ADDTO(AP_LIBS, [-lselinux])
+])
+
- AC_CACHE_CHECK([for gettid()], ac_cv_gettid,
- [AC_TRY_RUN(#define _GNU_SOURCE
- #include <unistd.h>
+ if test $ac_cv_func_gettid = no; then
+ # On Linux before glibc 2.30, gettid() is only usable via syscall()
+ AC_CACHE_CHECK([for gettid() via syscall], ap_cv_gettid,
diff --git a/server/core.c b/server/core.c
-index 7aa841f..79f34db 100644
+index 30b317e..81f145f 100644
--- a/server/core.c
+++ b/server/core.c
-@@ -59,6 +59,10 @@
+@@ -65,6 +65,10 @@
#include <unistd.h>
#endif
@@ -44,8 +43,8 @@ index 7aa841f..79f34db 100644
+
/* LimitRequestBody handling */
#define AP_LIMIT_REQ_BODY_UNSET ((apr_off_t) -1)
- #define AP_DEFAULT_LIMIT_REQ_BODY ((apr_off_t) 0)
-@@ -4984,6 +4988,28 @@ static int core_post_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *pte
+ #define AP_DEFAULT_LIMIT_REQ_BODY ((apr_off_t) 1<<30) /* 1GB */
+@@ -5139,6 +5143,28 @@ static int core_post_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *pte
}
#endif
@@ -74,6 +73,5 @@ index 7aa841f..79f34db 100644
return OK;
}
---
-2.7.4
-
+--
+2.40.0
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0005-replace-lynx-to-curl-in-apachectl-script.patch b/meta-webserver/recipes-httpd/apache2/apache2/0005-replace-lynx-to-curl-in-apachectl-script.patch
index 47320a9ee5..7b4a1b932b 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/0005-replace-lynx-to-curl-in-apachectl-script.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0005-replace-lynx-to-curl-in-apachectl-script.patch
@@ -1,4 +1,4 @@
-From 7db1b650bb4b01a5194a34cd7573f915656a595b Mon Sep 17 00:00:00 2001
+From e59aab44a28c654e518080693d573ca472ca5a08 Mon Sep 17 00:00:00 2001
From: Yulong Pei <Yulong.pei@windriver.com>
Date: Thu, 1 Sep 2011 01:03:14 +0800
Subject: [PATCH] replace lynx to curl in apachectl script
@@ -48,5 +48,5 @@ index 3281c2e..6ab4ba5 100644
*)
$HTTPD "$@"
--
-2.7.4
+2.25.1
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0006-apache2-fix-the-race-issue-of-parallel-installation.patch b/meta-webserver/recipes-httpd/apache2/apache2/0006-apache2-fix-the-race-issue-of-parallel-installation.patch
index 227d04064b..dbaf01d2c5 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/0006-apache2-fix-the-race-issue-of-parallel-installation.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0006-apache2-fix-the-race-issue-of-parallel-installation.patch
@@ -1,4 +1,4 @@
-From 4f4d7d6b88b6e440263ebeb22dfb40c52bb30fd8 Mon Sep 17 00:00:00 2001
+From fb09f1fe4525058b16b3d4edb2e3ae693154026e Mon Sep 17 00:00:00 2001
From: Zhenhua Luo <zhenhua.luo@freescale.com>
Date: Fri, 25 Jan 2013 18:10:50 +0800
Subject: [PATCH] apache2: fix the race issue of parallel installation
@@ -31,5 +31,5 @@ index e2d5bb6..dde5ae0 100755
pathcomp="$pathcomp/"
done
--
-2.7.4
+2.25.1
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0007-apache2-allow-to-disable-selinux-support.patch b/meta-webserver/recipes-httpd/apache2/apache2/0007-apache2-allow-to-disable-selinux-support.patch
index fed6b5010b..7163dc2b80 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/0007-apache2-allow-to-disable-selinux-support.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0007-apache2-allow-to-disable-selinux-support.patch
@@ -1,4 +1,4 @@
-From 964ef2c1af74984602f46e7db938d3b95b148385 Mon Sep 17 00:00:00 2001
+From 0686564f64130f230870db8b4846973e3edbd646 Mon Sep 17 00:00:00 2001
From: Wenzong Fan <wenzong.fan@windriver.com>
Date: Mon, 1 Dec 2014 02:08:27 -0500
Subject: [PATCH] apache2: allow to disable selinux support
@@ -11,10 +11,10 @@ Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/configure.in b/configure.in
-index caa6f54..eab2090 100644
+index f58620f..b5971b7 100644
--- a/configure.in
+++ b/configure.in
-@@ -466,10 +466,16 @@ getloadavg
+@@ -514,10 +514,16 @@ gettid
dnl confirm that a void pointer is large enough to store a long integer
APACHE_CHECK_VOID_PTR_LEN
@@ -33,8 +33,8 @@ index caa6f54..eab2090 100644
+ ])
+fi
- AC_CACHE_CHECK([for gettid()], ac_cv_gettid,
- [AC_TRY_RUN(#define _GNU_SOURCE
+ if test $ac_cv_func_gettid = no; then
+ # On Linux before glibc 2.30, gettid() is only usable via syscall()
--
-2.7.4
+2.40.0
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/apache-configure_perlbin.patch b/meta-webserver/recipes-httpd/apache2/apache2/0008-Fix-perl-install-directory-to-usr-bin.patch
index 61669e3641..dc5b5c88f2 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/apache-configure_perlbin.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0008-Fix-perl-install-directory-to-usr-bin.patch
@@ -1,4 +1,4 @@
-From 5412077c398dec74321388fe6e593a44c4c80de6 Mon Sep 17 00:00:00 2001
+From 443d15b91d4e4979d92405610303797663f31102 Mon Sep 17 00:00:00 2001
From: echo <fei.geng@windriver.com>
Date: Tue, 28 Apr 2009 03:11:06 +0000
Subject: [PATCH] Fix perl install directory to /usr/bin
@@ -11,16 +11,15 @@ error:
bad interpreter: No such file or directory
Signed-off-by: Changqing Li <changqing.li@windriver.com>
-
---
configure.in | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/configure.in b/configure.in
-index d828512..be7bd25 100644
+index 4df3ff3..4eeb609 100644
--- a/configure.in
+++ b/configure.in
-@@ -855,10 +855,7 @@ AC_DEFINE_UNQUOTED(SERVER_CONFIG_FILE, "${rel_sysconfdir}/${progname}.conf",
+@@ -903,10 +903,7 @@ AC_DEFINE_UNQUOTED(SERVER_CONFIG_FILE, "${rel_sysconfdir}/${progname}.conf",
AC_DEFINE_UNQUOTED(AP_TYPES_CONFIG_FILE, "${rel_sysconfdir}/mime.types",
[Location of the MIME types config file, relative to the Apache root directory])
@@ -32,3 +31,6 @@ index d828512..be7bd25 100644
AC_SUBST(perlbin)
dnl If we are running on BSD/OS, we need to use the BSD .include syntax.
+--
+2.25.1
+
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0009-support-apxs.in-force-destdir-to-be-empty-string.patch b/meta-webserver/recipes-httpd/apache2/apache2/0009-support-apxs.in-force-destdir-to-be-empty-string.patch
new file mode 100644
index 0000000000..d1f9bb0f43
--- /dev/null
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0009-support-apxs.in-force-destdir-to-be-empty-string.patch
@@ -0,0 +1,49 @@
+From 43a4ad04e0d8771267a73f98b5918bcd10b167ec Mon Sep 17 00:00:00 2001
+From: Trevor Gamblin <trevor.gamblin@windriver.com>
+Date: Fri, 17 Apr 2020 06:31:35 -0700
+Subject: [PATCH] support/apxs.in: force destdir to be empty string
+
+If destdir is assigned to anything other than the empty string, the
+search path for apache2 config files is appended to itself, and
+related packages like apache-websocket will be unable to locate them:
+
+| cannot open
+/ala-lpggp31/tgamblin/yocto/poky.git/build/tmp/work/core2-64-poky-linux/apache-websocket/0.1.1+gitAUTOINC+6968083264-r0/recipe-sysroot/ala-lpggp31/tgamblin/yocto/poky.git/build/tmp/work/core2-64-poky-linux/apache-websocket/0.1.1+gitAUTOINC+6968083264-r0/recipe-sysroot//usr/share/apache2/build/config_vars.mk:
+No such file or directory at
+/ala-lpggp31/tgamblin/yocto/poky.git/build/tmp/work/core2-64-poky-linux/apache-websocket/0.1.1+gitAUTOINC+6968083264-r0/recipe-sysroot/usr/bin/crossscripts/apxs
+line 213.
+
+Ensure that it is always the empty string so that apache-websocket
+is able to find the required config files.
+
+Upstream-Status: Inappropriate (embedded-specific)
+
+Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
+---
+ support/apxs.in | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/support/apxs.in b/support/apxs.in
+index b2705fa..781f2ab 100644
+--- a/support/apxs.in
++++ b/support/apxs.in
+@@ -28,10 +28,12 @@ package apxs;
+ # is the empty string.
+
+ my $destdir = "";
+-my $ddi = rindex($0, "@exp_bindir@");
+-if ($ddi >= 0) {
+- $destdir = substr($0, 0, $ddi);
+-}
++# Comment out assignment of destdir so that it doesn't affect bitbake
++# cross-compilation setup
++#my $ddi = rindex($0, "@exp_bindir@");
++#if ($ddi >= 0) {
++# $destdir = substr($0, 0, $ddi);
++#}
+
+ my %config_vars = ();
+
+--
+2.25.1
+
diff --git a/meta-webserver/recipes-httpd/apache2/apache2/0008-apache2-do-not-use-relative-path-for-gen_test_char.patch b/meta-webserver/recipes-httpd/apache2/apache2/0010-apache2-do-not-use-relative-path-for-gen_test_char.patch
index 82e9e8c35f..ced8469f3a 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2/0008-apache2-do-not-use-relative-path-for-gen_test_char.patch
+++ b/meta-webserver/recipes-httpd/apache2/apache2/0010-apache2-do-not-use-relative-path-for-gen_test_char.patch
@@ -1,16 +1,15 @@
-From b62c4cd2295c98b2ebe12641e5f01590bd96ae94 Mon Sep 17 00:00:00 2001
+From d9993cbc33565c0acd29b0127d651dafa2a16975 Mon Sep 17 00:00:00 2001
From: Paul Eggleton <paul.eggleton@linux.intel.com>
Date: Tue, 17 Jul 2012 11:27:39 +0100
Subject: [PATCH] apache2: do not use relative path for gen_test_char
Upstream-Status: Inappropriate [embedded specific]
-
---
server/Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/server/Makefile.in b/server/Makefile.in
-index f635d76..0d48924 100644
+index 8c0c396..3544f55 100644
--- a/server/Makefile.in
+++ b/server/Makefile.in
@@ -29,7 +29,7 @@ gen_test_char: $(gen_test_char_OBJECTS)
@@ -23,5 +22,5 @@ index f635d76..0d48924 100644
util.lo: test_char.h
--
-2.7.4
+2.25.1
diff --git a/meta-webserver/recipes-httpd/apache2/apache2_2.4.41.bb b/meta-webserver/recipes-httpd/apache2/apache2_2.4.59.bb
index a34734c207..1632c6ccb1 100644
--- a/meta-webserver/recipes-httpd/apache2/apache2_2.4.41.bb
+++ b/meta-webserver/recipes-httpd/apache2/apache2_2.4.59.bb
@@ -13,28 +13,29 @@ SRC_URI = "${APACHE_MIRROR}/httpd/httpd-${PV}.tar.bz2 \
file://0005-replace-lynx-to-curl-in-apachectl-script.patch \
file://0006-apache2-fix-the-race-issue-of-parallel-installation.patch \
file://0007-apache2-allow-to-disable-selinux-support.patch \
- file://apache-configure_perlbin.patch \
+ file://0008-Fix-perl-install-directory-to-usr-bin.patch \
+ file://0009-support-apxs.in-force-destdir-to-be-empty-string.patch \
+ file://0001-make_exports.awk-not-expose-the-path.patch \
"
-SRC_URI_append_class-target = " \
- file://0008-apache2-do-not-use-relative-path-for-gen_test_char.patch \
+SRC_URI:append:class-target = " \
+ file://0010-apache2-do-not-use-relative-path-for-gen_test_char.patch \
file://init \
file://apache2-volatile.conf \
file://apache2.service \
file://volatiles.04_apache2 \
"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d52d0fd0bc788f068e647116c01ddfcd"
-SRC_URI[md5sum] = "dfc674f8f454e3bc2d4ccd73ad3b5f1e"
-SRC_URI[sha256sum] = "133d48298fe5315ae9366a0ec66282fa4040efa5d566174481077ade7d18ea40"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=bddeddfac80b2c9a882241d008bb41c3"
+SRC_URI[sha256sum] = "ec51501ec480284ff52f637258135d333230a7d229c3afa6f6c2f9040e321323"
S = "${WORKDIR}/httpd-${PV}"
-inherit autotools update-rc.d pkgconfig systemd update-alternatives
+inherit autotools update-rc.d pkgconfig systemd multilib_script multilib_header
DEPENDS = "openssl expat pcre apr apr-util apache2-native "
-CVE_PRODUCT = "http_server"
+CVE_PRODUCT = "apache:http_server"
SSTATE_SCAN_FILES += "apxs config_vars.mk config.nice"
@@ -43,9 +44,9 @@ PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux,libselin
PACKAGECONFIG[openldap] = "--enable-ldap --enable-authnz-ldap,--disable-ldap --disable-authnz-ldap,openldap"
PACKAGECONFIG[zlib] = "--enable-deflate,,zlib,zlib"
-CFLAGS_append = " -DPATH_MAX=4096"
+CFLAGS:append = " -DPATH_MAX=4096"
-EXTRA_OECONF_class-target = "\
+EXTRA_OECONF:class-target = "\
--enable-layout=Debian \
--prefix=${base_prefix} \
--exec_prefix=${exec_prefix} \
@@ -62,12 +63,13 @@ EXTRA_OECONF_class-target = "\
--with-berkeley-db=no \
--enable-info \
--enable-rewrite \
+ --with-mpm=prefork \
--enable-mpms-shared \
ap_cv_void_ptr_lt_long=no \
ac_cv_have_threadsafe_pollset=no \
"
-EXTRA_OECONF_class-native = "\
+EXTRA_OECONF:class-native = "\
--prefix=${prefix} \
--includedir=${includedir}/${BPN} \
--sysconfdir=${sysconfdir}/${BPN} \
@@ -77,14 +79,16 @@ EXTRA_OECONF_class-native = "\
--localstatedir=${localstatedir} \
"
-do_configure_prepend() {
- sed -i -e 's:$''{prefix}/usr/lib/cgi-bin:$''{libexecdir}/cgi-bin:g' ${S}/config.layout
+do_configure:prepend() {
+ sed -i -e 's:$''{prefix}/usr/lib/cgi-bin:$''{libexecdir}/cgi-bin:g' \
+ -e 's#\(installbuilddir:\s*\).*#\1${libexecdir}/${PN}/build#' \
+ ${S}/config.layout
}
-do_install_append_class-target() {
+do_install:append:class-target() {
install -d ${D}/${sysconfdir}/init.d
- cat ${WORKDIR}/init | \
+ cat ${UNPACKDIR}/init | \
sed -e 's,/usr/sbin/,${sbindir}/,g' \
-e 's,/usr/bin/,${bindir}/,g' \
-e 's,/usr/lib/,${libdir}/,g' \
@@ -114,80 +118,98 @@ do_install_append_class-target() {
sed -i -e 's,${STAGING_DIR_TARGET},,g' \
-e 's,${DEBUG_PREFIX_MAP},,g' \
- -e 's,-fdebug-prefix-map[^ ]*,,g; s,-fmacro-prefix-map[^ ]*,,g' \
+ -e 's,-fdebug-prefix-map[^ ]*,,g; s,-fmacro-prefix-map[^ ]*,,g; s,-ffile-prefix-map[^ ]*,,g' \
-e 's,${HOSTTOOLS_DIR}/,,g' \
-e 's,APU_INCLUDEDIR = .*,APU_INCLUDEDIR = ,g' \
- -e 's,APU_CONFIG = .*,APU_CONFIG = ,g' ${D}${datadir}/apache2/build/config_vars.mk
+ -e 's,APU_CONFIG = .*,APU_CONFIG = ,g' ${D}${libexecdir}/${PN}/build/config_vars.mk
sed -i -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
-e 's,${DEBUG_PREFIX_MAP},,g' \
-e 's,${RECIPE_SYSROOT},,g' \
- -e 's,-fdebug-prefix-map[^ ]*,,g; s,-fmacro-prefix-map[^ ]*,,g' \
+ -e 's,-fdebug-prefix-map[^ ]*,,g; s,-fmacro-prefix-map[^ ]*,,g; s,-fmacro-prefix-map[^ ]*,,g' \
-e 's,APU_INCLUDEDIR = .*,APU_INCLUDEDIR = ,g' \
- -e 's,".*/configure","configure",g' ${D}${datadir}/apache2/build/config.nice
+ -e 's,${WORKDIR}/recipe-sysroot/,,g' \
+ -e 's,".*/configure","configure",g' ${D}${libexecdir}/${PN}/build/config.nice
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/tmpfiles.d/
- install -m 0644 ${WORKDIR}/apache2-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
+ install -m 0644 ${UNPACKDIR}/apache2-volatile.conf ${D}${sysconfdir}/tmpfiles.d/
install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/apache2.service ${D}${systemd_unitdir}/system
+ install -m 0644 ${UNPACKDIR}/apache2.service ${D}${systemd_unitdir}/system
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/apache2.service
sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' ${D}${systemd_unitdir}/system/apache2.service
elif ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/volatiles.04_apache2 ${D}${sysconfdir}/default/volatiles/04_apache2
+ install -m 0644 ${UNPACKDIR}/volatiles.04_apache2 ${D}${sysconfdir}/default/volatiles/04_apache2
fi
rm -rf ${D}${localstatedir} ${D}${sbindir}/envvars*
chown -R root:root ${D}
+
+ oe_multilib_header apache2/ap_config_layout.h
}
-do_install_append_class-native() {
+do_install:append:class-native() {
install -d ${D}${bindir} ${D}${libdir}
install -m 755 server/gen_test_char ${D}${bindir}
}
-SYSROOT_PREPROCESS_FUNCS_append_class-target = " apache_sysroot_preprocess"
+SYSROOT_PREPROCESS_FUNCS:append:class-target = " apache_sysroot_preprocess"
+
+SYSROOT_DIRS += "${libexecdir}/${PN}/build"
apache_sysroot_preprocess() {
install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}
install -m 755 ${D}${bindir}/apxs ${SYSROOT_DESTDIR}${bindir_crossscripts}
install -d ${SYSROOT_DESTDIR}${sbindir}
install -m 755 ${D}${sbindir}/apachectl ${SYSROOT_DESTDIR}${sbindir}
- sed -i 's!my $installbuilddir = .*!my $installbuilddir = "${STAGING_DIR_HOST}/${datadir}/${BPN}/build";!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/apxs
- sed -i 's!my $libtool = .*!my $libtool = "${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool";!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/apxs
-
- sed -i 's!^APR_CONFIG = .*!APR_CONFIG = ${STAGING_BINDIR_CROSS}/apr-1-config!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^APU_CONFIG = .*!APU_CONFIG = ${STAGING_BINDIR_CROSS}/apu-1-config!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^includedir = .*!includedir = ${STAGING_INCDIR}/apache2!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^CFLAGS = -I[^ ]*!CFLAGS = -I${STAGING_INCDIR}/openssl!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^EXTRA_LDFLAGS = .*!EXTRA_LDFLAGS = -L${STAGING_LIBDIR}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!^EXTRA_INCLUDES = .*!EXTRA_INCLUDES = -I$(includedir) -I. -I${STAGING_INCDIR}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
- sed -i 's!--sysroot=[^ ]*!--sysroot=${STAGING_DIR_HOST}!' ${SYSROOT_DESTDIR}${datadir}/${BPN}/build/config_vars.mk
+ sed -i 's!\(my $installbuilddir = \)"\(.*\)"!\1"${STAGING_DIR_HOST}\2"!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/apxs
+
+ sed -i 's!^APR_CONFIG = .*!APR_CONFIG = ${STAGING_BINDIR_CROSS}/apr-1-config!' ${SYSROOT_DESTDIR}${libexecdir}/${PN}/build/config_vars.mk
+ sed -i 's!^APU_CONFIG = .*!APU_CONFIG = ${STAGING_BINDIR_CROSS}/apu-1-config!' ${SYSROOT_DESTDIR}${libexecdir}/${PN}/build/config_vars.mk
+ sed -i 's!^includedir = .*!includedir = ${STAGING_INCDIR}/apache2!' ${SYSROOT_DESTDIR}${libexecdir}/${PN}/build/config_vars.mk
+ sed -i 's!^CFLAGS = -I[^ ]*!CFLAGS = -I${STAGING_INCDIR}/openssl!' ${SYSROOT_DESTDIR}${libexecdir}/${PN}/build/config_vars.mk
+ sed -i 's!^EXTRA_LDFLAGS = .*!EXTRA_LDFLAGS = -L${STAGING_LIBDIR}!' ${SYSROOT_DESTDIR}${libexecdir}/${PN}/build/config_vars.mk
+ sed -i 's!^EXTRA_INCLUDES = .*!EXTRA_INCLUDES = -I$(includedir) -I. -I${STAGING_INCDIR}!' ${SYSROOT_DESTDIR}${libexecdir}/${PN}/build/config_vars.mk
+ sed -i 's!--sysroot=[^ ]*!--sysroot=${STAGING_DIR_HOST}!' ${SYSROOT_DESTDIR}${libexecdir}/${PN}/build/config_vars.mk
}
# Implications - used by update-rc.d scripts
INITSCRIPT_NAME = "apache2"
INITSCRIPT_PARAMS = "defaults 91 20"
-SYSTEMD_SERVICE_${PN} = "apache2.service"
-SYSTEMD_AUTO_ENABLE_${PN} = "enable"
+SYSTEMD_SERVICE:${PN} = "apache2.service"
+SYSTEMD_AUTO_ENABLE:${PN} = "enable"
-ALTERNATIVE_${PN}-doc = "htpasswd.1"
+ALTERNATIVE:${PN}-doc = "htpasswd.1"
ALTERNATIVE_LINK_NAME[htpasswd.1] = "${mandir}/man1/htpasswd.1"
-PACKAGES = "${PN}-scripts ${PN}-doc ${PN}-dev ${PN}-dbg ${PN}"
+MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/apxs"
-CONFFILES_${PN} = "${sysconfdir}/${BPN}/httpd.conf \
+PACKAGES = "${PN}-utils ${PN}-scripts ${PN}-doc ${PN}-dev ${PN}-dbg ${PN}"
+
+CONFFILES:${PN} = "${sysconfdir}/${BPN}/httpd.conf \
${sysconfdir}/${BPN}/magic \
${sysconfdir}/${BPN}/mime.types \
${sysconfdir}/${BPN}/extra/*"
+FILES:${PN}-utils = "${bindir}/ab \
+ ${bindir}/htdbm \
+ ${bindir}/htdigest \
+ ${bindir}/htpasswd \
+ ${bindir}/logresolve \
+ ${bindir}/httxt2dbm \
+ ${sbindir}/htcacheclean \
+ ${sbindir}/fcgistarter \
+ ${sbindir}/checkgid \
+ ${sbindir}/rotatelogs \
+ "
+
# We override here rather than append so that .so links are
# included in the runtime package rather than here (-dev)
# and to get build, icons, error into the -dev package
-FILES_${PN}-dev = "${datadir}/${BPN}/build \
+FILES:${PN}-dev = "${libexecdir}/${PN}/build \
${datadir}/${BPN}/icons \
${datadir}/${BPN}/error \
${includedir}/${BPN} \
@@ -195,21 +217,31 @@ FILES_${PN}-dev = "${datadir}/${BPN}/build \
"
# Add the manual to -doc
-FILES_${PN}-doc += " ${datadir}/${BPN}/manual"
+FILES:${PN}-doc += " ${datadir}/${BPN}/manual"
-FILES_${PN}-scripts += "${bindir}/dbmmanage"
+FILES:${PN}-scripts += "${bindir}/dbmmanage"
# Override this too - here is the default, less datadir
-FILES_${PN} = "${bindir} ${sbindir} ${libexecdir} ${libdir} \
+FILES:${PN} = "${bindir} ${sbindir} ${libexecdir} ${libdir} \
${sysconfdir} ${libdir}/${BPN}"
# We want htdocs and cgi-bin to go with the binary
-FILES_${PN} += "${datadir}/${BPN}/ ${libdir}/cgi-bin"
+FILES:${PN} += "${datadir}/${BPN}/ ${libdir}/cgi-bin"
-FILES_${PN}-dbg += "${libdir}/${BPN}/modules/.debug"
+FILES:${PN}-dbg += "${libdir}/${BPN}/modules/.debug"
-RDEPENDS_${PN} += "openssl libgcc"
-RDEPENDS_${PN}-scripts += "perl ${PN}"
-RDEPENDS_${PN}-dev = "perl"
+RDEPENDS:${PN} += "openssl libgcc ${PN}-utils"
+RDEPENDS:${PN}-scripts += "perl ${PN}"
+RDEPENDS:${PN}-dev = "perl"
BBCLASSEXTEND = "native"
+
+pkg_postinst:${PN}() {
+ if [ -z "$D" ]; then
+ if type systemd-tmpfiles >/dev/null; then
+ systemd-tmpfiles --create
+ elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
+ ${sysconfdir}/init.d/populate-volatile.sh update
+ fi
+ fi
+}
diff --git a/meta-webserver/recipes-httpd/apache2/files/apache2-volatile.conf b/meta-webserver/recipes-httpd/apache2/files/apache2-volatile.conf
index ff2c587046..0852a8859a 100644
--- a/meta-webserver/recipes-httpd/apache2/files/apache2-volatile.conf
+++ b/meta-webserver/recipes-httpd/apache2/files/apache2-volatile.conf
@@ -1,2 +1,2 @@
-d /var/run/apache2 0755 root root -
+d /run/apache2 0755 root root -
d /var/log/apache2 0755 root root -
diff --git a/meta-webserver/recipes-httpd/cherokee/cherokee/0001-common-internal.h-Define-LLONG_MAX-if-undefined.patch b/meta-webserver/recipes-httpd/cherokee/cherokee/0001-common-internal.h-Define-LLONG_MAX-if-undefined.patch
new file mode 100644
index 0000000000..0f43842752
--- /dev/null
+++ b/meta-webserver/recipes-httpd/cherokee/cherokee/0001-common-internal.h-Define-LLONG_MAX-if-undefined.patch
@@ -0,0 +1,47 @@
+From c73415021f3f3b2b30062ab74b25fe49c51c2242 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 10 Nov 2019 15:59:44 -0800
+Subject: [PATCH] common-internal.h: Define LLONG_MAX if undefined
+
+time_t can also be long long type, therefore check for that as fallback
+Fixes build on 32bit hosts where time_t is fixed for Y2K38
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ cherokee/common-internal.h | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/cherokee/common-internal.h b/cherokee/common-internal.h
+index 5c28da97..5646ec0f 100644
+--- a/cherokee/common-internal.h
++++ b/cherokee/common-internal.h
+@@ -222,6 +222,16 @@ char *strcasestr(char *s, char *find);
+ # endif
+ #endif
+
++/* Long Long limit
++ */
++#ifndef LLONG_MAX
++# if (__SIZEOF_LONG_LONG__ == 8)
++# define LLONG_MAX 0x7fffffffffffffffLL
++# else
++# error "Can't define LLONG_MAX"
++# endif
++#endif
++
+ /* time_t limit
+ */
+ #ifndef TIME_MAX
+@@ -229,6 +239,8 @@ char *strcasestr(char *s, char *find);
+ # define TIME_MAX ((time_t)INT_MAX)
+ # elif (SIZEOF_TIME_T == SIZEOF_LONG)
+ # define TIME_MAX ((time_t)LONG_MAX)
++# elif (SIZEOF_TIME_T == __SIZEOF_LONG_LONG__)
++# define TIME_MAX ((time_t)LLONG_MAX)
+ # else
+ # error "Can't define TIME_MAX"
+ # endif
+--
+2.24.0
+
diff --git a/meta-webserver/recipes-httpd/cherokee/cherokee/0001-configure.ac-Add-foreign-to-AM_INIT_AUTOMAKE.patch b/meta-webserver/recipes-httpd/cherokee/cherokee/0001-configure.ac-Add-foreign-to-AM_INIT_AUTOMAKE.patch
index f3be7c6e52..b16060f2a1 100644
--- a/meta-webserver/recipes-httpd/cherokee/cherokee/0001-configure.ac-Add-foreign-to-AM_INIT_AUTOMAKE.patch
+++ b/meta-webserver/recipes-httpd/cherokee/cherokee/0001-configure.ac-Add-foreign-to-AM_INIT_AUTOMAKE.patch
@@ -7,6 +7,7 @@ Fixes errors like
| Makefile.am: error: required file './README' not found
| Makefile.am: error: required file './ChangeLog' not found
+Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
configure.ac | 2 +-
diff --git a/meta-webserver/recipes-httpd/cherokee/cherokee/0001-make-Do-not-build-po-files.patch b/meta-webserver/recipes-httpd/cherokee/cherokee/0001-make-Do-not-build-po-files.patch
index d4c0b6e8c6..1d6a2182bd 100644
--- a/meta-webserver/recipes-httpd/cherokee/cherokee/0001-make-Do-not-build-po-files.patch
+++ b/meta-webserver/recipes-httpd/cherokee/cherokee/0001-make-Do-not-build-po-files.patch
@@ -5,6 +5,7 @@ Subject: [PATCH] make: Do not build po files
Target fails to build
+Upstream-Status: Inappropriate [Cross-compile specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Makefile.am | 2 +-
diff --git a/meta-webserver/recipes-httpd/cherokee/cherokee_git.bb b/meta-webserver/recipes-httpd/cherokee/cherokee_git.bb
index 3f7eae4c16..53d6a85ae7 100644
--- a/meta-webserver/recipes-httpd/cherokee/cherokee_git.bb
+++ b/meta-webserver/recipes-httpd/cherokee/cherokee_git.bb
@@ -1,25 +1,26 @@
SUMMARY = "Cherokee Web Server fast and secure"
-SUMMARY_cget = "Small downloader based in the Cherokee client library"
+SUMMARY:cget = "Small downloader based in the Cherokee client library"
HOMEPAGE = "http://www.cherokee-project.com/"
SECTION = "network"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
DEPENDS = "unzip-native libpcre openssl mysql5 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-SRCREV = "75f041e2255e6dd0692db2f14611c2647dbe8425"
-PV = "1.2.104+git${SRCPV}"
-SRC_URI = "git://github.com/cherokee/webserver \
+SRCREV = "9a75e65b876bcc376cb6b379dca1f7ce4a055c59"
+PV = "1.2.104+git"
+SRC_URI = "git://github.com/cherokee/webserver;branch=master;protocol=https \
file://cherokee.init \
file://cherokee.service \
file://cherokee-install-configured.py-once.patch \
file://0001-configure.ac-Add-foreign-to-AM_INIT_AUTOMAKE.patch \
file://0001-make-Do-not-build-po-files.patch \
+ file://0001-common-internal.h-Define-LLONG_MAX-if-undefined.patch \
"
S = "${WORKDIR}/git"
-inherit autotools-brokensep pkgconfig binconfig update-rc.d systemd pythonnative
+inherit autotools-brokensep pkgconfig binconfig update-rc.d systemd ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python2", "pythonnative", "", d)}
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
PACKAGECONFIG[ffmpeg] = "--with-ffmpeg,--without-ffmpeg,libav"
@@ -33,15 +34,15 @@ EXTRA_OECONF = "--disable-static \
--with-wwwroot=${localstatedir}/www/cherokee \
"
-do_install_append () {
+do_install:append () {
install -m 0755 -d ${D}${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/cherokee.init ${D}${sysconfdir}/init.d/cherokee
+ install -m 755 ${UNPACKDIR}/cherokee.init ${D}${sysconfdir}/init.d/cherokee
# clean up .la files for plugins
rm -f ${D}${libdir}/cherokee/*.la
install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/cherokee.service ${D}${systemd_unitdir}/system
+ install -m 0644 ${UNPACKDIR}/cherokee.service ${D}${systemd_unitdir}/system
rmdir "${D}${localstatedir}/run"
rmdir --ignore-fail-on-non-empty "${D}${localstatedir}"
}
@@ -49,15 +50,15 @@ do_install_append () {
# Put -dev near the front so we can move the .la files into it with a wildcard
PACKAGES =+ "libcherokee-server libcherokee-client libcherokee-base cget"
-FILES_cget = "${bindir}/cget"
-FILES_libcherokee-server = "${libdir}/libcherokee-server${SOLIBS}"
-FILES_libcherokee-client = "${libdir}/libcherokee-client${SOLIBS}"
-FILES_libcherokee-base = "${libdir}/libcherokee-base${SOLIBS}"
+FILES:cget = "${bindir}/cget"
+FILES:libcherokee-server = "${libdir}/libcherokee-server${SOLIBS}"
+FILES:libcherokee-client = "${libdir}/libcherokee-client${SOLIBS}"
+FILES:libcherokee-base = "${libdir}/libcherokee-base${SOLIBS}"
# Pack the htdocs
-FILES_${PN} += "${localstatedir}/www/cherokee"
+FILES:${PN} += "${localstatedir}/www/cherokee"
-CONFFILES_${PN} = " \
+CONFFILES:${PN} = " \
${sysconfdir}/cherokee/cherokee.conf \
${sysconfdir}/init.d/cherokee \
"
@@ -65,7 +66,14 @@ CONFFILES_${PN} = " \
INITSCRIPT_NAME = "cherokee"
INITSCRIPT_PARAMS = "defaults 91 91"
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "cherokee.service"
+RPROVIDES:${PN} += "${PN}-systemd"
+RREPLACES:${PN} += "${PN}-systemd"
+RCONFLICTS:${PN} += "${PN}-systemd"
+SYSTEMD_SERVICE:${PN} = "cherokee.service"
+
+python() {
+ if 'meta-python2' not in d.getVar('BBFILE_COLLECTIONS').split():
+ raise bb.parse.SkipRecipe('Requires meta-python2 to be present.')
+}
+
+CVE_PRODUCT += "cherokee_web_server"
diff --git a/meta-webserver/recipes-httpd/hiawatha/hiawatha_10.7.bb b/meta-webserver/recipes-httpd/hiawatha/hiawatha_10.12.bb
index d6c449b5db..1111ef6f56 100644
--- a/meta-webserver/recipes-httpd/hiawatha/hiawatha_10.7.bb
+++ b/meta-webserver/recipes-httpd/hiawatha/hiawatha_10.12.bb
@@ -1,22 +1,22 @@
SUMMARY = "Lightweight secure web server"
HOMEPAGE = "http://www.hiawatha-webserver.org"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
DEPENDS = "libxml2 libxslt virtual/crypt"
SECTION = "net"
-SRC_URI = "http://hiawatha-webserver.org/files/${BP}.tar.gz \
+SRC_URI = "http://hiawatha-webserver.org/files/hiawatha-10/${BP}.tar.gz \
file://hiawatha-init \
file://hiawatha.service "
-SRC_URI[md5sum] = "581aa71c831172ba06910deda717302f"
-SRC_URI[sha256sum] = "363e99d84a85dafbb74bcc30b3e30286053ec2abbc7afe08cd87193611735f74"
+SRC_URI[md5sum] = "d9e282be06ed456207726b7ac0df9d48"
+SRC_URI[sha256sum] = "61bf41146c51244769984135529fcffd0f6cb92be18dc12d460effc42f19f50d"
INITSCRIPT_NAME = "hiawatha"
INITSCRIPT_PARAMS = "defaults 70"
-SYSTEMD_SERVICE_${PN} = "hiawatha.service"
+SYSTEMD_SERVICE:${PN} = "hiawatha.service"
inherit cmake update-rc.d systemd
@@ -35,11 +35,11 @@ EXTRA_OECMAKE = " -DENABLE_IPV6=OFF \
-DCMAKE_INSTALL_LIBDIR=${libdir} \
-DCMAKE_INSTALL_FULL_LOCALSTATEDIR=${localstatedir}"
-do_install_append() {
+do_install:append() {
# Copy over init script and sed in the correct sbin path
- sed -i 's,sed_sbin_path,${sbindir},' ${WORKDIR}/hiawatha-init
+ sed -i 's,sed_sbin_path,${sbindir},' ${UNPACKDIR}/hiawatha-init
mkdir -p ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/hiawatha-init ${D}${sysconfdir}/init.d/hiawatha
+ install -m 0755 ${UNPACKDIR}/hiawatha-init ${D}${sysconfdir}/init.d/hiawatha
# configure php-fcgi to have a working configuration
# by default if php is installed
@@ -47,13 +47,29 @@ do_install_append() {
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
install -d ${D}/${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/hiawatha.service ${D}/${systemd_unitdir}/system
+ install -m 644 ${UNPACKDIR}/hiawatha.service ${D}/${systemd_unitdir}/system
+ fi
+
+ # /var/log/hiawatha and /var/lib/hiawatha needs to be created in runtime.
+ # Use rmdir to catch if upstream stops creating these dirs, or adds
+ # something else in /var/log.
+ rmdir ${D}${localstatedir}/log/${BPN} ${D}${localstatedir}/log
+ rmdir ${D}${localstatedir}/run
+ rmdir --ignore-fail-on-non-empty ${D}${localstatedir}
+
+ # Create /var/log/hiawatha at runtime.
+ if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then
+ install -d ${D}${nonarch_libdir}/tmpfiles.d
+ echo "d ${localstatedir}/log/${BPN} - - - -" > ${D}${nonarch_libdir}/tmpfiles.d/${BPN}.conf
+ fi
+ if [ "${@bb.utils.filter('DISTRO_FEATURES', 'sysvinit', d)}" ]; then
+ install -d ${D}${sysconfdir}/default/volatiles
+ echo "d root root 0755 ${localstatedir}/log/${BPN} none" > ${D}${sysconfdir}/default/volatiles/99_${BPN}
fi
- rmdir --ignore-fail-on-non-empty "${D}${localstatedir}" "${D}${localstatedir}/run"
}
-CONFFILES_${PN} = " \
+CONFFILES:${PN} = " \
${sysconfdir}/hiawatha/cgi-wrapper.conf \
${sysconfdir}/hiawatha/hiawatha.conf \
${sysconfdir}/hiawatha/index.xslt \
@@ -61,4 +77,5 @@ CONFFILES_${PN} = " \
${sysconfdir}/hiawatha/php-fcgi.conf \
"
-FILES_${PN}-dev = "${libdir}/hiawatha/*${SOLIBSDEV}"
+FILES:${PN} += "${nonarch_libdir}/tmpfiles.d"
+FILES:${PN}-dev = "${libdir}/hiawatha/*${SOLIBSDEV}"
diff --git a/meta-webserver/recipes-httpd/monkey/files/0001-configure-Respect-LIBS-variable-from-env.patch b/meta-webserver/recipes-httpd/monkey/files/0001-configure-Respect-LIBS-variable-from-env.patch
deleted file mode 100644
index 7a229513b6..0000000000
--- a/meta-webserver/recipes-httpd/monkey/files/0001-configure-Respect-LIBS-variable-from-env.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From b0526a9b5325bd4758dad8d14efd85c98ef2ebff Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 14 Jul 2017 18:25:23 -0700
-Subject: [PATCH] configure: Respect LIBS variable from env
-
-For musl we need to pass -lexecinfo from env
-this change accomodates that
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- configure | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index 4286c34..f1c65db 100755
---- a/configure
-+++ b/configure
-@@ -620,7 +620,7 @@ LIBDEFS = -DSHAREDLIB -fPIC \$(DEFS)
- INCDIR = ./include
- LDFLAGS = $LDFLAGS
- DESTDIR = ../bin/monkey
--LIBS = -ldl $libs
-+LIBS = -ldl $libs ${LIBS}
- OBJ = monkey.o mk_method.o mk_mimetype.o mk_vhost.o mk_request.o \\
- mk_header.o mk_config.o mk_signals.o \\
- mk_user.o mk_utils.o mk_epoll.o mk_scheduler.o \\
---
-2.13.3
-
diff --git a/meta-webserver/recipes-httpd/monkey/files/0001-fastcgi-Use-value-instead-of-address-of-sin6_port.patch b/meta-webserver/recipes-httpd/monkey/files/0001-fastcgi-Use-value-instead-of-address-of-sin6_port.patch
new file mode 100644
index 0000000000..f4bab49aa7
--- /dev/null
+++ b/meta-webserver/recipes-httpd/monkey/files/0001-fastcgi-Use-value-instead-of-address-of-sin6_port.patch
@@ -0,0 +1,30 @@
+From 7f724bbafbb1e170401dd5de201273ab8c8bc75f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 28 Aug 2022 14:24:02 -0700
+Subject: [PATCH] fastcgi: Use value instead of address of sin6_port
+
+This seems to be wrongly assigned where ipv4 sin_port is
+equated to address of sin6_port and not value of sin6_port
+
+Upstream-Status: Submitted [https://github.com/monkey/monkey/pull/375]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ plugins/fastcgi/fcgi_handler.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/plugins/fastcgi/fcgi_handler.c b/plugins/fastcgi/fcgi_handler.c
+index 9e095e3c..e8e1eec1 100644
+--- a/plugins/fastcgi/fcgi_handler.c
++++ b/plugins/fastcgi/fcgi_handler.c
+@@ -245,7 +245,7 @@ static inline int fcgi_add_param_net(struct fcgi_handler *handler)
+ struct sockaddr_in *s4 = (struct sockaddr_in *)&addr4;
+ memset(&addr4, 0, sizeof(addr4));
+ addr4.sin_family = AF_INET;
+- addr4.sin_port = &s->sin6_port;
++ addr4.sin_port = s->sin6_port;
+ memcpy(&addr4.sin_addr.s_addr,
+ s->sin6_addr.s6_addr + 12,
+ sizeof(addr4.sin_addr.s_addr));
+--
+2.37.2
+
diff --git a/meta-webserver/recipes-httpd/monkey/files/monkey.init b/meta-webserver/recipes-httpd/monkey/files/monkey.init
index 40b21182e1..55446f0e82 100644
--- a/meta-webserver/recipes-httpd/monkey/files/monkey.init
+++ b/meta-webserver/recipes-httpd/monkey/files/monkey.init
@@ -1,7 +1,7 @@
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
-DAEMON=/usr/bin/monkey
+DAEMON=/usr/sbin/monkey
NAME=monkey
DESC="Monkey HTTP Server"
OPTS="--daemon"
diff --git a/meta-webserver/recipes-httpd/monkey/files/monkey.service b/meta-webserver/recipes-httpd/monkey/files/monkey.service
index f9aa57f91e..4f3b7be4e9 100644
--- a/meta-webserver/recipes-httpd/monkey/files/monkey.service
+++ b/meta-webserver/recipes-httpd/monkey/files/monkey.service
@@ -4,7 +4,7 @@ After=network.target remote-fs.target
[Service]
Type=forking
-ExecStart=/usr/bin/monkey --daemon
+ExecStart=/usr/sbin/monkey --daemon
PIDFile=/var/run/monkey.pid.2001
TimeoutSec=10
diff --git a/meta-webserver/recipes-httpd/monkey/monkey_1.5.6.bb b/meta-webserver/recipes-httpd/monkey/monkey_1.5.6.bb
deleted file mode 100644
index 559d251bdf..0000000000
--- a/meta-webserver/recipes-httpd/monkey/monkey_1.5.6.bb
+++ /dev/null
@@ -1,77 +0,0 @@
-SUMMARY = "Fast and Lightweight HTTP Server for Linux"
-HOMEPAGE = "http://monkey-project.com"
-BUGTRACKER = "https://github.com/monkey/monkey/issues"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"
-
-SECTION = "net"
-
-DEPENDS_append_libc-musl = " libexecinfo"
-
-SRC_URI = "http://monkey-project.com/releases/1.5/monkey-${PV}.tar.gz \
- file://0001-configure-Respect-LIBS-variable-from-env.patch \
- file://monkey.service \
- file://monkey.init"
-
-SRC_URI[md5sum] = "9699e4c9ea6ce6b989907c252ae80254"
-SRC_URI[sha256sum] = "7c3d845306aa74ee6effd7ab6169d16ac4e6450e564954d0d0baa2d1e9be1a22"
-
-UPSTREAM_CHECK_URI = "https://github.com/monkey/monkey/releases"
-UPSTREAM_CHECK_REGEX = "v(?P<pver>\d+(\.\d+)+).tar.gz"
-
-EXTRA_OECONF = "--plugdir=${libdir}/monkey/ \
- --logdir=${localstatedir}/log/monkey/ \
- --pidfile=${localstatedir}/run/monkey.pid \
- --default-user=www-data \
- --datadir=${localstatedir}/www/monkey/ \
- --sysconfdir=${sysconfdir}/monkey/ \
- --enable-plugins=* \
- --disable-plugins=mbedtls \
- --debug \
- --malloc-libc"
-
-do_configure_prepend_libc-musl() {
- export LIBS="-lexecinfo"
-}
-
-DISABLE_STATIC = ""
-CLEANBROKEN = "1"
-
-inherit autotools-brokensep pkgconfig update-rc.d systemd
-
-INITSCRIPT_NAME = "monkey"
-INITSCRIPT_PARAMS = "defaults 70"
-
-SYSTEMD_SERVICE_${PN} = "monkey.service"
-
-FILES_${PN} += "${localstatedir}/www/monkey/"
-
-CONFFILES_${PN} = "${sysconfdir}/monkey/monkey.conf \
- ${sysconfdir}/monkey/sites/default \
- ${sysconfdir}/monkey/monkey.mime \
- ${sysconfdir}/monkey/plugins.load \
- ${sysconfdir}/monkey/plugins/proxy_reverse/proxy_reverse.conf \
- ${sysconfdir}/monkey/plugins/mandril/mandril.conf \
- ${sysconfdir}/monkey/plugins/fastcgi/fastcgi.conf \
- ${sysconfdir}/monkey/plugins/logger/logger.conf \
- ${sysconfdir}/monkey/plugins/cgi/cgi.conf \
- ${sysconfdir}/monkey/plugins/cheetah/cheetah.conf \
- ${sysconfdir}/monkey/plugins/dirlisting/dirhtml.conf \
- ${sysconfdir}/monkey/plugins/dirlisting/themes/guineo/header.theme \
- ${sysconfdir}/monkey/plugins/dirlisting/themes/guineo/footer.theme \
- ${sysconfdir}/monkey/plugins/dirlisting/themes/guineo/entry.theme \
- ${sysconfdir}/monkey/plugins/auth/README \
- ${sysconfdir}/monkey/plugins/auth/monkey.users \
- "
-
-do_install_append() {
-
- mkdir -p ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/monkey.init ${D}${sysconfdir}/init.d/monkey
-
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -d ${D}${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/monkey.service ${D}/${systemd_unitdir}/system
- fi
-}
diff --git a/meta-webserver/recipes-httpd/monkey/monkey_1.6.9.bb b/meta-webserver/recipes-httpd/monkey/monkey_1.6.9.bb
new file mode 100644
index 0000000000..5bf6373a81
--- /dev/null
+++ b/meta-webserver/recipes-httpd/monkey/monkey_1.6.9.bb
@@ -0,0 +1,92 @@
+SUMMARY = "Fast and Lightweight HTTP Server for Linux"
+HOMEPAGE = "http://monkey-project.com"
+BUGTRACKER = "https://github.com/monkey/monkey/issues"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"
+
+SECTION = "net"
+
+SRC_URI = "git://github.com/monkey/monkey;branch=1.6;protocol=https \
+ file://0001-fastcgi-Use-value-instead-of-address-of-sin6_port.patch \
+ file://monkey.service \
+ file://monkey.init"
+
+SRCREV = "7999b487fded645381d387ec0e057e92407b0d2c"
+S = "${WORKDIR}/git"
+
+UPSTREAM_CHECK_URI = "https://github.com/monkey/monkey/releases"
+UPSTREAM_CHECK_REGEX = "v(?P<pver>\d+(\.\d+)+).tar.gz"
+
+EXTRA_OECMAKE = "-DINSTALL_LOGDIR=${localstatedir}/log/monkey/ \
+ -DPID_FILE=/run/monkey.pid \
+ -DINSTALL_SYSCONFDIR=${sysconfdir}/monkey/ \
+ -DWITH_PLUGINS=* \
+ -DWITHOUT_PLUGINS=mbedtls \
+ -DWITH_DEBUG=1 \
+ -DDEFAULT_USER='www-data' \
+ -DWITH_SYSTEM_MALLOC=1 \
+ "
+
+EXTRA_OECMAKE:append:libc-musl = " -DWITH_MUSL=1 "
+
+# GCC-10+ defaults to -fno-common
+CFLAGS += "-fcommon"
+
+DISABLE_STATIC = ""
+
+inherit cmake pkgconfig update-rc.d systemd
+
+OECMAKE_GENERATOR = "Unix Makefiles"
+
+do_configure:append() {
+ sed -i -e 's|${STAGING_BINDIR_TOOLCHAIN}/||g' ${S}/include/monkey/mk_env.h
+}
+
+do_install:append() {
+ rmdir ${D}${localstatedir}/log/${BPN} ${D}${localstatedir}/run ${D}${localstatedir}/log
+ rmdir --ignore-fail-on-non-empty ${D}${localstatedir}
+ install -Dm 0755 ${UNPACKDIR}/monkey.init ${D}${sysconfdir}/init.d/monkey
+ # Create /var/log/monkey in runtime.
+ if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then
+ install -d ${D}${nonarch_libdir}/tmpfiles.d
+ echo "d ${localstatedir}/log/${BPN} 0755 ${BPN} ${BPN} -" > ${D}${nonarch_libdir}/tmpfiles.d/${BPN}.conf
+ fi
+ if [ "${@bb.utils.filter('DISTRO_FEATURES', 'sysvinit', d)}" ]; then
+ install -d ${D}${sysconfdir}/default/volatiles
+ echo "d ${BPN} ${BPN} 0755 ${localstatedir}/log/${BPN} none" > ${D}${sysconfdir}/default/volatiles/99_${BPN}
+ fi
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ install -Dm 644 ${UNPACKDIR}/monkey.service ${D}/${systemd_unitdir}/system/monkey.service
+ fi
+}
+
+INITSCRIPT_NAME = "monkey"
+INITSCRIPT_PARAMS = "defaults 70"
+
+SYSTEMD_SERVICE:${PN} = "monkey.service"
+
+PACKAGES += "${PN}-plugins"
+
+FILES:${PN}-plugins = "${libdir}/monkey-*.so"
+
+FILES:${PN} += "${nonarch_libdir}/tmpfiles.d"
+
+CONFFILES:${PN} = "${sysconfdir}/monkey/monkey.conf \
+ ${sysconfdir}/monkey/sites/default \
+ ${sysconfdir}/monkey/monkey.mime \
+ ${sysconfdir}/monkey/plugins.load \
+ ${sysconfdir}/monkey/plugins/proxy_reverse/proxy_reverse.conf \
+ ${sysconfdir}/monkey/plugins/mandril/mandril.conf \
+ ${sysconfdir}/monkey/plugins/fastcgi/fastcgi.conf \
+ ${sysconfdir}/monkey/plugins/logger/logger.conf \
+ ${sysconfdir}/monkey/plugins/cgi/cgi.conf \
+ ${sysconfdir}/monkey/plugins/cheetah/cheetah.conf \
+ ${sysconfdir}/monkey/plugins/dirlisting/dirhtml.conf \
+ ${sysconfdir}/monkey/plugins/dirlisting/themes/guineo/header.theme \
+ ${sysconfdir}/monkey/plugins/dirlisting/themes/guineo/footer.theme \
+ ${sysconfdir}/monkey/plugins/dirlisting/themes/guineo/entry.theme \
+ ${sysconfdir}/monkey/plugins/auth/README \
+ ${sysconfdir}/monkey/plugins/auth/monkey.users \
+ "
+
diff --git a/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch b/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch
new file mode 100644
index 0000000000..7ba2a1fb85
--- /dev/null
+++ b/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch
@@ -0,0 +1,39 @@
+From 0c3c669464a514cf8d0cac08282ecb2b486f440f Mon Sep 17 00:00:00 2001
+From: Joe Slater <joe.slater@windriver.com>
+Date: Tue, 3 Oct 2023 19:21:17 +0000
+Subject: [PATCH] configure: libxslt conf
+
+Modify to find libxslt related include files under sysroot.
+
+Upstream-Status: Pending
+
+Signed-off-by: Joe Slater <joe.slater@windriver.com>
+---
+ auto/lib/libxslt/conf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/auto/lib/libxslt/conf b/auto/lib/libxslt/conf
+index 3063ac7..eb77886 100644
+--- a/auto/lib/libxslt/conf
++++ b/auto/lib/libxslt/conf
+@@ -12,7 +12,7 @@
+ #include <libxslt/xsltInternals.h>
+ #include <libxslt/transform.h>
+ #include <libxslt/xsltutils.h>"
+- ngx_feature_path="/usr/include/libxml2"
++ ngx_feature_path="=/usr/include/libxml2"
+ ngx_feature_libs="-lxml2 -lxslt"
+ ngx_feature_test="xmlParserCtxtPtr ctxt = NULL;
+ xsltStylesheetPtr sheet = NULL;
+@@ -100,7 +100,7 @@ fi
+ ngx_feature_name=NGX_HAVE_EXSLT
+ ngx_feature_run=no
+ ngx_feature_incs="#include <libexslt/exslt.h>"
+- ngx_feature_path="/usr/include/libxml2"
++ ngx_feature_path="=/usr/include/libxml2"
+ ngx_feature_libs="-lexslt"
+ ngx_feature_test="exsltRegisterAll();"
+ . auto/feature
+--
+2.35.5
+
diff --git a/meta-webserver/recipes-httpd/nginx/files/nginx-fix-pidfile.patch b/meta-webserver/recipes-httpd/nginx/files/nginx-fix-pidfile.patch
new file mode 100644
index 0000000000..90159a6677
--- /dev/null
+++ b/meta-webserver/recipes-httpd/nginx/files/nginx-fix-pidfile.patch
@@ -0,0 +1,99 @@
+Description: Fix NGINX pidfile handling
+Author: Tj <ubuntu@iam.tj>
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/nginx/+bug/1581864
+Last-Update: 2019-06-04
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+
+Upstream-Status: Pending
+
+This patch is from ubuntu, https://github.com/aroth-arsoft/pkg-nginx/blob
+/master/debian/patches/nginx-fix-pidfile.patch, for fix below
+error info:
+nginx.service: failed to parse pid from file /run/nginx/nginx.pid:
+invalid argument
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
+diff --git a/src/core/nginx.c b/src/core/nginx.c
+index 9fcb0eb2..083eba1d 100644
+--- a/src/core/nginx.c
++++ b/src/core/nginx.c
+@@ -338,14 +338,21 @@ main(int argc, char *const *argv)
+ ngx_process = NGX_PROCESS_MASTER;
+ }
+
++ /* tell-tale to detect if this is parent or child process */
++ ngx_int_t child_pid = NGX_BUSY;
++
+ #if !(NGX_WIN32)
+
+ if (ngx_init_signals(cycle->log) != NGX_OK) {
+ return 1;
+ }
+
++ /* tell-tale that this code has been executed */
++ child_pid--;
++
+ if (!ngx_inherited && ccf->daemon) {
+- if (ngx_daemon(cycle->log) != NGX_OK) {
++ child_pid = ngx_daemon(cycle->log);
++ if (child_pid == NGX_ERROR) {
+ return 1;
+ }
+
+@@ -358,8 +365,19 @@ main(int argc, char *const *argv)
+
+ #endif
+
+- if (ngx_create_pidfile(&ccf->pid, cycle->log) != NGX_OK) {
+- return 1;
++ /* If ngx_daemon() returned the child's PID in the parent process
++ * after the fork() set ngx_pid to the child_pid, which gets
++ * written to the PID file, then exit.
++ * For NGX_WIN32 always write the PID file
++ * For others, only write it from the parent process */
++ if (child_pid < NGX_OK || child_pid > NGX_OK) {
++ ngx_pid = child_pid > NGX_OK ? child_pid : ngx_pid;
++ if (ngx_create_pidfile(&ccf->pid, cycle->log) != NGX_OK) {
++ return 1;
++ }
++ }
++ if (child_pid > NGX_OK) {
++ exit(0);
+ }
+
+ if (ngx_log_redirect_stderr(cycle) != NGX_OK) {
+diff --git a/src/os/unix/ngx_daemon.c b/src/os/unix/ngx_daemon.c
+index 385c49b6..3719854c 100644
+--- a/src/os/unix/ngx_daemon.c
++++ b/src/os/unix/ngx_daemon.c
+@@ -7,14 +7,17 @@
+
+ #include <ngx_config.h>
+ #include <ngx_core.h>
++#include <unistd.h>
+
+
+ ngx_int_t
+ ngx_daemon(ngx_log_t *log)
+ {
+ int fd;
++ /* retain the return value for passing back to caller */
++ pid_t pid_child = fork();
+
+- switch (fork()) {
++ switch (pid_child) {
+ case -1:
+ ngx_log_error(NGX_LOG_EMERG, log, ngx_errno, "fork() failed");
+ return NGX_ERROR;
+@@ -23,7 +26,8 @@ ngx_daemon(ngx_log_t *log)
+ break;
+
+ default:
+- exit(0);
++ /* let caller do the exit() */
++ return pid_child;
+ }
+
+ ngx_parent = ngx_pid;
diff --git a/meta-webserver/recipes-httpd/nginx/nginx.inc b/meta-webserver/recipes-httpd/nginx/nginx.inc
index e202e85637..2714c3d22f 100644
--- a/meta-webserver/recipes-httpd/nginx/nginx.inc
+++ b/meta-webserver/recipes-httpd/nginx/nginx.inc
@@ -21,14 +21,16 @@ SRC_URI = " \
file://nginx.init \
file://nginx-volatile.conf \
file://nginx.service \
+ file://nginx-fix-pidfile.patch \
+ file://0001-configure-libxslt-conf.patch \
"
inherit siteinfo update-rc.d useradd systemd
-SYSTEMD_SERVICE_${PN} = "nginx.service"
+SYSTEMD_SERVICE:${PN} = "nginx.service"
-CFLAGS_append = " -fPIE -pie"
-CXXFLAGS_append = " -fPIE -pie"
+CFLAGS:append = " -fPIE -pie"
+CXXFLAGS:append = " -fPIE -pie"
NGINX_WWWDIR ?= "${localstatedir}/www/localhost"
NGINX_USER ?= "www"
@@ -36,11 +38,18 @@ NGINX_USER ?= "www"
EXTRA_OECONF = ""
DISABLE_STATIC = ""
-PACKAGECONFIG ??= "ssl"
+PACKAGECONFIG ??= "ssl ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
+PACKAGECONFIG[gunzip] = "--with-http_gunzip_module,,"
PACKAGECONFIG[http2] = "--with-http_v2_module,,"
PACKAGECONFIG[ssl] = "--with-http_ssl_module,,openssl"
PACKAGECONFIG[http-auth-request] = "--with-http_auth_request_module,,"
+PACKAGECONFIG[ipv6] = "--with-ipv6,,"
+PACKAGECONFIG[webdav] = "--with-http_dav_module,,"
+PACKAGECONFIG[stream] = "--with-stream,,"
+PACKAGECONFIG[http-sub-module] = "--with-http_sub_module,,"
+
+PACKAGECONFIG[xslt] = "--with-http_xslt_module,,libxslt"
do_configure () {
if [ "${SITEINFO_BITS}" = "64" ]; then
@@ -64,7 +73,7 @@ do_configure () {
--with-ptr-size=${PTRSIZE} \
--with-sig-atomic-t=${PTRSIZE} \
--with-size-t=${PTRSIZE} \
- --with-off-t=${PTRSIZE} \
+ --with-off-t=8 \
--with-time-t=${PTRSIZE} \
--with-sys-nerr=132 \
--conf-path=${sysconfdir}/nginx/nginx.conf \
@@ -89,34 +98,34 @@ do_install () {
install -d ${D}${sysconfdir}/tmpfiles.d
echo "d /run/${BPN} - - - -" \
> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
- echo "d /${localstatedir}/log/${BPN} 0755 root root -" \
+ echo "d ${localstatedir}/log/${BPN} 0755 root root -" \
>> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
fi
install -d ${D}${sysconfdir}/${BPN}
- ln -snf ${localstatedir}/run/${BPN} ${D}${sysconfdir}/${BPN}/run
+ ln -rs ${D}${localstatedir}/run/${BPN} ${D}${sysconfdir}/${BPN}/run
install -d ${D}${NGINX_WWWDIR}
- mv ${D}/usr/html ${D}${NGINX_WWWDIR}/
+ mv ${D}${exec_prefix}/html ${D}${NGINX_WWWDIR}/
chown ${NGINX_USER}:www-data -R ${D}${NGINX_WWWDIR}
install -d ${D}${sysconfdir}/init.d
- install -m 0755 ${WORKDIR}/nginx.init ${D}${sysconfdir}/init.d/nginx
+ install -m 0755 ${UNPACKDIR}/nginx.init ${D}${sysconfdir}/init.d/nginx
sed -i 's,/usr/sbin/,${sbindir}/,g' ${D}${sysconfdir}/init.d/nginx
sed -i 's,/etc/,${sysconfdir}/,g' ${D}${sysconfdir}/init.d/nginx
install -d ${D}${sysconfdir}/nginx
- install -m 0644 ${WORKDIR}/nginx.conf ${D}${sysconfdir}/nginx/nginx.conf
+ install -m 0644 ${UNPACKDIR}/nginx.conf ${D}${sysconfdir}/nginx/nginx.conf
sed -i 's,/etc/,${sysconfdir}/,g' ${D}${sysconfdir}/nginx/nginx.conf
sed -i 's,/var/,${localstatedir}/,g' ${D}${sysconfdir}/nginx/nginx.conf
sed -i 's/^user.*/user ${NGINX_USER};/g' ${D}${sysconfdir}/nginx/nginx.conf
- install -Dm 0644 ${WORKDIR}/default_server.site ${D}${sysconfdir}/nginx/sites-available/default_server
+ install -Dm 0644 ${UNPACKDIR}/default_server.site ${D}${sysconfdir}/nginx/sites-available/default_server
sed -i 's,/var/,${localstatedir}/,g' ${D}${sysconfdir}/nginx/sites-available/default_server
install -d ${D}${sysconfdir}/nginx/sites-enabled
ln -s ../sites-available/default_server ${D}${sysconfdir}/nginx/sites-enabled/
- install -m 0644 ${WORKDIR}/proxy_params ${D}${sysconfdir}/nginx/proxy_params
+ install -m 0644 ${UNPACKDIR}/proxy_params ${D}${sysconfdir}/nginx/proxy_params
install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/nginx-volatile.conf ${D}${sysconfdir}/default/volatiles/99_nginx
+ install -m 0644 ${UNPACKDIR}/nginx-volatile.conf ${D}${sysconfdir}/default/volatiles/99_nginx
sed -i 's,/var/,${localstatedir}/,g' ${D}${sysconfdir}/default/volatiles/99_nginx
sed -i 's,@NGINX_USER@,${NGINX_USER},g' ${D}${sysconfdir}/default/volatiles/99_nginx
@@ -131,18 +140,20 @@ do_install () {
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)};then
install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/nginx.service ${D}${systemd_unitdir}/system/
+ install -m 0644 ${UNPACKDIR}/nginx.service ${D}${systemd_unitdir}/system/
sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' \
-e 's,@LOCALSTATEDIR@,${localstatedir},g' \
-e 's,@SBINDIR@,${sbindir},g' \
-e 's,@BASE_BINDIR@,${base_bindir},g' \
${D}${systemd_unitdir}/system/nginx.service
fi
+
+ rm -rf ${D}${localstatedir}/log/
}
-pkg_postinst_${PN} () {
+pkg_postinst:${PN} () {
if [ -z "$D" ]; then
- if type systemd-tmpfiles >/dev/null; then
+ if type systemd-tmpfiles >/dev/null 2>&1; then
systemd-tmpfiles --create
elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
${sysconfdir}/init.d/populate-volatile.sh update
@@ -150,12 +161,12 @@ pkg_postinst_${PN} () {
fi
}
-FILES_${PN} += " \
+FILES:${PN} += " \
${localstatedir}/ \
${systemd_unitdir}/system/nginx.service \
"
-CONFFILES_${PN} = " \
+CONFFILES:${PN} = " \
${sysconfdir}/nginx/nginx.conf \
${sysconfdir}/nginx/fastcgi.conf \
${sysconfdir}/nginx/fastcgi_params \
@@ -171,8 +182,9 @@ INITSCRIPT_NAME = "nginx"
INITSCRIPT_PARAMS = "defaults 92 20"
USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = " \
+USERADD_PARAM:${PN} = " \
--system --no-create-home \
--home ${NGINX_WWWDIR} \
--groups www-data \
+ --shell ${base_sbindir}/nologin \
--user-group ${NGINX_USER}"
diff --git a/meta-webserver/recipes-httpd/nginx/nginx_1.16.0.bb b/meta-webserver/recipes-httpd/nginx/nginx_1.16.0.bb
deleted file mode 100644
index cad0db6fc6..0000000000
--- a/meta-webserver/recipes-httpd/nginx/nginx_1.16.0.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-require nginx.inc
-
-# 1.16.x branch is the current stable branch, the recommended default
-# 1.17.x is the current mainline branches containing all new features
-DEFAULT_PREFERENCE = "-1"
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=52e384aaac868b755b93ad5535e2d075"
-
-SRC_URI[md5sum] = "97207283f30cd90cdba638c3ea30323a"
-SRC_URI[sha256sum] = "4fd376bad78797e7f18094a00f0f1088259326436b537eb5af69b01be2ca1345"
diff --git a/meta-webserver/recipes-httpd/nginx/nginx_1.17.0.bb b/meta-webserver/recipes-httpd/nginx/nginx_1.17.0.bb
deleted file mode 100644
index 8774a87fff..0000000000
--- a/meta-webserver/recipes-httpd/nginx/nginx_1.17.0.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require nginx.inc
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=52e384aaac868b755b93ad5535e2d075"
-
-SRC_URI[md5sum] = "56767fd62302508295b31adc48b99a59"
-SRC_URI[sha256sum] = "e21b5d06cd53e86afb94f0b3678e0abb0c0f011433471fa3d895cefa65ae0fab"
diff --git a/meta-webserver/recipes-httpd/nginx/nginx_1.25.3.bb b/meta-webserver/recipes-httpd/nginx/nginx_1.25.3.bb
new file mode 100644
index 0000000000..d0371dd3cc
--- /dev/null
+++ b/meta-webserver/recipes-httpd/nginx/nginx_1.25.3.bb
@@ -0,0 +1,10 @@
+require nginx.inc
+
+# 1.24.x branch is the current stable branch, the recommended default
+# 1.25.x is the current mainline branches containing all new features
+DEFAULT_PREFERENCE = "-1"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=79ad2eb837299421c4435dedc8897b3d"
+
+SRC_URI[sha256sum] = "64c5b975ca287939e828303fa857d22f142b251f17808dfe41733512d9cded86"
+
diff --git a/meta-webserver/recipes-httpd/nginx/nginx_1.26.0.bb b/meta-webserver/recipes-httpd/nginx/nginx_1.26.0.bb
new file mode 100644
index 0000000000..0ce940d429
--- /dev/null
+++ b/meta-webserver/recipes-httpd/nginx/nginx_1.26.0.bb
@@ -0,0 +1,6 @@
+require nginx.inc
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=a6547d7e5628787ee2a9c5a3480eb628"
+
+SRC_URI[sha256sum] = "d2e6c8439d6c6db5015d8eaab2470ab52aef85a7bf363182879977e084370497"
+
diff --git a/meta-webserver/recipes-httpd/nostromo/files/0001-GNUmakefile-add-possibility-to-override-variables.patch b/meta-webserver/recipes-httpd/nostromo/files/0001-GNUmakefile-add-possibility-to-override-variables.patch
deleted file mode 100644
index 8cd4682355..0000000000
--- a/meta-webserver/recipes-httpd/nostromo/files/0001-GNUmakefile-add-possibility-to-override-variables.patch
+++ /dev/null
@@ -1,145 +0,0 @@
-From 7fa0d31ec5c0be9dca84a03851b2d44f61527ec8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Eric=20B=C3=A9nard?= <eric@eukrea.com>
-Date: Sun, 4 Dec 2011 16:01:04 +0100
-Subject: [PATCH] GNUmakefile: add possibility to override variables
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-this is useful for cross compilation
-
-Signed-off-by: Eric BĂ©nard <eric@eukrea.com>
----
-Upstream-Status: Inappropriate [embedded specific]
- src/libbsd/GNUmakefile | 10 +++++-----
- src/libmy/GNUmakefile | 26 +++++++++++++-------------
- src/nhttpd/GNUmakefile | 12 ++++++------
- src/tools/GNUmakefile | 8 ++++----
- 4 files changed, 28 insertions(+), 28 deletions(-)
-
-diff --git a/src/libbsd/GNUmakefile b/src/libbsd/GNUmakefile
-index e2d01a3..b034bc6 100644
---- a/src/libbsd/GNUmakefile
-+++ b/src/libbsd/GNUmakefile
-@@ -1,12 +1,12 @@
--CCFLAGS = -O2 -pipe -Wall -Werror -Wstrict-prototypes -c
-+CFLAGS := -O2 -pipe -Wall -Werror -Wstrict-prototypes -c
-
- libbsd.a: strlcpy.o strlcat.o
-- ar -r libbsd.a strlcpy.o strlcat.o
-- ranlib libbsd.a
-+ $(AR) -r libbsd.a strlcpy.o strlcat.o
-+ $(RANLIB) libbsd.a
-
- strlcpy.o: strlcpy.c
-- cc ${CCFLAGS} strlcpy.c
-+ $(CC) $(CFLAGS) strlcpy.c
- strlcat.o: strlcat.c
-- cc ${CCFLAGS} strlcat.c
-+ $(CC) $(CFLAGS) strlcat.c
- clean:
- rm -f libbsd.a *.o
-diff --git a/src/libmy/GNUmakefile b/src/libmy/GNUmakefile
-index ce90dd9..891ffea 100644
---- a/src/libmy/GNUmakefile
-+++ b/src/libmy/GNUmakefile
-@@ -1,30 +1,30 @@
--CCFLAGS = -O2 -Wall -Werror -Wstrict-prototypes -c
-+CFLAGS := -O2 -Wall -Werror -Wstrict-prototypes -c
-
- libmy.a: strcutl.o strcutw.o strcuts.o strcuti.o strcutf.o flog.o flogd.o fparse.o strlower.o strb64d.o
-- ar -r libmy.a strcutl.o strcutw.o strcuts.o strcuti.o strcutf.o flog.o flogd.o fparse.o strlower.o strb64d.o
-- ranlib libmy.a
-+ $(AR) -r libmy.a strcutl.o strcutw.o strcuts.o strcuti.o strcutf.o flog.o flogd.o fparse.o strlower.o strb64d.o
-+ $(RANLIB) libmy.a
-
- strcutl.o: strcutl.c
-- cc ${CCFLAGS} strcutl.c
-+ $(CC) $(CFLAGS) strcutl.c
- strcutw.o: strcutw.c
-- cc ${CCFLAGS} strcutw.c
-+ $(CC) $(CFLAGS) strcutw.c
- strcuts.o: strcuts.c
-- cc ${CCFLAGS} strcuts.c
-+ $(CC) $(CFLAGS) strcuts.c
- strcuti.o: strcuti.c
-- cc ${CCFLAGS} strcuti.c
-+ $(CC) $(CFLAGS) strcuti.c
- strcutf.o: strcutf.c
-- cc ${CCFLAGS} strcutf.c
-+ $(CC) $(CFLAGS) strcutf.c
- strlower.o: strlower.c
-- cc ${CCFLAGS} strlower.c
-+ $(CC) $(CFLAGS) strlower.c
- strb64d.o: strb64d.c
-- cc ${CCFLAGS} strb64d.c
-+ $(CC) $(CFLAGS) strb64d.c
-
- flog.o: flog.c
-- cc ${CCFLAGS} flog.c
-+ $(CC) $(CFLAGS) flog.c
- flogd.o: flogd.c
-- cc ${CCFLAGS} flogd.c
-+ $(CC) $(CFLAGS) flogd.c
- fparse.o: fparse.c
-- cc ${CCFLAGS} fparse.c
-+ $(CC) $(CFLAGS) fparse.c
-
- clean:
- rm -f libmy.a *.o
-diff --git a/src/nhttpd/GNUmakefile b/src/nhttpd/GNUmakefile
-index f6d12de..9524911 100644
---- a/src/nhttpd/GNUmakefile
-+++ b/src/nhttpd/GNUmakefile
-@@ -1,20 +1,20 @@
- # $nostromo: GNUmakefile,v 1.6 2016/04/12 19:02:06 hacki Exp $
-
--CCFLAGS = -O2 -pipe -Wall -Wstrict-prototypes -c
-+CFLAGS := -O2 -pipe -Wall -Wstrict-prototypes -c
-
- nhttpd: main.o http.o sys.o
-- cc -L../libmy -L../libbsd -o nhttpd main.o http.o sys.o -lmy -lbsd -lssl -lcrypt
-- strip nhttpd
-+ $(CC) -L../libmy -L../libbsd -o nhttpd main.o http.o sys.o -lmy -lbsd -lssl -lcrypt
-+# $(STRIP) nhttpd
- nroff -Tascii -c -mandoc nhttpd.8 > nhttpd.cat8
-
- main.o: main.c
-- cc ${CCFLAGS} main.c
-+ $(CC) $(CFLAGS) main.c
-
- http.o: http.c
-- cc ${CCFLAGS} http.c
-+ $(CC) $(CFLAGS) http.c
-
- sys.o: sys.c
-- cc ${CCFLAGS} sys.c
-+ $(CC) $(CFLAGS) sys.c
-
- clean:
- rm -f nhttpd nhttpd.cat8 *.o
-diff --git a/src/tools/GNUmakefile b/src/tools/GNUmakefile
-index 15bea61..663ddb5 100644
---- a/src/tools/GNUmakefile
-+++ b/src/tools/GNUmakefile
-@@ -1,13 +1,13 @@
- # $nostromo: GNUmakefile,v 1.3 2016/04/12 19:02:58 hacki Exp $
-
--CCFLAGS = -O2 -pipe -Wall -Werror -Wstrict-prototypes -c
-+CFLAGS = -O2 -pipe -Wall -Werror -Wstrict-prototypes
-
- crypt: crypt.o
-- cc -L../libbsd -o crypt crypt.o -lcrypt -lbsd
-- strip crypt
-+ $(CC) $(CFLAGS) -L../libbsd -o crypt crypt.o -lcrypt -lbsd
-+# $(STRIP) crypt
-
- crypt.o: crypt.c
-- cc ${CCFLAGS} crypt.c
-+ $(CC) $(CFLAGS) -c crypt.c
-
- clean:
- rm -f crypt *.o
---
-1.7.6.4
-
diff --git a/meta-webserver/recipes-httpd/nostromo/files/nhttpd.conf b/meta-webserver/recipes-httpd/nostromo/files/nhttpd.conf
deleted file mode 100644
index 6674bb696c..0000000000
--- a/meta-webserver/recipes-httpd/nostromo/files/nhttpd.conf
+++ /dev/null
@@ -1,55 +0,0 @@
-# MAIN [MANDATORY]
-
-servername localhost
-#servername www.nazgul.ch:8080
-serverlisten *
-#serverlisten 81.221.21.250 127.0.0.1 ::1
-serveradmin webmaster@localhost
-serverroot /var/nostromo
-servermimes /var/nostromo/conf/mimes
-docroot /var/nostromo/htdocs
-docindex index.html
-
-# LOGS [OPTIONAL]
-
-logpid /var/run/nostromo/nhttpd.pid
-#logaccess /var/log/nostromo/access_log
-
-# SETUID [RECOMMENDED]
-
-user www-data
-
-# BASIC AUTHENTICATION [OPTIONAL]
-
-#htaccess .htaccess
-#htpasswd /var/nostromo/conf/.htpasswd
-#htpasswd +bsdauth
-#htpasswd +bsdauthnossl
-
-# SSL [OPTIONAL]
-
-#sslport 443
-#sslcert /etc/ssl/server.crt
-#sslcertkey /etc/ssl/server.key
-
-# CUSTOM RESPONSES [OPTIONAL]
-#
-# The custom responses are searched in the corresponding document root.
-
-#custom_401 custom_401.html
-#custom_403 custom_403.html
-#custom_404 custom_404.html
-
-# ALIASES [OPTIONAL]
-
-/icons /var/nostromo/icons
-
-# VIRTUAL HOSTS [OPTIONAL]
-
-#www.rahel.ch /var/nostromo/htdocs/www.rahel.ch
-#www.rahel.ch:8080 /var/nostromo/htdocs/www.rahel.ch
-
-# HOMEDIRS [OPTIONAL]
-
-#homedirs /home
-#homedirs_public public_www
diff --git a/meta-webserver/recipes-httpd/nostromo/files/nostromo b/meta-webserver/recipes-httpd/nostromo/files/nostromo
deleted file mode 100644
index 8a28868829..0000000000
--- a/meta-webserver/recipes-httpd/nostromo/files/nostromo
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-
-PATH=/sbin:/bin:/usr/sbin:/usr/bin
-DAEMON=nhttpd
-NAME=nhttpd
-DESC="Nostromo Web Server"
-OPTS="-c /etc/nhttpd.conf"
-
-case "$1" in
- start)
- echo -n "Starting $DESC: "
- start-stop-daemon --start -x "$DAEMON" -- $OPTS
- echo "$NAME."
- ;;
- stop)
- echo -n "Stopping $DESC: "
- start-stop-daemon --stop -x "$DAEMON"
- echo "$NAME."
- ;;
- restart|force-reload)
- echo -n "Restarting $DESC: "
- start-stop-daemon --stop -x "$DAEMON"
- sleep 1
- start-stop-daemon --start -x "$DAEMON" -- $OPTS
- echo "$NAME."
- ;;
- *)
- N=/etc/init.d/$NAME
- echo "Usage: $N {start|stop|restart|force-reload}" >&2
- exit 1
- ;;
-esac
-
-exit 0
diff --git a/meta-webserver/recipes-httpd/nostromo/files/tmpfiles.conf b/meta-webserver/recipes-httpd/nostromo/files/tmpfiles.conf
deleted file mode 100644
index b7a9f4886e..0000000000
--- a/meta-webserver/recipes-httpd/nostromo/files/tmpfiles.conf
+++ /dev/null
@@ -1 +0,0 @@
-d /run/nostromo - www-data www-data -
diff --git a/meta-webserver/recipes-httpd/nostromo/files/volatiles b/meta-webserver/recipes-httpd/nostromo/files/volatiles
deleted file mode 100644
index 40924960c6..0000000000
--- a/meta-webserver/recipes-httpd/nostromo/files/volatiles
+++ /dev/null
@@ -1,2 +0,0 @@
-d www-data www-data 0775 /var/run/nostromo none
-d www-data www-data 0775 /var/log/nostromo none
diff --git a/meta-webserver/recipes-httpd/nostromo/nostromo_1.9.6.bb b/meta-webserver/recipes-httpd/nostromo/nostromo_1.9.6.bb
deleted file mode 100644
index a6b1ff0fc6..0000000000
--- a/meta-webserver/recipes-httpd/nostromo/nostromo_1.9.6.bb
+++ /dev/null
@@ -1,64 +0,0 @@
-SUMMARY = "A simple, fast and secure HTTP server"
-HOMEPAGE = "http://www.nazgul.ch/dev_nostromo.html"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://src/nhttpd/main.c;beginline=2;endline=14;md5=0bb3711a867b9704d3bfabcf5529b64e"
-
-SRC_URI = "http://www.nazgul.ch/dev/${BPN}-${PV}.tar.gz \
- file://0001-GNUmakefile-add-possibility-to-override-variables.patch \
- file://nhttpd.conf \
- file://volatiles \
- file://tmpfiles.conf \
- file://nostromo \
-"
-
-SRC_URI[md5sum] = "27aa241d78ff78920354c3e03a5026ea"
-SRC_URI[sha256sum] = "541494ecfeafec58c0876ccc90cc23b06e0144f6f42029af44c7cdb1f411e8eb"
-
-TARGET_CC_ARCH += "${LDFLAGS}"
-
-DEPENDS = "openssl groff-native base-passwd virtual/crypt"
-
-inherit update-rc.d
-
-INITSCRIPT_NAME = "nostromo"
-INITSCRIPT_PARAMS = "defaults 70"
-
-do_compile() {
- oe_runmake
-}
-
-do_install() {
- install -d ${D}/${sbindir}
- install -m 0755 src/nhttpd/nhttpd ${D}/${sbindir}/nhttpd
- install -m 0755 src/tools/crypt ${D}/${sbindir}/crypt
- install -d ${D}/${mandir}/man8
- install -m 0444 src/nhttpd/nhttpd.8 ${D}/${mandir}/man8/nhttpd.8
- install -d ${D}${localstatedir}/nostromo/conf
- install -d ${D}${localstatedir}/nostromo/htdocs/cgi-bin
- install -d ${D}${localstatedir}/nostromo/icons
- install -d ${D}${sysconfdir}/init.d
- install -m 0644 conf/mimes ${D}${localstatedir}/nostromo/conf/mimes
- install -m 0644 ${WORKDIR}/nhttpd.conf ${D}${sysconfdir}
- install -m 0755 ${WORKDIR}/nostromo ${D}${sysconfdir}/init.d
- install -D -m 0644 ${WORKDIR}/volatiles ${D}${sysconfdir}/default/volatiles/nostromo
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -D -m 0644 ${WORKDIR}/tmpfiles.conf ${D}${sysconfdir}/tmpfiles.d/nostromo.conf
- fi
- install -m 0644 htdocs/index.html ${D}${localstatedir}/nostromo/htdocs/index.html
- install -m 0644 htdocs/nostromo.gif ${D}${localstatedir}/nostromo/htdocs/nostromo.gif
- install -m 0644 icons/dir.gif ${D}${localstatedir}/nostromo/icons/dir.gif
- install -m 0644 icons/file.gif ${D}${localstatedir}/nostromo/icons/file.gif
- chown -R www-data:www-data ${D}/${localstatedir}/nostromo
-}
-
-CONFFILES_${PN} += "/var/nostromo/conf/mimes ${sysconfdir}/nhttpd.conf"
-
-pkg_postinst_${PN} () {
- if [ -z "$D" ]; then
- if [ -e /sys/fs/cgroup/systemd ]; then
- systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/nostromo.conf
- elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
- ${sysconfdir}/init.d/populate-volatile.sh update
- fi
- fi
-}
diff --git a/meta-webserver/recipes-httpd/sthttpd/sthttpd/0001-Define-_GNU_SOURCE-if-HAVE_SIGSET-is-set.patch b/meta-webserver/recipes-httpd/sthttpd/sthttpd/0001-Define-_GNU_SOURCE-if-HAVE_SIGSET-is-set.patch
new file mode 100644
index 0000000000..a1783a7adb
--- /dev/null
+++ b/meta-webserver/recipes-httpd/sthttpd/sthttpd/0001-Define-_GNU_SOURCE-if-HAVE_SIGSET-is-set.patch
@@ -0,0 +1,51 @@
+From f3889e5870e9761ee6113fac7f38aa44cc43e46c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 7 Sep 2022 00:30:52 -0700
+Subject: [PATCH] Define _GNU_SOURCE if HAVE_SIGSET is set
+
+This enforces using sigset() API which needs _GNU_SOURCE macro to be
+defined
+
+Upstream-Status: Submitted [https://github.com/blueness/sthttpd/pull/16]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/libhttpd.c | 5 ++++-
+ src/thttpd.c | 4 ++++
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/src/libhttpd.c b/src/libhttpd.c
+index fa42c10..669be11 100644
+--- a/src/libhttpd.c
++++ b/src/libhttpd.c
+@@ -25,9 +25,12 @@
+ ** SUCH DAMAGE.
+ */
+
+-
+ #include <config.h>
+
++#ifdef HAVE_SIGSET
++#define _GNU_SOURCE
++#endif
++
+ //system headers
+ #include <sys/types.h>
+ #include <sys/param.h>
+diff --git a/src/thttpd.c b/src/thttpd.c
+index ad97188..3c7a449 100644
+--- a/src/thttpd.c
++++ b/src/thttpd.c
+@@ -28,6 +28,10 @@
+
+ #include <config.h>
+
++#ifdef HAVE_SIGSET
++#define _GNU_SOURCE
++#endif
++
+ //system headers
+ #include <sys/param.h>
+ #include <sys/types.h>
+--
+2.37.3
+
diff --git a/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb b/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb
index 560dd9b6e4..ec188cc482 100644
--- a/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb
+++ b/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb
@@ -7,7 +7,8 @@ LIC_FILES_CHKSUM = "file://src/thttpd.c;beginline=1;endline=26;md5=0c5762c2c34dc
DEPENDS += "base-passwd virtual/crypt"
SRCREV = "2845bf5bff2b820d2336c8c8061cbfc5f271e720"
-SRC_URI = "git://github.com/blueness/${BPN} \
+SRC_URI = "git://github.com/blueness/${BPN};branch=master;protocol=https \
+ file://0001-Define-_GNU_SOURCE-if-HAVE_SIGSET-is-set.patch \
file://thttpd.service \
file://thttpd.conf \
file://init"
@@ -20,7 +21,7 @@ S = "${WORKDIR}/git"
inherit autotools update-rc.d systemd update-alternatives
ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN}-doc = "htpasswd.1"
+ALTERNATIVE:${PN}-doc = "htpasswd.1"
ALTERNATIVE_LINK_NAME[htpasswd.1] = "${mandir}/man1/htpasswd.1"
SRV_DIR ?= "${servicedir}/www"
@@ -29,21 +30,21 @@ SRV_DIR ?= "${servicedir}/www"
# but ${SRV_DIR} is not installed chgrp'd to the group by default.
WEBGROUP ?= "www-data"
-do_configure_prepend () {
+do_configure:prepend () {
export WEBDIR=${SRV_DIR}
export WEBGROUP=${WEBGROUP}
}
-do_install_append () {
+do_install:append () {
install -d ${D}${sysconfdir}/init.d
- install -c -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/thttpd
- install -c -m 755 ${WORKDIR}/thttpd.conf ${D}${sysconfdir}
+ install -c -m 755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/thttpd
+ install -c -m 755 ${UNPACKDIR}/thttpd.conf ${D}${sysconfdir}
sed -i -e 's,@@CONFFILE,${sysconfdir}/thttpd.conf,g' ${D}${sysconfdir}/init.d/thttpd
sed -i -e 's,@@SRVDIR,${SRV_DIR},g' ${D}${sysconfdir}/thttpd.conf
sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/thttpd
install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/thttpd.service ${D}${systemd_unitdir}/system
+ install -m 0644 ${UNPACKDIR}/thttpd.service ${D}${systemd_unitdir}/system
sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${systemd_unitdir}/system/thttpd.service
sed -i 's!/var/!${localstatedir}/!g' ${D}${systemd_unitdir}/system/thttpd.service
sed -i -e 's,@@CONFFILE,${sysconfdir}/thttpd.conf,g' ${D}${systemd_unitdir}/system/thttpd.service
@@ -52,7 +53,9 @@ do_install_append () {
INITSCRIPT_NAME = "thttpd"
INITSCRIPT_PARAMS = "defaults"
-SYSTEMD_SERVICE_${PN} = "thttpd.service"
+SYSTEMD_SERVICE:${PN} = "thttpd.service"
-FILES_${PN} += "${SRV_DIR}"
-FILES_${PN}-dbg += "${SRV_DIR}/cgi-bin/.debug"
+FILES:${PN} += "${SRV_DIR}"
+FILES:${PN}-dbg += "${SRV_DIR}/cgi-bin/.debug"
+
+CVE_STATUS[CVE-2017-10671] = "fixed-version: No action required. The current version (2.27.1) is not affected by the CVE."