Disable devcryptoeng on newer OpenBSD versions
authorRichard Levitte <levitte@openssl.org>
Tue, 3 Dec 2019 23:14:02 +0000 (00:14 +0100)
committerRichard Levitte <levitte@openssl.org>
Tue, 10 Dec 2019 13:20:34 +0000 (14:20 +0100)
It's reported that /dev/crypto support has been dropped in OpenBSD 5.7.

Fixes #10552

Reviewed-by: Tim Hudson <tjh@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10566)

Configure

index bad09ed..55b50f7 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1590,6 +1590,21 @@ unless ($disabled{afalgeng}) {
     }
 }
 
+unless ($disabled{devcryptoeng}) {
+    if ($target =~ m/^BSD/) {
+        my $maxver = 5*100 + 7;
+        my $sysstr = `uname -s`;
+        my $verstr = `uname -r`;
+        $sysstr =~ s|\R$||;
+        $verstr =~ s|\R$||;
+        my ($ma, $mi, @rest) = split m|\.|, $verstr;
+        my $ver = $ma*100 + $mi;
+        if ($sysstr eq 'OpenBSD' && $ver >= $maxver) {
+            disable('too-new-kernel', 'devcryptoeng');
+        }
+    }
+}
+
 push @{$config{openssl_feature_defines}}, "OPENSSL_NO_AFALGENG" if ($disabled{afalgeng});
 
 unless ($disabled{ktls}) {