summaryrefslogtreecommitdiffstats
path: root/openbsd-compat/bsd-misc.c
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2005-11-02 09:06:50 +1100
committerDarren Tucker <dtucker@zip.com.au>2005-11-02 09:06:50 +1100
commite8121e2215550798df063462c792e31628ab7f59 (patch)
tree6290a31fc7387acf8f9518eb9e03b39f7e7e3b98 /openbsd-compat/bsd-misc.c
parentaa080fd37657ae4c164ba5ebc709f641949f6e19 (diff)
- (dtucker) [openbsd-compat/bsd-misc.c] Bug #1108: fix broken strdup().V_4_2
Reported by olavi at ipunplugged.com and antoine.brodin at laposte.net via FreeBSD.
Diffstat (limited to 'openbsd-compat/bsd-misc.c')
-rw-r--r--openbsd-compat/bsd-misc.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/openbsd-compat/bsd-misc.c b/openbsd-compat/bsd-misc.c
index 6ba9bd98..3d788518 100644
--- a/openbsd-compat/bsd-misc.c
+++ b/openbsd-compat/bsd-misc.c
@@ -18,7 +18,7 @@
#include "includes.h"
#include "xmalloc.h"
-RCSID("$Id: bsd-misc.c,v 1.27 2005/05/27 11:13:41 dtucker Exp $");
+RCSID("$Id: bsd-misc.c,v 1.27.2.1 2005/11/01 22:06:50 dtucker Exp $");
#ifndef HAVE___PROGNAME
char *__progname;
@@ -223,10 +223,7 @@ strdup(const char *str)
len = strlen(str) + 1;
cp = malloc(len);
if (cp != NULL)
- if (strlcpy(cp, str, len) != len) {
- free(cp);
- return NULL;
- }
- return cp;
+ return(memcpy(cp, str, len));
+ return NULL;
}
#endif