149268Sbostic /*- 2*63222Sbostic * Copyright (c) 1991, 1993 3*63222Sbostic * The Regents of the University of California. All rights reserved. 449268Sbostic * 549268Sbostic * %sccs.include.redist.c% 649268Sbostic * 7*63222Sbostic * @(#)iso_snpac.h 8.1 (Berkeley) 06/10/93 849268Sbostic */ 949268Sbostic 1036393Ssklower /*********************************************************** 1136393Ssklower Copyright IBM Corporation 1987 1236393Ssklower 1336393Ssklower All Rights Reserved 1436393Ssklower 1536393Ssklower Permission to use, copy, modify, and distribute this software and its 1636393Ssklower documentation for any purpose and without fee is hereby granted, 1736393Ssklower provided that the above copyright notice appear in all copies and that 1836393Ssklower both that copyright notice and this permission notice appear in 1936393Ssklower supporting documentation, and that the name of IBM not be 2036393Ssklower used in advertising or publicity pertaining to distribution of the 2136393Ssklower software without specific, written prior permission. 2236393Ssklower 2336393Ssklower IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING 2436393Ssklower ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL 2536393Ssklower IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR 2636393Ssklower ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, 2736393Ssklower WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, 2836393Ssklower ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS 2936393Ssklower SOFTWARE. 3036393Ssklower 3136393Ssklower ******************************************************************/ 3236393Ssklower 3336393Ssklower /* 3436393Ssklower * ARGO Project, Computer Sciences Dept., University of Wisconsin - Madison 3536393Ssklower */ 3643334Ssklower 3736393Ssklower #define MAX_SNPALEN 8 /* curiously equal to sizeof x.121 ( 3836393Ssklower plus 1 for nibble len) addr */ 3936393Ssklower struct snpa_req { 4036393Ssklower struct iso_addr sr_isoa; /* nsap address */ 4136393Ssklower u_char sr_len; /* length of snpa */ 4236393Ssklower u_char sr_snpa[MAX_SNPALEN]; /* snpa associated 4336393Ssklower with nsap address */ 4436393Ssklower u_char sr_flags; /* true if entry is valid */ 4537469Ssklower u_short sr_ht; /* holding time */ 4636393Ssklower }; 4736393Ssklower 4836393Ssklower #define SNPA_VALID 0x01 4936393Ssklower #define SNPA_ES 0x02 5036393Ssklower #define SNPA_IS 0x04 5136393Ssklower #define SNPA_PERM 0x10 5236393Ssklower 5336393Ssklower struct systype_req { 5436393Ssklower short sr_holdt; /* holding timer */ 5536393Ssklower short sr_configt; /* configuration timer */ 5643423Ssklower short sr_esconfigt; /* suggested ES configuration timer */ 5736393Ssklower char sr_type; /* SNPA_ES or SNPA_IS */ 5836393Ssklower }; 5936393Ssklower 6043071Ssklower struct esis_req { 6143071Ssklower short er_ht; /* holding time */ 6243071Ssklower u_char er_flags; /* type and validity */ 6343071Ssklower }; 6443071Ssklower /* 6543071Ssklower * Space for this structure gets added onto the end of a route 6643071Ssklower * going to an ethernet or other 802.[45x] device. 6743071Ssklower */ 6843071Ssklower 6943071Ssklower struct llinfo_llc { 7043071Ssklower struct llinfo_llc *lc_next; /* keep all llc routes linked */ 7143071Ssklower struct llinfo_llc *lc_prev; /* keep all llc routes linked */ 7243071Ssklower struct rtentry *lc_rt; /* backpointer to route */ 7343071Ssklower struct esis_req lc_er; /* holding time, etc */ 7443071Ssklower #define lc_ht lc_er.er_ht 7543071Ssklower #define lc_flags lc_er.er_flags 7643071Ssklower }; 7743071Ssklower 7843334Ssklower 7940781Ssklower /* ISO arp IOCTL data structures */ 8040781Ssklower 8137469Ssklower #define SIOCSSTYPE _IOW('a', 39, struct systype_req) /* set system type */ 8243423Ssklower #define SIOCGSTYPE _IOR('a', 40, struct systype_req) /* get system type */ 8337469Ssklower 8436393Ssklower #ifdef KERNEL 8543071Ssklower struct llinfo_llc llinfo_llc; /* head for linked lists */ 8661305Ssklower #endif /* KERNEL */ 87