From: Andy Polyakov Date: Mon, 24 Feb 2014 14:16:56 +0000 (+0100) Subject: x509/by_dir.c: fix run-away pointer (and potential SEGV) X-Git-Tag: OpenSSL_1_0_1g~27 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c4b16ddc8f3429408f0244f6e66e9a4237f4da59;p=openssl x509/by_dir.c: fix run-away pointer (and potential SEGV) when adding duplicates in add_cert_dir. PR: 3261 Reported by: Marian Done (cherry picked from commit 758954e0d8232d370ed72b7f86640e40443e1778) --- diff --git a/crypto/x509/by_dir.c b/crypto/x509/by_dir.c index 27ca5150c1..c6602dae4f 100644 --- a/crypto/x509/by_dir.c +++ b/crypto/x509/by_dir.c @@ -218,7 +218,7 @@ static int add_cert_dir(BY_DIR *ctx, const char *dir, int type) s=dir; p=s; - for (;;p++) + do { if ((*p == LIST_SEPARATOR_CHAR) || (*p == '\0')) { @@ -264,9 +264,7 @@ static int add_cert_dir(BY_DIR *ctx, const char *dir, int type) return 0; } } - if (*p == '\0') - break; - } + } while (*p++ != '\0'); return 1; }