Messages in this thread | | | Date | Wed, 16 Sep 1998 08:44:38 +0200 (MET DST) | From | Cyrille Chepelov <> | Subject | Re: showstopper race condition in sync() ??? [2.1.119|120] |
| |
On 16 Sep 1998, Michael Shields wrote:
> > "strace passwd" shows that passwd copies /etc/passwd into /etc/passwd-, > > builds a new file /etc/passwd+, rm's /etc/passwd, then renames > > /etc/passwd+ to /etc/passwd > Why does it unlink /etc/passwd instead of doing an atomic rename(2) to > replace it?
Sorry, it does uses rename (see the attached strace). But the problem is not here : it is just after the rename() call, during the sync() call. The attached trace is from a correctly working machine : the sync() call returned and the program went on. On the faulting machine, the last line of the strace file is : """ sync( """ Now, I got the exactly same problem with quotacheck(8) : failure to return from sync(), sometimes, not always, not on every machine. Obviously passwd(1) is not in fault (the only userland component I'd suspect would be the (g)libc, but that would really be the last component).
(oh, on a side note : the affected machine is UP, but the problem seems to happen with both a UP and a SMP kernel).
TIA -- Cyrille
------------------------------ Zog Zog
execve("/usr/bin/passwd", ["passwd", "nobody"], [/* 17 vars */]) = 0 brk(0) = 0x8049bdc open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 4 fstat(4, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 14374, PROT_READ, MAP_PRIVATE, 4, 0) = 0x4000b000 close(4) = 0 open("/lib/libpwdb.so.0", O_RDONLY) = 4 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 4, 0) = 0x4000f000 munmap(0x4000f000, 4096) = 0 mmap(0, 264972, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x4000f000 mprotect(0x40023000, 183052, PROT_NONE) = 0 mmap(0x40023000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x13000) = 0x40023000 mmap(0x4002c000, 146188, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4002c000 close(4) = 0 open("/lib/libpam.so.0", O_RDONLY) = 4 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 4, 0) = 0x40050000 munmap(0x40050000, 4096) = 0 mmap(0, 27288, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x40050000 mprotect(0x40056000, 2712, PROT_NONE) = 0 mmap(0x40056000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x5000) = 0x40056000 close(4) = 0 open("/lib/libpam_misc.so.0", O_RDONLY) = 4 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 4, 0) = 0x40057000 munmap(0x40057000, 4096) = 0 mmap(0, 8864, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x40057000 mprotect(0x40059000, 672, PROT_NONE) = 0 mmap(0x40059000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x1000) = 0x40059000 close(4) = 0 open("/lib/libdl.so.2", O_RDONLY) = 4 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 4, 0) = 0x4005a000 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4005b000 munmap(0x4005a000, 4096) = 0 mmap(0, 9256, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x4005c000 mprotect(0x4005e000, 1064, PROT_NONE) = 0 mmap(0x4005e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x1000) = 0x4005e000 close(4) = 0 open("/lib/libc.so.6", O_RDONLY) = 4 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 4, 0) = 0x4005a000 munmap(0x4005a000, 4096) = 0 mmap(0, 670580, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x4005f000 mprotect(0x400f0000, 76660, PROT_NONE) = 0 mmap(0x400f0000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x90000) = 0x400f0000 mmap(0x400f7000, 47988, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x400f7000 close(4) = 0 open("/lib/libcrypt.so.1", O_RDONLY) = 4 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 4, 0) = 0x4005a000 munmap(0x4005a000, 4096) = 0 mmap(0, 181668, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x40103000 mprotect(0x40108000, 161188, PROT_NONE) = 0 mmap(0x40108000, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x4000) = 0x40108000 mmap(0x40129000, 26020, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40129000 close(4) = 0 open("/lib/libnsl.so.1", O_RDONLY) = 4 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 4, 0) = 0x4005a000 munmap(0x4005a000, 4096) = 0 mmap(0, 21980, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x40130000 mprotect(0x40134000, 5596, PROT_NONE) = 0 mmap(0x40134000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4, 0x3000) = 0x40134000 close(4) = 0 mprotect(0x4000f000, 81920, PROT_READ|PROT_WRITE) = 0 mprotect(0x4000f000, 81920, PROT_READ|PROT_EXEC) = 0 personality(0 /* PER_??? */) = 0 getpid() = 2367 getuid() = 0 brk(0) = 0x8049bdc brk(0x8049c6c) = 0x8049c6c brk(0x804a000) = 0x804a000 stat("/etc/pam.d", {st_mode=S_ISGID, st_size=0, ...}) = 0 open(0x8049d10, O_RDONLY) = 4 fstat(4, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4005a000 read(4, "#%PAM-1.0\nauth required\t"..., 4096) = 239 open("/lib/security/pam_pwdb.so", O_RDONLY) = 5 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 5, 0) = 0x40136000 munmap(0x40136000, 4096) = 0 mmap(0, 26260, PROT_READ|PROT_EXEC, MAP_PRIVATE, 5, 0) = 0x40136000 mprotect(0x4013c000, 1684, PROT_NONE) = 0 mmap(0x4013c000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x5000) = 0x4013c000 close(5) = 0 brk(0x804b000) = 0x804b000 open("/lib/security/pam_cracklib.so", O_RDONLY) = 5 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 5, 0) = 0x4013d000 munmap(0x4013d000, 4096) = 0 mmap(0, 20048, PROT_READ|PROT_EXEC, MAP_PRIVATE, 5, 0) = 0x4013d000 mprotect(0x4013f000, 11856, PROT_NONE) = 0 mmap(0x4013f000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x1000) = 0x4013f000 mmap(0x40140000, 7760, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40140000 close(5) = 0 open("/usr/lib/libcrack.so.2", O_RDONLY) = 5 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 5, 0) = 0x40142000 munmap(0x40142000, 4096) = 0 mmap(0, 43020, PROT_READ|PROT_EXEC, MAP_PRIVATE, 5, 0) = 0x40142000 mprotect(0x40148000, 18444, PROT_NONE) = 0 mmap(0x40148000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x5000) = 0x40148000 mmap(0x4014a000, 10252, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4014a000 close(5) = 0 read(4, "", 4096) = 0 close(4) = 0 munmap(0x4005a000, 4096) = 0 open("/etc/pam.d/other", O_RDONLY) = 4 fstat(4, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4005a000 read(4, "#%PAM-1.0\nauth required "..., 4096) = 210 open("/lib/security/pam_deny.so", O_RDONLY) = 5 mmap(0, 4096, PROT_READ, MAP_PRIVATE, 5, 0) = 0x4014d000 munmap(0x4014d000, 4096) = 0 mmap(0, 5540, PROT_READ|PROT_EXEC, MAP_PRIVATE, 5, 0) = 0x4014d000 mprotect(0x4014e000, 1444, PROT_NONE) = 0 mmap(0x4014e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x4014e000 close(5) = 0 read(4, "", 4096) = 0 close(4) = 0 munmap(0x4005a000, 4096) = 0 time(NULL) = 905927102 stat("/usr/lib/cracklib_dict.pwd", {st_mode=0, st_size=0, ...}) = 0 open("/etc/pwdb.conf", O_RDONLY) = 4 fstat(4, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4005a000 read(4, "#\n# This is the configuration f"..., 4096) = 134 read(4, "", 4096) = 0 close(4) = 0 munmap(0x4005a000, 4096) = 0 getrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0 setrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0 getuid() = 0 open("/etc/passwd", O_RDONLY) = 4 fstat(4, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4005a000 read(4, "root:2l0f2j2czyWpk:0:0:root:/roo"..., 4096) = 597 close(4) = 0 munmap(0x4005a000, 4096) = 0 time(NULL) = 905927102 time(NULL) = 905927102 time(NULL) = 905927102 time(NULL) = 905927102 time(NULL) = 905927102 time(NULL) = 905927102 time(NULL) = 905927102 open("/etc/shadow", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/shadow", O_RDONLY) = -1 ENOENT (No such file or directory) time(NULL) = 905927102 getrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0 setrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0 ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0 ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0 time([905927102]) = 905927102 write(2, "New UNIX password: ", 19) = 19 ioctl(0, SNDCTL_TMR_CONTINUE, {B9600 opost isig icanon -echo ...}) = 0 read(0, "zork\n", 511) = 5 ioctl(0, SNDCTL_TMR_STOP, {B9600 opost isig icanon echo ...}) = 0 write(2, "\n", 1) = 1 open("/usr/lib/cracklib_dict.pwd", O_RDONLY) = 4 open("/usr/lib/cracklib_dict.pwi", O_RDONLY) = 5 open("/usr/lib/cracklib_dict.hwm", O_RDONLY) = 6 fstat(5, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4005a000 read(5, "1Vwp=\261\0\0\20\0\0\0\0\0\0\0G\0"..., 4096) = 4096 fstat(6, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4014f000 read(6, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 1024 write(2, "BAD PASSWORD: it is too short\n", 30) = 30 getuid() = 0 ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0 ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0 time([905927108]) = 905927108 write(2, "Retype new UNIX password: ", 26) = 26 ioctl(0, SNDCTL_TMR_CONTINUE, {B9600 opost isig icanon -echo ...}) = 0 read(0, "zork\n", 511) = 5 ioctl(0, SNDCTL_TMR_STOP, {B9600 opost isig icanon echo ...}) = 0 write(2, "\n", 1) = 1 brk(0x804c000) = 0x804c000 open("/etc/pwdb.conf", O_RDONLY) = 7 fstat(7, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40150000 read(7, "#\n# This is the configuration f"..., 4096) = 134 read(7, "", 4096) = 0 close(7) = 0 munmap(0x40150000, 4096) = 0 getrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0 setrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0 getuid() = 0 time([905927110]) = 905927110 open("/etc/passwd", O_RDONLY) = 7 fstat(7, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40150000 read(7, "root:2l0f2j2czyWpk:0:0:root:/roo"..., 4096) = 597 close(7) = 0 munmap(0x40150000, 4096) = 0 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 open("/etc/shadow", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/shadow", O_RDONLY) = -1 ENOENT (No such file or directory) geteuid() = 0 geteuid() = 0 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 open("/etc/passwd", O_RDONLY) = 7 fstat(7, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40150000 read(7, "root:2l0f2j2czyWpk:0:0:root:/roo"..., 4096) = 597 read(7, "", 4096) = 0 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 close(7) = 0 munmap(0x40150000, 4096) = 0 getpid() = 2367 open("/etc/pwd.%d.2367", O_WRONLY|O_CREAT|O_EXCL, 0600) = 7 getpid() = 2367 write(7, "2367\0", 5) = 5 close(7) = 0 link("/etc/pwd.%d.2367", "/etc/passwd.lock") = 0 stat("/etc/pwd.%d.2367", {st_mode=S_ISGID|S_ISVTX, st_size=0, ...}) = 0 unlink("/etc/pwd.%d.2367") = 0 open("/etc/passwd", O_RDWR) = 7 fstat(7, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40150000 read(7, "root:2l0f2j2czyWpk:0:0:root:/roo"..., 4096) = 597 read(7, "", 4096) = 0 getpid() = 2367 fstat(7, {st_mode=0, st_size=0, ...}) = 0 unlink("/etc/passwd-") = -1 ENOENT (No such file or directory) umask(0777) = 022 open("/etc/passwd-", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 8 umask(022) = 0777 lseek(7, 0, SEEK_SET) = 0 read(7, "root:2l0f2j2czyWpk:0:0:root:/roo"..., 4096) = 597 fstat(8, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40151000 read(7, "", 4096) = 0 write(8, "root:2l0f2j2czyWpk:0:0:root:/roo"..., 597) = 597 close(8) = 0 munmap(0x40151000, 4096) = 0 chown("/etc/passwd-", 0, 0) = 0 chmod("/etc/passwd-", 0100644) = 0 utime("/etc/passwd-", [98/09/16-08:25:10, 98/09/14-11:06:02]) = 0 close(7) = 0 munmap(0x40150000, 4096) = 0 umask(0777) = 022 open("/etc/passwd+", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 7 umask(022) = 0777 chown("/etc/passwd+", 0, 0) = 0 chmod("/etc/passwd+", 0100644) = 0 fstat(7, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40150000 write(7, "root:2l0f2j2czyWpk:0:0:root:/roo"..., 609) = 609 close(7) = 0 munmap(0x40150000, 4096) = 0 rename("/etc/passwd+", "/etc/passwd") = 0 sync() = 0 getpid() = 2367 unlink("/etc/passwd.lock") = 0 time(NULL) = 905927110 open("/etc/shadow", O_RDONLY) = -1 ENOENT (No such file or directory) getuid() = 0 ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0 ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0 fstat(0, {st_mode=S_ISVTX|0400, st_size=0, ...}) = 0 open("/dev", O_RDONLY|O_NONBLOCK) = 7 fcntl(7, F_SETFD, FD_CLOEXEC) = 0 fstat(7, {st_mode=0, st_size=0, ...}) = 0 brk(0x804e000) = 0x804e000 lseek(7, 0, SEEK_CUR) = 0 getdents(7, /* 68 entries */, 3933) = 1100 lseek(7, 0, SEEK_CUR) = 1024 getdents(7, /* 71 entries */, 3933) = 1208 lseek(7, 0, SEEK_CUR) = 2048 getdents(7, /* 75 entries */, 3933) = 1200 lseek(7, 0, SEEK_CUR) = 3072 getdents(7, /* 68 entries */, 3933) = 1224 lseek(7, 0, SEEK_CUR) = 4096 getdents(7, /* 57 entries */, 3933) = 1216 lseek(7, 0, SEEK_CUR) = 5120 getdents(7, /* 56 entries */, 3933) = 1180 lseek(7, 0, SEEK_CUR) = 6144 getdents(7, /* 75 entries */, 3933) = 1208 lseek(7, 0, SEEK_CUR) = 7168 getdents(7, /* 64 entries */, 3933) = 1024 lseek(7, 0, SEEK_CUR) = 8192 getdents(7, /* 64 entries */, 3933) = 1024 lseek(7, 0, SEEK_CUR) = 9216 getdents(7, /* 64 entries */, 3933) = 1024 lseek(7, 0, SEEK_CUR) = 10240 getdents(7, /* 68 entries */, 3933) = 1100 lseek(7, 0, SEEK_CUR) = 11264 getdents(7, /* 76 entries */, 3933) = 1228 lseek(7, 0, SEEK_CUR) = 12288 getdents(7, /* 77 entries */, 3933) = 1300 lseek(7, 0, SEEK_CUR) = 13312 getdents(7, /* 64 entries */, 3933) = 1204 lseek(7, 0, SEEK_CUR) = 14336 getdents(7, /* 64 entries */, 3933) = 1024 lseek(7, 0, SEEK_CUR) = 15360 getdents(7, /* 64 entries */, 3933) = 1024 stat("/dev/ttyp0", {st_mode=S_ISVTX|0400, st_size=0, ...}) = 0 close(7) = 0 open("/var/run/utmp", O_RDWR) = 7 lseek(7, 0, SEEK_SET) = 0 fcntl(7, F_SETLKW, {type=F_RDLCK, whence=SEEK_SET, start=0, len=0}) = 0 read(7, "\10\0\0\0\4\0\0\0\0\0\0\0\0\0\0\0"..., 384) = 384 read(7, "\1\0\0\0003N\0\0~\0\0\0\0\0\0\0\0"..., 384) = 384 read(7, "\10\0\0\0006\0\0\0\0\0\0\0\0\0\0"..., 384) = 384 read(7, "\10\0\0\0\225\1\0\0\0\0\0\0\0\0\0"..., 384) = 384 read(7, "\7\0\0\0\226\1\0\0tty1\0\0\0\0\0"..., 384) = 384 read(7, "\6\0\0\0\304\1\0\0tty2\0\0\0\0\0"..., 384) = 384 read(7, "\6\0\0\0\230\1\0\0tty3\0\0\0\0\0"..., 384) = 384 read(7, "\6\0\0\0\231\1\0\0tty4\0\0\0\0\0"..., 384) = 384 read(7, "\6\0\0\0\232\1\0\0tty5\0\0\0\0\0"..., 384) = 384 read(7, "\6\0\0\0\233\1\0\0tty6\0\0\0\0\0"..., 384) = 384 read(7, "\7\0\0\0\323\1\0\0ttyp0\0\0\0\0\0"..., 384) = 384 fcntl(7, F_SETLK, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0 open("/etc/passwd", O_RDONLY) = 8 fstat(8, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40150000 read(8, "root:2l0f2j2czyWpk:0:0:root:/roo"..., 4096) = 609 close(8) = 0 munmap(0x40150000, 4096) = 0 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 open("/etc/shadow", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/shadow", O_RDONLY) = -1 ENOENT (No such file or directory) time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 time(NULL) = 905927110 close(7) = 0 time([905927110]) = 905927110 open("/etc/localtime", O_RDONLY) = 7 fstat(7, {st_mode=0, st_size=0, ...}) = 0 mmap(0, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40150000 read(7, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 1088 close(7) = 0 munmap(0x40150000, 4096) = 0 getpid() = 2367 sigaction(SIGPIPE, {0x400cec90, [], SA_RESTART|SA_INTERRUPT|SA_NOMASK|0x797474}, {SIG_DFL}) = 0 socket(PF_UNIX, SOCK_DGRAM, 0) = 7 fcntl(7, F_SETFD, FD_CLOEXEC) = 0 connect(7, {sun_family=AF_UNIX, sun_path="/dev/log"}, 16) = -1 EPROTOTYPE (Protocol wrong type for socket) close(7) = 0 socket(PF_UNIX, SOCK_STREAM, 0) = 7 fcntl(7, F_SETFD, FD_CLOEXEC) = 0 connect(7, {sun_family=AF_UNIX, sun_path="/dev/log"}, 16) = 0 send(7, "<38>Sep 16 08:25:10 PAM_pwdb[236"..., 85, 0) = 85 sigaction(SIGPIPE, {SIG_DFL}, NULL) = 0 close(7) = 0 getrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0 setrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0 munmap(0x40136000, 26260) = 0 munmap(0x4013d000, 20048) = 0 munmap(0x40142000, 43020) = 0 munmap(0x4014d000, 5540) = 0 write(2, "passwd: all authentication token"..., 55) = 55 munmap(0x4014f000, 4096) = 0 lseek(5, -4084, SEEK_CUR) = 12 munmap(0x4005a000, 4096) = 0 _exit(0) = ?
| |