ssl3.h (68651) | ssl3.h (100928) |
---|---|
1/* ssl/ssl3.h */ 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 3 * All rights reserved. 4 * 5 * This package is an SSL implementation written 6 * by Eric Young (eay@cryptsoft.com). 7 * The implementation was written so as to conform with Netscapes SSL. 8 * --- 41 unchanged lines hidden (view full) --- 50 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 51 * SUCH DAMAGE. 52 * 53 * The licence and distribution terms for any publically available version or 54 * derivative of this code cannot be changed. i.e. this code cannot simply be 55 * copied and put under another distribution licence 56 * [including the GNU Public Licence.] 57 */ | 1/* ssl/ssl3.h */ 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 3 * All rights reserved. 4 * 5 * This package is an SSL implementation written 6 * by Eric Young (eay@cryptsoft.com). 7 * The implementation was written so as to conform with Netscapes SSL. 8 * --- 41 unchanged lines hidden (view full) --- 50 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 51 * SUCH DAMAGE. 52 * 53 * The licence and distribution terms for any publically available version or 54 * derivative of this code cannot be changed. i.e. this code cannot simply be 55 * copied and put under another distribution licence 56 * [including the GNU Public Licence.] 57 */ |
58/* ==================================================================== 59 * Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. 60 * 61 * Redistribution and use in source and binary forms, with or without 62 * modification, are permitted provided that the following conditions 63 * are met: 64 * 65 * 1. Redistributions of source code must retain the above copyright 66 * notice, this list of conditions and the following disclaimer. 67 * 68 * 2. Redistributions in binary form must reproduce the above copyright 69 * notice, this list of conditions and the following disclaimer in 70 * the documentation and/or other materials provided with the 71 * distribution. 72 * 73 * 3. All advertising materials mentioning features or use of this 74 * software must display the following acknowledgment: 75 * "This product includes software developed by the OpenSSL Project 76 * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" 77 * 78 * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to 79 * endorse or promote products derived from this software without 80 * prior written permission. For written permission, please contact 81 * openssl-core@openssl.org. 82 * 83 * 5. Products derived from this software may not be called "OpenSSL" 84 * nor may "OpenSSL" appear in their names without prior written 85 * permission of the OpenSSL Project. 86 * 87 * 6. Redistributions of any form whatsoever must retain the following 88 * acknowledgment: 89 * "This product includes software developed by the OpenSSL Project 90 * for use in the OpenSSL Toolkit (http://www.openssl.org/)" 91 * 92 * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY 93 * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 94 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 95 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR 96 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 97 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 98 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 99 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 100 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 101 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 102 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 103 * OF THE POSSIBILITY OF SUCH DAMAGE. 104 * ==================================================================== 105 * 106 * This product includes cryptographic software written by Eric Young 107 * (eay@cryptsoft.com). This product includes software written by Tim 108 * Hudson (tjh@cryptsoft.com). 109 * 110 */ |
|
58 59#ifndef HEADER_SSL3_H 60#define HEADER_SSL3_H 61 62#ifndef NO_COMP 63#include <openssl/comp.h> 64#endif 65#include <openssl/buffer.h> --- 130 unchanged lines hidden (view full) --- 196/*r */ unsigned int off; /* read/write offset into 'buf' */ 197/*rw*/ unsigned char *data; /* pointer to the record data */ 198/*rw*/ unsigned char *input; /* where the decode bytes are */ 199/*r */ unsigned char *comp; /* only used with decompression - malloc()ed */ 200 } SSL3_RECORD; 201 202typedef struct ssl3_buffer_st 203 { | 111 112#ifndef HEADER_SSL3_H 113#define HEADER_SSL3_H 114 115#ifndef NO_COMP 116#include <openssl/comp.h> 117#endif 118#include <openssl/buffer.h> --- 130 unchanged lines hidden (view full) --- 249/*r */ unsigned int off; /* read/write offset into 'buf' */ 250/*rw*/ unsigned char *data; /* pointer to the record data */ 251/*rw*/ unsigned char *input; /* where the decode bytes are */ 252/*r */ unsigned char *comp; /* only used with decompression - malloc()ed */ 253 } SSL3_RECORD; 254 255typedef struct ssl3_buffer_st 256 { |
204 unsigned char *buf; /* SSL3_RT_MAX_PACKET_SIZE bytes (more if 205 * SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER is set) */ 206 int offset; /* where to 'copy from' */ 207 int left; /* how many bytes left */ | 257 unsigned char *buf; /* at least SSL3_RT_MAX_PACKET_SIZE bytes, 258 * see ssl3_setup_buffers() */ 259#if 0 /* put directly into SSL3_STATE for best possible binary compatibility within 0.9.6 series */ 260 size_t len; /* buffer size */ 261#endif 262 int offset; /* where to 'copy from' */ 263 int left; /* how many bytes left */ |
208 } SSL3_BUFFER; 209 210#define SSL3_CT_RSA_SIGN 1 211#define SSL3_CT_DSS_SIGN 2 212#define SSL3_CT_RSA_FIXED_DH 3 213#define SSL3_CT_DSS_FIXED_DH 4 214#define SSL3_CT_RSA_EPHEMERAL_DH 5 215#define SSL3_CT_DSS_EPHEMERAL_DH 6 --- 100 unchanged lines hidden (view full) --- 316#ifndef NO_COMP 317 const SSL_COMP *new_compression; 318#else 319 char *new_compression; 320#endif 321 int cert_request; 322 } tmp; 323 | 264 } SSL3_BUFFER; 265 266#define SSL3_CT_RSA_SIGN 1 267#define SSL3_CT_DSS_SIGN 2 268#define SSL3_CT_RSA_FIXED_DH 3 269#define SSL3_CT_DSS_FIXED_DH 4 270#define SSL3_CT_RSA_EPHEMERAL_DH 5 271#define SSL3_CT_DSS_EPHEMERAL_DH 6 --- 100 unchanged lines hidden (view full) --- 372#ifndef NO_COMP 373 const SSL_COMP *new_compression; 374#else 375 char *new_compression; 376#endif 377 int cert_request; 378 } tmp; 379 |
380 /* flags for countermeasure against known-IV weakness */ 381 int need_empty_fragments; 382 int empty_fragment_done; 383 384 size_t rbuf_len; /* substitute for rbuf.len */ 385 size_t wbuf_len; /* substitute for wbuf.len */ 386 |
|
324 } SSL3_STATE; 325 326/* SSLv3 */ 327/*client */ 328/* extra state */ 329#define SSL3_ST_CW_FLUSH (0x100|SSL_ST_CONNECT) 330/* write to server */ 331#define SSL3_ST_CW_CLNT_HELLO_A (0x110|SSL_ST_CONNECT) --- 98 unchanged lines hidden --- | 387 } SSL3_STATE; 388 389/* SSLv3 */ 390/*client */ 391/* extra state */ 392#define SSL3_ST_CW_FLUSH (0x100|SSL_ST_CONNECT) 393/* write to server */ 394#define SSL3_ST_CW_CLNT_HELLO_A (0x110|SSL_ST_CONNECT) --- 98 unchanged lines hidden --- |