chroot bug if arg not absolute path?
On my Debian 3.0 system running the 2.4.18 kernel, I ran into a funny problem: /usr/sbin/chroot, or the chroot() system call followed by the chdir() system call, seem to work if their argument is not an absolute path; that is, scandir("/bin") can see the files in the jail, but execlp("/bin/sh", "/bin/sh", 0) fails to find the /bin/sh in the jail, and sets errno to ENOENT.
Is this a bug, or do I have a screw loose behind the wheel?
- Dan
Signature · 3 lines
Dan Kegel http://www.kegel.com http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045
Quoted 9 lines · Dan Kegel
On my Debian 3.0 system running the 2.4.18 kernel, I ran into a funny problem:
/usr/sbin/chroot, or thechroot()system call followed by thechdir()system call, seem to work if their argument is not an absolute path; that is,scandir("/bin")can see the files in the jail, butexeclp("/bin/sh", "/bin/sh", 0)fails to find the/bin/shin the jail, and sets errno to ENOENT.Is this a bug, or do I have a screw loose behind the wheel?
The latter. Ignore me.
- Dan
Signature · 3 lines
Dan Kegel http://www.kegel.com http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045