added my Recipes
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
From 3be3b9a1345942d1578ec73efa9b2e3c41bd67c5 Mon Sep 17 00:00:00 2001
|
||||
From: Yi Zhao <yi.zhao@windriver.com>
|
||||
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 <yi.zhao@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
From 2a74c10836c0d2d19248ca40d113936f4a56b039 Mon Sep 17 00:00:00 2001
|
||||
From: "Roy.Li" <rongqing.li@windriver.com>
|
||||
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 <rongqing.li@windriver.com>
|
||||
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
From ba1390a80662ff2ab7bfda978cde7df9a871f6ae Mon Sep 17 00:00:00 2001
|
||||
From: Changqing Li <changqing.li@windriver.com>
|
||||
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 <jackie.huang@windriver.com>
|
||||
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
|
||||
|
||||
update to new version 3.0.17 to fix patch warning
|
||||
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
||||
---
|
||||
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 <krb5.h>]], [[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
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
From 5ba3d140842268cbbdd983266efecb1fba5bdd59 Mon Sep 17 00:00:00 2001
|
||||
From: Changqing Li <changqing.li@windriver.com>
|
||||
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 <sen.zhang@windriver.com>
|
||||
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
|
||||
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
From 9548dc5e1a6c835cd4f387ba384d8f3f14c3fc8b Mon Sep 17 00:00:00 2001
|
||||
From: Changqing Li <changqing.li@windriver.com>
|
||||
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 <jackie.huang@windriver.com>
|
||||
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
||||
---
|
||||
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=<path>.])
|
||||
-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=<path>.])
|
||||
+ 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
|
||||
|
||||
@@ -0,0 +1,198 @@
|
||||
From 8fe25b30b6fbb3170705f4468eb4c92eef3a968f Mon Sep 17 00:00:00 2001
|
||||
From: Jackie Huang <jackie.huang@windriver.com>
|
||||
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 <jackie.huang@windriver.com>
|
||||
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
|
||||
---
|
||||
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 <mysql/mysql.h>])
|
||||
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
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
From e4ff7a2a9834e2589bc7bdda4b74f5bc962b15e6 Mon Sep 17 00:00:00 2001
|
||||
From: Jackie Huang <jackie.huang@windriver.com>
|
||||
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 <jackie.huang@windriver.com>
|
||||
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,160 @@
|
||||
From d0fa5b259c2dc942d0a43a9cf1bfc32f40c184f9 Mon Sep 17 00:00:00 2001
|
||||
From: Jackie Huang <jackie.huang@windriver.com>
|
||||
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 <jackie.huang@windriver.com>
|
||||
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
From 3e701d6274924adaed568e22af2362aa5af1f055 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Seebach <peter.seebach@windriver.com>
|
||||
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 <peter.seebach@windriver.com>
|
||||
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
From 30ce5ccd62446349d432ff65d3fe8d46872423c8 Mon Sep 17 00:00:00 2001
|
||||
From: Yi Zhao <yi.zhao@windriver.com>
|
||||
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 <yi.zhao@windriver.com>
|
||||
---
|
||||
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 <pthread.h>
|
||||
-# 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
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
From f0e764826e3a85488047f7f4e94ebf91460d2c12 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
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 <raj.khem@gmail.com>
|
||||
---
|
||||
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 <stdint.h>
|
||||
#include <stdbool.h>])
|
||||
if test "x$ac_cv_header_wbclient_h" != "xyes"; then
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
From 0f9f18fc330fe88080be13e43f300fbf7ba4a85a Mon Sep 17 00:00:00 2001
|
||||
From: Mingli Yu <mingli.yu@windriver.com>
|
||||
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 <mingli.yu@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,136 @@
|
||||
From bb1cb2ffc7a31c0a2bb2de51ef82d304b0a107c3 Mon Sep 17 00:00:00 2001
|
||||
From: Mingli Yu <mingli.yu@windriver.com>
|
||||
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 <mingli.yu@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
From c591da4a361496eec93625cf8c4f89bddfedaca7 Mon Sep 17 00:00:00 2001
|
||||
From: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
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 <hongxu.jia@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
From 78494ea005bd38324953b05176d6eb2c3f55af2c Mon Sep 17 00:00:00 2001
|
||||
From: Kai Kang <kai.kang@windriver.com>
|
||||
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 <kai.kang@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
From cbbb62ddda5c189c225f96bf6b599b3b3e8c8252 Mon Sep 17 00:00:00 2001
|
||||
From: Mingli Yu <mingli.yu@windriver.com>
|
||||
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 <mingli.yu@windriver.com>
|
||||
---
|
||||
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
|
||||
|
||||
@@ -0,0 +1,427 @@
|
||||
From f1418e1b46cb1cbd130935b76f5c78c577d1ad28 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Newton <matthew-git@newtoncomputing.co.uk>
|
||||
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 <yi.zhao@windriver.com>
|
||||
---
|
||||
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:
|
||||
+# <https://github.com/pypa/virtualenv/issues/118>
|
||||
+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
|
||||
|
||||
@@ -0,0 +1,110 @@
|
||||
#!/bin/sh
|
||||
# Start/stop the FreeRADIUS daemon.
|
||||
|
||||
### BEGIN INIT INFO
|
||||
# Provides: freeradius
|
||||
# Required-Start: $remote_fs $network $syslog
|
||||
# Should-Start: $time mysql slapd postgresql samba krb5-kdc
|
||||
# Required-Stop: $remote_fs $syslog
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Radius Daemon
|
||||
# Description: Extensible, configurable radius daemon
|
||||
### END INIT INFO
|
||||
|
||||
set -e
|
||||
|
||||
# Source function library.
|
||||
. /etc/init.d/functions
|
||||
|
||||
if [ -f /lib/lsb/init-functions ]; then
|
||||
. /lib/lsb/init-functions
|
||||
fi
|
||||
|
||||
PROG="radiusd"
|
||||
PROGRAM="/usr/sbin/radiusd"
|
||||
PIDFILE="/var/run/radiusd/radiusd.pid"
|
||||
DESCR="FreeRADIUS daemon"
|
||||
|
||||
if [ -r /etc/default/$PROG ]; then
|
||||
. /etc/default/$PROG
|
||||
fi
|
||||
|
||||
test -f $PROGRAM || exit 0
|
||||
|
||||
check_certs() {
|
||||
if [ ! -f /etc/raddb/certs/server.pem ]; then
|
||||
echo -n "Creating certificates for freeradius..."
|
||||
if sudo -u radiusd /etc/raddb/certs/bootstrap 1> /dev/null 2> /dev/null; then
|
||||
echo "done"
|
||||
else
|
||||
echo "failed!"
|
||||
fi
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
# /var/run may be a tmpfs
|
||||
if [ ! -d /var/run/radiusd ]; then
|
||||
mkdir -p /var/run/radiusd
|
||||
chown radiusd:radiusd /var/run/radiusd
|
||||
fi
|
||||
|
||||
if [ ! -d /var/log/radius ]; then
|
||||
mkdir -p /var/log/radius
|
||||
touch /var/log/radius/radius.log
|
||||
chown radiusd:radiusd /var/run/radius
|
||||
fi
|
||||
|
||||
if [ ! -f ${PIDFILE} ]; then
|
||||
touch ${PIDFILE}
|
||||
chown radiusd:radiusd ${PIDFILE}
|
||||
fi
|
||||
|
||||
export PATH="${PATH:+$PATH:}/usr/sbin:/sbin"
|
||||
|
||||
ret=0
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
check_certs
|
||||
echo -n "Starting $DESCR" "$PROG"
|
||||
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $PROGRAM -- $FREERADIUS_OPTIONS || ret=$?
|
||||
[ "$ret" == 0 ] && echo " Success" || echo " Failed"
|
||||
exit $ret
|
||||
;;
|
||||
stop)
|
||||
echo -n "Stopping $DESCR" "$PROG"
|
||||
if [ -f "$PIDFILE" ] ; then
|
||||
start-stop-daemon --stop --retry=TERM/30/KILL/5 --quiet --pidfile $PIDFILE || ret=$?
|
||||
else
|
||||
echo -n "$PIDFILE not found"
|
||||
ret=1
|
||||
fi
|
||||
[ "$ret" == 0 ] && echo " Success" || echo " Failed"
|
||||
;;
|
||||
status)
|
||||
status $PROGRAM;
|
||||
exit $?
|
||||
;;
|
||||
restart)
|
||||
$0 stop
|
||||
$0 start
|
||||
;;
|
||||
reload|force-reload)
|
||||
echo -n "Reloading $DESCR" "$PROG"
|
||||
if [ -f "$PIDFILE" ] ; then
|
||||
start-stop-daemon --stop --signal HUP --quiet --pidfile $PIDFILE || ret=$?
|
||||
else
|
||||
echo -n "$PIDFILE not found"
|
||||
ret=1
|
||||
fi
|
||||
[ "$ret" == 0 ] && echo " Success" || echo " Failed"
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 start|stop|status|restart|force-reload|reload"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
@@ -0,0 +1,2 @@
|
||||
d /var/log/radius 0755 radiusd radiusd -
|
||||
d /run/radiusd 0755 radiusd radiusd -
|
||||
@@ -0,0 +1,16 @@
|
||||
[Unit]
|
||||
Description=FreeRADIUS high performance RADIUS server.
|
||||
After=syslog.target network.target
|
||||
|
||||
[Service]
|
||||
Type=forking
|
||||
EnvironmentFile=-/etc/sysconfig/radiusd
|
||||
PIDFile=/run/radiusd/radiusd.pid
|
||||
ExecStartPre=-@BASE_BINDIR@/chown -R radiusd:radiusd /run/radiusd
|
||||
ExecStartPre=@SBINDIR@/radiusd -C
|
||||
ExecStart=@SBINDIR@/radiusd -d @SYSCONFDIR@/${MLPREFIX}raddb
|
||||
ExecReload=@SBINDIR@/radiusd -C
|
||||
ExecReload=@BASE_BINDIR@/kill -HUP $MAINPID
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,3 @@
|
||||
# <type> <owner> <group> <mode> <path> <linksource>
|
||||
d radiusd radiusd 0755 /var/run/radiusd none
|
||||
d radiusd radiusd 0755 /var/log/radius none
|
||||
Reference in New Issue
Block a user