i = select(xfd + 1, &rd, NULL, NULL, NULL);
if(i == -1 && errno == EINTR)
continue;
if(i < 0)
eprint("select failed\n");
else if(i > 0) {
i = select(xfd + 1, &rd, NULL, NULL, NULL);
if(i == -1 && errno == EINTR)
continue;
if(i < 0)
eprint("select failed\n");
else if(i > 0) {