Commit 794fe02e50 for openssl.org

commit 794fe02e500ff58dabb94513f577e61cc9b85a18
Author: Eugene Syromiatnikov <esyr@openssl.org>
Date:   Tue Mar 31 12:17:51 2026 +0200

    util/checkplatformsyms.pl: update the Unix symbol filtering

    Replace the grep|grep|awk|sed|sort|uniq abomination with a simple
    and elegant awk script.

    Signed-off-by: Eugene Syromiatnikov <esyr@openssl.org>

    Reviewed-by: Neil Horman <nhorman@openssl.org>
    Reviewed-by: Tomas Mraz <tomas@openssl.foundation>
    MergeDate: Fri Apr  3 15:42:20 2026
    (Merged from https://github.com/openssl/openssl/pull/30635)

diff --git a/util/checkplatformsyms.pl b/util/checkplatformsyms.pl
index f0ab62bdba..0f44a4dbd9 100755
--- a/util/checkplatformsyms.pl
+++ b/util/checkplatformsyms.pl
@@ -73,9 +73,13 @@ if ($Config{osname} eq "MSWin32") {
         exit !$ok;
     }
 else {
-        $cmd = "objdump -t " . $objfilelist . " | grep UND | grep -v \@OPENSSL";
-        $cmd = $cmd . " | awk '{print \$NF}' |";
-        $cmd = $cmd . " sed -e\"s/@.*\$//\" | sort | uniq";
+        $cmd = "objdump -t " . $objfilelist . " | awk " .
+            "'/\\\\*UND\\\\*/ {" .
+                "split(\$NF, sym_lib, \"@\");" .
+                "if (sym_lib[2] !~ \"OPENSSL_[1-9][0-9]*\\\\.[0-9]+\\\\.[0-9]+\$\")" .
+                    "syms[sym_lib[1]] = 1;" .
+            "}" .
+            "END { for (s in syms) print s; };'";

         open $expsyms, '<', $expectedsyms or die;
         {