t1_enc.c (59191) | t1_enc.c (68651) |
---|---|
1/* ssl/t1_enc.c */ 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 * --- 164 unchanged lines hidden (view full) --- 173 m=s->s3->tmp.new_hash; 174 comp=s->s3->tmp.new_compression; 175 key_block=s->s3->tmp.key_block; 176 177 if (which & SSL3_CC_READ) 178 { 179 if ((s->enc_read_ctx == NULL) && 180 ((s->enc_read_ctx=(EVP_CIPHER_CTX *) | 1/* ssl/t1_enc.c */ 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 * --- 164 unchanged lines hidden (view full) --- 173 m=s->s3->tmp.new_hash; 174 comp=s->s3->tmp.new_compression; 175 key_block=s->s3->tmp.key_block; 176 177 if (which & SSL3_CC_READ) 178 { 179 if ((s->enc_read_ctx == NULL) && 180 ((s->enc_read_ctx=(EVP_CIPHER_CTX *) |
181 Malloc(sizeof(EVP_CIPHER_CTX))) == NULL)) | 181 OPENSSL_malloc(sizeof(EVP_CIPHER_CTX))) == NULL)) |
182 goto err; 183 dd= s->enc_read_ctx; 184 s->read_hash=m; 185 if (s->expand != NULL) 186 { 187 COMP_CTX_free(s->expand); 188 s->expand=NULL; 189 } 190 if (comp != NULL) 191 { 192 s->expand=COMP_CTX_new(comp->method); 193 if (s->expand == NULL) 194 { 195 SSLerr(SSL_F_TLS1_CHANGE_CIPHER_STATE,SSL_R_COMPRESSION_LIBRARY_ERROR); 196 goto err2; 197 } 198 if (s->s3->rrec.comp == NULL) 199 s->s3->rrec.comp=(unsigned char *) | 182 goto err; 183 dd= s->enc_read_ctx; 184 s->read_hash=m; 185 if (s->expand != NULL) 186 { 187 COMP_CTX_free(s->expand); 188 s->expand=NULL; 189 } 190 if (comp != NULL) 191 { 192 s->expand=COMP_CTX_new(comp->method); 193 if (s->expand == NULL) 194 { 195 SSLerr(SSL_F_TLS1_CHANGE_CIPHER_STATE,SSL_R_COMPRESSION_LIBRARY_ERROR); 196 goto err2; 197 } 198 if (s->s3->rrec.comp == NULL) 199 s->s3->rrec.comp=(unsigned char *) |
200 Malloc(SSL3_RT_MAX_ENCRYPTED_LENGTH); | 200 OPENSSL_malloc(SSL3_RT_MAX_ENCRYPTED_LENGTH); |
201 if (s->s3->rrec.comp == NULL) 202 goto err; 203 } 204 memset(&(s->s3->read_sequence[0]),0,8); 205 mac_secret= &(s->s3->read_mac_secret[0]); 206 } 207 else 208 { 209 if ((s->enc_write_ctx == NULL) && 210 ((s->enc_write_ctx=(EVP_CIPHER_CTX *) | 201 if (s->s3->rrec.comp == NULL) 202 goto err; 203 } 204 memset(&(s->s3->read_sequence[0]),0,8); 205 mac_secret= &(s->s3->read_mac_secret[0]); 206 } 207 else 208 { 209 if ((s->enc_write_ctx == NULL) && 210 ((s->enc_write_ctx=(EVP_CIPHER_CTX *) |
211 Malloc(sizeof(EVP_CIPHER_CTX))) == NULL)) | 211 OPENSSL_malloc(sizeof(EVP_CIPHER_CTX))) == NULL)) |
212 goto err; 213 dd= s->enc_write_ctx; 214 s->write_hash=m; 215 if (s->compress != NULL) 216 { 217 COMP_CTX_free(s->compress); 218 s->compress=NULL; 219 } --- 130 unchanged lines hidden (view full) --- 350 s->s3->tmp.new_sym_enc=c; 351 s->s3->tmp.new_hash=hash; 352 353 num=EVP_CIPHER_key_length(c)+EVP_MD_size(hash)+EVP_CIPHER_iv_length(c); 354 num*=2; 355 356 ssl3_cleanup_key_block(s); 357 | 212 goto err; 213 dd= s->enc_write_ctx; 214 s->write_hash=m; 215 if (s->compress != NULL) 216 { 217 COMP_CTX_free(s->compress); 218 s->compress=NULL; 219 } --- 130 unchanged lines hidden (view full) --- 350 s->s3->tmp.new_sym_enc=c; 351 s->s3->tmp.new_hash=hash; 352 353 num=EVP_CIPHER_key_length(c)+EVP_MD_size(hash)+EVP_CIPHER_iv_length(c); 354 num*=2; 355 356 ssl3_cleanup_key_block(s); 357 |
358 if ((p1=(unsigned char *)Malloc(num)) == NULL) | 358 if ((p1=(unsigned char *)OPENSSL_malloc(num)) == NULL) |
359 goto err; | 359 goto err; |
360 if ((p2=(unsigned char *)Malloc(num)) == NULL) | 360 if ((p2=(unsigned char *)OPENSSL_malloc(num)) == NULL) |
361 goto err; 362 363 s->s3->tmp.key_block_length=num; 364 s->s3->tmp.key_block=p1; 365 366 367#ifdef TLS_DEBUG 368printf("client random\n"); 369{ int z; for (z=0; z<SSL3_RANDOM_SIZE; z++) printf("%02X%c",s->s3->client_random[z],((z+1)%16)?' ':'\n'); } 370printf("server random\n"); 371{ int z; for (z=0; z<SSL3_RANDOM_SIZE; z++) printf("%02X%c",s->s3->server_random[z],((z+1)%16)?' ':'\n'); } 372printf("pre-master\n"); 373{ int z; for (z=0; z<s->session->master_key_length; z++) printf("%02X%c",s->session->master_key[z],((z+1)%16)?' ':'\n'); } 374#endif 375 tls1_generate_key_block(s,p1,p2,num); 376 memset(p2,0,num); | 361 goto err; 362 363 s->s3->tmp.key_block_length=num; 364 s->s3->tmp.key_block=p1; 365 366 367#ifdef TLS_DEBUG 368printf("client random\n"); 369{ int z; for (z=0; z<SSL3_RANDOM_SIZE; z++) printf("%02X%c",s->s3->client_random[z],((z+1)%16)?' ':'\n'); } 370printf("server random\n"); 371{ int z; for (z=0; z<SSL3_RANDOM_SIZE; z++) printf("%02X%c",s->s3->server_random[z],((z+1)%16)?' ':'\n'); } 372printf("pre-master\n"); 373{ int z; for (z=0; z<s->session->master_key_length; z++) printf("%02X%c",s->session->master_key[z],((z+1)%16)?' ':'\n'); } 374#endif 375 tls1_generate_key_block(s,p1,p2,num); 376 memset(p2,0,num); |
377 Free(p2); | 377 OPENSSL_free(p2); |
378#ifdef TLS_DEBUG 379printf("\nkey block\n"); 380{ int z; for (z=0; z<num; z++) printf("%02X%c",p1[z],((z+1)%16)?' ':'\n'); } 381#endif 382 383 return(1); 384err: 385 SSLerr(SSL_F_TLS1_SETUP_KEY_BLOCK,ERR_R_MALLOC_FAILURE); --- 248 unchanged lines hidden --- | 378#ifdef TLS_DEBUG 379printf("\nkey block\n"); 380{ int z; for (z=0; z<num; z++) printf("%02X%c",p1[z],((z+1)%16)?' ':'\n'); } 381#endif 382 383 return(1); 384err: 385 SSLerr(SSL_F_TLS1_SETUP_KEY_BLOCK,ERR_R_MALLOC_FAILURE); --- 248 unchanged lines hidden --- |