summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2024-05-16 02:31:40 +0000
committer Eric Hameleers <alien@slackware.com>2024-05-16 05:20:07 +0200
commit8b19227b588fcfdd6e0e799637336f5e0c2bb3ad (patch)
treeb2c441f810c0f58609311251105c095fcf1a74bb /source
parent5bcdee4c9b50b99f4c26751c412c30bd649df805 (diff)
downloadcurrent-8b19227b588fcfdd6e0e799637336f5e0c2bb3ad.tar.gz
current-8b19227b588fcfdd6e0e799637336f5e0c2bb3ad.tar.xz
Thu May 16 02:31:40 UTC 202420240516023140
a/bcachefs-tools-1.7.0-x86_64-1.txz: Added. a/kernel-generic-6.9.0-x86_64-2.txz: Upgraded. a/kernel-huge-6.9.0-x86_64-2.txz: Upgraded. a/kernel-modules-6.9.0-x86_64-2.txz: Upgraded. d/git-2.45.1-x86_64-1.txz: Upgraded. This update fixes security issues: Recursive clones on case-insensitive filesystems that support symbolic links are susceptible to case confusion that can be exploited to execute just-cloned code during the clone operation. Repositories can be configured to execute arbitrary code during local clones. To address this, the ownership checks introduced in v2.30.3 are now extended to cover cloning local repositories. Local clones may end up hardlinking files into the target repository's object database when source and target repository reside on the same disk. If the source repository is owned by a different user, then those hardlinked files may be rewritten at any point in time by the untrusted user. When cloning a local source repository that contains symlinks via the filesystem, Git may create hardlinks to arbitrary user-readable files on the same filesystem as the target repository in the objects/ directory. It is supposed to be safe to clone untrusted repositories, even those unpacked from zip archives or tarballs originating from untrusted sources, but Git can be tricked to run arbitrary code as part of the clone. For more information, see: https://www.cve.org/CVERecord?id=CVE-2024-32002 https://www.cve.org/CVERecord?id=CVE-2024-32004 https://www.cve.org/CVERecord?id=CVE-2024-32020 https://www.cve.org/CVERecord?id=CVE-2024-32021 https://www.cve.org/CVERecord?id=CVE-2024-32465 (* Security fix *) d/kernel-headers-6.9.0-x86-2.txz: Upgraded. d/strace-6.9-x86_64-1.txz: Upgraded. k/kernel-source-6.9.0-noarch-2.txz: Upgraded. BCACHEFS_FS m -> y CRYPTO_CHACHA20 m -> y CRYPTO_LIB_CHACHA_GENERIC m -> y CRYPTO_LIB_POLY1305_GENERIC m -> y CRYPTO_POLY1305 m -> y MITIGATION_GDS_FORCE y -> n kde/wcslib-8.3-x86_64-1.txz: Upgraded. l/gdk-pixbuf2-2.42.12-x86_64-1.txz: Upgraded. ani: Reject files with multiple INA or IART chunks. ani: Reject files with multiple anih chunks. ani: validate chunk size. Thanks to 0xvhp, pedrib, and Benjamin Gilbert. For more information, see: https://www.cve.org/CVERecord?id=CVE-2022-48622 (* Security fix *) l/gtk+3-3.24.42-x86_64-1.txz: Upgraded. n/bind-9.18.27-x86_64-1.txz: Upgraded. This is a bugfix release. n/popa3d-1.0.3-x86_64-8.txz: Rebuilt. This is a bugfix release: Build with AUTH_PAM, not AUTH_SHADOW. Thanks to jayjwa. x/xorg-server-xwayland-23.2.7-x86_64-1.txz: Upgraded. isolinux/initrd.img: Rebuilt. kernels/*: Upgraded. usb-and-pxe-installers/usbboot.img: Rebuilt.
Diffstat (limited to '')
-rw-r--r--source/a/bcachefs-tools/bcachefs-tools-1.7.0.tar.zstbin0 -> 1093324 bytes
-rwxr-xr-xsource/a/bcachefs-tools/bcachefs-tools.SlackBuild135
-rw-r--r--source/a/bcachefs-tools/bcachefs-tools.url1
-rw-r--r--source/a/bcachefs-tools/slack-desc19
-rw-r--r--source/d/strace/strace.url2
-rw-r--r--source/installer/ChangeLog.txt8
-rwxr-xr-xsource/installer/build_installer.sh12
l---------[-rwxr-xr-x]source/installer/sources/initrd/sbin/rescan-scsi-bus760
-rwxr-xr-xsource/k/build-all-kernels.sh2
-rw-r--r--source/k/kernel-configs/config-generic-6.919
-rw-r--r--source/k/kernel-configs/config-generic-6.9.x6420
-rw-r--r--source/k/kernel-configs/config-huge-6.919
-rw-r--r--source/k/kernel-configs/config-huge-6.9.x6420
-rwxr-xr-xsource/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild2
-rwxr-xr-xsource/n/popa3d/popa3d.SlackBuild24
-rw-r--r--source/n/popa3d/popa3d.pam.diff24
-rw-r--r--source/n/popa3d/popa3d.shadow.diff58
17 files changed, 253 insertions, 872 deletions
diff --git a/source/a/bcachefs-tools/bcachefs-tools-1.7.0.tar.zst b/source/a/bcachefs-tools/bcachefs-tools-1.7.0.tar.zst
new file mode 100644
index 000000000..b683b226b
--- /dev/null
+++ b/source/a/bcachefs-tools/bcachefs-tools-1.7.0.tar.zst
Binary files differ
diff --git a/source/a/bcachefs-tools/bcachefs-tools.SlackBuild b/source/a/bcachefs-tools/bcachefs-tools.SlackBuild
new file mode 100755
index 000000000..5eaabd8d0
--- /dev/null
+++ b/source/a/bcachefs-tools/bcachefs-tools.SlackBuild
@@ -0,0 +1,135 @@
+#!/bin/bash
+
+# Copyright 2024 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=bcachefs-tools
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.zst | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) readelf /usr/bin/file -A | egrep -q "Tag_CPU.*[4,5]" && ARCH=arm || ARCH=armv7hl ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) ARCH=$(uname -m) ;;
+ esac
+ export ARCH
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+NUMJOBS=${NUMJOBS:-" -j $(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ SLKCFLAGS="-O3 -march=armv7-a -mfpu=vfpv3-d16"
+ LIBDIRSUFFIX=""
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+
+cd $TMP
+rm -rf $PKGNAM-$VERSION
+tar xvf $CWD/$PKGNAM-$VERSION.tar.zst || exit 1
+cd $PKGNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Let's not draw this dep in right now:
+# BCACHEFS_FUSE=1
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+ make $NUMJOBS \
+ PREFIX=/usr \
+ LIBEXECDIR=/usr/lib${LIBDIRSUFFIX} \
+ ROOT_SBINDIR=/sbin \
+ INITRAMFS_DIR=/etc/junk \
+ DESTDIR=$PKG \
+ install || exit 1
+
+# Remove junk:
+rm -rf $PKG/etc
+
+# No option, so relocate:
+mv $PKG/usr/share/man $PKG/usr
+rmdir $PKG/usr/share
+
+# Install completions:
+mkdir -p $PKG/usr/share/bash-completion/completions
+$PKG/sbin/bcachefs completions bash > $PKG/usr/share/bash-completion/completions/bcachefs
+mkdir -p $PKG/usr/share/zsh/site-functions
+$PKG/sbin/bcachefs completions zsh > $PKG/usr/share/zsh/site-functions/_bcachefs
+
+# Strip binaries:
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PKGNAM}-$VERSION
+cp -a \
+ COPYING* INSTALL* README* \
+ doc/bcachefs-principles-of-operation.tex \
+ $PKG/usr/doc/${PKGNAM}-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
diff --git a/source/a/bcachefs-tools/bcachefs-tools.url b/source/a/bcachefs-tools/bcachefs-tools.url
new file mode 100644
index 000000000..42c0def89
--- /dev/null
+++ b/source/a/bcachefs-tools/bcachefs-tools.url
@@ -0,0 +1 @@
+https://evilpiepirate.org/bcachefs-tools/
diff --git a/source/a/bcachefs-tools/slack-desc b/source/a/bcachefs-tools/slack-desc
new file mode 100644
index 000000000..6d78e799a
--- /dev/null
+++ b/source/a/bcachefs-tools/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+bcachefs-tools: bcachefs-tools (tools for bcachefs filesystem)
+bcachefs-tools:
+bcachefs-tools: Bcachefs is an advanced new filesystem for Linux, with an emphasis on
+bcachefs-tools: reliability and robustness and the complete set of features one would
+bcachefs-tools: expect from a modern filesystem.
+bcachefs-tools:
+bcachefs-tools: This package contains the bcachefs tool, {mkfs,mount,fsck}.bcachefs
+bcachefs-tools: wrappers that call the bcachefs tool, and documentation.
+bcachefs-tools:
+bcachefs-tools: Homepage: https://bcachefs.org
+bcachefs-tools:
diff --git a/source/d/strace/strace.url b/source/d/strace/strace.url
index 7f8c04ea1..845787a44 100644
--- a/source/d/strace/strace.url
+++ b/source/d/strace/strace.url
@@ -1,2 +1,2 @@
https://github.com/strace/strace
-https://github.com/strace/strace/releases/download/v6.8/strace-6.8.tar.xz
+https://github.com/strace/strace/releases/download/v6.9/strace-6.9.tar.xz
diff --git a/source/installer/ChangeLog.txt b/source/installer/ChangeLog.txt
index 5bf590993..48c4bd76e 100644
--- a/source/installer/ChangeLog.txt
+++ b/source/installer/ChangeLog.txt
@@ -1,3 +1,11 @@
+Wed May 15 22:32:33 UTC 2024
+ Force compress the hwdata files. Thanks to Stuart Winter.
+ Include rescan_scsi_bus.sh, sg_inq, sg_turs, and libsgutils2 from the
+ sg3_utils package. Thanks to ikocher.
+ Include bcachefs-tools.
+ Add libsodium for bcachefs-tools.
+ No menu-driven installer support yet (nor immediately pending).
++--------------------------+
Tue May 14 18:24:45 UTC 2024
Disable CONFIG_TC in busybox-dot-config.
+--------------------------+
diff --git a/source/installer/build_installer.sh b/source/installer/build_installer.sh
index a70c9c1d6..07c064e29 100755
--- a/source/installer/build_installer.sh
+++ b/source/installer/build_installer.sh
@@ -946,6 +946,7 @@ case $ARCH in
esac
PKGLIST="${EXTRA_PKGS} \
a/bash \
+a/bcachefs-tools \
a/btrfs-progs \
a/coreutils \
a/cryptsetup \
@@ -1010,6 +1011,7 @@ l/libcap \
l/libidn2 \
l/libnsl \
l/libnvme \
+l/libsodium \
l/libunistring \
l/libusb \
l/lz4 \
@@ -1018,6 +1020,7 @@ l/parted \
l/pcre2 \
l/popt \
l/readline \
+l/sg3_utils \
l/zlib \
l/zstd \
n/dhcpcd \
@@ -1094,6 +1097,9 @@ cp --remove-destination -fa${VERBOSE1} ${EXTRA_PKGS_USRBIN} \
plzip \
rev \
uuidgen \
+ rescan-scsi-bus.sh \
+ sg_inq \
+ sg_turs \
syslinux-nomtools \
strings \
$PKG/$ARCH-installer-filesystem/usr/bin/
@@ -1121,6 +1127,7 @@ cp --remove-destination -fa${VERBOSE1} \
cd $TMP/extract-packages/sbin
cp --remove-destination -fa${VERBOSE1} ${EXTRA_PKGS_SBIN} \
badblocks \
+ *bcachefs* \
blkid \
btrfs* \
cgdisk \
@@ -1383,6 +1390,8 @@ cp -fa${VERBOSE1} \
libnvme*.so* \
libparted*so* \
libreadline*.so* \
+ libsgutils2*.so* \
+ libsodium.so* \
libstdc++*.so* \
libunistring*.so* \
libusb-1.0*.so* \
@@ -1429,7 +1438,7 @@ cd $TMP/extract-packages/usr/share/hwdata
mkdir -p -m755 $PKG/$ARCH-installer-filesystem/usr/share/hwdata
cp -fa${VERBOSE1} pci.ids usb.ids \
$PKG/$ARCH-installer-filesystem/usr/share/hwdata
-gzip -9${VERBOSE1} $PKG/$ARCH-installer-filesystem/usr/share/hwdata/*
+gzip -f9${VERBOSE1} $PKG/$ARCH-installer-filesystem/usr/share/hwdata/*
# Copy the rc script for rpcbind:
cd $TMP/extract-packages/etc/rc.d
@@ -2265,6 +2274,7 @@ if [ -d usr/man ]; then
# man page format... perhaps handy for future documentation, or
# README_LVM, etc. ?
for manpage in \
+ man8/bcachefs.8.bz2 \
man8/cfdisk.8.bz2 \
man8/fdisk.8.bz2 \
man8/gdisk.8.bz2 \
diff --git a/source/installer/sources/initrd/sbin/rescan-scsi-bus b/source/installer/sources/initrd/sbin/rescan-scsi-bus
index 4be8f01e1..106125246 100755..120000
--- a/source/installer/sources/initrd/sbin/rescan-scsi-bus
+++ b/source/installer/sources/initrd/sbin/rescan-scsi-bus
@@ -1,759 +1 @@
-#!/bin/bash
-# Skript to rescan SCSI bus, using the
-# scsi add-single-device mechanism
-# (c) 1998--2010 Kurt Garloff <kurt@garloff.de>, GNU GPL v2 or v3
-# (c) 2006--2008 Hannes Reinecke, GNU GPL v2 or later
-# $Id: rescan-scsi-bus.sh,v 1.56 2012/01/14 22:23:53 garloff Exp $
-
-SCAN_WILD_CARD=4294967295
-
-setcolor ()
-{
- red="\e[0;31m"
- green="\e[0;32m"
- yellow="\e[0;33m"
- bold="\e[0;1m"
- norm="\e[0;0m"
-}
-
-unsetcolor ()
-{
- red=""; green=""
- yellow=""; norm=""
-}
-
-# Output some text and return cursor to previous position
-# (only works for simple strings)
-# Stores length of string in LN and returns it
-print_and_scroll_back ()
-{
- STRG="$1"
- LN=${#STRG}
- BK=""
- declare -i cntr=0
- while test $cntr -lt $LN; do BK="$BK\e[D"; let cntr+=1; done
- echo -en "$STRG$BK"
- return $LN
-}
-
-# Overwrite a text of length $1 (fallback to $LN) with whitespace
-white_out ()
-{
- BK=""; WH=""
- if test -n "$1"; then LN=$1; fi
- declare -i cntr=0
- while test $cntr -lt $LN; do BK="$BK\e[D"; WH="$WH "; let cntr+=1; done
- echo -en "$WH$BK"
-}
-
-# Return hosts. sysfs must be mounted
-findhosts_26 ()
-{
- hosts=`find /sys/class/scsi_host/host* -maxdepth 4 -type d -o -type l 2> /dev/null | awk -F'/' '{print $5}' | sed -e 's~host~~' | sort -nu`
- scsi_host_data=`echo "$hosts" | sed -e 's~^~/sys/class/scsi_host/host~'`
- for hostdir in $scsi_host_data; do
- hostno=${hostdir#/sys/class/scsi_host/host}
- if [ -f $hostdir/isp_name ] ; then
- hostname="qla2xxx"
- elif [ -f $hostdir/lpfc_drvr_version ] ; then
- hostname="lpfc"
- else
- hostname=`cat $hostdir/proc_name`
- fi
- #hosts="$hosts $hostno"
- echo "Host adapter $hostno ($hostname) found."
- done
- if [ -z "$hosts" ] ; then
- echo "No SCSI host adapters found in sysfs"
- exit 1;
- fi
- # Not necessary just use double quotes around variable to preserve new lines
- #hosts=`echo $hosts | tr ' ' '\n'`
-}
-
-# Return hosts. /proc/scsi/HOSTADAPTER/? must exist
-findhosts ()
-{
- hosts=
- for driverdir in /proc/scsi/*; do
- driver=${driverdir#/proc/scsi/}
- if test $driver = scsi -o $driver = sg -o $driver = dummy -o $driver = device_info; then continue; fi
- for hostdir in $driverdir/*; do
- name=${hostdir#/proc/scsi/*/}
- if test $name = add_map -o $name = map -o $name = mod_parm; then continue; fi
- num=$name
- driverinfo=$driver
- if test -r $hostdir/status; then
- num=$(printf '%d\n' `sed -n 's/SCSI host number://p' $hostdir/status`)
- driverinfo="$driver:$name"
- fi
- hosts="$hosts $num"
- echo "Host adapter $num ($driverinfo) found."
- done
- done
-}
-
-printtype ()
-{
- local type=$1
-
- case "$type" in
- 0) echo "Direct-Access " ;;
- 1) echo "Sequential-Access" ;;
- 2) echo "Printer " ;;
- 3) echo "Processor " ;;
- 4) echo "WORM " ;;
- 5) echo "CD-ROM " ;;
- 6) echo "Scanner " ;;
- 7) echo "Optical Device " ;;
- 8) echo "Medium Changer " ;;
- 9) echo "Communications " ;;
- 10) echo "Unknown " ;;
- 11) echo "Unknown " ;;
- 12) echo "RAID " ;;
- 13) echo "Enclosure " ;;
- 14) echo "Direct-Access-RBC" ;;
- *) echo "Unknown " ;;
- esac
-}
-
-print02i()
-{
- if [ "$1" = "*" ] ; then
- echo "00"
- else
- printf "%02i" "$1"
- fi
-}
-
-# Get /proc/scsi/scsi info for device $host:$channel:$id:$lun
-# Optional parameter: Number of lines after first (default = 2),
-# result in SCSISTR, return code 1 means empty.
-procscsiscsi ()
-{
- if test -z "$1"; then LN=2; else LN=$1; fi
- CHANNEL=`print02i "$channel"`
- ID=`print02i "$id"`
- LUN=`print02i "$lun"`
- if [ -d /sys/class/scsi_device ]; then
- SCSIPATH="/sys/class/scsi_device/${host}:${channel}:${id}:${lun}"
- if [ -d "$SCSIPATH" ] ; then
- SCSISTR="Host: scsi${host} Channel: $CHANNEL Id: $ID Lun: $LUN"
- if [ "$LN" -gt 0 ] ; then
- IVEND=$(cat ${SCSIPATH}/device/vendor)
- IPROD=$(cat ${SCSIPATH}/device/model)
- IPREV=$(cat ${SCSIPATH}/device/rev)
- SCSIDEV=$(printf ' Vendor: %-08s Model: %-16s Rev: %-4s' "$IVEND" "$IPROD" "$IPREV")
- SCSISTR="$SCSISTR
-$SCSIDEV"
- fi
- if [ "$LN" -gt 1 ] ; then
- ILVL=$(cat ${SCSIPATH}/device/scsi_level)
- type=$(cat ${SCSIPATH}/device/type)
- ITYPE=$(printtype $type)
- SCSITMP=$(printf ' Type: %-16s ANSI SCSI revision: %02d' "$ITYPE" "$((ILVL - 1))")
- SCSISTR="$SCSISTR
-$SCSITMP"
- fi
- else
- return 1
- fi
- else
- grepstr="scsi$host Channel: $CHANNEL Id: $ID Lun: $LUN"
- SCSISTR=`cat /proc/scsi/scsi | grep -A$LN -e"$grepstr"`
- fi
- if test -z "$SCSISTR"; then return 1; else return 0; fi
-}
-
-# Find sg device with 2.6 sysfs support
-sgdevice26 ()
-{
- if test -e /sys/class/scsi_device/$host\:$channel\:$id\:$lun/device/generic; then
- SGDEV=`readlink /sys/class/scsi_device/$host\:$channel\:$id\:$lun/device/generic`
- SGDEV=`basename $SGDEV`
- else
- for SGDEV in /sys/class/scsi_generic/sg*; do
- DEV=`readlink $SGDEV/device`
- if test "${DEV##*/}" = "$host:$channel:$id:$lun"; then
- SGDEV=`basename $SGDEV`; return
- fi
- done
- SGDEV=""
- fi
-}
-
-# Find sg device with 2.4 report-devs extensions
-sgdevice24 ()
-{
- if procscsiscsi 3; then
- SGDEV=`echo "$SCSISTR" | grep 'Attached drivers:' | sed 's/^ *Attached drivers: \(sg[0-9]*\).*/\1/'`
- fi
-}
-
-# Find sg device that belongs to SCSI device $host $channel $id $lun
-# and return in SGDEV
-sgdevice ()
-{
- SGDEV=
- if test -d /sys/class/scsi_device; then
- sgdevice26
- else
- DRV=`grep 'Attached drivers:' /proc/scsi/scsi 2>/dev/null`
- repdevstat=$((1-$?))
- if [ $repdevstat = 0 ]; then
- echo "scsi report-devs 1" >/proc/scsi/scsi
- DRV=`grep 'Attached drivers:' /proc/scsi/scsi 2>/dev/null`
- if [ $? = 1 ]; then return; fi
- fi
- if ! `echo $DRV | grep 'drivers: sg' >/dev/null`; then
- modprobe sg
- fi
- sgdevice24
- if [ $repdevstat = 0 ]; then
- echo "scsi report-devs 0" >/proc/scsi/scsi
- fi
- fi
-}
-
-# Test if SCSI device is still responding to commands
-testonline ()
-{
- : testonline
- RC=0
- if test ! -x /usr/bin/sg_turs; then return 0; fi
- sgdevice
- if test -z "$SGDEV"; then return 0; fi
- sg_turs /dev/$SGDEV >/dev/null 2>&1
- RC=$?
- # Handle in progress of becoming ready and unit attention -- wait at max 11s
- declare -i ctr=0
- if test $RC = 2 -o $RC = 6; then
- RMB=`sg_inq /dev/$SGDEV | grep 'RMB=' | sed 's/^.*RMB=\(.\).*$/\1/'`
- print_and_scroll_back "$host:$channel:$id:$lun $SGDEV ($RMB) "
- fi
- while test $RC = 2 -o $RC = 6 && test $ctr -le 8; do
- if test $RC = 2 -a "$RMB" != "1"; then echo -n "."; let $LN+=1; sleep 1
- else usleep 20000; fi
- let ctr+=1
- sg_turs /dev/$SGDEV >/dev/null 2>&1
- RC=$?
- done
- if test $ctr != 0; then white_out; fi
- # echo -e "\e[A\e[A\e[A${yellow}Test existence of $SGDEV = $RC ${norm} \n\n\n"
- if test $RC = 1; then return $RC; fi
- # Reset RC (might be !=0 for passive paths)
- RC=0
- # OK, device online, compare INQUIRY string
- INQ=`sg_inq $sg_len_arg /dev/$SGDEV 2>/dev/null`
- IVEND=`echo "$INQ" | grep 'Vendor identification:' | sed 's/^[^:]*: \(.*\)$/\1/'`
- IPROD=`echo "$INQ" | grep 'Product identification:' | sed 's/^[^:]*: \(.*\)$/\1/'`
- IPREV=`echo "$INQ" | grep 'Product revision level:' | sed 's/^[^:]*: \(.*\)$/\1/'`
- STR=`printf " Vendor: %-08s Model: %-16s Rev: %-4s" "$IVEND" "$IPROD" "$IPREV"`
- IPTYPE=`echo "$INQ" | sed -n 's/.* Device_type=\([0-9]*\) .*/\1/p'`
- IPQUAL=`echo "$INQ" | sed -n 's/ *PQual=\([0-9]*\) Device.*/\1/p'`
- if [ "$IPQUAL" != 0 ] ; then
- echo -e "\e[A\e[A\e[A\e[A${red}$SGDEV changed: ${bold}LU not available (PQual $IPQUAL)${norm} \n\n\n"
- return 2
- fi
-
- TYPE=$(printtype $IPTYPE)
- procscsiscsi
- TMPSTR=`echo "$SCSISTR" | grep 'Vendor:'`
- if [ "$TMPSTR" != "$STR" ]; then
- echo -e "\e[A\e[A\e[A\e[A${red}$SGDEV changed: ${bold}\nfrom:${SCSISTR#* } \nto: $STR ${norm} \n\n\n"
- return 1
- fi
- TMPSTR=`echo "$SCSISTR" | sed -n 's/.*Type: *\(.*\) *ANSI.*/\1/p'`
- if [ $TMPSTR != $TYPE ] ; then
- echo -e "\e[A\e[A\e[A\e[A${red}$SGDEV changed: ${bold}\nfrom:${TMPSTR} \nto: $TYPE ${norm} \n\n\n"
- return 1
- fi
- return $RC
-}
-
-# Test if SCSI device $host $channen $id $lun exists
-# Outputs description from /proc/scsi/scsi (unless arg passed)
-# Returns SCSISTR (empty if no dev)
-testexist ()
-{
- : testexist
- SCSISTR=
- if procscsiscsi && test -z "$1"; then
- echo "$SCSISTR" | head -n1
- echo "$SCSISTR" | tail -n2 | pr -o4 -l1
- fi
-}
-
-# Returns the list of existing channels per host
-chanlist ()
-{
- local hcil
- local cil
- local chan
- local tmpchan
-
- for dev in /sys/class/scsi_device/${host}:* ; do
- [ -d $dev ] || continue;
- hcil=${dev##*/}
- cil=${hcil#*:}
- chan=${cil%%:*}
- for tmpchan in $channelsearch ; do
- if test "$chan" -eq $tmpchan ; then
- chan=
- fi
- done
- if test -n "$chan" ; then
- channelsearch="$channelsearch $chan"
- fi
- done
- if test -z "$channelsearch"; then channelsearch="0"; fi
-}
-
-# Returns the list of existing targets per host
-idlist ()
-{
- local hcil
- local cil
- local il
- local target
- local tmpid
-
- for dev in /sys/class/scsi_device/${host}:${channel}:* ; do
- [ -d $dev ] || continue;
- hcil=${dev##*/}
- cil=${hcil#*:}
- il=${cil#*:}
- target=${il%%:*}
- for tmpid in $idsearch ; do
- if test "$target" -eq $tmpid ; then
- target=
- break
- fi
- done
- if test -n "$target" ; then
- idsearch="$idsearch $target"
- fi
- done
-}
-
-# Returns the list of existing LUNs from device $host $channel $id $lun
-# and returns list to stdout
-getluns()
-{
- sgdevice
- if test -z "$SGDEV"; then return 1; fi
- if test ! -x /usr/bin/sg_luns; then echo 0; return 1; fi
- LLUN=`sg_luns /dev/$SGDEV 2>/dev/null | sed -n 's/ \(.*\)/\1/p'`
- if test $? != 0; then echo 0; return 1; fi
- #echo "$LLUN" | sed -n 's/.*lun=\(.*\)/\1/p'
- for lun in $LLUN ; do
- # Swap LUN number
- l0=$(printf '%u' 0x$lun)
- l1=$(( ($l0 >> 48) & 0xffff ))
- l2=$(( ($l0 >> 32) & 0xffff ))
- l3=$(( ($l0 >> 16) & 0xffff ))
- l4=$(( $l0 & 0xffff ))
- l0=$(( ( ( ($l4 * 0xffff) + $l3 ) * 0xffff + $l2 ) * 0xffff + $l1 ))
- printf "%u\n" $l0
- done
- return 0
-}
-
-# Wait for udev to settle (create device nodes etc.)
-udevadm_settle()
-{
- if test -x /sbin/udevadm; then
- print_and_scroll_back " Calling udevadm settle (can take a while) "
- /sbin/udevadm settle
- white_out
- elif test -x /sbin/udevsettle; then
- print_and_scroll_back " Calling udevsettle (can take a while) "
- /sbin/udevsettle
- white_out
- else
- usleep 20000
- fi
-}
-
-# Perform scan on a single lun $host $channel $id $lun
-dolunscan()
-{
- SCSISTR=
- devnr="$host $channel $id $lun"
- echo -e " Scanning for device $devnr ... "
- printf "${yellow}OLD: $norm"
- testexist
- # Special case: lun 0 just got added (for reportlunscan),
- # so make sure we correctly treat it as new
- if test "$lun" = "0" -a "$1"; then
- SCSISTR=""
- printf "\r\e[A\e[A\e[A"
- fi
- : f $remove s $SCSISTR
- if test "$remove" -a "$SCSISTR"; then
- # Device exists: Test whether it's still online
- # (testonline returns 1 if it's gone or has changed)
- testonline
- RC=$?
- if test $RC != 0 -o ! -z "$forceremove"; then
- echo -en "\r\e[A\e[A\e[A${red}REM: "
- echo "$SCSISTR" | head -n1
- echo -e "${norm}\e[B\e[B"
- if test -e /sys/class/scsi_device/${host}:${channel}:${id}:${lun}/device; then
- echo 1 > /sys/class/scsi_device/${host}:${channel}:${id}:${lun}/device/delete
- # FIXME: Can we skip udevadm settle for removal?
- #udevadm_settle
- usleep 20000
- else
- echo "scsi remove-single-device $devnr" > /proc/scsi/scsi
- if test $RC -eq 1 -o $lun -eq 0 ; then
- # Try readding, should fail if device is gone
- echo "scsi add-single-device $devnr" > /proc/scsi/scsi
- fi
- fi
- fi
- if test $RC = 0 -o "$forcerescan" ; then
- if test -e /sys/class/scsi_device/${host}:${channel}:${id}:${lun}/device; then
- echo 1 > /sys/class/scsi_device/${host}:${channel}:${id}:${lun}/device/rescan
- udevadm_settle
- fi
- fi
- printf "\r\e[A\e[A\e[A${yellow}OLD: $norm"
- testexist
- if test -z "$SCSISTR"; then
- printf "\r${red}DEL: $norm\r\n\n"
- let rmvd+=1;
- return 1
- fi
- fi
- if test -z "$SCSISTR"; then
- # Device does not exist, try to add
- printf "\r${green}NEW: $norm"
- if test -e /sys/class/scsi_host/host${host}/scan; then
- echo "$channel $id $lun" > /sys/class/scsi_host/host${host}/scan 2> /dev/null
- udevadm_settle
- else
- echo "scsi add-single-device $devnr" > /proc/scsi/scsi
- fi
- testexist
- if test -z "$SCSISTR"; then
- # Device not present
- printf "\r\e[A";
- ## COMMENTED OUT as the "break" below is broken.
- ## Optimization: if lun==0, stop here (only if in non-remove mode)
- #if test $lun = 0 -a -z "$remove" -a $optscan = 1; then
- # break;
- #fi
- else
- let found+=1;
- fi
- fi
-}
-
-# Perform report lun scan on $host $channel $id using REPORT_LUNS
-doreportlun()
-{
- lun=0
- SCSISTR=
- devnr="$host $channel $id $lun"
- echo -en " Scanning for device $devnr ...\r"
- lun0added=
- #printf "${yellow}OLD: $norm"
- # Phase one: If LUN0 does not exist, try to add
- testexist -q
- if test -z "$SCSISTR"; then
- # Device does not exist, try to add
- #printf "\r${green}NEW: $norm"
- if test -e /sys/class/scsi_host/host${host}/scan; then
- echo "$channel $id $lun" > /sys/class/scsi_host/host${host}/scan 2> /dev/null
- udevadm_settle
- else
- echo "scsi add-single-device $devnr" > /proc/scsi/scsi
- fi
- testexist -q
- if test -n "$SCSISTR"; then
- lun0added=1
- #testonline
- else
- # Device not present
- # return
- # Find alternative LUN to send getluns to
- for dev in /sys/class/scsi_device/${host}:${channel}:${id}:*; do
- [ -d "$dev" ] || continue
- lun=${dev##*:}
- break
- done
- fi
- fi
- targetluns=`getluns`
- REPLUNSTAT=$?
- lunremove=
- #echo "getluns reports " $targetluns
- olddev=`find /sys/class/scsi_device/ -name $host:$channel:$id:* 2>/dev/null`
- oldluns=`echo "$olddev" | awk -F'/' '{print $5}' | awk -F':' '{print $4}'`
- oldtargets="$targetluns"
- # OK -- if we don't have a LUN to send a REPORT_LUNS to, we could
- # fall back to wildcard scanning. Same thing if the device does not
- # support REPORT_LUNS
- # TODO: We might be better off to ALWAYS use wildcard scanning if
- # it works
- if test "$REPLUNSTAT" = "1"; then
- if test -e /sys/class/scsi_host/host${host}/scan; then
- echo "$channel $id -" > /sys/class/scsi_host/host${host}/scan 2> /dev/null
- udevadm_settle
- else
- echo "scsi add-single-device $host $channel $id $SCAN_WILD_CARD" > /proc/scsi/scsi
- fi
- targetluns=`find /sys/class/scsi_device/ -name $host:$channel:$id:* 2>/dev/null | awk -F'/' '{print $5}' | awk -F':' '{print $4}' | sort -n`
- let found+=`echo "$targetluns" | wc -l`
- let found-=`echo "$olddev" | wc -l`
- fi
- if test -z "$targetluns"; then targetluns="$oldtargets"; fi
- # Check existing luns
- for dev in $olddev; do
- [ -d "$dev" ] || continue
- lun=${dev##*:}
- newsearch=
- inlist=
- # OK, is existing $lun (still) in reported list
- for tmplun in $targetluns; do
- if test $tmplun -eq $lun ; then
- inlist=1
- dolunscan $lun0added
- else
- newsearch="$newsearch $tmplun"
- fi
- done
- # OK, we have now done a lunscan on $lun and
- # $newsearch is the old $targetluns without $lun
- if [ -z "$inlist" ]; then
- # Stale lun
- lunremove="$lunremove $lun"
- fi
- # $lun removed from $lunsearch (echo for whitespace cleanup)
- targetluns=`echo $newsearch`
- done
- # Add new ones and check stale ones
- for lun in $targetluns $lunremove; do
- dolunscan $lun0added
- done
-}
-
-# Perform search (scan $host)
-dosearch ()
-{
- if test -z "$channelsearch" ; then
- chanlist
- fi
- for channel in $channelsearch; do
- if test -z "$idsearch" ; then
- idlist
- fi
- for id in $idsearch; do
- if test -z "$lunsearch" ; then
- doreportlun
- else
- for lun in $lunsearch; do
- dolunscan
- done
- fi
- done
- done
-}
-
-expandlist ()
-{
- list=$1
- result=""
- first=${list%%,*}
- rest=${list#*,}
- while test ! -z "$first"; do
- beg=${first%%-*};
- if test "$beg" = "$first"; then
- result="$result $beg";
- else
- end=${first#*-}
- result="$result `seq $beg $end`"
- fi
- test "$rest" = "$first" && rest=""
- first=${rest%%,*}
- rest=${rest#*,}
- done
- echo $result
-}
-
-# main
-if test @$1 = @--help -o @$1 = @-h -o @$1 = @-?; then
- echo "Usage: rescan-scsi-bus.sh [options] [host [host ...]]"
- echo "Options:"
- echo " -l activates scanning for LUNs 0--7 [default: 0]"
- echo " -L NUM activates scanning for LUNs 0--NUM [default: 0]"
- echo " -w scan for target device IDs 0--15 [default: 0--7]"
- echo " -c enables scanning of channels 0 1 [default: 0 / all detected ones]"
- echo " -r enables removing of devices [default: disabled]"
- echo " -i issue a FibreChannel LIP reset [default: disabled]"
- echo "--remove: same as -r"
- echo "--issue-lip: same as -i"
- echo "--forcerescan: Rescan existing devices"
- echo "--forceremove: Remove and readd every device (DANGEROUS)"
- echo "--nooptscan: don't stop looking for LUNs is 0 is not found"
- echo "--color: use coloured prefixes OLD/NEW/DEL"
- echo "--hosts=LIST: Scan only host(s) in LIST"
- echo "--channels=LIST: Scan only channel(s) in LIST"
- echo "--ids=LIST: Scan only target ID(s) in LIST"
- echo "--luns=LIST: Scan only lun(s) in LIST"
- echo "--sync/nosync: Issue a sync / no sync [default: sync if remove]"
- echo "--attachpq3: Tell kernel to attach sg to LUN 0 that reports PQ=3"
- echo "--reportlun2: Tell kernel to try REPORT_LUN even on SCSI2 devices"
- echo "--largelun: Tell kernel to support LUNs > 7 even on SCSI2 devs"
- echo "--sparselun: Tell kernel to support sparse LUN numbering"
- echo " Host numbers may thus be specified either directly on cmd line (deprecated) or"
- echo " or with the --hosts=LIST parameter (recommended)."
- echo "LIST: A[-B][,C[-D]]... is a comma separated list of single values and ranges"
- echo " (No spaces allowed.)"
- exit 0
-fi
-
-if test ! -d /sys/class/scsi_host/ -a ! -d /proc/scsi/; then
- echo "Error: SCSI subsystem not active"
- exit 1
-fi
-
-# Make sure sg is there
-modprobe sg >/dev/null 2>&1
-
-if test -x /usr/bin/sg_inq; then
- sg_version=$(sg_inq -V 2>&1 | cut -d " " -f 3)
- sg_version=${sg_version##0.}
- #echo "\"$sg_version\""
- #if [ -z "$sg_version" -o "$sg_version" -lt 70 ] ; then
- #sg_len_arg="-36"
- #else
- sg_len_arg="--len=36"
- #fi
-#else
-# # Slackware note: it may not "fully work", but it works well enough for
-# # what we need here in the installer. If that turns out not to be the
-# # case, let volkerdi know on the Slackware Linux Questions forum.
-# echo "WARN: /usr/bin/sg_inq not present -- please install sg3_utils"
-# echo " or rescan-scsi-bus.sh might not fully work."
-fi
-
-# defaults
-unsetcolor
-lunsearch=
-opt_idsearch=`seq 0 7`
-opt_channelsearch=
-remove=
-forceremove=
-optscan=1
-sync=1
-declare -i scan_flags=0
-if test -d /sys/class/scsi_host; then
- findhosts_26
-else
- findhosts
-fi
-
-# Scan options
-opt="$1"
-while test ! -z "$opt" -a -z "${opt##-*}"; do
- opt=${opt#-}
- case "$opt" in
- l) lunsearch=`seq 0 7` ;;
- L) lunsearch=`seq 0 $2`; shift ;;
- w) opt_idsearch=`seq 0 15` ;;
- c) opt_channelsearch="0 1" ;;
- r) remove=1 ;;
- i) lipreset=1 ;;
- -remove) remove=1 ;;
- -forcerescan) remove=1; forcerescan=1 ;;
- -forceremove) remove=1; forceremove=1 ;;
- -hosts=*) arg=${opt#-hosts=}; hosts=`expandlist $arg` ;;
- -channels=*) arg=${opt#-channels=};opt_channelsearch=`expandlist $arg` ;;
- -ids=*) arg=${opt#-ids=}; opt_idsearch=`expandlist $arg` ;;
- -luns=*) arg=${opt#-luns=}; lunsearch=`expandlist $arg` ;;
- -color) setcolor ;;
- -nooptscan) optscan=0 ;;
- -issue-lip) lipreset=1 ;;
- -sync) sync=2 ;;
- -nosync) sync=0 ;;
- -attachpq3) scan_flags=$(($scan_flags|0x1000000)) ;;
- -reportlun2) scan_flags=$(($scan_flags|0x20000)) ;;
- -largelun) scan_flags=$(($scan_flags|0x200)) ;;
- -sparselun) scan_flags=$((scan_flags|0x40)) ;;
- *) echo "Unknown option -$opt !" ;;
- esac
- shift
- opt="$1"
-done
-
-# Hosts given ?
-if test "@$1" != "@"; then
- hosts=$*
-fi
-
-if [ -d /sys/class/scsi_host -a ! -w /sys/class/scsi_host ]; then
- echo "You need to run scsi-rescan-bus.sh as root"
- exit 2
-fi
-if test "$sync" = 1 -a "$remove" = 1; then sync=2; fi
-if test "$sync" = 2; then echo "Syncing file systems"; sync; fi
-if test -w /sys/module/scsi_mod/parameters/default_dev_flags -a $scan_flags != 0; then
- OLD_SCANFLAGS=`cat /sys/module/scsi_mod/parameters/default_dev_flags`
- NEW_SCANFLAGS=$(($OLD_SCANFLAGS|$scan_flags))
- if test "$OLD_SCANFLAGS" != "$NEW_SCANFLAGS"; then
- echo -n "Temporarily setting kernel scanning flags from "
- printf "0x%08x to 0x%08x\n" $OLD_SCANFLAGS $NEW_SCANFLAGS
- echo $NEW_SCANFLAGS > /sys/module/scsi_mod/parameters/default_dev_flags
- else
- unset OLD_SCANFLAGS
- fi
-fi
-echo "Scanning SCSI subsystem for new devices"
-test -z "$remove" || echo " and remove devices that have disappeared"
-declare -i found=0
-declare -i rmvd=0
-for host in $hosts; do
- echo -n "Scanning host $host "
- if test -e /sys/class/fc_host/host$host ; then
- # It's pointless to do a target scan on FC
- if test -n "$lipreset" ; then
- echo 1 > /sys/class/fc_host/host$host/issue_lip 2> /dev/null;
- udevadm_settle
- fi
- # We used to always trigger a rescan for FC to update channels and targets
- # Commented out -- as discussed with Hannes we should rely
- # on the main loop doing the scan, no need to do it here.
- #echo "- - -" > /sys/class/scsi_host/host$host/scan 2> /dev/null;
- #udevadm_settle
- channelsearch=
- idsearch=
- else
- channelsearch=$opt_channelsearch
- idsearch=$opt_idsearch
- fi
- [ -n "$channelsearch" ] && echo -n "channels $channelsearch "
- echo -n "for "
- if [ -n "$idsearch" ] ; then
- echo -n " SCSI target IDs " $idsearch
- else
- echo -n " all SCSI target IDs"
- fi
- if [ -n "$lunsearch" ] ; then
- echo ", LUNs " $lunsearch
- else
- echo ", all LUNs"
- fi
- dosearch
-done
-if test -n "$OLD_SCANFLAGS"; then
- echo $OLD_SCANFLAGS > /sys/module/scsi_mod/parameters/default_dev_flags
-fi
-echo "$found new device(s) found. "
-echo "$rmvd device(s) removed. "
-
-# Local Variables:
-# sh-basic-offset: 2
-# End:
-
+../usr/bin/rescan-scsi-bus.sh \ No newline at end of file
diff --git a/source/k/build-all-kernels.sh b/source/k/build-all-kernels.sh
index e4b907bae..91ecb9983 100755
--- a/source/k/build-all-kernels.sh
+++ b/source/k/build-all-kernels.sh
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
if [ -z "$VERSION" ]; then
# Get the filename of the newest kernel tarball:
KERNEL_SOURCE_FILE="$(/bin/ls -t linux-*.tar.?z | head -n 1 )"
diff --git a/source/k/kernel-configs/config-generic-6.9 b/source/k/kernel-configs/config-generic-6.9
index 264ae3c26..5e558d736 100644
--- a/source/k/kernel-configs/config-generic-6.9
+++ b/source/k/kernel-configs/config-generic-6.9
@@ -2,9 +2,9 @@
# Automatically generated file; DO NOT EDIT.
# Linux/x86 6.9.0 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.2.0"
+CONFIG_CC_VERSION_TEXT="gcc (GCC) 14.1.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=130200
+CONFIG_GCC_VERSION=140100
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
CONFIG_AS_VERSION=24200
@@ -16,7 +16,6 @@ CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
-CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
CONFIG_TOOLS_SUPPORT_RELR=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
@@ -535,7 +534,7 @@ CONFIG_CPU_MITIGATIONS=y
CONFIG_MITIGATION_PAGE_TABLE_ISOLATION=y
CONFIG_MITIGATION_RETPOLINE=y
CONFIG_MITIGATION_RETHUNK=y
-CONFIG_MITIGATION_GDS_FORCE=y
+# CONFIG_MITIGATION_GDS_FORCE is not set
CONFIG_MITIGATION_RFDS=y
CONFIG_MITIGATION_SPECTRE_BHI=y
@@ -892,6 +891,8 @@ CONFIG_GCC_PLUGINS=y
# CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set
CONFIG_FUNCTION_ALIGNMENT_4B=y
CONFIG_FUNCTION_ALIGNMENT=4
+CONFIG_CC_HAS_MIN_FUNCTION_ALIGNMENT=y
+CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
@@ -9968,7 +9969,7 @@ CONFIG_F2FS_FS_LZ4HC=y
CONFIG_F2FS_FS_ZSTD=y
CONFIG_F2FS_IOSTAT=y
# CONFIG_F2FS_UNFAIR_RWSEM is not set
-CONFIG_BCACHEFS_FS=m
+CONFIG_BCACHEFS_FS=y
CONFIG_BCACHEFS_QUOTA=y
# CONFIG_BCACHEFS_ERASURE_CODING is not set
CONFIG_BCACHEFS_POSIX_ACL=y
@@ -10437,7 +10438,7 @@ CONFIG_CRYPTO_TWOFISH_COMMON=y
#
CONFIG_CRYPTO_ADIANTUM=m
CONFIG_CRYPTO_ARC4=y
-CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_CHACHA20=y
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=y
@@ -10475,7 +10476,7 @@ CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=y
CONFIG_CRYPTO_POLYVAL=m
-CONFIG_CRYPTO_POLY1305=m
+CONFIG_CRYPTO_POLY1305=y
CONFIG_CRYPTO_RMD160=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
@@ -10630,13 +10631,13 @@ CONFIG_CRYPTO_LIB_AES=y
CONFIG_CRYPTO_LIB_ARC4=y
CONFIG_CRYPTO_LIB_GF128MUL=y
CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
-CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=y
CONFIG_CRYPTO_LIB_CHACHA=m
CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
CONFIG_CRYPTO_LIB_CURVE25519=m
CONFIG_CRYPTO_LIB_DES=y
CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1
-CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
+CONFIG_CRYPTO_LIB_POLY1305_GENERIC=y
CONFIG_CRYPTO_LIB_POLY1305=m
CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
CONFIG_CRYPTO_LIB_SHA1=y
diff --git a/source/k/kernel-configs/config-generic-6.9.x64 b/source/k/kernel-configs/config-generic-6.9.x64
index 7f81b3ddf..7f6a78cb4 100644
--- a/source/k/kernel-configs/config-generic-6.9.x64
+++ b/source/k/kernel-configs/config-generic-6.9.x64
@@ -2,9 +2,9 @@
# Automatically generated file; DO NOT EDIT.
# Linux/x86 6.9.0 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.2.0"
+CONFIG_CC_VERSION_TEXT="gcc (GCC) 14.1.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=130200
+CONFIG_GCC_VERSION=140100
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
CONFIG_AS_VERSION=24200
@@ -15,7 +15,6 @@ CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
-CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
CONFIG_TOOLS_SUPPORT_RELR=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
@@ -552,7 +551,7 @@ CONFIG_MITIGATION_IBPB_ENTRY=y
CONFIG_MITIGATION_IBRS_ENTRY=y
CONFIG_MITIGATION_SRSO=y
CONFIG_MITIGATION_SLS=y
-CONFIG_MITIGATION_GDS_FORCE=y
+# CONFIG_MITIGATION_GDS_FORCE is not set
CONFIG_MITIGATION_RFDS=y
CONFIG_MITIGATION_SPECTRE_BHI=y
CONFIG_ARCH_HAS_ADD_PAGES=y
@@ -935,6 +934,8 @@ CONFIG_GCC_PLUGINS=y
CONFIG_FUNCTION_ALIGNMENT_4B=y
CONFIG_FUNCTION_ALIGNMENT_16B=y
CONFIG_FUNCTION_ALIGNMENT=16
+CONFIG_CC_HAS_MIN_FUNCTION_ALIGNMENT=y
+CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
@@ -10001,7 +10002,7 @@ CONFIG_F2FS_FS_LZ4HC=y
CONFIG_F2FS_FS_ZSTD=y
CONFIG_F2FS_IOSTAT=y
# CONFIG_F2FS_UNFAIR_RWSEM is not set
-CONFIG_BCACHEFS_FS=m
+CONFIG_BCACHEFS_FS=y
CONFIG_BCACHEFS_QUOTA=y
# CONFIG_BCACHEFS_ERASURE_CODING is not set
CONFIG_BCACHEFS_POSIX_ACL=y
@@ -10479,7 +10480,7 @@ CONFIG_CRYPTO_TWOFISH_COMMON=y
#
CONFIG_CRYPTO_ADIANTUM=m
CONFIG_CRYPTO_ARC4=y
-CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_CHACHA20=y
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=y
@@ -10517,7 +10518,7 @@ CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=y
CONFIG_CRYPTO_POLYVAL=m
-CONFIG_CRYPTO_POLY1305=m
+CONFIG_CRYPTO_POLY1305=y
CONFIG_CRYPTO_RMD160=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
@@ -10706,7 +10707,7 @@ CONFIG_CRYPTO_LIB_GF128MUL=y
CONFIG_CRYPTO_ARCH_HAVE_LIB_BLAKE2S=y
CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
-CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=y
CONFIG_CRYPTO_LIB_CHACHA=m
CONFIG_CRYPTO_ARCH_HAVE_LIB_CURVE25519=m
CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
@@ -10714,7 +10715,7 @@ CONFIG_CRYPTO_LIB_CURVE25519=m
CONFIG_CRYPTO_LIB_DES=y
CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11
CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m
-CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
+CONFIG_CRYPTO_LIB_POLY1305_GENERIC=y
CONFIG_CRYPTO_LIB_POLY1305=m
CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
CONFIG_CRYPTO_LIB_SHA1=y
@@ -10971,6 +10972,7 @@ CONFIG_ARCH_SUPPORTS_KMAP_LOCAL_FORCE_MAP=y
CONFIG_HAVE_ARCH_KASAN=y
CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_CC_HAS_KASAN_SW_TAGS=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
# CONFIG_KASAN is not set
CONFIG_HAVE_ARCH_KFENCE=y
diff --git a/source/k/kernel-configs/config-huge-6.9 b/source/k/kernel-configs/config-huge-6.9
index d09f50d26..ac046ad67 100644
--- a/source/k/kernel-configs/config-huge-6.9
+++ b/source/k/kernel-configs/config-huge-6.9
@@ -2,9 +2,9 @@
# Automatically generated file; DO NOT EDIT.
# Linux/x86 6.9.0 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.2.0"
+CONFIG_CC_VERSION_TEXT="gcc (GCC) 14.1.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=130200
+CONFIG_GCC_VERSION=140100
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
CONFIG_AS_VERSION=24200
@@ -16,7 +16,6 @@ CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
-CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
CONFIG_TOOLS_SUPPORT_RELR=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
@@ -535,7 +534,7 @@ CONFIG_CPU_MITIGATIONS=y
CONFIG_MITIGATION_PAGE_TABLE_ISOLATION=y
CONFIG_MITIGATION_RETPOLINE=y
CONFIG_MITIGATION_RETHUNK=y
-CONFIG_MITIGATION_GDS_FORCE=y
+# CONFIG_MITIGATION_GDS_FORCE is not set
CONFIG_MITIGATION_RFDS=y
CONFIG_MITIGATION_SPECTRE_BHI=y
@@ -892,6 +891,8 @@ CONFIG_GCC_PLUGINS=y
# CONFIG_GCC_PLUGIN_LATENT_ENTROPY is not set
CONFIG_FUNCTION_ALIGNMENT_4B=y
CONFIG_FUNCTION_ALIGNMENT=4
+CONFIG_CC_HAS_MIN_FUNCTION_ALIGNMENT=y
+CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
@@ -9968,7 +9969,7 @@ CONFIG_F2FS_FS_LZ4HC=y
CONFIG_F2FS_FS_ZSTD=y
CONFIG_F2FS_IOSTAT=y
# CONFIG_F2FS_UNFAIR_RWSEM is not set
-CONFIG_BCACHEFS_FS=m
+CONFIG_BCACHEFS_FS=y
CONFIG_BCACHEFS_QUOTA=y
# CONFIG_BCACHEFS_ERASURE_CODING is not set
CONFIG_BCACHEFS_POSIX_ACL=y
@@ -10437,7 +10438,7 @@ CONFIG_CRYPTO_TWOFISH_COMMON=y
#
CONFIG_CRYPTO_ADIANTUM=m
CONFIG_CRYPTO_ARC4=y
-CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_CHACHA20=y
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=y
@@ -10475,7 +10476,7 @@ CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=y
CONFIG_CRYPTO_POLYVAL=m
-CONFIG_CRYPTO_POLY1305=m
+CONFIG_CRYPTO_POLY1305=y
CONFIG_CRYPTO_RMD160=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
@@ -10630,13 +10631,13 @@ CONFIG_CRYPTO_LIB_AES=y
CONFIG_CRYPTO_LIB_ARC4=y
CONFIG_CRYPTO_LIB_GF128MUL=y
CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
-CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=y
CONFIG_CRYPTO_LIB_CHACHA=m
CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
CONFIG_CRYPTO_LIB_CURVE25519=m
CONFIG_CRYPTO_LIB_DES=y
CONFIG_CRYPTO_LIB_POLY1305_RSIZE=1
-CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
+CONFIG_CRYPTO_LIB_POLY1305_GENERIC=y
CONFIG_CRYPTO_LIB_POLY1305=m
CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
CONFIG_CRYPTO_LIB_SHA1=y
diff --git a/source/k/kernel-configs/config-huge-6.9.x64 b/source/k/kernel-configs/config-huge-6.9.x64
index 6309cc58c..e9c5673fc 100644
--- a/source/k/kernel-configs/config-huge-6.9.x64
+++ b/source/k/kernel-configs/config-huge-6.9.x64
@@ -2,9 +2,9 @@
# Automatically generated file; DO NOT EDIT.
# Linux/x86 6.9.0 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.2.0"
+CONFIG_CC_VERSION_TEXT="gcc (GCC) 14.1.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=130200
+CONFIG_GCC_VERSION=140100
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
CONFIG_AS_VERSION=24200
@@ -15,7 +15,6 @@ CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
-CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
CONFIG_TOOLS_SUPPORT_RELR=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
@@ -552,7 +551,7 @@ CONFIG_MITIGATION_IBPB_ENTRY=y
CONFIG_MITIGATION_IBRS_ENTRY=y
CONFIG_MITIGATION_SRSO=y
CONFIG_MITIGATION_SLS=y
-CONFIG_MITIGATION_GDS_FORCE=y
+# CONFIG_MITIGATION_GDS_FORCE is not set
CONFIG_MITIGATION_RFDS=y
CONFIG_MITIGATION_SPECTRE_BHI=y
CONFIG_ARCH_HAS_ADD_PAGES=y
@@ -935,6 +934,8 @@ CONFIG_GCC_PLUGINS=y
CONFIG_FUNCTION_ALIGNMENT_4B=y
CONFIG_FUNCTION_ALIGNMENT_16B=y
CONFIG_FUNCTION_ALIGNMENT=16
+CONFIG_CC_HAS_MIN_FUNCTION_ALIGNMENT=y
+CONFIG_CC_HAS_SANE_FUNCTION_ALIGNMENT=y
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=y
@@ -10001,7 +10002,7 @@ CONFIG_F2FS_FS_LZ4HC=y
CONFIG_F2FS_FS_ZSTD=y
CONFIG_F2FS_IOSTAT=y
# CONFIG_F2FS_UNFAIR_RWSEM is not set
-CONFIG_BCACHEFS_FS=m
+CONFIG_BCACHEFS_FS=y
CONFIG_BCACHEFS_QUOTA=y
# CONFIG_BCACHEFS_ERASURE_CODING is not set
CONFIG_BCACHEFS_POSIX_ACL=y
@@ -10479,7 +10480,7 @@ CONFIG_CRYPTO_TWOFISH_COMMON=y
#
CONFIG_CRYPTO_ADIANTUM=m
CONFIG_CRYPTO_ARC4=y
-CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_CHACHA20=y
CONFIG_CRYPTO_CBC=y
CONFIG_CRYPTO_CTR=y
CONFIG_CRYPTO_CTS=y
@@ -10517,7 +10518,7 @@ CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=y
CONFIG_CRYPTO_POLYVAL=m
-CONFIG_CRYPTO_POLY1305=m
+CONFIG_CRYPTO_POLY1305=y
CONFIG_CRYPTO_RMD160=y
CONFIG_CRYPTO_SHA1=y
CONFIG_CRYPTO_SHA256=y
@@ -10706,7 +10707,7 @@ CONFIG_CRYPTO_LIB_GF128MUL=y
CONFIG_CRYPTO_ARCH_HAVE_LIB_BLAKE2S=y
CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
-CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=y
CONFIG_CRYPTO_LIB_CHACHA=m
CONFIG_CRYPTO_ARCH_HAVE_LIB_CURVE25519=m
CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
@@ -10714,7 +10715,7 @@ CONFIG_CRYPTO_LIB_CURVE25519=m
CONFIG_CRYPTO_LIB_DES=y
CONFIG_CRYPTO_LIB_POLY1305_RSIZE=11
CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m
-CONFIG_CRYPTO_LIB_POLY1305_GENERIC=m
+CONFIG_CRYPTO_LIB_POLY1305_GENERIC=y
CONFIG_CRYPTO_LIB_POLY1305=m
CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
CONFIG_CRYPTO_LIB_SHA1=y
@@ -10971,6 +10972,7 @@ CONFIG_ARCH_SUPPORTS_KMAP_LOCAL_FORCE_MAP=y
CONFIG_HAVE_ARCH_KASAN=y
CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_CC_HAS_KASAN_SW_TAGS=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
# CONFIG_KASAN is not set
CONFIG_HAVE_ARCH_KFENCE=y
diff --git a/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild b/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
index 59032f628..4c18cb626 100755
--- a/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
+++ b/source/l/gdk-pixbuf2/gdk-pixbuf2.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=gdk-pixbuf
VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
diff --git a/source/n/popa3d/popa3d.SlackBuild b/source/n/popa3d/popa3d.SlackBuild
index 43ff60c2d..91b1b6436 100755
--- a/source/n/popa3d/popa3d.SlackBuild
+++ b/source/n/popa3d/popa3d.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PKGNAM=popa3d
VERSION=1.0.3
-BUILD=${BUILD:-7}
+BUILD=${BUILD:-8}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
@@ -46,6 +46,20 @@ fi
NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+if [ "$ARCH" = "i586" ]; then
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "armv7hl" ]; then
+ LIBDIRSUFFIX=""
+else
+ LIBDIRSUFFIX=""
+fi
+
TMP=${TMP:-/tmp}
PKG=$TMP/package-popa3d
rm -rf $PKG
@@ -56,12 +70,8 @@ rm -rf popa3d-$VERSION
tar xvf $CWD/popa3d-$VERSION.tar.?z || exit 1
cd popa3d-$VERSION || exit 1
-# Choose correct options depending on whether PAM is installed:
-if [ -L /lib${LIBDIRSUFFIX}/libpam.so.? ]; then
- zcat $CWD/popa3d.pam.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
-else
- zcat $CWD/popa3d.shadow.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
-fi
+# Choose correct options for PAM:
+zcat $CWD/popa3d.pam.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1
zcat $CWD/popa3d.gcc14.diff.gz | patch -p1 --verbose || exit 1
diff --git a/source/n/popa3d/popa3d.pam.diff b/source/n/popa3d/popa3d.pam.diff
index c0b643844..700dd40d6 100644
--- a/source/n/popa3d/popa3d.pam.diff
+++ b/source/n/popa3d/popa3d.pam.diff
@@ -1,7 +1,6 @@
-diff -up ../popa3d-1.0.3.orig/Makefile ./Makefile
---- ../popa3d-1.0.3.orig/Makefile 2006-03-05 05:36:54.000000000 -0500
-+++ ./Makefile 2018-09-18 12:56:05.412312376 -0400
-@@ -5,26 +5,26 @@ MKDIR = mkdir -p
+--- ./Makefile.orig 2006-03-05 04:36:54.000000000 -0600
++++ ./Makefile 2024-05-15 19:42:54.924020444 -0500
+@@ -5,26 +5,26 @@
INSTALL = install -c
CFLAGS = -Wall -O2 -fomit-frame-pointer
# You may use OpenSSL's MD5 routines instead of the ones supplied here
@@ -33,10 +32,8 @@ diff -up ../popa3d-1.0.3.orig/Makefile ./Makefile
SBINDIR = $(PREFIX)/sbin
MANDIR = $(PREFIX)/man
-Common subdirectories: ../popa3d-1.0.3.orig/md5 and ./md5
-diff -up ../popa3d-1.0.3.orig/params.h ./params.h
---- ../popa3d-1.0.3.orig/params.h 2006-03-05 08:18:32.000000000 -0500
-+++ ./params.h 2018-09-18 12:55:55.953210742 -0400
+--- ./params.h.orig 2006-03-05 07:18:32.000000000 -0600
++++ ./params.h 2024-05-15 19:43:21.877021047 -0500
@@ -13,7 +13,7 @@
/*
* Are we going to be a standalone server or start via an inetd clone?
@@ -55,6 +52,17 @@ diff -up ../popa3d-1.0.3.orig/params.h ./params.h
/*
* An empty directory to chroot to before authentication. The directory
+@@ -155,8 +155,8 @@
+ * Note that there's no built-in password aging support.
+ */
+ #define AUTH_PASSWD 0
+-#define AUTH_SHADOW 1
+-#define AUTH_PAM 0
++#define AUTH_SHADOW 0
++#define AUTH_PAM 1
+ #define AUTH_PAM_USERPASS 0
+ #define USE_LIBPAM_USERPASS 0
+
@@ -191,7 +191,7 @@
*
* #undef this for qmail-style $HOME/Mailbox mailboxes.
diff --git a/source/n/popa3d/popa3d.shadow.diff b/source/n/popa3d/popa3d.shadow.diff
deleted file mode 100644
index 773f90856..000000000
--- a/source/n/popa3d/popa3d.shadow.diff
+++ /dev/null
@@ -1,58 +0,0 @@
---- ./Makefile.orig 2006-03-05 04:36:20.000000000 -0600
-+++ ./Makefile 2006-03-12 16:20:44.000000000 -0600
-@@ -5,11 +5,11 @@
- INSTALL = install -c
- CFLAGS = -Wall -O2 -fomit-frame-pointer
- # You may use OpenSSL's MD5 routines instead of the ones supplied here
--#CFLAGS += -DHAVE_OPENSSL
-+CFLAGS += -DHAVE_OPENSSL
- LDFLAGS = -s
- LIBS =
- # Linux with glibc, FreeBSD, NetBSD
--#LIBS += -lcrypt
-+LIBS += -lcrypt
- # HP-UX trusted system
- #LIBS += -lsec
- # Solaris (POP_STANDALONE, POP_VIRTUAL)
-@@ -21,10 +21,10 @@
- # libwrap may also want this
- #LIBS += -lnsl
- # OpenSSL (-DHAVE_OPENSSL)
--#LIBS += -lcrypto
-+LIBS += -lcrypto
-
- DESTDIR =
--PREFIX = /usr/local
-+PREFIX = /usr
- SBINDIR = $(PREFIX)/sbin
- MANDIR = $(PREFIX)/man
-
---- ./params.h.orig 2006-03-05 06:44:52.000000000 -0600
-+++ ./params.h 2006-03-12 16:23:16.000000000 -0600
-@@ -13,7 +13,7 @@
- /*
- * Are we going to be a standalone server or start via an inetd clone?
- */
--#define POP_STANDALONE 0
-+#define POP_STANDALONE 1
-
- #if POP_STANDALONE
-
-@@ -103,7 +103,7 @@
- * A pseudo-user to run as before authentication. The user and its UID
- * must not be used for any other purpose.
- */
--#define POP_USER POP_SERVER
-+#define POP_USER "pop"
-
- /*
- * An empty directory to chroot to before authentication. The directory
-@@ -191,7 +191,7 @@
- *
- * #undef this for qmail-style $HOME/Mailbox mailboxes.
- */
--#define MAIL_SPOOL_PATH "/var/mail"
-+#define MAIL_SPOOL_PATH "/var/spool/mail"
-
- #ifndef MAIL_SPOOL_PATH
- /*