diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c index d97082e241..4531f46556 100644 --- a/ssl/s3_lib.c +++ b/ssl/s3_lib.c @@ -3908,9 +3908,10 @@ long ssl3_ctx_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg) break; case SSL_CTRL_GET_EXTRA_CHAIN_CERTS: - *(STACK_OF(X509) **)parg = ctx->extra_certs; - if (parg == NULL && larg == 0) + if (ctx->extra_certs == NULL && larg == 0) *(STACK_OF(X509) **)parg = ctx->cert->key->chain; + else + *(STACK_OF(X509) **)parg = ctx->extra_certs; break; case SSL_CTRL_CLEAR_EXTRA_CHAIN_CERTS: