added my Recipes

This commit is contained in:
2024-07-11 14:16:35 +02:00
parent 38bc4f53ac
commit 09b621d929
7118 changed files with 525762 additions and 3 deletions

View File

@@ -0,0 +1,40 @@
From 0aa127afa52fd265a4f1bbded1623201390ae96a Mon Sep 17 00:00:00 2001
From: Julien Rische <jrische@redhat.com>
Date: Thu, 17 Nov 2022 15:01:24 +0100
Subject: [PATCH] Fix aclocal.m4 syntax error for autoconf 2.72
An incorrect closure inside KRB5_AC_INET6 is innocuous with autoconf
versions up to 2.71, but will cause an error at configure time with
the forthcoming autoconf 2.72.
[ghudson@mit.edu: added more context to commit message]
ticket: 9077 (new)
tags: pullup
target_version: 1.20-next
target_version: 1.19-next
Upstream-Status: Backport [https://github.com/krb5/krb5/commit/d864d740d019fdf2c640460f2aa2760c7fa4d5e9]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/aclocal.m4 | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/aclocal.m4 b/src/aclocal.m4
index 9920476..3d66a87 100644
--- a/src/aclocal.m4
+++ b/src/aclocal.m4
@@ -409,8 +409,8 @@ else
[[struct sockaddr_in6 in;
AF_INET6;
IN6_IS_ADDR_LINKLOCAL(&in.sin6_addr);]])],
- [krb5_cv_inet6=yes], [krb5_cv_inet6=no])])
-fi
+ [krb5_cv_inet6=yes], [krb5_cv_inet6=no])
+fi])
AC_MSG_RESULT($krb5_cv_inet6)
if test "$krb5_cv_inet6" = no && test "$ac_cv_func_inet_ntop" = yes; then
AC_MSG_CHECKING(for IPv6 compile-time support with -DINET6)
--
2.40.0

View File

@@ -0,0 +1,29 @@
Modifies export-check.pl to use look for $ENV{'NM'} before
defaulting to using 'nm'
Upstream-Status: Pending
Signed-off-by: Amy Fong <amy.fong@windriver.com>
---
export-check.pl | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
Index: src/util/export-check.pl
===================================================================
--- src.orig/util/export-check.pl
+++ src/util/export-check.pl
@@ -38,7 +38,12 @@
my($exfile, $libfile) = @ARGV;
@missing = ();
-open NM, "nm -Dg --defined-only $libfile |" || die "can't run nm on $libfile: $!";
+if (defined($ENV{'NM'})) {
+ $nm = $ENV{'NM'};
+} else {
+ $nm = "nm";
+}
+open NM, "$nm -Dg --defined-only $libfile |" || die "can't run nm on $libfile: $!";
open EXPORT, "< $exfile" || die "can't read $exfile: $!";
@export = <EXPORT>;

View File

@@ -0,0 +1,48 @@
Subject: [PATCH] debian: suppress /usr/lib in krb5-config
Upstream-Status: Pending
Handel multi-arch suppressions
The patch is from debian.
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
src/build-tools/krb5-config.in | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/build-tools/krb5-config.in b/src/build-tools/krb5-config.in
index f6184da..637bad7 100755
--- a/src/build-tools/krb5-config.in
+++ b/src/build-tools/krb5-config.in
@@ -138,6 +138,7 @@ if test -n "$do_help"; then
echo " [--defktname] Show built-in default keytab name"
echo " [--defcktname] Show built-in default client keytab name"
echo " [--cflags] Compile time CFLAGS"
+ echo " [--deps] Include dependent libraries"
echo " [--libs] List libraries required to link [LIBRARIES]"
echo "Libraries:"
echo " krb5 Kerberos 5 application"
@@ -209,11 +210,14 @@ fi
if test -n "$do_libs"; then
# Assumes /usr/lib is the standard library directory everywhere...
- if test "$libdir" = /usr/lib; then
- libdirarg=
- else
- libdirarg="-L$libdir"
- fi
+ case $libdir in
+ /usr/lib*)
+ libdirarg=
+ ;;
+ *)
+ libdirarg="-L$libdir"
+ ;;
+ esac
# Ugly gross hack for our build tree
lib_flags=`echo $CC_LINK | sed -e 's/\$(CC)//' \
-e 's/\$(PURE)//' \
--
1.7.1

View File

@@ -0,0 +1,4 @@
# Automatically generated. If you change anything in this file other than the
# values of DAEMON_ARGS, first run dpkg-reconfigure
# krb5-admin-server and disable managing the kadmin configuration with
# debconf. Otherwise, changes will be overwritten.

View File

@@ -0,0 +1,5 @@
# Automatically generated. Only the value of DAEMON_ARGS will be preserved.
# If you change anything in this file other than DAEMON_ARGS, first run
# dpkg-reconfigure krb5-kdc and disable managing the KDC configuration with
# debconf. Otherwise, changes will be overwritten.

View File

@@ -0,0 +1,140 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides: krb5-admin-server
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Should-Start: krb5-kdc
# Should-Stop: krb5-kdc
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: MIT Kerberos KDC administrative daemon
# Description: Starts, stops, or restarts the MIT Kerberos KDC
# administrative daemon (kadmind). This daemon answers
# requests from kadmin clients and allows administrators
# to create, delete, and modify principals in the KDC
# database.
### END INIT INFO
# Author: Sam Hartman <hartmans@mit.edu>
# Author: Russ Allbery <rra@debian.org>
#
# Based on the /etc/init.d/skeleton template as found in initscripts version
# 2.86.ds1-15.
# June, 2012: Adopted for yocto <amy.fong@windriver.com>
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="Kerberos administrative servers"
NAME=kadmind
DAEMON=/usr/sbin/$NAME
DAEMON_ARGS=""
SCRIPTNAME=/etc/init.d/krb5-admin-server
DEFAULT=/etc/default/krb5-admin-server
# Exit if the package is not installed.
[ -x "$DAEMON" ] || exit 0
# Read configuration if it is present.
[ -r "$DEFAULT" ] && . "$DEFAULT"
# Get the setting of VERBOSE and other rcS variables.
[ -f /etc/default/rcS ] && . /etc/default/rcS
. /etc/init.d/functions
ADMIN_SERVER_LOG=/var/log/kadmind.log
[ -f $ADMIN_SERVER_LOG ] && (test ! -x /sbin/restorecon \
|| /sbin/restorecon -F $ADMIN_SERVER_LOG)
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
do_start()
{
start-stop-daemon --start --quiet --startas $DAEMON --name $NAME --test \
> /dev/null || return 1
start-stop-daemon --start --quiet --startas $DAEMON --name $NAME \
-- $DAEMON_ARGS || return 2
}
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
do_stop()
{
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --name $NAME
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
return "$RETVAL"
}
case "$1" in
start)
if [ "$RUN_KADMIND" = false ] ; then
if [ "$VERBOSE" != no ] ; then
echo "Not starting $DESC per configuration"
fi
exit 0
fi
[ "$VERBOSE" != no ] && echo "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && echo 0 ;;
2) [ "$VERBOSE" != no ] && echo 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && echo "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && echo 0 ;;
2) [ "$VERBOSE" != no ] && echo 1 ;;
esac
;;
restart|force-reload)
if [ "$RUN_KADMIND" = false ] ; then
if [ "$VERBOSE" != no ] ; then
echo "Not restarting $DESC per configuration"
fi
exit 0
fi
echo "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) [ "$VERBOSE" != no ] && echo 0 ;;
*) [ "$VERBOSE" != no ] && echo 1 ;;
esac
;;
*)
echo 1
;;
esac
;;
status)
pidofproc "$DAEMON" >/dev/null
status=$?
if [ $status -eq 0 ]; then
echo "$NAME is running."
else
echo "$NAME is not running."
fi
exit $status
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2
exit 3
;;
esac
:

View File

@@ -0,0 +1,133 @@
#! /bin/sh
### BEGIN INIT INFO
# Provides: krb5-kdc
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# X-Start-Before: $x-display-manager
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: MIT Kerberos KDC
# Description: Starts, stops, or restarts the MIT Kerberos KDC. This
# daemon responds to ticket requests from Kerberos
# clients.
### END INIT INFO
# Author: Sam Hartman <hartmans@mit.edu>
# Author: Russ Allbery <rra@debian.org>
#
# Based on the /etc/init.d/skeleton template as found in initscripts version
# 2.86.ds1-15.
# June, 2012: Adopted for yocto <amy.fong@windriver.com>
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="Kerberos KDC"
NAME=krb5kdc
DAEMON=/usr/sbin/$NAME
DAEMON_ARGS=""
SCRIPTNAME=/etc/init.d/krb5-kdc
# Exit if the package is not installed.
[ -x "$DAEMON" ] || exit 0
# Read configuration if it is present.
[ -r /etc/default/krb5-kdc ] && . /etc/default/krb5-kdc
# Get the setting of VERBOSE and other rcS variables.
[ -f /etc/default/rcS ] && . /etc/default/rcS
. /etc/init.d/functions
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
do_start_kdc()
{
start-stop-daemon --start --quiet --startas $DAEMON --name $NAME --test \
> /dev/null || return 1
start-stop-daemon --start --quiet --startas $DAEMON --name $NAME \
-- $DAEMON_ARGS || return 2
}
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
do_stop_kdc()
{
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --name $NAME
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
return "$RETVAL"
}
case "$1" in
start)
[ "$VERBOSE" != no ] && echo "Starting $DESC" "$NAME"
do_start_kdc
case "$?" in
0|1)
[ "$VERBOSE" != no ] && echo 0
;;
2)
[ "$VERBOSE" != no ] && echo 1
;;
esac
;;
stop)
[ "$VERBOSE" != no ] && echo "Stopping $DESC" "$NAME"
do_stop_kdc
case "$?" in
0|1)
[ "$VERBOSE" != no ] && echo "krb524d"
;;
2)
[ "$VERBOSE" != no ] && echo 1
;;
esac
;;
restart|force-reload)
echo "Restarting $DESC" "$NAME"
do_stop_kdc
case "$?" in
0|1)
do_start_kdc
case "$?" in
0)
echo 0
;;
1|2)
echo 1
;;
esac
;;
*)
echo 1
;;
esac
;;
status)
pidofproc "$DAEMON" >/dev/null
status=$?
if [ $status -eq 0 ]; then
echo "$NAME is running."
else
echo "$NAME is not running."
fi
exit $status
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2
exit 3
;;
esac
:

View File

@@ -0,0 +1,15 @@
[Unit]
Description=MIT Kerberos KDC administrative daemon
After=syslog.target network.target
ConditionPathExists=/etc/krb5.conf
[Service]
Type=forking
ExecStartPre=/bin/sh -c "test ! -f /var/log/kadmind.log || test ! -x /sbin/restorecon || /sbin/restorecon -F /var/log/kadmind.log"
ExecStart=/usr/sbin/kadmind
EnvironmentFile=-/etc/default/krb5-admin-server
SuccessExitStatus=1 2 SIGKILL
TimeoutStopSec=30
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,14 @@
[Unit]
Description=MIT Kerberos KDC
After=syslog.target network.target
ConditionPathExists=/etc/krb5.conf
[Service]
Type=forking
ExecStart=/usr/sbin/krb5kdc
EnvironmentFile=-/etc/default/krb5-kdc
SuccessExitStatus=1 2 SIGKILL
TimeoutStopSec=30
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,202 @@
SUMMARY = "A network authentication protocol"
DESCRIPTION = "Kerberos is a system for authenticating users and services on a network. \
Kerberos is a trusted third-party service. That means that there is a \
third party (the Kerberos server) that is trusted by all the entities on \
the network (users and services, usually called "principals"). \
. \
This is the MIT reference implementation of Kerberos V5. \
. \
This package contains the Kerberos key server (KDC). The KDC manages all \
authentication credentials for a Kerberos realm, holds the master keys \
for the realm, and responds to authentication requests. This package \
should be installed on both master and slave KDCs."
HOMEPAGE = "http://web.mit.edu/Kerberos/"
SECTION = "console/network"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${S}/../NOTICE;md5=1d31018dba5a0ef195eb426a1e61f02e"
inherit autotools-brokensep binconfig perlnative systemd update-rc.d pkgconfig
SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
SRC_URI = "http://web.mit.edu/kerberos/dist/${BPN}/${SHRT_VER}/${BP}.tar.gz \
file://debian-suppress-usr-lib-in-krb5-config.patch;striplevel=2 \
file://crosscompile_nm.patch \
file://0001-Fix-aclocal.m4-syntax-error-for-autoconf-2.72.patch;striplevel=2 \
file://etc/init.d/krb5-kdc \
file://etc/init.d/krb5-admin-server \
file://etc/default/krb5-kdc \
file://etc/default/krb5-admin-server \
file://krb5-kdc.service \
file://krb5-admin-server.service \
"
SRC_URI[md5sum] = "73f5780e7b587ccd8b8cfc10c965a686"
SRC_URI[sha256sum] = "704aed49b19eb5a7178b34b2873620ec299db08752d6a8574f95d41879ab8851"
CVE_PRODUCT = "kerberos"
CVE_VERSION = "5-${PV}"
S = "${WORKDIR}/${BP}/src"
DEPENDS = "bison-native ncurses util-linux e2fsprogs e2fsprogs-native openssl"
PACKAGECONFIG ??= "pkinit"
PACKAGECONFIG[libedit] = "--with-libedit,--without-libedit,libedit"
PACKAGECONFIG[openssl] = "--with-crypto-impl=openssl,,openssl"
PACKAGECONFIG[keyutils] = "--with-keyutils,--without-keyutils,keyutils"
PACKAGECONFIG[ldap] = "--with-ldap,--without-ldap,openldap"
PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
PACKAGECONFIG[pkinit] = "--enable-pkinit, --disable-pkinit"
EXTRA_OECONF += "--with-system-et --disable-rpath"
CACHED_CONFIGUREVARS += "krb5_cv_attr_constructor_destructor=yes ac_cv_func_regcomp=yes \
ac_cv_printf_positional=yes ac_cv_file__etc_environment=yes \
ac_cv_file__etc_TIMEZONE=no"
CFLAGS:append = " -fPIC -DDESTRUCTOR_ATTR_WORKS=1 -I${STAGING_INCDIR}/et"
CFLAGS:append:riscv64 = " -D_REENTRANT -pthread"
LDFLAGS:append = " -pthread"
do_configure() {
gnu-configize --force
autoreconf
oe_runconf
}
do_install:append() {
rm -rf ${D}/${localstatedir}/run
rm -f ${D}${bindir}/sclient
rm -f ${D}${bindir}/sim_client
rm -f ${D}${bindir}/uuclient
rm -f ${D}${sbindir}/krb5-send-pr
rm -f ${D}${sbindir}/sim_server
rm -f ${D}${sbindir}/sserver
rm -f ${D}${sbindir}/uuserver
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
mkdir -p ${D}/${sysconfdir}/init.d ${D}/${sysconfdir}/default
install -m 0755 ${WORKDIR}/etc/init.d/* ${D}/${sysconfdir}/init.d
install -m 0644 ${WORKDIR}/etc/default/* ${D}/${sysconfdir}/default
mkdir -p ${D}/${sysconfdir}/default/volatiles
echo "d root root 0755 ${localstatedir}/run/krb5kdc none" \
> ${D}${sysconfdir}/default/volatiles/87_krb5
echo "RUN_KADMIND=true" >> ${D}/${sysconfdir}/default/krb5-admin-server
fi
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${sysconfdir}/tmpfiles.d
echo "d /run/krb5kdc - - - -" \
> ${D}${sysconfdir}/tmpfiles.d/krb5.conf
mkdir -p ${D}/${sysconfdir}/default
install -m 0644 ${WORKDIR}/etc/default/* ${D}/${sysconfdir}/default
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/krb5-admin-server.service ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/krb5-kdc.service ${D}${systemd_system_unitdir}
fi
sed -e 's@[^ ]*-ffile-prefix-map=[^ "]*@@g' \
-e 's@[^ ]*-fdebug-prefix-map=[^ "]*@@g' \
-e 's@[^ ]*-fmacro-prefix-map=[^ "]*@@g' \
-i ${D}${bindir}/krb5-config
}
PACKAGES =+ "${PN}-admin-server \
${PN}-gss-samples \
${PN}-k5tls \
${PN}-kdc \
${PN}-kdc-ldap \
${PN}-kpropd \
${PN}-otp \
${PN}-pkinit \
${PN}-spake \
${PN}-user \
libgssapi-krb5 \
libgssrpc \
libk5crypto \
libkadm5clnt-mit \
libkadm5srv-mit \
libkdb5 \
libkrad \
libkrb5 \
libkrb5support \
libverto"
FILES:${PN} = "${libdir}/krb5/plugins/preauth/test.so"
FILES:${PN}-doc += "${datadir}/examples"
FILES:${PN}-dbg += "${libdir}/krb5/plugins/*/.debug"
FILES:${PN}-admin-server = "${sbindir}/kadmin.local \
${sbindir}/kadmind \
${sbindir}/kprop \
${sysconfdir}/default/krb5-admin-server \
${sysconfdir}/init.d/krb5-admin-server \
${systemd_system_unitdir}/krb5-admin-server.service"
FILES:${PN}-gss-samples = "${bindir}/gss-client \
${sbindir}/gss-server"
FILES:${PN}-k5tls = "${libdir}/krb5/plugins/tls/k5tls.so"
FILES:${PN}-kdc = "${libdir}/krb5/plugins/kdb/db2.so \
${localstatedir}/krb5kdc \
${sbindir}/kdb5_util \
${sbindir}/kproplog \
${sbindir}/krb5kdc \
${sysconfdir}/default/krb5-kdc \
${sysconfdir}/default/volatiles/87_krb5 \
${sysconfdir}/init.d/krb5-kdc \
${sysconfdir}/tmpfiles.d/krb5.conf \
${systemd_system_unitdir}/krb5-kdc.service"
FILES:${PN}-kdc-ldap = "${libdir}/krb5/libkdb_ldap${SOLIBS} \
${libdir}/krb5/plugins/kdb/kldap.so \
${sbindir}/kdb5_ldap_util"
FILES:${PN}-kpropd = "${sbindir}/kpropd"
FILES:${PN}-otp = "${libdir}/krb5/plugins/preauth/otp.so"
FILES:${PN}-pkinit = "${libdir}/krb5/plugins/preauth/pkinit.so"
FILES:${PN}-spake = "${libdir}/krb5/plugins/preauth/spake.so"
FILES:${PN}-user = "${bindir}/k*"
FILES:libgssapi-krb5 = "${libdir}/libgssapi_krb5${SOLIBS}"
FILES:libgssrpc = "${libdir}/libgssrpc${SOLIBS}"
FILES:libk5crypto = "${libdir}/libk5crypto${SOLIBS}"
FILES:libkadm5clnt-mit = "${libdir}/libkadm5clnt_mit${SOLIBS}"
FILES:libkadm5srv-mit = "${libdir}/libkadm5srv_mit${SOLIBS}"
FILES:libkdb5 = "${libdir}/libkdb5${SOLIBS}"
FILES:libkrad = "${libdir}/libkrad${SOLIBS}"
FILES:libkrb5 = "${libdir}/libkrb5${SOLIBS} \
${libdir}/krb5/plugins/authdata \
${libdir}/krb5/plugins/libkrb5"
FILES:libkrb5support = "${libdir}/libkrb5support${SOLIBS}"
FILES:libverto = "${libdir}/libverto${SOLIBS}"
RDEPENDS:${PN}-kadmin-server = "${PN}-kdc"
RDEPENDS:${PN}-kpropd = "${PN}-kdc"
INITSCRIPT_PACKAGES = "${PN}-admin-server ${PN}-kdc"
INITSCRIPT_NAME:${PN}-admin-server = "krb5-admin-server"
INITSCRIPT_NAME:${PN}-kdc = "krb5-kdc"
SYSTEMD_PACKAGES = "${PN}-admin-server ${PN}-kdc"
SYSTEMD_SERVICE:${PN}-admin-server = "krb5-admin-server.service"
SYSTEMD_SERVICE:${PN}-kdc = "krb5-kdc.service"
pkg_postinst:${PN}-kdc () {
if [ -z "$D" ]; then
if command -v systemd-tmpfiles >/dev/null; then
systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/krb5.conf
elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
${sysconfdir}/init.d/populate-volatile.sh update
fi
fi
}
BBCLASSEXTEND = "native nativesdk"
inherit multilib_script
MULTILIB_SCRIPTS = "${PN}-user:${bindir}/krb5-config"