aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2004-07-19 16:36:28 +0000
committerRichard Levitte <levitte@openssl.org>2004-07-19 16:36:28 +0000
commit210a4f78ae78799f7dc8f4b115c3727eb2d24bd8 (patch)
treec7d809227ecc70c1665c0fc700fbc7294fdcb370
parent334ef049492368c7eb032d507e571f41a3fed779 (diff)
downloadopenssl-210a4f78ae78799f7dc8f4b115c3727eb2d24bd8.tar.gz
Imported from LPlib, making sure the entry name (at least on Unix) is
NUL-teminated at all times, and that we don't make unneeded calls to free().
-rw-r--r--crypto/LPdir_unix.c5
-rw-r--r--crypto/LPdir_win.c4
2 files changed, 4 insertions, 5 deletions
diff --git a/crypto/LPdir_unix.c b/crypto/LPdir_unix.c
index 83686e8e78..7298a23ae6 100644
--- a/crypto/LPdir_unix.c
+++ b/crypto/LPdir_unix.c
@@ -1,4 +1,4 @@
-/* $LP: LPlib/source/LPdir_unix.c,v 1.6 2004/06/14 10:08:43 _cvs_levitte Exp $ */
+/* $LP: LPlib/source/LPdir_unix.c,v 1.8 2004/07/19 16:34:39 _cvs_levitte Exp $ */
/*
* Copyright (c) 2004, Richard Levitte <richard@levitte.org>
* All rights reserved.
@@ -79,7 +79,8 @@ const char *LP_find_file(LP_DIR_CTX **ctx, const char *directory)
return 0;
}
- strncpy((*ctx)->entry_name, direntry->d_name, sizeof((*ctx)->entry_name));
+ strncpy((*ctx)->entry_name, direntry->d_name, sizeof((*ctx)->entry_name) - 1);
+ (*ctx)->entry_name[sizeof((*ctx)->entry_name) - 1] = '\0';
return (*ctx)->entry_name;
}
diff --git a/crypto/LPdir_win.c b/crypto/LPdir_win.c
index fdd955fe38..1a2663cf1e 100644
--- a/crypto/LPdir_win.c
+++ b/crypto/LPdir_win.c
@@ -1,4 +1,4 @@
-/* $LP: LPlib/source/LPdir_win.c,v 1.1 2004/06/14 10:07:56 _cvs_levitte Exp $ */
+/* $LP: LPlib/source/LPdir_win.c,v 1.3 2004/07/19 16:34:54 _cvs_levitte Exp $ */
/*
* Copyright (c) 2004, Richard Levitte <richard@levitte.org>
* All rights reserved.
@@ -53,7 +53,6 @@ const char *LP_find_file(LP_DIR_CTX **ctx, const char *directory)
if (*ctx == NULL)
{
errno = ENOMEM;
- free(*ctx);
return 0;
}
memset(*ctx, '\0', sizeof(LP_DIR_CTX));
@@ -68,7 +67,6 @@ const char *LP_find_file(LP_DIR_CTX **ctx, const char *directory)
{
errno = ENOMEM;
free(*ctx);
- free(wdir);
return 0;
}