** Reply to note from Matthew Palmer <[EMAIL PROTECTED]> Thu, 7 Aug 2003 08:42:26 +1000


> Run passwd as root under strace and ltrace, and see where it bombs.  It 


Matthew,

I hope it tells you more than it tells me...

read(5, "", 4096)                       = 0
getuid32()                              = 0
open("/etc/passwd", O_RDONLY)           = 6
fcntl64(6, F_GETFD)                     = 0
fcntl64(6, F_SETFD, FD_CLOEXEC)         = 0
fstat64(6, {st_mode=S_IFREG|0644, st_size=4317, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40
021000
read(6, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 4096
close(6)                                = 0
munmap(0x40021000, 4096)                = 0
_llseek(4, 20480, [20480], SEEK_SET)    = 0
read(4, "g\6\0\36h\6\0gh\6\0\255h\6\0\3i\6\0Ji\6\0\226i\6\0\362"..., 4096) = 409
6
fstat64(3, {st_mode=S_IFREG|0600, st_size=828083, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40
021000
_llseek(3, 18446744072216379392, 0xbfff7d50, SEEK_SET) = -1 EINVAL (Invalid argu
ment)
write(2, "(data fseek failed): Invalid arg"..., 38(data fseek failed): Invalid a
rgument
) = 38
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++


[EMAIL PROTECTED] root]# ltrace passwd ray
__libc_start_main(0x08049940, 2, 0xbffff3e4, 0x08048d10, 0x0804a7b0 <unfinished
..>
__register_frame_info(0x0804c1f4, 0x0804c478, 0xbffff388, 0x080490ce, 0x08048d10
) = 0x0804c1f4
basename("passwd")                                = "passwd"
poptGetContext(0x0804b0dc, 2, 0xbffff3e4, 0xbffff150, 0) = 0x0804c4b8
poptSetOtherOptionHelp(0x0804c4b8, 0x0804a853, 0, 0, 0) = 0x0804c688
poptGetNextOpt(0x0804c4b8, 0x0804a853, 0, 0, 0)   = -1
poptGetArgs(0x0804c4b8, 0x0804a853, 0, 0, 0)      = 0x0804c650
getuid()                                          = 0
strlen(0xbffffc4e, 0x0804c650, 0xbffff2d8, 0x080497ae, 0) = 3
getpwnam("ray")                                   = 0x421321b0
printf("Changing password for user %s.\n", "ray"Changing password for user ray.
) = 32
pam_start(0x0804b0dc, 0xbffffc4e, 0x0804c1dc, 0xbffff30c, 0x4000b0a6) = 0
pam_fail_delay(0x0804cb58, 0x001e8480, 0x0804c1dc, 0xbffff30c, 0x4000b0a6) = 0
pam_chauthtok(0x0804cb58, 0, 0x0804c1dc, 0xbffff30c, 0x4000b0a6 <unfinished ...>
misc_conv(1, 0xbfff9048, 0xbfff904c, 0, 0xbfffb060New password:
) = 0
(data fseek failed): Invalid argument
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++
[EMAIL PROTECTED] root]#



Voytek Eymont
-- 
SLUG - Sydney Linux User's Group - http://slug.org.au/
More Info: http://lists.slug.org.au/listinfo/slug

Reply via email to