fix minor bugs for raw access
[unix-history] / usr / src / sys / netiso / iso_snpac.h
... / ...
CommitLineData
1/***********************************************************
2 Copyright IBM Corporation 1987
3
4 All Rights Reserved
5
6Permission to use, copy, modify, and distribute this software and its
7documentation for any purpose and without fee is hereby granted,
8provided that the above copyright notice appear in all copies and that
9both that copyright notice and this permission notice appear in
10supporting documentation, and that the name of IBM not be
11used in advertising or publicity pertaining to distribution of the
12software without specific, written prior permission.
13
14IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
15ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
16IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
17ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
18WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
19ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
20SOFTWARE.
21
22******************************************************************/
23
24/*
25 * ARGO Project, Computer Sciences Dept., University of Wisconsin - Madison
26 */
27/* @(#)iso_snpac.h 7.4 (Berkeley) %G% */
28#define MAX_SNPALEN 8 /* curiously equal to sizeof x.121 (
29 plus 1 for nibble len) addr */
30struct snpa_req {
31 struct iso_addr sr_isoa; /* nsap address */
32 u_char sr_len; /* length of snpa */
33 u_char sr_snpa[MAX_SNPALEN]; /* snpa associated
34 with nsap address */
35 u_char sr_flags; /* true if entry is valid */
36 u_short sr_ht; /* holding time */
37};
38
39/*
40 * Structure of the SNPA cache
41 */
42struct snpa_cache {
43 struct snpa_req sc_sr;
44#define sc_nsap sc_sr.sr_isoa /* this could be a NET if entry is
45 for an IS */
46#define sc_len sc_sr.sr_len
47#define sc_snpa sc_sr.sr_snpa
48#define sc_ht sc_sr.sr_ht
49#define sc_flags sc_sr.sr_flags
50 struct ifnet *sc_ifp;
51#define SNPA_VALID 0x01
52#define SNPA_ES 0x02
53#define SNPA_IS 0x04
54#define SNPA_PERM 0x10
55
56 /* redirects only */
57 struct iso_addr sc_da; /* DA from RD */
58 struct rtentry *sc_rt;
59};
60
61struct systype_req {
62 short sr_holdt; /* holding timer */
63 short sr_configt; /* configuration timer */
64 char sr_type; /* SNPA_ES or SNPA_IS */
65};
66
67/* ISO arp IOCTL data structures */
68
69#define SIOCSISOMAP _IOW('a',30, struct snpa_req) /* set arp entry */
70#define SIOCGISOMAP _IOWR('a',38, struct snpa_req)/* get arp entry */
71#define SIOCDISOMAP _IOW('a',31, struct snpa_req) /* delete arp entry */
72#define SIOCSSTYPE _IOW('a', 39, struct systype_req) /* set system type */
73#define SIOCGSTYPE _IOW('a', 40, struct systype_req) /* set system type */
74
75#ifdef KERNEL
76struct snpa_cache *snpac_look(/* struct iso_addr *isoa */);
77#endif KERNEL