mirror of
https://github.com/nim-lang/Nim.git
synced 2026-02-16 08:04:20 +00:00
@@ -1,22 +1,26 @@
|
||||
discard """
|
||||
cmd: "nim c -r -d:ssl $file"
|
||||
exitcode: 0
|
||||
matrix: "-d:ssl"
|
||||
"""
|
||||
|
||||
import std/net
|
||||
from std/strutils import `%`
|
||||
|
||||
# Issue 15215 - https://github.com/nim-lang/Nim/issues/15215
|
||||
# bug #15215
|
||||
proc test() =
|
||||
var
|
||||
ctx = newContext()
|
||||
socket = newSocket()
|
||||
let ctx = newContext()
|
||||
|
||||
wrapSocket(ctx, socket)
|
||||
proc fn(url: string) =
|
||||
let socket = newSocket()
|
||||
defer: close(socket)
|
||||
connect(socket, url, Port(443), 5000) # typically 20 could be enough
|
||||
send(socket, "GET / HTTP/1.0\nHost: $#\nConnection: close\n\n" % [url])
|
||||
wrapSocket(ctx, socket)
|
||||
|
||||
connect(socket, "www.nim-lang.org", Port(443), 5000)
|
||||
|
||||
send(socket, "GET / HTTP/1.0\nHost: www.nim-lang.org\nConnection: close\n\n")
|
||||
|
||||
close(socket)
|
||||
# trying 2 sites makes it more resilent: refs #17458 this could give:
|
||||
# Error: unhandled exception: Call to 'connect' timed out. [TimeoutError]
|
||||
try:
|
||||
fn("www.nim-lang.org")
|
||||
except TimeoutError:
|
||||
fn("www.google.com")
|
||||
|
||||
test()
|
||||
|
||||
Reference in New Issue
Block a user