ar% ps
...
arisawa 73 0:46 11:45 328K Pread pop3
arisawa 75 1:57 10:54 2688K Pread fs
...
ar% acid 73
/proc/73/text:386 plan 9 executable
/sys/lib/acid/port
/sys/lib/acid/386
acid: stk()
pread()+0x7 /sys/src/libc/9syscall/pread.s:5
read(fd=0x3,buf=0x37557,n=0x1fc1)+0x2f /sys/src/libc/9sys/read.c:7
Brdline(bp=0x374e0,delim=0xa)+0xd3 /sys/src/libbio/brdline.c:49
readmbox(box=0x2e59c)+0x31d /sys/src/cmd/upas/pop3/pop3.c:245
dologin(response=0x7fffeb61)+0x11b /sys/src/cmd/upas/pop3/pop3.c:767
apopcmd(arg=0x7fffeb59)+0x39 /sys/src/cmd/upas/pop3/pop3.c:801
main(argv=0x7fffefac,argc=0x0)+0x15d /sys/src/cmd/upas/pop3/pop3.c:140
_main+0x31 /sys/src/libc/386/main9.s:16
The lines around /sys/src/cmd/upas/pop3/pop3.c:245 are
lines = 0;
for(;;){
p = Brdline(b, '\n');
if(p == nil){
if(Blinelen(b) == 0)
break;
}else
lines++;
}
I believe these line can make a endless loop.
Kenji Arisawa