shf_reopen
shf = shf_reopen(fd, SHF_RD | SHF_INTERRUPT | can_seek(fd), shl_spare);
shf_reopen(1, SHF_WR, shl_stdout);
shf_reopen(2, SHF_WR, shl_out);
shf_reopen(fd, SHF_WR, shl_j);
shf_reopen(2, SHF_WR, shl_out);
return shf_reopen(fd, sflags, shf);
struct shf *shf_reopen(int, int, struct shf *);