&(ct->ct_wait))) {
&timeout)) {
readtcp(ct, buf, len)	register struct ct_data *ct;	caddr_t buf;	register int len;{#ifdef FD_SETSIZE	fd_set mask;	fd_set readfds;	if (len == 0)		return (0);	FD_ZERO(&mask);	FD_SET(ct->ct_sock, &mask);#else	register int mask = 1 << (ct->ct_sock);	int readfds;	if (len == 0)		return (0);#endif /* def FD_SETSIZE */	while (TRUE) {		readfds = mask;		switch (select(_rpc_dtablesize(), &readfds, (int*)NULL, (int*)NULL,			       &(ct->ct_wait))) {		case 0:			ct->ct_error.re_status = RPC_TIMEDOUT;			return (-1);		case -1:			if (errno == EINTR)				continue;			ct->ct_error.re_status = RPC_CANTRECV;			ct->ct_error.re_errno = errno;			return (-1);		}		break;	}	switch (len = read(ct->ct_sock, buf, len)) {	case 0:		/* premature eof */		ct->ct_error.re_errno = ECONNRESET;		ct->ct_error.re_status = RPC_CANTRECV;		len = -1;  /* it's really an error */		break;	case -1:		ct->ct_error.re_errno = errno;		ct->ct_error.re_status = RPC_CANTRECV;		break;	}	return (len);}