On Wednesday 27 December 2006 00:55, David Lang wrote: > On Tue, 26 Dec 2006, Rob Landley wrote: > > > I'm trying to make some nommu-friendly busybox-like tools, which means using > > vfork() instead of fork(). This means that after I fork I have to exec in > > the child to unblock the parent, and if I want to exec my current executable > > I have to find out where it lives so I can feed the path to exec(). This is > > nontrivial. > > > > Worse, it's not always possible. If chroot() has happened since the program > > started, there may not _be_ a path to my current executable available from > > this process's current or root directories. > > does this even make sense (as a general purpose function)? if the executable > isn't available in your path it's likly that any config files it needs are > not > available either.
busybox needs it in order to spawn, for example, gzip/bzip2 helper for tar. We know that our own executable has this function. How to execute _our own executable_? exec("/proc/self/exe") works only if /proc is mounted. I can imagine that some embedded people want to be able to not rely on that. -- vda - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/