LibreSSL has no engine functions anymore.  Do not use them to check
whether loading the Net::SSLeay module was successful.

Non blocking SSL does not use syswrite properly.
https://github.com/rhandom/perl-net-server/pull/49

Index: lib/Net/Server/Proto/SSLEAY.pm
--- lib/Net/Server/Proto/SSLEAY.pm.orig
+++ lib/Net/Server/Proto/SSLEAY.pm
@@ -28,7 +28,7 @@ use Net::Server::Proto qw(SOMAXCONN AF_INET AF_INET6 A
 BEGIN {
     eval { require Net::SSLeay; 1 }
         or warn "Module Net::SSLeay is required for SSLeay.";
-    for my $sub (qw(load_error_strings SSLeay_add_ssl_algorithms ENGINE_load_builtin_engines ENGINE_register_all_complete randomize)) {
+    for my $sub (qw(load_error_strings SSLeay_add_ssl_algorithms randomize)) {
         my $subref = Net::SSLeay->can($sub);
         $subref->() if $subref;
     }
@@ -376,7 +376,7 @@ sub syswrite {
     my $tries = 5;
     while ($tries-->0) {
         $! = 0;
-        my $wrote = Net::SSLeay::write($ssl, $buf);
+        my $wrote = Net::SSLeay::write($ssl, $content);
         return $wrote if $wrote >= 0;
         return if $client->SSLeay_check_perm("SSLEAY syswrite");
     }
