M: windows socket-handle handle>> alien-address ;
M: secure remote>handle
- [ addrspec>> remote>handle ] [ hostname>> ] bi <ssl-socket> ;
+ [ addrspec>> remote>handle dup FIONBIO 1 set-ioctl-socket ]
+ [ hostname>> ] bi <ssl-socket> ;
GENERIC: windows-socket-handle ( obj -- handle )
M: ssl-handle windows-socket-handle file>> ;
M: secure parse-sockaddr addrspec>> parse-sockaddr f <secure> ;
-M:: secure establish-connection ( client-out addrspec -- )
- client-out handle>> file>> :> socket
- socket FIONBIO 1 set-ioctl-socket
- socket <output-port> addrspec addrspec>> establish-connection
- client-out addrspec secure-connection
- socket FIONBIO 0 set-ioctl-socket ;
+M: secure establish-connection
+ [
+ [ handle>> file>> <output-port> ] [ addrspec>> ] bi* establish-connection
+ ] [ secure-connection ] 2bi ;
M: windows non-ssl-socket? win32-socket? ;