diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLContext.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLContext.java index 13691d58d873..2a3dfec8dd76 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLContext.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLContext.java @@ -36,7 +36,6 @@ import java.util.Base64; import java.util.Iterator; import java.util.List; -import java.util.concurrent.ConcurrentHashMap; import java.util.function.Consumer; import javax.net.ssl.KeyManager; @@ -66,6 +65,8 @@ 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; @@ -126,20 +127,14 @@ public class OpenSSLContext implements org.apache.tomcat.util.net.SSLContext { private final boolean alpn; private final int minTlsVersion; private final int maxTlsVersion; + private final List negotiableProtocols; private OpenSSLSessionContext sessionContext; private String enabledProtocol; private boolean initialized = false; private boolean noOcspCheck = false; - - // Password callback - private final MemorySegment openSSLCallbackPassword; - - private static final ConcurrentHashMap states = new ConcurrentHashMap<>(); - private static ContextState getState(MemorySegment ctx) { - return states.get(Long.valueOf(ctx.address())); - } + private X509TrustManager x509TrustManager; private final ContextState state; private final Arena contextArena; @@ -274,13 +269,9 @@ public OpenSSLContext(SSLHostConfigCertificate certificate, List negotia // Longer session timeout SSL_CTX_set_timeout(sslCtx, 14400); - // From SSLContext.make, possibly set ssl_callback_ServerNameIndication - // From SSLContext.make, possibly set ssl_callback_ClientHello - // 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; @@ -297,7 +288,8 @@ public OpenSSLContext(SSLHostConfigCertificate certificate, List negotia } catch(Exception e) { throw new SSLException(sm.getString("openssl.errorSSLCtxInit"), e); } finally { - state = new ContextState(sslCtx, confCtx, negotiableProtocolsBytes); + this.negotiableProtocols = negotiableProtocolsBytes; + state = new ContextState(sslCtx, confCtx); /* * When an SSLHostConfig is replaced at runtime, it is not possible to * call destroy() on the associated OpenSSLContext since it is likely @@ -353,7 +345,6 @@ private boolean checkConf(OpenSSLConf conf) throws Exception { log.debug(sm.getString("opensslconf.checkCommand", name, value)); } try (var localArena = Arena.ofConfined()) { - // rc = SSLConf.check(confCtx, name, value); if (name.equals("NO_OCSP_CHECK")) { rc = 1; } else { @@ -407,7 +398,6 @@ private boolean checkConf(OpenSSLConf conf) throws Exception { private boolean applyConf(OpenSSLConf conf) throws Exception { boolean result = true; - // SSLConf.assign(confCtx, sslCtx); SSL_CONF_CTX_set_ssl_ctx(state.confCtx, state.sslCtx); OpenSSLConfCmd cmd; String name; @@ -426,7 +416,6 @@ private boolean applyConf(OpenSSLConf conf) throws Exception { log.debug(sm.getString("opensslconf.applyCommand", name, value)); } try (var localArena = Arena.ofConfined()) { - // rc = SSLConf.apply(confCtx, name, value); if (name.equals("NO_OCSP_CHECK")) { noOcspCheck = Boolean.parseBoolean(value); rc = 1; @@ -530,7 +519,6 @@ public synchronized void init(KeyManager[] kms, TrustManager[] tms, SecureRandom success = addCertificate(certificate, localArena); - // SSLContext.setVerify(state.ctx, value, sslHostConfig.getCertificateVerificationDepth()); // Client certificate verification int value = 0; switch (sslHostConfig.getCertificateVerification()) { @@ -555,16 +543,15 @@ public synchronized void init(KeyManager[] kms, TrustManager[] tms, SecureRandom // Trust and certificate verification if (tms != null) { // Client certificate verification based on custom trust managers - state.x509TrustManager = chooseTrustManager(tms); + x509TrustManager = chooseTrustManager(tms); SSL_CTX_set_cert_verify_callback(state.sslCtx, - SSL_CTX_set_cert_verify_callback$cb.allocate(new CertVerifyCallback(), contextArena), state.sslCtx); + SSL_CTX_set_cert_verify_callback$cb.allocate(new CertVerifyCallback(x509TrustManager), contextArena), state.sslCtx); // Pass along the DER encoded certificates of the accepted client // certificate issuers, so that their subjects can be presented // by the server during the handshake to allow the client choosing // an acceptable certificate - for (X509Certificate caCert : state.x509TrustManager.getAcceptedIssuers()) { - //SSLContext.addClientCACertificateRaw(state.ctx, caCert.getEncoded()); + for (X509Certificate caCert : x509TrustManager.getAcceptedIssuers()) { var rawCACertificate = localArena.allocateFrom(ValueLayout.JAVA_BYTE, caCert.getEncoded()); var rawCACertificatePointer = localArena.allocateFrom(ValueLayout.ADDRESS, rawCACertificate); var x509CACert = d2i_X509(MemorySegment.NULL, rawCACertificatePointer, rawCACertificate.byteSize()); @@ -578,9 +565,6 @@ public synchronized void init(KeyManager[] kms, TrustManager[] tms, SecureRandom } } else { // Client certificate verification based on trusted CA files and dirs - //SSLContext.setCACertificate(state.ctx, - // SSLHostConfig.adjustRelativePath(sslHostConfig.getCaCertificateFile()), - // SSLHostConfig.adjustRelativePath(sslHostConfig.getCaCertificatePath())); MemorySegment caCertificateFileNative = sslHostConfig.getCaCertificateFile() != null ? localArena.allocateFrom(SSLHostConfig.adjustRelativePath(sslHostConfig.getCaCertificateFile())) : null; MemorySegment caCertificatePathNative = sslHostConfig.getCaCertificatePath() != null @@ -609,11 +593,9 @@ && SSL_CTX_load_verify_locations(state.sslCtx, } } - if (state.negotiableProtocols != null && state.negotiableProtocols.size() > 0) { - // int openSSLCallbackAlpnSelectProto(MemoryAddress ssl, MemoryAddress out, MemoryAddress outlen, - // MemoryAddress in, int inlen, MemoryAddress arg + if (negotiableProtocols != null && negotiableProtocols.size() > 0) { SSL_CTX_set_alpn_select_cb(state.sslCtx, - SSL_CTX_set_alpn_select_cb$cb.allocate(new ALPNSelectCallback(), contextArena), state.sslCtx); + SSL_CTX_set_alpn_select_cb$cb.allocate(new ALPNSelectCallback(negotiableProtocols), contextArena), state.sslCtx); } // Apply OpenSSLConfCmd if used @@ -725,18 +707,17 @@ public MemorySegment apply(MemorySegment ssl, int isExport, int keylength) { // int SSL_callback_alpn_select_proto(SSL* ssl, const unsigned char **out, unsigned char *outlen, // const unsigned char *in, unsigned int inlen, void *arg) private static class ALPNSelectCallback implements SSL_CTX_set_alpn_select_cb$cb { + private final List negotiableProtocols; + ALPNSelectCallback(List negotiableProtocols) { + this.negotiableProtocols = negotiableProtocols; + } @Override public int apply(MemorySegment ssl, MemorySegment out, MemorySegment outlen, MemorySegment in, int inlen, MemorySegment arg) { - ContextState state = getState(arg); - if (state == null) { - log.warn(sm.getString("context.noSSL", Long.valueOf(arg.address()))); - return SSL_TLSEXT_ERR_NOACK(); - } try (var localArena = Arena.ofConfined()) { MemorySegment inSeg = in.reinterpret(inlen, localArena, null); byte[] advertisedBytes = inSeg.toArray(ValueLayout.JAVA_BYTE); - for (byte[] negotiableProtocolBytes : state.negotiableProtocols) { + for (byte[] negotiableProtocolBytes : negotiableProtocols) { for (int i = 0; i <= advertisedBytes.length - negotiableProtocolBytes.length; i++) { if (advertisedBytes[i] == negotiableProtocolBytes[0]) { for (int j = 0; j < negotiableProtocolBytes.length; j++) { @@ -763,6 +744,10 @@ public int apply(MemorySegment ssl, MemorySegment out, private static class CertVerifyCallback implements SSL_CTX_set_cert_verify_callback$cb { + private final X509TrustManager x509TrustManager; + CertVerifyCallback(X509TrustManager x509TrustManager) { + this.x509TrustManager = x509TrustManager; + } @Override public int apply(MemorySegment /*X509_STORE_CTX*/ x509_ctx, MemorySegment param) { if (log.isDebugEnabled()) { @@ -771,11 +756,6 @@ public int apply(MemorySegment /*X509_STORE_CTX*/ x509_ctx, MemorySegment param) if (MemorySegment.NULL.equals(param)) { return 0; } - ContextState state = getState(param); - if (state == null) { - log.warn(sm.getString("context.noSSL", Long.valueOf(param.address()))); - return 0; - } MemorySegment ssl = X509_STORE_CTX_get_ex_data(x509_ctx, SSL_get_ex_data_X509_STORE_CTX_idx()); MemorySegment /*STACK_OF(X509)*/ sk = X509_STORE_CTX_get0_untrusted(x509_ctx); int len = OPENSSL_sk_num(sk); @@ -798,7 +778,7 @@ public int apply(MemorySegment /*X509_STORE_CTX*/ x509_ctx, MemorySegment param) : getCipherAuthenticationMethod(SSL_CIPHER_get_auth_nid(cipher), SSL_CIPHER_get_kx_nid(cipher)); X509Certificate[] peerCerts = certificates(certificateChain); try { - state.x509TrustManager.checkClientTrusted(peerCerts, authMethod); + x509TrustManager.checkClientTrusted(peerCerts, authMethod); return 1; } catch (Exception e) { log.debug(sm.getString("openssl.certificateVerificationFailed"), e); @@ -891,15 +871,16 @@ private static String getCipherAuthenticationMethod(int auth, int kx) { } } - private static ThreadLocal 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); @@ -946,10 +927,6 @@ private boolean addCertificate(SSLHostConfigCertificate certificate, Arena local keyPassToUse = keyPass; } // Set certificate - //SSLContext.setCertificate(state.ctx, - // SSLHostConfig.adjustRelativePath(certificate.getCertificateFile()), - // SSLHostConfig.adjustRelativePath(certificate.getCertificateKeyFile()), - // certificate.getCertificateKeyPassword(), getCertificateIndex(certificate)); byte[] certificateFileBytes = null; try (Resource resource = ConfigFileLoader.getSource().getResource(certificate.getCertificateFile())) { certificateFileBytes = resource.getInputStream().readAllBytes(); @@ -1020,12 +997,9 @@ private boolean addCertificate(SSLHostConfigCertificate certificate, Arena local } 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 +1022,9 @@ private boolean addCertificate(SSLHostConfigCertificate certificate, Arena local 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) { @@ -1151,8 +1122,6 @@ private boolean addCertificate(SSLHostConfigCertificate certificate, Arena local log.error(sm.getString("openssl.errorLoadingCertificate", certificate.getCertificateChainFile()), e); return false; } - // SSLContext.setCertificateChainFile(state.ctx, - // SSLHostConfig.adjustRelativePath(certificate.getCertificateChainFile()), false); MemorySegment certificateChainBytesNative = localArena.allocateFrom(ValueLayout.JAVA_BYTE, certificateChainBytes); MemorySegment certificateChainBIO = BIO_new(BIO_s_mem()); try { @@ -1183,11 +1152,6 @@ private boolean addCertificate(SSLHostConfigCertificate certificate, Arena local } } // Set revocation - //SSLContext.setCARevocation(state.ctx, - // SSLHostConfig.adjustRelativePath( - // sslHostConfig.getCertificateRevocationListFile()), - // SSLHostConfig.adjustRelativePath( - // sslHostConfig.getCertificateRevocationListPath())); MemorySegment certificateStore = SSL_CTX_get_cert_store(state.sslCtx); if (sslHostConfig.getCertificateRevocationListFile() != null) { MemorySegment x509Lookup = X509_STORE_add_lookup(certificateStore, X509_LOOKUP_file()); @@ -1227,9 +1191,6 @@ private boolean addCertificate(SSLHostConfigCertificate certificate, Arena local StringBuilder sb = new StringBuilder(BEGIN_KEY); sb.append(Base64.getMimeEncoder(64, new byte[] {'\n'}).encodeToString(x509KeyManager.getPrivateKey(alias).getEncoded())); sb.append(END_KEY); - //SSLContext.setCertificateRaw(state.ctx, chain[0].getEncoded(), - // sb.toString().getBytes(StandardCharsets.US_ASCII), - // getCertificateIndex(certificate)); var rawCertificate = localArena.allocateFrom(ValueLayout.JAVA_BYTE, chain[0].getEncoded()); var rawCertificatePointer = localArena.allocateFrom(ValueLayout.ADDRESS, rawCertificate); var rawKey = localArena.allocateFrom(ValueLayout.JAVA_BYTE, sb.toString().getBytes(StandardCharsets.US_ASCII)); @@ -1278,7 +1239,6 @@ private boolean addCertificate(SSLHostConfigCertificate certificate, Arena local } } for (int i = 1; i < chain.length; i++) { - //SSLContext.addChainCertificateRaw(state.ctx, chain[i].getEncoded()); var rawCertificateChain = localArena.allocateFrom(ValueLayout.JAVA_BYTE, chain[i].getEncoded()); var rawCertificateChainPointer = localArena.allocateFrom(ValueLayout.ADDRESS, rawCertificateChain); var x509certChain = d2i_X509(MemorySegment.NULL, rawCertificateChainPointer, rawCertificateChain.byteSize()); @@ -1446,8 +1406,8 @@ public X509Certificate[] getCertificateChain(String alias) { @Override public X509Certificate[] getAcceptedIssuers() { X509Certificate[] acceptedCerts = null; - if (state.x509TrustManager != null) { - acceptedCerts = state.x509TrustManager.getAcceptedIssuers(); + if (x509TrustManager != null) { + acceptedCerts = x509TrustManager.getAcceptedIssuers(); } return acceptedCerts; } @@ -1458,13 +1418,8 @@ private static class ContextState implements Runnable { private final Arena stateArena = Arena.ofShared(); private final MemorySegment sslCtx; private final MemorySegment confCtx; - private final List negotiableProtocols; - private X509TrustManager x509TrustManager = null; - - private ContextState(MemorySegment sslCtx, MemorySegment confCtx, List negotiableProtocols) { - states.put(Long.valueOf(sslCtx.address()), this); - this.negotiableProtocols = negotiableProtocols; + private ContextState(MemorySegment sslCtx, MemorySegment confCtx) { // Use another arena to avoid keeping a reference through segments // This also allows making further accesses to the main pointers safer this.sslCtx = sslCtx.reinterpret(ValueLayout.ADDRESS.byteSize(), stateArena, @@ -1487,7 +1442,6 @@ public void accept(MemorySegment t) { @Override public void run() { - states.remove(Long.valueOf(sslCtx.address())); stateArena.close(); } } diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLEngine.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLEngine.java index 9ac43a7be618..76541ebe59bd 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLEngine.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/net/openssl/panama/OpenSSLEngine.java @@ -1096,7 +1096,6 @@ private void setClientAuth(ClientAuthMode mode) { case REQUIRE -> SSL_VERIFY_FAIL_IF_NO_PEER_CERT(); case OPTIONAL -> certificateVerificationOptionalNoCA ? OpenSSLContext.OPTIONAL_NO_CA : SSL_VERIFY_PEER(); }; - // SSL.setVerify(state.ssl, value, certificateVerificationDepth); // Set int verify_callback(int preverify_ok, X509_STORE_CTX *x509_ctx) callback int value = switch (mode) { case NONE -> SSL_VERIFY_NONE(); @@ -1209,7 +1208,6 @@ public int apply(int preverify_ok, MemorySegment /*X509_STORE_CTX*/ x509ctx) { private static int processOCSP(MemorySegment /*X509_STORE_CTX*/ x509ctx) { int ocspResponse = V_OCSP_CERTSTATUS_UNKNOWN(); - // ocspResponse = ssl_verify_OCSP(x509_ctx); MemorySegment x509 = X509_STORE_CTX_get_current_cert(x509ctx); if (!MemorySegment.NULL.equals(x509)) { // No need to check cert->valid, because ssl_verify_OCSP() only @@ -1322,7 +1320,7 @@ private static int processOCSPRequest(URL url, MemorySegment issuer, MemorySegme return V_OCSP_CERTSTATUS_UNKNOWN(); } MemorySegment buf = bufPointer.get(ValueLayout.ADDRESS, 0); - // HTTP request with the following header + // HTTP request with the following header: // POST urlPath HTTP/1.1 // Host: urlHost:urlPort // Content-Type: application/ocsp-request @@ -1534,7 +1532,6 @@ public Certificate[] getPeerCertificates() throws SSLPeerUnverifiedException { if (!clientMode) { // if used on the server side SSL_get_peer_cert_chain(...) will not include the remote peer certificate. // We use SSL_get_peer_certificate to get it in this case and add it to our array later. - // // See https://www.openssl.org/docs/ssl/SSL_get_peer_cert_chain.html clientCert = getPeerCertificate(); } else { diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/PEM_read_bio_PrivateKey$cb.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/PEM_read_bio_PrivateKey$cb.java new file mode 100644 index 000000000000..683af17192ef --- /dev/null +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/PEM_read_bio_PrivateKey$cb.java @@ -0,0 +1,59 @@ +/* + * 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.foreign.Arena; +import java.lang.foreign.FunctionDescriptor; +import java.lang.foreign.Linker; +import java.lang.foreign.MemorySegment; +import java.lang.invoke.MethodHandle; + +/** + * {@snippet lang = c : * int (*PEM_read_bio_PrivateKey$cb)(char* buf,int size,int rwflag,void* userdata); + * } + */ +@SuppressWarnings("javadoc") +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/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/PEM_read_bio_X509_AUX$cb.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/PEM_read_bio_X509_AUX$cb.java new file mode 100644 index 000000000000..237c99d445e6 --- /dev/null +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/PEM_read_bio_X509_AUX$cb.java @@ -0,0 +1,59 @@ +/* + * 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.foreign.Arena; +import java.lang.foreign.FunctionDescriptor; +import java.lang.foreign.Linker; +import java.lang.foreign.MemorySegment; +import java.lang.invoke.MethodHandle; + +/** + * {@snippet lang = c : * int (*PEM_read_bio_X509_AUX$cb)(char* buf,int size,int rwflag,void* userdata); + * } + */ +@SuppressWarnings("javadoc") +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/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_alpn_select_cb$cb.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_alpn_select_cb$cb.java index b871ecf5685a..df0538dd728c 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_alpn_select_cb$cb.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_alpn_select_cb$cb.java @@ -30,6 +30,7 @@ * : * int (*SSL_CTX_set_alpn_select_cb$cb)(struct ssl_st*,unsigned char**,unsigned char*,unsigned char*,unsigned int,void*); * } */ +@SuppressWarnings("javadoc") public interface SSL_CTX_set_alpn_select_cb$cb { FunctionDescriptor $DESC = FunctionDescriptor.of(openssl_h.C_INT, openssl_h.C_POINTER, openssl_h.C_POINTER, diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_cert_verify_callback$cb.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_cert_verify_callback$cb.java index 9c5d69e264fe..38498ecb23e2 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_cert_verify_callback$cb.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_cert_verify_callback$cb.java @@ -29,6 +29,7 @@ * {@snippet lang = c : * int (*SSL_CTX_set_cert_verify_callback$cb)(X509_STORE_CTX*,void*); * } */ +@SuppressWarnings("javadoc") public interface SSL_CTX_set_cert_verify_callback$cb { FunctionDescriptor $DESC = FunctionDescriptor.of(openssl_h.C_INT, openssl_h.C_POINTER, openssl_h.C_POINTER); diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_default_passwd_cb$cb.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_default_passwd_cb$cb.java index c286929484bc..d0e37471f648 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_default_passwd_cb$cb.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_default_passwd_cb$cb.java @@ -29,6 +29,7 @@ * {@snippet lang = c : * int (*SSL_CTX_set_default_passwd_cb$cb)(char* buf,int size,int rwflag,void* userdata); * } */ +@SuppressWarnings("javadoc") public interface SSL_CTX_set_default_passwd_cb$cb { FunctionDescriptor $DESC = FunctionDescriptor.of(openssl_h.C_INT, openssl_h.C_POINTER, openssl_h.C_INT, diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_tmp_dh_callback$dh.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_tmp_dh_callback$dh.java index 35b116c81752..b92f8938d3a1 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_tmp_dh_callback$dh.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_tmp_dh_callback$dh.java @@ -29,6 +29,7 @@ * {@snippet lang = c : * DH* (*SSL_CTX_set_tmp_dh_callback$dh)(SSL*,int,int); * } */ +@SuppressWarnings("javadoc") public interface SSL_CTX_set_tmp_dh_callback$dh { FunctionDescriptor $DESC = FunctionDescriptor.of(openssl_h.C_POINTER, openssl_h.C_POINTER, openssl_h.C_INT, diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_verify$callback.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_verify$callback.java index cf44ca8da7ea..ee09e754f44e 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_verify$callback.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_CTX_set_verify$callback.java @@ -29,6 +29,7 @@ * {@snippet lang = c : * int (*SSL_CTX_set_verify$callback)(int,struct x509_store_ctx_st*); * } */ +@SuppressWarnings("javadoc") public interface SSL_CTX_set_verify$callback { FunctionDescriptor $DESC = FunctionDescriptor.of(openssl_h.C_INT, openssl_h.C_INT, openssl_h.C_POINTER); diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_set_info_callback$cb.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_set_info_callback$cb.java index e23ccd2d7e6c..1f8849ea511a 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_set_info_callback$cb.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_set_info_callback$cb.java @@ -29,6 +29,7 @@ * {@snippet lang = c : * void (*SSL_set_info_callback$cb)(SSL*,int,int); * } */ +@SuppressWarnings("javadoc") public interface SSL_set_info_callback$cb { FunctionDescriptor $DESC = FunctionDescriptor.ofVoid(openssl_h.C_POINTER, openssl_h.C_INT, openssl_h.C_INT); diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_set_verify$callback.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_set_verify$callback.java index f750562e7129..f2348665a656 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_set_verify$callback.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/SSL_set_verify$callback.java @@ -29,6 +29,7 @@ * {@snippet lang = c : * int (*SSL_set_verify$callback)(int,struct x509_store_ctx_st*); * } */ +@SuppressWarnings("javadoc") public interface SSL_set_verify$callback { FunctionDescriptor $DESC = FunctionDescriptor.of(openssl_h.C_INT, openssl_h.C_INT, openssl_h.C_POINTER); diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/openssl_h.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/openssl_h.java index fef9a1d9dcfd..3ee164380531 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/openssl_h.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/openssl_h.java @@ -18,7 +18,6 @@ // Generated by jextract package org.apache.tomcat.util.openssl; -//Generated by jextract import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; @@ -26,16 +25,20 @@ 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 +49,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 +107,7 @@ public static int BIO_CLOSE() { return BIO_CLOSE; } private static final int BIO_CTRL_RESET = (int)1L; - + /** * {@snippet lang=c : * #define BIO_CTRL_RESET 1 @@ -67,7 +117,7 @@ public static int BIO_CTRL_RESET() { return BIO_CTRL_RESET; } private static final int BIO_FP_READ = (int)2L; - + /** * {@snippet lang=c : * #define BIO_FP_READ 2 @@ -77,7 +127,7 @@ public static int BIO_FP_READ() { 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 +137,7 @@ public static int BIO_C_SET_FILENAME() { return BIO_C_SET_FILENAME; } private static final int NID_info_access = (int)177L; - + /** * {@snippet lang=c : * #define NID_info_access 177 @@ -97,7 +147,7 @@ public static int NID_info_access() { return NID_info_access; } private static final int X509_FILETYPE_PEM = (int)1L; - + /** * {@snippet lang=c : * #define X509_FILETYPE_PEM 1 @@ -107,7 +157,7 @@ public static int X509_FILETYPE_PEM() { 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 +167,7 @@ public static int X509_L_FILE_LOAD() { 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 +177,7 @@ public static int X509_L_ADD_DIR() { return X509_L_ADD_DIR; } private static final int X509_V_OK = (int)0L; - + /** * {@snippet lang=c : * #define X509_V_OK 0 @@ -137,7 +187,7 @@ public static int X509_V_OK() { 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 +197,7 @@ public static int X509_V_ERR_CRL_HAS_EXPIRED() { 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 +207,7 @@ public static int X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT() { 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 +217,7 @@ public static int X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN() { 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 +227,7 @@ public static int X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY() { 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 +237,7 @@ public static int X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE() { 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 +247,7 @@ public static int X509_V_ERR_CERT_UNTRUSTED() { 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 +257,7 @@ public static int X509_V_ERR_APPLICATION_VERIFICATION() { 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 +267,7 @@ public static int X509_V_FLAG_CRL_CHECK() { 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 +277,7 @@ public static int X509_V_FLAG_CRL_CHECK_ALL() { 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 +287,7 @@ public static int PEM_R_NO_START_LINE() { return PEM_R_NO_START_LINE; } private static final int SSL3_VERSION = (int)768L; - + /** * {@snippet lang=c : * #define SSL3_VERSION 768 @@ -247,7 +297,7 @@ public static int SSL3_VERSION() { return SSL3_VERSION; } private static final int TLS1_VERSION = (int)769L; - + /** * {@snippet lang=c : * #define TLS1_VERSION 769 @@ -257,7 +307,7 @@ public static int TLS1_VERSION() { return TLS1_VERSION; } private static final int TLS1_1_VERSION = (int)770L; - + /** * {@snippet lang=c : * #define TLS1_1_VERSION 770 @@ -267,7 +317,7 @@ public static int TLS1_1_VERSION() { return TLS1_1_VERSION; } private static final int TLS1_2_VERSION = (int)771L; - + /** * {@snippet lang=c : * #define TLS1_2_VERSION 771 @@ -277,7 +327,7 @@ public static int TLS1_2_VERSION() { return TLS1_2_VERSION; } private static final int TLS1_3_VERSION = (int)772L; - + /** * {@snippet lang=c : * #define TLS1_3_VERSION 772 @@ -287,7 +337,7 @@ public static int TLS1_3_VERSION() { return TLS1_3_VERSION; } private static final int SSL_SENT_SHUTDOWN = (int)1L; - + /** * {@snippet lang=c : * #define SSL_SENT_SHUTDOWN 1 @@ -297,7 +347,7 @@ public static int SSL_SENT_SHUTDOWN() { return SSL_SENT_SHUTDOWN; } private static final int SSL_RECEIVED_SHUTDOWN = (int)2L; - + /** * {@snippet lang=c : * #define SSL_RECEIVED_SHUTDOWN 2 @@ -307,7 +357,7 @@ public static int SSL_RECEIVED_SHUTDOWN() { 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 +367,7 @@ public static int SSL_OP_SINGLE_ECDH_USE() { 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 +377,7 @@ public static int SSL_OP_SINGLE_DH_USE() { 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 +387,7 @@ public static int SSL_OP_NO_SSLv2() { 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 +397,7 @@ public static int SSL_CONF_FLAG_FILE() { 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 +407,7 @@ public static int SSL_CONF_FLAG_SERVER() { 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 +417,7 @@ public static int SSL_CONF_FLAG_SHOW_ERRORS() { 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 +427,7 @@ public static int SSL_CONF_FLAG_CERTIFICATE() { 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 +437,7 @@ public static int SSL_CONF_TYPE_UNKNOWN() { 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 +447,7 @@ public static int SSL_CONF_TYPE_FILE() { 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 +457,7 @@ public static int SSL_CONF_TYPE_DIR() { 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 +467,7 @@ public static int SSL_SESS_CACHE_OFF() { 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 +477,7 @@ public static int SSL_SESS_CACHE_SERVER() { return SSL_SESS_CACHE_SERVER; } private static final int SSL2_VERSION = (int)2L; - + /** * {@snippet lang=c : * #define SSL2_VERSION 2 @@ -437,7 +487,7 @@ public static int SSL2_VERSION() { return SSL2_VERSION; } private static final int SSL_TLSEXT_ERR_OK = (int)0L; - + /** * {@snippet lang=c : * #define SSL_TLSEXT_ERR_OK 0 @@ -447,7 +497,7 @@ public static int SSL_TLSEXT_ERR_OK() { 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 +507,7 @@ public static int SSL_TLSEXT_ERR_NOACK() { 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 +517,7 @@ public static int SSL_CB_HANDSHAKE_DONE() { return SSL_CB_HANDSHAKE_DONE; } private static final int SSL_VERIFY_NONE = (int)0L; - + /** * {@snippet lang=c : * #define SSL_VERIFY_NONE 0 @@ -477,7 +527,7 @@ public static int SSL_VERIFY_NONE() { return SSL_VERIFY_NONE; } private static final int SSL_VERIFY_PEER = (int)1L; - + /** * {@snippet lang=c : * #define SSL_VERIFY_PEER 1 @@ -487,7 +537,7 @@ public static int SSL_VERIFY_PEER() { 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 +547,7 @@ public static int SSL_VERIFY_FAIL_IF_NO_PEER_CERT() { 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 +557,7 @@ public static int SSL_ERROR_NONE() { 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 +567,7 @@ public static int SSL_CTRL_SET_TMP_DH() { 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 +577,7 @@ public static int SSL_CTRL_SET_TMP_ECDH() { 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 +587,7 @@ public static int SSL_CTRL_SESS_NUMBER() { 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 +597,7 @@ public static int SSL_CTRL_SESS_CONNECT() { 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 +607,7 @@ public static int SSL_CTRL_SESS_CONNECT_GOOD() { 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 +617,7 @@ public static int SSL_CTRL_SESS_CONNECT_RENEGOTIATE() { 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 +627,7 @@ public static int SSL_CTRL_SESS_ACCEPT() { 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 +637,7 @@ public static int SSL_CTRL_SESS_ACCEPT_GOOD() { 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 +647,7 @@ public static int SSL_CTRL_SESS_ACCEPT_RENEGOTIATE() { 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 +657,7 @@ public static int SSL_CTRL_SESS_HIT() { 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 +667,7 @@ public static int SSL_CTRL_SESS_CB_HIT() { 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 +677,7 @@ public static int SSL_CTRL_SESS_MISSES() { 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 +687,7 @@ public static int SSL_CTRL_SESS_TIMEOUTS() { 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 +697,7 @@ public static int SSL_CTRL_SESS_CACHE_FULL() { 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 +707,7 @@ public static int SSL_CTRL_SET_SESS_CACHE_SIZE() { 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 +717,7 @@ public static int SSL_CTRL_GET_SESS_CACHE_SIZE() { 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 +727,7 @@ public static int SSL_CTRL_SET_SESS_CACHE_MODE() { 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 +737,7 @@ public static int SSL_CTRL_GET_SESS_CACHE_MODE() { 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 +747,7 @@ public static int SSL_CTRL_SET_TLSEXT_TICKET_KEYS() { 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 +757,7 @@ public static int SSL_CTRL_CHAIN_CERT() { 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 +767,7 @@ public static int SSL_CTRL_SET_GROUPS() { 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 +777,7 @@ public static int SSL_CTRL_SET_DH_AUTO() { 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 +787,7 @@ public static int SSL_CTRL_SET_MIN_PROTO_VERSION() { 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 +797,7 @@ public static int SSL_CTRL_SET_MAX_PROTO_VERSION() { 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 +807,7 @@ public static int ERR_REASON_MASK() { 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 +817,7 @@ public static int OCSP_RESPONSE_STATUS_SUCCESSFUL() { 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 +827,7 @@ public static int V_OCSP_CERTSTATUS_GOOD() { 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 +837,7 @@ public static int V_OCSP_CERTSTATUS_REVOKED() { 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 +857,14 @@ class Holder { 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 +885,14 @@ class Holder { 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 +910,14 @@ public static MemorySegment OPENSSL_sk_value(MemorySegment x0, int x1) { 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 +937,14 @@ class Holder { 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 +965,14 @@ class Holder { 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 +992,14 @@ class Holder { 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 +1017,14 @@ public static long BIO_ctrl_pending(MemorySegment b) { 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 +1045,14 @@ class Holder { 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 +1072,14 @@ class Holder { 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 +1099,14 @@ class Holder { 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 +1128,14 @@ class Holder { 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 +1157,14 @@ class Holder { 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 +1187,14 @@ class Holder { 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 +1212,14 @@ public static long BIO_ctrl(MemorySegment bp, int cmd, long larg, MemorySegment 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 +1237,14 @@ public static MemorySegment BIO_s_mem() { 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 +1267,14 @@ class Holder { 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 +1292,14 @@ public static int BIO_new_bio_pair(MemorySegment bio1, long writebuf1, MemorySeg 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 +1320,14 @@ class Holder { 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 +1347,14 @@ class Holder { 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 +1374,14 @@ class Holder { 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 +1401,14 @@ class Holder { 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 +1428,14 @@ class Holder { 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 +1455,14 @@ class Holder { 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 +1482,14 @@ class Holder { 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 +1509,14 @@ class Holder { 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 +1536,14 @@ class Holder { 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 +1563,14 @@ class Holder { 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 +1590,14 @@ class Holder { 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 +1617,14 @@ class Holder { 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 +1646,14 @@ class Holder { 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 +1672,14 @@ class Holder { 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 +1699,14 @@ class Holder { 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 +1726,14 @@ class Holder { 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 +1752,14 @@ class Holder { 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 +1778,14 @@ class Holder { 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 +1805,14 @@ class Holder { 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 +1834,14 @@ class Holder { 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 +1861,14 @@ class Holder { 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 +1887,14 @@ class Holder { 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 +1912,14 @@ public static void EC_KEY_free(MemorySegment key) { 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 +1938,14 @@ class Holder { 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 +1968,14 @@ class Holder { 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 +1996,14 @@ class Holder { 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 +2023,14 @@ class Holder { 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 +2051,14 @@ class Holder { 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 +2076,14 @@ public static MemorySegment X509_STORE_add_lookup(MemorySegment v, MemorySegment 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 +2101,14 @@ public static MemorySegment X509_LOOKUP_hash_dir() { 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 +2132,14 @@ class Holder { 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 +2160,14 @@ class Holder { 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 +2187,14 @@ class Holder { 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 +2214,14 @@ class Holder { 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 +2241,14 @@ class Holder { 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 +2268,14 @@ class Holder { 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 +2295,14 @@ class Holder { 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 +2323,14 @@ class Holder { 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 +2349,14 @@ class Holder { 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 +2367,7 @@ public static void X509_free(MemorySegment a) { } /** * {@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 +2378,14 @@ class Holder { 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 +2406,14 @@ class Holder { 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 +2435,14 @@ class Holder { 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 +2463,14 @@ class Holder { 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 +2490,14 @@ class Holder { 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 +2522,14 @@ class Holder { 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 +2552,14 @@ class Holder { 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 +2582,14 @@ class Holder { 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 +2612,14 @@ class Holder { 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 +2642,14 @@ class Holder { 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 +2670,14 @@ class Holder { 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 +2697,14 @@ class Holder { 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 +2724,14 @@ class Holder { 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 +2752,14 @@ class Holder { 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 +2780,14 @@ class Holder { 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 +2808,14 @@ class Holder { 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 +2836,14 @@ class Holder { 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 +2864,14 @@ class Holder { 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 +2891,14 @@ class Holder { 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 +2919,14 @@ class Holder { 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 +2947,14 @@ class Holder { 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 +2974,14 @@ class Holder { 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 +3000,14 @@ class Holder { 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 +3028,14 @@ class Holder { 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 +3055,14 @@ class Holder { 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 +3082,14 @@ class Holder { 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 +3109,14 @@ class Holder { 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 +3136,14 @@ class Holder { 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 +3163,14 @@ class Holder { 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 +3190,14 @@ class Holder { 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 +3217,14 @@ class Holder { 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 +3245,14 @@ class Holder { 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 +3273,14 @@ class Holder { 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 +3301,14 @@ class Holder { 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 +3329,14 @@ class Holder { 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 +3357,14 @@ class Holder { 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 +3384,14 @@ class Holder { 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 +3412,14 @@ class Holder { 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 +3439,14 @@ class Holder { 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 +3467,14 @@ class Holder { 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 +3494,14 @@ class Holder { 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 +3521,14 @@ class Holder { 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 +3549,14 @@ class Holder { 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 +3577,14 @@ class Holder { 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 +3605,14 @@ class Holder { 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 +3633,14 @@ class Holder { 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 +3660,14 @@ class Holder { 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 +3687,14 @@ class Holder { 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 +3716,14 @@ class Holder { 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 +3743,14 @@ class Holder { 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 +3769,14 @@ class Holder { 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 +3798,14 @@ class Holder { 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 +3827,14 @@ class Holder { 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 +3857,14 @@ class Holder { 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 +3884,14 @@ class Holder { 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 +3909,14 @@ public static MemorySegment SSL_get_version(MemorySegment s) { 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 +3936,14 @@ class Holder { 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 +3963,14 @@ class Holder { 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 +3990,14 @@ class Holder { 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 +4017,14 @@ class Holder { 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 +4044,14 @@ class Holder { 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 +4071,14 @@ class Holder { 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 +4098,14 @@ class Holder { 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 +4125,14 @@ class Holder { 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 +4152,14 @@ class Holder { 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 +4180,14 @@ class Holder { 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 +4206,14 @@ class Holder { 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 +4232,14 @@ class Holder { 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 +4259,14 @@ class Holder { 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 +4286,14 @@ class Holder { 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 +4313,14 @@ class Holder { 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 +4342,14 @@ class Holder { 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 +4369,14 @@ class Holder { 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 +4396,14 @@ class Holder { 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 +4423,14 @@ class Holder { 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 +4448,14 @@ public static void SSL_set_verify_result(MemorySegment ssl, long v) { 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 +4475,14 @@ class Holder { 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 +4500,14 @@ public static void SSL_CTX_set_tmp_dh_callback(MemorySegment ctx, MemorySegment 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 +4527,14 @@ class Holder { 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 +4553,14 @@ class Holder { 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 +4581,14 @@ class Holder { 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 +4608,14 @@ class Holder { 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 +4637,14 @@ class Holder { 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 +4665,14 @@ class Holder { 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 +4693,14 @@ class Holder { 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 +4718,14 @@ public static int OPENSSL_init_ssl(long opts, MemorySegment settings) { 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 +4743,14 @@ public static long ERR_get_error() { 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 +4767,14 @@ public static long ERR_peek_last_error() { 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 +4795,14 @@ class Holder { 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 +4824,14 @@ class Holder { 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 +4850,14 @@ class Holder { 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 +4881,14 @@ class Holder { 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 +4909,14 @@ class Holder { 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 +4936,14 @@ class Holder { 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 +4964,14 @@ class Holder { 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 +4992,14 @@ class Holder { 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 +5019,14 @@ class Holder { 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 +5044,14 @@ public static MemorySegment ENGINE_by_id(MemorySegment id) { 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 +5074,14 @@ class Holder { 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 +5101,14 @@ class Holder { 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 +5131,14 @@ class Holder { 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 +5159,14 @@ class Holder { 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 +5188,14 @@ class Holder { 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 +5216,14 @@ class Holder { 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 +5243,14 @@ class Holder { 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 +5270,14 @@ class Holder { 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 +5298,14 @@ class Holder { 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 +5327,14 @@ class Holder { 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 +5358,14 @@ class Holder { 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 +5384,14 @@ class Holder { 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 +5410,14 @@ class Holder { 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 +5428,7 @@ public static void OCSP_RESPONSE_free(MemorySegment a) { } /** * {@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 +5439,14 @@ class Holder { 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 +5465,14 @@ class Holder { 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 +5490,14 @@ public static void OCSP_CERTID_free(MemorySegment a) { 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 +5516,14 @@ class Holder { 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 +5544,14 @@ class Holder { 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 +5571,14 @@ class Holder { 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 +5587,18 @@ public static MemorySegment OSSL_PROVIDER_get0_name(MemorySegment prov) { 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 +5608,7 @@ public static int OPENSSL_LINE() { 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 +5618,7 @@ public static long OPENSSL_INIT_ENGINE_ALL_BUILTIN() { 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 +5628,7 @@ public static int EVP_PKEY_NONE() { return EVP_PKEY_NONE; } private static final int EVP_PKEY_RSA = (int)6L; - + /** * {@snippet lang=c : * #define EVP_PKEY_RSA 6 @@ -5588,7 +5638,7 @@ public static int EVP_PKEY_RSA() { return EVP_PKEY_RSA; } private static final int EVP_PKEY_DSA = (int)116L; - + /** * {@snippet lang=c : * #define EVP_PKEY_DSA 116 @@ -5597,8 +5647,8 @@ public static int EVP_PKEY_RSA() { public static int EVP_PKEY_DSA() { return EVP_PKEY_DSA; } - private static final MemorySegment PEM_STRING_ECPARAMETERS = Arena.ofAuto().allocateFrom("EC PARAMETERS");; - + private static final MemorySegment PEM_STRING_ECPARAMETERS = Arena.ofAuto().allocateFrom("EC PARAMETERS"); + /** * {@snippet lang=c : * #define PEM_STRING_ECPARAMETERS "EC PARAMETERS" @@ -5608,7 +5658,7 @@ public static MemorySegment PEM_STRING_ECPARAMETERS() { return PEM_STRING_ECPARAMETERS; } private static final long SSL_OP_NO_TICKET = 16384L; - + /** * {@snippet lang=c : * #define SSL_OP_NO_TICKET 16384 @@ -5618,7 +5668,7 @@ public static long SSL_OP_NO_TICKET() { 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 +5678,7 @@ public static long SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION() { 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 +5688,7 @@ public static long SSL_OP_NO_COMPRESSION() { 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 +5698,7 @@ public static long SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION() { 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 +5708,7 @@ public static long SSL_OP_CIPHER_SERVER_PREFERENCE() { 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 +5718,7 @@ public static long SSL_OP_NO_SSLv3() { 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 +5728,7 @@ public static long SSL_OP_NO_TLSv1() { 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 +5738,7 @@ public static long SSL_OP_NO_TLSv1_2() { 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 +5748,7 @@ public static long SSL_OP_NO_TLSv1_1() { 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 +5758,7 @@ public static long SSL_OP_NO_TLSv1_3() { return SSL_OP_NO_TLSv1_3; } private static final long SSL_OP_ALL = 2147485776L; - + /** * {@snippet lang=c : * #define SSL_OP_ALL 2147485776 @@ -5718,7 +5768,7 @@ public static long SSL_OP_ALL() { return SSL_OP_ALL; } private static final int ENGINE_METHOD_ALL = (int)65535L; - + /** * {@snippet lang=c : * #define ENGINE_METHOD_ALL 65535 @@ -5727,52 +5777,5 @@ public static long SSL_OP_ALL() { 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()); - } } - diff --git a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/openssl_h_Macros.java b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/openssl_h_Macros.java index bcef2315203b..e84d50b27b7c 100644 --- a/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/openssl_h_Macros.java +++ b/modules/openssl-foreign/src/main/java/org/apache/tomcat/util/openssl/openssl_h_Macros.java @@ -24,6 +24,7 @@ /** * Functional macros not handled by jextract. */ +@SuppressWarnings("javadoc") public class openssl_h_Macros {