Hallo David!

> spawns... I really want it to be using my installed busybox, rather than any 
> other busybox or set of Linux utilities that might be on the disk.
>
> I can see that the system call doesn't explicitly set a path, so I'm
> guessing it's inheriting the path that the C program started in - though
> I'd need to read some man pages to stop guessing :-)
Outch! ... that could leed to some problems. The system call runs
/bin/sh (most likely that absolute path) and doesn't search for the
shell in the path. Other implementations honor the setting of the SHELL
variable, so you may be able to set it to: "export SHELL=/YOUR/BUSYBOX
ash" ... and try if that gets you to your requirements (I didn't do that
before). ... but that depends on the system call implementation in the C
library your are using.

... it would be better to specify absolute (or at least relative) paths
to your scripts and applications in the system call ... or even better:
write your own system call function and link/use that one in your
program(s). That way you have full control which shell is executed and
on your environment settings.

--
Harald

_______________________________________________
busybox mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/busybox

Reply via email to