summaryrefslogtreecommitdiff
path: root/lib/libc
diff options
context:
space:
mode:
authorenami <enami@NetBSD.org>2001-12-08 00:30:59 +0000
committerenami <enami@NetBSD.org>2001-12-08 00:30:59 +0000
commit689d72c0bad87e14533dbb038e257ac2eedab75c (patch)
tree1b6acf991f1bfefd3dd784caec2487ce7705bce4 /lib/libc
parent61551fba001584afe8c6b80df114b82379aada8d (diff)
Use memcpy instead of memmove since no overlaps here (copy from somewhere
outside of the funciton to our stack).
Diffstat (limited to 'lib/libc')
-rw-r--r--lib/libc/gen/execvp.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/libc/gen/execvp.c b/lib/libc/gen/execvp.c
index c90df375ef4..a057d79362b 100644
--- a/lib/libc/gen/execvp.c
+++ b/lib/libc/gen/execvp.c
@@ -1,4 +1,4 @@
-/* $NetBSD: execvp.c,v 1.19 2001/09/19 01:14:51 enami Exp $ */
+/* $NetBSD: execvp.c,v 1.20 2001/12/08 00:30:59 enami Exp $ */
/*-
* Copyright (c) 1991, 1993
@@ -38,7 +38,7 @@
#if 0
static char sccsid[] = "@(#)exec.c 8.1 (Berkeley) 6/4/93";
#else
-__RCSID("$NetBSD: execvp.c,v 1.19 2001/09/19 01:14:51 enami Exp $");
+__RCSID("$NetBSD: execvp.c,v 1.20 2001/12/08 00:30:59 enami Exp $");
#endif
#endif /* LIBC_SCCS and not lint */
@@ -118,9 +118,9 @@ execvp(const char *name, char * const *argv)
(void)write(STDERR_FILENO, ": path too long\n", 16);
continue;
}
- memmove(buf, p, lp);
+ memcpy(buf, p, lp);
buf[lp] = '/';
- memmove(buf + lp + 1, name, ln);
+ memcpy(buf + lp + 1, name, ln);
buf[lp + ln + 1] = '\0';
retry: rwlock_rdlock(&__environ_lock);
@@ -139,7 +139,7 @@ retry: rwlock_rdlock(&__environ_lock);
goto done;
memp[0] = _PATH_BSHELL;
memp[1] = bp;
- (void)memmove(&memp[2], &argv[1], cnt * sizeof(*memp));
+ (void)memcpy(&memp[2], &argv[1], cnt * sizeof(*memp));
rwlock_rdlock(&__environ_lock);
(void)execve(_PATH_BSHELL, (char * const *)memp,
environ);