shf_read
while ((n = shf_read(xp, Xnleft(xs, xp), shf)) > 0) {
int shf_read ARGS((char *buf, int bsize, struct shf *shf));