@@ -403,13 +403,14 @@ include("setup.jl")
403403 end
404404 end
405405
406+ save_env = get (ENV , " JULIA_SSL_NO_VERIFY_HOSTS" , nothing )
407+ delete! (ENV , " JULIA_SSL_NO_VERIFY_HOSTS" )
408+
406409 @testset " bad TLS" begin
407- save_env = get (ENV , " JULIA_SSL_NO_VERIFY_HOSTS" , nothing )
408410 urls = [
409411 " https://wrong.host.badssl.com"
410412 " https://untrusted-root.badssl.com"
411413 ]
412- ENV [" JULIA_SSL_NO_VERIFY_HOSTS" ] = nothing
413414 @testset " bad TLS is rejected" for url in urls
414415 resp = request (url, throw= false )
415416 @test resp isa RequestError
@@ -449,11 +450,26 @@ include("setup.jl")
449450 @test resp isa Response
450451 @test resp. status == 200
451452 end
452- if save_env != = nothing
453- ENV [" JULIA_SSL_NO_VERIFY_HOSTS" ] = save_env
454- else
455- delete! (ENV , " JULIA_SSL_NO_VERIFY_HOSTS" )
456- end
453+ delete! (ENV , " JULIA_SSL_NO_VERIFY_HOSTS" )
454+ end
455+
456+ @testset " SNI required" begin
457+ url = " https://juliahub.com" # anything served by CloudFront
458+ # secure verified host request
459+ resp = request (url, throw= false , downloader= Downloader ())
460+ @test resp isa Response
461+ @test resp. status == 200
462+ # insecure unverified host request
463+ ENV [" JULIA_SSL_NO_VERIFY_HOSTS" ] = " **"
464+ resp = request (url, throw= false , downloader= Downloader ())
465+ @test resp isa Response
466+ @test resp. status == 200
467+ end
468+
469+ if save_env != = nothing
470+ ENV [" JULIA_SSL_NO_VERIFY_HOSTS" ] = save_env
471+ else
472+ delete! (ENV , " JULIA_SSL_NO_VERIFY_HOSTS" )
457473 end
458474
459475 @__MODULE__ () == Main && @testset " ftp download" begin
0 commit comments