summary refs log tree commit diff stats
path: root/tests
diff options
context:
space:
mode:
authormetagn <metagngn@gmail.com>2022-09-14 21:14:58 +0300
committerGitHub <noreply@github.com>2022-09-14 14:14:58 -0400
commit79afee868d784eb90972deb3ea89c96702585968 (patch)
tree65724d3c2ceb13ee5e4cf53a40028b7741da7c4b /tests
parenta73ae3e066caecb7a891de87cf7c004805f96ff0 (diff)
downloadNim-79afee868d784eb90972deb3ea89c96702585968.tar.gz
partial revert and redesign of #19814, changelog (#20341)
* conservative partial revert of #19814

* fix

* revert tssl

* revert azure CI change

* keep azure, revert version range

* fully revert CI, add changelog

* useOpenssl3 as separate define, .3 is a version
Diffstat (limited to 'tests')
-rw-r--r--tests/stdlib/tssl.nim44
1 files changed, 23 insertions, 21 deletions
diff --git a/tests/stdlib/tssl.nim b/tests/stdlib/tssl.nim
index fd85cb55b..379c1b1e5 100644
--- a/tests/stdlib/tssl.nim
+++ b/tests/stdlib/tssl.nim
@@ -16,22 +16,9 @@ when not defined(ssl):
 
 const DummyData = "dummy data\n"
 
-proc createSocket(): Socket =
-  result = newSocket(buffered = false)
-  result.setSockOpt(OptReuseAddr, true)
-  result.setSockOpt(OptReusePort, true)
-
-proc createServer(serverContext: SslContext): (Socket, Port) =
-  var server = createSocket()
-  serverContext.wrapSocket(server)
-  server.bindAddr(address = "localhost")
-  let (_, port) = server.getLocalAddr()
-  server.listen()
-  return (server, port)
-
 proc abruptShutdown(port: Port) {.thread.} =
   let clientContext = newContext(verifyMode = CVerifyNone)
-  var client = createSocket()
+  var client = newSocket(buffered = false)
   clientContext.wrapSocket(client)
   client.connect("localhost", port)
 
@@ -40,7 +27,7 @@ proc abruptShutdown(port: Port) {.thread.} =
 
 proc notifiedShutdown(port: Port) {.thread.} =
   let clientContext = newContext(verifyMode = CVerifyNone)
-  var client = createSocket()
+  var client = newSocket(buffered = false)
   clientContext.wrapSocket(client)
   client.connect("localhost", port)
 
@@ -62,7 +49,13 @@ proc main() =
                                  keyFile = "tests/testdata/mycert.pem")
 
   block peer_close_during_write_without_shutdown:
-    var (server, port) = createServer(serverContext)
+    var server = newSocket(buffered = false)
+    defer: server.close()
+    serverContext.wrapSocket(server)
+    server.bindAddr(address = "localhost")
+    let (_, port) = server.getLocalAddr()
+    server.listen()
+
     var clientThread: Thread[Port]
     createThread(clientThread, abruptShutdown, port)
 
@@ -80,14 +73,19 @@ proc main() =
       discard
     finally:
       peer.close()
-      server.close()
 
   when defined(posix):
     if sigaction(SIGPIPE, oldSigPipeHandler, nil) == -1:
       raiseOSError(osLastError(), "Couldn't restore SIGPIPE handler")
 
   block peer_close_before_received_shutdown:
-    var (server, port) = createServer(serverContext)
+    var server = newSocket(buffered = false)
+    defer: server.close()
+    serverContext.wrapSocket(server)
+    server.bindAddr(address = "localhost")
+    let (_, port) = server.getLocalAddr()
+    server.listen()
+
     var clientThread: Thread[Port]
     createThread(clientThread, abruptShutdown, port)
 
@@ -106,10 +104,15 @@ proc main() =
         discard peer.getFd.shutdown(SD_SEND)
     finally:
       peer.close()
-      server.close()
 
   block peer_close_after_received_shutdown:
-    var (server, port) = createServer(serverContext)
+    var server = newSocket(buffered = false)
+    defer: server.close()
+    serverContext.wrapSocket(server)
+    server.bindAddr(address = "localhost")
+    let (_, port) = server.getLocalAddr()
+    server.listen()
+
     var clientThread: Thread[Port]
     createThread(clientThread, notifiedShutdown, port)
 
@@ -129,6 +132,5 @@ proc main() =
         discard peer.getFd.shutdown(SD_SEND)
     finally:
       peer.close()
-      server.close()
 
 when isMainModule: main()