summaryrefslogtreecommitdiff
path: root/lib/gnutls_int.h
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@gnutls.org>2001-10-20 09:10:03 +0000
committerNikos Mavrogiannopoulos <nmav@gnutls.org>2001-10-20 09:10:03 +0000
commit2b0e6fb917697b60e3284f7adfdf9f623d022b7b (patch)
tree0267421f137751d5ef38ca9e287bf8106361e404 /lib/gnutls_int.h
parent57a7554fe6101b1d5b3d98ad4be4c59efa83478f (diff)
downloadgnutls-2b0e6fb917697b60e3284f7adfdf9f623d022b7b.tar.gz
the gnutls handshake protocol can now hold it's state. Thus it
may be used in some kind of non blocking mode. Not tested at all
Diffstat (limited to 'lib/gnutls_int.h')
-rw-r--r--lib/gnutls_int.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/gnutls_int.h b/lib/gnutls_int.h
index a4b9828c47..b1ca4009b3 100644
--- a/lib/gnutls_int.h
+++ b/lib/gnutls_int.h
@@ -99,6 +99,10 @@ typedef enum CertificateStatus { GNUTLS_CERT_TRUSTED=1, GNUTLS_CERT_NOT_TRUSTED,
typedef enum CertificateRequest { GNUTLS_CERT_REQUEST=1, GNUTLS_CERT_REQUIRE } CertificateRequest;
typedef enum CloseRequest { GNUTLS_SHUT_RDWR=0, GNUTLS_SHUT_WR=1 } CloseRequest;
+typedef enum HandshakeState { STATE0=0, STATE1, STATE2, STATE3, STATE4, STATE5,
+ STATE6, STATE7, STATE8, STATE9, STATE10, STATE11, STATE20=20, STATE21,
+ STATE30=30, STATE31 } HandshakeState;
+
typedef enum HandshakeType { GNUTLS_HELLO_REQUEST, GNUTLS_CLIENT_HELLO, GNUTLS_SERVER_HELLO,
GNUTLS_CERTIFICATE=11, GNUTLS_SERVER_KEY_EXCHANGE,
GNUTLS_CERTIFICATE_REQUEST, GNUTLS_SERVER_HELLO_DONE,
@@ -318,7 +322,7 @@ typedef struct {
gnutls_datum hash_buffer; /* used to keep all handshake messages */
gnutls_datum buffer_handshake; /* this is a buffer that holds the current handshake message */
ResumableSession resumable; /* TRUE or FALSE - if we can resume that session */
-/* jmp_buf handshake_nb_state; /* holds
+ HandshakeState handshake_state; /* holds
* a number which indicates where
* the handshake procedure has been
* interrupted. If it is 0 then