|
1 /* |
|
2 * Copyright (c) 2001-2006 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of the License "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: EAP and WLAN authentication protocols. |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 |
|
20 |
|
21 #if !defined(_ABS_EAPOL_AM_WLAN_AUTHENTICATION_H_) |
|
22 #define _ABS_EAPOL_AM_WLAN_AUTHENTICATION_H_ |
|
23 |
|
24 #include "eap_am_export.h" |
|
25 #include "eapol_key_types.h" |
|
26 |
|
27 /// This class declares the functions adaptation module of GSMSIM EAP type |
|
28 /// requires from the GSMSIM EAP type. |
|
29 class EAP_EXPORT abs_eapol_am_wlan_authentication_c |
|
30 { |
|
31 private: |
|
32 //-------------------------------------------------- |
|
33 |
|
34 //-------------------------------------------------- |
|
35 protected: |
|
36 //-------------------------------------------------- |
|
37 |
|
38 //-------------------------------------------------- |
|
39 public: |
|
40 //-------------------------------------------------- |
|
41 |
|
42 // |
|
43 virtual ~abs_eapol_am_wlan_authentication_c() |
|
44 { |
|
45 } |
|
46 |
|
47 // |
|
48 abs_eapol_am_wlan_authentication_c() |
|
49 { |
|
50 } |
|
51 |
|
52 /** |
|
53 * This function disassociates the connection. |
|
54 */ |
|
55 virtual eap_status_e disassociation( |
|
56 const eap_am_network_id_c * const receive_network_id ///< source includes remote address, destination includes local address. |
|
57 ) = 0; |
|
58 |
|
59 /** |
|
60 * This function gets the current active eap index. |
|
61 */ |
|
62 virtual u32_t get_current_eap_index() = 0; |
|
63 |
|
64 /** |
|
65 * This function sets the current active eap index. |
|
66 */ |
|
67 virtual void set_current_eap_index(u32_t eap_index) = 0; |
|
68 |
|
69 /** |
|
70 * This function indicates the state of WLAN authentication. |
|
71 */ |
|
72 virtual eap_status_e eapol_indication( |
|
73 const eap_am_network_id_c * const receive_network_id, ///< source includes remote address, destination includes local address. |
|
74 const eapol_wlan_authentication_state_e wlan_authentication_state) = 0; |
|
75 |
|
76 /** |
|
77 * This is notification of internal state transition. |
|
78 * This is used for notifications, debugging and protocol testing. |
|
79 * The primal notifications are eap_state_variable_e::eap_state_authentication_finished_successfully |
|
80 * and eap_state_variable_e::eap_state_authentication_terminated_unsuccessfully. EAP-type MUST send these |
|
81 * two notifications to lower layer. |
|
82 * These two notifications are sent using EAP-protocol layer (eap_protocol_layer_e::eap_protocol_layer_eap). |
|
83 * See also eap_state_notification_c. |
|
84 */ |
|
85 virtual void state_notification( |
|
86 const abs_eap_state_notification_c * const state) = 0; |
|
87 |
|
88 //-------------------------------------------------- |
|
89 }; // class abs_eapol_am_wlan_authentication_c |
|
90 |
|
91 #endif //#if !defined(_ABS_EAPOL_AM_WLAN_AUTHENTICATION_H_) |
|
92 |
|
93 //-------------------------------------------------- |
|
94 |
|
95 |
|
96 |
|
97 // End. |