Update to 15.8

This commit is contained in:
eabdullin 2024-05-10 16:15:25 +03:00
parent 7b7c17dc74
commit e285a36891
11 changed files with 63 additions and 51 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/shim-15.6.tar.bz2
SOURCES/shim-15.8.tar.bz2

View File

@ -1 +1 @@
3df0ab5cefc74fdf865cb36aea0e923cb4b6b3ed SOURCES/shim-15.6.tar.bz2
cdec924ca437a4509dcb178396996ddf92c11183 SOURCES/shim-15.8.tar.bz2

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

0
SOURCES/dbx.esl Normal file
View File

View File

@ -0,0 +1 @@
shim.almalinux,3,AlmaLinux,shim,15.8,security@almalinux.org
1 shim.almalinux 3 AlmaLinux shim 15.8 security@almalinux.org

View File

@ -1 +0,0 @@
shim.cloudlinux,2,CloudLinux,shim,15.6,security@cloudlinux.com
1 shim.cloudlinux 2 CloudLinux shim 15.6 security@cloudlinux.com

View File

@ -20,9 +20,9 @@ fi
findsource()
{
(
cd "${RPM_BUILD_ROOT}"
find usr/src/debug/ -type d | sed -e "s,^,%dir /," | sort -u | tac
find usr/src/debug/ -type f | sed -e "s,^,/," | sort -u | tac
cd ${RPM_BUILD_ROOT}
find usr/src/debug/ -type d | sed "s,^,%dir /,"
find usr/src/debug/ -type f | sed "s,^,/,"
)
}
@ -32,12 +32,9 @@ finddebug()
declare -a dirs=()
declare -a files=()
declare -a excludes=()
declare -a tmp=()
pushd "${RPM_BUILD_ROOT}" >/dev/null 2>&1
mapfile -t tmp < <(find usr/lib/debug/ -type f -iname "*.efi.debug")
for x in "${tmp[@]}" ; do
pushd ${RPM_BUILD_ROOT} >/dev/null 2>&1
for x in $(find usr/lib/debug/ -type f -iname *.efi.debug); do
if ! [ -e "${x}" ]; then
break
fi
@ -60,10 +57,8 @@ finddebug()
excludes[${#excludes[@]}]=${x%%.debug}
fi
done
for x in "${files[@]}" ; do
declare name
name=$(dirname "/${x}")
for x in ${files[@]} ; do
declare name=$(dirname /${x})
while [ "${name}" != "/" ]; do
case "${name}" in
"/usr/lib/debug"|"/usr/lib"|"/usr")
@ -72,24 +67,24 @@ finddebug()
dirs[${#dirs[@]}]=${name}
;;
esac
name=$(dirname "${name}")
name=$(dirname ${name})
done
done
popd >/dev/null 2>&1
for x in "${dirs[@]}" ; do
for x in ${dirs[@]} ; do
echo "%dir ${x}"
done | sort | uniq
for x in "${files[@]}" ; do
for x in ${files[@]} ; do
echo "/${x}"
done | sort | uniq
for x in "${excludes[@]}" ; do
for x in ${excludes[@]} ; do
echo "%exclude /${x}"
done
}
findsource > "build-${mainarch}/debugsource.list"
finddebug "${mainarch}" > "build-${mainarch}/debugfiles.list"
findsource > build-${mainarch}/debugsource.list
finddebug ${mainarch} > build-${mainarch}/debugfiles.list
if [ -v altarch ]; then
finddebug "${altarch}" > "build-${altarch}/debugfiles.list"
finddebug ${altarch} > build-${altarch}/debugfiles.list
fi

View File

@ -15,26 +15,26 @@
%global __debug_install_post %{SOURCE100} %{efiarch} %{efialtarch}
%undefine _debuginfo_subpackages
# currently here's what's in our dbx: nothing
%global dbxfile %{nil}
Name: shim-unsigned-%{efiarch}
Version: 15.6
Release: 1.el9.alma
Version: 15.8
Release: 2.el9.alma.1
Summary: First-stage UEFI bootloader
ExclusiveArch: x86_64
License: BSD
URL: https://github.com/rhboot/shim
Source0: https://github.com/rhboot/shim/releases/download/%{version}/shim-%{version}.tar.bz2
Source1: clsecureboot001.cer
%if 0%{?dbxfile}
Source2: %{dbxfile}
%endif
Source3: sbat.cloudlinux.csv
# currently here's what's in our dbx:
# nothing.
Source2: dbx.esl
Source3: sbat.almalinux.csv
Source4: shim.patches
Source100: shim-find-debuginfo.sh
Source101: almalinux-sb-cert-1.der
Source102: almalinux-sb-cert-2.der
Source103: almalinux-sb-cert-3.der
%include %{SOURCE4}
BuildRequires: gcc make
@ -103,19 +103,27 @@ mkdir build-%{efialtarch}
cp %{SOURCE3} data/
%build
COMMITID=$(cat commit)
MAKEFLAGS="TOPDIR=.. -f ../Makefile COMMITID=${COMMITID} "
# Prepare vendor_db.esl file
openssl x509 -inform DER -in %{SOURCE101} -out 01.pem
openssl x509 -inform DER -in %{SOURCE102} -out 02.pem
openssl x509 -inform DER -in %{SOURCE103} -out 03.pem
cert-to-efi-sig-list -g 9DD8A2AC-0977-4AEF-99A0-E794FD2A31FE 01.pem 01.esl
cert-to-efi-sig-list -g 33D81FE3-5EC0-44F8-AB02-C9DA554F63D8 02.pem 02.esl
cert-to-efi-sig-list -g 50413300-1AC7-49DA-B755-BB0D93E634B6 03.pem 03.esl
cat 01.esl 02.esl 03.esl > vendor_db.esl
COMMIT_ID=5914984a1ffeab841f482c791426d7ca9935a5e6
MAKEFLAGS="TOPDIR=.. -f ../Makefile COMMIT_ID=${COMMIT_ID} "
MAKEFLAGS+="EFIDIR=%{efidir} PKGNAME=shim RELEASE=%{release} "
MAKEFLAGS+="ENABLE_SHIM_HASH=true "
MAKEFLAGS+="SBAT_AUTOMATIC_DATE=2023012900 "
MAKEFLAGS+="%{_smp_mflags}"
if [ -f "%{SOURCE1}" ]; then
MAKEFLAGS="$MAKEFLAGS VENDOR_CERT_FILE=%{SOURCE1}"
if [ -s vendor_db.esl ]; then
MAKEFLAGS="$MAKEFLAGS VENDOR_DB_FILE=../vendor_db.esl"
fi
%if 0%{?dbxfile}
if [ -f "%{SOURCE2}" ]; then
if [ -s "%{SOURCE2}" ]; then
MAKEFLAGS="$MAKEFLAGS VENDOR_DBX_FILE=%{SOURCE2}"
fi
%endif
cd build-%{efiarch}
make ${MAKEFLAGS} \
@ -124,18 +132,17 @@ make ${MAKEFLAGS} \
cd ..
%install
COMMITID=$(cat commit)
MAKEFLAGS="TOPDIR=.. -f ../Makefile COMMITID=${COMMITID} "
COMMIT_ID=5914984a1ffeab841f482c791426d7ca9935a5e6
MAKEFLAGS="TOPDIR=.. -f ../Makefile COMMIT_ID=${COMMIT_ID} "
MAKEFLAGS+="EFIDIR=%{efidir} PKGNAME=shim RELEASE=%{release} "
MAKEFLAGS+="ENABLE_SHIM_HASH=true "
if [ -f "%{SOURCE1}" ]; then
MAKEFLAGS="$MAKEFLAGS VENDOR_CERT_FILE=%{SOURCE1}"
MAKEFLAGS+="SBAT_AUTOMATIC_DATE=2023012900 "
if [ -s vendor_db.esl ]; then
MAKEFLAGS="$MAKEFLAGS VENDOR_DB_FILE=../vendor_db.esl"
fi
%if 0%{?dbxfile}
if [ -f "%{SOURCE2}" ]; then
if [ -s "%{SOURCE2}" ]; then
MAKEFLAGS="$MAKEFLAGS VENDOR_DBX_FILE=%{SOURCE2}"
fi
%endif
cd build-%{efiarch}
make ${MAKEFLAGS} \
@ -149,21 +156,31 @@ cd ..
%dir %{shimrootdir}
%dir %{shimversiondir}
%dir %{shimdir}
%{shimdir}/*.CSV
%{shimdir}/*.efi
%{shimdir}/*.hash
%{shimdir}/*.CSV
%files debuginfo -f build-%{efiarch}/debugfiles.list
%files debugsource -f build-%{efiarch}/debugsource.list
%changelog
* Fri Jun 17 2022 Eduard Abdullin <eabdullin@almalinux.org> - 15.6-1.el9.alma
- Use CloudLinux vendor cert and SBAT entry
* Tue Mar 26 2024 Eduard Abdullin <eabdullin@almalinux.org> - 15.8-2.el9.alma.1
- Update to shim-15.8
* Wed Feb 07 2024 Peter Jones <pjones@redhat.com> - 15.8-2.el9
- Rebuild to fix the commit ident and MAKEFLAGS
Resolves: RHEL-11262
* Tue Jan 23 2024 Peter Jones <pjones@redhat.com> - 15.8-1.el9
- Update to shim-15.8 for CVE-2023-40547
Resolves: RHEL-11262
* Wed Jun 01 2022 Peter Jones <pjones@redhat.com> - 15.6-1.el9
- Update to shim-15.6
Resolves: CVE-2022-28737
- Update to shim-15.6 for CVE-2022-28737
* Tue May 24 2022 Peter Jones <pjones@redhat.com> - 15.6~rc1-1.el9
- Update to shim-15.6~rc1 for CVE-2022-28737
* Wed Mar 09 2022 Peter Jones <pjones@redhat.com> - 15.5-1
- Update to shim-15.5