if_llc.h (93366) | if_llc.h (103842) |
---|---|
1/* $NetBSD: if_llc.h,v 1.12 1999/11/19 20:41:19 thorpej Exp $ */ 2 3/* 4 * Copyright (c) 1988, 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 19 unchanged lines hidden (view full) --- 28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 33 * SUCH DAMAGE. 34 * 35 * @(#)if_llc.h 8.1 (Berkeley) 6/10/93 | 1/* $NetBSD: if_llc.h,v 1.12 1999/11/19 20:41:19 thorpej Exp $ */ 2 3/* 4 * Copyright (c) 1988, 1993 5 * The Regents of the University of California. All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 19 unchanged lines hidden (view full) --- 28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 33 * SUCH DAMAGE. 34 * 35 * @(#)if_llc.h 8.1 (Berkeley) 6/10/93 |
36 * $FreeBSD: head/sys/net/if_llc.h 93366 2002-03-29 06:58:45Z mdodd $ | 36 * $FreeBSD: head/sys/net/if_llc.h 103842 2002-09-23 06:25:08Z alfred $ |
37 */ 38 39#ifndef _NET_IF_LLC_H_ 40#define _NET_IF_LLC_H_ 41 42/* 43 * IEEE 802.2 Link Level Control headers, for use in conjunction with 44 * 802.{3,4,5} media access control methods. --- 6 unchanged lines hidden (view full) --- 51 u_int8_t llc_dsap; 52 u_int8_t llc_ssap; 53 union { 54 struct { 55 u_int8_t control; 56 u_int8_t format_id; 57 u_int8_t class; 58 u_int8_t window_x2; | 37 */ 38 39#ifndef _NET_IF_LLC_H_ 40#define _NET_IF_LLC_H_ 41 42/* 43 * IEEE 802.2 Link Level Control headers, for use in conjunction with 44 * 802.{3,4,5} media access control methods. --- 6 unchanged lines hidden (view full) --- 51 u_int8_t llc_dsap; 52 u_int8_t llc_ssap; 53 union { 54 struct { 55 u_int8_t control; 56 u_int8_t format_id; 57 u_int8_t class; 58 u_int8_t window_x2; |
59 } type_u __attribute__((__packed__)); | 59 } type_u __packed; |
60 struct { 61 u_int8_t num_snd_x2; 62 u_int8_t num_rcv_x2; | 60 struct { 61 u_int8_t num_snd_x2; 62 u_int8_t num_rcv_x2; |
63 } type_i __attribute__((__packed__)); | 63 } type_i __packed; |
64 struct { 65 u_int8_t control; 66 u_int8_t num_rcv_x2; | 64 struct { 65 u_int8_t control; 66 u_int8_t num_rcv_x2; |
67 } type_s __attribute__((__packed__)); | 67 } type_s __packed; |
68 struct { 69 u_int8_t control; 70 /* 71 * We cannot put the following fields in a structure because 72 * the structure rounding might cause padding. 73 */ 74 u_int8_t frmr_rej_pdu0; 75 u_int8_t frmr_rej_pdu1; 76 u_int8_t frmr_control; 77 u_int8_t frmr_control_ext; 78 u_int8_t frmr_cause; | 68 struct { 69 u_int8_t control; 70 /* 71 * We cannot put the following fields in a structure because 72 * the structure rounding might cause padding. 73 */ 74 u_int8_t frmr_rej_pdu0; 75 u_int8_t frmr_rej_pdu1; 76 u_int8_t frmr_control; 77 u_int8_t frmr_control_ext; 78 u_int8_t frmr_cause; |
79 } type_frmr __attribute__((__packed__)); | 79 } type_frmr __packed; |
80 struct { 81 u_int8_t control; 82 u_int8_t org_code[3]; 83 u_int16_t ether_type; | 80 struct { 81 u_int8_t control; 82 u_int8_t org_code[3]; 83 u_int16_t ether_type; |
84 } type_snap __attribute__((__packed__)); | 84 } type_snap __packed; |
85 struct { 86 u_int8_t control; 87 u_int8_t control_ext; | 85 struct { 86 u_int8_t control; 87 u_int8_t control_ext; |
88 } type_raw __attribute__((__packed__)); 89 } llc_un /* XXX __attribute__((__packed__)) ??? */; 90} __attribute__((__packed__)); | 88 } type_raw __packed; 89 } llc_un /* XXX __packed ??? */; 90} __packed; |
91 92struct frmrinfo { 93 u_int8_t frmr_rej_pdu0; 94 u_int8_t frmr_rej_pdu1; 95 u_int8_t frmr_control; 96 u_int8_t frmr_control_ext; 97 u_int8_t frmr_cause; | 91 92struct frmrinfo { 93 u_int8_t frmr_rej_pdu0; 94 u_int8_t frmr_rej_pdu1; 95 u_int8_t frmr_control; 96 u_int8_t frmr_control_ext; 97 u_int8_t frmr_cause; |
98} __attribute__((__packed__)); | 98} __packed; |
99 100#define llc_control llc_un.type_u.control 101#define llc_control_ext llc_un.type_raw.control_ext 102#define llc_fid llc_un.type_u.format_id 103#define llc_class llc_un.type_u.class 104#define llc_window llc_un.type_u.window_x2 105#define llc_frmrinfo llc_un.type_frmr.frmr_rej_pdu0 106#define llc_frmr_pdu0 llc_un.type_frmr.frmr_rej_pdu0 --- 54 unchanged lines hidden --- | 99 100#define llc_control llc_un.type_u.control 101#define llc_control_ext llc_un.type_raw.control_ext 102#define llc_fid llc_un.type_u.format_id 103#define llc_class llc_un.type_u.class 104#define llc_window llc_un.type_u.window_x2 105#define llc_frmrinfo llc_un.type_frmr.frmr_rej_pdu0 106#define llc_frmr_pdu0 llc_un.type_frmr.frmr_rej_pdu0 --- 54 unchanged lines hidden --- |