Commit Graph

16 Commits (f140d48e24aa8ed3a1ca57798f36a542db8bcfc7)

Author SHA1 Message Date
Doug Coleman c7041fe96e io.sockets.secure.windows: Windows sockets are a bit confused. Make a word
to get the handle out of two different paths. Probably needs more
refactoring but this makes it work.
2016-06-02 11:07:19 -07:00
Doug Coleman 05083ba503 io.sockets.secure.windows: No need to call file>> because we have a
win32-socket on the stack already.
2016-06-02 10:56:50 -07:00
Doug Coleman d3bc2035a2 factor: remove rest of double paren words. 2016-03-25 03:13:27 -07:00
Doug Coleman bb7161a46f io.sockets.secure.windows: Add some code for loading the certificates on
windows. Still disabled, and the CA certificates are duplicated.
2016-03-13 16:11:45 -07:00
Benjamin Pollack b0d62bcdc3 io.sockets.secure: add SNI support for Windows
M: secure ((client)) is identical between Unix and Windows, so this probably
could be moved out of the platform-specific vocab, but doing it sanely would
require a refactor I'm not excited about, so punting on that for now.

Fixes #1551
2016-03-12 09:27:31 -05:00
Doug Coleman a303637850 io.sockets.secure.windows: Try to fix compile error. 2016-03-05 02:57:39 -08:00
Benjamin Pollack 62d1425971 Add SNI support to Factor
Fixes #1527
2016-03-03 09:48:20 -08:00
Doug Coleman 377180baf6 io.sockets.secure.windows: Fix using, remove duplication. 2014-07-07 21:44:40 -05:00
Doug Coleman 59c5373263 io.sockets.secure: Another fix for cross-platform openssl. 2014-07-07 18:45:22 -07:00
Doug Coleman 075a86f5d9 io.sockets.secure: Move some code from secure.unix to secure.openssl. Add a hook for finding sockets to upgrade. 2014-07-07 18:34:41 -07:00
Björn Lindqvist f8387a08ae Merge:
io.sockets.secure.windows: use non-blocking sockets to prevent
SSL_connect from blocking

On Windows, SSL_connect may hang forever if the server doesn't send any
data. To counteract that we temporarily set the socket non-blocking and
then call select in the wait-for-fd method.

Conflicts:
	basis/io/sockets/secure/openssl/openssl-tests.factor
2014-04-02 12:16:51 -05:00
Björn Lindqvist 6421af3401 io.sockets.secure.*: unification of lots of platform-independent code
Code that is duplicated in the backends moved to
io.sockets.secure.openssl. The wait-for-fd verb used by do-ssl-accept
doesn't have any equivalent on Windows so that needs to be
implemented.
2014-04-02 12:12:37 -05:00
Björn Lindqvist 5f38df7741 io.sockets.secure.windows: reading and writing from ssl sockets
Unified the drain and refill generics and put their definition in
io.files. They are now used by both the windows and unix ssl backend
for io. Windows ssl kind of works now, but the error cases are not
implemented correctly.
2014-04-02 12:12:14 -05:00
Björn Lindqvist 6ed3a09b5d io.sockets.secure: new hook variable ssl-certificate-verification-supported?
t if the backend is able to verify certificates, f
otherwise. Currently certificate validation isn't implemented on Windows
2014-04-02 12:11:53 -05:00
John Benediktsson 53592b9c7d io.sockets.secure.windows: add platforms.txt. 2013-11-16 16:20:34 -08:00
Björn Lindqvist 5f2238f7d4 io.sockets.secure.windows: secure socket implementation for windows, it works reasonably but certificate validation is not working correctly yet 2013-10-11 10:23:40 -07:00