This is an automated email from the ASF dual-hosted git repository.

remm pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/main by this push:
     new 705e3644d7 Cleanup typing for password callbacks
705e3644d7 is described below

commit 705e3644d7552298d1e6f6809ea4404153427ad4
Author: remm <r...@apache.org>
AuthorDate: Tue Jan 2 13:51:56 2024 +0100

    Cleanup typing for password callbacks
    
    Although this adds two more classes, removing type hacks is likely
    better.
    Also essentially removes the default password callback since right now I
    don't see where it is used. Will test further if anything bad happens.
---
 .../util/net/openssl/panama/OpenSSLContext.java    |   36 +-
 .../util/openssl/PEM_read_bio_PrivateKey$cb.java   |   65 ++
 .../util/openssl/PEM_read_bio_X509_AUX$cb.java     |   65 ++
 java/org/apache/tomcat/util/openssl/openssl_h.java | 1000 ++++++++++----------
 4 files changed, 646 insertions(+), 520 deletions(-)

diff --git a/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLContext.java 
b/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLContext.java
index 13691d58d8..a1ae1a1b87 100644
--- a/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLContext.java
+++ b/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLContext.java
@@ -66,6 +66,8 @@ import org.apache.tomcat.util.net.openssl.OpenSSLConf;
 import org.apache.tomcat.util.net.openssl.OpenSSLConfCmd;
 import org.apache.tomcat.util.net.openssl.OpenSSLStatus;
 import org.apache.tomcat.util.net.openssl.OpenSSLUtil;
+import org.apache.tomcat.util.openssl.PEM_read_bio_PrivateKey$cb;
+import org.apache.tomcat.util.openssl.PEM_read_bio_X509_AUX$cb;
 import org.apache.tomcat.util.openssl.SSL_CTX_set_alpn_select_cb$cb;
 import org.apache.tomcat.util.openssl.SSL_CTX_set_cert_verify_callback$cb;
 import org.apache.tomcat.util.openssl.SSL_CTX_set_default_passwd_cb$cb;
@@ -133,9 +135,6 @@ public class OpenSSLContext implements 
org.apache.tomcat.util.net.SSLContext {
 
     private boolean noOcspCheck = false;
 
-    // Password callback
-    private final MemorySegment openSSLCallbackPassword;
-
     private static final ConcurrentHashMap<Long, ContextState> states = new 
ConcurrentHashMap<>();
     private static ContextState getState(MemorySegment ctx) {
         return states.get(Long.valueOf(ctx.address()));
@@ -279,8 +278,8 @@ public class OpenSSLContext implements 
org.apache.tomcat.util.net.SSLContext {
             // Probably not needed
 
             // Set int pem_password_cb(char *buf, int size, int rwflag, void 
*u) callback
-            openSSLCallbackPassword = 
SSL_CTX_set_default_passwd_cb$cb.allocate(new PasswordCallback(), contextArena);
-            SSL_CTX_set_default_passwd_cb(sslCtx, openSSLCallbackPassword);
+            SSL_CTX_set_default_passwd_cb(sslCtx,
+                    SSL_CTX_set_default_passwd_cb$cb.allocate(new 
PasswordCallback(null), contextArena));
 
             if (negotiableProtocols != null && negotiableProtocols.size() > 0) 
{
                 alpn = true;
@@ -891,15 +890,16 @@ public class OpenSSLContext implements 
org.apache.tomcat.util.net.SSLContext {
         }
     }
 
-    private static ThreadLocal<String> callbackPasswordTheadLocal = new 
ThreadLocal<>();
-
-    private static class PasswordCallback implements 
SSL_CTX_set_default_passwd_cb$cb {
+    private static class PasswordCallback implements 
SSL_CTX_set_default_passwd_cb$cb, PEM_read_bio_X509_AUX$cb, 
PEM_read_bio_PrivateKey$cb {
+        private final String callbackPassword;
+        PasswordCallback(String callbackPassword) {
+            this.callbackPassword = callbackPassword;
+        }
         @Override
         public int apply(MemorySegment /* char **/ buf, int bufsiz, int 
verify, MemorySegment /* void **/ cb) {
             if (log.isDebugEnabled()) {
                 log.debug("Return password for certificate");
             }
-            String callbackPassword = callbackPasswordTheadLocal.get();
             if (callbackPassword != null && callbackPassword.length() > 0) {
                 try (var localArena = Arena.ofConfined()) {
                     MemorySegment callbackPasswordNative = 
localArena.allocateFrom(callbackPassword);
@@ -1020,12 +1020,9 @@ public class OpenSSLContext implements 
org.apache.tomcat.util.net.SSLContext {
                         }
                         key = MemorySegment.NULL;
                         for (int i = 0; i < 3; i++) {
-                            try {
-                                callbackPasswordTheadLocal.set(keyPassToUse);
-                                key = PEM_read_bio_PrivateKey(keyBIO, 
MemorySegment.NULL, openSSLCallbackPassword, MemorySegment.NULL);
-                            } finally {
-                                callbackPasswordTheadLocal.set(null);
-                            }
+                            key = PEM_read_bio_PrivateKey(keyBIO, 
MemorySegment.NULL,
+                                    PEM_read_bio_PrivateKey$cb.allocate(new 
PasswordCallback(keyPassToUse), contextArena),
+                                    MemorySegment.NULL);
                             if (!MemorySegment.NULL.equals(key)) {
                                 break;
                             }
@@ -1048,12 +1045,9 @@ public class OpenSSLContext implements 
org.apache.tomcat.util.net.SSLContext {
                         return false;
                     }
                     // Load certificate
-                    try {
-                        callbackPasswordTheadLocal.set(keyPassToUse);
-                        cert = PEM_read_bio_X509_AUX(certificateBIO, 
MemorySegment.NULL, openSSLCallbackPassword, MemorySegment.NULL);
-                    } finally {
-                        callbackPasswordTheadLocal.set(null);
-                    }
+                    cert = PEM_read_bio_X509_AUX(certificateBIO, 
MemorySegment.NULL,
+                            PEM_read_bio_X509_AUX$cb.allocate(new 
PasswordCallback(keyPassToUse), contextArena),
+                            MemorySegment.NULL);
                     if (MemorySegment.NULL.equals(cert) &&
                             // Missing ERR_GET_REASON(ERR_peek_last_error())
                             /*int ERR_GET_REASON(unsigned long errcode) {
diff --git 
a/java/org/apache/tomcat/util/openssl/PEM_read_bio_PrivateKey$cb.java 
b/java/org/apache/tomcat/util/openssl/PEM_read_bio_PrivateKey$cb.java
new file mode 100644
index 0000000000..a753174b69
--- /dev/null
+++ b/java/org/apache/tomcat/util/openssl/PEM_read_bio_PrivateKey$cb.java
@@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Generated by jextract
+
+package org.apache.tomcat.util.openssl;
+
+import java.lang.invoke.MethodHandle;
+import java.lang.invoke.MethodHandles;
+import java.lang.invoke.VarHandle;
+import java.nio.ByteOrder;
+import java.lang.foreign.*;
+import static java.lang.foreign.ValueLayout.*;
+
+/**
+ * {@snippet lang=c :
+ * int (*PEM_read_bio_PrivateKey$cb)(char* buf,int size,int rwflag,void* 
userdata);
+ * }
+ */
+public interface PEM_read_bio_PrivateKey$cb {
+
+    int apply(MemorySegment buf, int size, int rwflag, MemorySegment userdata);
+
+    FunctionDescriptor $DESC = FunctionDescriptor.of(
+        openssl_h.C_INT,
+        openssl_h.C_POINTER,
+        openssl_h.C_INT,
+        openssl_h.C_INT,
+        openssl_h.C_POINTER
+    );
+
+    MethodHandle UP$MH = 
openssl_h.upcallHandle(PEM_read_bio_PrivateKey$cb.class, "apply", $DESC);
+
+    static MemorySegment allocate(PEM_read_bio_PrivateKey$cb fi, Arena scope) {
+        return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, 
scope);
+    }
+
+    MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);
+
+    static PEM_read_bio_PrivateKey$cb ofAddress(MemorySegment addr, Arena 
arena) {
+        MemorySegment symbol = addr.reinterpret(arena, null);
+        return (MemorySegment _buf, int _size, int _rwflag, MemorySegment 
_userdata) -> {
+            try {
+                return (int) DOWN$MH.invokeExact(symbol, _buf, _size, _rwflag, 
_userdata);
+            } catch (Throwable ex$) {
+                throw new AssertionError("should not reach here", ex$);
+            }
+        };
+    }
+}
+
diff --git a/java/org/apache/tomcat/util/openssl/PEM_read_bio_X509_AUX$cb.java 
b/java/org/apache/tomcat/util/openssl/PEM_read_bio_X509_AUX$cb.java
new file mode 100644
index 0000000000..be273cf02d
--- /dev/null
+++ b/java/org/apache/tomcat/util/openssl/PEM_read_bio_X509_AUX$cb.java
@@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Generated by jextract
+
+package org.apache.tomcat.util.openssl;
+
+import java.lang.invoke.MethodHandle;
+import java.lang.invoke.MethodHandles;
+import java.lang.invoke.VarHandle;
+import java.nio.ByteOrder;
+import java.lang.foreign.*;
+import static java.lang.foreign.ValueLayout.*;
+
+/**
+ * {@snippet lang=c :
+ * int (*PEM_read_bio_X509_AUX$cb)(char* buf,int size,int rwflag,void* 
userdata);
+ * }
+ */
+public interface PEM_read_bio_X509_AUX$cb {
+
+    int apply(MemorySegment buf, int size, int rwflag, MemorySegment userdata);
+
+    FunctionDescriptor $DESC = FunctionDescriptor.of(
+        openssl_h.C_INT,
+        openssl_h.C_POINTER,
+        openssl_h.C_INT,
+        openssl_h.C_INT,
+        openssl_h.C_POINTER
+    );
+
+    MethodHandle UP$MH = 
openssl_h.upcallHandle(PEM_read_bio_X509_AUX$cb.class, "apply", $DESC);
+
+    static MemorySegment allocate(PEM_read_bio_X509_AUX$cb fi, Arena scope) {
+        return Linker.nativeLinker().upcallStub(UP$MH.bindTo(fi), $DESC, 
scope);
+    }
+
+    MethodHandle DOWN$MH = Linker.nativeLinker().downcallHandle($DESC);
+
+    static PEM_read_bio_X509_AUX$cb ofAddress(MemorySegment addr, Arena arena) 
{
+        MemorySegment symbol = addr.reinterpret(arena, null);
+        return (MemorySegment _buf, int _size, int _rwflag, MemorySegment 
_userdata) -> {
+            try {
+                return (int) DOWN$MH.invokeExact(symbol, _buf, _size, _rwflag, 
_userdata);
+            } catch (Throwable ex$) {
+                throw new AssertionError("should not reach here", ex$);
+            }
+        };
+    }
+}
+
diff --git a/java/org/apache/tomcat/util/openssl/openssl_h.java 
b/java/org/apache/tomcat/util/openssl/openssl_h.java
index fef9a1d9dc..a35c5553ca 100644
--- a/java/org/apache/tomcat/util/openssl/openssl_h.java
+++ b/java/org/apache/tomcat/util/openssl/openssl_h.java
@@ -18,24 +18,26 @@
 // Generated by jextract
 
 package org.apache.tomcat.util.openssl;
-//Generated by jextract
 
 import java.lang.invoke.MethodHandle;
 import java.lang.invoke.MethodHandles;
 import java.lang.foreign.*;
 import static java.lang.foreign.ValueLayout.*;
 
-@SuppressWarnings("javadoc")
-public class openssl_h  {
+public class openssl_h {
+
+    static final SymbolLookup SYMBOL_LOOKUP
+            = 
SymbolLookup.loaderLookup().or(Linker.nativeLinker().defaultLookup());
 
-    static final SymbolLookup SYMBOL_LOOKUP;
     static {
         System.loadLibrary("ssl");
-    
-    SymbolLookup loaderLookup = SymbolLookup.loaderLookup();
-    Linker linker = Linker.nativeLinker();
-    SYMBOL_LOOKUP = name -> loaderLookup.find(name).or(() -> 
linker.defaultLookup().find(name));
     }
+
+    openssl_h() {
+        // Suppresses public default constructor, ensuring non-instantiability,
+        // but allows generated subclasses in same package.
+    }
+
     public static final ValueLayout.OfBoolean C_BOOL = 
ValueLayout.JAVA_BOOLEAN;
     public static final ValueLayout.OfByte C_CHAR = ValueLayout.JAVA_BYTE;
     public static final ValueLayout.OfShort C_SHORT = ValueLayout.JAVA_SHORT;
@@ -46,8 +48,55 @@ public class openssl_h  {
     public static final AddressLayout C_POINTER = ValueLayout.ADDRESS
             
.withTargetLayout(MemoryLayout.sequenceLayout(java.lang.Long.MAX_VALUE, 
JAVA_BYTE));
     public static final ValueLayout.OfLong C_LONG = ValueLayout.JAVA_LONG;
+
+    static MemorySegment findOrThrow(String symbol) {
+        return SYMBOL_LOOKUP.find(symbol)
+            .orElseThrow(() -> new UnsatisfiedLinkError("unresolved symbol: " 
+ symbol));
+    }
+
+    static MemoryLayout[] inferVariadicLayouts(Object[] varargs) {
+        MemoryLayout[] result = new MemoryLayout[varargs.length];
+        for (int i = 0; i < varargs.length; i++) {
+            result[i] = variadicLayout(varargs[i].getClass());
+        }
+        return result;
+    }
+
+    static MethodHandle upcallHandle(Class<?> fi, String name, 
FunctionDescriptor fdesc) {
+        try {
+            return MethodHandles.lookup().findVirtual(fi, name, 
fdesc.toMethodType());
+        } catch (ReflectiveOperationException ex) {
+            throw new AssertionError(ex);
+        }
+    }
+
+    static MethodHandle downcallHandleVariadic(String name, FunctionDescriptor 
baseDesc, MemoryLayout[] variadicLayouts) {
+        FunctionDescriptor variadicDesc = 
baseDesc.appendArgumentLayouts(variadicLayouts);
+        Linker.Option fva = 
Linker.Option.firstVariadicArg(baseDesc.argumentLayouts().size());
+        return SYMBOL_LOOKUP.find(name)
+                .map(addr -> Linker.nativeLinker().downcallHandle(addr, 
variadicDesc, fva)
+                        .asSpreader(Object[].class, variadicLayouts.length))
+                .orElse(null);
+    }
+
+    // Internals only below this point
+
+    private static MemoryLayout variadicLayout(Class<?> c) {
+        // apply default argument promotions per C spec
+        // note that all primitives are boxed, since they are passed through 
an Object[]
+        if (c == Boolean.class || c == Byte.class || c == Character.class || c 
== Short.class || c == Integer.class) {
+            return JAVA_INT;
+        } else if (c == Long.class) {
+            return JAVA_LONG;
+        } else if (c == Float.class || c == Double.class) {
+            return JAVA_DOUBLE;
+        } else if (MemorySegment.class.isAssignableFrom(c)) {
+            return ADDRESS;
+        }
+        throw new IllegalArgumentException("Invalid type for ABI: " + 
c.getTypeName());
+    }
     private static final int BIO_CLOSE = (int)1L;
-    
+
     /**
      * {@snippet lang=c :
      * #define BIO_CLOSE 1
@@ -57,7 +106,7 @@ public class openssl_h  {
         return BIO_CLOSE;
     }
     private static final int BIO_CTRL_RESET = (int)1L;
-    
+
     /**
      * {@snippet lang=c :
      * #define BIO_CTRL_RESET 1
@@ -67,7 +116,7 @@ public class openssl_h  {
         return BIO_CTRL_RESET;
     }
     private static final int BIO_FP_READ = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define BIO_FP_READ 2
@@ -77,7 +126,7 @@ public class openssl_h  {
         return BIO_FP_READ;
     }
     private static final int BIO_C_SET_FILENAME = (int)108L;
-    
+
     /**
      * {@snippet lang=c :
      * #define BIO_C_SET_FILENAME 108
@@ -87,7 +136,7 @@ public class openssl_h  {
         return BIO_C_SET_FILENAME;
     }
     private static final int NID_info_access = (int)177L;
-    
+
     /**
      * {@snippet lang=c :
      * #define NID_info_access 177
@@ -97,7 +146,7 @@ public class openssl_h  {
         return NID_info_access;
     }
     private static final int X509_FILETYPE_PEM = (int)1L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_FILETYPE_PEM 1
@@ -107,7 +156,7 @@ public class openssl_h  {
         return X509_FILETYPE_PEM;
     }
     private static final int X509_L_FILE_LOAD = (int)1L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_L_FILE_LOAD 1
@@ -117,7 +166,7 @@ public class openssl_h  {
         return X509_L_FILE_LOAD;
     }
     private static final int X509_L_ADD_DIR = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_L_ADD_DIR 2
@@ -127,7 +176,7 @@ public class openssl_h  {
         return X509_L_ADD_DIR;
     }
     private static final int X509_V_OK = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_OK 0
@@ -137,7 +186,7 @@ public class openssl_h  {
         return X509_V_OK;
     }
     private static final int X509_V_ERR_CRL_HAS_EXPIRED = (int)12L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_ERR_CRL_HAS_EXPIRED 12
@@ -147,7 +196,7 @@ public class openssl_h  {
         return X509_V_ERR_CRL_HAS_EXPIRED;
     }
     private static final int X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT = (int)18L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT 18
@@ -157,7 +206,7 @@ public class openssl_h  {
         return X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT;
     }
     private static final int X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN = (int)19L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN 19
@@ -167,7 +216,7 @@ public class openssl_h  {
         return X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN;
     }
     private static final int X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY = 
(int)20L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY 20
@@ -177,7 +226,7 @@ public class openssl_h  {
         return X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY;
     }
     private static final int X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE = 
(int)21L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE 21
@@ -187,7 +236,7 @@ public class openssl_h  {
         return X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE;
     }
     private static final int X509_V_ERR_CERT_UNTRUSTED = (int)27L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_ERR_CERT_UNTRUSTED 27
@@ -197,7 +246,7 @@ public class openssl_h  {
         return X509_V_ERR_CERT_UNTRUSTED;
     }
     private static final int X509_V_ERR_APPLICATION_VERIFICATION = (int)50L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_ERR_APPLICATION_VERIFICATION 50
@@ -207,7 +256,7 @@ public class openssl_h  {
         return X509_V_ERR_APPLICATION_VERIFICATION;
     }
     private static final int X509_V_FLAG_CRL_CHECK = (int)4L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_FLAG_CRL_CHECK 4
@@ -217,7 +266,7 @@ public class openssl_h  {
         return X509_V_FLAG_CRL_CHECK;
     }
     private static final int X509_V_FLAG_CRL_CHECK_ALL = (int)8L;
-    
+
     /**
      * {@snippet lang=c :
      * #define X509_V_FLAG_CRL_CHECK_ALL 8
@@ -227,7 +276,7 @@ public class openssl_h  {
         return X509_V_FLAG_CRL_CHECK_ALL;
     }
     private static final int PEM_R_NO_START_LINE = (int)108L;
-    
+
     /**
      * {@snippet lang=c :
      * #define PEM_R_NO_START_LINE 108
@@ -237,7 +286,7 @@ public class openssl_h  {
         return PEM_R_NO_START_LINE;
     }
     private static final int SSL3_VERSION = (int)768L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL3_VERSION 768
@@ -247,7 +296,7 @@ public class openssl_h  {
         return SSL3_VERSION;
     }
     private static final int TLS1_VERSION = (int)769L;
-    
+
     /**
      * {@snippet lang=c :
      * #define TLS1_VERSION 769
@@ -257,7 +306,7 @@ public class openssl_h  {
         return TLS1_VERSION;
     }
     private static final int TLS1_1_VERSION = (int)770L;
-    
+
     /**
      * {@snippet lang=c :
      * #define TLS1_1_VERSION 770
@@ -267,7 +316,7 @@ public class openssl_h  {
         return TLS1_1_VERSION;
     }
     private static final int TLS1_2_VERSION = (int)771L;
-    
+
     /**
      * {@snippet lang=c :
      * #define TLS1_2_VERSION 771
@@ -277,7 +326,7 @@ public class openssl_h  {
         return TLS1_2_VERSION;
     }
     private static final int TLS1_3_VERSION = (int)772L;
-    
+
     /**
      * {@snippet lang=c :
      * #define TLS1_3_VERSION 772
@@ -287,7 +336,7 @@ public class openssl_h  {
         return TLS1_3_VERSION;
     }
     private static final int SSL_SENT_SHUTDOWN = (int)1L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_SENT_SHUTDOWN 1
@@ -297,7 +346,7 @@ public class openssl_h  {
         return SSL_SENT_SHUTDOWN;
     }
     private static final int SSL_RECEIVED_SHUTDOWN = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_RECEIVED_SHUTDOWN 2
@@ -307,7 +356,7 @@ public class openssl_h  {
         return SSL_RECEIVED_SHUTDOWN;
     }
     private static final int SSL_OP_SINGLE_ECDH_USE = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_SINGLE_ECDH_USE 0
@@ -317,7 +366,7 @@ public class openssl_h  {
         return SSL_OP_SINGLE_ECDH_USE;
     }
     private static final int SSL_OP_SINGLE_DH_USE = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_SINGLE_DH_USE 0
@@ -327,7 +376,7 @@ public class openssl_h  {
         return SSL_OP_SINGLE_DH_USE;
     }
     private static final int SSL_OP_NO_SSLv2 = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_SSLv2 0
@@ -337,7 +386,7 @@ public class openssl_h  {
         return SSL_OP_NO_SSLv2;
     }
     private static final int SSL_CONF_FLAG_FILE = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CONF_FLAG_FILE 2
@@ -347,7 +396,7 @@ public class openssl_h  {
         return SSL_CONF_FLAG_FILE;
     }
     private static final int SSL_CONF_FLAG_SERVER = (int)8L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CONF_FLAG_SERVER 8
@@ -357,7 +406,7 @@ public class openssl_h  {
         return SSL_CONF_FLAG_SERVER;
     }
     private static final int SSL_CONF_FLAG_SHOW_ERRORS = (int)16L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CONF_FLAG_SHOW_ERRORS 16
@@ -367,7 +416,7 @@ public class openssl_h  {
         return SSL_CONF_FLAG_SHOW_ERRORS;
     }
     private static final int SSL_CONF_FLAG_CERTIFICATE = (int)32L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CONF_FLAG_CERTIFICATE 32
@@ -377,7 +426,7 @@ public class openssl_h  {
         return SSL_CONF_FLAG_CERTIFICATE;
     }
     private static final int SSL_CONF_TYPE_UNKNOWN = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CONF_TYPE_UNKNOWN 0
@@ -387,7 +436,7 @@ public class openssl_h  {
         return SSL_CONF_TYPE_UNKNOWN;
     }
     private static final int SSL_CONF_TYPE_FILE = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CONF_TYPE_FILE 2
@@ -397,7 +446,7 @@ public class openssl_h  {
         return SSL_CONF_TYPE_FILE;
     }
     private static final int SSL_CONF_TYPE_DIR = (int)3L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CONF_TYPE_DIR 3
@@ -407,7 +456,7 @@ public class openssl_h  {
         return SSL_CONF_TYPE_DIR;
     }
     private static final int SSL_SESS_CACHE_OFF = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_SESS_CACHE_OFF 0
@@ -417,7 +466,7 @@ public class openssl_h  {
         return SSL_SESS_CACHE_OFF;
     }
     private static final int SSL_SESS_CACHE_SERVER = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_SESS_CACHE_SERVER 2
@@ -427,7 +476,7 @@ public class openssl_h  {
         return SSL_SESS_CACHE_SERVER;
     }
     private static final int SSL2_VERSION = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL2_VERSION 2
@@ -437,7 +486,7 @@ public class openssl_h  {
         return SSL2_VERSION;
     }
     private static final int SSL_TLSEXT_ERR_OK = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_TLSEXT_ERR_OK 0
@@ -447,7 +496,7 @@ public class openssl_h  {
         return SSL_TLSEXT_ERR_OK;
     }
     private static final int SSL_TLSEXT_ERR_NOACK = (int)3L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_TLSEXT_ERR_NOACK 3
@@ -457,7 +506,7 @@ public class openssl_h  {
         return SSL_TLSEXT_ERR_NOACK;
     }
     private static final int SSL_CB_HANDSHAKE_DONE = (int)32L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CB_HANDSHAKE_DONE 32
@@ -467,7 +516,7 @@ public class openssl_h  {
         return SSL_CB_HANDSHAKE_DONE;
     }
     private static final int SSL_VERIFY_NONE = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_VERIFY_NONE 0
@@ -477,7 +526,7 @@ public class openssl_h  {
         return SSL_VERIFY_NONE;
     }
     private static final int SSL_VERIFY_PEER = (int)1L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_VERIFY_PEER 1
@@ -487,7 +536,7 @@ public class openssl_h  {
         return SSL_VERIFY_PEER;
     }
     private static final int SSL_VERIFY_FAIL_IF_NO_PEER_CERT = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_VERIFY_FAIL_IF_NO_PEER_CERT 2
@@ -497,7 +546,7 @@ public class openssl_h  {
         return SSL_VERIFY_FAIL_IF_NO_PEER_CERT;
     }
     private static final int SSL_ERROR_NONE = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_ERROR_NONE 0
@@ -507,7 +556,7 @@ public class openssl_h  {
         return SSL_ERROR_NONE;
     }
     private static final int SSL_CTRL_SET_TMP_DH = (int)3L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_TMP_DH 3
@@ -517,7 +566,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_TMP_DH;
     }
     private static final int SSL_CTRL_SET_TMP_ECDH = (int)4L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_TMP_ECDH 4
@@ -527,7 +576,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_TMP_ECDH;
     }
     private static final int SSL_CTRL_SESS_NUMBER = (int)20L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_NUMBER 20
@@ -537,7 +586,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_NUMBER;
     }
     private static final int SSL_CTRL_SESS_CONNECT = (int)21L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_CONNECT 21
@@ -547,7 +596,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_CONNECT;
     }
     private static final int SSL_CTRL_SESS_CONNECT_GOOD = (int)22L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_CONNECT_GOOD 22
@@ -557,7 +606,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_CONNECT_GOOD;
     }
     private static final int SSL_CTRL_SESS_CONNECT_RENEGOTIATE = (int)23L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_CONNECT_RENEGOTIATE 23
@@ -567,7 +616,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_CONNECT_RENEGOTIATE;
     }
     private static final int SSL_CTRL_SESS_ACCEPT = (int)24L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_ACCEPT 24
@@ -577,7 +626,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_ACCEPT;
     }
     private static final int SSL_CTRL_SESS_ACCEPT_GOOD = (int)25L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_ACCEPT_GOOD 25
@@ -587,7 +636,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_ACCEPT_GOOD;
     }
     private static final int SSL_CTRL_SESS_ACCEPT_RENEGOTIATE = (int)26L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_ACCEPT_RENEGOTIATE 26
@@ -597,7 +646,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_ACCEPT_RENEGOTIATE;
     }
     private static final int SSL_CTRL_SESS_HIT = (int)27L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_HIT 27
@@ -607,7 +656,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_HIT;
     }
     private static final int SSL_CTRL_SESS_CB_HIT = (int)28L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_CB_HIT 28
@@ -617,7 +666,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_CB_HIT;
     }
     private static final int SSL_CTRL_SESS_MISSES = (int)29L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_MISSES 29
@@ -627,7 +676,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_MISSES;
     }
     private static final int SSL_CTRL_SESS_TIMEOUTS = (int)30L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_TIMEOUTS 30
@@ -637,7 +686,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_TIMEOUTS;
     }
     private static final int SSL_CTRL_SESS_CACHE_FULL = (int)31L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SESS_CACHE_FULL 31
@@ -647,7 +696,7 @@ public class openssl_h  {
         return SSL_CTRL_SESS_CACHE_FULL;
     }
     private static final int SSL_CTRL_SET_SESS_CACHE_SIZE = (int)42L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_SESS_CACHE_SIZE 42
@@ -657,7 +706,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_SESS_CACHE_SIZE;
     }
     private static final int SSL_CTRL_GET_SESS_CACHE_SIZE = (int)43L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_GET_SESS_CACHE_SIZE 43
@@ -667,7 +716,7 @@ public class openssl_h  {
         return SSL_CTRL_GET_SESS_CACHE_SIZE;
     }
     private static final int SSL_CTRL_SET_SESS_CACHE_MODE = (int)44L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_SESS_CACHE_MODE 44
@@ -677,7 +726,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_SESS_CACHE_MODE;
     }
     private static final int SSL_CTRL_GET_SESS_CACHE_MODE = (int)45L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_GET_SESS_CACHE_MODE 45
@@ -687,7 +736,7 @@ public class openssl_h  {
         return SSL_CTRL_GET_SESS_CACHE_MODE;
     }
     private static final int SSL_CTRL_SET_TLSEXT_TICKET_KEYS = (int)59L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_TLSEXT_TICKET_KEYS 59
@@ -697,7 +746,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_TLSEXT_TICKET_KEYS;
     }
     private static final int SSL_CTRL_CHAIN_CERT = (int)89L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_CHAIN_CERT 89
@@ -707,7 +756,7 @@ public class openssl_h  {
         return SSL_CTRL_CHAIN_CERT;
     }
     private static final int SSL_CTRL_SET_GROUPS = (int)91L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_GROUPS 91
@@ -717,7 +766,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_GROUPS;
     }
     private static final int SSL_CTRL_SET_DH_AUTO = (int)118L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_DH_AUTO 118
@@ -727,7 +776,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_DH_AUTO;
     }
     private static final int SSL_CTRL_SET_MIN_PROTO_VERSION = (int)123L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_MIN_PROTO_VERSION 123
@@ -737,7 +786,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_MIN_PROTO_VERSION;
     }
     private static final int SSL_CTRL_SET_MAX_PROTO_VERSION = (int)124L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_CTRL_SET_MAX_PROTO_VERSION 124
@@ -747,7 +796,7 @@ public class openssl_h  {
         return SSL_CTRL_SET_MAX_PROTO_VERSION;
     }
     private static final int ERR_REASON_MASK = (int)8388607L;
-    
+
     /**
      * {@snippet lang=c :
      * #define ERR_REASON_MASK 8388607
@@ -757,7 +806,7 @@ public class openssl_h  {
         return ERR_REASON_MASK;
     }
     private static final int OCSP_RESPONSE_STATUS_SUCCESSFUL = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define OCSP_RESPONSE_STATUS_SUCCESSFUL 0
@@ -767,7 +816,7 @@ public class openssl_h  {
         return OCSP_RESPONSE_STATUS_SUCCESSFUL;
     }
     private static final int V_OCSP_CERTSTATUS_GOOD = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define V_OCSP_CERTSTATUS_GOOD 0
@@ -777,7 +826,7 @@ public class openssl_h  {
         return V_OCSP_CERTSTATUS_GOOD;
     }
     private static final int V_OCSP_CERTSTATUS_REVOKED = (int)1L;
-    
+
     /**
      * {@snippet lang=c :
      * #define V_OCSP_CERTSTATUS_REVOKED 1
@@ -787,7 +836,7 @@ public class openssl_h  {
         return V_OCSP_CERTSTATUS_REVOKED;
     }
     private static final int V_OCSP_CERTSTATUS_UNKNOWN = (int)2L;
-    
+
     /**
      * {@snippet lang=c :
      * #define V_OCSP_CERTSTATUS_UNKNOWN 2
@@ -807,14 +856,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OPENSSL_sk_num"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int OPENSSL_sk_num(MemorySegment x0) {
         var mh$ = OPENSSL_sk_num$MH();
         try {
@@ -835,14 +884,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OPENSSL_sk_value"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment OPENSSL_sk_value(MemorySegment x0, int x1) {
         var mh$ = OPENSSL_sk_value$MH();
         try {
@@ -860,14 +909,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_LONG        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OpenSSL_version_num"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long OpenSSL_version_num() {
         var mh$ = OpenSSL_version_num$MH();
         try {
@@ -887,14 +936,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OpenSSL_version"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment OpenSSL_version(int type) {
         var mh$ = OpenSSL_version$MH();
         try {
@@ -915,14 +964,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("CRYPTO_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void CRYPTO_free(MemorySegment ptr, MemorySegment file, int 
line) {
         var mh$ = CRYPTO_free$MH();
         try {
@@ -942,14 +991,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_ctrl_pending"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long BIO_ctrl_pending(MemorySegment b) {
         var mh$ = BIO_ctrl_pending$MH();
         try {
@@ -967,14 +1016,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_s_file"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BIO_s_file() {
         var mh$ = BIO_s_file$MH();
         try {
@@ -995,14 +1044,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_new_file"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BIO_new_file(MemorySegment filename, 
MemorySegment mode) {
         var mh$ = BIO_new_file$MH();
         try {
@@ -1022,14 +1071,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_new"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BIO_new(MemorySegment type) {
         var mh$ = BIO_new$MH();
         try {
@@ -1049,14 +1098,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int BIO_free(MemorySegment a) {
         var mh$ = BIO_free$MH();
         try {
@@ -1078,14 +1127,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_read"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int BIO_read(MemorySegment b, MemorySegment data, int dlen) {
         var mh$ = BIO_read$MH();
         try {
@@ -1107,14 +1156,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_write"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int BIO_write(MemorySegment b, MemorySegment data, int dlen) 
{
         var mh$ = BIO_write$MH();
         try {
@@ -1137,14 +1186,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_ctrl"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long BIO_ctrl(MemorySegment bp, int cmd, long larg, 
MemorySegment parg) {
         var mh$ = BIO_ctrl$MH();
         try {
@@ -1162,14 +1211,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_s_mem"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BIO_s_mem() {
         var mh$ = BIO_s_mem$MH();
         try {
@@ -1187,14 +1236,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_s_bio"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BIO_s_bio() {
         var mh$ = BIO_s_bio$MH();
         try {
@@ -1217,14 +1266,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BIO_new_bio_pair"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int BIO_new_bio_pair(MemorySegment bio1, long writebuf1, 
MemorySegment bio2, long writebuf2) {
         var mh$ = BIO_new_bio_pair$MH();
         try {
@@ -1242,14 +1291,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_new"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_new() {
         var mh$ = BN_new$MH();
         try {
@@ -1270,14 +1319,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_set_word"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int BN_set_word(MemorySegment a, long w) {
         var mh$ = BN_set_word$MH();
         try {
@@ -1297,14 +1346,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_get_rfc2409_prime_768"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_get_rfc2409_prime_768(MemorySegment bn) {
         var mh$ = BN_get_rfc2409_prime_768$MH();
         try {
@@ -1324,14 +1373,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_get_rfc2409_prime_1024"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_get_rfc2409_prime_1024(MemorySegment bn) {
         var mh$ = BN_get_rfc2409_prime_1024$MH();
         try {
@@ -1351,14 +1400,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_get_rfc3526_prime_1536"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_get_rfc3526_prime_1536(MemorySegment bn) {
         var mh$ = BN_get_rfc3526_prime_1536$MH();
         try {
@@ -1378,14 +1427,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_get_rfc3526_prime_2048"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_get_rfc3526_prime_2048(MemorySegment bn) {
         var mh$ = BN_get_rfc3526_prime_2048$MH();
         try {
@@ -1405,14 +1454,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_get_rfc3526_prime_3072"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_get_rfc3526_prime_3072(MemorySegment bn) {
         var mh$ = BN_get_rfc3526_prime_3072$MH();
         try {
@@ -1432,14 +1481,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_get_rfc3526_prime_4096"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_get_rfc3526_prime_4096(MemorySegment bn) {
         var mh$ = BN_get_rfc3526_prime_4096$MH();
         try {
@@ -1459,14 +1508,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_get_rfc3526_prime_6144"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_get_rfc3526_prime_6144(MemorySegment bn) {
         var mh$ = BN_get_rfc3526_prime_6144$MH();
         try {
@@ -1486,14 +1535,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("BN_get_rfc3526_prime_8192"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment BN_get_rfc3526_prime_8192(MemorySegment bn) {
         var mh$ = BN_get_rfc3526_prime_8192$MH();
         try {
@@ -1513,14 +1562,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ASN1_STRING_length"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int ASN1_STRING_length(MemorySegment x) {
         var mh$ = ASN1_STRING_length$MH();
         try {
@@ -1540,14 +1589,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ASN1_STRING_get0_data"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment ASN1_STRING_get0_data(MemorySegment x) {
         var mh$ = ASN1_STRING_get0_data$MH();
         try {
@@ -1567,14 +1616,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EVP_MD_get0_provider"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment EVP_MD_get0_provider(MemorySegment md) {
         var mh$ = EVP_MD_get0_provider$MH();
         try {
@@ -1596,14 +1645,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EVP_MD_fetch"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment EVP_MD_fetch(MemorySegment ctx, MemorySegment 
algorithm, MemorySegment properties) {
         var mh$ = EVP_MD_fetch$MH();
         try {
@@ -1622,14 +1671,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EVP_MD_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void EVP_MD_free(MemorySegment md) {
         var mh$ = EVP_MD_free$MH();
         try {
@@ -1649,14 +1698,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EVP_PKEY_get_base_id"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int EVP_PKEY_get_base_id(MemorySegment pkey) {
         var mh$ = EVP_PKEY_get_base_id$MH();
         try {
@@ -1676,14 +1725,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EVP_PKEY_get_bits"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int EVP_PKEY_get_bits(MemorySegment pkey) {
         var mh$ = EVP_PKEY_get_bits$MH();
         try {
@@ -1702,14 +1751,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EVP_PKEY_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void EVP_PKEY_free(MemorySegment pkey) {
         var mh$ = EVP_PKEY_free$MH();
         try {
@@ -1728,14 +1777,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EC_GROUP_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void EC_GROUP_free(MemorySegment group) {
         var mh$ = EC_GROUP_free$MH();
         try {
@@ -1755,14 +1804,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EC_GROUP_get_curve_name"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int EC_GROUP_get_curve_name(MemorySegment group) {
         var mh$ = EC_GROUP_get_curve_name$MH();
         try {
@@ -1784,14 +1833,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("d2i_ECPKParameters"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment d2i_ECPKParameters(MemorySegment x0, 
MemorySegment in, long len) {
         var mh$ = d2i_ECPKParameters$MH();
         try {
@@ -1811,14 +1860,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EC_KEY_new_by_curve_name"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment EC_KEY_new_by_curve_name(int nid) {
         var mh$ = EC_KEY_new_by_curve_name$MH();
         try {
@@ -1837,14 +1886,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("EC_KEY_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void EC_KEY_free(MemorySegment key) {
         var mh$ = EC_KEY_free$MH();
         try {
@@ -1862,14 +1911,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("DH_new"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment DH_new() {
         var mh$ = DH_new$MH();
         try {
@@ -1888,14 +1937,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("DH_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void DH_free(MemorySegment dh) {
         var mh$ = DH_free$MH();
         try {
@@ -1918,14 +1967,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("DH_set0_pqg"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int DH_set0_pqg(MemorySegment dh, MemorySegment p, 
MemorySegment q, MemorySegment g) {
         var mh$ = DH_set0_pqg$MH();
         try {
@@ -1946,14 +1995,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_STORE_set_flags"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int X509_STORE_set_flags(MemorySegment ctx, long flags) {
         var mh$ = X509_STORE_set_flags$MH();
         try {
@@ -1973,14 +2022,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_STORE_CTX_get0_untrusted"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment X509_STORE_CTX_get0_untrusted(MemorySegment 
ctx) {
         var mh$ = X509_STORE_CTX_get0_untrusted$MH();
         try {
@@ -2001,14 +2050,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_STORE_add_lookup"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment X509_STORE_add_lookup(MemorySegment v, 
MemorySegment m) {
         var mh$ = X509_STORE_add_lookup$MH();
         try {
@@ -2026,14 +2075,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_LOOKUP_hash_dir"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment X509_LOOKUP_hash_dir() {
         var mh$ = X509_LOOKUP_hash_dir$MH();
         try {
@@ -2051,14 +2100,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_LOOKUP_file"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment X509_LOOKUP_file() {
         var mh$ = X509_LOOKUP_file$MH();
         try {
@@ -2082,14 +2131,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_LOOKUP_ctrl"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int X509_LOOKUP_ctrl(MemorySegment ctx, int cmd, 
MemorySegment argc, long argl, MemorySegment ret) {
         var mh$ = X509_LOOKUP_ctrl$MH();
         try {
@@ -2110,14 +2159,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_STORE_CTX_get_ex_data"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment X509_STORE_CTX_get_ex_data(MemorySegment ctx, 
int idx) {
         var mh$ = X509_STORE_CTX_get_ex_data$MH();
         try {
@@ -2137,14 +2186,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_STORE_CTX_get_error"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int X509_STORE_CTX_get_error(MemorySegment ctx) {
         var mh$ = X509_STORE_CTX_get_error$MH();
         try {
@@ -2164,14 +2213,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_STORE_CTX_set_error"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void X509_STORE_CTX_set_error(MemorySegment ctx, int s) {
         var mh$ = X509_STORE_CTX_set_error$MH();
         try {
@@ -2191,14 +2240,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_STORE_CTX_get_error_depth"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int X509_STORE_CTX_get_error_depth(MemorySegment ctx) {
         var mh$ = X509_STORE_CTX_get_error_depth$MH();
         try {
@@ -2218,14 +2267,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_STORE_CTX_get_current_cert"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment X509_STORE_CTX_get_current_cert(MemorySegment 
ctx) {
         var mh$ = X509_STORE_CTX_get_current_cert$MH();
         try {
@@ -2245,14 +2294,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     
openssl_h.findOrThrow("X509_STORE_CTX_get0_current_issuer"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment 
X509_STORE_CTX_get0_current_issuer(MemorySegment ctx) {
         var mh$ = X509_STORE_CTX_get0_current_issuer$MH();
         try {
@@ -2273,14 +2322,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("d2i_X509_bio"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment d2i_X509_bio(MemorySegment bp, MemorySegment 
x509) {
         var mh$ = d2i_X509_bio$MH();
         try {
@@ -2299,14 +2348,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void X509_free(MemorySegment a) {
         var mh$ = X509_free$MH();
         try {
@@ -2317,7 +2366,7 @@ public class openssl_h  {
     }
     /**
      * {@snippet lang=c :
-     * X509* d2i_X509(X509* a, unsigned char** in, long len);
+     * X509* d2i_X509(X509** a, unsigned char** in, long len);
      * }
      */
     public static MethodHandle d2i_X509$MH() {
@@ -2328,14 +2377,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("d2i_X509"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment d2i_X509(MemorySegment a, MemorySegment in, 
long len) {
         var mh$ = d2i_X509$MH();
         try {
@@ -2356,14 +2405,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("i2d_X509"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int i2d_X509(MemorySegment a, MemorySegment out) {
         var mh$ = i2d_X509$MH();
         try {
@@ -2385,14 +2434,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_get_ext_by_NID"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int X509_get_ext_by_NID(MemorySegment x, int nid, int 
lastpos) {
         var mh$ = X509_get_ext_by_NID$MH();
         try {
@@ -2413,14 +2462,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_get_ext"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment X509_get_ext(MemorySegment x, int loc) {
         var mh$ = X509_get_ext$MH();
         try {
@@ -2440,14 +2489,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_EXTENSION_get_data"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment X509_EXTENSION_get_data(MemorySegment ne) {
         var mh$ = X509_EXTENSION_get_data$MH();
         try {
@@ -2472,14 +2521,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PEM_ASN1_read_bio"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment PEM_ASN1_read_bio(MemorySegment d2i, 
MemorySegment name, MemorySegment bp, MemorySegment x, MemorySegment cb, 
MemorySegment u) {
         var mh$ = PEM_ASN1_read_bio$MH();
         try {
@@ -2502,14 +2551,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PEM_read_bio_X509_AUX"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment PEM_read_bio_X509_AUX(MemorySegment out, 
MemorySegment x, MemorySegment cb, MemorySegment u) {
         var mh$ = PEM_read_bio_X509_AUX$MH();
         try {
@@ -2532,14 +2581,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PEM_read_bio_ECPKParameters"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment PEM_read_bio_ECPKParameters(MemorySegment out, 
MemorySegment x, MemorySegment cb, MemorySegment u) {
         var mh$ = PEM_read_bio_ECPKParameters$MH();
         try {
@@ -2562,14 +2611,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PEM_read_bio_DHparams"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment PEM_read_bio_DHparams(MemorySegment out, 
MemorySegment x, MemorySegment cb, MemorySegment u) {
         var mh$ = PEM_read_bio_DHparams$MH();
         try {
@@ -2592,14 +2641,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PEM_read_bio_PrivateKey"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment PEM_read_bio_PrivateKey(MemorySegment out, 
MemorySegment x, MemorySegment cb, MemorySegment u) {
         var mh$ = PEM_read_bio_PrivateKey$MH();
         try {
@@ -2620,14 +2669,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PEM_read_bio_Parameters"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment PEM_read_bio_Parameters(MemorySegment bp, 
MemorySegment x) {
         var mh$ = PEM_read_bio_Parameters$MH();
         try {
@@ -2647,14 +2696,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_get_options"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_CTX_get_options(MemorySegment ctx) {
         var mh$ = SSL_CTX_get_options$MH();
         try {
@@ -2674,14 +2723,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get_options"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_get_options(MemorySegment s) {
         var mh$ = SSL_get_options$MH();
         try {
@@ -2702,14 +2751,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_clear_options"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_CTX_clear_options(MemorySegment ctx, long op) {
         var mh$ = SSL_CTX_clear_options$MH();
         try {
@@ -2730,14 +2779,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_options"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_CTX_set_options(MemorySegment ctx, long op) {
         var mh$ = SSL_CTX_set_options$MH();
         try {
@@ -2758,14 +2807,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_set_options"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_set_options(MemorySegment s, long op) {
         var mh$ = SSL_set_options$MH();
         try {
@@ -2786,14 +2835,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_alpn_select_cb"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CTX_set_alpn_select_cb(MemorySegment ctx, 
MemorySegment cb, MemorySegment arg) {
         var mh$ = SSL_CTX_set_alpn_select_cb$MH();
         try {
@@ -2814,14 +2863,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get0_alpn_selected"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_get0_alpn_selected(MemorySegment ssl, MemorySegment 
data, MemorySegment len) {
         var mh$ = SSL_get0_alpn_selected$MH();
         try {
@@ -2841,14 +2890,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_in_init"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_in_init(MemorySegment s) {
         var mh$ = SSL_in_init$MH();
         try {
@@ -2869,14 +2918,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set0_tmp_dh_pkey"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_set0_tmp_dh_pkey(MemorySegment ctx, 
MemorySegment dhpkey) {
         var mh$ = SSL_CTX_set0_tmp_dh_pkey$MH();
         try {
@@ -2897,14 +2946,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_cipher_list"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_set_cipher_list(MemorySegment x0, MemorySegment 
str) {
         var mh$ = SSL_CTX_set_cipher_list$MH();
         try {
@@ -2924,14 +2973,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_new"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_CTX_new(MemorySegment meth) {
         var mh$ = SSL_CTX_new$MH();
         try {
@@ -2950,14 +2999,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CTX_free(MemorySegment x0) {
         var mh$ = SSL_CTX_free$MH();
         try {
@@ -2978,14 +3027,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_timeout"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_CTX_set_timeout(MemorySegment ctx, long t) {
         var mh$ = SSL_CTX_set_timeout$MH();
         try {
@@ -3005,14 +3054,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_get_timeout"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_CTX_get_timeout(MemorySegment ctx) {
         var mh$ = SSL_CTX_get_timeout$MH();
         try {
@@ -3032,14 +3081,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_get_cert_store"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_CTX_get_cert_store(MemorySegment x0) {
         var mh$ = SSL_CTX_get_cert_store$MH();
         try {
@@ -3059,14 +3108,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get_current_cipher"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_get_current_cipher(MemorySegment s) {
         var mh$ = SSL_get_current_cipher$MH();
         try {
@@ -3086,14 +3135,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CIPHER_get_name"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_CIPHER_get_name(MemorySegment c) {
         var mh$ = SSL_CIPHER_get_name$MH();
         try {
@@ -3113,14 +3162,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CIPHER_get_kx_nid"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CIPHER_get_kx_nid(MemorySegment c) {
         var mh$ = SSL_CIPHER_get_kx_nid$MH();
         try {
@@ -3140,14 +3189,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CIPHER_get_auth_nid"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CIPHER_get_auth_nid(MemorySegment c) {
         var mh$ = SSL_CIPHER_get_auth_nid$MH();
         try {
@@ -3167,14 +3216,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_pending"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_pending(MemorySegment s) {
         var mh$ = SSL_pending$MH();
         try {
@@ -3195,14 +3244,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_set_bio"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_set_bio(MemorySegment s, MemorySegment rbio, 
MemorySegment wbio) {
         var mh$ = SSL_set_bio$MH();
         try {
@@ -3223,14 +3272,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_set_cipher_list"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_set_cipher_list(MemorySegment s, MemorySegment str) {
         var mh$ = SSL_set_cipher_list$MH();
         try {
@@ -3251,14 +3300,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_ciphersuites"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_set_ciphersuites(MemorySegment ctx, 
MemorySegment str) {
         var mh$ = SSL_CTX_set_ciphersuites$MH();
         try {
@@ -3279,14 +3328,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_set_verify"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_set_verify(MemorySegment s, int mode, MemorySegment 
callback) {
         var mh$ = SSL_set_verify$MH();
         try {
@@ -3307,14 +3356,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     
openssl_h.findOrThrow("SSL_CTX_use_certificate_chain_file"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_use_certificate_chain_file(MemorySegment ctx, 
MemorySegment file) {
         var mh$ = SSL_CTX_use_certificate_chain_file$MH();
         try {
@@ -3334,14 +3383,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_load_client_CA_file"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_load_client_CA_file(MemorySegment file) {
         var mh$ = SSL_load_client_CA_file$MH();
         try {
@@ -3362,14 +3411,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     
openssl_h.findOrThrow("SSL_add_file_cert_subjects_to_stack"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_add_file_cert_subjects_to_stack(MemorySegment 
stackCAs, MemorySegment file) {
         var mh$ = SSL_add_file_cert_subjects_to_stack$MH();
         try {
@@ -3389,14 +3438,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_SESSION_get_time"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_SESSION_get_time(MemorySegment s) {
         var mh$ = SSL_SESSION_get_time$MH();
         try {
@@ -3417,14 +3466,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_SESSION_get_id"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_SESSION_get_id(MemorySegment s, 
MemorySegment len) {
         var mh$ = SSL_SESSION_get_id$MH();
         try {
@@ -3444,14 +3493,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get1_peer_certificate"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_get1_peer_certificate(MemorySegment s) {
         var mh$ = SSL_get1_peer_certificate$MH();
         try {
@@ -3471,14 +3520,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get_peer_cert_chain"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_get_peer_cert_chain(MemorySegment s) {
         var mh$ = SSL_get_peer_cert_chain$MH();
         try {
@@ -3499,14 +3548,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_verify"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CTX_set_verify(MemorySegment ctx, int mode, 
MemorySegment callback) {
         var mh$ = SSL_CTX_set_verify$MH();
         try {
@@ -3527,14 +3576,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_cert_verify_callback"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CTX_set_cert_verify_callback(MemorySegment ctx, 
MemorySegment cb, MemorySegment arg) {
         var mh$ = SSL_CTX_set_cert_verify_callback$MH();
         try {
@@ -3555,14 +3604,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_use_PrivateKey"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_use_PrivateKey(MemorySegment ctx, MemorySegment 
pkey) {
         var mh$ = SSL_CTX_use_PrivateKey$MH();
         try {
@@ -3583,14 +3632,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_use_certificate"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_use_certificate(MemorySegment ctx, MemorySegment 
x) {
         var mh$ = SSL_CTX_use_certificate$MH();
         try {
@@ -3610,14 +3659,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_default_passwd_cb"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CTX_set_default_passwd_cb(MemorySegment ctx, 
MemorySegment cb) {
         var mh$ = SSL_CTX_set_default_passwd_cb$MH();
         try {
@@ -3637,14 +3686,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_check_private_key"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_check_private_key(MemorySegment ctx) {
         var mh$ = SSL_CTX_check_private_key$MH();
         try {
@@ -3666,14 +3715,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_session_id_context"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_set_session_id_context(MemorySegment ctx, 
MemorySegment sid_ctx, int sid_ctx_len) {
         var mh$ = SSL_CTX_set_session_id_context$MH();
         try {
@@ -3693,14 +3742,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_new"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_new(MemorySegment ctx) {
         var mh$ = SSL_new$MH();
         try {
@@ -3719,14 +3768,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_free(MemorySegment ssl) {
         var mh$ = SSL_free$MH();
         try {
@@ -3748,14 +3797,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_read"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_read(MemorySegment ssl, MemorySegment buf, int num) {
         var mh$ = SSL_read$MH();
         try {
@@ -3777,14 +3826,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_write"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_write(MemorySegment ssl, MemorySegment buf, int num) 
{
         var mh$ = SSL_write$MH();
         try {
@@ -3807,14 +3856,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_ctrl"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long SSL_CTX_ctrl(MemorySegment ctx, int cmd, long larg, 
MemorySegment parg) {
         var mh$ = SSL_CTX_ctrl$MH();
         try {
@@ -3834,14 +3883,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get_version"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_get_version(MemorySegment s) {
         var mh$ = SSL_get_version$MH();
         try {
@@ -3859,14 +3908,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("TLS_server_method"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment TLS_server_method() {
         var mh$ = TLS_server_method$MH();
         try {
@@ -3886,14 +3935,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get_ciphers"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_get_ciphers(MemorySegment s) {
         var mh$ = SSL_get_ciphers$MH();
         try {
@@ -3913,14 +3962,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_get_ciphers"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_CTX_get_ciphers(MemorySegment ctx) {
         var mh$ = SSL_CTX_get_ciphers$MH();
         try {
@@ -3940,14 +3989,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_do_handshake"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_do_handshake(MemorySegment s) {
         var mh$ = SSL_do_handshake$MH();
         try {
@@ -3967,14 +4016,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_renegotiate"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_renegotiate(MemorySegment s) {
         var mh$ = SSL_renegotiate$MH();
         try {
@@ -3994,14 +4043,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_renegotiate_pending"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_renegotiate_pending(MemorySegment s) {
         var mh$ = SSL_renegotiate_pending$MH();
         try {
@@ -4021,14 +4070,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_shutdown"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_shutdown(MemorySegment s) {
         var mh$ = SSL_shutdown$MH();
         try {
@@ -4048,14 +4097,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_verify_client_post_handshake"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_verify_client_post_handshake(MemorySegment s) {
         var mh$ = SSL_verify_client_post_handshake$MH();
         try {
@@ -4075,14 +4124,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_client_CA_list"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CTX_set_client_CA_list(MemorySegment ctx, 
MemorySegment name_list) {
         var mh$ = SSL_CTX_set_client_CA_list$MH();
         try {
@@ -4102,14 +4151,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_get_client_CA_list"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_CTX_get_client_CA_list(MemorySegment s) {
         var mh$ = SSL_CTX_get_client_CA_list$MH();
         try {
@@ -4130,14 +4179,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_add_client_CA"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_add_client_CA(MemorySegment ctx, MemorySegment 
x) {
         var mh$ = SSL_CTX_add_client_CA$MH();
         try {
@@ -4156,14 +4205,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_set_connect_state"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_set_connect_state(MemorySegment s) {
         var mh$ = SSL_set_connect_state$MH();
         try {
@@ -4182,14 +4231,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_set_accept_state"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_set_accept_state(MemorySegment s) {
         var mh$ = SSL_set_accept_state$MH();
         try {
@@ -4209,14 +4258,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get_privatekey"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_get_privatekey(MemorySegment ssl) {
         var mh$ = SSL_get_privatekey$MH();
         try {
@@ -4236,14 +4285,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get_shutdown"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_get_shutdown(MemorySegment ssl) {
         var mh$ = SSL_get_shutdown$MH();
         try {
@@ -4263,14 +4312,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_default_verify_paths"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_set_default_verify_paths(MemorySegment ctx) {
         var mh$ = SSL_CTX_set_default_verify_paths$MH();
         try {
@@ -4292,14 +4341,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_load_verify_locations"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CTX_load_verify_locations(MemorySegment ctx, 
MemorySegment CAfile, MemorySegment CApath) {
         var mh$ = SSL_CTX_load_verify_locations$MH();
         try {
@@ -4319,14 +4368,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_get_session"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_get_session(MemorySegment ssl) {
         var mh$ = SSL_get_session$MH();
         try {
@@ -4346,14 +4395,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_set_info_callback"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_set_info_callback(MemorySegment ssl, MemorySegment 
cb) {
         var mh$ = SSL_set_info_callback$MH();
         try {
@@ -4373,14 +4422,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_set_verify_result"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_set_verify_result(MemorySegment ssl, long v) {
         var mh$ = SSL_set_verify_result$MH();
         try {
@@ -4398,14 +4447,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_INT        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     
openssl_h.findOrThrow("SSL_get_ex_data_X509_STORE_CTX_idx"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_get_ex_data_X509_STORE_CTX_idx() {
         var mh$ = SSL_get_ex_data_X509_STORE_CTX_idx$MH();
         try {
@@ -4425,14 +4474,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CTX_set_tmp_dh_callback"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CTX_set_tmp_dh_callback(MemorySegment ctx, 
MemorySegment dh) {
         var mh$ = SSL_CTX_set_tmp_dh_callback$MH();
         try {
@@ -4450,14 +4499,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CONF_CTX_new"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment SSL_CONF_CTX_new() {
         var mh$ = SSL_CONF_CTX_new$MH();
         try {
@@ -4477,14 +4526,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CONF_CTX_finish"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CONF_CTX_finish(MemorySegment cctx) {
         var mh$ = SSL_CONF_CTX_finish$MH();
         try {
@@ -4503,14 +4552,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CONF_CTX_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CONF_CTX_free(MemorySegment cctx) {
         var mh$ = SSL_CONF_CTX_free$MH();
         try {
@@ -4531,14 +4580,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CONF_CTX_set_flags"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CONF_CTX_set_flags(MemorySegment cctx, int flags) {
         var mh$ = SSL_CONF_CTX_set_flags$MH();
         try {
@@ -4558,14 +4607,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CONF_CTX_set_ssl_ctx"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void SSL_CONF_CTX_set_ssl_ctx(MemorySegment cctx, 
MemorySegment ctx) {
         var mh$ = SSL_CONF_CTX_set_ssl_ctx$MH();
         try {
@@ -4587,14 +4636,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CONF_cmd"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CONF_cmd(MemorySegment cctx, MemorySegment cmd, 
MemorySegment value) {
         var mh$ = SSL_CONF_cmd$MH();
         try {
@@ -4615,14 +4664,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("SSL_CONF_cmd_value_type"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int SSL_CONF_cmd_value_type(MemorySegment cctx, 
MemorySegment cmd) {
         var mh$ = SSL_CONF_cmd_value_type$MH();
         try {
@@ -4643,14 +4692,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OPENSSL_init_ssl"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int OPENSSL_init_ssl(long opts, MemorySegment settings) {
         var mh$ = OPENSSL_init_ssl$MH();
         try {
@@ -4668,14 +4717,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_LONG        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ERR_get_error"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long ERR_get_error() {
         var mh$ = ERR_get_error$MH();
         try {
@@ -4693,14 +4742,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_LONG        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ERR_peek_last_error"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static long ERR_peek_last_error() {
         var mh$ = ERR_peek_last_error$MH();
         try {
@@ -4717,14 +4766,14 @@ public class openssl_h  {
     public static MethodHandle ERR_clear_error$MH() {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(  
      );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ERR_clear_error"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void ERR_clear_error() {
         var mh$ = ERR_clear_error$MH();
         try {
@@ -4745,14 +4794,14 @@ public class openssl_h  {
                 openssl_h.C_LONG,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ERR_error_string"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment ERR_error_string(long e, MemorySegment buf) {
         var mh$ = ERR_error_string$MH();
         try {
@@ -4774,14 +4823,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PKCS12_verify_mac"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int PKCS12_verify_mac(MemorySegment p12, MemorySegment pass, 
int passlen) {
         var mh$ = PKCS12_verify_mac$MH();
         try {
@@ -4800,14 +4849,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PKCS12_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void PKCS12_free(MemorySegment a) {
         var mh$ = PKCS12_free$MH();
         try {
@@ -4831,14 +4880,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("PKCS12_parse"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int PKCS12_parse(MemorySegment p12, MemorySegment pass, 
MemorySegment pkey, MemorySegment cert, MemorySegment ca) {
         var mh$ = PKCS12_parse$MH();
         try {
@@ -4859,14 +4908,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("d2i_PKCS12_bio"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment d2i_PKCS12_bio(MemorySegment bp, MemorySegment 
p12) {
         var mh$ = d2i_PKCS12_bio$MH();
         try {
@@ -4886,14 +4935,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("RAND_seed"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void RAND_seed(MemorySegment buf, int num) {
         var mh$ = RAND_seed$MH();
         try {
@@ -4914,14 +4963,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("RAND_load_file"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int RAND_load_file(MemorySegment file, long max_bytes) {
         var mh$ = RAND_load_file$MH();
         try {
@@ -4942,14 +4991,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("X509_check_issued"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int X509_check_issued(MemorySegment issuer, MemorySegment 
subject) {
         var mh$ = X509_check_issued$MH();
         try {
@@ -4969,14 +5018,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ENGINE_by_id"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment ENGINE_by_id(MemorySegment id) {
         var mh$ = ENGINE_by_id$MH();
         try {
@@ -4994,14 +5043,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_INT        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ENGINE_register_all_complete"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int ENGINE_register_all_complete() {
         var mh$ = ENGINE_register_all_complete$MH();
         try {
@@ -5024,14 +5073,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ENGINE_ctrl_cmd_string"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int ENGINE_ctrl_cmd_string(MemorySegment e, MemorySegment 
cmd_name, MemorySegment arg, int cmd_optional) {
         var mh$ = ENGINE_ctrl_cmd_string$MH();
         try {
@@ -5051,14 +5100,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ENGINE_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int ENGINE_free(MemorySegment e) {
         var mh$ = ENGINE_free$MH();
         try {
@@ -5081,14 +5130,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ENGINE_load_private_key"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment ENGINE_load_private_key(MemorySegment e, 
MemorySegment key_id, MemorySegment ui_method, MemorySegment callback_data) {
         var mh$ = ENGINE_load_private_key$MH();
         try {
@@ -5109,14 +5158,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("ENGINE_set_default"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int ENGINE_set_default(MemorySegment e, int flags) {
         var mh$ = ENGINE_set_default$MH();
         try {
@@ -5138,14 +5187,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_cert_to_id"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment OCSP_cert_to_id(MemorySegment dgst, 
MemorySegment subject, MemorySegment issuer) {
         var mh$ = OCSP_cert_to_id$MH();
         try {
@@ -5166,14 +5215,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_request_add0_id"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment OCSP_request_add0_id(MemorySegment req, 
MemorySegment cid) {
         var mh$ = OCSP_request_add0_id$MH();
         try {
@@ -5193,14 +5242,14 @@ public class openssl_h  {
                 openssl_h.C_INT,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_response_status"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int OCSP_response_status(MemorySegment resp) {
         var mh$ = OCSP_response_status$MH();
         try {
@@ -5220,14 +5269,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_response_get1_basic"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment OCSP_response_get1_basic(MemorySegment resp) {
         var mh$ = OCSP_response_get1_basic$MH();
         try {
@@ -5248,14 +5297,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_resp_get0"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment OCSP_resp_get0(MemorySegment bs, int idx) {
         var mh$ = OCSP_resp_get0$MH();
         try {
@@ -5277,14 +5326,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_INT
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_resp_find"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int OCSP_resp_find(MemorySegment bs, MemorySegment id, int 
last) {
         var mh$ = OCSP_resp_find$MH();
         try {
@@ -5308,14 +5357,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_single_get0_status"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int OCSP_single_get0_status(MemorySegment single, 
MemorySegment reason, MemorySegment revtime, MemorySegment thisupd, 
MemorySegment nextupd) {
         var mh$ = OCSP_single_get0_status$MH();
         try {
@@ -5334,14 +5383,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_BASICRESP_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void OCSP_BASICRESP_free(MemorySegment a) {
         var mh$ = OCSP_BASICRESP_free$MH();
         try {
@@ -5360,14 +5409,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_RESPONSE_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void OCSP_RESPONSE_free(MemorySegment a) {
         var mh$ = OCSP_RESPONSE_free$MH();
         try {
@@ -5378,7 +5427,7 @@ public class openssl_h  {
     }
     /**
      * {@snippet lang=c :
-     * OCSP_RESPONSE* d2i_OCSP_RESPONSE(OCSP_RESPONSE* a, unsigned char** in, 
long len);
+     * OCSP_RESPONSE* d2i_OCSP_RESPONSE(OCSP_RESPONSE** a, unsigned char** in, 
long len);
      * }
      */
     public static MethodHandle d2i_OCSP_RESPONSE$MH() {
@@ -5389,14 +5438,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_LONG
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("d2i_OCSP_RESPONSE"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment d2i_OCSP_RESPONSE(MemorySegment a, 
MemorySegment in, long len) {
         var mh$ = d2i_OCSP_RESPONSE$MH();
         try {
@@ -5415,14 +5464,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_CERTID_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void OCSP_CERTID_free(MemorySegment a) {
         var mh$ = OCSP_CERTID_free$MH();
         try {
@@ -5440,14 +5489,14 @@ public class openssl_h  {
         class Holder {
             static final FunctionDescriptor DESC = FunctionDescriptor.of(
                 openssl_h.C_POINTER        );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_REQUEST_new"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment OCSP_REQUEST_new() {
         var mh$ = OCSP_REQUEST_new$MH();
         try {
@@ -5466,14 +5515,14 @@ public class openssl_h  {
             static final FunctionDescriptor DESC = FunctionDescriptor.ofVoid(
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OCSP_REQUEST_free"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static void OCSP_REQUEST_free(MemorySegment a) {
         var mh$ = OCSP_REQUEST_free$MH();
         try {
@@ -5494,14 +5543,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("i2d_OCSP_REQUEST"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static int i2d_OCSP_REQUEST(MemorySegment a, MemorySegment out) {
         var mh$ = i2d_OCSP_REQUEST$MH();
         try {
@@ -5521,14 +5570,14 @@ public class openssl_h  {
                 openssl_h.C_POINTER,
                 openssl_h.C_POINTER
             );
-    
+
             static final MethodHandle MH = 
Linker.nativeLinker().downcallHandle(
                     openssl_h.findOrThrow("OSSL_PROVIDER_get0_name"),
                     DESC);
         }
         return Holder.MH;
     }
-    
+
     public static MemorySegment OSSL_PROVIDER_get0_name(MemorySegment prov) {
         var mh$ = OSSL_PROVIDER_get0_name$MH();
         try {
@@ -5537,18 +5586,18 @@ public class openssl_h  {
            throw new AssertionError("should not reach here", ex$);
         }
     }
-    private static final MemorySegment OPENSSL_FILE = 
Arena.ofAuto().allocateFrom("/tmp/jextract$7266064093665146871.h");;
-    
+    private static final MemorySegment OPENSSL_FILE = 
Arena.ofAuto().allocateFrom("/tmp/jextract$12868569411196900360.h");;
+
     /**
      * {@snippet lang=c :
-     * #define OPENSSL_FILE "/tmp/jextract$7266064093665146871.h"
+     * #define OPENSSL_FILE "/tmp/jextract$12868569411196900360.h"
      * }
      */
     public static MemorySegment OPENSSL_FILE() {
         return OPENSSL_FILE;
     }
     private static final int OPENSSL_LINE = (int)50L;
-    
+
     /**
      * {@snippet lang=c :
      * #define OPENSSL_LINE 50
@@ -5558,7 +5607,7 @@ public class openssl_h  {
         return OPENSSL_LINE;
     }
     private static final long OPENSSL_INIT_ENGINE_ALL_BUILTIN = 30208L;
-    
+
     /**
      * {@snippet lang=c :
      * #define OPENSSL_INIT_ENGINE_ALL_BUILTIN 30208
@@ -5568,7 +5617,7 @@ public class openssl_h  {
         return OPENSSL_INIT_ENGINE_ALL_BUILTIN;
     }
     private static final int EVP_PKEY_NONE = (int)0L;
-    
+
     /**
      * {@snippet lang=c :
      * #define EVP_PKEY_NONE 0
@@ -5578,7 +5627,7 @@ public class openssl_h  {
         return EVP_PKEY_NONE;
     }
     private static final int EVP_PKEY_RSA = (int)6L;
-    
+
     /**
      * {@snippet lang=c :
      * #define EVP_PKEY_RSA 6
@@ -5588,7 +5637,7 @@ public class openssl_h  {
         return EVP_PKEY_RSA;
     }
     private static final int EVP_PKEY_DSA = (int)116L;
-    
+
     /**
      * {@snippet lang=c :
      * #define EVP_PKEY_DSA 116
@@ -5598,7 +5647,7 @@ public class openssl_h  {
         return EVP_PKEY_DSA;
     }
     private static final MemorySegment PEM_STRING_ECPARAMETERS = 
Arena.ofAuto().allocateFrom("EC PARAMETERS");;
-    
+
     /**
      * {@snippet lang=c :
      * #define PEM_STRING_ECPARAMETERS "EC PARAMETERS"
@@ -5608,7 +5657,7 @@ public class openssl_h  {
         return PEM_STRING_ECPARAMETERS;
     }
     private static final long SSL_OP_NO_TICKET = 16384L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_TICKET 16384
@@ -5618,7 +5667,7 @@ public class openssl_h  {
         return SSL_OP_NO_TICKET;
     }
     private static final long SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION = 
65536L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION 65536
@@ -5628,7 +5677,7 @@ public class openssl_h  {
         return SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION;
     }
     private static final long SSL_OP_NO_COMPRESSION = 131072L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_COMPRESSION 131072
@@ -5638,7 +5687,7 @@ public class openssl_h  {
         return SSL_OP_NO_COMPRESSION;
     }
     private static final long SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION = 
262144L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION 262144
@@ -5648,7 +5697,7 @@ public class openssl_h  {
         return SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION;
     }
     private static final long SSL_OP_CIPHER_SERVER_PREFERENCE = 4194304L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_CIPHER_SERVER_PREFERENCE 4194304
@@ -5658,7 +5707,7 @@ public class openssl_h  {
         return SSL_OP_CIPHER_SERVER_PREFERENCE;
     }
     private static final long SSL_OP_NO_SSLv3 = 33554432L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_SSLv3 33554432
@@ -5668,7 +5717,7 @@ public class openssl_h  {
         return SSL_OP_NO_SSLv3;
     }
     private static final long SSL_OP_NO_TLSv1 = 67108864L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_TLSv1 67108864
@@ -5678,7 +5727,7 @@ public class openssl_h  {
         return SSL_OP_NO_TLSv1;
     }
     private static final long SSL_OP_NO_TLSv1_2 = 134217728L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_TLSv1_2 134217728
@@ -5688,7 +5737,7 @@ public class openssl_h  {
         return SSL_OP_NO_TLSv1_2;
     }
     private static final long SSL_OP_NO_TLSv1_1 = 268435456L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_TLSv1_1 268435456
@@ -5698,7 +5747,7 @@ public class openssl_h  {
         return SSL_OP_NO_TLSv1_1;
     }
     private static final long SSL_OP_NO_TLSv1_3 = 536870912L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_NO_TLSv1_3 536870912
@@ -5708,7 +5757,7 @@ public class openssl_h  {
         return SSL_OP_NO_TLSv1_3;
     }
     private static final long SSL_OP_ALL = 2147485776L;
-    
+
     /**
      * {@snippet lang=c :
      * #define SSL_OP_ALL 2147485776
@@ -5718,7 +5767,7 @@ public class openssl_h  {
         return SSL_OP_ALL;
     }
     private static final int ENGINE_METHOD_ALL = (int)65535L;
-    
+
     /**
      * {@snippet lang=c :
      * #define ENGINE_METHOD_ALL 65535
@@ -5727,52 +5776,5 @@ public class openssl_h  {
     public static int ENGINE_METHOD_ALL() {
         return ENGINE_METHOD_ALL;
     }
-    static MemorySegment findOrThrow(String symbol) {
-        return SYMBOL_LOOKUP.find(symbol)
-            .orElseThrow(() -> new UnsatisfiedLinkError("unresolved symbol: " 
+ symbol));
-    }
-    
-    static MemoryLayout[] inferVariadicLayouts(Object[] varargs) {
-        MemoryLayout[] result = new MemoryLayout[varargs.length];
-        for (int i = 0; i < varargs.length; i++) {
-            result[i] = variadicLayout(varargs[i].getClass());
-        }
-        return result;
-    }
-    
-    static MethodHandle upcallHandle(Class<?> fi, String name, 
FunctionDescriptor fdesc) {
-        try {
-            return MethodHandles.lookup().findVirtual(fi, name, 
fdesc.toMethodType());
-        } catch (ReflectiveOperationException ex) {
-            throw new AssertionError(ex);
-        }
-    }
-    
-    static MethodHandle downcallHandleVariadic(String name, FunctionDescriptor 
baseDesc, MemoryLayout[] variadicLayouts) {
-        FunctionDescriptor variadicDesc = 
baseDesc.appendArgumentLayouts(variadicLayouts);
-        Linker.Option fva = 
Linker.Option.firstVariadicArg(baseDesc.argumentLayouts().size());
-        return SYMBOL_LOOKUP.find(name)
-                .map(addr -> Linker.nativeLinker().downcallHandle(addr, 
variadicDesc, fva)
-                        .asSpreader(Object[].class, variadicLayouts.length))
-                .orElse(null);
-    }
-    
-    // Internals only below this point
-    
-    private static MemoryLayout variadicLayout(Class<?> c) {
-        // apply default argument promotions per C spec
-        // note that all primitives are boxed, since they are passed through 
an Object[]
-        if (c == Boolean.class || c == Byte.class || c == Character.class || c 
== Short.class || c == Integer.class) {
-            return JAVA_INT;
-        } else if (c == Long.class) {
-            return JAVA_LONG;
-        } else if (c == Float.class || c == Double.class) {
-            return JAVA_DOUBLE;
-        } else if (MemorySegment.class.isAssignableFrom(c)) {
-            return ADDRESS;
-        }
-        throw new IllegalArgumentException("Invalid type for ABI: " + 
c.getTypeName());
-    }
 }
 
-


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to