⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xdrwtx.c

📁 VXWORKS源代码
💻 C
📖 第 1 页 / 共 5 页
字号:
	return (FALSE);    if (!xdr_WTX_TOOL_DESC (xdrs, &objp->wtxToolDesc))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MSG_TS_INFO - target server information**/LOCAL bool_t xdr_WTX_MSG_TS_INFO     (    XDR *		xdrs,    WTX_MSG_TS_INFO *	objp,    int			msgVersion    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_WTX_TGT_LINK_DESC (xdrs, &objp->tgtLinkDesc))	return (FALSE);    if (!xdr_WTX_TGT_INFO (xdrs, &objp->tgtInfo, msgVersion))	return (FALSE);    if (!xdr_pointer (xdrs, (char **)&objp->pWtxToolDesc, 		      sizeof (WTX_TOOL_DESC), xdr_WTX_TOOL_DESC))	return (FALSE);    if (!xdr_WRAPSTRING (xdrs, &objp->version))		return (FALSE);    if (!xdr_WRAPSTRING (xdrs, &objp->userName))		return (FALSE);    if (!xdr_WRAPSTRING (xdrs, &objp->startTime))		return (FALSE);    if (!xdr_WRAPSTRING (xdrs, &objp->accessTime))		return (FALSE);    if (!xdr_WRAPSTRING (xdrs, &objp->lockMsg))		return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MSG_TS_INFO_V1 - target server information**/bool_t xdr_WTX_MSG_TS_INFO_V1    (    XDR *		xdrs,    WTX_MSG_TS_INFO *	objp    )    {    return xdr_WTX_MSG_TS_INFO (xdrs, objp, 1);    }/********************************************************************************* xdr_WTX_MSG_TS_INFO_V2 - target server information**/bool_t xdr_WTX_MSG_TS_INFO_V2    (    XDR *		xdrs,    WTX_MSG_TS_INFO *	objp    )    {    return xdr_WTX_MSG_TS_INFO (xdrs, objp, 2);    }/********************************************************************************* xdr_WTX_MSG_TS_LOCK - lock target server**/bool_t xdr_WTX_MSG_TS_LOCK     (    XDR *	  xdrs,    WTX_MSG_TS_LOCK * objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->lockType))		return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MSG_TS_UNLOCK - unlock target server**/bool_t xdr_WTX_MSG_TS_UNLOCK     (    XDR *	  xdrs,    WTX_MSG_TS_UNLOCK * objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_bool (xdrs, (bool_t *)&objp->force))		return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_MEM_COPY_ALLOC - allocate space and decode a MEM_COPY stucture** This function decodes or frees the MEM_COPY structure protocol and* allocate space to copy the data area referenced by the MEM_COPY* structure.  The start address is handled by the source field and the size* by numBytes. At the decoding time, the data are decoded and saved in a* memory area allocated.  This function is needed to hanlde WTX_MEM_WRITE* requests that use a target address as the destination pointer. In this* case we must first copy the data into the target server before forwarding* them to the target.* * RETURNS:  TRUE if it succeeds, FALSE otherwise.*/bool_t xdr_MEM_COPY_ALLOC    (    XDR *	xdrs,    WTX_MSG_MEM_COPY_DESC *	objp    )    {    char * buff;	/* buffer where to decode data */    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->source))	return (FALSE);    if (!xdr_TGT_ADDR_T (xdrs, &objp->destination))	return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->numBytes))	return (FALSE);    switch (xdrs->x_op) 	{    	case XDR_DECODE:            {						 /* export block */	    if ((buff = (char *)malloc (objp->numBytes)) == NULL)	        return (FALSE);	    if (!xdr_opaque (xdrs, (char *)buff, objp->numBytes))	        return (FALSE);            /* 	     * Save the allocated buffer address in objp->source for	     * later use by the target server.	     */	    objp->source = (u_int) buff;	    return (TRUE);	    }    	case XDR_ENCODE:				    return (FALSE);			/* encoding not supported */    	case XDR_FREE:				/* free memory */	    return (TRUE);	}    return (FALSE);    }/********************************************************************************* xdr_MEM_WIDTH_COPY_ALLOC - allocate space and decode a MEM_COPY stucture** This function decodes or frees the MEM_COPY structure protocol and* allocate space to copy the data area referenced by the MEM_COPY* structure.  The start address is handled by the source field and the size* by numBytes. At the decoding time, the data are decoded and saved in a* memory area allocated.  This function is needed to hanlde WTX_MEM_WRITE* requests that use a target address as the destination pointer. In this* case we must first copy the data into the target server before forwarding* them to the target.** RETURNS:  TRUE if it succeeds, FALSE otherwise.*/bool_t xdr_MEM_WIDTH_COPY_ALLOC    (    XDR *                             xdrs,    WTX_MSG_MEM_WIDTH_COPY_DESC *     objp    )    {    char * buff;        /* buffer where to decode data */    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))        return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->source))        return (FALSE);    if (!xdr_TGT_ADDR_T (xdrs, &objp->destination))        return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->numBytes))        return (FALSE);    if (!xdr_u_char (xdrs, &objp->width))        return (FALSE);    switch (xdrs->x_op)        {        case XDR_DECODE:            {                                            /* export block */            if ((buff = (char *)malloc (objp->numBytes)) == NULL)                return (FALSE);            if (!xdr_opaque (xdrs, (char *)buff, objp->numBytes))                return (FALSE);            /*             * Save the allocated buffer address in objp->source for             * later use by the target server.             */            objp->source = (u_int) buff;            return (TRUE);            }        case XDR_ENCODE:            return (FALSE);                     /* encoding not supported */        case XDR_FREE:                          /* free memory */            return (TRUE);        }    return (FALSE);    }/********************************************************************************* xdr_WTX_MSG_TOOL_ID - WTX tool identifier**/bool_t xdr_WTX_MSG_TOOL_ID     (    XDR *        	xdrs,    WTX_MSG_TOOL_ID *	objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MSG_KILL_DESC - WTX kill operation descriptor**/bool_t xdr_WTX_MSG_KILL_DESC     (    XDR *        	xdrs,    WTX_MSG_KILL_DESC * objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->request))	return (FALSE);    if (!xdr_WTX_VALUE (xdrs, &objp->arg))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_EVENT - WTX**/bool_t xdr_WTX_EVENT     (    XDR *        xdrs,    WTX_EVENT * objp    )    {    if (!xdr_enum (xdrs, (enum_t *)&objp->eventType))	return (FALSE);    if (!xdr_TGT_ARG_T (xdrs, &objp->eventArg))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_ACTION - WTX**/bool_t xdr_WTX_ACTION     (    XDR *        xdrs,    WTX_ACTION * objp    )    {    if (!xdr_enum (xdrs, (enum_t *)&objp->actionType))	return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->actionArg))	return (FALSE);    if (!xdr_TGT_ADDR_T (xdrs, &objp->callRtn))	return (FALSE);    if (!xdr_TGT_ARG_T (xdrs, &objp->callArg))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_CONTEXT - WTX context**/bool_t xdr_WTX_CONTEXT     (    XDR *        xdrs,    WTX_CONTEXT * objp    )    {    if (!xdr_enum (xdrs, (enum_t *)&objp->contextType))	return (FALSE);    if (!xdr_WTX_CONTEXT_ID_T (xdrs, &objp->contextId))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MSG_CONTEXT - WTX context message**/bool_t xdr_WTX_MSG_CONTEXT     (    XDR *        xdrs,    WTX_MSG_CONTEXT * objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_enum (xdrs, (enum_t *)&objp->contextType))	return (FALSE);    if (!xdr_WTX_CONTEXT_ID_T (xdrs, &objp->contextId))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_EVTPT - WTX**/bool_t xdr_WTX_EVTPT     (    XDR *        xdrs,    WTX_EVTPT * objp    )    {    if (!xdr_WTX_EVENT (xdrs, &objp->event))	return (FALSE);    if (!xdr_WTX_CONTEXT (xdrs, &objp->context))	return (FALSE);    if (!xdr_WTX_ACTION (xdrs, &objp->action))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MSG_EVTPT_DESC - WTX**/bool_t xdr_WTX_MSG_EVTPT_DESC     (    XDR *        xdrs,    WTX_MSG_EVTPT_DESC * objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_WTX_EVTPT (xdrs, &objp->wtxEvtpt))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MSG_EVTPT_LIST - eventpoint list**/bool_t xdr_WTX_MSG_EVTPT_LIST     (    XDR *        xdrs,    WTX_MSG_EVTPT_LIST * objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->nEvtpt))	return (FALSE);    if (!xdr_array (xdrs, (char **)&objp->pEvtpt, (u_int *)&objp->nEvtpt, 		    ~0, sizeof (WTX_EVTPT), xdr_WTX_EVTPT))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MEM_XFER - allocate space and decode a WTX_MEM_XFER stucture** This function decodes or frees the WTX_MEM_XFER structure and* allocate space to copy the data area referenced by the WTX_MEM_XFER* structure.  The start address is handled by the source field and the size* by numBytes. At the decoding time, the data are decoded and saved in a* memory area allocated.  * * RETURNS:  TRUE if it succeeds, FALSE otherwise.*/bool_t xdr_WTX_MEM_XFER    (    XDR *		xdrs,    WTX_MEM_XFER *	objp    )    {    char * buff;	/* buffer where to decode data */    if (!xdr_u_long (xdrs, (u_long *)&objp->numBytes))	return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->source))	return (FALSE);    if (!xdr_u_long (xdrs, (u_long *)&objp->destination))	return (FALSE);    switch (xdrs->x_op) 	{    	case XDR_DECODE:            {						 /* export block */	    if ((buff = (char *) malloc (objp->numBytes)) == NULL)	        return (FALSE);	    if (!xdr_opaque (xdrs, (char *) buff, objp->numBytes))	        return (FALSE);            /* 	     * Save the allocated buffer address in objp->destination for	     * later use by the client.	     */	    objp->source = (char *) buff;	    return (TRUE);	    }    	case XDR_ENCODE:				    if (!xdr_opaque (xdrs, (char *) objp->source, objp->numBytes))	        return (FALSE);	    else		return (TRUE);    	case XDR_FREE:				/* free memory */	    {	    free (objp->source);	    return (TRUE);	    }	}    return (FALSE);    }/********************************************************************************* xdr_WTX_MSG_MEM_XFER_DESC - memory set descriptor**/bool_t xdr_WTX_MSG_MEM_XFER_DESC     (    XDR *          xdrs,    WTX_MSG_MEM_XFER_DESC * objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_WTX_MEM_XFER (xdrs, &objp->memXfer))	return (FALSE);    return (TRUE);    }/********************************************************************************* xdr_WTX_MSG_REG_WRITE - code, decode or free the WTX_MSG_REG_WRITE structure. ** This function codes, decodes or frees the WTX_MSG_REG_WRITE structure.** RETURNS: TRUE if it succeeds, FALSE otherwise.*/bool_t xdr_WTX_MSG_REG_WRITE    (    XDR *	xdrs,    WTX_MSG_REG_WRITE *	objp    )    {    if (!xdr_WTX_CORE (xdrs, &objp->wtxCore))	return (FALSE);    if (!xdr_enum (xdrs, (enum_t *)&objp->regSetType))	return (FALSE);    if (!xdr_WTX_CONTEXT (xdrs, &objp->context))	return (FALSE);    if (!xdr_WTX_MEM_XFER (xdrs, &objp->memXfer))	return (FALSE);    return (TRUE);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -