from Mike Hibler
[unix-history] / usr / src / sys / netccitt / dll.h
CommitLineData
b8fdf1ec
KS
1/*
2 * Copyright (C) Dirk Husemann, Computer Science Department IV,
3 * University of Erlangen-Nuremberg, Germany, 1990, 1991, 1992
e7a3707f
KB
4 * Copyright (c) 1992, 1993
5 * The Regents of the University of California. All rights reserved.
b8fdf1ec
KS
6 *
7 * %sccs.include.redist.c%
8 *
e7a3707f 9 * @(#)dll.h 8.1 (Berkeley) %G%
b8fdf1ec
KS
10 */
11
12/*
13 * We define the additional PRC_* codes in here
14 */
15#ifdef KERNEL
16#ifndef PRC_IFUP
17#define PRC_IFUP 3
18#endif
19#define PRC_CONNECT_INDICATION 8
20#define PRC_CONNECT_REQUEST 9
21#define PRC_DISCONNECT_REQUEST 10
22#define PRC_DISCONNECT_INDICATION 11
23#define PRC_RESET_REQUEST 12
24#endif
25
26/*
27 * Data link layer configuration --- basically a copy of the relevant parts
28 * of x25config, implemented to become a little bit more network
29 * layer independent. (Probably only used for casting et al.)
30 */
31struct dllconfig {
32 u_short dllcfg_unused0:4,
33 dllcfg_unused1:4,
34 dllcfg_trace:1, /* link level tracing flag */
35 dllcfg_window:7; /* link level window size */
36 u_short dllcfg_xchxid:1, /* exchange XID (not yet) */
37 dllcfg_unused2:7; /* here be dragons */
38};
39
40struct dll_ctlinfo {
41 union {
42 struct {
43 struct dllconfig *dctli_up_cfg;
44 u_char dctli_up_lsap;
45 } CTLI_UP;
46 struct {
47 caddr_t dctli_down_pcb;
48 struct rtentry *dctli_down_rt;
49 struct dllconfig *dctli_down_llconf;
50 } CTLI_DOWN;
51 } CTLIun;
52};
53#define dlcti_cfg CTLIun.CTLI_UP.dctli_up_cfg
54#define dlcti_lsap CTLIun.CTLI_UP.dctli_up_lsap
55#define dlcti_pcb CTLIun.CTLI_DOWN.dctli_down_pcb
56#define dlcti_rt CTLIun.CTLI_DOWN.dctli_down_rt
57#define dlcti_conf CTLIun.CTLI_DOWN.dctli_down_llconf