I guess it would be easy enough to insist that all system() calls invoke stub scripts which just go "busybox <realscript>
I have control over all system calls, so I can edit them all to do that. D In article <[email protected]>, [email protected] (Harald Becker) wrote: > *From:* Harald Becker <[email protected]> > *To:* [email protected] > *CC:* [email protected] > *Date:* Mon, 07 Feb 2011 23:09:12 +0100 > > 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
