ash not working in statically compiled busybox on amd64
Andree Leidenfrost
aleidenf at bigpond.net.au
Tue May 16 21:59:33 UTC 2006
On Tue, 2006-05-16 at 17:33 +0200, Bruno Cornec wrote:
> Hello you ;-)
Hello you, too! So we meet on the busybox list for a change rather than
on the mondo rescue one. ;-)
>
> Andree Leidenfrost said on Tue, May 16, 2006 at 10:49:38PM +1000:
>
> > andree at aurich64:~$ ./ash
> >
> >
> > BusyBox v1.1.2 (2006.05.16-11:40+0000) Built-in shell (ash)
> > Enter 'help' for a list of built-in commands.
> >
> > ./ash: Cannot set tty process group (Operation not permitted)
>
> Not very good.
> Did you try a strace of ./ash to see what could be behid ?
Excellent point, no I hadn't. Traces for dynamic and static compile
attached. It looks like the culprit might be:
setpgid(0, 5) = -1 EPERM (Operation not permitted)
ioctl(10, TIOCSPGRP, [5]) = -1 EPERM (Operation not permitted)
for the static compile.
Any ideas?
> Bruno.
Cheers,
Andree
--
Andree Leidenfrost
Sydney - Australia
-------------- next part --------------
execve("./ash", ["./ash"], [/* 30 vars */]) = 0
uname({sys="Linux", node="aurich64", ...}) = 0
brk(0) = 0x519000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b1129859000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=41721, ...}) = 0
mmap(NULL, 41721, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2b112985b000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\305"..., 640) = 640
lseek(3, 624, SEEK_SET) = 624
read(3, "\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\2\0\0\0\6\0\0\0"..., 32) = 32
fstat(3, {st_mode=S_IFREG|0755, st_size=1295640, ...}) = 0
mmap(NULL, 2354344, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2b112995a000
mprotect(0x2b1129a7e000, 1158312, PROT_NONE) = 0
mmap(0x2b1129b7d000, 98304, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x123000) = 0x2b1129b7d000
mmap(0x2b1129b95000, 15528, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2b1129b95000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b1129b99000
mprotect(0x2b1129b7d000, 86016, PROT_READ) = 0
arch_prctl(ARCH_SET_FS, 0x2b1129b996d0) = 0
munmap(0x2b112985b000, 41721) = 0
getpid() = 7795
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
geteuid() = 1000
brk(0) = 0x519000
brk(0x53a000) = 0x53a000
getppid() = 7794
stat("/home/andree/shed/busybox/busybox-1.1.2", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
rt_sigaction(SIGINT, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x4080ee, ~[RTMIN RT_1], SA_RESTORER, 0x2b1129989e90}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGTERM, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {SIG_IGN}, NULL, 8) = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b112985b000
write(1, "\n", 1
) = 1
write(1, "\n", 1
) = 1
write(1, "BusyBox v1.1.2 (2006.05.16-21:47"..., 107BusyBox v1.1.2 (2006.05.16-21:47+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
) = 107
open("/dev/tty", O_RDWR) = 3
fcntl(3, F_DUPFD, 10) = 10
close(3) = 0
fcntl(10, F_SETFD, FD_CLOEXEC) = 0
ioctl(10, TIOCGPGRP, [7794]) = 0
getpgrp() = 7794
rt_sigaction(SIGTSTP, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGTTOU, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTTOU, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGTTIN, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTTIN, {SIG_DFL}, NULL, 8) = 0
setpgid(0, 7795) = 0
ioctl(10, TIOCSPGRP, [7795]) = 0
wait4(4294967295, 0x7fffff97f5bc, WNOHANG|WSTOPPED, NULL) = -1 ECHILD (No child processes)
write(2, "$ ", 2$ ) = 2
read(0,
-------------- next part --------------
execve("./ash", ["./ash"], [/* 30 vars */]) = 0
uname({sys="Linux", node="aurich64", ...}) = 0
brk(0) = 0x5ac000
brk(0x5ac888) = 0x5ac888
arch_prctl(ARCH_SET_FS, 0x5ac860) = 0
brk(0x5cd888) = 0x5cd888
brk(0x5ce000) = 0x5ce000
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
geteuid() = 1000
getppid() = 7559
stat("/home/andree/shed/busybox/busybox-1.1.2", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
rt_sigaction(SIGINT, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x405c9a, ~[RTMIN RT_1], SA_RESTORER, 0x40e440}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGTERM, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {SIG_IGN}, NULL, 8) = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b80f1fb8000
write(1, "\n", 1
) = 1
write(1, "\n", 1
) = 1
write(1, "BusyBox v1.1.2 (2006.05.16-11:45"..., 107BusyBox v1.1.2 (2006.05.16-11:45+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
) = 107
open("/dev/tty", O_RDWR) = 3
fcntl(3, F_DUPFD, 10) = 10
close(3) = 0
fcntl(10, F_SETFD, FD_CLOEXEC) = 0
ioctl(10, TIOCGPGRP, [7559]) = 0
getpgrp() = 7559
rt_sigaction(SIGTSTP, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTSTP, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGTTOU, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTTOU, {SIG_IGN}, NULL, 8) = 0
rt_sigaction(SIGTTIN, NULL, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTTIN, {SIG_DFL}, NULL, 8) = 0
setpgid(0, 5) = -1 EPERM (Operation not permitted)
ioctl(10, TIOCSPGRP, [5]) = -1 EPERM (Operation not permitted)
write(2, "./ash: ", 7./ash: ) = 7
write(2, "Cannot set tty process group (Op"..., 54Cannot set tty process group (Operation not permitted)) = 54
write(2, "\n", 1
) = 1
exit_group(2) = ?
Process 7560 detached
andree at aurich64:~/shed/busybox/busybox-1.1.2$
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.busybox.net/pipermail/busybox/attachments/20060517/f2210484/attachment-0002.pgp
More information about the busybox
mailing list