ref: 675ee1db15ca969a4b03718cf71af8d4589f0306
dir: /sys/src/libbio/boffset.c/
#include <u.h>
#include <libc.h>
#include <bio.h>
vlong
Boffset(Biobufhdr *bp)
{
vlong n;
switch(bp->state) {
default:
fprint(2, "Boffset: unknown state %d\n", bp->state);
n = Beof;
break;
case Bracteof:
case Bractive:
n = bp->offset + bp->icount;
break;
case Bwactive:
n = bp->offset + (bp->bsize + bp->ocount);
break;
}
return n;
}