| plan 9 kernel history: overview | file list | diff list |
1990/0801/port/stream.c (diff list | history)
| 1990/0707/sys/src/9/port/stream.c:6,11 – 1990/0801/sys/src/9/port/stream.c:6,12 (short | long | prev | next) | ||
| 1990/0227 | #include "io.h" #include "errno.h" #include "devtab.h" | |
| 1990/0801 | #include "fcall.h" | |
| 1990/0227 | ||
| 1990/0321 | enum { Nclass=4, /* number of block classes */ | |
| 1990/0707/sys/src/9/port/stream.c:72,78 – 1990/0801/sys/src/9/port/stream.c:73,79 | ||
| 1990/0707 | lock(q); for(bp = q->first; bp; bp = bp->next){ | |
| 1990/0801 | print("%c%d%c", c, bp->wptr-bp->rptr, (bp->flags&S_DELIM)); | |
| 1990/0707 | for(cp = bp->rptr; cp<bp->wptr && cp<bp->rptr+10; cp++) print(" %uo", *cp); print("\n"); | |
| 1990/0707/sys/src/9/port/stream.c:1155,1158 – 1990/0801/sys/src/9/port/stream.c:1156,1189 | ||
| 1990/0312 | lp++; } return i; | |
| 1990/0801 | } /* * stat a stream. the length is the number of bytes up to the * first delimiter. */ void streamstat(Chan *c, char *db, char *name) { Dir dir; Stream *s; Queue *q; Block *bp; long n; s = c->stream; if(s == 0) panic("streamstat"); q = RD(s->procq); lock(q); for(n=0, bp=q->first; bp; bp = bp->next){ n += BLEN(bp); if(bp->flags&S_DELIM) break; } unlock(q); devdir(c, c->qid, name, n, 0, &dir); convD2M(&dir, db); | |
| 1990/0227 | } | |