]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | #ifndef LLC_S_EV_H |
2 | #define LLC_S_EV_H | |
3 | /* | |
4 | * Copyright (c) 1997 by Procom Technology,Inc. | |
5 | * 2001 by Arnaldo Carvalho de Melo <[email protected]> | |
6 | * | |
7 | * This program can be redistributed or modified under the terms of the | |
8 | * GNU General Public License as published by the Free Software Foundation. | |
9 | * This program is distributed without any warranty or implied warranty | |
10 | * of merchantability or fitness for a particular purpose. | |
11 | * | |
12 | * See the GNU General Public License for more details. | |
13 | */ | |
14 | ||
15 | #include <linux/skbuff.h> | |
16 | ||
17 | /* Defines SAP component events */ | |
18 | /* Types of events (possible values in 'ev->type') */ | |
19 | #define LLC_SAP_EV_TYPE_SIMPLE 1 | |
20 | #define LLC_SAP_EV_TYPE_CONDITION 2 | |
21 | #define LLC_SAP_EV_TYPE_PRIM 3 | |
22 | #define LLC_SAP_EV_TYPE_PDU 4 /* command/response PDU */ | |
23 | #define LLC_SAP_EV_TYPE_ACK_TMR 5 | |
24 | #define LLC_SAP_EV_TYPE_RPT_STATUS 6 | |
25 | ||
26 | #define LLC_SAP_EV_ACTIVATION_REQ 1 | |
27 | #define LLC_SAP_EV_RX_UI 2 | |
28 | #define LLC_SAP_EV_UNITDATA_REQ 3 | |
29 | #define LLC_SAP_EV_XID_REQ 4 | |
30 | #define LLC_SAP_EV_RX_XID_C 5 | |
31 | #define LLC_SAP_EV_RX_XID_R 6 | |
32 | #define LLC_SAP_EV_TEST_REQ 7 | |
33 | #define LLC_SAP_EV_RX_TEST_C 8 | |
34 | #define LLC_SAP_EV_RX_TEST_R 9 | |
35 | #define LLC_SAP_EV_DEACTIVATION_REQ 10 | |
36 | ||
37 | struct llc_sap_state_ev { | |
38 | u8 prim; | |
39 | u8 prim_type; | |
40 | u8 type; | |
41 | u8 reason; | |
42 | u8 ind_cfm_flag; | |
43 | struct llc_addr saddr; | |
44 | struct llc_addr daddr; | |
45 | }; | |
46 | ||
47 | static __inline__ struct llc_sap_state_ev *llc_sap_ev(struct sk_buff *skb) | |
48 | { | |
49 | return (struct llc_sap_state_ev *)skb->cb; | |
50 | } | |
51 | ||
52 | struct llc_sap; | |
53 | ||
54 | typedef int (*llc_sap_ev_t)(struct llc_sap *sap, struct sk_buff *skb); | |
55 | ||
56 | extern int llc_sap_ev_activation_req(struct llc_sap *sap, struct sk_buff *skb); | |
57 | extern int llc_sap_ev_rx_ui(struct llc_sap *sap, struct sk_buff *skb); | |
58 | extern int llc_sap_ev_unitdata_req(struct llc_sap *sap, struct sk_buff *skb); | |
59 | extern int llc_sap_ev_xid_req(struct llc_sap *sap, struct sk_buff *skb); | |
60 | extern int llc_sap_ev_rx_xid_c(struct llc_sap *sap, struct sk_buff *skb); | |
61 | extern int llc_sap_ev_rx_xid_r(struct llc_sap *sap, struct sk_buff *skb); | |
62 | extern int llc_sap_ev_test_req(struct llc_sap *sap, struct sk_buff *skb); | |
63 | extern int llc_sap_ev_rx_test_c(struct llc_sap *sap, struct sk_buff *skb); | |
64 | extern int llc_sap_ev_rx_test_r(struct llc_sap *sap, struct sk_buff *skb); | |
65 | extern int llc_sap_ev_deactivation_req(struct llc_sap *sap, | |
66 | struct sk_buff *skb); | |
67 | #endif /* LLC_S_EV_H */ |