summaryrefslogtreecommitdiffstats
path: root/sys/compat/linux/linux_util.c
diff options
context:
space:
mode:
authordes <des@FreeBSD.org>2001-10-27 11:15:19 +0000
committerdes <des@FreeBSD.org>2001-10-27 11:15:19 +0000
commitf5a4c275f57e9f019767cbb7315bdf1eb0612c62 (patch)
tree17c20972c13b4a9de6a8d9b1514a15c03f12e59f /sys/compat/linux/linux_util.c
parent6f69985e93c752e175036d79097afa859dfd8465 (diff)
downloadFreeBSD-src-f5a4c275f57e9f019767cbb7315bdf1eb0612c62.zip
FreeBSD-src-f5a4c275f57e9f019767cbb7315bdf1eb0612c62.tar.gz
Eliminate the prefix parameter to linux_emul_find(), which was always
linux_emul_path anyway. Linux_emul_find() has interesting bugs in its prefix handling (which luckily are not currently exploitable); this commit is preliminary to an attempt at cleaning it up. Approved by: marcel
Diffstat (limited to 'sys/compat/linux/linux_util.c')
-rw-r--r--sys/compat/linux/linux_util.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/compat/linux/linux_util.c b/sys/compat/linux/linux_util.c
index 45c85b6..c30d0f4 100644
--- a/sys/compat/linux/linux_util.c
+++ b/sys/compat/linux/linux_util.c
@@ -50,10 +50,9 @@ const char linux_emul_path[] = "/compat/linux";
* be in exists.
*/
int
-linux_emul_find(td, sgp, prefix, path, pbuf, cflag)
+linux_emul_find(td, sgp, path, pbuf, cflag)
struct thread *td;
caddr_t *sgp; /* Pointer to stackgap memory */
- const char *prefix;
char *path;
char **pbuf;
int cflag;
@@ -63,15 +62,16 @@ linux_emul_find(td, sgp, prefix, path, pbuf, cflag)
struct vattr vat;
struct vattr vatroot;
int error;
+ const char *prefix;
char *ptr, *buf, *cp;
size_t sz, len;
buf = (char *) malloc(MAXPATHLEN, M_TEMP, M_WAITOK);
*pbuf = path;
+ prefix = linux_emul_path;
for (ptr = buf; (*ptr = *prefix) != '\0'; ptr++, prefix++)
continue;
-
sz = MAXPATHLEN - (ptr - buf);
/*
OpenPOWER on IntegriCloud