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

Reply via email to