38279bdb35
Signed-off-by: Jouni Malinen <j@w1.fi>
142 lines
4 KiB
C
142 lines
4 KiB
C
/*
|
|
* WPA Supplicant / dbus-based control interface
|
|
* Copyright (c) 2006, Dan Williams <dcbw@redhat.com> and Red Hat, Inc.
|
|
*
|
|
* This software may be distributed under the terms of the BSD license.
|
|
* See README for more details.
|
|
*/
|
|
|
|
#ifndef CTRL_IFACE_DBUS_H
|
|
#define CTRL_IFACE_DBUS_H
|
|
|
|
struct wps_credential;
|
|
|
|
#ifdef CONFIG_CTRL_IFACE_DBUS
|
|
|
|
#define WPAS_DBUS_OBJECT_PATH_MAX 150
|
|
|
|
#define WPAS_DBUS_SERVICE "fi.epitest.hostap.WPASupplicant"
|
|
#define WPAS_DBUS_PATH "/fi/epitest/hostap/WPASupplicant"
|
|
#define WPAS_DBUS_INTERFACE "fi.epitest.hostap.WPASupplicant"
|
|
|
|
#define WPAS_DBUS_PATH_INTERFACES WPAS_DBUS_PATH "/Interfaces"
|
|
#define WPAS_DBUS_IFACE_INTERFACE WPAS_DBUS_INTERFACE ".Interface"
|
|
|
|
#define WPAS_DBUS_NETWORKS_PART "Networks"
|
|
#define WPAS_DBUS_IFACE_NETWORK WPAS_DBUS_INTERFACE ".Network"
|
|
|
|
#define WPAS_DBUS_BSSIDS_PART "BSSIDs"
|
|
#define WPAS_DBUS_IFACE_BSSID WPAS_DBUS_INTERFACE ".BSSID"
|
|
|
|
|
|
/* Errors */
|
|
#define WPAS_ERROR_INVALID_NETWORK \
|
|
WPAS_DBUS_IFACE_INTERFACE ".InvalidNetwork"
|
|
#define WPAS_ERROR_INVALID_BSSID \
|
|
WPAS_DBUS_IFACE_INTERFACE ".InvalidBSSID"
|
|
|
|
#define WPAS_ERROR_INVALID_OPTS \
|
|
WPAS_DBUS_INTERFACE ".InvalidOptions"
|
|
#define WPAS_ERROR_INVALID_IFACE \
|
|
WPAS_DBUS_INTERFACE ".InvalidInterface"
|
|
|
|
#define WPAS_ERROR_ADD_ERROR \
|
|
WPAS_DBUS_INTERFACE ".AddError"
|
|
#define WPAS_ERROR_EXISTS_ERROR \
|
|
WPAS_DBUS_INTERFACE ".ExistsError"
|
|
#define WPAS_ERROR_REMOVE_ERROR \
|
|
WPAS_DBUS_INTERFACE ".RemoveError"
|
|
|
|
#define WPAS_ERROR_SCAN_ERROR \
|
|
WPAS_DBUS_IFACE_INTERFACE ".ScanError"
|
|
#define WPAS_ERROR_ADD_NETWORK_ERROR \
|
|
WPAS_DBUS_IFACE_INTERFACE ".AddNetworkError"
|
|
#define WPAS_ERROR_INTERNAL_ERROR \
|
|
WPAS_DBUS_IFACE_INTERFACE ".InternalError"
|
|
#define WPAS_ERROR_REMOVE_NETWORK_ERROR \
|
|
WPAS_DBUS_IFACE_INTERFACE ".RemoveNetworkError"
|
|
|
|
#define WPAS_ERROR_WPS_PBC_ERROR \
|
|
WPAS_DBUS_IFACE_INTERFACE ".WpsPbcError"
|
|
#define WPAS_ERROR_WPS_PIN_ERROR \
|
|
WPAS_DBUS_IFACE_INTERFACE ".WpsPinError"
|
|
#define WPAS_ERROR_WPS_REG_ERROR \
|
|
WPAS_DBUS_IFACE_INTERFACE ".WpsRegError"
|
|
|
|
#define WPAS_DBUS_BSSID_FORMAT "%02x%02x%02x%02x%02x%02x"
|
|
|
|
struct wpa_global;
|
|
struct wpa_supplicant;
|
|
|
|
int wpa_supplicant_dbus_ctrl_iface_init(struct wpas_dbus_priv *iface);
|
|
void wpa_supplicant_dbus_notify_scan_results(struct wpa_supplicant *wpa_s);
|
|
void wpa_supplicant_dbus_notify_scanning(struct wpa_supplicant *wpa_s);
|
|
void wpa_supplicant_dbus_notify_state_change(struct wpa_supplicant *wpa_s,
|
|
enum wpa_states new_state,
|
|
enum wpa_states old_state);
|
|
void wpa_supplicant_dbus_notify_wps_cred(struct wpa_supplicant *wpa_s,
|
|
const struct wps_credential *cred);
|
|
void wpa_supplicant_dbus_notify_certification(struct wpa_supplicant *wpa_s,
|
|
int depth, const char *subject,
|
|
const char *cert_hash,
|
|
const struct wpabuf *cert);
|
|
|
|
char * wpas_dbus_decompose_object_path(const char *path, char **network,
|
|
char **bssid);
|
|
|
|
int wpas_dbus_register_iface(struct wpa_supplicant *wpa_s);
|
|
int wpas_dbus_unregister_iface(struct wpa_supplicant *wpa_s);
|
|
|
|
|
|
/* Methods internal to the dbus control interface */
|
|
struct wpa_supplicant * wpa_supplicant_get_iface_by_dbus_path(
|
|
struct wpa_global *global, const char *path);
|
|
|
|
#else /* CONFIG_CTRL_IFACE_DBUS */
|
|
|
|
static inline void
|
|
wpa_supplicant_dbus_notify_scan_results(struct wpa_supplicant *wpa_s)
|
|
{
|
|
}
|
|
|
|
static inline void
|
|
wpa_supplicant_dbus_notify_scanning(struct wpa_supplicant *wpa_s)
|
|
{
|
|
}
|
|
|
|
static inline void
|
|
wpa_supplicant_dbus_notify_state_change(struct wpa_supplicant *wpa_s,
|
|
enum wpa_states new_state,
|
|
enum wpa_states old_state)
|
|
{
|
|
}
|
|
|
|
static inline void
|
|
wpa_supplicant_dbus_notify_wps_cred(struct wpa_supplicant *wpa_s,
|
|
const struct wps_credential *cred)
|
|
{
|
|
}
|
|
|
|
static inline void
|
|
wpa_supplicant_dbus_notify_certification(struct wpa_supplicant *wpa_s,
|
|
int depth, const char *subject,
|
|
const char *cert_hash,
|
|
const struct wpabuf *cert)
|
|
{
|
|
}
|
|
|
|
static inline int
|
|
wpas_dbus_register_iface(struct wpa_supplicant *wpa_s)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
static inline int
|
|
wpas_dbus_unregister_iface(struct wpa_supplicant *wpa_s)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
#endif /* CONFIG_CTRL_IFACE_DBUS */
|
|
|
|
#endif /* CTRL_IFACE_DBUS_H */
|