From 0b4a4cd05e34b74179bf1a67fc29c4088e426b08 Mon Sep 17 00:00:00 2001 From: Yi Zhao Date: Mon, 9 Jan 2023 23:25:38 +0800 Subject: freeradius: upgrade 3.0.21 -> 3.0.26 Release Notes: https://github.com/FreeRADIUS/freeradius-server/releases/tag/release_3_0_26 * Refresh patches * Add autogen.sh as we still need it in do_configure * Backport a patch to fix configure error for rlm_python3 Signed-off-by: Yi Zhao Signed-off-by: Khem Raj --- .../freeradius/files/0001-Add-autogen.sh.patch | 46 +++ ...-Makefile-fix-the-existed-certificate-err.patch | 55 --- ...-Makefile-fix-the-occasional-verification.patch | 135 ------- ...Use-includedir-instead-of-hardcoding-usr-.patch | 28 -- .../0001-version.c-don-t-print-build-flags.patch | 41 -- .../0001-workaround-error-with-autoconf-2.7.patch | 42 -- ...change-user-and-group-of-freeradius-serve.patch | 32 ++ ...0003-configure.ac-allow-cross-compilation.patch | 37 ++ .../files/0004-Fix-libtool-detection.patch | 71 ++++ .../0005-configure.ac-add-option-for-libcap.patch | 70 ++++ .../files/0006-Avoid-searching-host-dirs.patch | 198 ++++++++++ ...7-rlm_python-add-PY_INC_DIR-in-search-dir.patch | 33 ++ .../files/0008-libtool-do-not-use-jlibtool.patch | 160 ++++++++ .../files/0009-Fix-quoting-for-BUILD_WITH.patch | 58 +++ ...-error-for-expansion-of-macro-in-thread.h.patch | 61 +++ ...Use-includedir-instead-of-hardcoding-usr-.patch | 31 ++ ...-Makefile-fix-the-existed-certificate-err.patch | 55 +++ ...-Makefile-fix-the-occasional-verification.patch | 136 +++++++ .../0014-Workaround-error-with-autoconf-2.7.patch | 42 ++ ...bootstrap-check-commands-of-openssl-exist.patch | 44 +++ .../0016-version.c-don-t-print-build-flags.patch | 41 ++ ...7-add-python.m4-for-detecting-python-3.10.patch | 427 +++++++++++++++++++++ .../check-openssl-cmds-in-script-bootstrap.patch | 38 -- .../freeradius-avoid-searching-host-dirs.patch | 197 ---------- ...radius-configure.ac-add-option-for-libcap.patch | 70 ---- ...dius-configure.ac-allow-cross-compilation.patch | 37 -- .../files/freeradius-enble-user-in-conf.patch | 28 -- ...eeradius-fix-error-for-expansion-of-macro.patch | 61 --- .../freeradius-fix-quoting-for-BUILT_WITH.patch | 55 --- .../files/freeradius-libtool-detection.patch | 90 ----- .../freeradius-libtool-do-not-use-jlibtool.patch | 160 -------- .../freeradius-rlm_python-add-PY_INC_DIR.patch | 33 -- .../freeradius/freeradius_3.0.21.bb | 284 -------------- .../freeradius/freeradius_3.0.26.bb | 290 ++++++++++++++ 34 files changed, 1832 insertions(+), 1354 deletions(-) create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0001-Add-autogen.sh.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/0001-raddb-certs-Makefile-fix-the-existed-certificate-err.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/0001-raddb-certs-Makefile-fix-the-occasional-verification.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/0001-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/0001-version.c-don-t-print-build-flags.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/0001-workaround-error-with-autoconf-2.7.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0002-Enable-and-change-user-and-group-of-freeradius-serve.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0003-configure.ac-allow-cross-compilation.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0004-Fix-libtool-detection.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0005-configure.ac-add-option-for-libcap.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0006-Avoid-searching-host-dirs.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0008-libtool-do-not-use-jlibtool.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0009-Fix-quoting-for-BUILD_WITH.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0010-fix-error-for-expansion-of-macro-in-thread.h.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0012-raddb-certs-Makefile-fix-the-existed-certificate-err.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0013-raddb-certs-Makefile-fix-the-occasional-verification.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0014-Workaround-error-with-autoconf-2.7.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0015-bootstrap-check-commands-of-openssl-exist.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0016-version.c-don-t-print-build-flags.patch create mode 100644 meta-networking/recipes-connectivity/freeradius/files/0017-add-python.m4-for-detecting-python-3.10.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/check-openssl-cmds-in-script-bootstrap.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-avoid-searching-host-dirs.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-configure.ac-add-option-for-libcap.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-configure.ac-allow-cross-compilation.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-enble-user-in-conf.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-fix-error-for-expansion-of-macro.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-fix-quoting-for-BUILT_WITH.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-libtool-detection.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-libtool-do-not-use-jlibtool.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/files/freeradius-rlm_python-add-PY_INC_DIR.patch delete mode 100644 meta-networking/recipes-connectivity/freeradius/freeradius_3.0.21.bb create mode 100644 meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb (limited to 'meta-networking') diff --git a/meta-networking/recipes-connectivity/freeradius/files/0001-Add-autogen.sh.patch b/meta-networking/recipes-connectivity/freeradius/files/0001-Add-autogen.sh.patch new file mode 100644 index 0000000000..e1228c2ebe --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0001-Add-autogen.sh.patch @@ -0,0 +1,46 @@ +From 3be3b9a1345942d1578ec73efa9b2e3c41bd67c5 Mon Sep 17 00:00:00 2001 +From: Yi Zhao +Date: Fri, 21 Jan 2022 13:22:24 +0800 +Subject: [PATCH] Add autogen.sh + +The autogen.sh has been removed since 3.0.22[1]. But we still need it in +do_configure. Add it back. + +[1] https://github.com/FreeRADIUS/freeradius-server/commit/2e9b6227efd19e2b0926541aa26874908e7b7314 + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Yi Zhao +--- + autogen.sh | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + create mode 100755 autogen.sh + +diff --git a/autogen.sh b/autogen.sh +new file mode 100755 +index 0000000000..959182b39e +--- /dev/null ++++ b/autogen.sh +@@ -0,0 +1,19 @@ ++#!/bin/sh -e ++ ++parentdir=`dirname $0` ++ ++cd $parentdir ++parentdir=`pwd` ++m4include="-I$parentdir -I$parentdir/m4 -Im4" ++ ++autoreconf -Wcross --verbose --install --force ++ ++mysubdirs="$mysubdirs `find src/modules/ -name configure -print | sed 's%/configure%%'`" ++mysubdirs=`echo $mysubdirs` ++ ++for F in $mysubdirs ++do ++ echo "Configuring in $F..." ++ (cd $F && grep "^AC_CONFIG_HEADER" configure.ac > /dev/null || exit 0; autoheader $m4include) ++ (cd $F && autoconf $m4include) ++done +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0001-raddb-certs-Makefile-fix-the-existed-certificate-err.patch b/meta-networking/recipes-connectivity/freeradius/files/0001-raddb-certs-Makefile-fix-the-existed-certificate-err.patch deleted file mode 100644 index 669f363e72..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/0001-raddb-certs-Makefile-fix-the-existed-certificate-err.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 084f5467672f2ae37003b77e8f8706772f3da3ec Mon Sep 17 00:00:00 2001 -From: Mingli Yu -Date: Mon, 13 Jul 2020 07:01:45 +0000 -Subject: [PATCH] raddb/certs/Makefile: fix the existed certificate error - -Fixes: - # ./bootstrap - [snip] -openssl ca -batch -keyfile ca.key -cert ca.pem -in client.csr -key 'whatever' -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf -Using configuration from ./client.cnf -Check that the request matches the signature -Signature ok -ERROR:There is already a certificate for /C=FR/ST=Radius/O=Example Inc./CN=user@example.org/emailAddress=user@example.org -The matching entry has the following details -Type :Valid -Expires on :200908024833Z -Serial Number :02 -File name :unknown -Subject Name :/C=FR/ST=Radius/O=Example Inc./CN=user@example.org/emailAddress=user@example.org -make: *** [Makefile:128: client.crt] Error 1 - -Add the check to fix the above error and it does the same for server.crt. - -Upstream-Status: Pending - -Signed-off-by: Mingli Yu ---- - raddb/certs/Makefile | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/raddb/certs/Makefile b/raddb/certs/Makefile -index 5cbfd467ce..77eec9baa1 100644 ---- a/raddb/certs/Makefile -+++ b/raddb/certs/Makefile -@@ -92,7 +92,7 @@ server.csr server.key: server.cnf - chmod g+r server.key - - server.crt: server.csr ca.key ca.pem -- $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in server.csr -key $(PASSWORD_CA) -out server.crt -extensions xpserver_ext -extfile xpextensions -config ./server.cnf -+ @[ -f server.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in server.csr -key $(PASSWORD_CA) -out server.crt -extensions xpserver_ext -extfile xpextensions -config ./server.cnf - - server.p12: server.crt - $(OPENSSL) pkcs12 -export -in server.crt -inkey server.key -out server.p12 -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) -@@ -117,7 +117,7 @@ client.csr client.key: client.cnf - chmod g+r client.key - - client.crt: client.csr ca.pem ca.key -- $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in client.csr -key $(PASSWORD_CA) -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf -+ @[ -f client.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in client.csr -key $(PASSWORD_CA) -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf - - client.p12: client.crt - $(OPENSSL) pkcs12 -export -in client.crt -inkey client.key -out client.p12 -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) --- -2.26.2 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/0001-raddb-certs-Makefile-fix-the-occasional-verification.patch b/meta-networking/recipes-connectivity/freeradius/files/0001-raddb-certs-Makefile-fix-the-occasional-verification.patch deleted file mode 100644 index dce0427e1a..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/0001-raddb-certs-Makefile-fix-the-occasional-verification.patch +++ /dev/null @@ -1,135 +0,0 @@ -From 3eda5d35fbaf66ed6bdc86ada4320a0a18681b7e Mon Sep 17 00:00:00 2001 -From: Mingli Yu -Date: Wed, 5 Aug 2020 07:23:11 +0000 -Subject: [PATCH] raddb/certs/Makefile: fix the occasional verification failure - -Fixes: - # cd /etc/raddb/certs - # ./bootstrap -[snip] -chmod g+r ca.key -openssl pkcs12 -in server.p12 -out server.pem -passin pass:'whatever' -passout pass:'whatever' -chmod g+r server.pem -C = FR, ST = Radius, O = Example Inc., CN = Example Server Certificate, emailAddress = admin@example.org -error 7 at 0 depth lookup: certificate signature failure -140066667427072:error:04067084:rsa routines:rsa_ossl_public_decrypt:data too large for modulus:../openssl-1.1.1g/crypto/rsa/rsa_ossl.c:553: -140066667427072:error:0D0C5006:asn1 encoding routines:ASN1_item_verify:EVP lib:../openssl-1.1.1g/crypto/asn1/a_verify.c:170: -error server.pem: verification failed -make: *** [Makefile:107: server.vrfy] Error 2 - -It seems the ca.pem mismatchs server.pem which results in failing to -execute "openssl verify -CAfile ca.pem server.pem", so add to check -the file to avoid inconsistency. - -Upstream-Status: Pending - -Signed-off-by: Mingli Yu ---- - raddb/certs/Makefile | 30 +++++++++++++++--------------- - 1 file changed, 15 insertions(+), 15 deletions(-) - -diff --git a/raddb/certs/Makefile b/raddb/certs/Makefile -index 77eec9baa1..3dcb63fe71 100644 ---- a/raddb/certs/Makefile -+++ b/raddb/certs/Makefile -@@ -59,7 +59,7 @@ passwords.mk: server.cnf ca.cnf client.cnf inner-server.cnf - # - ###################################################################### - dh: -- $(OPENSSL) dhparam -out dh -2 $(DH_KEY_SIZE) -+ @[ -f dh ] || $(OPENSSL) dhparam -out dh -2 $(DH_KEY_SIZE) - - ###################################################################### - # -@@ -69,17 +69,17 @@ dh: - ca.key ca.pem: ca.cnf - @[ -f index.txt ] || $(MAKE) index.txt - @[ -f serial ] || $(MAKE) serial -- $(OPENSSL) req -new -x509 -keyout ca.key -out ca.pem \ -+ @[ -f ca.pem ] || $(OPENSSL) req -new -x509 -keyout ca.key -out ca.pem \ - -days $(CA_DEFAULT_DAYS) -config ./ca.cnf \ - -passin pass:$(PASSWORD_CA) -passout pass:$(PASSWORD_CA) - chmod g+r ca.key - - ca.der: ca.pem -- $(OPENSSL) x509 -inform PEM -outform DER -in ca.pem -out ca.der -+ @[ -f ca.der ] || $(OPENSSL) x509 -inform PEM -outform DER -in ca.pem -out ca.der - - ca.crl: ca.pem -- $(OPENSSL) ca -gencrl -keyfile ca.key -cert ca.pem -config ./ca.cnf -out ca-crl.pem -key $(PASSWORD_CA) -- $(OPENSSL) crl -in ca-crl.pem -outform der -out ca.crl -+ @[ -f ca-crl.pem ] || $(OPENSSL) ca -gencrl -keyfile ca.key -cert ca.pem -config ./ca.cnf -out ca-crl.pem -key $(PASSWORD_CA) -+ @[ -f ca.crl ] || $(OPENSSL) crl -in ca-crl.pem -outform der -out ca.crl - rm ca-crl.pem - - ###################################################################### -@@ -88,18 +88,18 @@ ca.crl: ca.pem - # - ###################################################################### - server.csr server.key: server.cnf -- $(OPENSSL) req -new -out server.csr -keyout server.key -config ./server.cnf -+ @[ -f server.csr ] || $(OPENSSL) req -new -out server.csr -keyout server.key -config ./server.cnf - chmod g+r server.key - - server.crt: server.csr ca.key ca.pem - @[ -f server.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in server.csr -key $(PASSWORD_CA) -out server.crt -extensions xpserver_ext -extfile xpextensions -config ./server.cnf - - server.p12: server.crt -- $(OPENSSL) pkcs12 -export -in server.crt -inkey server.key -out server.p12 -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) -+ @[ -f server.p12 ] || $(OPENSSL) pkcs12 -export -in server.crt -inkey server.key -out server.p12 -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) - chmod g+r server.p12 - - server.pem: server.p12 -- $(OPENSSL) pkcs12 -in server.p12 -out server.pem -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) -+ @[ -f server.pem ] || $(OPENSSL) pkcs12 -in server.p12 -out server.pem -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) - chmod g+r server.pem - - .PHONY: server.vrfy -@@ -113,18 +113,18 @@ server.vrfy: ca.pem - # - ###################################################################### - client.csr client.key: client.cnf -- $(OPENSSL) req -new -out client.csr -keyout client.key -config ./client.cnf -+ @[ -f client.csr ] || $(OPENSSL) req -new -out client.csr -keyout client.key -config ./client.cnf - chmod g+r client.key - - client.crt: client.csr ca.pem ca.key - @[ -f client.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in client.csr -key $(PASSWORD_CA) -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf - - client.p12: client.crt -- $(OPENSSL) pkcs12 -export -in client.crt -inkey client.key -out client.p12 -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) -+ @[ -f client.p12 ] || $(OPENSSL) pkcs12 -export -in client.crt -inkey client.key -out client.p12 -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) - chmod g+r client.p12 - - client.pem: client.p12 -- $(OPENSSL) pkcs12 -in client.p12 -out client.pem -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) -+ @[ -f client.pem ] || $(OPENSSL) pkcs12 -in client.p12 -out client.pem -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) - chmod g+r client.pem - cp client.pem $(USER_NAME).pem - -@@ -139,18 +139,18 @@ client.vrfy: ca.pem client.pem - # - ###################################################################### - inner-server.csr inner-server.key: inner-server.cnf -- $(OPENSSL) req -new -out inner-server.csr -keyout inner-server.key -config ./inner-server.cnf -+ @[ -f inner-server.csr] || $(OPENSSL) req -new -out inner-server.csr -keyout inner-server.key -config ./inner-server.cnf - chmod g+r inner-server.key - - inner-server.crt: inner-server.csr ca.key ca.pem -- $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in inner-server.csr -key $(PASSWORD_CA) -out inner-server.crt -extensions xpserver_ext -extfile xpextensions -config ./inner-server.cnf -+ @[ -f inner-server.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in inner-server.csr -key $(PASSWORD_CA) -out inner-server.crt -extensions xpserver_ext -extfile xpextensions -config ./inner-server.cnf - - inner-server.p12: inner-server.crt -- $(OPENSSL) pkcs12 -export -in inner-server.crt -inkey inner-server.key -out inner-server.p12 -passin pass:$(PASSWORD_INNER) -passout pass:$(PASSWORD_INNER) -+ @[ -f inner-server.p12 ] || $(OPENSSL) pkcs12 -export -in inner-server.crt -inkey inner-server.key -out inner-server.p12 -passin pass:$(PASSWORD_INNER) -passout pass:$(PASSWORD_INNER) - chmod g+r inner-server.p12 - - inner-server.pem: inner-server.p12 -- $(OPENSSL) pkcs12 -in inner-server.p12 -out inner-server.pem -passin pass:$(PASSWORD_INNER) -passout pass:$(PASSWORD_INNER) -+ @[ -f inner-server.pem ] || $(OPENSSL) pkcs12 -in inner-server.p12 -out inner-server.pem -passin pass:$(PASSWORD_INNER) -passout pass:$(PASSWORD_INNER) - chmod g+r inner-server.pem - - .PHONY: inner-server.vrfy --- -2.26.2 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch b/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch deleted file mode 100644 index db8caab12e..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/0001-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 66e8bcdcca8971b5c43c31755d56d7f675d8b5ff Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 16 Jun 2017 20:10:49 -0700 -Subject: [PATCH] rlm_mschap: Use includedir instead of hardcoding /usr/include - -OE QA flags it correctly as a voilation of cross compilation -namespace - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - src/modules/rlm_mschap/configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: freeradius-server-3.0.14/src/modules/rlm_mschap/configure.ac -=================================================================== ---- freeradius-server-3.0.14.orig/src/modules/rlm_mschap/configure.ac -+++ freeradius-server-3.0.14/src/modules/rlm_mschap/configure.ac -@@ -72,7 +72,7 @@ if test x$with_[]modname != xno; then - mod_ldflags="-framework DirectoryService" - fi - -- smart_try_dir="$winbind_include_dir /usr/include/samba-4.0" -+ smart_try_dir="$winbind_include_dir =/usr/include/samba-4.0" - FR_SMART_CHECK_INCLUDE(wbclient.h, [#include - #include ]) - if test "x$ac_cv_header_wbclient_h" != "xyes"; then diff --git a/meta-networking/recipes-connectivity/freeradius/files/0001-version.c-don-t-print-build-flags.patch b/meta-networking/recipes-connectivity/freeradius/files/0001-version.c-don-t-print-build-flags.patch deleted file mode 100644 index 697205efe0..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/0001-version.c-don-t-print-build-flags.patch +++ /dev/null @@ -1,41 +0,0 @@ -From cbc64dcf6aa2a1be63f45ea6dd7d2c49b70a0bee Mon Sep 17 00:00:00 2001 -From: Mingli Yu -Date: Wed, 3 Aug 2022 16:44:29 +0800 -Subject: [PATCH] version.c: don't print build flags - -Don't print the build flags to avoid collecting the build environment info. - -Upstream-Status: Inappropriate [oe specific] - -Signed-off-by: Mingli Yu ---- - src/main/version.c | 13 ------------- - 1 file changed, 13 deletions(-) - -diff --git a/src/main/version.c b/src/main/version.c -index 62972d9f53..cf81de72c9 100644 ---- a/src/main/version.c -+++ b/src/main/version.c -@@ -589,19 +589,6 @@ void version_print(void) - DEBUG2(" unknown"); - #endif - -- DEBUG2("Compilation flags:"); --#ifdef BUILT_WITH_CPPFLAGS -- DEBUG2(" cppflags : " BUILT_WITH_CPPFLAGS); --#endif --#ifdef BUILT_WITH_CFLAGS -- DEBUG2(" cflags : " BUILT_WITH_CFLAGS); --#endif --#ifdef BUILT_WITH_LDFLAGS -- DEBUG2(" ldflags : " BUILT_WITH_LDFLAGS); --#endif --#ifdef BUILT_WITH_LIBS -- DEBUG2(" libs : " BUILT_WITH_LIBS); --#endif - DEBUG2(" "); - } - INFO("FreeRADIUS Version " RADIUSD_VERSION_STRING); --- -2.25.1 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/0001-workaround-error-with-autoconf-2.7.patch b/meta-networking/recipes-connectivity/freeradius/files/0001-workaround-error-with-autoconf-2.7.patch deleted file mode 100644 index 80c571df98..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/0001-workaround-error-with-autoconf-2.7.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 3b4ba29c7c5800df87eecd65214244619e01162b Mon Sep 17 00:00:00 2001 -From: Hongxu Jia -Date: Sun, 7 Feb 2021 16:02:36 +0800 -Subject: [PATCH] workaround error with autoconf 2.7 - -While using autoconf 2.7, the AM_MISSING_PROG caused unexpected error: -... -configure.ac: error: required file 'missing' not found -... - -Since these tools were explicitly added by autotools bbclass, -remove the testing to workaround the error with autoconf 2.7 - -Upstream-Status: Inappropriate [oe specific] - -Signed-off-by: Hongxu Jia ---- - configure.ac | 8 -------- - 1 file changed, 8 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 609efb104b..2d761cf62c 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -693,14 +693,6 @@ fi - - AC_PATH_PROG(RUSERS, rusers, /usr/bin/rusers) - --dnl # --dnl # FIXME This is truly gross. --dnl # --missing_dir=`cd $ac_aux_dir && pwd` --AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) --AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) --AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) -- - AC_PATH_PROG(LOCATE,locate) - AC_PATH_PROG(DIRNAME,dirname) - AC_PATH_PROG(GREP,grep) --- -2.27.0 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/0002-Enable-and-change-user-and-group-of-freeradius-serve.patch b/meta-networking/recipes-connectivity/freeradius/files/0002-Enable-and-change-user-and-group-of-freeradius-serve.patch new file mode 100644 index 0000000000..c57ee93c33 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0002-Enable-and-change-user-and-group-of-freeradius-serve.patch @@ -0,0 +1,32 @@ +From 2a74c10836c0d2d19248ca40d113936f4a56b039 Mon Sep 17 00:00:00 2001 +From: "Roy.Li" +Date: Sun, 8 Jan 2023 22:47:11 +0800 +Subject: [PATCH] Enable and change user and group of freeradius server to + radiusd + +Upstream-Status: Inappropriate [configuration] + +Signed-off-by: Roy.Li +Signed-off-by: Jackie Huang +--- + raddb/radiusd.conf.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/raddb/radiusd.conf.in b/raddb/radiusd.conf.in +index 154b50d610..4594d6d2d2 100644 +--- a/raddb/radiusd.conf.in ++++ b/raddb/radiusd.conf.in +@@ -557,8 +557,8 @@ security { + # member. This can allow for some finer-grained access + # controls. + # +-# user = radius +-# group = radius ++ user = radiusd ++ group = radiusd + + # Core dumps are a bad thing. This should only be set to + # 'yes' if you're debugging a problem with the server. +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0003-configure.ac-allow-cross-compilation.patch b/meta-networking/recipes-connectivity/freeradius/files/0003-configure.ac-allow-cross-compilation.patch new file mode 100644 index 0000000000..e5442360b3 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0003-configure.ac-allow-cross-compilation.patch @@ -0,0 +1,37 @@ +From ba1390a80662ff2ab7bfda978cde7df9a871f6ae Mon Sep 17 00:00:00 2001 +From: Changqing Li +Date: Tue, 24 Jul 2018 15:03:39 +0800 +Subject: [PATCH] configure.ac: allow cross-compilation + +The checking OpenSSL library and header version consistency will +always fail in cross compiling, skip the check and give a warning +instead for cross compiling. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Jackie Huang +Signed-off-by: Yi Zhao + +update to new version 3.0.17 to fix patch warning +Signed-off-by: Changqing Li +--- + src/modules/rlm_krb5/configure.ac | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/modules/rlm_krb5/configure.ac b/src/modules/rlm_krb5/configure.ac +index a0f510cfb3..d2f3eca03e 100644 +--- a/src/modules/rlm_krb5/configure.ac ++++ b/src/modules/rlm_krb5/configure.ac +@@ -140,7 +140,8 @@ if test x$with_[]modname != xno; then + FR_SMART_CHECK_LIB(krb5, krb5_is_thread_safe) + if test "x$ac_cv_lib_krb5_krb5_is_thread_safe" = xyes; then + AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include ]], [[return krb5_is_thread_safe() ? 0 : 1]])], +- [krb5threadsafe="-DKRB5_IS_THREAD_SAFE"], [AC_MSG_WARN([[libkrb5 is not threadsafe]])]) ++ [krb5threadsafe="-DKRB5_IS_THREAD_SAFE"], [AC_MSG_WARN([[libkrb5 is not threadsafe]])], ++ [AC_MSG_WARN(cross compiling: not checking)]) + fi + else + krb5threadsafe="" +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0004-Fix-libtool-detection.patch b/meta-networking/recipes-connectivity/freeradius/files/0004-Fix-libtool-detection.patch new file mode 100644 index 0000000000..479e1ba76f --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0004-Fix-libtool-detection.patch @@ -0,0 +1,71 @@ +From 5ba3d140842268cbbdd983266efecb1fba5bdd59 Mon Sep 17 00:00:00 2001 +From: Changqing Li +Date: Thu, 22 Aug 2019 10:45:46 +0800 +Subject: [PATCH] Fix libtool detection + +Use LT_INIT instead of the deprecated AC_PROG_LIBTOOL to detect libtool, so it +can work with our libtoolize and libtool. + +Simplify the detection of ltdl. It will find the ltdl from the sysroot; the +switch --with-system-libltdl is no longer needed. The code is copied from +pulseaudio configure.ac, together with the comment paragraph. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Jesse Zhang +Signed-off-by: Jackie Huang +Signed-off-by: Changqing Li +--- + configure.ac | 36 ++++++++++++++++++++++++++++++++++++ + 1 file changed, 36 insertions(+) + +diff --git a/configure.ac b/configure.ac +index ad8bc8cdda..ef8fced680 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -321,6 +321,42 @@ dnl # See if we have Git. + dnl # + AC_CHECK_PROG(GIT, git, yes, no) + ++#### libtool stuff #### ++ ++dnl set this shit so it doesn't force CFLAGS... ++LTCFLAGS=" " ++ ++LT_PREREQ(2.2) ++LT_INIT([dlopen disable-static]) ++ ++dnl Unfortunately, even up to libtool 2.2.6a there is no way to know ++dnl exactly which version of libltdl is present in the system, so we ++dnl just assume that it's a working version as long as we have the ++dnl library and the header files. ++dnl ++dnl As an extra safety device, check for lt_dladvise_init() which is ++dnl only implemented in libtool 2.x, and refine as we go if we have ++dnl refined requirements. ++dnl ++dnl Check the header files first since the system may have a ++dnl libltdl.so for runtime, but no headers, and we want to bail out as ++dnl soon as possible. ++dnl ++dnl We don't need any special variable for this though, since the user ++dnl can give the proper place to find libltdl through the standard ++dnl variables like LDFLAGS and CPPFLAGS. ++ ++AC_CHECK_HEADER([ltdl.h], ++ [AC_CHECK_LIB([ltdl], [lt_dladvise_init], [LIBLTDL=-lltdl], [LIBLTDL=])], ++ [LIBLTDL=]) ++ ++AS_IF([test "x$LIBLTDL" = "x"], ++ [AC_MSG_ERROR([Unable to find libltdl version 2. Makes sure you have libtool 2.2 or later installed.])]) ++AC_SUBST([LIBLTDL]) ++LTDL_SUBDIRS= ++INCLTDL=-DWITH_SYSTEM_LTDL ++AC_SUBST(LTDL_SUBDIRS) ++ + dnl Put this in later, when all distributed modules use autoconf. + dnl AC_ARG_WITH(disablemodulefoo, + dnl [ --without-rlm_foo Disables module compilation. Module list:] +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0005-configure.ac-add-option-for-libcap.patch b/meta-networking/recipes-connectivity/freeradius/files/0005-configure.ac-add-option-for-libcap.patch new file mode 100644 index 0000000000..8ef3c4bdf9 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0005-configure.ac-add-option-for-libcap.patch @@ -0,0 +1,70 @@ +From 9548dc5e1a6c835cd4f387ba384d8f3f14c3fc8b Mon Sep 17 00:00:00 2001 +From: Changqing Li +Date: Thu, 22 Aug 2019 10:50:21 +0800 +Subject: [PATCH] configure.ac: add option for libcap + +Upstream-Status: Pending + +Signed-off-by: Jackie Huang +Signed-off-by: Changqing Li +--- + configure.ac | 36 +++++++++++++++++++++++++++--------- + 1 file changed, 27 insertions(+), 9 deletions(-) + +diff --git a/configure.ac b/configure.ac +index ef8fced680..263098f7fd 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1161,6 +1161,22 @@ fi + dnl Set by FR_SMART_CHECKLIB + LIBS="${old_LIBS}" + ++dnl # ++dnl # extra argument: --with-libcap ++dnl # ++WITH_LIBCAP=yes ++AC_ARG_WITH(libcap, ++[ --with-licap use licap for debugger checks. (default=yes)], ++[ case "$withval" in ++ no) ++ WITH_LIBCAP=no ++ ;; ++ *) ++ WITH_LIBCAP=yes ++ ;; ++ esac ] ++) ++ + dnl Check for cap + dnl extra argument: --with-cap-lib-dir=DIR + cap_lib_dir= +@@ -1194,15 +1210,17 @@ AC_ARG_WITH(cap-include-dir, + ;; + esac]) + +-smart_try_dir="$cap_lib_dir" +-FR_SMART_CHECK_LIB(cap, cap_get_proc) +-if test "x$ac_cv_lib_cap_cap_get_proc" != "xyes"; then +- AC_MSG_WARN([cap library not found, debugger checks will not be enabled. Use --with-cap-lib-dir=.]) +-else +- AC_DEFINE(HAVE_LIBCAP, 1, +- [Define to 1 if you have the `cap' library (-lcap).] +- ) +- HAVE_LIBCAP=1 ++if test "x$WITH_LIBCAP" = xyes; then ++ smart_try_dir="$cap_lib_dir" ++ FR_SMART_CHECK_LIB(cap, cap_get_proc) ++ if test "x$ac_cv_lib_cap_cap_get_proc" != "xyes"; then ++ AC_MSG_WARN([cap library not found, debugger checks will not be enabled. Use --with-cap-lib-dir=.]) ++ else ++ AC_DEFINE(HAVE_LIBCAP, 1, ++ [Define to 1 if you have the `cap' library (-lcap).] ++ ) ++ HAVE_LIBCAP=1 ++ fi + fi + + dnl # +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0006-Avoid-searching-host-dirs.patch b/meta-networking/recipes-connectivity/freeradius/files/0006-Avoid-searching-host-dirs.patch new file mode 100644 index 0000000000..8fd0dca443 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0006-Avoid-searching-host-dirs.patch @@ -0,0 +1,198 @@ +From 8fe25b30b6fbb3170705f4468eb4c92eef3a968f Mon Sep 17 00:00:00 2001 +From: Jackie Huang +Date: Mon, 4 Jan 2016 01:44:04 -0500 +Subject: [PATCH] Avoid searching host dirs + +Don't search the hardcoded host dirs to avoid +host contamination. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Jackie Huang +Signed-off-by: Yi Zhao +--- + acinclude.m4 | 4 ++-- + src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac | 4 ++-- + src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac | 4 ++-- + src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac | 4 ++-- + src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac | 6 +++--- + src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac | 2 +- + src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac | 4 ++-- + src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac | 4 ++-- + 8 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/acinclude.m4 b/acinclude.m4 +index a953d0e1b6..ede143d3c2 100644 +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -115,7 +115,7 @@ dnl # + dnl # Try to guess possible locations. + dnl # + if test "x$smart_lib" = "x"; then +- for try in /usr/local/lib /opt/lib; do ++ for try in $smart_lib_dir; do + AC_MSG_CHECKING([for $2 in -l$1 in $try]) + LIBS="-l$1 $old_LIBS" + CPPFLAGS="-L$try -Wl,-rpath,$try $old_CPPFLAGS" +@@ -155,7 +155,7 @@ ac_safe=`echo "$1" | sed 'y%./+-%__pm%'` + old_CPPFLAGS="$CPPFLAGS" + smart_include= + dnl # The default directories we search in (in addition to the compilers search path) +-smart_include_dir="/usr/local/include /opt/include" ++smart_include_dir= + + dnl # Our local versions + _smart_try_dir= +diff --git a/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac +index 44f84aa27e..23a1899591 100644 +--- a/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac ++++ b/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac +@@ -61,14 +61,14 @@ if test x$with_[]modname != xno; then + esac]) + + dnl Check for SQLConnect in -ldb2 +- smart_try_dir="$ibmdb2_lib_dir /usr/local/db2/lib /usr/IBMdb2/V7.1/lib" ++ smart_try_dir="$ibmdb2_lib_dir" + FR_SMART_CHECK_LIB(db2, SQLConnect) + if test "x$ac_cv_lib_db2_SQLConnect" != xyes; then + fail="$fail libdb2" + fi + + dnl Check for sqlcli.h +- smart_try_dir="$ibmdb2_include_dir /usr/local/db2/include /usr/IBMdb2/V7.1/include" ++ smart_try_dir="$ibmdb2_include_dir" + FR_SMART_CHECK_INCLUDE(sqlcli.h) + if test "x$ac_cv_header_sqlcli_h" != xyes; then + fail="$fail sqlcli.h" +diff --git a/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac +index 4c2fd7ba9e..10c864def5 100644 +--- a/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac ++++ b/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac +@@ -60,14 +60,14 @@ if test x$with_[]modname != xno; then + esac]) + + dnl Check for isc_attach_database in -lfbclient +- smart_try_dir="$firebird_lib_dir /usr/lib/firebird2/lib /usr/local/firebird/lib" ++ smart_try_dir="$firebird_lib_dir" + FR_SMART_CHECK_LIB(fbclient, isc_attach_database) + if test "x$ac_cv_lib_fbclient_isc_attach_database" != xyes; then + fail="$fail libfbclient" + fi + + dnl Check for ibase.h +- smart_try_dir="$firebird_include_dir /usr/lib/firebird2/include /usr/local/firebird/include" ++ smart_try_dir="$firebird_include_dir" + FR_SMART_CHECK_INCLUDE(ibase.h) + if test "x$ac_cv_header_ibase_h" != xyes; then + fail="$fail ibase.h" +diff --git a/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac +index d26ac9c431..6e4500e948 100644 +--- a/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac ++++ b/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac +@@ -61,14 +61,14 @@ if test x$with_[]modname != xno; then + esac]) + + dnl Check for SQLConnect in -liodbc +- smart_try_dir="$iodbc_lib_dir /usr/lib /usr/lib/iodbc /usr/local/lib/iodbc /usr/local/iodbc/lib/iodbc" ++ smart_try_dir="$iodbc_lib_dir" + FR_SMART_CHECK_LIB(iodbc, SQLConnect) + if test "x$ac_cv_lib_iodbc_SQLConnect" != xyes; then + fail="$fail libiodbc" + fi + + dnl Check for isql.h +- smart_try_dir="$iodbc_include_dir /usr/include /usr/include/iodbc /usr/local/iodbc/include" ++ smart_try_dir="$iodbc_include_dir" + FR_SMART_CHECK_INCLUDE(isql.h) + if test "x$ac_cv_header_isql_h" != xyes; then + fail="$fail isql.h" +diff --git a/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac +index df36da77bf..31359041c7 100644 +--- a/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac ++++ b/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac +@@ -140,7 +140,7 @@ if test x$with_[]modname != xno; then + + dnl # Check for libmysqlclient_r + if test "x$have_a_libmysqlclient" != "xyes"; then +- smart_try_dir="$mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib/mysql /usr/local/mysql/lib/mysql" ++ smart_try_dir="$mysql_lib_dir" + FR_SMART_CHECK_LIB(mysqlclient_r, mysql_init) + if test "x$ac_cv_lib_mysqlclient_r_mysql_init" = "xyes"; then + have_a_libmysqlclient='yes' +@@ -149,7 +149,7 @@ if test x$with_[]modname != xno; then + + dnl # Check for libmysqlclient + if test "x$have_a_libmysqlclient" != "xyes"; then +- smart_try_dir="$mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib/mysql /usr/local/mysql/lib/mysql" ++ smart_try_dir="$mysql_lib_dir" + FR_SMART_CHECK_LIB(mysqlclient, mysql_init) + if test "x$ac_cv_lib_mysqlclient_mysql_init" = "xyes"; then + have_a_libmysqlclient='yes' +@@ -243,7 +243,7 @@ if test x$with_[]modname != xno; then + fi + + if test "x$have_mysql_h" != "xyes"; then +- smart_try_dir="$mysql_include_dir /usr/local/include /usr/local/mysql/include" ++ smart_try_dir="$mysql_include_dir" + FR_SMART_CHECK_INCLUDE(mysql/mysql.h) + if test "x$ac_cv_header_mysql_mysql_h" = "xyes"; then + AC_DEFINE(HAVE_MYSQL_MYSQL_H, [], [Define if you have ]) +diff --git a/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac +index 3b45da582a..03e6607d2b 100644 +--- a/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac ++++ b/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac +@@ -68,7 +68,7 @@ if test x$with_[]modname != xno; then + dnl # Check for header files + dnl ############################################################ + +- smart_try_dir="$oracle_include_dir /usr/local/instaclient/include" ++ smart_try_dir="$oracle_include_dir" + + if test "x$ORACLE_HOME" != "x"; then + smart_try_dir="${smart_try_dir} ${ORACLE_HOME}/include" +diff --git a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac +index 8ac1022e89..d46c0f66bf 100644 +--- a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac ++++ b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac +@@ -45,7 +45,7 @@ if test x$with_[]modname != xno; then + esac ] + ) + +- smart_try_dir="$rlm_sql_postgresql_include_dir /usr/include/postgresql /usr/local/pgsql/include /usr/include/pgsql" ++ smart_try_dir="$rlm_sql_postgresql_include_dir" + FR_SMART_CHECK_INCLUDE(libpq-fe.h) + if test "x$ac_cv_header_libpqmfe_h" != "xyes"; then + fail="$fail libpq-fe.h" +@@ -94,7 +94,7 @@ if test x$with_[]modname != xno; then + ]) + fi + +- smart_try_dir="$rlm_sql_postgresql_lib_dir /usr/lib /usr/local/pgsql/lib" ++ smart_try_dir="$rlm_sql_postgresql_lib_dir" + FR_SMART_CHECK_LIB(pq, PQconnectdb) + if test "x$ac_cv_lib_pq_PQconnectdb" != "xyes"; then + fail="$fail libpq" +diff --git a/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac +index f10279fe1f..0081a338c8 100644 +--- a/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac ++++ b/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac +@@ -61,14 +61,14 @@ if test x$with_[]modname != xno; then + esac]) + + dnl Check for SQLConnect in -lodbc +- smart_try_dir="$unixodbc_lib_dir /usr/local/unixodbc/lib" ++ smart_try_dir="$unixodbc_lib_dir" + FR_SMART_CHECK_LIB(odbc, SQLConnect) + if test "x$ac_cv_lib_odbc_SQLConnect" != xyes; then + fail="$fail libodbc" + fi + + dnl Check for sql.h +- smart_try_dir="$unixodbc_include_dir /usr/local/unixodbc/include" ++ smart_try_dir="$unixodbc_include_dir" + FR_SMART_CHECK_INCLUDE(sql.h) + if test "x$ac_cv_header_sql_h" != xyes; then + fail="$fail sql.h" +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch b/meta-networking/recipes-connectivity/freeradius/files/0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch new file mode 100644 index 0000000000..cb71fb1373 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch @@ -0,0 +1,33 @@ +From e4ff7a2a9834e2589bc7bdda4b74f5bc962b15e6 Mon Sep 17 00:00:00 2001 +From: Jackie Huang +Date: Wed, 27 Jan 2016 05:07:19 -0500 +Subject: [PATCH] rlm_python: add PY_INC_DIR in search dir + +configure option --with-rlm-python-include-dir is used to set +PY_INC_DIR which is never used and it fails to find Python.h, +so add it into search dir to fix it. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Jackie Huang +Signed-off-by: Yi Zhao +--- + src/modules/rlm_python/configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/modules/rlm_python/configure.ac b/src/modules/rlm_python/configure.ac +index 08ecb62518..d5c0944ff1 100644 +--- a/src/modules/rlm_python/configure.ac ++++ b/src/modules/rlm_python/configure.ac +@@ -98,7 +98,7 @@ if test x$with_[]modname != xno; then + + old_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS $PY_CFLAGS" +- smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION" ++ smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION $PY_INC_DIR" + FR_SMART_CHECK_INCLUDE(Python.h) + CFLAGS=$old_CFLAGS + +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0008-libtool-do-not-use-jlibtool.patch b/meta-networking/recipes-connectivity/freeradius/files/0008-libtool-do-not-use-jlibtool.patch new file mode 100644 index 0000000000..559b857b63 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0008-libtool-do-not-use-jlibtool.patch @@ -0,0 +1,160 @@ +From d0fa5b259c2dc942d0a43a9cf1bfc32f40c184f9 Mon Sep 17 00:00:00 2001 +From: Jackie Huang +Date: Thu, 7 Jan 2016 22:37:30 -0800 +Subject: [PATCH] libtool: do not use jlibtool + +jlibtool is hardcoded to be used but we need to use +our libtool, so fix the makfiles to make it compatible +with our libtool. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Jackie Huang +Signed-off-by: Yi Zhao +--- + Make.inc.in | 4 ++-- + scripts/boiler.mk | 2 ++ + scripts/install.mk | 14 +++++++------- + scripts/libtool.mk | 22 ++++++++++++++++------ + 4 files changed, 27 insertions(+), 15 deletions(-) + +diff --git a/Make.inc.in b/Make.inc.in +index 05f82776ff..e78f3fe9dc 100644 +--- a/Make.inc.in ++++ b/Make.inc.in +@@ -57,7 +57,7 @@ CPPFLAGS = @CPPFLAGS@ + LIBPREFIX = @LIBPREFIX@ + EXEEXT = @EXEEXT@ + +-LIBTOOL = JLIBTOOL ++LIBTOOL = @LIBTOOL@ + ACLOCAL = @ACLOCAL@ + AUTOCONF = @AUTOCONF@ + AUTOHEADER = @AUTOHEADER@ +@@ -168,7 +168,7 @@ ANALYZE.c := @clang_path@ + # + ifeq "$(USE_SHARED_LIBS)" "yes" + TESTBINDIR = ./$(BUILD_DIR)/bin/local +- TESTBIN = FR_LIBRARY_PATH=./build/lib/.libs $(JLIBTOOL) --quiet --mode=execute $(TESTBINDIR) ++ TESTBIN = FR_LIBRARY_PATH=./build/lib/.libs $(LIBTOOL) --quiet --mode=execute $(TESTBINDIR) + else + TESTBINDIR = ./$(BUILD_DIR)/bin + TESTBIN = ./$(BUILD_DIR)/bin +diff --git a/scripts/boiler.mk b/scripts/boiler.mk +index 2ce0c18f34..567cc0f22f 100644 +--- a/scripts/boiler.mk ++++ b/scripts/boiler.mk +@@ -272,6 +272,7 @@ define COMPILE_C_CMDS + $(Q)$(ECHO) CC $< + $(Q)$(strip ${COMPILE.c} -o $@ -c -MD ${CPPFLAGS} ${CFLAGS} ${SRC_CFLAGS} ${INCDIRS} \ + $(addprefix -I, ${SRC_INCDIRS}) ${SRC_DEFS} ${DEFS} $<) ++ ${Q}mv $(dir $@)/.libs/$(notdir $*.d) ${BUILD_DIR}/objs/$*.d + endef + else + # +@@ -287,6 +288,7 @@ define COMPILE_C_CMDS + $(Q)cppcheck --enable=style -q ${CHECKFLAGS} $(filter -isystem%,${SRC_CFLAGS}) \ + $(filter -I%,${SRC_CFLAGS}) $(filter -D%,${SRC_CFLAGS}) ${INCDIRS} \ + $(addprefix -I,${SRC_INCDIRS}) ${SRC_DEFS} ${DEFS} --suppress=variableScope --suppress=invalidscanf $< ++ ${Q}mv $(dir $@)/.libs/$(notdir $*.d) ${BUILD_DIR}/objs/$*.d + endef + endif + +diff --git a/scripts/install.mk b/scripts/install.mk +index 916411563b..e38c1ed697 100644 +--- a/scripts/install.mk ++++ b/scripts/install.mk +@@ -46,7 +46,7 @@ define ADD_INSTALL_RULE.exe + install: $${${1}_INSTALLDIR}/$(notdir ${1}) + + # Install executable ${1} +- $${${1}_INSTALLDIR}/$(notdir ${1}): ${JLIBTOOL} $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR} ++ $${${1}_INSTALLDIR}/$(notdir ${1}): ${LIBTOOL} $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR} + @$(ECHO) INSTALL ${1} + $(Q)$${PROGRAM_INSTALL} -c -m 755 $${BUILD_DIR}/bin/${1} $${${1}_INSTALLDIR}/ + $(Q)$${${1}_POSTINSTALL} +@@ -65,7 +65,7 @@ define ADD_INSTALL_RULE.a + install: $${${1}_INSTALLDIR}/$(notdir ${1}) + + # Install static library ${1} +- $${${1}_INSTALLDIR}/$(notdir ${1}): ${JLIBTOOL} ${1} | $${${1}_INSTALLDIR} ++ $${${1}_INSTALLDIR}/$(notdir ${1}): ${LIBTOOL} ${1} | $${${1}_INSTALLDIR} + @$(ECHO) INSTALL ${1} + $(Q)$${PROGRAM_INSTALL} -c -m 755 $${BUILD_DIR}/lib/${1} $${${1}_INSTALLDIR}/ + $(Q)$${${1}_POSTINSTALL} +@@ -87,9 +87,9 @@ define ADD_INSTALL_RULE.la + install: $${${1}_INSTALLDIR}/$(notdir ${1}) + + # Install libtool library ${1} +- $${${1}_INSTALLDIR}/$(notdir ${1}): ${JLIBTOOL} $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR} ++ $${${1}_INSTALLDIR}/$(notdir ${1}): ${LIBTOOL} $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR} + @$(ECHO) INSTALL ${1} +- $(Q)$${PROGRAM_INSTALL} -c -m 755 $${LOCAL_FLAGS_MIN} $${BUILD_DIR}/lib/${1} $${${1}_INSTALLDIR}/ ++ $(Q)$${PROGRAM_INSTALL} -c -m 755 $${BUILD_DIR}/lib/${1} $${${1}_INSTALLDIR}/ + $(Q)$${${1}_POSTINSTALL} + + endef +@@ -107,7 +107,7 @@ define ADD_INSTALL_RULE.man + install: ${2}/$(notdir ${1}) + + # Install manual page ${1} +- ${2}/$(notdir ${1}): ${JLIBTOOL} ${1} | ${2} ++ ${2}/$(notdir ${1}): ${LIBTOOL} ${1} | ${2} + @$(ECHO) INSTALL $(notdir ${1}) + $(Q)$${PROGRAM_INSTALL} -c -m 644 ${1} ${2}/ + +@@ -122,9 +122,9 @@ endef + define ADD_INSTALL_RULE.dir + # Install directory + .PHONY: ${1} +- ${1}: ${JLIBTOOL} ++ ${1}: ${LIBTOOL} + @$(ECHO) INSTALL -d -m 755 ${1} +- $(Q)$${PROGRAM_INSTALL} -d -m 755 ${1} ++ $(Q)$${INSTALL} -d -m 755 ${1} + endef + + +diff --git a/scripts/libtool.mk b/scripts/libtool.mk +index 381127ec2d..e83d7e6ad7 100644 +--- a/scripts/libtool.mk ++++ b/scripts/libtool.mk +@@ -60,7 +60,9 @@ ifeq "${LIBTOOL}" "JLIBTOOL" + # Tell GNU Make to use this value, rather than anything specified + # on the command line. + override LIBTOOL := ${JLIBTOOL} +-endif # else we're not using jlibtool ++else # else we're not using jlibtool ++ all install: ${LIBTOOL} ++endif + + # When using libtool, it produces a '.libs' directory. Ensure that it + # is removed on "make clean", too. +@@ -74,11 +76,19 @@ clean: .libs_clean + # Re-define compilers and linkers + # + OBJ_EXT = lo +-COMPILE.c = ${LIBTOOL} --silent --mode=compile ${CC} +-COMPILE.cxx = ${LIBTOOL} --mode=compile ${CXX} +-LINK.c = ${LIBTOOL} --silent --mode=link ${CC} +-LINK.cxx = ${LIBTOOL} --mode=link ${CXX} +-PROGRAM_INSTALL = ${LIBTOOL} --silent --mode=install ${INSTALL} ++ifeq "${LIBTOOL}" "JLIBTOOL" ++ COMPILE.c = ${LIBTOOL} --silent --mode=compile ${CC} ++ COMPILE.cxx = ${LIBTOOL} --mode=compile ${CXX} ++ LINK.c = ${LIBTOOL} --silent --mode=link ${CC} ++ LINK.cxx = ${LIBTOOL} --mode=link ${CXX} ++ PROGRAM_INSTALL = ${LIBTOOL} --silent --mode=install ${INSTALL} ++else ++ COMPILE.c = ${LIBTOOL} --mode=compile --tag=CC ${CC} ++ COMPILE.cxx = ${LIBTOOL} --mode=compile --tag=CC ${CXX} ++ LINK.c = ${LIBTOOL} --mode=link --tag=CC ${CC} -module -export-dynamic ++ LINK.cxx = ${LIBTOOL} --mode=link --tag=CC ${CXX} -module -export-dynamic ++ PROGRAM_INSTALL = ${LIBTOOL} --mode=install ${INSTALL} ++endif + + + # LIBTOOL_ENDINGS - Given a library ending in ".a" or ".so", replace that +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0009-Fix-quoting-for-BUILD_WITH.patch b/meta-networking/recipes-connectivity/freeradius/files/0009-Fix-quoting-for-BUILD_WITH.patch new file mode 100644 index 0000000000..9386675e46 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0009-Fix-quoting-for-BUILD_WITH.patch @@ -0,0 +1,58 @@ +From 3e701d6274924adaed568e22af2362aa5af1f055 Mon Sep 17 00:00:00 2001 +From: Peter Seebach +Date: Sun, 8 Jan 2023 23:01:28 +0800 +Subject: [PATCH] Fix quoting for BUILD_WITH + +The escaped quotes are to make the -D values produce strings which +can be used to display these values. However, if the values are more +than one word, with spaces, they also need shell quoting to make them +into single words. + +Upstream-Status: Pending + +Signed-off-by: Peter Seebach +Signed-off-by: Yi Zhao +--- + src/main/libfreeradius-server.mk | 2 +- + src/main/unittest.mk | 2 +- + src/modules/rlm_eap/radeapclient.mk | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/main/libfreeradius-server.mk b/src/main/libfreeradius-server.mk +index 4495f72481..07c28f1968 100644 +--- a/src/main/libfreeradius-server.mk ++++ b/src/main/libfreeradius-server.mk +@@ -18,5 +18,5 @@ SOURCES := conffile.c \ + TGT_LDLIBS := $(OPENSSL_LIBS) + + ifneq ($(MAKECMDGOALS),scan) +-SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS=\"$(CPPFLAGS)\" -DBUILT_WITH_CFLAGS=\"$(CFLAGS)\" -DBUILT_WITH_LDFLAGS=\"$(LDFLAGS)\" -DBUILT_WITH_LIBS=\"$(LIBS)\" ++SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS="\"$(CPPFLAGS)\"" -DBUILT_WITH_CFLAGS="\"$(CFLAGS)\"" -DBUILT_WITH_LDFLAGS="\"$(LDFLAGS)\"" -DBUILT_WITH_LIBS="\"$(LIBS)\"" + endif +diff --git a/src/main/unittest.mk b/src/main/unittest.mk +index edd4f133a7..b5b44d5e11 100644 +--- a/src/main/unittest.mk ++++ b/src/main/unittest.mk +@@ -21,5 +21,5 @@ TGT_PREREQS += libfreeradius-eap.a + endif + + ifneq ($(MAKECMDGOALS),scan) +-SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS=\"$(CPPFLAGS)\" -DBUILT_WITH_CFLAGS=\"$(CFLAGS)\" -DBUILT_WITH_LDFLAGS=\"$(LDFLAGS)\" -DBUILT_WITH_LIBS=\"$(LIBS)\" ++SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS="\"$(CPPFLAGS)\"" -DBUILT_WITH_CFLAGS="\"$(CFLAGS)\"" -DBUILT_WITH_LDFLAGS="\"$(LDFLAGS)\"" -DBUILT_WITH_LIBS="\"$(LIBS)\"" + endif +diff --git a/src/modules/rlm_eap/radeapclient.mk b/src/modules/rlm_eap/radeapclient.mk +index 6068f54813..7d3c55625b 100644 +--- a/src/modules/rlm_eap/radeapclient.mk ++++ b/src/modules/rlm_eap/radeapclient.mk +@@ -23,7 +23,7 @@ SRC_CFLAGS += -DWITH_EAPCLIENT + SRC_INCDIRS := ${top_srcdir}/src/modules/rlm_eap/libeap + + ifneq ($(MAKECMDGOALS),scan) +-SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS=\"$(CPPFLAGS)\" -DBUILT_WITH_CFLAGS=\"$(CFLAGS)\" -DBUILT_WITH_LDFLAGS=\"$(LDFLAGS)\" -DBUILT_WITH_LIBS=\"$(LIBS)\" ++SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS="\"$(CPPFLAGS)\"" -DBUILT_WITH_CFLAGS="\"$(CFLAGS)\"" -DBUILT_WITH_LDFLAGS="\"$(LDFLAGS)\"" -DBUILT_WITH_LIBS="\"$(LIBS)\"" + endif + + endif +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0010-fix-error-for-expansion-of-macro-in-thread.h.patch b/meta-networking/recipes-connectivity/freeradius/files/0010-fix-error-for-expansion-of-macro-in-thread.h.patch new file mode 100644 index 0000000000..051b66af8f --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0010-fix-error-for-expansion-of-macro-in-thread.h.patch @@ -0,0 +1,61 @@ +From 30ce5ccd62446349d432ff65d3fe8d46872423c8 Mon Sep 17 00:00:00 2001 +From: Yi Zhao +Date: Wed, 18 Jan 2017 14:59:39 +0800 +Subject: [PATCH] fix error for expansion of macro in thread.h + +The parameter declaration is missing in expansion of macro +which cause the build error: +| In file included from src/freeradius-devel/libradius.h:80:0, +| from src/lib/log.c:26: +| src/lib/log.c: In function '__fr_thread_local_destroy_fr_strerror_buffer': +| src/lib/log.c:37:31: error: 'fr_strerror_buffer' undeclared (first use in this function) +| fr_thread_local_setup(char *, fr_strerror_buffer) /* macro */ +| ^ + +Add the missing declaration in macro. + +Upstream-Status: Pending + +Signed-off-by: Yi Zhao +--- + src/include/threads.h | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/include/threads.h b/src/include/threads.h +index e36d81dac0..2bcb6aadcb 100644 +--- a/src/include/threads.h ++++ b/src/include/threads.h +@@ -89,7 +89,7 @@ static _t __fr_thread_local_init_##_n(pthread_destructor_t func)\ + # define fr_thread_local_get(_n) _n + #elif defined(HAVE_PTHREAD_H) + # include +-# define fr_thread_local_setup(_t, _n) \ ++# define fr_thread_local_setup(_t, _n) static __thread _t _n;\ + static pthread_key_t __fr_thread_local_key_##_n;\ + static pthread_once_t __fr_thread_local_once_##_n = PTHREAD_ONCE_INIT;\ + static pthread_destructor_t __fr_thread_local_destructor_##_n = NULL;\ +@@ -100,17 +100,17 @@ static void __fr_thread_local_destroy_##_n(UNUSED void *unused)\ + static void __fr_thread_local_key_init_##_n(void)\ + {\ + (void) pthread_key_create(&__fr_thread_local_key_##_n, __fr_thread_local_destroy_##_n);\ +- (void) pthread_setspecific(__fr_thread_local_key_##_n, &(_n));\ + }\ + static _t __fr_thread_local_init_##_n(pthread_destructor_t func)\ + {\ + __fr_thread_local_destructor_##_n = func;\ + if (_n) return _n; \ + (void) pthread_once(&__fr_thread_local_once_##_n, __fr_thread_local_key_init_##_n);\ ++ (void) pthread_setspecific(__fr_thread_local_key_##_n, &(_n));\ + return _n;\ + } +-# define fr_thread_local_init(_n, _f) __fr_thread_local_init_##_n(_f) +-# define fr_thread_local_set(_n, _v) __fr_thread_local_set_##_n(_v) +-# define fr_thread_local_get(_n) __fr_thread_local_get_##_n() ++# define fr_thread_local_init(_n, _f) __fr_thread_local_init_##_n(_f) ++# define fr_thread_local_set(_n, _v) ((int)!((_n = _v) || 1)) ++# define fr_thread_local_get(_n) _n + #endif + #endif +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch b/meta-networking/recipes-connectivity/freeradius/files/0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch new file mode 100644 index 0000000000..69125eb3cb --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch @@ -0,0 +1,31 @@ +From f0e764826e3a85488047f7f4e94ebf91460d2c12 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 16 Jun 2017 20:10:49 -0700 +Subject: [PATCH] rlm_mschap: Use includedir instead of hardcoding /usr/include + +OE QA flags it correctly as a voilation of cross compilation +namespace + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + src/modules/rlm_mschap/configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/modules/rlm_mschap/configure.ac b/src/modules/rlm_mschap/configure.ac +index 0fd105d7e6..6ab15509e5 100644 +--- a/src/modules/rlm_mschap/configure.ac ++++ b/src/modules/rlm_mschap/configure.ac +@@ -75,7 +75,7 @@ if test x$with_[]modname != xno; then + mod_ldflags="-F /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks -framework DirectoryService" + fi + +- smart_try_dir="$winbind_include_dir /usr/include/samba-4.0" ++ smart_try_dir="$winbind_include_dir =/usr/include/samba-4.0" + FR_SMART_CHECK_INCLUDE(wbclient.h, [#include + #include ]) + if test "x$ac_cv_header_wbclient_h" != "xyes"; then +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0012-raddb-certs-Makefile-fix-the-existed-certificate-err.patch b/meta-networking/recipes-connectivity/freeradius/files/0012-raddb-certs-Makefile-fix-the-existed-certificate-err.patch new file mode 100644 index 0000000000..cbac989284 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0012-raddb-certs-Makefile-fix-the-existed-certificate-err.patch @@ -0,0 +1,55 @@ +From 0f9f18fc330fe88080be13e43f300fbf7ba4a85a Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Mon, 13 Jul 2020 07:01:45 +0000 +Subject: [PATCH] raddb/certs/Makefile: fix the existed certificate error + +Fixes: + # ./bootstrap + [snip] +openssl ca -batch -keyfile ca.key -cert ca.pem -in client.csr -key 'whatever' -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf +Using configuration from ./client.cnf +Check that the request matches the signature +Signature ok +ERROR:There is already a certificate for /C=FR/ST=Radius/O=Example Inc./CN=user@example.org/emailAddress=user@example.org +The matching entry has the following details +Type :Valid +Expires on :200908024833Z +Serial Number :02 +File name :unknown +Subject Name :/C=FR/ST=Radius/O=Example Inc./CN=user@example.org/emailAddress=user@example.org +make: *** [Makefile:128: client.crt] Error 1 + +Add the check to fix the above error and it does the same for server.crt. + +Upstream-Status: Pending + +Signed-off-by: Mingli Yu +--- + raddb/certs/Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/raddb/certs/Makefile b/raddb/certs/Makefile +index c9fbc9e864..d064fe252d 100644 +--- a/raddb/certs/Makefile ++++ b/raddb/certs/Makefile +@@ -92,7 +92,7 @@ server.csr server.key: server.cnf + chmod g+r server.key + + server.crt: ca.key ca.pem server.csr +- $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in server.csr -key $(PASSWORD_CA) -out server.crt -extensions xpserver_ext -extfile xpextensions -config ./server.cnf ++ @[ -f server.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in server.csr -key $(PASSWORD_CA) -out server.crt -extensions xpserver_ext -extfile xpextensions -config ./server.cnf + + server.p12: server.crt + $(OPENSSL) pkcs12 -export -in server.crt -inkey server.key -out server.p12 -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) +@@ -117,7 +117,7 @@ client.csr client.key: client.cnf + chmod g+r client.key + + client.crt: ca.key ca.pem client.csr +- $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in client.csr -key $(PASSWORD_CA) -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf ++ @[ -f client.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in client.csr -key $(PASSWORD_CA) -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf + + client.p12: client.crt + $(OPENSSL) pkcs12 -export -in client.crt -inkey client.key -out client.p12 -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0013-raddb-certs-Makefile-fix-the-occasional-verification.patch b/meta-networking/recipes-connectivity/freeradius/files/0013-raddb-certs-Makefile-fix-the-occasional-verification.patch new file mode 100644 index 0000000000..287e47adcc --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0013-raddb-certs-Makefile-fix-the-occasional-verification.patch @@ -0,0 +1,136 @@ +From bb1cb2ffc7a31c0a2bb2de51ef82d304b0a107c3 Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Wed, 5 Aug 2020 07:23:11 +0000 +Subject: [PATCH] raddb/certs/Makefile: fix the occasional verification failure + +Fixes: + # cd /etc/raddb/certs + # ./bootstrap +[snip] +chmod g+r ca.key +openssl pkcs12 -in server.p12 -out server.pem -passin pass:'whatever' -passout pass:'whatever' +chmod g+r server.pem +C = FR, ST = Radius, O = Example Inc., CN = Example Server Certificate, emailAddress = admin@example.org +error 7 at 0 depth lookup: certificate signature failure +140066667427072:error:04067084:rsa routines:rsa_ossl_public_decrypt:data too large for modulus:../openssl-1.1.1g/crypto/rsa/rsa_ossl.c:553: +140066667427072:error:0D0C5006:asn1 encoding routines:ASN1_item_verify:EVP lib:../openssl-1.1.1g/crypto/asn1/a_verify.c:170: +error server.pem: verification failed +make: *** [Makefile:107: server.vrfy] Error 2 + +It seems the ca.pem mismatchs server.pem which results in failing to +execute "openssl verify -CAfile ca.pem server.pem", so add to check +the file to avoid inconsistency. + +Upstream-Status: Pending + +Signed-off-by: Mingli Yu +--- + raddb/certs/Makefile | 30 +++++++++++++++--------------- + 1 file changed, 15 insertions(+), 15 deletions(-) + +diff --git a/raddb/certs/Makefile b/raddb/certs/Makefile +index d064fe252d..86f4547804 100644 +--- a/raddb/certs/Makefile ++++ b/raddb/certs/Makefile +@@ -59,7 +59,7 @@ passwords.mk: server.cnf ca.cnf client.cnf inner-server.cnf + # + ###################################################################### + dh: +- $(OPENSSL) dhparam -out dh -2 $(DH_KEY_SIZE) ++ @[ -f dh ] || $(OPENSSL) dhparam -out dh -2 $(DH_KEY_SIZE) + + ###################################################################### + # +@@ -69,17 +69,17 @@ dh: + ca.key ca.pem: ca.cnf + @[ -f index.txt ] || $(MAKE) index.txt + @[ -f serial ] || $(MAKE) serial +- $(OPENSSL) req -new -x509 -keyout ca.key -out ca.pem \ ++ @[ -f ca.pem ] || $(OPENSSL) req -new -x509 -keyout ca.key -out ca.pem \ + -days $(CA_DEFAULT_DAYS) -config ./ca.cnf \ + -passin pass:$(PASSWORD_CA) -passout pass:$(PASSWORD_CA) + chmod g+r ca.key + + ca.der: ca.pem +- $(OPENSSL) x509 -inform PEM -outform DER -in ca.pem -out ca.der ++ @[ -f ca.der ] || $(OPENSSL) x509 -inform PEM -outform DER -in ca.pem -out ca.der + + ca.crl: ca.pem +- $(OPENSSL) ca -gencrl -keyfile ca.key -cert ca.pem -config ./ca.cnf -out ca-crl.pem -key $(PASSWORD_CA) +- $(OPENSSL) crl -in ca-crl.pem -outform der -out ca.crl ++ @[ -f ca-crl.pem ] || $(OPENSSL) ca -gencrl -keyfile ca.key -cert ca.pem -config ./ca.cnf -out ca-crl.pem -key $(PASSWORD_CA) ++ @[ -f ca.crl ] || $(OPENSSL) crl -in ca-crl.pem -outform der -out ca.crl + rm ca-crl.pem + + ###################################################################### +@@ -88,18 +88,18 @@ ca.crl: ca.pem + # + ###################################################################### + server.csr server.key: server.cnf +- $(OPENSSL) req -new -out server.csr -keyout server.key -config ./server.cnf ++ @[ -f server.csr ] || $(OPENSSL) req -new -out server.csr -keyout server.key -config ./server.cnf + chmod g+r server.key + + server.crt: ca.key ca.pem server.csr + @[ -f server.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in server.csr -key $(PASSWORD_CA) -out server.crt -extensions xpserver_ext -extfile xpextensions -config ./server.cnf + + server.p12: server.crt +- $(OPENSSL) pkcs12 -export -in server.crt -inkey server.key -out server.p12 -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) ++ @[ -f server.p12 ] || $(OPENSSL) pkcs12 -export -in server.crt -inkey server.key -out server.p12 -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) + chmod g+r server.p12 + + server.pem: server.p12 +- $(OPENSSL) pkcs12 -in server.p12 -out server.pem -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) ++ @[ -f server.pem ] || $(OPENSSL) pkcs12 -in server.p12 -out server.pem -passin pass:$(PASSWORD_SERVER) -passout pass:$(PASSWORD_SERVER) + chmod g+r server.pem + + .PHONY: server.vrfy +@@ -113,19 +113,19 @@ server.vrfy: ca.pem + # + ###################################################################### + client.csr client.key: client.cnf +- $(OPENSSL) req -new -out client.csr -keyout client.key -config ./client.cnf ++ @[ -f client.csr ] || $(OPENSSL) req -new -out client.csr -keyout client.key -config ./client.cnf + chmod g+r client.key + + client.crt: ca.key ca.pem client.csr + @[ -f client.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in client.csr -key $(PASSWORD_CA) -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf + + client.p12: client.crt +- $(OPENSSL) pkcs12 -export -in client.crt -inkey client.key -out client.p12 -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) ++ @[ -f client.p12 ] || $(OPENSSL) pkcs12 -export -in client.crt -inkey client.key -out client.p12 -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) + chmod g+r client.p12 + cp client.p12 $(USER_NAME).p12 + + client.pem: client.p12 +- $(OPENSSL) pkcs12 -in client.p12 -out client.pem -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) ++ @[ -f client.pem ] || $(OPENSSL) pkcs12 -in client.p12 -out client.pem -passin pass:$(PASSWORD_CLIENT) -passout pass:$(PASSWORD_CLIENT) + chmod g+r client.pem + cp client.pem $(USER_NAME).pem + +@@ -140,18 +140,18 @@ client.vrfy: ca.pem client.pem + # + ###################################################################### + inner-server.csr inner-server.key: inner-server.cnf +- $(OPENSSL) req -new -out inner-server.csr -keyout inner-server.key -config ./inner-server.cnf ++ @[ -f inner-server.csr] || $(OPENSSL) req -new -out inner-server.csr -keyout inner-server.key -config ./inner-server.cnf + chmod g+r inner-server.key + + inner-server.crt: ca.key ca.pem inner-server.csr +- $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in inner-server.csr -key $(PASSWORD_CA) -out inner-server.crt -extensions xpserver_ext -extfile xpextensions -config ./inner-server.cnf ++ @[ -f inner-server.crt ] || $(OPENSSL) ca -batch -keyfile ca.key -cert ca.pem -in inner-server.csr -key $(PASSWORD_CA) -out inner-server.crt -extensions xpserver_ext -extfile xpextensions -config ./inner-server.cnf + + inner-server.p12: inner-server.crt +- $(OPENSSL) pkcs12 -export -in inner-server.crt -inkey inner-server.key -out inner-server.p12 -passin pass:$(PASSWORD_INNER) -passout pass:$(PASSWORD_INNER) ++ @[ -f inner-server.p12 ] || $(OPENSSL) pkcs12 -export -in inner-server.crt -inkey inner-server.key -out inner-server.p12 -passin pass:$(PASSWORD_INNER) -passout pass:$(PASSWORD_INNER) + chmod g+r inner-server.p12 + + inner-server.pem: inner-server.p12 +- $(OPENSSL) pkcs12 -in inner-server.p12 -out inner-server.pem -passin pass:$(PASSWORD_INNER) -passout pass:$(PASSWORD_INNER) ++ @[ -f inner-server.pem ] || $(OPENSSL) pkcs12 -in inner-server.p12 -out inner-server.pem -passin pass:$(PASSWORD_INNER) -passout pass:$(PASSWORD_INNER) + chmod g+r inner-server.pem + + .PHONY: inner-server.vrfy +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0014-Workaround-error-with-autoconf-2.7.patch b/meta-networking/recipes-connectivity/freeradius/files/0014-Workaround-error-with-autoconf-2.7.patch new file mode 100644 index 0000000000..17eadc7e59 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0014-Workaround-error-with-autoconf-2.7.patch @@ -0,0 +1,42 @@ +From c591da4a361496eec93625cf8c4f89bddfedaca7 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Sun, 7 Feb 2021 16:02:36 +0800 +Subject: [PATCH] Workaround error with autoconf 2.7 + +While using autoconf 2.7, the AM_MISSING_PROG caused unexpected error: +... +configure.ac: error: required file 'missing' not found +... + +Since these tools were explicitly added by autotools bbclass, +remove the testing to workaround the error with autoconf 2.7 + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Hongxu Jia +--- + configure.ac | 8 -------- + 1 file changed, 8 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 263098f7fd..fc296832d8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -878,14 +878,6 @@ fi + + AC_PATH_PROG(RUSERS, rusers, /usr/bin/rusers) + +-dnl # +-dnl # FIXME This is truly gross. +-dnl # +-missing_dir=`cd $ac_aux_dir && pwd` +-AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) +-AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) +-AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) +- + AC_PATH_PROG(DIRNAME,dirname) + AC_PATH_PROG(GREP,grep) + +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0015-bootstrap-check-commands-of-openssl-exist.patch b/meta-networking/recipes-connectivity/freeradius/files/0015-bootstrap-check-commands-of-openssl-exist.patch new file mode 100644 index 0000000000..d1d0111607 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0015-bootstrap-check-commands-of-openssl-exist.patch @@ -0,0 +1,44 @@ +From 78494ea005bd38324953b05176d6eb2c3f55af2c Mon Sep 17 00:00:00 2001 +From: Kai Kang +Date: Sun, 8 Jan 2023 23:21:24 +0800 +Subject: [PATCH] bootstrap: check commands of openssl exist + +It calls openssl commands dhparam and pkcs12 in script bootstrap. These +commands are configurable based on configure options 'no-dh' and +'no-des', and may not be provided by openssl. So check existence of +these commands. If not, abort running of script bootstrap. + +1. https://github.com/openssl/openssl/blob/master/apps/build.info#L37 +2. https://github.com/openssl/openssl/blob/master/apps/build.info#L22 + +Upstream-Status: Denied [https://github.com/FreeRADIUS/freeradius-server/pull/4059] + The maintainer commented in the pull that the script could + be run on a host which provides these openssl commands. + +Signed-off-by: Kai Kang +--- + raddb/certs/bootstrap | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/raddb/certs/bootstrap b/raddb/certs/bootstrap +index 57de8cf0d7..4641c71700 100755 +--- a/raddb/certs/bootstrap ++++ b/raddb/certs/bootstrap +@@ -13,6 +13,14 @@ + umask 027 + cd `dirname $0` + ++# check commands of openssl exist ++for cmd in dhparam pkcs12; do ++ if ! openssl ${cmd} -help >/dev/null 2>&1; then ++ echo "Error: command ${cmd} is not supported by openssl." ++ exit 1 ++ fi ++done ++ + make -h > /dev/null 2>&1 + + # +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0016-version.c-don-t-print-build-flags.patch b/meta-networking/recipes-connectivity/freeradius/files/0016-version.c-don-t-print-build-flags.patch new file mode 100644 index 0000000000..2d67fdef05 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0016-version.c-don-t-print-build-flags.patch @@ -0,0 +1,41 @@ +From cbbb62ddda5c189c225f96bf6b599b3b3e8c8252 Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Wed, 3 Aug 2022 16:44:29 +0800 +Subject: [PATCH] version.c: don't print build flags + +Don't print the build flags to avoid collecting the build environment info. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Mingli Yu +--- + src/main/version.c | 13 ------------- + 1 file changed, 13 deletions(-) + +diff --git a/src/main/version.c b/src/main/version.c +index f1f1e87810..3ffcbb25a0 100644 +--- a/src/main/version.c ++++ b/src/main/version.c +@@ -589,19 +589,6 @@ void version_print(void) + DEBUG2(" unknown"); + #endif + +- DEBUG2("Compilation flags:"); +-#ifdef BUILT_WITH_CPPFLAGS +- DEBUG2(" cppflags : " BUILT_WITH_CPPFLAGS); +-#endif +-#ifdef BUILT_WITH_CFLAGS +- DEBUG2(" cflags : " BUILT_WITH_CFLAGS); +-#endif +-#ifdef BUILT_WITH_LDFLAGS +- DEBUG2(" ldflags : " BUILT_WITH_LDFLAGS); +-#endif +-#ifdef BUILT_WITH_LIBS +- DEBUG2(" libs : " BUILT_WITH_LIBS); +-#endif + DEBUG2(" "); + } + INFO("FreeRADIUS Version " RADIUSD_VERSION_STRING); +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/0017-add-python.m4-for-detecting-python-3.10.patch b/meta-networking/recipes-connectivity/freeradius/files/0017-add-python.m4-for-detecting-python-3.10.patch new file mode 100644 index 0000000000..62a4869c95 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/files/0017-add-python.m4-for-detecting-python-3.10.patch @@ -0,0 +1,427 @@ +From f1418e1b46cb1cbd130935b76f5c78c577d1ad28 Mon Sep 17 00:00:00 2001 +From: Matthew Newton +Date: Wed, 28 Sep 2022 23:49:32 +0100 +Subject: [PATCH] add python.m4 for detecting python > 3.10 + +Upstream-Status: Backport +[https://github.com/FreeRADIUS/freeradius-server/commit/86584d2753829756cc73aadce5d48f703af472b1] + +Signed-off-by: Yi Zhao +--- + src/modules/rlm_python3/configure.ac | 4 + + src/modules/rlm_python3/m4/python.m4 | 363 +++++++++++++++++++++++++++ + src/modules/rlm_python3/m4/runlog.m4 | 17 ++ + 3 files changed, 384 insertions(+) + create mode 100644 src/modules/rlm_python3/m4/python.m4 + create mode 100644 src/modules/rlm_python3/m4/runlog.m4 + +diff --git a/src/modules/rlm_python3/configure.ac b/src/modules/rlm_python3/configure.ac +index bc0e97f9ba..90f2116e73 100644 +--- a/src/modules/rlm_python3/configure.ac ++++ b/src/modules/rlm_python3/configure.ac +@@ -3,6 +3,10 @@ AC_INIT(rlm_python3.c) + AC_REVISION($Revision$) + AC_DEFUN(modname,[rlm_python3]) + ++m4_include([ax_compare_version.m4]) ++m4_include([runlog.m4]) ++m4_include([python.m4]) ++ + AC_ARG_WITH([]modname, + [ --with-[]modname build []modname. (default=yes)]) + +diff --git a/src/modules/rlm_python3/m4/python.m4 b/src/modules/rlm_python3/m4/python.m4 +new file mode 100644 +index 0000000000..78ca7635ab +--- /dev/null ++++ b/src/modules/rlm_python3/m4/python.m4 +@@ -0,0 +1,363 @@ ++## ------------------------ -*- Autoconf -*- ++## Python file handling ++## From Andrew Dalke ++## Updated by James Henstridge and other contributors. ++## ------------------------ ++# Copyright (C) 1999-2021 Free Software Foundation, Inc. ++# ++# This file is free software; the Free Software Foundation ++# gives unlimited permission to copy and/or distribute it, ++# with or without modifications, as long as this notice is preserved. ++ ++ ++# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) ++# --------------------------------------------------------------------------- ++# Adds support for distributing Python modules and packages. To ++# install modules, copy them to $(pythondir), using the python_PYTHON ++# automake variable. To install a package with the same name as the ++# automake package, install to $(pkgpythondir), or use the ++# pkgpython_PYTHON automake variable. ++# ++# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as ++# locations to install python extension modules (shared libraries). ++# Another macro is required to find the appropriate flags to compile ++# extension modules. ++# ++# If your package is configured with a different prefix to python, ++# users will have to add the install directory to the PYTHONPATH ++# environment variable, or create a .pth file (see the python ++# documentation for details). ++# ++# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will ++# cause an error if the version of python installed on the system ++# doesn't meet the requirement. MINIMUM-VERSION should consist of ++# numbers and dots only. ++AC_DEFUN([AM_PATH_PYTHON], ++ [ ++ dnl Find a Python interpreter. Python versions prior to 2.0 are not ++ dnl supported. (2.0 was released on October 16, 2000). ++ m4_define_default([_AM_PYTHON_INTERPRETER_LIST], ++[python python2 python3 dnl ++ python3.11 python3.10 dnl ++ python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 dnl ++ python3.2 python3.1 python3.0 dnl ++ python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 dnl ++ python2.0]) ++ ++ AC_ARG_VAR([PYTHON], [the Python interpreter]) ++ ++ m4_if([$1],[],[ ++ dnl No version check is needed. ++ # Find any Python interpreter. ++ if test -z "$PYTHON"; then ++ AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :) ++ fi ++ am_display_PYTHON=python ++ ], [ ++ dnl A version check is needed. ++ if test -n "$PYTHON"; then ++ # If the user set $PYTHON, use it and don't search something else. ++ AC_MSG_CHECKING([whether $PYTHON version is >= $1]) ++ AM_PYTHON_CHECK_VERSION([$PYTHON], [$1], ++ [AC_MSG_RESULT([yes])], ++ [AC_MSG_RESULT([no]) ++ AC_MSG_ERROR([Python interpreter is too old])]) ++ am_display_PYTHON=$PYTHON ++ else ++ # Otherwise, try each interpreter until we find one that satisfies ++ # VERSION. ++ AC_CACHE_CHECK([for a Python interpreter with version >= $1], ++ [am_cv_pathless_PYTHON],[ ++ for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do ++ test "$am_cv_pathless_PYTHON" = none && break ++ AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break]) ++ done]) ++ # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. ++ if test "$am_cv_pathless_PYTHON" = none; then ++ PYTHON=: ++ else ++ AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON]) ++ fi ++ am_display_PYTHON=$am_cv_pathless_PYTHON ++ fi ++ ]) ++ ++ if test "$PYTHON" = :; then ++ dnl Run any user-specified action, or abort. ++ m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])]) ++ else ++ ++ dnl Query Python for its version number. Although site.py simply uses ++ dnl sys.version[:3], printing that failed with Python 3.10, since the ++ dnl trailing zero was eliminated. So now we output just the major ++ dnl and minor version numbers, as numbers. Apparently the tertiary ++ dnl version is not of interest. ++ dnl ++ AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], ++ [am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[[:2]])"`]) ++ AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) ++ ++ dnl At times, e.g., when building shared libraries, you may want ++ dnl to know which OS platform Python thinks this is. ++ dnl ++ AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform], ++ [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`]) ++ AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform]) ++ ++ dnl emacs-page ++ dnl If --with-python-sys-prefix is given, use the values of sys.prefix ++ dnl and sys.exec_prefix for the corresponding values of PYTHON_PREFIX ++ dnl and PYTHON_EXEC_PREFIX. Otherwise, use the GNU ${prefix} and ++ dnl ${exec_prefix} variables. ++ dnl ++ dnl The two are made distinct variables so they can be overridden if ++ dnl need be, although general consensus is that you shouldn't need ++ dnl this separation. ++ dnl ++ dnl Also allow directly setting the prefixes via configure options, ++ dnl overriding any default. ++ dnl ++ if test "x$prefix" = xNONE; then ++ am__usable_prefix=$ac_default_prefix ++ else ++ am__usable_prefix=$prefix ++ fi ++ ++ # Allow user to request using sys.* values from Python, ++ # instead of the GNU $prefix values. ++ AC_ARG_WITH([python-sys-prefix], ++ [AS_HELP_STRING([--with-python-sys-prefix], ++ [use Python's sys.prefix and sys.exec_prefix values])], ++ [am_use_python_sys=:], ++ [am_use_python_sys=false]) ++ ++ # Allow user to override whatever the default Python prefix is. ++ AC_ARG_WITH([python_prefix], ++ [AS_HELP_STRING([--with-python_prefix], ++ [override the default PYTHON_PREFIX])], ++ [am_python_prefix_subst=$withval ++ am_cv_python_prefix=$withval ++ AC_MSG_CHECKING([for explicit $am_display_PYTHON prefix]) ++ AC_MSG_RESULT([$am_cv_python_prefix])], ++ [ ++ if $am_use_python_sys; then ++ # using python sys.prefix value, not GNU ++ AC_CACHE_CHECK([for python default $am_display_PYTHON prefix], ++ [am_cv_python_prefix], ++ [am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`]) ++ ++ dnl If sys.prefix is a subdir of $prefix, replace the literal value of ++ dnl $prefix with a variable reference so it can be overridden. ++ case $am_cv_python_prefix in ++ $am__usable_prefix*) ++ am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'` ++ am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"` ++ ;; ++ *) ++ am_python_prefix_subst=$am_cv_python_prefix ++ ;; ++ esac ++ else # using GNU prefix value, not python sys.prefix ++ am_python_prefix_subst='${prefix}' ++ am_python_prefix=$am_python_prefix_subst ++ AC_MSG_CHECKING([for GNU default $am_display_PYTHON prefix]) ++ AC_MSG_RESULT([$am_python_prefix]) ++ fi]) ++ # Substituting python_prefix_subst value. ++ AC_SUBST([PYTHON_PREFIX], [$am_python_prefix_subst]) ++ ++ # emacs-page Now do it all over again for Python exec_prefix, but with yet ++ # another conditional: fall back to regular prefix if that was specified. ++ AC_ARG_WITH([python_exec_prefix], ++ [AS_HELP_STRING([--with-python_exec_prefix], ++ [override the default PYTHON_EXEC_PREFIX])], ++ [am_python_exec_prefix_subst=$withval ++ am_cv_python_exec_prefix=$withval ++ AC_MSG_CHECKING([for explicit $am_display_PYTHON exec_prefix]) ++ AC_MSG_RESULT([$am_cv_python_exec_prefix])], ++ [ ++ # no explicit --with-python_exec_prefix, but if ++ # --with-python_prefix was given, use its value for python_exec_prefix too. ++ AS_IF([test -n "$with_python_prefix"], ++ [am_python_exec_prefix_subst=$with_python_prefix ++ am_cv_python_exec_prefix=$with_python_prefix ++ AC_MSG_CHECKING([for python_prefix-given $am_display_PYTHON exec_prefix]) ++ AC_MSG_RESULT([$am_cv_python_exec_prefix])], ++ [ ++ # Set am__usable_exec_prefix whether using GNU or Python values, ++ # since we use that variable for pyexecdir. ++ if test "x$exec_prefix" = xNONE; then ++ am__usable_exec_prefix=$am__usable_prefix ++ else ++ am__usable_exec_prefix=$exec_prefix ++ fi ++ # ++ if $am_use_python_sys; then # using python sys.exec_prefix, not GNU ++ AC_CACHE_CHECK([for python default $am_display_PYTHON exec_prefix], ++ [am_cv_python_exec_prefix], ++ [am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`]) ++ dnl If sys.exec_prefix is a subdir of $exec_prefix, replace the ++ dnl literal value of $exec_prefix with a variable reference so it can ++ dnl be overridden. ++ case $am_cv_python_exec_prefix in ++ $am__usable_exec_prefix*) ++ am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'` ++ am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"` ++ ;; ++ *) ++ am_python_exec_prefix_subst=$am_cv_python_exec_prefix ++ ;; ++ esac ++ else # using GNU $exec_prefix, not python sys.exec_prefix ++ am_python_exec_prefix_subst='${exec_prefix}' ++ am_python_exec_prefix=$am_python_exec_prefix_subst ++ AC_MSG_CHECKING([for GNU default $am_display_PYTHON exec_prefix]) ++ AC_MSG_RESULT([$am_python_exec_prefix]) ++ fi])]) ++ # Substituting python_exec_prefix_subst. ++ AC_SUBST([PYTHON_EXEC_PREFIX], [$am_python_exec_prefix_subst]) ++ ++ # Factor out some code duplication into this shell variable. ++ am_python_setup_sysconfig="\ ++import sys ++# Prefer sysconfig over distutils.sysconfig, for better compatibility ++# with python 3.x. See automake bug#10227. ++try: ++ import sysconfig ++except ImportError: ++ can_use_sysconfig = 0 ++else: ++ can_use_sysconfig = 1 ++# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs: ++# ++try: ++ from platform import python_implementation ++ if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7': ++ can_use_sysconfig = 0 ++except ImportError: ++ pass" ++ ++ dnl emacs-page Set up 4 directories: ++ ++ dnl 1. pythondir: where to install python scripts. This is the ++ dnl site-packages directory, not the python standard library ++ dnl directory like in previous automake betas. This behavior ++ dnl is more consistent with lispdir.m4 for example. ++ dnl Query distutils for this directory. ++ dnl ++ AC_CACHE_CHECK([for $am_display_PYTHON script directory (pythondir)], ++ [am_cv_python_pythondir], ++ [if test "x$am_cv_python_prefix" = x; then ++ am_py_prefix=$am__usable_prefix ++ else ++ am_py_prefix=$am_cv_python_prefix ++ fi ++ am_cv_python_pythondir=`$PYTHON -c " ++$am_python_setup_sysconfig ++if can_use_sysconfig: ++ if hasattr(sysconfig, 'get_default_scheme'): ++ scheme = sysconfig.get_default_scheme() ++ else: ++ scheme = sysconfig._get_default_scheme() ++ if scheme == 'posix_local': ++ # Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/ ++ scheme = 'posix_prefix' ++ sitedir = sysconfig.get_path('purelib', scheme, vars={'base':'$am_py_prefix'}) ++else: ++ from distutils import sysconfig ++ sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix') ++sys.stdout.write(sitedir)"` ++ # ++ case $am_cv_python_pythondir in ++ $am_py_prefix*) ++ am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` ++ am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,\\${PYTHON_PREFIX},"` ++ ;; ++ *) ++ case $am_py_prefix in ++ /usr|/System*) ;; ++ *) am_cv_python_pythondir="\${PYTHON_PREFIX}/lib/python$PYTHON_VERSION/site-packages" ++ ;; ++ esac ++ ;; ++ esac ++ ]) ++ AC_SUBST([pythondir], [$am_cv_python_pythondir]) ++ ++ dnl 2. pkgpythondir: $PACKAGE directory under pythondir. Was ++ dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is ++ dnl more consistent with the rest of automake. ++ dnl ++ AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE]) ++ ++ dnl 3. pyexecdir: directory for installing python extension modules ++ dnl (shared libraries). ++ dnl Query distutils for this directory. ++ dnl ++ AC_CACHE_CHECK([for $am_display_PYTHON extension module directory (pyexecdir)], ++ [am_cv_python_pyexecdir], ++ [if test "x$am_cv_python_exec_prefix" = x; then ++ am_py_exec_prefix=$am__usable_exec_prefix ++ else ++ am_py_exec_prefix=$am_cv_python_exec_prefix ++ fi ++ am_cv_python_pyexecdir=`$PYTHON -c " ++$am_python_setup_sysconfig ++if can_use_sysconfig: ++ if hasattr(sysconfig, 'get_default_scheme'): ++ scheme = sysconfig.get_default_scheme() ++ else: ++ scheme = sysconfig._get_default_scheme() ++ if scheme == 'posix_local': ++ # Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/ ++ scheme = 'posix_prefix' ++ sitedir = sysconfig.get_path('platlib', scheme, vars={'platbase':'$am_py_exec_prefix'}) ++else: ++ from distutils import sysconfig ++ sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_prefix') ++sys.stdout.write(sitedir)"` ++ # ++ case $am_cv_python_pyexecdir in ++ $am_py_exec_prefix*) ++ am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` ++ am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,\\${PYTHON_EXEC_PREFIX},"` ++ ;; ++ *) ++ case $am_py_exec_prefix in ++ /usr|/System*) ;; ++ *) am_cv_python_pyexecdir="\${PYTHON_EXEC_PREFIX}/lib/python$PYTHON_VERSION/site-packages" ++ ;; ++ esac ++ ;; ++ esac ++ ]) ++ AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir]) ++ ++ dnl 4. pkgpyexecdir: $(pyexecdir)/$(PACKAGE) ++ dnl ++ AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE]) ++ ++ dnl Run any user-specified action. ++ $2 ++ fi ++]) ++ ++ ++# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) ++# --------------------------------------------------------------------------- ++# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION. ++# Run ACTION-IF-FALSE otherwise. ++# This test uses sys.hexversion instead of the string equivalent (first ++# word of sys.version), in order to cope with versions such as 2.2c1. ++# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000). ++AC_DEFUN([AM_PYTHON_CHECK_VERSION], ++ [prog="import sys ++# split strings by '.' and convert to numeric. Append some zeros ++# because we need at least 4 digits for the hex conversion. ++# map returns an iterator in Python 3.0 and a list in 2.x ++minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]] ++minverhex = 0 ++# xrange is not present in Python 3.0 and range returns an iterator ++for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]] ++sys.exit(sys.hexversion < minverhex)" ++ AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) +diff --git a/src/modules/rlm_python3/m4/runlog.m4 b/src/modules/rlm_python3/m4/runlog.m4 +new file mode 100644 +index 0000000000..690efc3258 +--- /dev/null ++++ b/src/modules/rlm_python3/m4/runlog.m4 +@@ -0,0 +1,17 @@ ++## -*- Autoconf -*- ++# Copyright (C) 2001-2018 Free Software Foundation, Inc. ++# ++# This file is free software; the Free Software Foundation ++# gives unlimited permission to copy and/or distribute it, ++# with or without modifications, as long as this notice is preserved. ++ ++# AM_RUN_LOG(COMMAND) ++# ------------------- ++# Run COMMAND, save the exit status in ac_status, and log it. ++# (This has been adapted from Autoconf's _AC_RUN_LOG macro.) ++AC_DEFUN([AM_RUN_LOG], ++[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD ++ ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD ++ (exit $ac_status); }]) +-- +2.25.1 + diff --git a/meta-networking/recipes-connectivity/freeradius/files/check-openssl-cmds-in-script-bootstrap.patch b/meta-networking/recipes-connectivity/freeradius/files/check-openssl-cmds-in-script-bootstrap.patch deleted file mode 100644 index fcadae93a0..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/check-openssl-cmds-in-script-bootstrap.patch +++ /dev/null @@ -1,38 +0,0 @@ -bootstrap: check commands of openssl exist - -It calls openssl commands dhparam and pkcs12 in script bootstrap. These -commands are configurable based on configure options 'no-dh' and -'no-des', and may not be provided by openssl. So check existence of -these commands. If not, abort running of script bootstrap. - -1. https://github.com/openssl/openssl/blob/master/apps/build.info#L37 -2. https://github.com/openssl/openssl/blob/master/apps/build.info#L22 - -Upstream-Status: Denied [https://github.com/FreeRADIUS/freeradius-server/pull/4059] - The maintainer commented in the pull that the script could - be run on a host which provides these openssl commands. - -Signed-off-by: Kai Kang ---- - raddb/certs/bootstrap | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/raddb/certs/bootstrap b/raddb/certs/bootstrap -index 0f719aafd4..17feddbeeb 100755 ---- a/raddb/certs/bootstrap -+++ b/raddb/certs/bootstrap -@@ -13,6 +13,14 @@ - umask 027 - cd `dirname $0` - -+# check commands of openssl exist -+for cmd in dhparam pkcs12; do -+ if ! openssl ${cmd} -help >/dev/null 2>&1; then -+ echo "Error: command ${cmd} is not supported by openssl." -+ exit 1 -+ fi -+done -+ - make -h > /dev/null 2>&1 - - # diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-avoid-searching-host-dirs.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-avoid-searching-host-dirs.patch deleted file mode 100644 index 9c997661fc..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-avoid-searching-host-dirs.patch +++ /dev/null @@ -1,197 +0,0 @@ -From dc41591d5ceb18900ec85894f8f7b7bb44bb3bd9 Mon Sep 17 00:00:00 2001 -From: Jackie Huang -Date: Mon, 4 Jan 2016 01:44:04 -0500 -Subject: [PATCH] avoid searching host dirs - -Don't search the hardcoded host dirs to avoid -host contamination. - -Upstream-Status: Inappropriate [cross-compile specific] - -Signed-off-by: Jackie Huang ---- - acinclude.m4 | 4 ++-- - src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac | 4 ++-- - src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac | 4 ++-- - src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac | 4 ++-- - src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac | 6 +++--- - src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac | 2 +- - src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac | 4 ++-- - src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac | 4 ++-- - 8 files changed, 16 insertions(+), 16 deletions(-) - -diff --git a/acinclude.m4 b/acinclude.m4 -index da48acc..b513ae1 100644 ---- a/acinclude.m4 -+++ b/acinclude.m4 -@@ -178,7 +178,7 @@ if test "x$smart_lib" = "x"; then - FR_LOCATE_DIR(smart_lib_dir,[lib$1${libltdl_cv_shlibext}]) - FR_LOCATE_DIR(smart_lib_dir,[lib$1.a]) - -- for try in $smart_lib_dir /usr/local/lib /opt/lib; do -+ for try in $smart_lib_dir; do - AC_MSG_CHECKING([for $2 in -l$1 in $try]) - LIBS="-l$1 $old_LIBS" - CPPFLAGS="-L$try -Wl,-rpath,$try $old_CPPFLAGS" -@@ -218,7 +218,7 @@ ac_safe=`echo "$1" | sed 'y%./+-%__pm%'` - old_CPPFLAGS="$CPPFLAGS" - smart_include= - dnl # The default directories we search in (in addition to the compilers search path) --smart_include_dir="/usr/local/include /opt/include" -+smart_include_dir= - - dnl # Our local versions - _smart_try_dir= -diff --git a/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac -index 75c851a..a262d71 100644 ---- a/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac -+++ b/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac -@@ -57,14 +57,14 @@ if test x$with_[]modname != xno; then - esac]) - - dnl Check for SQLConnect in -ldb2 -- smart_try_dir="$ibmdb2_lib_dir /usr/local/db2/lib /usr/IBMdb2/V7.1/lib" -+ smart_try_dir="$ibmdb2_lib_dir" - FR_SMART_CHECK_LIB(db2, SQLConnect) - if test "x$ac_cv_lib_db2_SQLConnect" != xyes; then - fail="$fail libdb2" - fi - - dnl Check for sqlcli.h -- smart_try_dir="$ibmdb2_include_dir /usr/local/db2/include /usr/IBMdb2/V7.1/include" -+ smart_try_dir="$ibmdb2_include_dir" - FR_SMART_CHECK_INCLUDE(sqlcli.h) - if test "x$ac_cv_header_sqlcli_h" != xyes; then - fail="$fail sqlcli.h" -diff --git a/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac -index 4da57b3..752b043 100644 ---- a/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac -+++ b/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac -@@ -56,14 +56,14 @@ if test x$with_[]modname != xno; then - esac]) - - dnl Check for isc_attach_database in -lfbclient -- smart_try_dir="$firebird_lib_dir /usr/lib/firebird2/lib /usr/local/firebird/lib" -+ smart_try_dir="$firebird_lib_dir" - FR_SMART_CHECK_LIB(fbclient, isc_attach_database) - if test "x$ac_cv_lib_fbclient_isc_attach_database" != xyes; then - fail="$fail libfbclient" - fi - - dnl Check for ibase.h -- smart_try_dir="$firebird_include_dir /usr/lib/firebird2/include /usr/local/firebird/include" -+ smart_try_dir="$firebird_include_dir" - FR_SMART_CHECK_INCLUDE(ibase.h) - if test "x$ac_cv_header_ibase_h" != xyes; then - fail="$fail ibase.h" -diff --git a/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac -index ba6304f..3393557 100644 ---- a/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac -+++ b/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac -@@ -57,14 +57,14 @@ if test x$with_[]modname != xno; then - esac]) - - dnl Check for SQLConnect in -liodbc -- smart_try_dir="$iodbc_lib_dir /usr/lib /usr/lib/iodbc /usr/local/lib/iodbc /usr/local/iodbc/lib/iodbc" -+ smart_try_dir="$iodbc_lib_dir" - FR_SMART_CHECK_LIB(iodbc, SQLConnect) - if test "x$ac_cv_lib_iodbc_SQLConnect" != xyes; then - fail="$fail libiodbc" - fi - - dnl Check for isql.h -- smart_try_dir="$iodbc_include_dir /usr/include /usr/include/iodbc /usr/local/iodbc/include" -+ smart_try_dir="$iodbc_include_dir" - FR_SMART_CHECK_INCLUDE(isql.h) - if test "x$ac_cv_header_isql_h" != xyes; then - fail="$fail isql.h" -diff --git a/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac -index 1401677..2e7db44 100644 ---- a/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac -+++ b/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac -@@ -136,7 +136,7 @@ if test x$with_[]modname != xno; then - - dnl # Check for libmysqlclient_r - if test "x$have_a_libmysqlclient" != "xyes"; then -- smart_try_dir="$mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib/mysql /usr/local/mysql/lib/mysql" -+ smart_try_dir="$mysql_lib_dir" - FR_SMART_CHECK_LIB(mysqlclient_r, mysql_init) - if test "x$ac_cv_lib_mysqlclient_r_mysql_init" = "xyes"; then - have_a_libmysqlclient='yes' -@@ -145,7 +145,7 @@ if test x$with_[]modname != xno; then - - dnl # Check for libmysqlclient - if test "x$have_a_libmysqlclient" != "xyes"; then -- smart_try_dir="$mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib/mysql /usr/local/mysql/lib/mysql" -+ smart_try_dir="$mysql_lib_dir" - FR_SMART_CHECK_LIB(mysqlclient, mysql_init) - if test "x$ac_cv_lib_mysqlclient_mysql_init" = "xyes"; then - have_a_libmysqlclient='yes' -@@ -189,7 +189,7 @@ if test x$with_[]modname != xno; then - fi - - if test "x$have_mysql_h" != "xyes"; then -- smart_try_dir="$mysql_include_dir /usr/local/include /usr/local/mysql/include" -+ smart_try_dir="$mysql_include_dir" - FR_SMART_CHECK_INCLUDE(mysql/mysql.h) - if test "x$ac_cv_header_mysql_mysql_h" = "xyes"; then - AC_DEFINE(HAVE_MYSQL_MYSQL_H, [], [Define if you have ]) -diff --git a/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac -index 3178462..5cbc8c2 100644 ---- a/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac -+++ b/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac -@@ -63,7 +63,7 @@ if test x$with_[]modname != xno; then - dnl # Check for header files - dnl ############################################################ - -- smart_try_dir="$oracle_include_dir /usr/local/instaclient/include" -+ smart_try_dir="$oracle_include_dir" - - if test "x$ORACLE_HOME" != "x"; then - smart_try_dir="${smart_try_dir} ${ORACLE_HOME}/include" -diff --git a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac -index 4f9a890..e1cf811 100644 ---- a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac -+++ b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac -@@ -41,7 +41,7 @@ if test x$with_[]modname != xno; then - esac ] - ) - -- smart_try_dir="$rlm_sql_postgresql_include_dir /usr/include/postgresql /usr/local/pgsql/include /usr/include/pgsql" -+ smart_try_dir="$rlm_sql_postgresql_include_dir" - FR_SMART_CHECK_INCLUDE(libpq-fe.h) - if test "x$ac_cv_header_libpqmfe_h" != "xyes"; then - fail="$fail libpq-fe.h" -@@ -76,7 +76,7 @@ if test x$with_[]modname != xno; then - ]) - fi - -- smart_try_dir="$rlm_sql_postgresql_lib_dir /usr/lib /usr/local/pgsql/lib" -+ smart_try_dir="$rlm_sql_postgresql_lib_dir" - FR_SMART_CHECK_LIB(pq, PQconnectdb) - if test "x$ac_cv_lib_pq_PQconnectdb" != "xyes"; then - fail="$fail libpq" -diff --git a/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac -index 3545387..c543ed4 100644 ---- a/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac -+++ b/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac -@@ -57,14 +57,14 @@ if test x$with_[]modname != xno; then - esac]) - - dnl Check for SQLConnect in -lodbc -- smart_try_dir="$unixodbc_lib_dir /usr/local/unixodbc/lib" -+ smart_try_dir="$unixodbc_lib_dir" - FR_SMART_CHECK_LIB(odbc, SQLConnect) - if test "x$ac_cv_lib_odbc_SQLConnect" != xyes; then - fail="$fail libodbc" - fi - - dnl Check for sql.h -- smart_try_dir="$unixodbc_include_dir /usr/local/unixodbc/include" -+ smart_try_dir="$unixodbc_include_dir" - FR_SMART_CHECK_INCLUDE(sql.h) - if test "x$ac_cv_header_sql_h" != xyes; then - fail="$fail sql.h" --- -1.9.1 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-configure.ac-add-option-for-libcap.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-configure.ac-add-option-for-libcap.patch deleted file mode 100644 index 4719358722..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-configure.ac-add-option-for-libcap.patch +++ /dev/null @@ -1,70 +0,0 @@ -From 98a9eff357959d1113e33a615c2178751d5b2054 Mon Sep 17 00:00:00 2001 -From: Changqing Li -Date: Thu, 22 Aug 2019 10:50:21 +0800 -Subject: [PATCH 2/2] configure.ac: add option for libcap - -Upstream-Status: Pending - -Signed-off-by: Jackie Huang -Signed-off-by: Changqing Li ---- - configure.ac | 36 +++++++++++++++++++++++++++--------- - 1 file changed, 27 insertions(+), 9 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 65db61e..6486aac 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -977,6 +977,22 @@ fi - dnl Set by FR_SMART_CHECKLIB - LIBS="${old_LIBS}" - -+dnl # -+dnl # extra argument: --with-libcap -+dnl # -+WITH_LIBCAP=yes -+AC_ARG_WITH(libcap, -+[ --with-licap use licap for debugger checks. (default=yes)], -+[ case "$withval" in -+ no) -+ WITH_LIBCAP=no -+ ;; -+ *) -+ WITH_LIBCAP=yes -+ ;; -+ esac ] -+) -+ - dnl Check for cap - dnl extra argument: --with-cap-lib-dir=DIR - cap_lib_dir= -@@ -1010,15 +1026,17 @@ AC_ARG_WITH(cap-include-dir, - ;; - esac]) - --smart_try_dir="$cap_lib_dir" --FR_SMART_CHECK_LIB(cap, cap_get_proc) --if test "x$ac_cv_lib_cap_cap_get_proc" != "xyes"; then -- AC_MSG_WARN([cap library not found, debugger checks will not be enabled. Use --with-cap-lib-dir=.]) --else -- AC_DEFINE(HAVE_LIBCAP, 1, -- [Define to 1 if you have the `cap' library (-lcap).] -- ) -- HAVE_LIBCAP=1 -+if test "x$WITH_LIBCAP" = xyes; then -+ smart_try_dir="$cap_lib_dir" -+ FR_SMART_CHECK_LIB(cap, cap_get_proc) -+ if test "x$ac_cv_lib_cap_cap_get_proc" != "xyes"; then -+ AC_MSG_WARN([cap library not found, debugger checks will not be enabled. Use --with-cap-lib-dir=.]) -+ else -+ AC_DEFINE(HAVE_LIBCAP, 1, -+ [Define to 1 if you have the `cap' library (-lcap).] -+ ) -+ HAVE_LIBCAP=1 -+ fi - fi - - dnl # --- -2.7.4 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-configure.ac-allow-cross-compilation.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-configure.ac-allow-cross-compilation.patch deleted file mode 100644 index 38e7c36227..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-configure.ac-allow-cross-compilation.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 0780b7053fb0d33d721aa70ab2ecd75299e5ba31 Mon Sep 17 00:00:00 2001 -From: Changqing Li -Date: Tue, 24 Jul 2018 15:03:39 +0800 -Subject: [PATCH] configure.ac: allow cross-compilation - -The checking OpenSSL library and header version consistency will -always fail in cross compiling, skip the check and give a warning -instead for cross compiling. - -Upstream-Status: Inappropriate[embedded specific] - -Signed-off-by: Jackie Huang -Signed-off-by: Yi Zhao - -update to new version 3.0.17 to fix patch warning -Signed-off-by: Changqing Li ---- - src/modules/rlm_krb5/configure.ac | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/modules/rlm_krb5/configure.ac b/src/modules/rlm_krb5/configure.ac -index efc9f29..98a97e4 100644 ---- a/src/modules/rlm_krb5/configure.ac -+++ b/src/modules/rlm_krb5/configure.ac -@@ -137,7 +137,8 @@ if test x$with_[]modname != xno; then - FR_SMART_CHECK_LIB(krb5, krb5_is_thread_safe) - if test "x$ac_cv_lib_krb5_krb5_is_thread_safe" = xyes; then - AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include ]], [[return krb5_is_thread_safe() ? 0 : 1]])], -- [krb5threadsafe="-DKRB5_IS_THREAD_SAFE"], [AC_MSG_WARN([[libkrb5 is not threadsafe]])]) -+ [krb5threadsafe="-DKRB5_IS_THREAD_SAFE"], [AC_MSG_WARN([[libkrb5 is not threadsafe]])], -+ [AC_MSG_WARN(cross compiling: not checking)]) - fi - else - krb5threadsafe="" --- -2.7.4 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-enble-user-in-conf.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-enble-user-in-conf.patch deleted file mode 100644 index 4a62bf1fa2..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-enble-user-in-conf.patch +++ /dev/null @@ -1,28 +0,0 @@ -Enable and change user and group of freeradius server to radiusd - -Upstream-Status: Inappropriate [configuration] - -Signed-off-by: Roy.Li -Signed-off-by: Jackie Huang ---- - raddb/radiusd.conf.in | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/raddb/radiusd.conf.in b/raddb/radiusd.conf.in -index c62f4ff..0b4a84e 100644 ---- a/raddb/radiusd.conf.in -+++ b/raddb/radiusd.conf.in -@@ -436,8 +436,8 @@ security { - # member. This can allow for some finer-grained access - # controls. - # --# user = radius --# group = radius -+ user = radiusd -+ group = radiusd - - # Core dumps are a bad thing. This should only be set to - # 'yes' if you're debugging a problem with the server. --- -1.9.1 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-fix-error-for-expansion-of-macro.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-fix-error-for-expansion-of-macro.patch deleted file mode 100644 index af1bff051f..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-fix-error-for-expansion-of-macro.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 5b6d8b14f2696fcf1dca119212f9d0a0fa04defd Mon Sep 17 00:00:00 2001 -From: Yi Zhao -Date: Wed, 18 Jan 2017 14:59:39 +0800 -Subject: [PATCH] fix error for expansion of macro in thread.h - -The parameter declaration is missing in expansion of macro -which cause the build error: -| In file included from src/freeradius-devel/libradius.h:80:0, -| from src/lib/log.c:26: -| src/lib/log.c: In function '__fr_thread_local_destroy_fr_strerror_buffer': -| src/lib/log.c:37:31: error: 'fr_strerror_buffer' undeclared (first use in this function) -| fr_thread_local_setup(char *, fr_strerror_buffer) /* macro */ -| ^ - -Add the missing declaration in macro. - -Upstream-Status: Pending - -Signed-off-by: Yi Zhao ---- - src/include/threads.h | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/src/include/threads.h b/src/include/threads.h -index e36d81d..2bcb6aa 100644 ---- a/src/include/threads.h -+++ b/src/include/threads.h -@@ -89,7 +89,7 @@ static _t __fr_thread_local_init_##_n(pthread_destructor_t func)\ - # define fr_thread_local_get(_n) _n - #elif defined(HAVE_PTHREAD_H) - # include --# define fr_thread_local_setup(_t, _n) \ -+# define fr_thread_local_setup(_t, _n) static __thread _t _n;\ - static pthread_key_t __fr_thread_local_key_##_n;\ - static pthread_once_t __fr_thread_local_once_##_n = PTHREAD_ONCE_INIT;\ - static pthread_destructor_t __fr_thread_local_destructor_##_n = NULL;\ -@@ -100,17 +100,17 @@ static void __fr_thread_local_destroy_##_n(UNUSED void *unused)\ - static void __fr_thread_local_key_init_##_n(void)\ - {\ - (void) pthread_key_create(&__fr_thread_local_key_##_n, __fr_thread_local_destroy_##_n);\ -- (void) pthread_setspecific(__fr_thread_local_key_##_n, &(_n));\ - }\ - static _t __fr_thread_local_init_##_n(pthread_destructor_t func)\ - {\ - __fr_thread_local_destructor_##_n = func;\ - if (_n) return _n; \ - (void) pthread_once(&__fr_thread_local_once_##_n, __fr_thread_local_key_init_##_n);\ -+ (void) pthread_setspecific(__fr_thread_local_key_##_n, &(_n));\ - return _n;\ - } --# define fr_thread_local_init(_n, _f) __fr_thread_local_init_##_n(_f) --# define fr_thread_local_set(_n, _v) __fr_thread_local_set_##_n(_v) --# define fr_thread_local_get(_n) __fr_thread_local_get_##_n() -+# define fr_thread_local_init(_n, _f) __fr_thread_local_init_##_n(_f) -+# define fr_thread_local_set(_n, _v) ((int)!((_n = _v) || 1)) -+# define fr_thread_local_get(_n) _n - #endif - #endif --- -2.10.2 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-fix-quoting-for-BUILT_WITH.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-fix-quoting-for-BUILT_WITH.patch deleted file mode 100644 index b0929c4b07..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-fix-quoting-for-BUILT_WITH.patch +++ /dev/null @@ -1,55 +0,0 @@ -Fix quoting for BUILD_WITH - -The escaped quotes are to make the -D values produce strings which -can be used to display these values. However, if the values are more -than one word, with spaces, they also need shell quoting to make them -into single words. - -Upstream-Status: Pending - -Signed-off-by: Peter Seebach -Signed-off-by: Yi Zhao ---- - src/main/libfreeradius-server.mk | 2 +- - src/main/unittest.mk | 2 +- - src/modules/rlm_eap/radeapclient.mk | 2 +- - 3 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/main/libfreeradius-server.mk b/src/main/libfreeradius-server.mk -index 4495f72..07c28f1 100644 ---- a/src/main/libfreeradius-server.mk -+++ b/src/main/libfreeradius-server.mk -@@ -18,5 +18,5 @@ SOURCES := conffile.c \ - TGT_LDLIBS := $(OPENSSL_LIBS) - - ifneq ($(MAKECMDGOALS),scan) --SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS=\"$(CPPFLAGS)\" -DBUILT_WITH_CFLAGS=\"$(CFLAGS)\" -DBUILT_WITH_LDFLAGS=\"$(LDFLAGS)\" -DBUILT_WITH_LIBS=\"$(LIBS)\" -+SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS="\"$(CPPFLAGS)\"" -DBUILT_WITH_CFLAGS="\"$(CFLAGS)\"" -DBUILT_WITH_LDFLAGS="\"$(LDFLAGS)\"" -DBUILT_WITH_LIBS="\"$(LIBS)\"" - endif -diff --git a/src/main/unittest.mk b/src/main/unittest.mk -index 09f3938..ed33952 100644 ---- a/src/main/unittest.mk -+++ b/src/main/unittest.mk -@@ -21,5 +21,5 @@ TGT_PREREQS += libfreeradius-eap.a - endif - - ifneq ($(MAKECMDGOALS),scan) --SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS=\"$(CPPFLAGS)\" -DBUILT_WITH_CFLAGS=\"$(CFLAGS)\" -DBUILT_WITH_LDFLAGS=\"$(LDFLAGS)\" -DBUILT_WITH_LIBS=\"$(LIBS)\" -+SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS="\"$(CPPFLAGS)\"" -DBUILT_WITH_CFLAGS="\"$(CFLAGS)\"" -DBUILT_WITH_LDFLAGS="\"$(LDFLAGS)\"" -DBUILT_WITH_LIBS="\"$(LIBS)\"" - endif -diff --git a/src/modules/rlm_eap/radeapclient.mk b/src/modules/rlm_eap/radeapclient.mk -index 6068f54..7d3c556 100644 ---- a/src/modules/rlm_eap/radeapclient.mk -+++ b/src/modules/rlm_eap/radeapclient.mk -@@ -23,7 +23,7 @@ SRC_CFLAGS += -DWITH_EAPCLIENT - SRC_INCDIRS := ${top_srcdir}/src/modules/rlm_eap/libeap - - ifneq ($(MAKECMDGOALS),scan) --SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS=\"$(CPPFLAGS)\" -DBUILT_WITH_CFLAGS=\"$(CFLAGS)\" -DBUILT_WITH_LDFLAGS=\"$(LDFLAGS)\" -DBUILT_WITH_LIBS=\"$(LIBS)\" -+SRC_CFLAGS += -DBUILT_WITH_CPPFLAGS="\"$(CPPFLAGS)\"" -DBUILT_WITH_CFLAGS="\"$(CFLAGS)\"" -DBUILT_WITH_LDFLAGS="\"$(LDFLAGS)\"" -DBUILT_WITH_LIBS="\"$(LIBS)\"" - endif - - endif --- -2.10.2 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-libtool-detection.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-libtool-detection.patch deleted file mode 100644 index 4265f9d0de..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-libtool-detection.patch +++ /dev/null @@ -1,90 +0,0 @@ -From bfe4d7ed72edc9d4ae1a0f0d2dd84367d6214886 Mon Sep 17 00:00:00 2001 -From: Changqing Li -Date: Thu, 22 Aug 2019 10:45:46 +0800 -Subject: [PATCH 1/2] Fix libtool detection - -Upstream-Status: pending - -Use LT_INIT instead of the deprecated AC_PROG_LIBTOOL to detect libtool, so it -can work with our libtoolize and libtool. - -Simplify the detection of ltdl. It will find the ltdl from the sysroot; the -switch --with-system-libltdl is no longer needed. The code is copied from -pulseaudio configure.ac, together with the comment paragraph. - -Also patch autogen.sh so it uses autoreconf, which handles libtoolize better. - -Signed-off-by: Jesse Zhang -Signed-off-by: Jackie Huang -Signed-off-by: Changqing Li ---- - autogen.sh | 5 +---- - configure.ac | 36 ++++++++++++++++++++++++++++++++++++ - 2 files changed, 37 insertions(+), 4 deletions(-) - -diff --git a/autogen.sh b/autogen.sh -index a1d08a6..959182b 100755 ---- a/autogen.sh -+++ b/autogen.sh -@@ -6,10 +6,7 @@ cd $parentdir - parentdir=`pwd` - m4include="-I$parentdir -I$parentdir/m4 -Im4" - --libtoolize -f -c --#aclocal --autoheader --autoconf -+autoreconf -Wcross --verbose --install --force - - mysubdirs="$mysubdirs `find src/modules/ -name configure -print | sed 's%/configure%%'`" - mysubdirs=`echo $mysubdirs` -diff --git a/configure.ac b/configure.ac -index a7abf00..65db61e 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -220,6 +220,42 @@ dnl # See if we have Git. - dnl # - AC_CHECK_PROG(GIT, git, yes, no) - -+#### libtool stuff #### -+ -+dnl set this shit so it doesn't force CFLAGS... -+LTCFLAGS=" " -+ -+LT_PREREQ(2.2) -+LT_INIT([dlopen disable-static]) -+ -+dnl Unfortunately, even up to libtool 2.2.6a there is no way to know -+dnl exactly which version of libltdl is present in the system, so we -+dnl just assume that it's a working version as long as we have the -+dnl library and the header files. -+dnl -+dnl As an extra safety device, check for lt_dladvise_init() which is -+dnl only implemented in libtool 2.x, and refine as we go if we have -+dnl refined requirements. -+dnl -+dnl Check the header files first since the system may have a -+dnl libltdl.so for runtime, but no headers, and we want to bail out as -+dnl soon as possible. -+dnl -+dnl We don't need any special variable for this though, since the user -+dnl can give the proper place to find libltdl through the standard -+dnl variables like LDFLAGS and CPPFLAGS. -+ -+AC_CHECK_HEADER([ltdl.h], -+ [AC_CHECK_LIB([ltdl], [lt_dladvise_init], [LIBLTDL=-lltdl], [LIBLTDL=])], -+ [LIBLTDL=]) -+ -+AS_IF([test "x$LIBLTDL" = "x"], -+ [AC_MSG_ERROR([Unable to find libltdl version 2. Makes sure you have libtool 2.2 or later installed.])]) -+AC_SUBST([LIBLTDL]) -+LTDL_SUBDIRS= -+INCLTDL=-DWITH_SYSTEM_LTDL -+AC_SUBST(LTDL_SUBDIRS) -+ - dnl Put this in later, when all distributed modules use autoconf. - dnl AC_ARG_WITH(disablemodulefoo, - dnl [ --without-rlm_foo Disables module compilation. Module list:] --- -2.7.4 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-libtool-do-not-use-jlibtool.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-libtool-do-not-use-jlibtool.patch deleted file mode 100644 index 1954586b2b..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-libtool-do-not-use-jlibtool.patch +++ /dev/null @@ -1,160 +0,0 @@ -From 16bf899447fc1524ffc3c79e1d35380e5285a552 Mon Sep 17 00:00:00 2001 -From: Jackie Huang -Date: Thu, 7 Jan 2016 22:37:30 -0800 -Subject: [PATCH] libtool: do not use jlibtool - -jlibtool is hardcoded to be used but we need to use -our libtool, so fix the makfiles to make it compatible -with our libtool. - -Upstream-Status: Inappropriate [oe specific] - -Signed-off-by: Jackie Huang -Signed-off-by: Yi Zhao ---- - Make.inc.in | 4 ++-- - scripts/boiler.mk | 2 ++ - scripts/install.mk | 14 +++++++------- - scripts/libtool.mk | 22 ++++++++++++++++------ - 4 files changed, 27 insertions(+), 15 deletions(-) - -diff --git a/Make.inc.in b/Make.inc.in -index 7a77625..fd8aa3e 100644 ---- a/Make.inc.in -+++ b/Make.inc.in -@@ -57,7 +57,7 @@ CPPFLAGS = @CPPFLAGS@ - LIBPREFIX = @LIBPREFIX@ - EXEEXT = @EXEEXT@ - --LIBTOOL = JLIBTOOL -+LIBTOOL = @LIBTOOL@ - ACLOCAL = @ACLOCAL@ - AUTOCONF = @AUTOCONF@ - AUTOHEADER = @AUTOHEADER@ -@@ -163,7 +163,7 @@ ANALYZE.c := @clang_path@ - # - ifeq "$(USE_SHARED_LIBS)" "yes" - TESTBINDIR = ./$(BUILD_DIR)/bin/local -- TESTBIN = FR_LIBRARY_PATH=./build/lib/.libs $(JLIBTOOL) --quiet --mode=execute $(TESTBINDIR) -+ TESTBIN = FR_LIBRARY_PATH=./build/lib/.libs $(LIBTOOL) --quiet --mode=execute $(TESTBINDIR) - else - TESTBINDIR = ./$(BUILD_DIR)/bin - TESTBIN = ./$(BUILD_DIR)/bin -diff --git a/scripts/boiler.mk b/scripts/boiler.mk -index bccec5e..926a13e 100644 ---- a/scripts/boiler.mk -+++ b/scripts/boiler.mk -@@ -266,6 +266,7 @@ define COMPILE_C_CMDS - $(Q)$(ECHO) CC $< - $(Q)$(strip ${COMPILE.c} -o $@ -c -MD ${CPPFLAGS} ${CFLAGS} ${SRC_CFLAGS} ${INCDIRS} \ - $(addprefix -I, ${SRC_INCDIRS}) ${SRC_DEFS} ${DEFS} $<) -+ ${Q}mv $(dir $@)/.libs/$(notdir $*.d) ${BUILD_DIR}/objs/$*.d - endef - else - # -@@ -281,6 +282,7 @@ define COMPILE_C_CMDS - $(Q)cppcheck --enable=style -q ${CHECKFLAGS} $(filter -isystem%,${SRC_CFLAGS}) \ - $(filter -I%,${SRC_CFLAGS}) $(filter -D%,${SRC_CFLAGS}) ${INCDIRS} \ - $(addprefix -I,${SRC_INCDIRS}) ${SRC_DEFS} ${DEFS} --suppress=variableScope --suppress=invalidscanf $< -+ ${Q}mv $(dir $@)/.libs/$(notdir $*.d) ${BUILD_DIR}/objs/$*.d - endef - endif - -diff --git a/scripts/install.mk b/scripts/install.mk -index 9164115..e38c1ed 100644 ---- a/scripts/install.mk -+++ b/scripts/install.mk -@@ -46,7 +46,7 @@ define ADD_INSTALL_RULE.exe - install: $${${1}_INSTALLDIR}/$(notdir ${1}) - - # Install executable ${1} -- $${${1}_INSTALLDIR}/$(notdir ${1}): ${JLIBTOOL} $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR} -+ $${${1}_INSTALLDIR}/$(notdir ${1}): ${LIBTOOL} $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR} - @$(ECHO) INSTALL ${1} - $(Q)$${PROGRAM_INSTALL} -c -m 755 $${BUILD_DIR}/bin/${1} $${${1}_INSTALLDIR}/ - $(Q)$${${1}_POSTINSTALL} -@@ -65,7 +65,7 @@ define ADD_INSTALL_RULE.a - install: $${${1}_INSTALLDIR}/$(notdir ${1}) - - # Install static library ${1} -- $${${1}_INSTALLDIR}/$(notdir ${1}): ${JLIBTOOL} ${1} | $${${1}_INSTALLDIR} -+ $${${1}_INSTALLDIR}/$(notdir ${1}): ${LIBTOOL} ${1} | $${${1}_INSTALLDIR} - @$(ECHO) INSTALL ${1} - $(Q)$${PROGRAM_INSTALL} -c -m 755 $${BUILD_DIR}/lib/${1} $${${1}_INSTALLDIR}/ - $(Q)$${${1}_POSTINSTALL} -@@ -87,9 +87,9 @@ define ADD_INSTALL_RULE.la - install: $${${1}_INSTALLDIR}/$(notdir ${1}) - - # Install libtool library ${1} -- $${${1}_INSTALLDIR}/$(notdir ${1}): ${JLIBTOOL} $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR} -+ $${${1}_INSTALLDIR}/$(notdir ${1}): ${LIBTOOL} $${${1}_BUILD}/${1} | $${${1}_INSTALLDIR} - @$(ECHO) INSTALL ${1} -- $(Q)$${PROGRAM_INSTALL} -c -m 755 $${LOCAL_FLAGS_MIN} $${BUILD_DIR}/lib/${1} $${${1}_INSTALLDIR}/ -+ $(Q)$${PROGRAM_INSTALL} -c -m 755 $${BUILD_DIR}/lib/${1} $${${1}_INSTALLDIR}/ - $(Q)$${${1}_POSTINSTALL} - - endef -@@ -107,7 +107,7 @@ define ADD_INSTALL_RULE.man - install: ${2}/$(notdir ${1}) - - # Install manual page ${1} -- ${2}/$(notdir ${1}): ${JLIBTOOL} ${1} | ${2} -+ ${2}/$(notdir ${1}): ${LIBTOOL} ${1} | ${2} - @$(ECHO) INSTALL $(notdir ${1}) - $(Q)$${PROGRAM_INSTALL} -c -m 644 ${1} ${2}/ - -@@ -122,9 +122,9 @@ endef - define ADD_INSTALL_RULE.dir - # Install directory - .PHONY: ${1} -- ${1}: ${JLIBTOOL} -+ ${1}: ${LIBTOOL} - @$(ECHO) INSTALL -d -m 755 ${1} -- $(Q)$${PROGRAM_INSTALL} -d -m 755 ${1} -+ $(Q)$${INSTALL} -d -m 755 ${1} - endef - - -diff --git a/scripts/libtool.mk b/scripts/libtool.mk -index 57915e1..2cb2f7d 100644 ---- a/scripts/libtool.mk -+++ b/scripts/libtool.mk -@@ -55,7 +55,9 @@ ifeq "${LIBTOOL}" "JLIBTOOL" - # Tell GNU Make to use this value, rather than anything specified - # on the command line. - override LIBTOOL := ${JLIBTOOL} --endif # else we're not using jlibtool -+else # else we're not using jlibtool -+ all install: ${LIBTOOL} -+endif - - # When using libtool, it produces a '.libs' directory. Ensure that it - # is removed on "make clean", too. -@@ -69,11 +71,19 @@ clean: .libs_clean - # Re-define compilers and linkers - # - OBJ_EXT = lo --COMPILE.c = ${LIBTOOL} --silent --mode=compile ${CC} --COMPILE.cxx = ${LIBTOOL} --mode=compile ${CXX} --LINK.c = ${LIBTOOL} --silent --mode=link ${CC} --LINK.cxx = ${LIBTOOL} --mode=link ${CXX} --PROGRAM_INSTALL = ${LIBTOOL} --silent --mode=install ${INSTALL} -+ifeq "${LIBTOOL}" "JLIBTOOL" -+ COMPILE.c = ${LIBTOOL} --silent --mode=compile ${CC} -+ COMPILE.cxx = ${LIBTOOL} --mode=compile ${CXX} -+ LINK.c = ${LIBTOOL} --silent --mode=link ${CC} -+ LINK.cxx = ${LIBTOOL} --mode=link ${CXX} -+ PROGRAM_INSTALL = ${LIBTOOL} --silent --mode=install ${INSTALL} -+else -+ COMPILE.c = ${LIBTOOL} --mode=compile --tag=CC ${CC} -+ COMPILE.cxx = ${LIBTOOL} --mode=compile --tag=CC ${CXX} -+ LINK.c = ${LIBTOOL} --mode=link --tag=CC ${CC} -module -export-dynamic -+ LINK.cxx = ${LIBTOOL} --mode=link --tag=CC ${CXX} -module -export-dynamic -+ PROGRAM_INSTALL = ${LIBTOOL} --mode=install ${INSTALL} -+endif - - - # LIBTOOL_ENDINGS - Given a library ending in ".a" or ".so", replace that --- -2.10.2 - diff --git a/meta-networking/recipes-connectivity/freeradius/files/freeradius-rlm_python-add-PY_INC_DIR.patch b/meta-networking/recipes-connectivity/freeradius/files/freeradius-rlm_python-add-PY_INC_DIR.patch deleted file mode 100644 index 675940dd6c..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/files/freeradius-rlm_python-add-PY_INC_DIR.patch +++ /dev/null @@ -1,33 +0,0 @@ -From a0bf65e04d2bbd3271cab94bd5ac93f8e877bfc5 Mon Sep 17 00:00:00 2001 -From: Jackie Huang -Date: Wed, 27 Jan 2016 05:07:19 -0500 -Subject: [PATCH] rlm_python: add PY_INC_DIR in search dir - -Upstream-Status: Pending - -configure option --with-rlm-python-include-dir is used to set -PY_INC_DIR which is never used and it fails to find Python.h, -so add it into search dir to fix it. - -Signed-off-by: Jackie Huang -Signed-off-by: Yi Zhao ---- - src/modules/rlm_python/configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/modules/rlm_python/configure.ac b/src/modules/rlm_python/configure.ac -index 831a33a..c3792d8 100644 ---- a/src/modules/rlm_python/configure.ac -+++ b/src/modules/rlm_python/configure.ac -@@ -93,7 +93,7 @@ if test x$with_[]modname != xno; then - - old_CFLAGS=$CFLAGS - CFLAGS="$CFLAGS $PY_CFLAGS" -- smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION" -+ smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION $PY_INC_DIR" - FR_SMART_CHECK_INCLUDE(Python.h) - CFLAGS=$old_CFLAGS - --- -2.10.2 - diff --git a/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.21.bb b/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.21.bb deleted file mode 100644 index b459412e04..0000000000 --- a/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.21.bb +++ /dev/null @@ -1,284 +0,0 @@ -DESCRIPTION = "FreeRADIUS is an Internet authentication daemon, which implements the RADIUS \ -protocol, as defined in RFC 2865 (and others). It allows Network Access \ -Servers (NAS boxes) to perform authentication for dial-up users. There are \ -also RADIUS clients available for Web servers, firewalls, Unix logins, and \ -more. Using RADIUS allows authentication and authorization for a network to \ -be centralized, and minimizes the amount of re-configuration which has to be \ -done when adding or deleting new users." - -SUMMARY = "High-performance and highly configurable RADIUS server" -HOMEPAGE = "http://www.freeradius.org/" -SECTION = "System/Servers" -LICENSE = "GPL-2.0-only & LGPL-2.0-or-later" -LIC_FILES_CHKSUM = "file://LICENSE;md5=eb723b61539feef013de476e68b5c50a" -DEPENDS = "openssl-native openssl libidn libtool libpcap libtalloc" - -SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.0.x;lfs=0;;protocol=https \ - file://freeradius \ - file://volatiles.58_radiusd \ - file://freeradius-enble-user-in-conf.patch \ - file://freeradius-configure.ac-allow-cross-compilation.patch \ - file://freeradius-libtool-detection.patch \ - file://freeradius-configure.ac-add-option-for-libcap.patch \ - file://freeradius-avoid-searching-host-dirs.patch \ - file://freeradius-rlm_python-add-PY_INC_DIR.patch \ - file://freeradius-libtool-do-not-use-jlibtool.patch \ - file://freeradius-fix-quoting-for-BUILT_WITH.patch \ - file://freeradius-fix-error-for-expansion-of-macro.patch \ - file://0001-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch \ - file://0001-raddb-certs-Makefile-fix-the-existed-certificate-err.patch \ - file://0001-raddb-certs-Makefile-fix-the-occasional-verification.patch \ - file://0001-workaround-error-with-autoconf-2.7.patch \ - file://radiusd.service \ - file://radiusd-volatiles.conf \ - file://check-openssl-cmds-in-script-bootstrap.patch \ - file://0001-version.c-don-t-print-build-flags.patch \ -" - -raddbdir="${sysconfdir}/${MLPREFIX}raddb" - -SRCREV = "af428abda249b2279ba0582180985a9f6f4a144a" - -CVE_CHECK_IGNORE = "\ - CVE-2002-0318 \ - CVE-2011-4966 \ -" - -PARALLEL_MAKE = "" - -S = "${WORKDIR}/git" - -LDFLAGS:append:powerpc = " -latomic" -LDFLAGS:append:mipsarch = " -latomic" -LDFLAGS:append:armv5 = " -latomic" - -EXTRA_OECONF = " --enable-strict-dependencies \ - --with-docdir=${docdir}/freeradius-${PV} \ - --with-openssl-includes=${STAGING_INCDIR} \ - --with-openssl-libraries=${STAGING_LIBDIR} \ - --with-raddbdir=${raddbdir} \ - --without-rlm_ippool \ - --without-rlm_cache_memcached \ - --without-rlm_counter \ - --without-rlm_couchbase \ - --without-rlm_dbm \ - --without-rlm_eap_tnc \ - --without-rlm_eap_ikev2 \ - --without-rlm_opendirectory \ - --without-rlm_redis \ - --without-rlm_rediswho \ - --without-rlm_sql_db2 \ - --without-rlm_sql_firebird \ - --without-rlm_sql_freetds \ - --without-rlm_sql_iodbc \ - --without-rlm_sql_oracle \ - --without-rlm_sql_sybase \ - --without-rlm_sql_mongo \ - --without-rlm_sqlhpwippool \ - --without-rlm_securid \ - --without-rlm_unbound \ - --without-rlm_python \ - ac_cv_path_PERL=${bindir}/perl \ - ax_cv_cc_builtin_choose_expr=no \ - ax_cv_cc_builtin_types_compatible_p=no \ - ax_cv_cc_builtin_bswap64=no \ - ax_cv_cc_bounded_attribute=no \ -" - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \ - pcre libcap \ - openssl rlm-eap-fast rlm-eap-pwd \ -" - -PACKAGECONFIG[krb5] = "--with-rlm_krb5,--without-rlm_krb5,krb5" -PACKAGECONFIG[pam] = "--with-rlm_pam,--without-rlm_pam,libpam" -PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap" -PACKAGECONFIG[ldap] = "--with-rlm_ldap,--without-rlm_ldap,openldap" -PACKAGECONFIG[mysql] = "--with-rlm_sql_mysql,--without-rlm_sql_mysql,mysql5" -PACKAGECONFIG[sqlite] = "--with-rlm_sql_sqlite,--without-rlm_sql_sqlite,sqlite3" -PACKAGECONFIG[unixodbc] = "--with-rlm_sql_unixodbc,--without-rlm_sql_unixodbc,unixodbc" -PACKAGECONFIG[postgresql] = "--with-rlm_sql_postgresql,--without-rlm_sql_postgresql,postgresql" -PACKAGECONFIG[pcre] = "--with-pcre,--without-pcre,libpcre" -PACKAGECONFIG[perl] = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl --with-rlm_perl,--without-rlm_perl,perl-native perl,perl" -PACKAGECONFIG[python3] = "--with-rlm_python3 --with-rlm-python3-bin=${STAGING_BINDIR_NATIVE}/python3-native/python3 --with-rlm-python3-include-dir=${STAGING_INCDIR}/${PYTHON_DIR},--without-rlm_python3,python3-native python3" -PACKAGECONFIG[rest] = "--with-rlm_rest,--without-rlm_rest,curl json-c" -PACKAGECONFIG[ruby] = "--with-rlm_ruby,--without-rlm_ruby,ruby" -PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl" -PACKAGECONFIG[rlm-eap-fast] = "--with-rlm_eap_fast, --without-rlm_eap_fast" -PACKAGECONFIG[rlm-eap-pwd] = "--with-rlm_eap_pwd, --without-rlm_eap_pwd" - -inherit useradd autotools-brokensep update-rc.d systemd multilib_script multilib_header - -MULTILIB_SCRIPTS = "${PN}:${sbindir}/checkrad" - -# This is not a cpan or python based package, but it needs some definitions -# from cpan-base and python3-dir bbclasses for building rlm_perl and rlm_python -# correctly. -inherit cpan-base python3-dir - -# The modules subdirs also need to be processed by autoreconf. Use autogen.sh -# in order to handle the subdirs correctly. -do_configure () { - ./autogen.sh - - # the configure of rlm_perl needs this to get correct - # mod_cflags and mod_ldflags - if ${@bb.utils.contains('PACKAGECONFIG', 'perl', 'true', 'false', d)}; then - export PERL5LIB="${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}" - fi - - oe_runconf - - # we don't need dhcpclient - sed -i -e 's/dhcpclient.mk//' ${S}/src/modules/proto_dhcp/all.mk -} - -INITSCRIPT_NAME = "radiusd" - -SYSTEMD_SERVICE:${PN} = "radiusd.service" - -USERADD_PACKAGES = "${PN}" -USERADD_PARAM:${PN} = "--system --no-create-home --shell /bin/false --user-group radiusd" - -do_install() { - rm -rf ${D} - mkdir -p ${D}/${sysconfdir}/logrotate.d - mkdir -p ${D}/${sysconfdir}/pam.d - mkdir -p ${D}/${sysconfdir}/init.d - mkdir -p ${D}/${localstatedir}/lib/radiusd - mkdir -p ${D}${sysconfdir}/default/volatiles - - export LD_LIBRARY_PATH=${D}/${libdir} - oe_runmake install R=${D} INSTALLSTRIP="" - - # remove unsupported config files - rm -f ${D}/${raddbdir}/experimental.conf - - # remove scripts that required Perl(DBI) - rm -rf ${D}/${bindir}/radsqlrelay - - cp -f ${WORKDIR}/freeradius ${D}/etc/init.d/radiusd - rm -f ${D}/${sbindir}/rc.radiusd - chmod +x ${D}/${sysconfdir}/init.d/radiusd - rm -rf ${D}/${localstatedir}/run/ - rm -rf ${D}/${localstatedir}/log/ - install -m 0644 ${WORKDIR}/volatiles.58_radiusd ${D}${sysconfdir}/default/volatiles/58_radiusd - - chown -R radiusd:radiusd ${D}/${raddbdir} - chown -R radiusd:radiusd ${D}/${localstatedir}/lib/radiusd - - # For systemd - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${WORKDIR}/radiusd.service ${D}${systemd_unitdir}/system - sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ - -e 's,@SBINDIR@,${sbindir},g' \ - -e 's,@STATEDIR@,${localstatedir},g' \ - -e 's,@SYSCONFDIR@,${sysconfdir},g' \ - ${D}${systemd_unitdir}/system/radiusd.service - - install -d ${D}${sysconfdir}/tmpfiles.d/ - install -m 0644 ${WORKDIR}/radiusd-volatiles.conf ${D}${sysconfdir}/tmpfiles.d/radiusd.conf - fi - oe_multilib_header freeradius/autoconf.h - oe_multilib_header freeradius/missing.h - oe_multilib_header freeradius/radpaths.h -} - -# This is only needed when we install/update on a running target. -# -pkg_postinst:${PN} () { - if [ -z "$D" ]; then - if command -v systemd-tmpfiles >/dev/null; then - # create /var/log/radius, /var/run/radiusd - systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/radiusd.conf - elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then - ${sysconfdir}/init.d/populate-volatile.sh update - fi - - # Fix ownership for /etc/raddb/*, /var/lib/radiusd - chown -R radiusd:radiusd ${raddbdir} - chown -R radiusd:radiusd ${localstatedir}/lib/radiusd - - # for radiusd.service with multilib - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - install -d ${sysconfdir}/sysconfig - echo "MLPREFIX=${MLPREFIX}" > ${sysconfdir}/sysconfig/radiusd - fi - else - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - install -d $D${sysconfdir}/sysconfig - echo "MLPREFIX=${MLPREFIX}" > $D${sysconfdir}/sysconfig/radiusd - fi - fi -} - -pkg_postrm:${PN} () { - # only try to remove ${sysconfdir}/sysconfig/radiusd for systemd - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'false', 'true', d)}; then - exit 0 - fi - - if [ -d ${sysconfdir}/raddb ]; then - exit 0 - fi - for variant in ${MULTILIB_GLOBAL_VARIANTS}; do - if [ -d ${sysconfdir}/${variant}-raddb ]; then - exit 0 - fi - done - - rm -f ${sysconfdir}/sysconfig/radiusd - rmdir --ignore-fail-on-non-empty ${sysconfdir}/sysconfig -} - -# We really need the symlink :( -INSANE_SKIP:${PN} = "dev-so" -INSANE_SKIP:${PN}-krb5 = "dev-so" -INSANE_SKIP:${PN}-ldap = "dev-so" -INSANE_SKIP:${PN}-mysql = "dev-so" -INSANE_SKIP:${PN}-perl = "dev-so" -INSANE_SKIP:${PN}-postgresql = "dev-so" -INSANE_SKIP:${PN}-python = "dev-so" -INSANE_SKIP:${PN}-unixodbc = "dev-so" - -PACKAGES =+ "${PN}-utils ${PN}-ldap ${PN}-krb5 ${PN}-perl \ - ${PN}-python ${PN}-mysql ${PN}-postgresql ${PN}-unixodbc" - -FILES:${PN}-utils = "${bindir}/*" - -FILES:${PN}-ldap = "${libdir}/rlm_ldap.so* \ - ${raddbdir}/mods-available/ldap \ -" - -FILES:${PN}-krb5 = "${libdir}/rlm_krb5.so* \ - ${raddbdir}/mods-available/krb5 \ -" - -FILES:${PN}-perl = "${libdir}/rlm_perl.so* \ - ${raddbdir}/mods-config/perl \ - ${raddbdir}/mods-available/perl \ -" - -FILES:${PN}-python = "${libdir}/rlm_python3.so* \ - ${raddbdir}/mods-config/python3 \ - ${raddbdir}/mods-available/python3 \ -" - -FILES:${PN}-mysql = "${libdir}/rlm_sql_mysql.so* \ - ${raddbdir}/mods-config/sql/*/mysql \ - ${raddbdir}/mods-available/sql \ -" - -FILES:${PN}-postgresql = "${libdir}/rlm_sql_postgresql.so* \ - ${raddbdir}/mods-config/sql/*/postgresql \ -" - -FILES:${PN}-unixodbc = "${libdir}/rlm_sql_unixodbc.so*" - -FILES:${PN} =+ "${libdir}/rlm_*.so* ${libdir}/proto_*so*" - -RDEPENDS:${PN} += "perl" -RDEPENDS:${PN}-utils = "${PN} perl" - -CLEANBROKEN = "1" diff --git a/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb b/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb new file mode 100644 index 0000000000..4a23c9d906 --- /dev/null +++ b/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb @@ -0,0 +1,290 @@ +DESCRIPTION = "FreeRADIUS is an Internet authentication daemon, which implements the RADIUS \ +protocol, as defined in RFC 2865 (and others). It allows Network Access \ +Servers (NAS boxes) to perform authentication for dial-up users. There are \ +also RADIUS clients available for Web servers, firewalls, Unix logins, and \ +more. Using RADIUS allows authentication and authorization for a network to \ +be centralized, and minimizes the amount of re-configuration which has to be \ +done when adding or deleting new users." + +SUMMARY = "High-performance and highly configurable RADIUS server" +HOMEPAGE = "http://www.freeradius.org/" +SECTION = "System/Servers" +LICENSE = "GPL-2.0-only & LGPL-2.0-or-later" +LIC_FILES_CHKSUM = "file://LICENSE;md5=eb723b61539feef013de476e68b5c50a" +DEPENDS = "openssl-native openssl libidn libtool libpcap libtalloc" + +SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.0.x;lfs=0;;protocol=https \ + file://freeradius \ + file://volatiles.58_radiusd \ + file://radiusd.service \ + file://radiusd-volatiles.conf \ + file://0001-Add-autogen.sh.patch \ + file://0002-Enable-and-change-user-and-group-of-freeradius-serve.patch \ + file://0003-configure.ac-allow-cross-compilation.patch \ + file://0004-Fix-libtool-detection.patch \ + file://0005-configure.ac-add-option-for-libcap.patch \ + file://0006-Avoid-searching-host-dirs.patch \ + file://0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch \ + file://0008-libtool-do-not-use-jlibtool.patch \ + file://0009-Fix-quoting-for-BUILD_WITH.patch \ + file://0010-fix-error-for-expansion-of-macro-in-thread.h.patch \ + file://0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch \ + file://0012-raddb-certs-Makefile-fix-the-existed-certificate-err.patch \ + file://0013-raddb-certs-Makefile-fix-the-occasional-verification.patch \ + file://0014-Workaround-error-with-autoconf-2.7.patch \ + file://0015-bootstrap-check-commands-of-openssl-exist.patch \ + file://0016-version.c-don-t-print-build-flags.patch \ + file://0017-add-python.m4-for-detecting-python-3.10.patch \ +" + +raddbdir = "${sysconfdir}/${MLPREFIX}raddb" + +SRCREV = "d956f683d37ea40e7977cc5907361f3e6988a439" + +CVE_CHECK_IGNORE = "\ + CVE-2002-0318 \ + CVE-2011-4966 \ +" + +PARALLEL_MAKE = "" + +S = "${WORKDIR}/git" + +LDFLAGS:append:powerpc = " -latomic" +LDFLAGS:append:mipsarch = " -latomic" +LDFLAGS:append:armv5 = " -latomic" + +EXTRA_OECONF = " --enable-strict-dependencies \ + --with-docdir=${docdir}/freeradius-${PV} \ + --with-openssl-includes=${STAGING_INCDIR} \ + --with-openssl-libraries=${STAGING_LIBDIR} \ + --with-raddbdir=${raddbdir} \ + --without-rlm_ippool \ + --without-rlm_cache_memcached \ + --without-rlm_counter \ + --without-rlm_couchbase \ + --without-rlm_dbm \ + --without-rlm_eap_tnc \ + --without-rlm_eap_ikev2 \ + --without-rlm_opendirectory \ + --without-rlm_redis \ + --without-rlm_rediswho \ + --without-rlm_sql_db2 \ + --without-rlm_sql_firebird \ + --without-rlm_sql_freetds \ + --without-rlm_sql_iodbc \ + --without-rlm_sql_oracle \ + --without-rlm_sql_sybase \ + --without-rlm_sql_mongo \ + --without-rlm_sqlhpwippool \ + --without-rlm_securid \ + --without-rlm_unbound \ + --without-rlm_python \ + ac_cv_path_PERL=${bindir}/perl \ + ax_cv_cc_builtin_choose_expr=no \ + ax_cv_cc_builtin_types_compatible_p=no \ + ax_cv_cc_builtin_bswap64=no \ + ax_cv_cc_bounded_attribute=no \ +" + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \ + pcre libcap \ + openssl rlm-eap-fast rlm-eap-pwd \ +" + +PACKAGECONFIG[krb5] = "--with-rlm_krb5,--without-rlm_krb5,krb5" +PACKAGECONFIG[pam] = "--with-rlm_pam,--without-rlm_pam,libpam" +PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap" +PACKAGECONFIG[ldap] = "--with-rlm_ldap,--without-rlm_ldap,openldap" +PACKAGECONFIG[mysql] = "--with-rlm_sql_mysql,--without-rlm_sql_mysql,mysql5" +PACKAGECONFIG[sqlite] = "--with-rlm_sql_sqlite,--without-rlm_sql_sqlite,sqlite3" +PACKAGECONFIG[unixodbc] = "--with-rlm_sql_unixodbc,--without-rlm_sql_unixodbc,unixodbc" +PACKAGECONFIG[postgresql] = "--with-rlm_sql_postgresql,--without-rlm_sql_postgresql,postgresql" +PACKAGECONFIG[pcre] = "--with-pcre,--without-pcre,libpcre" +PACKAGECONFIG[perl] = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl --with-rlm_perl,--without-rlm_perl,perl-native perl,perl" +PACKAGECONFIG[python3] = "--with-rlm_python3 --with-rlm-python3-bin=${STAGING_BINDIR_NATIVE}/python3-native/python3 --with-rlm-python3-include-dir=${STAGING_INCDIR}/${PYTHON_DIR},--without-rlm_python3,python3-native python3" +PACKAGECONFIG[rest] = "--with-rlm_rest,--without-rlm_rest,curl json-c" +PACKAGECONFIG[ruby] = "--with-rlm_ruby,--without-rlm_ruby,ruby" +PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl" +PACKAGECONFIG[rlm-eap-fast] = "--with-rlm_eap_fast, --without-rlm_eap_fast" +PACKAGECONFIG[rlm-eap-pwd] = "--with-rlm_eap_pwd, --without-rlm_eap_pwd" + +inherit useradd autotools-brokensep update-rc.d systemd multilib_script multilib_header + +MULTILIB_SCRIPTS = "${PN}:${sbindir}/checkrad" + +# This is not a cpan or python based package, but it needs some definitions +# from cpan-base and python3-dir bbclasses for building rlm_perl and rlm_python +# correctly. +inherit cpan-base python3-dir + +# The modules subdirs also need to be processed by autoreconf. Use autogen.sh +# in order to handle the subdirs correctly. +do_configure() { + ./autogen.sh + + # the configure of rlm_perl needs this to get correct + # mod_cflags and mod_ldflags + if ${@bb.utils.contains('PACKAGECONFIG', 'perl', 'true', 'false', d)}; then + export PERL5LIB="${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}" + fi + + oe_runconf + + # we don't need dhcpclient + sed -i -e 's/dhcpclient.mk//' ${S}/src/modules/proto_dhcp/all.mk +} + +INITSCRIPT_NAME = "radiusd" + +SYSTEMD_SERVICE:${PN} = "radiusd.service" + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM:${PN} = "--system --no-create-home --shell /bin/false --user-group radiusd" + +do_install() { + rm -rf ${D} + install -d ${D}/${sysconfdir}/logrotate.d + install -d ${D}/${sysconfdir}/pam.d + install -d ${D}/${localstatedir}/lib/radiusd + + export LD_LIBRARY_PATH=${D}/${libdir} + oe_runmake install R=${D} INSTALLSTRIP="" + + # remove unsupported config files + rm -f ${D}/${raddbdir}/experimental.conf + + # remove scripts that required Perl(DBI) + rm -rf ${D}/${bindir}/radsqlrelay + + rm -f ${D}/${sbindir}/rc.radiusd + rm -rf ${D}/${localstatedir}/run/ + rm -rf ${D}/${localstatedir}/log/ + + chown -R radiusd:radiusd ${D}/${raddbdir} + chown -R radiusd:radiusd ${D}/${localstatedir}/lib/radiusd + + # For sysvinit + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/init.d + install -d ${D}${sysconfdir}/default/volatiles + install -m 0755 ${WORKDIR}/freeradius ${D}/etc/init.d/radiusd + install -m 0644 ${WORKDIR}/volatiles.58_radiusd ${D}${sysconfdir}/default/volatiles/58_radiusd + fi + + # For systemd + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/radiusd.service ${D}${systemd_unitdir}/system + sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ + -e 's,@SBINDIR@,${sbindir},g' \ + -e 's,@STATEDIR@,${localstatedir},g' \ + -e 's,@SYSCONFDIR@,${sysconfdir},g' \ + ${D}${systemd_unitdir}/system/radiusd.service + + install -d ${D}${sysconfdir}/tmpfiles.d/ + install -m 0644 ${WORKDIR}/radiusd-volatiles.conf ${D}${sysconfdir}/tmpfiles.d/radiusd.conf + fi + + oe_multilib_header freeradius/autoconf.h + oe_multilib_header freeradius/missing.h + oe_multilib_header freeradius/radpaths.h +} + +# This is only needed when we install/update on a running target. +# +pkg_postinst:${PN} () { + if [ -z "$D" ]; then + if command -v systemd-tmpfiles >/dev/null; then + # create /var/log/radius, /var/run/radiusd + systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/radiusd.conf + elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then + ${sysconfdir}/init.d/populate-volatile.sh update + fi + + # Fix ownership for /etc/raddb/*, /var/lib/radiusd + chown -R radiusd:radiusd ${raddbdir} + chown -R radiusd:radiusd ${localstatedir}/lib/radiusd + + # for radiusd.service with multilib + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${sysconfdir}/sysconfig + echo "MLPREFIX=${MLPREFIX}" > ${sysconfdir}/sysconfig/radiusd + fi + else + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d $D${sysconfdir}/sysconfig + echo "MLPREFIX=${MLPREFIX}" > $D${sysconfdir}/sysconfig/radiusd + fi + fi +} + +pkg_postrm:${PN} () { + # only try to remove ${sysconfdir}/sysconfig/radiusd for systemd + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'false', 'true', d)}; then + exit 0 + fi + + if [ -d ${sysconfdir}/raddb ]; then + exit 0 + fi + for variant in ${MULTILIB_GLOBAL_VARIANTS}; do + if [ -d ${sysconfdir}/${variant}-raddb ]; then + exit 0 + fi + done + + rm -f ${sysconfdir}/sysconfig/radiusd + rmdir --ignore-fail-on-non-empty ${sysconfdir}/sysconfig +} + +# We really need the symlink :( +INSANE_SKIP:${PN} = "dev-so" +INSANE_SKIP:${PN}-krb5 = "dev-so" +INSANE_SKIP:${PN}-ldap = "dev-so" +INSANE_SKIP:${PN}-mysql = "dev-so" +INSANE_SKIP:${PN}-perl = "dev-so" +INSANE_SKIP:${PN}-postgresql = "dev-so" +INSANE_SKIP:${PN}-python = "dev-so" +INSANE_SKIP:${PN}-unixodbc = "dev-so" + +PACKAGES =+ "${PN}-utils ${PN}-ldap ${PN}-krb5 ${PN}-perl \ + ${PN}-python ${PN}-mysql ${PN}-postgresql ${PN}-unixodbc" + +FILES:${PN}-utils = "${bindir}/*" + +FILES:${PN}-ldap = "${libdir}/rlm_ldap.so* \ + ${raddbdir}/mods-available/ldap \ +" + +FILES:${PN}-krb5 = "${libdir}/rlm_krb5.so* \ + ${raddbdir}/mods-available/krb5 \ +" + +FILES:${PN}-perl = "${libdir}/rlm_perl.so* \ + ${raddbdir}/mods-config/perl \ + ${raddbdir}/mods-available/perl \ +" + +FILES:${PN}-python = "${libdir}/rlm_python3.so* \ + ${raddbdir}/mods-config/python3 \ + ${raddbdir}/mods-available/python3 \ +" + +FILES:${PN}-mysql = "${libdir}/rlm_sql_mysql.so* \ + ${raddbdir}/mods-config/sql/*/mysql \ + ${raddbdir}/mods-available/sql \ +" + +FILES:${PN}-postgresql = "${libdir}/rlm_sql_postgresql.so* \ + ${raddbdir}/mods-config/sql/*/postgresql \ +" + +FILES:${PN}-unixodbc = "${libdir}/rlm_sql_unixodbc.so*" + +FILES:${PN} =+ "${libdir}/rlm_*.so* ${libdir}/proto_*so*" + +RDEPENDS:${PN} += "perl" +RDEPENDS:${PN}-utils = "${PN} perl" + +CLEANBROKEN = "1" -- cgit v1.2.3-54-g00ecf