summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/engine/eng_list.c
diff options
context:
space:
mode:
authorderaadt <>2014-06-23 22:19:02 +0000
committerderaadt <>2014-06-23 22:19:02 +0000
commit11ccb5f8aefdd6b8279d0ac1be8fc3de3e08c12b (patch)
tree0758b2ca73b32d860fcfea38d70af1cafc23acf9 /src/lib/libcrypto/engine/eng_list.c
parentf36fb0683122e796aa66b09a47e611631ede1944 (diff)
downloadopenbsd-11ccb5f8aefdd6b8279d0ac1be8fc3de3e08c12b.tar.gz
openbsd-11ccb5f8aefdd6b8279d0ac1be8fc3de3e08c12b.tar.bz2
openbsd-11ccb5f8aefdd6b8279d0ac1be8fc3de3e08c12b.zip
Since this is a library, place issetugid() before every getenv()
ok miod
Diffstat (limited to 'src/lib/libcrypto/engine/eng_list.c')
-rw-r--r--src/lib/libcrypto/engine/eng_list.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/libcrypto/engine/eng_list.c b/src/lib/libcrypto/engine/eng_list.c
index 053767c646..22e2abb01d 100644
--- a/src/lib/libcrypto/engine/eng_list.c
+++ b/src/lib/libcrypto/engine/eng_list.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: eng_list.c,v 1.10 2014/06/22 12:15:53 jsing Exp $ */ 1/* $OpenBSD: eng_list.c,v 1.11 2014/06/23 22:19:02 deraadt Exp $ */
2/* Written by Geoff Thorpe (geoff@geoffthorpe.net) for the OpenSSL 2/* Written by Geoff Thorpe (geoff@geoffthorpe.net) for the OpenSSL
3 * project 2000. 3 * project 2000.
4 */ 4 */
@@ -385,7 +385,8 @@ ENGINE_by_id(const char *id)
385 return iterator; 385 return iterator;
386 /* Prevent infinite recusrion if we're looking for the dynamic engine. */ 386 /* Prevent infinite recusrion if we're looking for the dynamic engine. */
387 if (strcmp(id, "dynamic")) { 387 if (strcmp(id, "dynamic")) {
388 if ((load_dir = getenv("OPENSSL_ENGINES")) == 0) 388 if (issetugid() == 0 ||
389 (load_dir = getenv("OPENSSL_ENGINES")) == 0)
389 load_dir = ENGINESDIR; 390 load_dir = ENGINESDIR;
390 iterator = ENGINE_by_id("dynamic"); 391 iterator = ENGINE_by_id("dynamic");
391 if (!iterator || 392 if (!iterator ||