Workarounds to make broken programs happy (such as s_client and s_server).
[openssl.git] / ssl / tls1.h
index 780beea855573145244226577c4d17d86efc7287..6e2b06d34f71ef043438f0ba8dd79d47316fd7f1 100644 (file)
 #ifndef HEADER_TLS1_H 
 #define HEADER_TLS1_H 
 
-#include "buffer.h"
+#include <openssl/buffer.h>
 
 #ifdef  __cplusplus
 extern "C" {
 #endif
 
-#define TLS1_ALLOW_EXPERIMENTAL_CIPHERSUITES   0
+#define TLS1_ALLOW_EXPERIMENTAL_CIPHERSUITES   1
 
 #define TLS1_VERSION                   0x0301
 #define TLS1_VERSION_MAJOR             0x03
@@ -77,20 +77,29 @@ extern "C" {
 #define TLS1_AD_ACCESS_DENIED          49      /* fatal */
 #define TLS1_AD_DECODE_ERROR           50      /* fatal */
 #define TLS1_AD_DECRYPT_ERROR          51
-#define TLS1_AD_EXPORT_RESTRICION      60      /* fatal */
+#define TLS1_AD_EXPORT_RESTRICTION     60      /* fatal */
 #define TLS1_AD_PROTOCOL_VERSION       70      /* fatal */
 #define TLS1_AD_INSUFFICIENT_SECURITY  71      /* fatal */
 #define TLS1_AD_INTERNAL_ERROR         80      /* fatal */
-#define TLS1_AD_USER_CANCLED           90
+#define TLS1_AD_USER_CANCELLED         90
 #define TLS1_AD_NO_RENEGOTIATION       100
 
-#define TLS1_CK_RSA_EXPORT56_WITH_RC4_56_MD5           0x03000060
-#define TLS1_CK_RSA_EXPORT56_WITH_RC2_CBC_56_MD5       0x03000061
-#define TLS1_CK_RSA_EXPORT56_WITH_DES_CBC_SHA          0x03000062
+#define TLS1_CK_RSA_EXPORT1024_WITH_RC4_56_MD5         0x03000060
+#define TLS1_CK_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5     0x03000061
+#define TLS1_CK_RSA_EXPORT1024_WITH_DES_CBC_SHA                0x03000062
+#define TLS1_CK_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA    0x03000063
+#define TLS1_CK_RSA_EXPORT1024_WITH_RC4_56_SHA         0x03000064
+#define TLS1_CK_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA     0x03000065
+#define TLS1_CK_DHE_DSS_WITH_RC4_128_SHA               0x03000066
+
+#define TLS1_TXT_RSA_EXPORT1024_WITH_RC4_56_MD5                "EXP1024-RC4-MD5"
+#define TLS1_TXT_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5    "EXP1024-RC2-CBC-MD5"
+#define TLS1_TXT_RSA_EXPORT1024_WITH_DES_CBC_SHA       "EXP1024-DES-CBC-SHA"
+#define TLS1_TXT_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA   "EXP1024-DHE-DSS-DES-CBC-SHA"
+#define TLS1_TXT_RSA_EXPORT1024_WITH_RC4_56_SHA                "EXP1024-RC4-SHA"
+#define TLS1_TXT_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA    "EXP1024-DHE-DSS-RC4-SHA"
+#define TLS1_TXT_DHE_DSS_WITH_RC4_128_SHA              "DHE-DSS-RC4-SHA"
 
-#define TLS1_TXT_RSA_EXPORT56_WITH_RC4_56_MD5          "EXP56-RC4-MD5"
-#define TLS1_TXT_RSA_EXPORT56_WITH_RC2_CBC_56_MD5      "EXP56-RC2-CBC-MD5"
-#define TLS1_TXT_RSA_EXPORT56_WITH_DES_CBC_SHA         "EXP56-DES-CBC-SHA"
 
 #define TLS_CT_RSA_SIGN                        1
 #define TLS_CT_DSS_SIGN                        2
@@ -118,6 +127,25 @@ extern "C" {
 #define TLS_MD_MASTER_SECRET_CONST             "master secret"
 #define TLS_MD_MASTER_SECRET_CONST_SIZE                13
 
+#ifdef CHARSET_EBCDIC
+#undef TLS_MD_CLIENT_FINISH_CONST
+#define TLS_MD_CLIENT_FINISH_CONST    "\x63\x6c\x69\x65\x6e\x74\x20\x66\x69\x6e\x69\x73\x68\x65\x64"  /*client finished*/
+#undef TLS_MD_SERVER_FINISH_CONST
+#define TLS_MD_SERVER_FINISH_CONST    "\x73\x65\x72\x76\x65\x72\x20\x66\x69\x6e\x69\x73\x68\x65\x64"  /*server finished*/
+#undef TLS_MD_SERVER_WRITE_KEY_CONST
+#define TLS_MD_SERVER_WRITE_KEY_CONST "\x73\x65\x72\x76\x65\x72\x20\x77\x72\x69\x74\x65\x20\x6b\x65\x79"  /*server write key*/
+#undef TLS_MD_KEY_EXPANSION_CONST
+#define TLS_MD_KEY_EXPANSION_CONST    "\x6b\x65\x79\x20\x65\x78\x70\x61\x6e\x73\x69\x6f\x6e"  /*key expansion*/
+#undef TLS_MD_CLIENT_WRITE_KEY_CONST
+#define TLS_MD_CLIENT_WRITE_KEY_CONST "\x63\x6c\x69\x65\x6e\x74\x20\x77\x72\x69\x74\x65\x20\x6b\x65\x79"  /*client write key*/
+#undef TLS_MD_SERVER_WRITE_KEY_CONST
+#define TLS_MD_SERVER_WRITE_KEY_CONST "\x73\x65\x72\x76\x65\x72\x20\x77\x72\x69\x74\x65\x20\x6b\x65\x79"  /*server write key*/
+#undef TLS_MD_IV_BLOCK_CONST
+#define TLS_MD_IV_BLOCK_CONST         "\x49\x56\x20\x62\x6c\x6f\x63\x6b"  /*IV block*/
+#undef TLS_MD_MASTER_SECRET_CONST
+#define TLS_MD_MASTER_SECRET_CONST    "\x6d\x61\x73\x74\x65\x72\x20\x73\x65\x63\x72\x65\x74"  /*master secret*/
+#endif
+
 #ifdef  __cplusplus
 }
 #endif