Added WirelessManager, a port of wpa_supplicant.
[AROS.git] / workbench / network / WirelessManager / src / wps / wps_upnp.h
blob06bc31fe7ffdfb6f4b4aa6aef41ad04376bd193c
1 /*
2 * UPnP WPS Device
3 * Copyright (c) 2000-2003 Intel Corporation
4 * Copyright (c) 2006-2007 Sony Corporation
5 * Copyright (c) 2008-2009 Atheros Communications
6 * Copyright (c) 2009, Jouni Malinen <j@w1.fi>
8 * See wps_upnp.c for more details on licensing and code history.
9 */
11 #ifndef WPS_UPNP_H
12 #define WPS_UPNP_H
14 struct upnp_wps_device_sm;
15 struct wps_context;
16 struct wps_data;
18 struct upnp_wps_peer {
19 struct wps_data *wps;
22 enum upnp_wps_wlanevent_type {
23 UPNP_WPS_WLANEVENT_TYPE_PROBE = 1,
24 UPNP_WPS_WLANEVENT_TYPE_EAP = 2
27 struct upnp_wps_device_ctx {
28 int (*rx_req_put_wlan_response)(
29 void *priv, enum upnp_wps_wlanevent_type ev_type,
30 const u8 *mac_addr, const struct wpabuf *msg,
31 enum wps_msg_type msg_type);
33 char *ap_pin;
36 struct upnp_wps_device_sm *
37 upnp_wps_device_init(struct upnp_wps_device_ctx *ctx, struct wps_context *wps,
38 void *priv);
39 void upnp_wps_device_deinit(struct upnp_wps_device_sm *sm);
41 int upnp_wps_device_start(struct upnp_wps_device_sm *sm, char *net_if);
42 void upnp_wps_device_stop(struct upnp_wps_device_sm *sm);
44 int upnp_wps_device_send_wlan_event(struct upnp_wps_device_sm *sm,
45 const u8 from_mac_addr[ETH_ALEN],
46 enum upnp_wps_wlanevent_type ev_type,
47 const struct wpabuf *msg);
48 int upnp_wps_subscribers(struct upnp_wps_device_sm *sm);
49 int upnp_wps_set_ap_pin(struct upnp_wps_device_sm *sm, const char *ap_pin);
51 #endif /* WPS_UPNP_H */