rpc_cut.h

来自「Ubuntu packages of security software。 相」· C头文件 代码 · 共 119 行

H
119
字号
/* * Copyright (c) 1999, 2000 *	Politecnico di Torino.  All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that: (1) source code distributions * retain the above copyright notice and this paragraph in its entirety, (2) * distributions including binary code include the above copyright notice and * this paragraph in its entirety in the documentation or other materials * provided with the distribution, and (3) all advertising materials mentioning * features or use of this software display the following acknowledgement: * ``This product includes software developed by the Politecnico * di Torino, and its contributors.'' Neither the name of * the University nor the names of its contributors may be used to endorse * or promote products derived from this software without specific prior * written permission. * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */#define u_long unsigned long#define u_int unsigned int#define u_short unsigned short#define enum_t int#define caddr_t char*struct opaque_auth {	enum_t	oa_flavor;		/* flavor of auth */	caddr_t	oa_base;		/* address of more auth stuff */	u_int	oa_length;		/* not to exceed MAX_AUTH_BYTES */};struct accepted_reply {	struct opaque_auth	ar_verf;	enum accept_stat	ar_stat;	union {		struct {			u_long	low;			u_long	high;		} AR_versions;		/*struct {			caddr_t	where;			xdrproc_t proc;		} AR_results;		/* and many other null cases */	} ru;#define	ar_results	ru.AR_results#define	ar_vers		ru.AR_versions};struct rejected_reply {	enum reject_stat rj_stat;	union {		struct {			u_long low;			u_long high;		} RJ_versions;		enum auth_stat RJ_why;  /* why authentication did not work */	} ru;#define	rj_vers	ru.RJ_versions#define	rj_why	ru.RJ_why};struct reply_body {	enum reply_stat rp_stat;	union {		struct accepted_reply RP_ar;		struct rejected_reply RP_dr;	} ru;#define	rp_acpt	ru.RP_ar#define	rp_rjct	ru.RP_dr};struct call_body {	u_long cb_rpcvers;	/* must be equal to two */	u_long cb_prog;	u_long cb_vers;	u_long cb_proc;	struct opaque_auth cb_cred;	struct opaque_auth cb_verf; /* protocol specific - provided by client */};struct rpc_msg {	u_long			rm_xid;	enum msg_type		rm_direction;	union {		struct call_body RM_cmb;		struct reply_body RM_rmb;	} ru;#define	rm_call		ru.RM_cmb#define	rm_reply	ru.RM_rmb};#define	MSG_ACCEPTED 0#define MSG_DENIED 1#define SUCCESS 0#define PROG_UNAVAIL 1#define PROG_MISMATCH 2#define PROC_UNAVAIL 3#define GARBAGE_ARGS 4#define SYSTEM_ERR 5#define PMAPPORT		((u_short)111)#define PMAPPROG		((u_long)100000)#define PMAPVERS		((u_long)2)#define PMAPVERS_PROTO		((u_long)2)#define PMAPVERS_ORIG		((u_long)1)#define PMAPPROC_NULL		((u_long)0)#define PMAPPROC_SET		((u_long)1)#define PMAPPROC_UNSET		((u_long)2)#define PMAPPROC_GETPORT	((u_long)3)#define PMAPPROC_DUMP		((u_long)4)#define PMAPPROC_CALLIT		((u_long)5)#define CALL 0#define REPLY 1

⌨️ 快捷键说明

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