Skip to Content.
Sympa Menu

sm-commit - [SM-Commit] GIT changes to master grimoire by Thomas Orgis (c31ecf2cf871aee879090e89f45d12c2774c39f8)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: Thomas Orgis <scm AT sourcemage.org>
  • To: sm-commit AT lists.ibiblio.org
  • Subject: [SM-Commit] GIT changes to master grimoire by Thomas Orgis (c31ecf2cf871aee879090e89f45d12c2774c39f8)
  • Date: Mon, 15 Jan 2024 19:09:13 +0000

GIT changes to master grimoire by Thomas Orgis <sobukus AT sourcemage.org>:

crypto/openssl/BUILD | 18 +++++++-----------
crypto/openssl/FINAL | 4 ++++
crypto/openssl/HISTORY | 4 ++++
3 files changed, 15 insertions(+), 11 deletions(-)

New commits:
commit c31ecf2cf871aee879090e89f45d12c2774c39f8
Author: Thomas Orgis <sobukus AT sourcemage.org>
Commit: Thomas Orgis <sobukus AT sourcemage.org>

crypto/openssl: Rework the nasty wget rebuild hack.

Besides the work in PRE_REMOVE, openssl/BUILD also built
and installed a rogue wget binary to work with the to-be updated
openssl libs. It did this in a very crude manner that also
overwrote existing openssl libs before installing.

This even manage to overwrite libssl.so.1.1 with the contents
of libssl.so.3 due to symlinks being followed. A nice way
to kill my SSH daemon and active sessions. Thank you.

Also, the wget build did not work anyway for the upgrade from
1.1 to 3, as it used installed headers to link with to-be-installed lib.

Now wget is built using matching headers and libraries, without
pre-installing any of them, and slipped in in FINAL. It is still
a nasty hack, but more likely to do the right thing now.

diff --git a/crypto/openssl/BUILD b/crypto/openssl/BUILD
index 634680e..1c046e4 100755
--- a/crypto/openssl/BUILD
+++ b/crypto/openssl/BUILD
@@ -37,19 +37,15 @@ make build_man_docs &&
RUN_COMPILER_DIR="${RUN_COMPILER_DIR:-/var/lib/sorcery/build}" &&
PATH="${PATH//$RUN_COMPILER_DIR:/}" &&
(
- OPTS="--with-ssl=openssl"
-
- delve -c start BUILD wget && # this links against old
libraries still
+ # Build wget with just prepared openssl.
+ OPTS="--with-ssl=openssl" \
+ OPENSSL_CFLAGS="-I$SOURCE_DIRECTORY/include" \
+ OPENSSL_LIBS="-L$SOURCE_DIRECTORY $(PKG_CONFIG_LIBDIR=$SOURCE_DIRECTORY
pkg-config --libs openssl)" \
+ delve -c start BUILD wget &&
local TEMPWGET_DIR="$BUILD_DIRECTORY/wget-$(gaze version wget |
head -n 3 | tail -n 1 | awk '{ print $4 }')" &&
# $4 is grimoire version, not installed version --
internal sorcery interface, too?
- cd "$TEMPWGET_DIR/src" &&
- rm wget &&
- cp -vf $SOURCE_DIRECTORY/lib{ssl,crypto}.so* "$INSTALL_ROOT/usr/lib/" &&
- make wget && # race to get a new library
wget built
- install -m 755 wget /usr/bin/wget && # and installed
- cd - &&
- ldconfig
+ cp "$TEMPWGET_DIR/src/wget" "$SOURCE_DIRECTORY"
)
-fi
+ fi
}
diff --git a/crypto/openssl/FINAL b/crypto/openssl/FINAL
new file mode 100755
index 0000000..2736910
--- /dev/null
+++ b/crypto/openssl/FINAL
@@ -0,0 +1,4 @@
+if [[ -e "$SOURCE_DIRECTORY/wget" ]]; then
+ message "Installing prepared wget binary to survive openssl update."
+ install -m 755 "$SOURCE_DIRECTORY/wget" "$INSTALL_ROOT/usr/bin/wget"
+fi
diff --git a/crypto/openssl/HISTORY b/crypto/openssl/HISTORY
index a5682fa..c58015f 100644
--- a/crypto/openssl/HISTORY
+++ b/crypto/openssl/HISTORY
@@ -1,3 +1,7 @@
+2024-01-15 Thomas Orgis <sobukus AT sourcemage.org>
+ * BUILD, FINAL: Rework the wretched wget preservation hack
+ not to overwrite libraries being in use (by sshd, for example).
+
2023-12-04 Treeve Jelbert <treeve AT sourcemage.org>
* DETAILS: version 3.2.0
* openssl.gpg: updated



  • [SM-Commit] GIT changes to master grimoire by Thomas Orgis (c31ecf2cf871aee879090e89f45d12c2774c39f8), Thomas Orgis, 01/15/2024

Archive powered by MHonArc 2.6.24.

Top of Page