Dr Andrew Scott G7VAV

My photo
 
June 2025
Mo Tu We Th Fr Sa Su
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 1 2 3 4 5 6


llc.h
01: #ifndef __LINUX_LLC_H
02: #define __LINUX_LLC_H
03: /*
04:  * IEEE 802.2 User Interface SAPs for Linux, data structures and indicators.
05:  *
06:  * Copyright (c) 2001 by Jay Schulist <jschlst@samba.org>
07:  *
08:  * This program can be redistributed or modified under the terms of the
09:  * GNU General Public License as published by the Free Software Foundation.
10:  * This program is distributed without any warranty or implied warranty
11:  * of merchantability or fitness for a particular purpose.
12:  *
13:  * See the GNU General Public License for more details.
14:  */
15: 
16: #include <linux/socket.h>
17: 
18: #define __LLC_SOCK_SIZE__ 16    /* sizeof(sockaddr_llc), word align. */
19: struct sockaddr_llc {
20:         __kernel_sa_family_t sllc_family; /* AF_LLC */
21:         __kernel_sa_family_t sllc_arphrd; /* ARPHRD_ETHER */
22:         unsigned char   sllc_test;
23:         unsigned char   sllc_xid;
24:         unsigned char   sllc_ua;        /* UA data, only for SOCK_STREAM. */
25:         unsigned char   sllc_sap;
26:         unsigned char   sllc_mac[IFHWADDRLEN];
27:         unsigned char   __pad[__LLC_SOCK_SIZE__ -
28:                               sizeof(__kernel_sa_family_t) * 2 -
29:                               sizeof(unsigned char) * 4 - IFHWADDRLEN];
30: };
31: 
32: /* sockopt definitions. */
33: enum llc_sockopts {
34:         LLC_OPT_UNKNOWN = 0,
35:         LLC_OPT_RETRY,          /* max retrans attempts. */
36:         LLC_OPT_SIZE,           /* max PDU size (octets). */
37:         LLC_OPT_ACK_TMR_EXP,    /* ack expire time (secs). */
38:         LLC_OPT_P_TMR_EXP,      /* pf cycle expire time (secs). */
39:         LLC_OPT_REJ_TMR_EXP,    /* rej sent expire time (secs). */
40:         LLC_OPT_BUSY_TMR_EXP,   /* busy state expire time (secs). */
41:         LLC_OPT_TX_WIN,         /* tx window size. */
42:         LLC_OPT_RX_WIN,         /* rx window size. */
43:         LLC_OPT_PKTINFO,        /* ancillary packet information. */
44:         LLC_OPT_MAX
45: };
46: 
47: #define LLC_OPT_MAX_RETRY        100
48: #define LLC_OPT_MAX_SIZE        4196
49: #define LLC_OPT_MAX_WIN          127
50: #define LLC_OPT_MAX_ACK_TMR_EXP   60
51: #define LLC_OPT_MAX_P_TMR_EXP     60
52: #define LLC_OPT_MAX_REJ_TMR_EXP   60
53: #define LLC_OPT_MAX_BUSY_TMR_EXP  60
54: 
55: /* LLC SAP types. */
56: #define LLC_SAP_NULL    0x00            /* NULL SAP.                    */
57: #define LLC_SAP_LLC     0x02            /* LLC Sublayer Management.     */
58: #define LLC_SAP_SNA     0x04            /* SNA Path Control.            */
59: #define LLC_SAP_PNM     0x0E            /* Proway Network Management.   */      
60: #define LLC_SAP_IP      0x06            /* TCP/IP.                      */
61: #define LLC_SAP_BSPAN   0x42            /* Bridge Spanning Tree Proto   */
62: #define LLC_SAP_MMS     0x4E            /* Manufacturing Message Srv.   */
63: #define LLC_SAP_8208    0x7E            /* ISO 8208                     */
64: #define LLC_SAP_3COM    0x80            /* 3COM.                        */
65: #define LLC_SAP_PRO     0x8E            /* Proway Active Station List   */
66: #define LLC_SAP_SNAP    0xAA            /* SNAP.                        */
67: #define LLC_SAP_BANYAN  0xBC            /* Banyan.                      */
68: #define LLC_SAP_IPX     0xE0            /* IPX/SPX.                     */
69: #define LLC_SAP_NETBEUI 0xF0            /* NetBEUI.                     */
70: #define LLC_SAP_LANMGR  0xF4            /* LanManager.                  */
71: #define LLC_SAP_IMPL    0xF8            /* IMPL                         */
72: #define LLC_SAP_DISC    0xFC            /* Discovery                    */
73: #define LLC_SAP_OSI     0xFE            /* OSI Network Layers.          */
74: #define LLC_SAP_LAR     0xDC            /* LAN Address Resolution       */
75: #define LLC_SAP_RM      0xD4            /* Resource Management          */
76: #define LLC_SAP_GLOBAL  0xFF            /* Global SAP.                  */
77: 
78: struct llc_pktinfo {
79:         int lpi_ifindex;
80:         unsigned char lpi_sap;
81:         unsigned char lpi_mac[IFHWADDRLEN];
82: };
83: 
84: #endif /* __LINUX_LLC_H */
85: 


for client (none)
© Andrew Scott 2006 - 2025,
All Rights Reserved
http://www.andrew-scott.uk/
Andrew Scott
http://www.andrew-scott.co.uk/