From 591df63d95caba9db2372028caaba50b9d296e33 Mon Sep 17 00:00:00 2001 From: bcook <> Date: Sun, 19 Jul 2015 00:56:48 +0000 Subject: abort when ENGINE_remove fails, fix Coverity 21656 ok doug@, beck@ --- src/lib/libcrypto/engine/eng_list.c | 7 ++----- src/lib/libssl/src/crypto/engine/eng_list.c | 7 ++----- 2 files changed, 4 insertions(+), 10 deletions(-) (limited to 'src') diff --git a/src/lib/libcrypto/engine/eng_list.c b/src/lib/libcrypto/engine/eng_list.c index 30f09adc73..fc1d16b183 100644 --- a/src/lib/libcrypto/engine/eng_list.c +++ b/src/lib/libcrypto/engine/eng_list.c @@ -1,4 +1,4 @@ -/* $OpenBSD: eng_list.c,v 1.20 2015/06/19 06:32:43 bcook Exp $ */ +/* $OpenBSD: eng_list.c,v 1.21 2015/07/19 00:56:48 bcook Exp $ */ /* Written by Geoff Thorpe (geoff@geoffthorpe.net) for the OpenSSL * project 2000. */ @@ -92,11 +92,8 @@ engine_list_cleanup(void) { ENGINE *iterator = engine_list_head; - while (iterator != NULL) { - ENGINE_remove(iterator); + while (iterator != NULL && ENGINE_remove(iterator)) iterator = engine_list_head; - } - return; } /* These static functions starting with a lower case "engine_" always diff --git a/src/lib/libssl/src/crypto/engine/eng_list.c b/src/lib/libssl/src/crypto/engine/eng_list.c index 30f09adc73..fc1d16b183 100644 --- a/src/lib/libssl/src/crypto/engine/eng_list.c +++ b/src/lib/libssl/src/crypto/engine/eng_list.c @@ -1,4 +1,4 @@ -/* $OpenBSD: eng_list.c,v 1.20 2015/06/19 06:32:43 bcook Exp $ */ +/* $OpenBSD: eng_list.c,v 1.21 2015/07/19 00:56:48 bcook Exp $ */ /* Written by Geoff Thorpe (geoff@geoffthorpe.net) for the OpenSSL * project 2000. */ @@ -92,11 +92,8 @@ engine_list_cleanup(void) { ENGINE *iterator = engine_list_head; - while (iterator != NULL) { - ENGINE_remove(iterator); + while (iterator != NULL && ENGINE_remove(iterator)) iterator = engine_list_head; - } - return; } /* These static functions starting with a lower case "engine_" always -- cgit v1.2.3-55-g6feb