DPRINTF(("Unimplemented module %c %d\n",
DPRINTF(("Unimplemented module %c %ld\n",
svr4_streamioctl(fp, cmd, dat, p, retval)	struct file *fp;	u_long cmd;	caddr_t dat;	struct proc *p;	register_t *retval;{	struct svr4_strioctl	 ioc;	int			 error;	*retval = 0;	/*	 * All the following stuff assumes "sockmod" is pushed...	 */	switch (cmd) {	case SVR4_I_NREAD:		DPRINTF(("I_NREAD\n"));		{		    int nread = 0;	/* XXX: is that FIONREAD? */		    if ((error = copyout(&nread, dat, sizeof(nread))) != 0)			    return error;		}		return 0;	case SVR4_I_PUSH:		DPRINTF(("I_PUSH\n"));		return 0;	case SVR4_I_POP:		DPRINTF(("I_POP\n"));		return 0;	case SVR4_I_LOOK:		DPRINTF(("I_LOOK\n"));		return 0;	case SVR4_I_FLUSH:		DPRINTF(("I_FLUSH\n"));		return 0;	case SVR4_I_SRDOPT:		DPRINTF(("I_SRDOPT\n"));		return 0;	case SVR4_I_GRDOPT:		DPRINTF(("I_GRDOPT\n"));		return 0;	case SVR4_I_STR:		DPRINTF(("I_STR\n"));		if ((error = copyin(dat, &ioc, sizeof(ioc))) != 0)			return error;#ifdef DEBUG_SVR4		if ((error = svr4_showioc(">", &ioc)) != 0)			return error;#endif /* DEBUG_SVR4 */		switch (ioc.cmd & 0xff00) {		case SVR4_SIMOD:			if ((error = svr4_sockmod(fp, &ioc, p)) != 0)				return error;			break;		case SVR4_TIMOD:			if ((error = svr4_timod(fp, &ioc, p)) != 0)				return error;			break;		default:			DPRINTF(("Unimplemented module %c %d\n",				 (char) (cmd >> 8), cmd & 0xff));			return 0;		}#ifdef DEBUG_SVR4		if ((error = svr4_showioc("<", &ioc)) != 0)			return error;#endif /* DEBUG_SVR4 */		return copyout(&ioc, dat, sizeof(ioc));	case SVR4_I_SETSIG:		DPRINTF(("I_SETSIG\n"));		return 0;	case SVR4_I_GETSIG:		DPRINTF(("I_GETSIG\n"));		return EINVAL;	case SVR4_I_FIND:		DPRINTF(("I_FIND\n"));		/*		 * Here we are not pushing modules really, we just		 * pretend all are present		 */		*retval = 1;		return 0;	case SVR4_I_LINK:		DPRINTF(("I_LINK\n"));		return 0;	case SVR4_I_UNLINK:		DPRINTF(("I_UNLINK\n"));		return 0;	case SVR4_I_ERECVFD:		DPRINTF(("I_ERECVFD\n"));		return 0;	case SVR4_I_PEEK:		DPRINTF(("I_PEEK\n"));		return 0;	case SVR4_I_FDINSERT:		DPRINTF(("I_FDINSERT\n"));		return 0;	case SVR4_I_SENDFD:		DPRINTF(("I_SENDFD\n"));		return 0;	case SVR4_I_RECVFD:		DPRINTF(("I_RECVFD\n"));		return 0;	case SVR4_I_SWROPT:		DPRINTF(("I_SWROPT\n"));		return 0;	case SVR4_I_GWROPT:		DPRINTF(("I_GWROPT\n"));		return 0;	case SVR4_I_LIST:		DPRINTF(("I_LIST\n"));		return 0;	case SVR4_I_PLINK:		DPRINTF(("I_PLINK\n"));		return 0;	case SVR4_I_PUNLINK:		DPRINTF(("I_PUNLINK\n"));		return 0;	case SVR4_I_SETEV:		DPRINTF(("I_SETEV\n"));		return 0;	case SVR4_I_GETEV:		DPRINTF(("I_GETEV\n"));		return 0;	case SVR4_I_STREV:		DPRINTF(("I_STREV\n"));		return 0;	case SVR4_I_UNSTREV:		DPRINTF(("I_UNSTREV\n"));		return 0;	case SVR4_I_FLUSHBAND:		DPRINTF(("I_FLUSHBAND\n"));		return 0;	case SVR4_I_CKBAND:		DPRINTF(("I_CKBAND\n"));		return 0;	case SVR4_I_GETBAND:		DPRINTF(("I_GETBANK\n"));		return 0;	case SVR4_I_ATMARK:		DPRINTF(("I_ATMARK\n"));		return 0;	case SVR4_I_SETCLTIME:		DPRINTF(("I_SETCLTIME\n"));		return 0;	case SVR4_I_GETCLTIME:		DPRINTF(("I_GETCLTIME\n"));		return 0;	case SVR4_I_CANPUT:		DPRINTF(("I_CANPUT\n"));		return 0;	default:		DPRINTF(("unimpl cmd = %x\n", cmd));		break;	}	return 0;}