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

📄 remdeb_xdr.c

📁 RTEMS (Real-Time Executive for Multiprocessor Systems) is a free open source real-time operating sys
💻 C
📖 第 1 页 / 共 2 页
字号:
/* * Please do not edit this file. * It was generated using rpcgen. */#include "remdeb.h"#define RTEMS_PORT 2071#define RTEMS_BACK_PORT 2073bool_txdr_rpc_type (XDR *xdrs, rpc_type *objp){	 if (!xdr_enum (xdrs, (enum_t *) objp))		 return FALSE;	return TRUE;}bool_txdr_UDP_MSG (XDR *xdrs, UDP_MSG *objp){	 if (!xdr_u_char (xdrs, &objp->type))		 return FALSE;	 if (!xdr_u_char (xdrs, &objp->msg_num))		 return FALSE;	 if (!xdr_u_short (xdrs, &objp->spec))		 return FALSE;	 if (!xdr_long (xdrs, &objp->pid))		 return FALSE;	 if (!xdr_u_long (xdrs, &objp->context))		 return FALSE;	return TRUE;}/* * Sun request values for the remote ptrace system call */bool_txdr_ptracereq (XDR *xdrs, ptracereq *objp){	 if (!xdr_enum (xdrs, (enum_t *) objp))		 return FALSE;	return TRUE;}bool_txdr_xdr_regs (XDR *xdrs, xdr_regs *objp){	register int32_t *buf;	int i;	if (xdrs->x_op == XDR_ENCODE) {		buf = XDR_INLINE (xdrs, (3 +  8  + 8 )* BYTES_PER_XDR_UNIT);		if (buf == NULL) {			 if (!xdr_vector (xdrs, (char *)objp->r_dreg, 8,				sizeof (int), (xdrproc_t) xdr_int))				 return FALSE;			 if (!xdr_vector (xdrs, (char *)objp->r_areg, 8,				sizeof (int), (xdrproc_t) xdr_int))				 return FALSE;			 if (!xdr_int (xdrs, &objp->r_sr))				 return FALSE;			 if (!xdr_int (xdrs, &objp->r_pc))				 return FALSE;			 if (!xdr_int (xdrs, &objp->r_vec))				 return FALSE;		} else {			{				register int *genp;				for (i = 0, genp = objp->r_dreg;					i < 8; ++i) {					IXDR_PUT_LONG(buf, *genp++);				}			}			{				register int *genp;				for (i = 0, genp = objp->r_areg;					i < 8; ++i) {					IXDR_PUT_LONG(buf, *genp++);				}			}			IXDR_PUT_LONG(buf, objp->r_sr);			IXDR_PUT_LONG(buf, objp->r_pc);			IXDR_PUT_LONG(buf, objp->r_vec);		}		return TRUE;	} else if (xdrs->x_op == XDR_DECODE) {		buf = XDR_INLINE (xdrs, (3 +  8  + 8 )* BYTES_PER_XDR_UNIT);		if (buf == NULL) {			 if (!xdr_vector (xdrs, (char *)objp->r_dreg, 8,				sizeof (int), (xdrproc_t) xdr_int))				 return FALSE;			 if (!xdr_vector (xdrs, (char *)objp->r_areg, 8,				sizeof (int), (xdrproc_t) xdr_int))				 return FALSE;			 if (!xdr_int (xdrs, &objp->r_sr))				 return FALSE;			 if (!xdr_int (xdrs, &objp->r_pc))				 return FALSE;			 if (!xdr_int (xdrs, &objp->r_vec))				 return FALSE;		} else {			{				register int *genp;				for (i = 0, genp = objp->r_dreg;					i < 8; ++i) {					*genp++ = IXDR_GET_LONG(buf);				}			}			{				register int *genp;				for (i = 0, genp = objp->r_areg;					i < 8; ++i) {					*genp++ = IXDR_GET_LONG(buf);				}			}			objp->r_sr = IXDR_GET_LONG(buf);			objp->r_pc = IXDR_GET_LONG(buf);			objp->r_vec = IXDR_GET_LONG(buf);		}	 return TRUE;	}	 if (!xdr_vector (xdrs, (char *)objp->r_dreg, 8,		sizeof (int), (xdrproc_t) xdr_int))		 return FALSE;	 if (!xdr_vector (xdrs, (char *)objp->r_areg, 8,		sizeof (int), (xdrproc_t) xdr_int))		 return FALSE;	 if (!xdr_int (xdrs, &objp->r_sr))		 return FALSE;	 if (!xdr_int (xdrs, &objp->r_pc))		 return FALSE;	 if (!xdr_int (xdrs, &objp->r_vec))		 return FALSE;	return TRUE;} /*   * Memory data for read/write text or data. The size is in data. The target   * addr is in the addr field.   * Be careful before modifying because this value goes into internal   * pipes and is allocated on stack too. Pipes and/or the stack could   * become too small if this value gets incremented.   */bool_t xdr_xdr_mem(xdrs, objp) XDR *xdrs; struct xdr_mem *objp;{ if (!xdr_u_long(xdrs, &objp->addr)) { return (FALSE); } if (!xdr_u_int(xdrs, &objp->dataNb)) { return(FALSE); } return (xdr_opaque(xdrs, objp->data, objp->dataNb));}bool_txdr_break_type (XDR *xdrs, break_type *objp){	 if (!xdr_enum (xdrs, (enum_t *) objp))		 return FALSE;	return TRUE;}bool_txdr_xdr_break (XDR *xdrs, xdr_break *objp){	register int32_t *buf;	int i;	if (xdrs->x_op == XDR_ENCODE) {		 if (!xdr_u_char (xdrs, &objp->type))			 return FALSE;		 if (!xdr_u_char (xdrs, &objp->thread_spec))			 return FALSE;		buf = XDR_INLINE (xdrs, 4 * BYTES_PER_XDR_UNIT);		if (buf == NULL) {			 if (!xdr_u_short (xdrs, &objp->handle))				 return FALSE;			 if (!xdr_u_long (xdrs, &objp->ee_loc))				 return FALSE;			 if (!xdr_u_long (xdrs, &objp->ee_type))				 return FALSE;			 if (!xdr_u_short (xdrs, &objp->length))				 return FALSE;		} else {		IXDR_PUT_U_SHORT(buf, objp->handle);		IXDR_PUT_U_LONG(buf, objp->ee_loc);		IXDR_PUT_U_LONG(buf, objp->ee_type);		IXDR_PUT_U_SHORT(buf, objp->length);		}		 if (!xdr_u_char (xdrs, &objp->pass_count))			 return FALSE;		 if (!xdr_u_char (xdrs, &objp->curr_pass))			 return FALSE;		buf = XDR_INLINE (xdrs, ( MAX_THRD_BRK ) * BYTES_PER_XDR_UNIT);		if (buf == NULL) {			 if (!xdr_vector (xdrs, (char *)objp->thread_list, MAX_THRD_BRK,				sizeof (u_long), (xdrproc_t) xdr_u_long))				 return FALSE;		} else {			{				register u_long *genp;				for (i = 0, genp = objp->thread_list;					i < MAX_THRD_BRK; ++i) {					IXDR_PUT_U_LONG(buf, *genp++);				}			}		}		return TRUE;	} else if (xdrs->x_op == XDR_DECODE) {		 if (!xdr_u_char (xdrs, &objp->type))			 return FALSE;		 if (!xdr_u_char (xdrs, &objp->thread_spec))			 return FALSE;		buf = XDR_INLINE (xdrs, 4 * BYTES_PER_XDR_UNIT);		if (buf == NULL) {			 if (!xdr_u_short (xdrs, &objp->handle))				 return FALSE;			 if (!xdr_u_long (xdrs, &objp->ee_loc))				 return FALSE;			 if (!xdr_u_long (xdrs, &objp->ee_type))				 return FALSE;			 if (!xdr_u_short (xdrs, &objp->length))				 return FALSE;		} else {		objp->handle = IXDR_GET_U_SHORT(buf);		objp->ee_loc = IXDR_GET_U_LONG(buf);		objp->ee_type = IXDR_GET_U_LONG(buf);		objp->length = IXDR_GET_U_SHORT(buf);		}		 if (!xdr_u_char (xdrs, &objp->pass_count))			 return FALSE;		 if (!xdr_u_char (xdrs, &objp->curr_pass))			 return FALSE;		buf = XDR_INLINE (xdrs, ( MAX_THRD_BRK ) * BYTES_PER_XDR_UNIT);		if (buf == NULL) {			 if (!xdr_vector (xdrs, (char *)objp->thread_list, MAX_THRD_BRK,				sizeof (u_long), (xdrproc_t) xdr_u_long))				 return FALSE;		} else {			{				register u_long *genp;				for (i = 0, genp = objp->thread_list;					i < MAX_THRD_BRK; ++i) {					*genp++ = IXDR_GET_U_LONG(buf);				}			}		}	 return TRUE;	}	 if (!xdr_u_char (xdrs, &objp->type))		 return FALSE;	 if (!xdr_u_char (xdrs, &objp->thread_spec))		 return FALSE;	 if (!xdr_u_short (xdrs, &objp->handle))		 return FALSE;	 if (!xdr_u_long (xdrs, &objp->ee_loc))		 return FALSE;	 if (!xdr_u_long (xdrs, &objp->ee_type))		 return FALSE;	 if (!xdr_u_short (xdrs, &objp->length))		 return FALSE;	 if (!xdr_u_char (xdrs, &objp->pass_count))		 return FALSE;	 if (!xdr_u_char (xdrs, &objp->curr_pass))		 return FALSE;	 if (!xdr_vector (xdrs, (char *)objp->thread_list, MAX_THRD_BRK,		sizeof (u_long), (xdrproc_t) xdr_u_long))		 return FALSE;	return TRUE;}bool_txdr_thread_name (XDR *xdrs, thread_name *objp){	 if (!xdr_string (xdrs, objp, THREADNAMEMAX))		 return FALSE;	return TRUE;}bool_txdr_KernThread (XDR *xdrs, KernThread *objp){	 if (!xdr_u_int (xdrs, &objp->threadLi))		 return FALSE;	return TRUE;}bool_t xdr_thread_list(xdrs, objp) XDR *xdrs; struct thread_list *objp;{ return (xdr_array(xdrs, (char**)&objp->threads, &objp->nbThread, UTHREAD_MAX, sizeof(KernThread), xdr_KernThread));}bool_txdr_ptrace_addr_data_in (XDR *xdrs, ptrace_addr_data_in *objp){	 if (!xdr_ptracereq (xdrs, &objp->req))		 return FALSE;	switch (objp->req) {	case RPT_SETTHREADREGS:		 if (!xdr_xdr_regs (xdrs, &objp->ptrace_addr_data_in_u.regs))			 return FALSE;		break;	case RPT_SETREGS:		 if (!xdr_xdr_regs (xdrs, &objp->ptrace_addr_data_in_u.regs))			 return FALSE;		break;	case RPT_PSETTHREADREGS:		 if (!xdr_array (xdrs, (char **)&objp->ptrace_addr_data_in_u.pregs.pregs_val, (u_int *) &objp->ptrace_addr_data_in_u.pregs.pregs_len, ~0,			sizeof (u_int), (xdrproc_t) xdr_u_int))			 return FALSE;		break;	case RPT_PSETREGS:		 if (!xdr_array (xdrs, (char **)&objp->ptrace_addr_data_in_u.pregs.pregs_val, (u_int *) &objp->ptrace_addr_data_in_u.pregs.pregs_len, ~0,			sizeof (u_int), (xdrproc_t) xdr_u_int))			 return FALSE;		break;	case RPT_SETTHREADNAME:		 if (!xdr_thread_name (xdrs, &objp->ptrace_addr_data_in_u.name))			 return FALSE;		break;	case RPT_WRITETEXT:		 if (!xdr_xdr_mem (xdrs, &objp->ptrace_addr_data_in_u.mem))			 return FALSE;		break;	case RPT_WRITEDATA:		 if (!xdr_xdr_mem (xdrs, &objp->ptrace_addr_data_in_u.mem))			 return FALSE;		break;	case RPT_SETBREAK:		 if (!xdr_xdr_break (xdrs, &objp->ptrace_addr_data_in_u.breakp))			 return FALSE;		break;	default:		 if (!xdr_u_int (xdrs, &objp->ptrace_addr_data_in_u.address))			 return FALSE;		break;	}	return TRUE;}bool_txdr_ptrace_addr_data_out (XDR *xdrs, ptrace_addr_data_out *objp){	 if (!xdr_ptracereq (xdrs, &objp->req))		 return FALSE;	switch (objp->req) {	case RPT_GETREGS:		 if (!xdr_xdr_regs (xdrs, &objp->ptrace_addr_data_out_u.regs))			 return FALSE;		break;	case RPT_GETTHREADREGS:		 if (!xdr_xdr_regs (xdrs, &objp->ptrace_addr_data_out_u.regs))			 return FALSE;		break;	case RPT_PGETREGS:		 if (!xdr_array (xdrs, (char **)&objp->ptrace_addr_data_out_u.pregs.pregs_val, (u_int *) &objp->ptrace_addr_data_out_u.pregs.pregs_len, ~0,			sizeof (u_int), (xdrproc_t) xdr_u_int))			 return FALSE;		break;	case RPT_PGETTHREADREGS:		 if (!xdr_array (xdrs, (char **)&objp->ptrace_addr_data_out_u.pregs.pregs_val, (u_int *) &objp->ptrace_addr_data_out_u.pregs.pregs_len, ~0,			sizeof (u_int), (xdrproc_t) xdr_u_int))			 return FALSE;		break;	case RPT_THREADLIST:		 if (!xdr_thread_list (xdrs, &objp->ptrace_addr_data_out_u.threads))			 return FALSE;		break;	case RPT_GETTHREADNAME:		 if (!xdr_thread_name (xdrs, &objp->ptrace_addr_data_out_u.name))			 return FALSE;		break;	case RPT_READTEXT:		 if (!xdr_xdr_mem (xdrs, &objp->ptrace_addr_data_out_u.mem))			 return FALSE;		break;	case RPT_GETNAME:		 if (!xdr_xdr_mem (xdrs, &objp->ptrace_addr_data_out_u.mem))			 return FALSE;		break;	case RPT_READDATA:		 if (!xdr_xdr_mem (xdrs, &objp->ptrace_addr_data_out_u.mem))			 return FALSE;		break;	case RPT_GETBREAK:		 if (!xdr_xdr_break (xdrs, &objp->ptrace_addr_data_out_u.breakp))			 return FALSE;		break;	default:		 if (!xdr_u_int (xdrs, &objp->ptrace_addr_data_out_u.addr))			 return FALSE;		break;	}	return TRUE;}bool_txdr_CHAR_DATA (XDR *xdrs, CHAR_DATA *objp){	 if (!xdr_bytes (xdrs, (char **)&objp->CHAR_DATA_val, (u_int *) &objp->CHAR_DATA_len, NET_SAFE))		 return FALSE;	return TRUE;}bool_txdr_one_arg (XDR *xdrs, one_arg *objp){	 if (!xdr_string (xdrs, objp, NET_SAFE))		 return FALSE;	return TRUE;} /* now open_connex() routine which establishes a connection to server */bool_txdr_debug_type (XDR *xdrs, debug_type *objp){	 if (!xdr_enum (xdrs, (enum_t *) objp))		 return FALSE;	return TRUE;

⌨️ 快捷键说明

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