Minor compatibility fixes [from HEAD].

PR: 2790
Submitted by: Alexei Khlebnikov
This commit is contained in:
Andy Polyakov 2012-04-16 17:35:48 +00:00
parent 09f17419a6
commit 94c666479d
2 changed files with 15 additions and 15 deletions

View File

@ -521,40 +521,40 @@ void BIO_free_all(BIO *bio)
BIO *BIO_dup_chain(BIO *in) BIO *BIO_dup_chain(BIO *in)
{ {
BIO *ret=NULL,*eoc=NULL,*bio,*new; BIO *ret=NULL,*eoc=NULL,*bio,*new_bio;
for (bio=in; bio != NULL; bio=bio->next_bio) for (bio=in; bio != NULL; bio=bio->next_bio)
{ {
if ((new=BIO_new(bio->method)) == NULL) goto err; if ((new_bio=BIO_new(bio->method)) == NULL) goto err;
new->callback=bio->callback; new_bio->callback=bio->callback;
new->cb_arg=bio->cb_arg; new_bio->cb_arg=bio->cb_arg;
new->init=bio->init; new_bio->init=bio->init;
new->shutdown=bio->shutdown; new_bio->shutdown=bio->shutdown;
new->flags=bio->flags; new_bio->flags=bio->flags;
/* This will let SSL_s_sock() work with stdin/stdout */ /* This will let SSL_s_sock() work with stdin/stdout */
new->num=bio->num; new_bio->num=bio->num;
if (!BIO_dup_state(bio,(char *)new)) if (!BIO_dup_state(bio,(char *)new_bio))
{ {
BIO_free(new); BIO_free(new_bio);
goto err; goto err;
} }
/* copy app data */ /* copy app data */
if (!CRYPTO_dup_ex_data(CRYPTO_EX_INDEX_BIO, &new->ex_data, if (!CRYPTO_dup_ex_data(CRYPTO_EX_INDEX_BIO, &new_bio->ex_data,
&bio->ex_data)) &bio->ex_data))
goto err; goto err;
if (ret == NULL) if (ret == NULL)
{ {
eoc=new; eoc=new_bio;
ret=eoc; ret=eoc;
} }
else else
{ {
BIO_push(eoc,new); BIO_push(eoc,new_bio);
eoc=new; eoc=new_bio;
} }
} }
return(ret); return(ret);

View File

@ -87,7 +87,7 @@ void X509_LOOKUP_free(X509_LOOKUP *ctx)
if (ctx == NULL) return; if (ctx == NULL) return;
if ( (ctx->method != NULL) && if ( (ctx->method != NULL) &&
(ctx->method->free != NULL)) (ctx->method->free != NULL))
ctx->method->free(ctx); (*ctx->method->free)(ctx);
OPENSSL_free(ctx); OPENSSL_free(ctx);
} }