1d9ab9687ab87944f0b27908743f1b2f7900d347
[dragonfly.git] / contrib / hostapd-0.5.8 / sta_info.h
1 /*
2  * hostapd / Station table
3  * Copyright (c) 2002-2004, Jouni Malinen <j@w1.fi>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation.
8  *
9  * Alternatively, this software may be distributed under the terms of BSD
10  * license.
11  *
12  * See README and COPYING for more details.
13  */
14
15 #ifndef STA_INFO_H
16 #define STA_INFO_H
17
18 int ap_for_each_sta(struct hostapd_data *hapd,
19                     int (*cb)(struct hostapd_data *hapd, struct sta_info *sta,
20                               void *ctx),
21                     void *ctx);
22 struct sta_info * ap_get_sta(struct hostapd_data *hapd, const u8 *sta);
23 void ap_sta_hash_add(struct hostapd_data *hapd, struct sta_info *sta);
24 void ap_free_sta(struct hostapd_data *hapd, struct sta_info *sta);
25 void ap_free_sta(struct hostapd_data *hapd, struct sta_info *sta);
26 void hostapd_free_stas(struct hostapd_data *hapd);
27 void ap_handle_timer(void *eloop_ctx, void *timeout_ctx);
28 void ap_sta_session_timeout(struct hostapd_data *hapd, struct sta_info *sta,
29                             u32 session_timeout);
30 void ap_sta_no_session_timeout(struct hostapd_data *hapd,
31                                struct sta_info *sta);
32 struct sta_info * ap_sta_add(struct hostapd_data *hapd, const u8 *addr);
33 void ap_sta_disassociate(struct hostapd_data *hapd, struct sta_info *sta,
34                          u16 reason);
35 void ap_sta_deauthenticate(struct hostapd_data *hapd, struct sta_info *sta,
36                            u16 reason);
37 int ap_sta_bind_vlan(struct hostapd_data *hapd, struct sta_info *sta,
38                      int old_vlanid);
39
40 #endif /* STA_INFO_H */