Use linux_emul_convpath() rather than linux_emul_find() as

linux_emul_find() is going away.
This commit is contained in:
jhb 2005-02-07 18:37:51 +00:00
parent 2e8b9720fa
commit d92d6a0f9f

View File

@ -738,7 +738,8 @@ static int
exec_linux_imgact_try(struct image_params *imgp) exec_linux_imgact_try(struct image_params *imgp)
{ {
const char *head = (const char *)imgp->image_header; const char *head = (const char *)imgp->image_header;
int error = -1; char *rpath;
int error = -1, len;
/* /*
* The interpreter for shell scripts run from a linux binary needs * The interpreter for shell scripts run from a linux binary needs
@ -752,12 +753,10 @@ exec_linux_imgact_try(struct image_params *imgp)
* path is found, use our stringspace to store it. * path is found, use our stringspace to store it.
*/ */
if ((error = exec_shell_imgact(imgp)) == 0) { if ((error = exec_shell_imgact(imgp)) == 0) {
char *rpath = NULL; linux_emul_convpath(FIRST_THREAD_IN_PROC(imgp->proc),
imgp->interpreter_name, UIO_SYSSPACE, &rpath, 0);
linux_emul_find(FIRST_THREAD_IN_PROC(imgp->proc), NULL, if (rpath != NULL) {
imgp->interpreter_name, &rpath, 0); len = strlen(rpath) + 1;
if (rpath != imgp->interpreter_name) {
int len = strlen(rpath) + 1;
if (len <= MAXSHELLCMDLEN) { if (len <= MAXSHELLCMDLEN) {
memcpy(imgp->interpreter_name, rpath, len); memcpy(imgp->interpreter_name, rpath, len);