diff options
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libssl/ssl_locl.h | 88 |
1 files changed, 49 insertions, 39 deletions
diff --git a/src/lib/libssl/ssl_locl.h b/src/lib/libssl/ssl_locl.h index 516d3cc5ae..5208c4c42a 100644 --- a/src/lib/libssl/ssl_locl.h +++ b/src/lib/libssl/ssl_locl.h | |||
| @@ -56,7 +56,7 @@ | |||
| 56 | * [including the GNU Public Licence.] | 56 | * [including the GNU Public Licence.] |
| 57 | */ | 57 | */ |
| 58 | /* ==================================================================== | 58 | /* ==================================================================== |
| 59 | * Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. | 59 | * Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. |
| 60 | * | 60 | * |
| 61 | * Redistribution and use in source and binary forms, with or without | 61 | * Redistribution and use in source and binary forms, with or without |
| 62 | * modification, are permitted provided that the following conditions | 62 | * modification, are permitted provided that the following conditions |
| @@ -116,7 +116,7 @@ | |||
| 116 | #include <string.h> | 116 | #include <string.h> |
| 117 | #include <errno.h> | 117 | #include <errno.h> |
| 118 | 118 | ||
| 119 | #include "openssl/e_os.h" | 119 | #include <e_os.h> |
| 120 | 120 | ||
| 121 | #include <openssl/buffer.h> | 121 | #include <openssl/buffer.h> |
| 122 | #include <openssl/comp.h> | 122 | #include <openssl/comp.h> |
| @@ -127,6 +127,12 @@ | |||
| 127 | #include <openssl/x509.h> | 127 | #include <openssl/x509.h> |
| 128 | #include <openssl/err.h> | 128 | #include <openssl/err.h> |
| 129 | #include <openssl/ssl.h> | 129 | #include <openssl/ssl.h> |
| 130 | #include <openssl/symhacks.h> | ||
| 131 | |||
| 132 | #ifdef OPENSSL_BUILD_SHLIBSSL | ||
| 133 | # undef OPENSSL_EXTERN | ||
| 134 | # define OPENSSL_EXTERN OPENSSL_EXPORT | ||
| 135 | #endif | ||
| 130 | 136 | ||
| 131 | #define PKCS1_CHECK | 137 | #define PKCS1_CHECK |
| 132 | 138 | ||
| @@ -221,48 +227,52 @@ | |||
| 221 | * that the different entities within are mutually exclusive: | 227 | * that the different entities within are mutually exclusive: |
| 222 | * ONLY ONE BIT PER MASK CAN BE SET AT A TIME. | 228 | * ONLY ONE BIT PER MASK CAN BE SET AT A TIME. |
| 223 | */ | 229 | */ |
| 224 | #define SSL_MKEY_MASK 0x0000001FL | 230 | #define SSL_MKEY_MASK 0x0000003FL |
| 225 | #define SSL_kRSA 0x00000001L /* RSA key exchange */ | 231 | #define SSL_kRSA 0x00000001L /* RSA key exchange */ |
| 226 | #define SSL_kDHr 0x00000002L /* DH cert RSA CA cert */ | 232 | #define SSL_kDHr 0x00000002L /* DH cert RSA CA cert */ |
| 227 | #define SSL_kDHd 0x00000004L /* DH cert DSA CA cert */ | 233 | #define SSL_kDHd 0x00000004L /* DH cert DSA CA cert */ |
| 228 | #define SSL_kFZA 0x00000008L | 234 | #define SSL_kFZA 0x00000008L |
| 229 | #define SSL_kEDH 0x00000010L /* tmp DH key no DH cert */ | 235 | #define SSL_kEDH 0x00000010L /* tmp DH key no DH cert */ |
| 236 | #define SSL_kKRB5 0x00000020L /* Kerberos5 key exchange */ | ||
| 230 | #define SSL_EDH (SSL_kEDH|(SSL_AUTH_MASK^SSL_aNULL)) | 237 | #define SSL_EDH (SSL_kEDH|(SSL_AUTH_MASK^SSL_aNULL)) |
| 231 | 238 | ||
| 232 | #define SSL_AUTH_MASK 0x000003e0L | 239 | #define SSL_AUTH_MASK 0x00000FC0L |
| 233 | #define SSL_aRSA 0x00000020L /* Authenticate with RSA */ | 240 | #define SSL_aRSA 0x00000040L /* Authenticate with RSA */ |
| 234 | #define SSL_aDSS 0x00000040L /* Authenticate with DSS */ | 241 | #define SSL_aDSS 0x00000080L /* Authenticate with DSS */ |
| 235 | #define SSL_DSS SSL_aDSS | 242 | #define SSL_DSS SSL_aDSS |
| 236 | #define SSL_aFZA 0x00000080L | 243 | #define SSL_aFZA 0x00000100L |
| 237 | #define SSL_aNULL 0x00000100L /* no Authenticate, ADH */ | 244 | #define SSL_aNULL 0x00000200L /* no Authenticate, ADH */ |
| 238 | #define SSL_aDH 0x00000200L /* no Authenticate, ADH */ | 245 | #define SSL_aDH 0x00000400L /* no Authenticate, ADH */ |
| 246 | #define SSL_aKRB5 0x00000800L /* Authenticate with KRB5 */ | ||
| 239 | 247 | ||
| 240 | #define SSL_NULL (SSL_eNULL) | 248 | #define SSL_NULL (SSL_eNULL) |
| 241 | #define SSL_ADH (SSL_kEDH|SSL_aNULL) | 249 | #define SSL_ADH (SSL_kEDH|SSL_aNULL) |
| 242 | #define SSL_RSA (SSL_kRSA|SSL_aRSA) | 250 | #define SSL_RSA (SSL_kRSA|SSL_aRSA) |
| 243 | #define SSL_DH (SSL_kDHr|SSL_kDHd|SSL_kEDH) | 251 | #define SSL_DH (SSL_kDHr|SSL_kDHd|SSL_kEDH) |
| 244 | #define SSL_FZA (SSL_aFZA|SSL_kFZA|SSL_eFZA) | 252 | #define SSL_FZA (SSL_aFZA|SSL_kFZA|SSL_eFZA) |
| 245 | 253 | #define SSL_KRB5 (SSL_kKRB5|SSL_aKRB5) | |
| 246 | #define SSL_ENC_MASK 0x0001Fc00L | 254 | |
| 247 | #define SSL_DES 0x00000400L | 255 | #define SSL_ENC_MASK 0x0087F000L |
| 248 | #define SSL_3DES 0x00000800L | 256 | #define SSL_DES 0x00001000L |
| 249 | #define SSL_RC4 0x00001000L | 257 | #define SSL_3DES 0x00002000L |
| 250 | #define SSL_RC2 0x00002000L | 258 | #define SSL_RC4 0x00004000L |
| 251 | #define SSL_IDEA 0x00004000L | 259 | #define SSL_RC2 0x00008000L |
| 252 | #define SSL_eFZA 0x00008000L | 260 | #define SSL_IDEA 0x00010000L |
| 253 | #define SSL_eNULL 0x00010000L | 261 | #define SSL_eFZA 0x00020000L |
| 254 | 262 | #define SSL_eNULL 0x00040000L | |
| 255 | #define SSL_MAC_MASK 0x00060000L | 263 | #define SSL_AES 0x00800000L |
| 256 | #define SSL_MD5 0x00020000L | 264 | |
| 257 | #define SSL_SHA1 0x00040000L | 265 | #define SSL_MAC_MASK 0x00180000L |
| 266 | #define SSL_MD5 0x00080000L | ||
| 267 | #define SSL_SHA1 0x00100000L | ||
| 258 | #define SSL_SHA (SSL_SHA1) | 268 | #define SSL_SHA (SSL_SHA1) |
| 259 | 269 | ||
| 260 | #define SSL_SSL_MASK 0x00180000L | 270 | #define SSL_SSL_MASK 0x00600000L |
| 261 | #define SSL_SSLV2 0x00080000L | 271 | #define SSL_SSLV2 0x00200000L |
| 262 | #define SSL_SSLV3 0x00100000L | 272 | #define SSL_SSLV3 0x00400000L |
| 263 | #define SSL_TLSV1 SSL_SSLV3 /* for now */ | 273 | #define SSL_TLSV1 SSL_SSLV3 /* for now */ |
| 264 | 274 | ||
| 265 | /* we have used 001fffff - 11 bits left to go */ | 275 | /* we have used 007fffff - 9 bits left to go */ |
| 266 | 276 | ||
| 267 | /* | 277 | /* |
| 268 | * Export and cipher strength information. For each cipher we have to decide | 278 | * Export and cipher strength information. For each cipher we have to decide |
| @@ -367,11 +377,11 @@ typedef struct cert_st | |||
| 367 | int valid; | 377 | int valid; |
| 368 | unsigned long mask; | 378 | unsigned long mask; |
| 369 | unsigned long export_mask; | 379 | unsigned long export_mask; |
| 370 | #ifndef NO_RSA | 380 | #ifndef OPENSSL_NO_RSA |
| 371 | RSA *rsa_tmp; | 381 | RSA *rsa_tmp; |
| 372 | RSA *(*rsa_tmp_cb)(SSL *ssl,int is_export,int keysize); | 382 | RSA *(*rsa_tmp_cb)(SSL *ssl,int is_export,int keysize); |
| 373 | #endif | 383 | #endif |
| 374 | #ifndef NO_DH | 384 | #ifndef OPENSSL_NO_DH |
| 375 | DH *dh_tmp; | 385 | DH *dh_tmp; |
| 376 | DH *(*dh_tmp_cb)(SSL *ssl,int is_export,int keysize); | 386 | DH *(*dh_tmp_cb)(SSL *ssl,int is_export,int keysize); |
| 377 | #endif | 387 | #endif |
| @@ -394,10 +404,10 @@ typedef struct sess_cert_st | |||
| 394 | /* Obviously we don't have the private keys of these, | 404 | /* Obviously we don't have the private keys of these, |
| 395 | * so maybe we shouldn't even use the CERT_PKEY type here. */ | 405 | * so maybe we shouldn't even use the CERT_PKEY type here. */ |
| 396 | 406 | ||
| 397 | #ifndef NO_RSA | 407 | #ifndef OPENSSL_NO_RSA |
| 398 | RSA *peer_rsa_tmp; /* not used for SSL 2 */ | 408 | RSA *peer_rsa_tmp; /* not used for SSL 2 */ |
| 399 | #endif | 409 | #endif |
| 400 | #ifndef NO_DH | 410 | #ifndef OPENSSL_NO_DH |
| 401 | DH *peer_dh_tmp; /* not used for SSL 2 */ | 411 | DH *peer_dh_tmp; /* not used for SSL 2 */ |
| 402 | #endif | 412 | #endif |
| 403 | 413 | ||
| @@ -454,9 +464,9 @@ OPENSSL_EXTERN SSL3_ENC_METHOD ssl3_undef_enc_method; | |||
| 454 | OPENSSL_EXTERN SSL_CIPHER ssl2_ciphers[]; | 464 | OPENSSL_EXTERN SSL_CIPHER ssl2_ciphers[]; |
| 455 | OPENSSL_EXTERN SSL_CIPHER ssl3_ciphers[]; | 465 | OPENSSL_EXTERN SSL_CIPHER ssl3_ciphers[]; |
| 456 | 466 | ||
| 457 | #ifdef VMS | 467 | #ifdef OPENSSL_SYS_VMS |
| 458 | #undef SSL_COMP_get_compression_methods | 468 | #undef SSL_COMP_get_compression_methods |
| 459 | #define SSL_COMP_get_compression_methods SSL_COMP_get_compress_methods | 469 | #define SSL_COMP_get_compression_methods SSL_COMP_get_compress_methods |
| 460 | #endif | 470 | #endif |
| 461 | 471 | ||
| 462 | 472 | ||
| @@ -520,8 +530,8 @@ int ssl2_peek(SSL *s, void *buf, int len); | |||
| 520 | int ssl2_write(SSL *s, const void *buf, int len); | 530 | int ssl2_write(SSL *s, const void *buf, int len); |
| 521 | int ssl2_shutdown(SSL *s); | 531 | int ssl2_shutdown(SSL *s); |
| 522 | void ssl2_clear(SSL *s); | 532 | void ssl2_clear(SSL *s); |
| 523 | long ssl2_ctrl(SSL *s,int cmd, long larg, char *parg); | 533 | long ssl2_ctrl(SSL *s,int cmd, long larg, void *parg); |
| 524 | long ssl2_ctx_ctrl(SSL_CTX *s,int cmd, long larg, char *parg); | 534 | long ssl2_ctx_ctrl(SSL_CTX *s,int cmd, long larg, void *parg); |
| 525 | long ssl2_callback_ctrl(SSL *s,int cmd, void (*fp)()); | 535 | long ssl2_callback_ctrl(SSL *s,int cmd, void (*fp)()); |
| 526 | long ssl2_ctx_callback_ctrl(SSL_CTX *s,int cmd, void (*fp)()); | 536 | long ssl2_ctx_callback_ctrl(SSL_CTX *s,int cmd, void (*fp)()); |
| 527 | int ssl2_pending(SSL *s); | 537 | int ssl2_pending(SSL *s); |
| @@ -556,8 +566,8 @@ void ssl3_finish_mac(SSL *s, const unsigned char *buf, int len); | |||
| 556 | int ssl3_enc(SSL *s, int send_data); | 566 | int ssl3_enc(SSL *s, int send_data); |
| 557 | int ssl3_mac(SSL *ssl, unsigned char *md, int send_data); | 567 | int ssl3_mac(SSL *ssl, unsigned char *md, int send_data); |
| 558 | unsigned long ssl3_output_cert_chain(SSL *s, X509 *x); | 568 | unsigned long ssl3_output_cert_chain(SSL *s, X509 *x); |
| 559 | SSL_CIPHER *ssl3_choose_cipher(SSL *ssl,STACK_OF(SSL_CIPHER) *have, | 569 | SSL_CIPHER *ssl3_choose_cipher(SSL *ssl,STACK_OF(SSL_CIPHER) *clnt, |
| 560 | STACK_OF(SSL_CIPHER) *pref); | 570 | STACK_OF(SSL_CIPHER) *srvr); |
| 561 | int ssl3_setup_buffers(SSL *s); | 571 | int ssl3_setup_buffers(SSL *s); |
| 562 | int ssl3_new(SSL *s); | 572 | int ssl3_new(SSL *s); |
| 563 | void ssl3_free(SSL *s); | 573 | void ssl3_free(SSL *s); |
| @@ -568,8 +578,8 @@ int ssl3_peek(SSL *s, void *buf, int len); | |||
| 568 | int ssl3_write(SSL *s, const void *buf, int len); | 578 | int ssl3_write(SSL *s, const void *buf, int len); |
| 569 | int ssl3_shutdown(SSL *s); | 579 | int ssl3_shutdown(SSL *s); |
| 570 | void ssl3_clear(SSL *s); | 580 | void ssl3_clear(SSL *s); |
| 571 | long ssl3_ctrl(SSL *s,int cmd, long larg, char *parg); | 581 | long ssl3_ctrl(SSL *s,int cmd, long larg, void *parg); |
| 572 | long ssl3_ctx_ctrl(SSL_CTX *s,int cmd, long larg, char *parg); | 582 | long ssl3_ctx_ctrl(SSL_CTX *s,int cmd, long larg, void *parg); |
| 573 | long ssl3_callback_ctrl(SSL *s,int cmd, void (*fp)()); | 583 | long ssl3_callback_ctrl(SSL *s,int cmd, void (*fp)()); |
| 574 | long ssl3_ctx_callback_ctrl(SSL_CTX *s,int cmd, void (*fp)()); | 584 | long ssl3_ctx_callback_ctrl(SSL_CTX *s,int cmd, void (*fp)()); |
| 575 | int ssl3_pending(SSL *s); | 585 | int ssl3_pending(SSL *s); |
| @@ -582,7 +592,7 @@ int ssl23_write_bytes(SSL *s); | |||
| 582 | int tls1_new(SSL *s); | 592 | int tls1_new(SSL *s); |
| 583 | void tls1_free(SSL *s); | 593 | void tls1_free(SSL *s); |
| 584 | void tls1_clear(SSL *s); | 594 | void tls1_clear(SSL *s); |
| 585 | long tls1_ctrl(SSL *s,int cmd, long larg, char *parg); | 595 | long tls1_ctrl(SSL *s,int cmd, long larg, void *parg); |
| 586 | long tls1_callback_ctrl(SSL *s,int cmd, void (*fp)()); | 596 | long tls1_callback_ctrl(SSL *s,int cmd, void (*fp)()); |
| 587 | SSL_METHOD *tlsv1_base_method(void ); | 597 | SSL_METHOD *tlsv1_base_method(void ); |
| 588 | 598 | ||
