xref: /csrg-svn/sys/netccitt/dll.h (revision 63216)
157019Ssklower /*
257019Ssklower  * Copyright (C) Dirk Husemann, Computer Science Department IV,
357019Ssklower  * 		 University of Erlangen-Nuremberg, Germany, 1990, 1991, 1992
4*63216Sbostic  * Copyright (c) 1992, 1993
5*63216Sbostic  *	The Regents of the University of California.  All rights reserved.
657019Ssklower  *
757019Ssklower  * %sccs.include.redist.c%
857019Ssklower  *
9*63216Sbostic  *	@(#)dll.h	8.1 (Berkeley) 06/10/93
1057019Ssklower  */
1157019Ssklower 
1257019Ssklower /*
1357019Ssklower  * We define the additional PRC_* codes in here
1457019Ssklower  */
1557019Ssklower #ifdef KERNEL
1657019Ssklower #ifndef PRC_IFUP
1757019Ssklower #define PRC_IFUP		   3
1857019Ssklower #endif
1957019Ssklower #define PRC_CONNECT_INDICATION     8
2057019Ssklower #define PRC_CONNECT_REQUEST        9
2157019Ssklower #define PRC_DISCONNECT_REQUEST     10
2257019Ssklower #define PRC_DISCONNECT_INDICATION  11
2357019Ssklower #define PRC_RESET_REQUEST          12
2457019Ssklower #endif
2557019Ssklower 
2657019Ssklower /*
2757019Ssklower  * Data link layer configuration --- basically a copy of the relevant parts
2857019Ssklower  * of x25config, implemented to become a little bit more network
2957019Ssklower  * layer independent. (Probably only used for casting et al.)
3057019Ssklower  */
3157019Ssklower struct dllconfig {
3257019Ssklower        u_short dllcfg_unused0:4,
3357019Ssklower                dllcfg_unused1:4,
3457019Ssklower                dllcfg_trace:1,     /* link level tracing flag */
3557019Ssklower                dllcfg_window:7;    /* link level window size */
3657019Ssklower        u_short dllcfg_xchxid:1,    /* exchange XID (not yet) */
3757019Ssklower                dllcfg_unused2:7;   /* here be dragons */
3857019Ssklower };
3957019Ssklower 
4057019Ssklower struct dll_ctlinfo {
4157019Ssklower 	union {
4257019Ssklower 		struct {
4357019Ssklower 			struct	dllconfig *dctli_up_cfg;
4457019Ssklower 			u_char	dctli_up_lsap;
4557019Ssklower 		} CTLI_UP;
4657019Ssklower 		struct {
4757019Ssklower 			caddr_t dctli_down_pcb;
4857019Ssklower 			struct rtentry *dctli_down_rt;
4957019Ssklower 			struct dllconfig *dctli_down_llconf;
5057019Ssklower 		} CTLI_DOWN;
5157019Ssklower 	} CTLIun;
5257019Ssklower };
5357019Ssklower #define dlcti_cfg  CTLIun.CTLI_UP.dctli_up_cfg
5457019Ssklower #define dlcti_lsap CTLIun.CTLI_UP.dctli_up_lsap
5557019Ssklower #define dlcti_pcb  CTLIun.CTLI_DOWN.dctli_down_pcb
5657019Ssklower #define dlcti_rt   CTLIun.CTLI_DOWN.dctli_down_rt
5757019Ssklower #define dlcti_conf CTLIun.CTLI_DOWN.dctli_down_llconf
58