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

📄 sysap.h

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 H
📖 第 1 页 / 共 2 页
字号:
#define	Lboff			ov3.lboff    struct _bhandle lbhandle;		/* Local buffer handle		     */    struct _bhandle rbhandle;		/* Remote buffer handle		     */} CSB;typedef struct _cib	{		/* Connection Information Block	     */    struct _connid lconnid;		/* Local connection ID		     */    struct _connid rconnid;		/* Remote connection ID		     */    u_short	   cstate; 		/* Connection state 		     */#define	CS_CLOSED		 0	/*  Connection is closed	     */#define	CS_LISTEN		 1	/*  Listening for a connection	     */#define	CS_OPEN			 2	/*  Connection is open		     */#define	CS_DISCONN_ACK		 3	/*  Disconnect sent and acknowledged */#define	CS_DISCONN_REC		 4	/*  Request for disconnect received  */#define	CS_DISCONN_SNT		 5	/*  Disconnect request sent	     */#define	CS_DISCONN_MTCH		 6	/*  Both SYSAPs have sent disconnects*/#define	CS_CONN_SNT		 7	/*  Connection request sent	     */#define	CS_CONN_ACK		 8	/*  Connection sent and acknowledged */#define	CS_CONN_REC		 9	/*  Request for connection received  */#define	CS_ACCEPT_SNT		10	/*  Accept request sent		     */#define	CS_REJECT_SNT		11	/*  Reject request sent		     */#define	CS_PATH_FAILURE		12	/*  Path failed			     */    u_short	   cbstate;		/* CB state			     */#define	CB_NOT_WAIT		 0	/*  Not waiting at all		     */#define	CB_CONN_PEND		 1	/*  Waiting to send a connect request*/#define	CB_ACCEPT_PEND		 2	/*  Waiting to send an accept request*/#define	CB_REJECT_PEND		 3	/*  Waiting to send a reject request */#define	CB_DISCONN_PEND		 4	/*  Waiting to send disconn request  */#define	CB_CREDIT_PEND		 5	/*  Waiting to send a credit request */#define	CB_MAX_PEND	CB_CREDIT_PEND	/*  Maximum pending request number   */#define	Dirid		cbstate		/* Directory ID ( Listeners Only )   */    struct    	{			/* Connection status flags	     */	u_short	cwait		:  1;	/*  SYSAP waiting for credits        */	u_short	abort_fork	:  1;	/*  Connection abortion fork	     */	u_short	disconnect	:  1;	/*  Disconnect -> conn rejection     */	u_short	 		: 13;	/*  Unused			     */    } status;    u_short	   ntransfers;		/* Number of transfers in progress   */    u_long	   reason; 		/* Reject / Disconnect reason	     */    u_char	   rproc_name[ NAME_SIZE ];/* Remote SYSAP name		     */    u_char	   lproc_name[ NAME_SIZE ];/* Local SYSAP name		     */    u_char	   lconn_data[ DATA_SIZE ];/* Local SYSAP connection data    */    u_char	   rconn_data[ DATA_SIZE ];/* Remote SYSAP connection data   */    u_long	   reserved_credit;	/* Number credits reserved by SYSAP  */    u_long	   snd_credit;		/* Current send credit		     */    u_long	   min_snd_credit;	/* Local SYSAP's credit requirement  */    u_long	   rec_credit;		/* Send credit held by remote SYSAP  */    u_long	   init_rec_credit;	/* Remote SYSAP's maximum credit     */    u_long	   min_rec_credit;	/* Remote SYSAP's credit requirement */    u_long	   pend_rec_credit;	/* Credit pending extension	     */    u_long	   dg_credit;		/* Number of local datagram credits  */    u_long	   dgs_snt;		/* Number of datagrams sent	     */    u_long	   dgs_rec;		/* Number of datagrams received	     */    u_long	   dgs_discard;		/* Number of datagrams discarded     */    u_long	   msgs_snt;		/* Number of messages sent	     */    u_long	   msgs_rec;		/* Number of messages received	     */    u_long	   sdatas_snt;		/* Number of send datas sent	     */    u_long	   bytes_snt;		/* Number of bytes sent 	     */    u_long	   rdatas_snt;		/* Number of request datas sent	     */    u_long	   bytes_req;		/* Number of bytes requested	     */    u_long	   bytes_mapped;	/* Number of bytes mapped	     */} CIB;typedef struct	{			/* Connection Management Service Blk */    void	( *control )();		/* Connection control routine	     */    void	( *msg_event )();	/* Msg event notification routine    */    void	( *dg_event )();	/* Dg event notification routine     */    u_char	*aux;			/* Auxiliary structure pointer	     */    c_scaaddr	sysid;			/* System identification number	     */    u_short			: 16;    c_scaaddr	rport_addr;		/* Remote port station address	     */    u_short			: 16;    u_long	lport_name;		/* Local port device name	     */    u_long	blockid;		/* Block data transfer id field	     */    struct _connid connid;		/* Identification of connection	     */    u_char	rproc_name[ NAME_SIZE ];/* Remote SYSAP name( blank filled ) */    u_char	lproc_name[ NAME_SIZE ];/* Local SYSAP name( blank filled )  */    u_char	conn_data[ DATA_SIZE ];	/* Connection data		     */    u_short	status;			/* Status			     */#define	Reason  status			/*  Reject / Disconnect reason	     */    u_short	init_dg_credit;		/* Initial datagram credit	     */    u_short	min_snd_credit;		/* SYSAP minimum credit requirement  */    u_short	init_rec_credit;	/* Initial sequenced message credit  */#define	Init_snd_credit init_rec_credit	/*  Initial send credit extended     */} CMSB;typedef struct	{			/* Information Service Block	     */    c_scaaddr	   sysid;		/* Current system ID number 	     */    u_short			: 16;    c_scaaddr	   rport_addr;		/* Current remote port address	     */    u_short			: 16;    u_long	   lport_name;		/* Current local port device name    */    struct _connid connid;		/* Current connection ID	     */    c_scaaddr	   next_sysid;		/* Next system identification number */    u_short			: 16;    c_scaaddr	   next_rport_addr;	/* Next remote port address	     */    u_short			: 16;    u_long	   next_lport_name;	/* Next local port device name	     */    struct _connid next_connid;		/* Next connection ID		     */} ISB;typedef struct _lpib	{		/* Local Port Information Block	     */    u_short	nerrs;			/* Number of errors on port	     */    u_short	nreinits;		/* Number of re-inits on port	     */    struct	{			/* Local port type		     */	u_long	hwtype		:  8;	/*  Hardware port type		     */	u_long	swtype		:  8;	/*  Software port type		     */	u_long	ictype		:  8;	/*  Interconnect type		     */	u_long			:  7;	/*  Unused			     */	u_long	dual_path	:  1;	/*  0/1 for single / dual path port  */    } type;#define	HPT_UQSSP		 1	/*  UQSSP storage port		     */#define	HPT_CI780		 2	/*  CI780 communications port	     */#define	HPT_CI750		 3	/*  CI750 communications port	     */#define	HPT_HSC			 4	/*  HSC communications port	     */#define	HPT_CIBCI		 5	/*  CIBCI communications port	     */#define	HPT_KL10		 6	/*  KL10 communications port	     */#define	HPT_CIBCA_BA		10	/*  CIBCA-BA communications port     */#define	HPT_CIBCA_AA		11	/*  CIBCA-AA communications port     */#define	HPT_BVPSSP		12	/*  BVPSSP storage port		     */#define	HPT_CIXCD		14	/*  CIXCD communications port	     */#define	HPT_SII			32	/*  SII communications port	     */#define	HPT_KFQSA		33	/*  KFQSA storage port		     */#define	HPT_SHAC		34	/*  SHAC communications port	     */#define	HPT_KFXSA		35	/*  KFXSA storage port		     */#define	HPT_CIKMF		36	/*  Dual CI communications ports     */#define	HPT_RF71		48	/*  RF71 disk storage port	     */#define	HPT_RF30		49	/*  RF30 disk storage port	     */#define	HPT_RF31		50	/*  RF31 disk storage port	     */#define	HPT_TF70		64	/*  TF70 tape storage port	     */#define	HPT_TF85		65	/*  TF85 tape storage port	     */#define SPT_UQSSP		 1	/*  UQSSP software port		     */#define SPT_CI			 2	/*  CI software port		     */#define SPT_BVPSSP		 3	/*  BVPSSP software port	     */#define SPT_MSI			 4	/*  MSI software port		     */#define ICT_SBICMI		 0	/*  SBI or CMI interconnect	     */#define ICT_BI			 1	/*  BI interconnect		     */#define ICT_XMI			 2	/*  XMI interconnect		     */#define ICT_UB			 3	/*  Unibus interconnect		     */#define ICT_QB			 4	/*  Q-Bus interconnect		     */#define ICT_SII			 5	/*  SII interconnect		     */#define ICT_SHAC		 6	/*  SHAC interconnect		     */    u_long	reason;			/* Reason for port failure	     */    u_long	name;			/* Local port name		     */    c_scaaddr	addr;			/* Local Port address		     */    struct {        u_short	 dm	: 1;		/* Double map port into Vaxmap -MIPS */        u_short	 expl	: 1;		/* Explicit command addr. port       */        u_short		: 14;    } flags;    union		 {		/* PD dependent fields		     */	struct  _gvplpib gvp;		/*  Generic Vaxport specific fields  */	struct  _msilpib msi;		/*  MSI specific fields		     */	struct  _uqlpib	 uq;		/*  UQ specific fields		     */    } pd;    union		   {		/* PPD dependent fields		     */	struct  _cippdlpib cippd;	/*  CI PPD specific fields	     */    } ppd;} LPIB;typedef struct	{			/* Maintenance Service Block	     */    u_long	lport_name;		/* Local port device name	     */    c_scaaddr	rport_addr;		/* Remote port station address	     */    u_short			: 16;    union	{			/* First overlaid field		     */	u_long	force;			/*  Force remote reset		     */	u_long	startaddr;		/*  Remote system start address	     */	u_char	lproc_name[ NAME_SIZE ];/*  Local SYSAP name( blank filled ) */    } ov1;#define	Force		ov1.force#define	Lproc_name	ov1.lproc_name#define	Startaddr	ov1.startaddr} MSB;typedef struct _pib	{		/* Path Information Block	     */    u_long	lport_name;		/* Local port device name	     */    c_scaaddr	rport_addr;		/* Remote port station address	     */    u_short	state;			/* Path state			     */#define	PS_CLOSED		 0	/*  Newly created PB		     */#define	PS_START_SNT		 1	/*  START PPD datagram sent	     */#define PS_START_REC		 2	/*  START PPD datagram received	     */#define	PS_STACK_SNT		 3	/*  STACK PPD datagram sent	     */#define	PS_OPEN			 4	/*  Path open			     */#define	PS_PATH_FAILURE		 5	/*  Path has failed		     */#define	PS_MAX_STATE	PS_PATH_FAILURE	/*  Maximum path state number	     */    struct	{			/* Remote port type		     */	u_long	hwtype		:  8;	/*  Hardware port type		     */	u_long			: 23;	/*  Unused			     */	u_long	dual_path	:  1;	/*  0/1 for single / dual path port  */    } type;    u_long	reason;			/* Reason for path failure	     */    u_short	nconns;			/* Number of connections 	     */    u_short	duetime;		/* SCS response due time( seconds )  */    struct	{			/* Path status flags		     */	u_short	sanity		:  1;	/*  Sanity timer enabled flag	     */	u_short			: 15;	/*  Unused			     */    } status;    u_short	protocol;		/* Remote PPD protocol level	     */    u_long	path_pktmult;		/* Path data pkt multiple value	     */    union		{		/* PD dependent fields		     */	struct _gvppib	gvp;		/*  Generic Vaxport specific fields  */	struct _msipib	msi;		/*  MSI specific fields		     */    } pd;} PIB;typedef struct _sib	{		/* System Information Block	     */    c_scaaddr	sysid;			/* System identification number	     */    u_short 	npaths;			/* Number paths to system	     */    u_short 	max_dg;			/* Maximum size of application dg    */    u_short 	max_msg;		/* Maximum size of application msg   */    u_long	swtype;			/* Software type 		     */    u_long	swver;			/* Software version		     */    u_quad	swincrn;		/* Software incarnation number	     */    u_long	hwtype;			/* Hardware type		     */    u_dodec	hwver;			/* Hardware version		     */    u_char	node_name[ NODENAME_SIZE ];/* SCA node name		     */} SIB;typedef struct	{			/* SCS Information Block	     */    u_long	max_gvpbds;		/* Maximum number of GVPBDs	     */    u_long	max_conns;		/* Maximum number of connections     */    u_long	cushion;		/* SCS send credit cushion	     */    u_long	gvp_qretry;		/* GVP queuing failure retry count   */    u_short	gvp_free_bds;		/* Number of free GVPBDs	     */    u_short	free_cbvtes;		/* Number of free CBVTEs	     */    u_short	nconns;			/* Number of logical SCS connections */    u_short	nlisteners;		/* Number of listeners		     */    u_short	npaths;			/* Number of paths		     */    u_short	nsystems;		/* Number of systems		     */    u_short	nlports;		/* Number of local ports	     */    u_short	sanity;			/* SCS sanity timer		     */    struct _sib	system;			/* Local system information	     */} SCSIB;

⌨️ 快捷键说明

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