Пример #1
0
/*
 * Verify validity of device descriptor
 */
EXPORT ER check_devdesc( ID dd, UINT mode, OpnCB **p_opncb )
{
	OpnCB	*opncb;

	if ( dd < 1 || dd > MaxOpnDev ) {
		return E_ID;
	}
	opncb = OPNCB(dd);
	if ( opncb->resid <= 0 ) {
		return E_ID;
	}

	if ( opncb->resid != tk_get_rid(TSK_SELF) ) {
		return E_OACV;
	}

	if ( mode != 0 ) {
		if ( (opncb->omode & mode) == 0 ) {
			return E_OACV;
		}
	}

	*p_opncb = opncb;
	return E_OK;
}
Пример #2
0
/*
 * Verify validity of device descriptor
 */
EXPORT ER knl_check_devdesc( ID dd, UINT mode, OpnCB **p_opncb )
{
	OpnCB	*opncb;

	if ( dd < 1 || dd > CFN_MAX_OPNDEV ) {
		return E_ID;
	}
	opncb = OPNCB(dd);
	if ( opncb->resid == 0 ) {
		return E_ID;
	}

	if ( mode != 0 ) {
		if ( (opncb->omode & mode) == 0 ) {
			return E_OACV;
		}
	}

	*p_opncb = opncb;
	return E_OK;
}