Check EVP_Cipher return values for SSL2
[oweals/openssl.git] / ssl / dtls1.h
index f68a10f196593fdb61791eb983aea82fbd2ebbee..af86f60fb566d08384cf48b96e24b2a38d4e575b 100644 (file)
@@ -57,8 +57,8 @@
  *
  */
 
-#ifndef HEADER_DTLS1_H 
-#define HEADER_DTLS1_H 
+#ifndef HEADER_DTLS1_H
+#define HEADER_DTLS1_H
 
 #include <openssl/buffer.h>
 #include <openssl/pqueue.h>
 #elif defined(OPENSSL_SYS_NETWARE) && !defined(_WINSOCK2API_)
 #include <sys/timeval.h>
 #else
+#if defined(OPENSSL_SYS_VXWORKS)
+#include <sys/times.h>
+#else
 #include <sys/time.h>
 #endif
+#endif
 
 #ifdef  __cplusplus
 extern "C" {
 #endif
 
 #define DTLS1_VERSION                  0xFEFF
+#define DTLS1_2_VERSION                        0xFEFD
+#define DTLS_MAX_VERSION               DTLS1_2_VERSION
+
 #define DTLS1_BAD_VER                  0x0100
 
+/* Special value for method supporting multiple versions */
+#define DTLS_ANY_VERSION               0x1FFFF
+
 #if 0
 /* this alert description is not specified anywhere... */
 #define DTLS1_AD_MISSING_HANDSHAKE_MESSAGE    110
@@ -232,7 +242,7 @@ typedef struct dtls1_state_st
 
        struct dtls1_timeout_st timeout;
 
-       /* Indicates when the last handshake msg sent will timeout */
+       /* Indicates when the last handshake msg or heartbeat sent will timeout */
        struct timeval next_timeout;
 
        /* Timeout duration */
@@ -246,6 +256,10 @@ typedef struct dtls1_state_st
        unsigned int handshake_fragment_len;
 
        unsigned int retransmitting;
+       /*
+        * Set when the handshake is ready to process peer's ChangeCipherSpec message.
+        * Cleared after the message has been processed.
+        */
        unsigned int change_cipher_spec_ok;
 
 #ifndef OPENSSL_NO_SCTP
@@ -280,4 +294,3 @@ typedef struct dtls1_record_data_st
 }
 #endif
 #endif
-