diff --git a/.circleci/script/gen_ci.clj b/.circleci/script/gen_ci.clj index dbc3134c..883bdf82 100644 --- a/.circleci/script/gen_ci.clj +++ b/.circleci/script/gen_ci.clj @@ -192,7 +192,7 @@ java -jar \"$jar\" --config .build/bb.edn --deps-root . release-artifact \"$refl [shorted?] (let [docker-executor-conf {:docker [{:image "circleci/clojure:openjdk-11-lein-2.9.8-bullseye"}]} machine-executor-conf {:machine {:image "ubuntu-2004:202111-01"}} - mac-executor-conf {:macos {:xcode "15.2.0"}} + mac-executor-conf {:macos {:xcode "12.5.1"}} linux-graalvm-home (str "/home/circleci/graalvm-" graalvm-version) mac-graalvm-home (format "/Users/distiller/graalvm-%s/Contents/Home" graalvm-version)] (ordered-map diff --git a/src/babashka/impl/classes.clj b/src/babashka/impl/classes.clj index d033654b..1cbdad93 100644 --- a/src/babashka/impl/classes.clj +++ b/src/babashka/impl/classes.clj @@ -242,6 +242,8 @@ javax.net.ssl.TrustManagerFactory javax.net.ssl.X509TrustManager javax.net.ssl.X509ExtendedTrustManager + javax.net.ssl.SSLSocket + javax.net.ssl.SSLSocketFactory jdk.internal.net.http.HttpClientBuilderImpl jdk.internal.net.http.HttpClientFacade jdk.internal.net.http.HttpRequestBuilderImpl @@ -727,8 +729,6 @@ java.net.URLClassLoader (instance? java.lang.ClassLoader v) java.lang.ClassLoader - (instance? java.io.Closeable v) - java.io.Closeable (instance? java.nio.file.attribute.BasicFileAttributes v) java.nio.file.attribute.BasicFileAttributes (instance? java.util.concurrent.Future v) @@ -741,6 +741,10 @@ java.util.Iterator (instance? javax.crypto.SecretKey v) javax.crypto.SecretKey + (instance? javax.net.ssl.SSLSocketFactory v) + javax.net.ssl.SSLSocketFactory + (instance? javax.net.ssl.SSLSocket v) + javax.net.ssl.SSLSocket (instance? java.lang.Thread v) java.lang.Thread (instance? java.security.cert.X509Certificate v) @@ -749,6 +753,8 @@ java.io.Console (instance? java.util.Set v) java.util.Set + (instance? java.io.Closeable v) + java.io.Closeable ;; keep commas for merge friendliness ))) m (assoc m (list 'quote 'clojure.lang.Var) 'sci.lang.Var) diff --git a/test/babashka/interop_test.clj b/test/babashka/interop_test.clj index 98610ffb..0f537d86 100644 --- a/test/babashka/interop_test.clj +++ b/test/babashka/interop_test.clj @@ -50,3 +50,8 @@ (Thread/sleep (/ 1 200) (/ 1 200)) (Thread/sleep (java.time.Duration/ofMillis 1)) true"))) + +(deftest SSL-test + (is (= :user/success + (bb nil "(try (.createSocket (javax.net.ssl.SSLSocketFactory/getDefault) \"localhost\" 4444) (catch java.net.ConnectException e ::success))"))) + (is (bb nil " (.startHandshake (.createSocket (javax.net.ssl.SSLSocketFactory/getDefault) \"clojure.org\" 443)) ::success")))