RBUFSIZE
buf = malloc(RBUFSIZE);
if ((RBUFSIZE - tlen) < PSIZE)
tlen = len = read(d, buf, RBUFSIZE);
len = tlen = read(d, buf, RBUFSIZE);