| plan 9 kernel history: overview | file list | diff list |
1992/0320/port/stfcall.c (diff list | history)
| 1992/0319/sys/src/9/port/stfcall.c:109,115 – 1992/0320/sys/src/9/port/stfcall.c:109,114 (short | long | prev | next) | ||
| 1992/0318 | for(bp = bl; bp->next; bp = bp->next) ; bp->flags |= S_DELIM; | |
| 1992/0319 |
| |
| 1992/0318 | PUTNEXT(q, bl); } | |
| 1992/0319/sys/src/9/port/stfcall.c:131,164 – 1992/0320/sys/src/9/port/stfcall.c:130,170 | ||
| 1992/0318 | bp->flags &= ~S_DELIM; putq(q, bp); | |
| 1991/0521 | ||
| 1992/0318 |
| |
| 1992/0320 | for(;;) { bp = q->first; if(bp == 0) return; switch(bp->rptr[0]) { /* This is the type */ default: len = msglen[bp->rptr[0]]; if(len == 0) error(Emountrpc); if(q->len < len) return; | |
| 1992/0318 | upstream(q, len); | |
| 1992/0320 | continue; | |
| 1991/0521 | ||
| 1992/0318 |
| |
| 1991/0521 |
| |
| 1992/0318 |
| |
| 1991/0521 |
| |
| 1992/0320 | case Twrite: /* Fmt: TGGFFOOOOOOOOCC */ len = Twritehdr; /* T = type, G = tag, F = fid */ off = Twritecnt; /* O = offset, C = count */ break; | |
| 1991/0521 | ||
| 1992/0318 |
| |
| 1991/0521 | ||
| 1992/0318 |
| |
| 1992/0320 | case Rread: /* Fmt: TGGFFCC */ len = Rreadhdr; off = Rreadcnt; break; } if(q->len < len) return; pullup(q->first, len); bp = q->first; need = len+bp->rptr[off]+(bp->rptr[off+1]<<8); if(q->len < need) return; upstream(q, need); } | |
| 1991/0521 | } | |