xref: /csrg-svn/sys/vax/datakit/dkcmc.h (revision 38624)
1*38624Skarels /*
2*38624Skarels  *	datakit common-control interface definitions
3*38624Skarels  *		@(#)dkcmc.h	1.3 Garage 84/03/27
4*38624Skarels  */
5*38624Skarels 
6*38624Skarels 
7*38624Skarels /*
8*38624Skarels  *  protocol codes generated by driver
9*38624Skarels  */
10*38624Skarels #define	T_SRV		1	/* service request */
11*38624Skarels #define	  D_REINIT	  7	/* re-init after splice */
12*38624Skarels 
13*38624Skarels #define T_CHG		3	/* status change to/from cmc */
14*38624Skarels #define   D_CLOSE	  1	/* close a channel */
15*38624Skarels #define   D_ISCLOSED	  2	/* channel is closed */
16*38624Skarels #define   D_CLOSEALL	  3	/* close all channels */
17*38624Skarels #define   D_SPLICE	  4	/* splice two calls together */
18*38624Skarels 
19*38624Skarels #define T_LSTNR		4	/* keep-alive message */
20*38624Skarels 
21*38624Skarels #define T_REPLY		2	/* reply to channel setup */
22*38624Skarels #define   D_OK		  1	/* setup OK */
23*38624Skarels #define   D_OPEN	  2	/* channel now open */
24*38624Skarels #define   D_FAIL	  3	/* setup failed */
25*38624Skarels 
26*38624Skarels #define T_RESTART	8	/* cmc crashed, we should init circuit */
27*38624Skarels 
28*38624Skarels struct	lmsg	{
29*38624Skarels 	char	type ;		/* message type T_??? */
30*38624Skarels 	char	srv ;		/* message code D_??? */
31*38624Skarels 	short	param0 ;		/* various aditional info */
32*38624Skarels 	short	param1 ;
33*38624Skarels 	short	param2 ;
34*38624Skarels 	short	param3 ;
35*38624Skarels 	short	param4 ;
36*38624Skarels } ;
37*38624Skarels 
38*38624Skarels #define CMCFMT	"bbsssss"
39*38624Skarels #define	CMCSIZ	12
40*38624Skarels 
41*38624Skarels /*
42*38624Skarels  *	active setup requests
43*38624Skarels  *	(used in dkctl.c)
44*38624Skarels  */
45*38624Skarels 
46*38624Skarels struct dksetupreq {
47*38624Skarels 	int	(*rq_endfcn)() ;
48*38624Skarels 	caddr_t	rq_endparm ;
49*38624Skarels 	struct lmsg rq_msg ;
50*38624Skarels };
51