diff options
author | Andy Polyakov <appro@openssl.org> | 2014-02-24 15:16:56 +0100 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2014-02-24 15:16:56 +0100 |
commit | 758954e0d8232d370ed72b7f86640e40443e1778 (patch) | |
tree | d46eaa29056e824d7dcb16662f2de0f635093cd7 /crypto/x509 | |
parent | d099f0ed6ca518052bb167b31e999e1e7734eebf (diff) | |
download | openssl-758954e0d8232d370ed72b7f86640e40443e1778.tar.gz |
x509/by_dir.c: fix run-away pointer (and potential SEGV)
when adding duplicates in add_cert_dir.
PR: 3261
Reported by: Marian Done
Diffstat (limited to 'crypto/x509')
-rw-r--r-- | crypto/x509/by_dir.c | 6 |
1 files changed, 2 insertions, 4 deletions
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; } |