[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: troff segfaulting



> On Apr 08, Falk Hueffner scrawled :

> Perhaps /usr/lib/man-db/man has lost it's x flag. It should look like
> this:
> -rwsr-xr-x    1 man      root        83008 Feb 11 14:17 /usr/lib/man-db/man*
> 
it has the required permissions ....

hmmm recalling D.Huggins note on setuid ....  I should have remebered that.
Here follows done as root  -- it is _long_

strace man man                                                                                                                                                                                                                           13:20
execve("/usr/bin/man", ["man", "man"], [/* 14 vars */]) = 0
brk(0)                                  = 0x120101450
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2000001e000
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=18120, ...}) = 0
mmap(NULL, 18120, PROT_READ, MAP_PRIVATE, 3, 0) = 0x20000020000
close(3)                                = 0
open("/lib/libc.so.6.1", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=2187708, ...}) = 0
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&\220\1\0\0\0\200!\3"..., 8192) = 8192
mmap(NULL, 2328424, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x2000011e000
mprotect(0x20000246000, 1116008, PROT_NONE) = 0
mmap(0x2000033e000, 81920, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0x120000) = 0x2000033e000
mmap(0x20000352000, 18280, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x20000352000
close(3)                                = 0
open("/lib/libdb.so.3", O_RDONLY)       = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=667125, ...}) = 0
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&\220\1\0\0\0\0\244"..., 8192) = 8192
mmap(NULL, 1438120, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x20000358000
mprotect(0x200003b6000, 1053096, PROT_NONE) = 0
mmap(0x200004a8000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0x50000) = 0x200004a8000
close(3)                                = 0
munmap(0x20000020000, 18120)            = 0
personality(PER_LINUX)                  = 0
getxpid()                               = 10166
brk(0)                                  = 0x120101450
brk(0x1201014a0)                        = 0x1201014a0
brk(0x120102000)                        = 0x120102000
getxuid()                               = 0
socket(PF_UNIX, SOCK_STREAM, 0)         = 3
connect(3, {sin_family=AF_UNIX, path="                                                                                       /var/run/.nscd_socket"}, 110) = -1 ECONNREFUSED (Connection refused)
close(3)                                = 0
open("/etc/nsswitch.conf", O_RDONLY)    = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=465, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 8192) = 465
read(3, "", 8192)                       = 0
close(3)                                = 0
munmap(0x20000020000, 8192)             = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=18120, ...}) = 0
mmap(NULL, 18120, PROT_READ, MAP_PRIVATE, 3, 0) = 0x20000020000
close(3)                                = 0
open("/lib/libnss_compat.so.2", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=236408, ...}) = 0
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&\220\1\0\0\0 \'\0\0"..., 8192) = 8192
brk(0x120104000)                        = 0x120104000
mmap(NULL, 1109136, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x200004b8000
mprotect(0x200004c6000, 1051792, PROT_NONE) = 0
mmap(0x200005b8000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x200005b8000
close(3)                                = 0
open("/lib/libnsl.so.1.1", O_RDONLY)    = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=341503, ...}) = 0
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&\220\1\0\0\0\340~\0"..., 8192) = 8192
mmap(NULL, 1186088, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x200005c8000
mprotect(0x200005e6000, 1063208, PROT_NONE) = 0
mmap(0x200006d8000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0x10000) = 0x200006d8000
mmap(0x200006e8000, 6440, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x200006e8000
close(3)                                = 0
munmap(0x20000020000, 18120)            = 0
uname({sys="Linux", node="beowulf", ...}) = 0
open("/etc/passwd", O_RDONLY)           = 3
fcntl(3, F_GETFD)                       = 0
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=2460, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
lseek(3, 0, SEEK_CUR)                   = 0
read(3, "root:wwkr3y7Xg155E:0:0:root:/roo"..., 8192) = 2460
close(3)                                = 0
munmap(0x20000020000, 8192)             = 0
setgid(100)                             = 0
open("/etc/group", O_RDONLY)            = 3
fcntl(3, F_GETFD)                       = 0
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=601, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
lseek(3, 0, SEEK_CUR)                   = 0
read(3, "root:*:0:\ndaemon:*:1:\nbin:*:2:\ns"..., 8192) = 601
read(3, "", 8192)                       = 0
close(3)                                = 0
munmap(0x20000020000, 8192)             = 0
setgroups(1, [100])                     = 0
setuid(6)                               = 0
execve("/usr/lib/man-db/man", ["man", "man"], [/* 14 vars */]) = 0
brk(0)                                  = 0x120224ef0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2000001e000
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=18120, ...}) = 0
mmap(NULL, 18120, PROT_READ, MAP_PRIVATE, 3, 0) = 0x20000020000
close(3)                                = 0
open("/lib/libc.so.6.1", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0755, st_size=2187708, ...}) = 0
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&\220\1\0\0\0\200!\3"..., 8192) = 8192
mmap(NULL, 2328424, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x2000011e000
mprotect(0x20000246000, 1116008, PROT_NONE) = 0
mmap(0x2000033e000, 81920, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0x120000) = 0x2000033e000
mmap(0x20000352000, 18280, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x20000352000
close(3)                                = 0
open("/lib/libdb.so.3", O_RDONLY)       = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=667125, ...}) = 0
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0&\220\1\0\0\0\0\244"..., 8192) = 8192
mmap(NULL, 1438120, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x20000358000
mprotect(0x200003b6000, 1053096, PROT_NONE) = 0
mmap(0x200004a8000, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0x50000) = 0x200004a8000
close(3)                                = 0
munmap(0x20000020000, 18120)            = 0
personality(PER_LINUX)                  = 0
getxpid()                               = 10166
umask(022)                              = 02
brk(0)                                  = 0x120224ef0
brk(0x120224f40)                        = 0x120224f40
brk(0x120226000)                        = 0x120226000
fstat(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
fstat(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
getxuid()                               = 6
getxuid()                               = 6
getxuid()                               = 6
getcwd("/root", 4094)                   = 6
ioctl(1, TCGETS, {B9600 opost isig icanon echo ...}) = 0
ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0
rt_sigaction(SIGINT, {0x1200089a0, [], SA_RESTART}, {SIG_DFL}, 8, 0x3) = 0
open("/etc/manpath.config", O_RDONLY)   = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=2607, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
read(3, "# man_db.config\n#\n# This file is"..., 8192) = 2607
stat("/usr/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/share/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/local/man", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0
stat("/usr/X11R6/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/opt/man", 0x1fffd9a0)            = -1 ENOENT (No such file or directory)
read(3, "", 8192)                       = 0
close(3)                                = 0
munmap(0x20000020000, 8192)             = 0
open("/root/.manpath", O_RDONLY)        = -1 ENOENT (No such file or directory)
stat("/root/bin/man", 0x1ffff900)       = -1 ENOENT (No such file or directory)
stat("/usr/local/man", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0
stat("/usr/share/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/ucb/man", 0x1ffff900)        = -1 ENOENT (No such file or directory)
stat("/etc/man", 0x1ffff900)            = -1 ENOENT (No such file or directory)
stat("/usr/etc/man", 0x1ffff900)        = -1 ENOENT (No such file or directory)
stat("/usr/X11R6/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/local/java/bin/man", 0x1ffff900) = -1 ENOENT (No such file or directory)
stat("/usr/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/local/man", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0
stat("/usr/share/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/X11R6/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat("/usr/man", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
getxuid()                               = 6
open("/var/cache/man/local/index.bt", O_RDONLY) = 3
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=16384, ...}) = 0
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0b1\5\0\6\0\0\0\0 \0\0\0\0\0\0\2"..., 512) = 512
close(3)                                = 0
brk(0x120240000)                        = 0x120240000
open("/etc/fstab", O_RDONLY)            = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=682, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
read(3, "# /etc/fstab: static file system"..., 8192) = 682
close(3)                                = 0
munmap(0x20000020000, 8192)             = 0
open("/proc/cpuinfo", O_RDONLY)         = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
read(3, "cpu\t\t\t: Alpha\ncpu model\t\t: EV45\n"..., 1024) = 487
read(3, "", 1024)                       = 0
close(3)                                = 0
munmap(0x20000020000, 8192)             = 0
open("/var/cache/man/local/index.bt", O_RDONLY) = 3
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=16384, ...}) = 0
mmap(NULL, 16384, PROT_READ, MAP_PRIVATE, 3, 0) = 0x20000020000
flock(3, LOCK_SH|LOCK_NB)               = 0
flock(3, LOCK_UN)                       = 0
munmap(0x20000020000, 16384)            = 0
close(3)                                = 0
open("/var/cache/man/index.bt", O_RDONLY) = 3
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=204800, ...}) = 0
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0b1\5\0\6\0\0\0\0 \0\0\0\0\0\0\2"..., 512) = 512
close(3)                                = 0
open("/var/cache/man/index.bt", O_RDONLY) = 3
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=204800, ...}) = 0
mmap(NULL, 204800, PROT_READ, MAP_PRIVATE, 3, 0) = 0x20000020000
flock(3, LOCK_SH|LOCK_NB)               = 0
flock(3, LOCK_UN)                       = 0
munmap(0x20000020000, 204800)           = 0
close(3)                                = 0
lstat("/usr/share/man/man1/man.1.gz", {st_mode=S_IFREG|0644, st_size=9005, ...}) = 0
access("/usr/share/man/man1/man.1.gz", R_OK) = 0
lstat("/usr/share/man/man1/man.1.gz", {st_mode=S_IFREG|0644, st_size=9005, ...}) = 0
open("/usr/share/man/man1/man.1", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/usr/share/man/man1/man.1.gz", {st_mode=S_IFREG|0644, st_size=9005, ...}) = 0
umask(022)                              = 022
getxuid()                               = 6
stat("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=1024, ...}) = 0
gettimeofday({955257625, 297988}, NULL) = 0
getxpid()                               = 10166
stat("/tmp/zmanh2thew", 0x1fffb3d0)     = -1 ENOENT (No such file or directory)
unlink("/tmp/zmanh2thew")               = -1 ENOENT (No such file or directory)
open("/tmp/zmanh2thew", O_WRONLY|O_CREAT|O_EXCL, 0644) = 3
getxuid()                               = 6
umask(022)                              = 022
getxuid()                               = 6
rt_sigaction(SIGINT, {SIG_IGN}, {0x1200089a0, [], SA_RESTART}, 8, 0x3) = 0
rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8, 0x3) = 0
osf_sigprocmask(0x1, 0x80000, 0x11fffc420) = 0
vfork()                                 = 10167
wait4(10167, [WIFEXITED(s) && WEXITSTATUS(s) == 0], 0, NULL) = 10167
rt_sigaction(SIGINT, {0x1200089a0, [], SA_RESTART}, NULL, 8, 0x3) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, NULL, 8, 0x3) = 0
osf_sigprocmask(0x3, 0, 0)              = 524288
--- SIGCHLD (Child exited) ---
open("/tmp/zmanh2thew", O_RDONLY)       = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=23557, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
read(4, "\'\\\" t\n.\\\" ** The above line shou"..., 8192) = 8192
close(4)                                = 0
munmap(0x20000020000, 8192)             = 0
chdir("/usr/share/man")                 = 0
open("/tmp/zmanh2thew", O_RDONLY)       = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=23557, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
read(4, "\'\\\" t\n.\\\" ** The above line shou"..., 8192) = 8192
close(4)                                = 0
munmap(0x20000020000, 8192)             = 0
access("./mandb_nfmt", X_OK)            = -1 ENOENT (No such file or directory)
stat("/usr/share/man/man1/man.1.gz", {st_mode=S_IFREG|0644, st_size=9005, ...}) = 0
stat("/usr/share/man/cat1/man.1.gz", 0x1ffff610) = -1 ENOENT (No such file or directory)
stat("/usr/share/man/man1/man.1.gz", {st_mode=S_IFREG|0644, st_size=9005, ...}) = 0
stat("/var/cache/man/cat1/man.1.gz", 0x1ffff610) = -1 ENOENT (No such file or directory)
stat("/var/cache/man/cat1", {st_mode=S_IFDIR|S_ISGID|0755, st_size=1024, ...}) = 0
access("/usr/share/man/man1/man.1.gz", R_OK) = 0
write(2, "Reformatting man(1), please wait"..., 36Reformatting man(1), please wait...
) = 36
getxuid()                               = 6
pipe([539120480, 1])                    = 4
vfork()                                 = 10169
close(5)                                = 0
fcntl(4, F_GETFL)                       = 0 (flags O_RDONLY)
fstat(4, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000020000
lseek(4, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
getxuid()                               = 6
getxuid()                               = 6
pipe([539120640, 1])                    = 5
vfork()                                 = 10170
close(5)                                = 0
fcntl(6, F_GETFL)                       = 0x1 (flags O_WRONLY)
fstat(6, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000022000
lseek(6, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
getxuid()                               = 6
getxpid()                               = 10166
rt_sigaction(SIGHUP, NULL, {SIG_DFL}, 8, 0xffffffffffffffff) = 0
rt_sigaction(SIGHUP, {0x120014820, [], 0}, {SIG_DFL}, 8, 0xffffffffffffffff) = 0
rt_sigaction(SIGINT, NULL, {0x1200089a0, [RT_21 RT_22 RT_23 RT_24 RT_25 RT_26 RT_27 RT_28 RT_29 RT_30], SA_RESTART}, 8, 0xffffffffffffffff) = 0
rt_sigaction(SIGTERM, NULL, {SIG_DFL}, 8, 0xffffffffffffffff) = 0
rt_sigaction(SIGTERM, {0x120014820, [], 0}, {SIG_DFL}, 8, 0xffffffffffffffff) = 0
pipe([0, 0])                            = 5
fork()                                  = 10174
close(5)                                = 0
fcntl(7, F_GETFL)                       = 0x1 (flags O_WRONLY)
fstat(7, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x20000024000
lseek(7, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_DFL}, 8, 0xffffffffffffffff) = 0
read(4, [WIFEXITED(s) && WEXITSTATUS(s) == 0], 0, NULL) = 10170
--- SIGCHLD (Child exited) ---
rt_sigaction(SIGPIPE, {SIG_DFL}, {SIG_IGN}, 8, 0xffffffffffffffff) = 0
close(3)                                = 0
getxuid()                               = 6
rmdir("/tmp/zmanh2thew")                = -1 ENOTDIR (Not a directory)
unlink("/tmp/zmanh2thew")               = 0
chdir("/root")                          = 0
ioctl(0, TCSETS, {B9600 opost isig icanon echo ...}) = 0
ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0
exit(0)                                 = ?
beowulf[17]~#                                                                                                                                                                                                                                          13:20



-- 
Jean-Paul Blaquiere		|| Don't hate yourself in the morning,
   japester@ucc.gu.uwa.edu.au 	||  sleep until noon.
				
			caffeino ergo sum


Reply to: