File openssh-10.0p2-relax-openssl-version-check.patch of Package openssh
Index: openssh-10.0p1/openbsd-compat/openssl-compat.c
===================================================================
--- openssh-10.0p1.orig/openbsd-compat/openssl-compat.c
+++ openssh-10.0p1/openbsd-compat/openssl-compat.c
@@ -52,7 +52,7 @@ ssh_compatible_openssl(long headerver, l
* For versions >= 3.0, only the major and status must match.
*/
if (headerver >= 0x3000000f) {
- mask = 0xf000000fL; /* major,status */
+ mask = 0xf0000000L; /* major,status */
return (headerver & mask) == (libver & mask);
}
Index: openssh-10.0p1/openbsd-compat/regress/opensslvertest.c
===================================================================
--- openssh-10.0p1.orig/openbsd-compat/regress/opensslvertest.c
+++ openssh-10.0p1/openbsd-compat/regress/opensslvertest.c
@@ -55,6 +55,9 @@ struct version_test {
{ 0x3010101fL, 0x3020001fL, 1}, /* newer library minor version: ok */
{ 0x3010101fL, 0x1010101fL, 0}, /* older library major version: NO */
{ 0x3010101fL, 0x4010101fL, 0}, /* newer library major version: NO */
+
+ { 0x30500020L, 0x3050003fL, 1}, /* newer library + prerelease: ok */
+ { 0x30500020L, 0x4050003fL, 0}, /* newer library major version: NO */
};
void