diff options
author | Daniel Stenberg <daniel@haxx.se> | 2006-03-21 21:54:44 +0000 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2006-03-21 21:54:44 +0000 |
commit | 83367f67de9584b91570bcb53a153b8aa496d455 (patch) | |
tree | 83fe48b1331c3b40653ea85ec56b663093feae12 /lib/urldata.h | |
parent | 15f2647d713b2de6d76424ef83e5dd00cfd3403d (diff) |
Xavier Bouchoux made the SSL connection non-blocking for the multi interface
(when using OpenSSL).
Diffstat (limited to 'lib/urldata.h')
-rw-r--r-- | lib/urldata.h | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/lib/urldata.h b/lib/urldata.h index 6cb3729b9..1418f3e92 100644 --- a/lib/urldata.h +++ b/lib/urldata.h @@ -128,13 +128,23 @@ struct krb4buffer { int eof_flag; }; enum protection_level { - prot_clear, - prot_safe, - prot_confidential, - prot_private + prot_clear, + prot_safe, + prot_confidential, + prot_private }; #endif +/* enum for the nonblocking SSL connection state machine */ +typedef enum { + ssl_connect_1, + ssl_connect_2, + ssl_connect_2_reading, + ssl_connect_2_writing, + ssl_connect_3, + ssl_connect_done +} ssl_connect_state; + /* struct for data related to each SSL connection */ struct ssl_connect_data { bool use; /* use ssl encrypted communications TRUE/FALSE */ @@ -143,6 +153,7 @@ struct ssl_connect_data { SSL_CTX* ctx; SSL* handle; X509* server_cert; + ssl_connect_state connecting_state; #endif /* USE_SSLEAY */ #ifdef USE_GNUTLS gnutls_session session; |